Eigen::Matrix< CepsScalar, Eigen::Dynamic, 1 > CepsMathDynamic1D
Dynamic 1D array, eigen format.
std::set< _Type, _Compare, _Alloc > CepsSet
C++ set.
std::vector< _Type, _Alloc > CepsVector
C++ vector.
float CepsReal
Need single precision floating point.
CepsArray3< CepsReal > CepsReal3D
Three real scalars, used like this for compatibility in polynomials.
constexpr CepsAttribute CepsUniversal
This attribute means "everywhere".
Eigen::Matrix< CepsScalar, Eigen::Dynamic, Eigen::Dynamic > CepsMathDynamic2D
Dynamic 2D array, eigen format.
Boundary condition to manage Dirichlet, Neumann and Robin conditions.
A base class made for Finite Element assembler.
Abstract class for finite elements.
Class to fill linear systems with coefficients linked to boundary conditions.
CepsVector< ScalarBoundaryCondition * > m_toAssemble
List of all BCs to assemble (unknowns have to match)
void computeBlocksOnElementAtQuadPoint(FEBase *element, CepsReal3D xQ, CepsReal t, const CepsMathDynamic1D &phi, const CepsMathDynamic2D &gradPhi) override
The function that is called to get the coefficients of the submatrix on a given finite element....
void assemble(CepsReal t=0., CepsBool=true) override
Main assembly call. Fills the linear system pointed by the class.
FEDivKGradBCAssembler()=delete
No default constructor.
~FEDivKGradBCAssembler() override
destructor
BoundaryConditionManager * m_manager
All boundary conditions.
ScalarBoundaryCondition * m_bc
Current boundary condition.
Holds all finite elements corresponding to each geometrical element.