CEPS  24.01
Cardiac ElectroPhysiology Simulator
FEIntegrator< _OriginalAssembler > Class Template Reference

Detailed Description

template<typename _OriginalAssembler>
class FEIntegrator< _OriginalAssembler >

Computes the integral of a quantity on the whole domain or subdomains, using a FE matrix.

The quantity to integrate is extracted from a distributed vector, which is passed at call. Attributes and unknowns can be given to the constructor to restrict the data to subdomains or given unknowns.

A matrix can be passed to calls to integrate if it has already been assembled

Definition at line 45 of file FEIntegrator.hpp.

#include <FEIntegrator.hpp>

Inheritance diagram for FEIntegrator< _OriginalAssembler >:
[legend]

Public Member Functions

 ~FEIntegrator () override
 Destructor. More...
 
CepsReal integrate (DHVecPtr u, DMatPtr mat=nullptr)
 Returns the value of the integral by computing ones dot Mu. More...
 
CepsReal integrate (DHVecPtr u, DHVecPtr v, DMatPtr mat=nullptr)
 Returns the value of the product u dot Mv. More...
 

Protected Member Functions

void addMatrixBlockContribution () override
 Adds the content of the block matrices to the integral to compute. More...
 
void addZeroDMatBlockContribution (CepsReal value, DegreeOfFreedom *a, DegreeOfFreedom *b) override
 Adds the content of the block matrices to the integral to compute (zeroD unknowns only) More...
 
CepsReal integrateInternal (DMatPtr mat)
 Internal routine to integrate, assemble and reduce computed value on each procs. More...
 

Protected Attributes

DHVecPtr m_integralU
 Left quantity to integrate in (u,v) More...
 
DHVecPtr m_integralV
 Right quantity to integrate in (u,v) More...
 
CepsReal m_integralValue
 Integral value, partially computed on this proc. More...
 

Constructor & Destructor Documentation

◆ ~FEIntegrator()

template<typename _OriginalAssembler >
FEIntegrator< _OriginalAssembler >::~FEIntegrator ( )
override

Destructor.

Member Function Documentation

◆ addMatrixBlockContribution()

template<typename _OriginalAssembler >
void FEIntegrator< _OriginalAssembler >::addMatrixBlockContribution ( )
overrideprotected

Adds the content of the block matrices to the integral to compute.

◆ addZeroDMatBlockContribution()

template<typename _OriginalAssembler >
void FEIntegrator< _OriginalAssembler >::addZeroDMatBlockContribution ( CepsReal  value,
DegreeOfFreedom a,
DegreeOfFreedom b 
)
overrideprotected

Adds the content of the block matrices to the integral to compute (zeroD unknowns only)

◆ integrate() [1/2]

template<typename _OriginalAssembler >
CepsReal FEIntegrator< _OriginalAssembler >::integrate ( DHVecPtr  u,
DHVecPtr  v,
DMatPtr  mat = nullptr 
)

Returns the value of the product u dot Mv.

Parameters
ufirst vector
vsecond vector

◆ integrate() [2/2]

template<typename _OriginalAssembler >
CepsReal FEIntegrator< _OriginalAssembler >::integrate ( DHVecPtr  u,
DMatPtr  mat = nullptr 
)

Returns the value of the integral by computing ones dot Mu.

Parameters
uquantity to integrate

◆ integrateInternal()

template<typename _OriginalAssembler >
CepsReal FEIntegrator< _OriginalAssembler >::integrateInternal ( DMatPtr  mat)
protected

Internal routine to integrate, assemble and reduce computed value on each procs.

Field Documentation

◆ m_integralU

template<typename _OriginalAssembler >
DHVecPtr FEIntegrator< _OriginalAssembler >::m_integralU
protected

Left quantity to integrate in (u,v)

Definition at line 86 of file FEIntegrator.hpp.

◆ m_integralV

template<typename _OriginalAssembler >
DHVecPtr FEIntegrator< _OriginalAssembler >::m_integralV
protected

Right quantity to integrate in (u,v)

Definition at line 87 of file FEIntegrator.hpp.

◆ m_integralValue

template<typename _OriginalAssembler >
CepsReal FEIntegrator< _OriginalAssembler >::m_integralValue
protected

Integral value, partially computed on this proc.

Definition at line 88 of file FEIntegrator.hpp.


The documentation for this class was generated from the following file: