ScalarAssembler assembles scalar quantities. More...
#include <ikarus/assembler/simpleassemblers.hh>
Public Types | |
| using | Basis = typename DV::Basis |
| Type of the basis. More... | |
| using | DirichletValuesType = DV |
| Type of the Dirichlet values. More... | |
| using | FEContainer = FEC |
| Type of the finite element container. More... | |
| using | FERequirementType = typename FEContainerRaw::value_type::FERequirementType |
| Type of the finite element requirement. More... | |
| using | GlobalIndex = typename FEContainerRaw::value_type::GlobalIndex |
| Type of the global index. More... | |
| using | GridView = typename Basis::GridView |
| Type of the grid view. More... | |
| using | FEContainerType = std::conditional_t< std::is_reference_v< FEContainer >, const FEContainer, FEContainer > |
| Type of the finite element container (reference or by value). More... | |
Public Member Functions | |
| ScalarAssembler (FEContainer &&fes, const DirichletValuesType &dirichletValues) | |
| Constructor for ScalarAssembler. More... | |
| const double & | getScalar (const FERequirementType &feRequirements) |
| Calculates the scalar quantity requested by feRequirements and returns a reference. More... | |
| size_t | reducedSize () |
| Returns the size of the free degrees of freedom, which are not fixed by a Dirichlet boundary condition. More... | |
| size_t | size () |
| Returns the size of nodes, i.e., the number of degrees of freedom. More... | |
| Eigen::VectorXd | createFullVector (Eigen::Ref< const Eigen::VectorXd > reducedVector) |
| Creates the full-sized vector of size Dof and inserts the values of a reduced vector at the "free" degrees of freedom and writes a zero for the fixed doffs. More... | |
| auto & | finiteElements () const |
| Returns the container of finite elements. More... | |
| size_t | constraintsBelow (size_t i) const |
| Returns the number of constraints below a given degrees of freedom index. More... | |
| bool | isConstrained (size_t i) const |
| Returns true if a given degree of freedom is fixed by a Dirichlet boundary condition. More... | |
| size_t | estimateOfConnectivity () const |
| Coarse estimate of node connectivity, i.e., this relates to the bandwidth of a sparse matrix. This estimate overestimates the real connectivity and should only be used for allocating vectors. More... | |
| FEC | Type of the finite element container. |
| DV | Type of the Dirichlet values. |
| using Ikarus::FlatAssemblerBase< FEC, DV >::Basis = typename DV::Basis |
| using Ikarus::FlatAssemblerBase< FEC, DV >::DirichletValuesType = DV |
| using Ikarus::FlatAssemblerBase< FEC, DV >::FEContainer = FEC |
|
inherited |
| using Ikarus::FlatAssemblerBase< FEC, DV >::FERequirementType = typename FEContainerRaw::value_type::FERequirementType |
| using Ikarus::FlatAssemblerBase< FEC, DV >::GlobalIndex = typename FEContainerRaw::value_type::GlobalIndex |
|
inherited |
|
inline |
| fes | Finite element container. |
| dirichletValues | Reference to Dirichlet values. |
|
inlineinherited |
| i | Index of the degree of freedom. |
|
inherited |
| reducedVector | Reference to the reduced vector. |
|
inlineinherited |
|
inlineinherited |
|
inline |
| feRequirements | Reference to the finite element requirements. |
|
inlineinherited |
| i | Index of the degree of freedom. |
|
inlineinherited |
|
inlineinherited |