NGSolve
4.9
|
A BilinearFormIntegrator computes the element matrices. More...
#include <integrator.hpp>
Public Member Functions | |
virtual int | DimFlux () const |
components of flux | |
virtual void | CalcElementMatrix (const FiniteElement &fel, const ElementTransformation &eltrans, FlatMatrix< double > &elmat, LocalHeap &lh) const |
Computes the element matrix. | |
virtual void | CalcElementMatrix (const FiniteElement &fel, const ElementTransformation &eltrans, FlatMatrix< Complex > &elmat, LocalHeap &lh) const |
Computes the element matrix. | |
virtual void | AssembleElementMatrix (const FiniteElement &fel, const ElementTransformation &eltrans, FlatMatrix< double > &elmat, LocalHeap &lh) const |
virtual void | AssembleElementMatrixIndependent (const FiniteElement &bfel_master, const FiniteElement &bfel_master_element, const FiniteElement &bfel_slave, const ElementTransformation &eltrans_master, const ElementTransformation &eltrans_master_element, const ElementTransformation &eltrans_slave, const IntegrationPoint &ip_master, const IntegrationPoint &ip_master_element, const IntegrationPoint &ip_slave, FlatMatrix< double > &elmat, LocalHeap &lh) const |
virtual void | ApplyElementMatrixIndependent (const FiniteElement &bfel_master, const FiniteElement &bfel_master_element, const FiniteElement &bfel_slave, const ElementTransformation &eltrans_master, const ElementTransformation &eltrans_master_element, const ElementTransformation &eltrans_slave, const IntegrationPoint &ip_master, const IntegrationPoint &ip_master_element, const IntegrationPoint &ip_slave, const FlatVector< double > &elx, Vector< double > &result, LocalHeap &lh) const |
virtual void | AssembleElementMatrixIndependent (const FiniteElement &bfel_master, const FiniteElement &bfel_master_element, const FiniteElement &bfel_slave, const ElementTransformation &eltrans_master, const ElementTransformation &eltrans_master_element, const ElementTransformation &eltrans_slave, const IntegrationPoint &ip_master, const IntegrationPoint &ip_master_element, const IntegrationPoint &ip_slave, FlatMatrix< Complex > &elmat, LocalHeap &lh) const |
virtual void | AssembleElementMatrixIndependent (const FiniteElement &bfel_master, const FiniteElement &bfel_slave, const ElementTransformation &eltrans_master, const ElementTransformation &eltrans_slave, const IntegrationPoint &ip_master, const IntegrationPoint &ip_slave, FlatMatrix< double > &elmat, LocalHeap &lh) const |
virtual void | AssembleElementMatrixIndependent (const FiniteElement &bfel_master, const FiniteElement &bfel_slave, const ElementTransformation &eltrans_master, const ElementTransformation &eltrans_slave, const IntegrationPoint &ip_master, const IntegrationPoint &ip_slave, FlatMatrix< Complex > &elmat, LocalHeap &lh) const |
virtual void | CalcElementMatrixDiag (const FiniteElement &fel, const ElementTransformation &eltrans, FlatVector< double > &diag, LocalHeap &lh) const |
virtual void | CalcLinearizedElementMatrix (const FiniteElement &fel, const ElementTransformation &eltrans, FlatVector< double > &elveclin, FlatMatrix< double > &elmat, LocalHeap &lh) const |
virtual void | CalcLinearizedElementMatrix (const FiniteElement &fel, const ElementTransformation &eltrans, FlatVector< Complex > &elveclin, FlatMatrix< Complex > &elmat, LocalHeap &lh) const |
virtual void * | PrecomputeData (const FiniteElement &fel, const ElementTransformation &eltrans, LocalHeap &lh) const |
virtual void | ApplyElementMatrix (const FiniteElement &fel, const ElementTransformation &eltrans, const FlatVector< double > &elx, FlatVector< double > &ely, void *precomputed, LocalHeap &lh) const |
virtual void | ApplyElementMatrix (const FiniteElement &fel, const ElementTransformation &eltrans, const FlatVector< Complex > &elx, FlatVector< Complex > &ely, void *precomputed, LocalHeap &lh) const |
virtual void | ApplyLinearizedElementMatrix (const FiniteElement &fel, const ElementTransformation &eltrans, const FlatVector< double > &ellin, const FlatVector< double > &elx, FlatVector< double > &ely, LocalHeap &lh) const |
virtual void | ApplyLinearizedElementMatrix (const FiniteElement &fel, const ElementTransformation &eltrans, const FlatVector< Complex > &ellin, const FlatVector< Complex > &elx, FlatVector< Complex > &ely, LocalHeap &lh) const |
virtual double | Energy (const FiniteElement &fel, const ElementTransformation &eltrans, const FlatVector< double > &elx, LocalHeap &lh) const |
virtual double | Energy (const FiniteElement &fel, const ElementTransformation &eltrans, const FlatVector< Complex > &elx, LocalHeap &lh) const |
virtual void | CalcFlux (const FiniteElement &fel, const BaseMappedIntegrationPoint &bmip, const FlatVector< double > &elx, FlatVector< double > &flux, bool applyd, LocalHeap &lh) const |
virtual void | CalcFlux (const FiniteElement &fel, const BaseMappedIntegrationPoint &bmip, const FlatVector< Complex > &elx, FlatVector< Complex > &flux, bool applyd, LocalHeap &lh) const |
virtual void | CalcFlux (const FiniteElement &fel, const BaseMappedIntegrationRule &mir, const FlatVector< double > &elx, FlatMatrix< double > &flux, bool applyd, LocalHeap &lh) const |
virtual void | CalcFlux (const FiniteElement &fel, const BaseMappedIntegrationRule &mir, const FlatVector< Complex > &elx, FlatMatrix< Complex > &flux, bool applyd, LocalHeap &lh) const |
virtual void | CalcFlux (const FiniteElement &fel, const FiniteElement &felflux, const ElementTransformation &eltrans, const FlatVector<> &elx, FlatVector<> &flux, bool applyd, LocalHeap &lh) const |
virtual void | CalcFluxMulti (const FiniteElement &fel, const BaseMappedIntegrationPoint &bmip, int m, const FlatVector< double > &elx, FlatVector< double > &flux, bool applyd, LocalHeap &lh) const |
virtual void | CalcFluxMulti (const FiniteElement &fel, const BaseMappedIntegrationPoint &bmip, int m, const FlatVector< Complex > &elx, FlatVector< Complex > &flux, bool applyd, LocalHeap &lh) const |
virtual void | ApplyBTrans (const FiniteElement &fel, const BaseMappedIntegrationPoint &bmip, const FlatVector< double > &elx, FlatVector< double > &ely, LocalHeap &lh) const |
virtual void | ApplyBTrans (const FiniteElement &fel, const BaseMappedIntegrationPoint &bmip, const FlatVector< Complex > &elx, FlatVector< Complex > &ely, LocalHeap &lh) const |
virtual void | ApplyBTrans (const FiniteElement &fel, const BaseMappedIntegrationRule &mir, const FlatMatrix< double > &elx, FlatVector< double > &ely, LocalHeap &lh) const |
virtual void | ApplyBTrans (const FiniteElement &fel, const BaseMappedIntegrationRule &mir, const FlatMatrix< Complex > &elx, FlatVector< Complex > &ely, LocalHeap &lh) const |
virtual void | ApplyDMat (const FiniteElement &bfel, const BaseMappedIntegrationPoint &bmip, const FlatVector< double > &elx, FlatVector< double > &eldx, LocalHeap &lh) const |
virtual void | ApplyDMat (const FiniteElement &bfel, const BaseMappedIntegrationPoint &bmip, const FlatVector< Complex > &elx, FlatVector< Complex > &eldx, LocalHeap &lh) const |
virtual void | ApplyDMat (const FiniteElement &bfel, const BaseMappedIntegrationRule &mir, const FlatMatrix< double > &elx, FlatMatrix< double > &eldx, LocalHeap &lh) const |
virtual void | ApplyDMat (const FiniteElement &bfel, const BaseMappedIntegrationRule &mir, const FlatMatrix< Complex > &elx, FlatMatrix< Complex > &eldx, LocalHeap &lh) const |
virtual void | ApplyDMatInv (const FiniteElement &bfel, const BaseMappedIntegrationPoint &bmip, const FlatVector< double > &elx, FlatVector< double > &eldx, LocalHeap &lh) const |
virtual void | ApplyDMatInv (const FiniteElement &bfel, const BaseMappedIntegrationPoint &bmip, const FlatVector< Complex > &elx, FlatVector< Complex > &eldx, LocalHeap &lh) const |
virtual void | ApplyDMatInv (const FiniteElement &bfel, const BaseMappedIntegrationRule &mir, const FlatMatrix< double > &elx, FlatMatrix< double > &eldx, LocalHeap &lh) const |
virtual void | ApplyDMatInv (const FiniteElement &bfel, const BaseMappedIntegrationRule &mir, const FlatMatrix< Complex > &elx, FlatMatrix< Complex > &eldx, LocalHeap &lh) const |
A BilinearFormIntegrator computes the element matrices.
Different equations are provided by derived classes. An Integrator can be defined in the domain or at the boundary.
virtual void ngfem::BilinearFormIntegrator::CalcElementMatrix | ( | const FiniteElement & | fel, |
const ElementTransformation & | eltrans, | ||
FlatMatrix< Complex > & | elmat, | ||
LocalHeap & | lh | ||
) | const [virtual] |
Computes the element matrix.
Complex version
Reimplemented in ngfem::CompoundBilinearFormIntegrator, ngfem::ComplexBilinearFormIntegrator, ngfem::BlockBilinearFormIntegrator, ngfem::T_BDBIntegrator< DIFFOP, DMATOP, FEL >, ngfem::T_BDBIntegrator< DiffOpNormal< D >, DiagDMat< 1 >, ScalarFiniteElement< D-1 > >, ngfem::T_BDBIntegrator< DiffOpGradient< D >, OrthoDMat< D >, FEL >, ngfem::T_BDBIntegrator< DiffOpDiv< D >, DiagDMat< 1 >, FEL >, ngfem::T_BDBIntegrator< DiffOpIdHDivBoundary< D >, DiagDMat< 1 >, HDivNormalFiniteElement< D-1 > >, ngfem::T_BDBIntegrator< DiffOpGradient< D >, RotSymLaplaceDMat< D >, FEL >, ngfem::T_BDBIntegrator< DiffOpCurl, DiagDMat< 1 >, FEL >, ngfem::T_BDBIntegrator< DiffOpIdHDiv< D >, DiagDMat< D >, HDivFiniteElement< D > >, ngfem::T_BDBIntegrator< DiffOpGradient< D >, DiagDMat< D >, FEL >, ngfem::T_BDBIntegrator< DiffOpId< D >, DiagDMat< 1 >, FEL >, ngfem::T_BDBIntegrator< DiffOpIdBoundary< D >, DiagDMat< 1 >, FEL >, ngfem::T_BDBIntegrator< DiffOpDivHDiv< D >, DiagDMat< 1 >, HDivFiniteElement< D > >, ngfem::T_BDBIntegrator< DiffOpCurl3d, DiagDMat< 3 >, FEL >, ngfem::T_BDBIntegrator< DiffOpGradientBoundary< D >, DiagDMat< D >, FEL >, and ngfem::PML_BDBIntegrator< DIFFOP, DMATOP, FEL >.