Chaste Release::3.1
AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM > Class Template Reference

#include <AbstractLinearEllipticPde.hpp>

Inheritance diagram for AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >:

List of all members.

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)

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 59 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 81 of file AbstractLinearEllipticPde.hpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
virtual AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::~AbstractLinearEllipticPde ( ) [inline, virtual]

Destructor.

Definition at line 87 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]

Compute the 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
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
double AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::ComputeConstantInUSourceTermAtNode ( const Node< SPACE_DIM > &  rNode) [virtual]

Compute the 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 141 of file AbstractLinearEllipticPde.hpp.

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]

Compute the 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.
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]

Compute the 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
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
double AbstractLinearEllipticPde< ELEMENT_DIM, SPACE_DIM >::ComputeLinearInUCoeffInSourceTermAtNode ( const Node< SPACE_DIM > &  rNode) [virtual]

Compute the 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 147 of file AbstractLinearEllipticPde.hpp.

References Node< SPACE_DIM >::GetPoint().

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

Serialize the PDE object.

Parameters:
archivethe archive
versionthe current version of this class

Reimplemented in AveragedSourcePde< DIM >, CellwiseSourcePde< DIM >, SimpleUniformSourcePde< DIM >, and VolumeDependentAveragedSourcePde< DIM >.

Definition at line 72 of file AbstractLinearEllipticPde.hpp.


Friends And Related Function Documentation

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

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