#include <PdeAndBoundaryConditions.hpp>
Public Member Functions | |
PdeAndBoundaryConditions (AbstractLinearEllipticPde< DIM, DIM > *pPde, AbstractBoundaryCondition< DIM > *pBoundaryCondition=NULL, bool isNeumannBoundaryCondition=true) | |
~PdeAndBoundaryConditions () | |
AbstractLinearEllipticPde< DIM, DIM > * | GetPde () |
AbstractBoundaryCondition< DIM > * | GetBoundaryCondition () const |
Vec | GetSolution () |
void | SetSolution (Vec solution) |
bool | IsNeumannBoundaryCondition () |
bool | HasAveragedSourcePde () |
void | DestroySolution () |
void | SetUpSourceTermsForAveragedSourcePde (TetrahedralMesh< DIM, DIM > *pMesh) |
Private Attributes | |
AbstractLinearEllipticPde< DIM, DIM > * | mpPde |
AbstractBoundaryCondition< DIM > * | mpBoundaryCondition |
bool | mIsNeumannBoundaryCondition |
Vec | mCurrentSolution |
Definition at line 47 of file PdeAndBoundaryConditions.hpp.
PdeAndBoundaryConditions< DIM >::PdeAndBoundaryConditions | ( | AbstractLinearEllipticPde< DIM, DIM > * | pPde, | |
AbstractBoundaryCondition< DIM > * | pBoundaryCondition = NULL , |
|||
bool | isNeumannBoundaryCondition = true | |||
) | [inline] |
Constructor.
pPde | A pointer to a linear elliptic PDE object | |
pBoundaryCondition | A pointer to an abstract boundary condition (defaults to NULL, corresponding to a constant boundary condition with value zero) | |
isNeumannBoundaryCondition | Whether the boundary condition is Neumann (defaults to true) |
Definition at line 32 of file PdeAndBoundaryConditions.cpp.
PdeAndBoundaryConditions< DIM >::~PdeAndBoundaryConditions | ( | ) | [inline] |
Destructor.
Definition at line 43 of file PdeAndBoundaryConditions.cpp.
References PdeAndBoundaryConditions< DIM >::mCurrentSolution.
AbstractLinearEllipticPde< DIM, DIM > * PdeAndBoundaryConditions< DIM >::GetPde | ( | ) | [inline] |
Definition at line 52 of file PdeAndBoundaryConditions.cpp.
References PdeAndBoundaryConditions< DIM >::mpPde.
Referenced by CellBasedSimulationWithPdes< DIM >::SolvePde(), and CellBasedSimulationWithPdes< DIM >::SolvePdeUsingCoarseMesh().
AbstractBoundaryCondition< DIM > * PdeAndBoundaryConditions< DIM >::GetBoundaryCondition | ( | ) | const [inline] |
Definition at line 58 of file PdeAndBoundaryConditions.cpp.
References PdeAndBoundaryConditions< DIM >::mpBoundaryCondition.
Referenced by CellBasedSimulationWithPdes< DIM >::SolvePde(), and CellBasedSimulationWithPdes< DIM >::SolvePdeUsingCoarseMesh().
Vec PdeAndBoundaryConditions< DIM >::GetSolution | ( | ) | [inline] |
Definition at line 64 of file PdeAndBoundaryConditions.cpp.
References PdeAndBoundaryConditions< DIM >::mCurrentSolution.
Referenced by CellBasedSimulationWithPdes< DIM >::SolvePde(), and CellBasedSimulationWithPdes< DIM >::SolvePdeUsingCoarseMesh().
void PdeAndBoundaryConditions< DIM >::SetSolution | ( | Vec | solution | ) | [inline] |
Set mCurrentSolution.
solution | the current solution |
Definition at line 70 of file PdeAndBoundaryConditions.cpp.
References PdeAndBoundaryConditions< DIM >::mCurrentSolution.
Referenced by CellBasedSimulationWithPdes< DIM >::SolvePde(), and CellBasedSimulationWithPdes< DIM >::SolvePdeUsingCoarseMesh().
bool PdeAndBoundaryConditions< DIM >::IsNeumannBoundaryCondition | ( | ) | [inline] |
Definition at line 76 of file PdeAndBoundaryConditions.cpp.
References PdeAndBoundaryConditions< DIM >::mIsNeumannBoundaryCondition.
Referenced by CellBasedSimulationWithPdes< DIM >::SolvePde(), and CellBasedSimulationWithPdes< DIM >::SolvePdeUsingCoarseMesh().
bool PdeAndBoundaryConditions< DIM >::HasAveragedSourcePde | ( | ) | [inline] |
Definition at line 82 of file PdeAndBoundaryConditions.cpp.
References PdeAndBoundaryConditions< DIM >::mpPde.
Referenced by PdeAndBoundaryConditions< DIM >::SetUpSourceTermsForAveragedSourcePde().
void PdeAndBoundaryConditions< DIM >::DestroySolution | ( | ) | [inline] |
Call VecDestroy on mCurrentSolution.
Definition at line 88 of file PdeAndBoundaryConditions.cpp.
References PdeAndBoundaryConditions< DIM >::mCurrentSolution.
Referenced by CellBasedSimulationWithPdes< DIM >::SolvePde(), and CellBasedSimulationWithPdes< DIM >::SolvePdeUsingCoarseMesh().
void PdeAndBoundaryConditions< DIM >::SetUpSourceTermsForAveragedSourcePde | ( | TetrahedralMesh< DIM, DIM > * | pMesh | ) | [inline] |
In the case where mpPde is of type AveragedSourcePde, set the source terms using the information in the given mesh.
pMesh | Pointer to a tetrahedral mesh |
Definition at line 97 of file PdeAndBoundaryConditions.cpp.
References PdeAndBoundaryConditions< DIM >::HasAveragedSourcePde(), and PdeAndBoundaryConditions< DIM >::mpPde.
Referenced by CellBasedSimulationWithPdes< DIM >::SolvePdeUsingCoarseMesh().
AbstractLinearEllipticPde<DIM,DIM>* PdeAndBoundaryConditions< DIM >::mpPde [private] |
Pointer to a linear elliptic PDE object.
Definition at line 54 of file PdeAndBoundaryConditions.hpp.
Referenced by PdeAndBoundaryConditions< DIM >::GetPde(), PdeAndBoundaryConditions< DIM >::HasAveragedSourcePde(), and PdeAndBoundaryConditions< DIM >::SetUpSourceTermsForAveragedSourcePde().
AbstractBoundaryCondition<DIM>* PdeAndBoundaryConditions< DIM >::mpBoundaryCondition [private] |
AbstractBoundaryCondition<SPACE_DIM>
Definition at line 59 of file PdeAndBoundaryConditions.hpp.
Referenced by PdeAndBoundaryConditions< DIM >::GetBoundaryCondition().
bool PdeAndBoundaryConditions< DIM >::mIsNeumannBoundaryCondition [private] |
Whether the boundary condition is Neumann (false corresponds to a Dirichlet boundary condition).
Definition at line 65 of file PdeAndBoundaryConditions.hpp.
Referenced by PdeAndBoundaryConditions< DIM >::IsNeumannBoundaryCondition().
Vec PdeAndBoundaryConditions< DIM >::mCurrentSolution [private] |
Current solution to the PDE problem, for use as an initial guess when solving at the next time step.
Definition at line 71 of file PdeAndBoundaryConditions.hpp.
Referenced by PdeAndBoundaryConditions< DIM >::DestroySolution(), PdeAndBoundaryConditions< DIM >::GetSolution(), PdeAndBoundaryConditions< DIM >::SetSolution(), and PdeAndBoundaryConditions< DIM >::~PdeAndBoundaryConditions().