21 #ifndef bempp_assembly_options_hpp
22 #define bempp_assembly_options_hpp
24 #include "../common/common.hpp"
26 #include "aca_options.hpp"
28 #include "../common/deprecated.hpp"
29 #include "../fiber/opencl_options.hpp"
30 #include "../fiber/parallelization_options.hpp"
31 #include "../fiber/verbosity_level.hpp"
46 enum Value { AUTO = -1, NO = 0, YES = 1 };
245 VerbosityLevel::Level m_verbosityLevel;
246 bool m_singularIntegralCaching;
247 bool m_sparseStorageOfLocalOperators;
248 bool m_jointAssembly;
249 bool m_uniformQuadrature;
250 Value m_blasInQuadrature;
VerbosityLevel::Level verbosityLevel() const
Return the verbosity level.
Definition: assembly_options.cpp:106
BEMPP_DEPRECATED void switchToDense()
Use dense-matrix representations of weak forms of boundary integral operators.
Definition: assembly_options.cpp:63
bool isSparseStorageOfLocalOperatorsEnabled() const
Return whether discrete weak forms of local operators should be stored in sparse format.
Definition: assembly_options.cpp:126
Value isBlasEnabledInQuadrature() const
Indicate whether BLAS matrix multiplication routines are used during evaluation of elementary integra...
Definition: assembly_options.cpp:159
Parallel operation settings.
Definition: parallelization_options.hpp:32
void enableJointAssembly(bool value=true)
Enable or disable joint assembly of integral-operator superpositions.
Definition: assembly_options.cpp:141
const AcaOptions & acaOptions() const
Return the current adaptive cross approximation (ACA) settings.
Definition: assembly_options.cpp:77
Adaptive cross approximation (ACA) parameters.
Definition: aca_options.hpp:34
void setVerbosityLevel(VerbosityLevel::Level level)
Set the verbosity level.
Definition: assembly_options.cpp:101
#define BEMPP_DEPRECATED
Macro used to mark deprecated functions or classes.
Definition: deprecated.hpp:41
Verbosity level.
Definition: verbosity_level.hpp:30
BEMPP_DEPRECATED void switchToTbb(int maxThreadCount=AUTO)
Set the maximum number of threads used during the assembly.
Definition: assembly_options.cpp:91
Assemble hierarchical matrices using adaptive cross approximation (ACA).
Definition: assembly_options.hpp:58
Assemble dense matrices.
Definition: assembly_options.hpp:56
bool isQuadratureOrderUniformInEachCluster() const
Return whether the same quadrature order is used for all regular integrals over pairs of test and tri...
Definition: assembly_options.cpp:169
void enableBlasInQuadrature(Value value=AUTO)
Specify whether BLAS matrix multiplication routines should be used during evaluation of elementary in...
Definition: assembly_options.cpp:151
Mode
Possible assembly modes for weak forms of boundary integral operators.
Definition: assembly_options.hpp:54
bool BEMPP_DEPRECATED isSparseStorageOfMassMatricesEnabled() const
Return whether mass matrices should be stored in sparse format.
Definition: assembly_options.cpp:136
bool isSingularIntegralCachingEnabled() const
Return whether singular integrals should be cached during weak-form assembly.
Definition: assembly_options.cpp:116
void enableSparseStorageOfLocalOperators(bool value=true)
Specify whether discrete weak forms of local operators should be stored in sparse format...
Definition: assembly_options.cpp:121
Mode assemblyMode() const
Current assembly mode.
Definition: assembly_options.cpp:73
void BEMPP_DEPRECATED enableSparseStorageOfMassMatrices(bool value=true)
Specify whether discrete weak forms of local operators should be stored in sparse format...
Definition: assembly_options.cpp:131
const ParallelizationOptions & parallelizationOptions() const
Return current parallelization options.
Definition: assembly_options.cpp:96
void enableSingularIntegralCaching(bool value=true)
Specify whether singular integrals are cached during weak-form assembly.
Definition: assembly_options.cpp:111
Definition: opencl_options.hpp:29
bool isJointAssemblyEnabled() const
Return whether joint assembly of integral-operator superpositions is enabled.
Definition: assembly_options.cpp:146
BEMPP_DEPRECATED void switchToAca(const AcaOptions &acaOptions)
Use adaptive cross approximation (ACA) to obtain hierarchical-matrix representations of weak forms of...
Definition: assembly_options.cpp:68
void switchToAcaMode(const AcaOptions &acaOptions)
Use adaptive cross approximation (ACA) to obtain hierarchical-matrix representations of weak forms of...
Definition: assembly_options.cpp:44
void switchToDenseMode()
Use dense-matrix representations of weak forms of boundary integral operators.
Definition: assembly_options.cpp:39
Options determining how weak-form assembly is done.
Definition: assembly_options.hpp:43
void makeQuadratureOrderUniformInEachCluster(bool value=true)
Instruct the ACA assembler to use the same quadrature order for the evaluation of all regular integra...
Definition: assembly_options.cpp:164
void setMaxThreadCount(int maxThreadCount)
Set the maximum number of threads used during the assembly.
Definition: assembly_options.cpp:86