Chaste  Release::2017.1
AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM > Class Template Referenceabstract

#include <AbstractLinearEllipticPde.hpp>

+ Inheritance diagram for AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >:
+ Collaboration diagram for AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >:

Public Member Functions

 AbstractLinearEllipticPde ()
 
virtual ~AbstractLinearEllipticPde ()
 
virtual double ComputeConstantInUSourceTerm (const ChastePoint< SPACE_DIM > &rX, Element< ELEMENT_DIM, SPACE_DIM > *pElement)=0
 
virtual double ComputeLinearInUCoeffInSourceTerm (const ChastePoint< SPACE_DIM > &rX, Element< ELEMENT_DIM, SPACE_DIM > *pElement)=0
 
virtual c_matrix< double, SPACE_DIM, SPACE_DIM > ComputeDiffusionTerm (const ChastePoint< SPACE_DIM > &rX)=0
 
virtual double ComputeConstantInUSourceTermAtNode (const Node< SPACE_DIM > &rNode)
 
virtual double ComputeLinearInUCoeffInSourceTermAtNode (const Node< SPACE_DIM > &rNode)
 
- Public Member Functions inherited from AbstractLinearPde< ELEMENT_DIM, SPACE_DIM >
 AbstractLinearPde ()
 
virtual ~AbstractLinearPde ()
 

Private Member Functions

template<class Archive >
void serialize (Archive &archive, const unsigned int version)
 

Friends

class boost::serialization::access
 

Detailed Description

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
class AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >

AbstractLinearEllipticPde class.

A general PDE of the form: 0 = Grad.(DiffusionTerm(x)*Grad(u)) + ComputeConstantInUSourceTerm(x) + ComputeLinearInUCoeffInSourceTerm(x, u)

Parabolic PDEs are be derived from this (AbstractLinearParabolicPde)

Definition at line 60 of file AbstractLinearEllipticPde.hpp.

Constructor & Destructor Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::AbstractLinearEllipticPde ( )
inline

Constructor.

Definition at line 83 of file AbstractLinearEllipticPde.hpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
virtual AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::~AbstractLinearEllipticPde ( )
inlinevirtual

Destructor.

Definition at line 90 of file AbstractLinearEllipticPde.hpp.

Member Function Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
virtual double AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::ComputeConstantInUSourceTerm ( const ChastePoint< SPACE_DIM > &  rX,
Element< ELEMENT_DIM, SPACE_DIM > *  pElement 
)
pure virtual
Returns
computed constant in u part of the source term, i.e g(x) in Div(D Grad u) + f(x)u + g(x) = 0, at a given point.
Parameters
rXThe point in space
pElementThe element

Referenced by AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::ComputeConstantInUSourceTermAtNode(), and AbstractLinearEllipticPde< DIM, DIM >::~AbstractLinearEllipticPde().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
double AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::ComputeConstantInUSourceTermAtNode ( const Node< SPACE_DIM > &  rNode)
virtual
Returns
computed constant in u part of the source term, i.e g(x) in Div(D Grad u) + f(x)u + g(x) = 0, at a given node.
Parameters
rNodethe node

Definition at line 139 of file AbstractLinearEllipticPde.hpp.

References AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::ComputeConstantInUSourceTerm(), and Node< SPACE_DIM >::GetPoint().

Referenced by AbstractLinearEllipticPde< DIM, DIM >::~AbstractLinearEllipticPde().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
virtual c_matrix<double, SPACE_DIM, SPACE_DIM> AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::ComputeDiffusionTerm ( const ChastePoint< SPACE_DIM > &  rX)
pure virtual
Returns
computed diffusion term at a given point. The diffusion tensor should be symmetric and positive definite
Parameters
rXThe point in space at which the diffusion term is computed.
Returns
A matrix.

Referenced by AbstractLinearEllipticPde< DIM, DIM >::~AbstractLinearEllipticPde().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
virtual double AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::ComputeLinearInUCoeffInSourceTerm ( const ChastePoint< SPACE_DIM > &  rX,
Element< ELEMENT_DIM, SPACE_DIM > *  pElement 
)
pure virtual
Returns
computed coefficient of u in the linear part of the source term, i.e f(x) in Div(D Grad u) + f(x)u + g(x) = 0, at a given point in space.
Parameters
rXThe point in space
pElement

Referenced by AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::ComputeLinearInUCoeffInSourceTermAtNode(), and AbstractLinearEllipticPde< DIM, DIM >::~AbstractLinearEllipticPde().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
double AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::ComputeLinearInUCoeffInSourceTermAtNode ( const Node< SPACE_DIM > &  rNode)
virtual
Returns
computed coefficient of u in the linear part of the source term, i.e f(x) in Div(D Grad u) + f(x)u + g(x) = 0, at a given node.
Parameters
rNodethe node

Definition at line 145 of file AbstractLinearEllipticPde.hpp.

References AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::ComputeLinearInUCoeffInSourceTerm(), and Node< SPACE_DIM >::GetPoint().

Referenced by AbstractLinearEllipticPde< DIM, DIM >::~AbstractLinearEllipticPde().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
template<class Archive >
void AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::serialize ( Archive &  archive,
const unsigned int  version 
)
inlineprivate

Serialize the PDE object.

Parameters
archivethe archive
versionthe current version of this class

Definition at line 73 of file AbstractLinearEllipticPde.hpp.

Friends And Related Function Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
friend class boost::serialization::access
friend

Needed for serialization.

Definition at line 65 of file AbstractLinearEllipticPde.hpp.


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