Chaste  Release::3.4
CellBasedPdeHandlerOnCuboid< DIM > Class Template Reference

#include <CellBasedPdeHandlerOnCuboid.hpp>

+ Inheritance diagram for CellBasedPdeHandlerOnCuboid< DIM >:
+ Collaboration diagram for CellBasedPdeHandlerOnCuboid< DIM >:

Public Member Functions

 CellBasedPdeHandlerOnCuboid (AbstractCellPopulation< DIM > *pCellPopulation, bool deleteMemberPointersInDestructor=false)
 
virtual ~CellBasedPdeHandlerOnCuboid ()
 
std::auto_ptr
< BoundaryConditionsContainer
< DIM, DIM, 1 > > 
ConstructBoundaryConditionsContainer (PdeAndBoundaryConditions< DIM > *pPdeAndBc, TetrahedralMesh< DIM, DIM > *pMesh)
 
virtual void OutputParameters (out_stream &rParamsFile)
 
- Public Member Functions inherited from CellBasedPdeHandler< DIM >
 CellBasedPdeHandler (AbstractCellPopulation< DIM > *pCellPopulation, bool deleteMemberPointersInDestructor=false)
 
virtual ~CellBasedPdeHandler ()
 
const AbstractCellPopulation
< DIM > * 
GetCellPopulation () const
 
TetrahedralMesh< DIM, DIM > * GetCoarsePdeMesh ()
 
void OpenResultsFiles (std::string outputDirectory)
 
void CloseResultsFiles ()
 
bool GetWriteAverageRadialPdeSolution ()
 
bool GetWriteDailyAverageRadialPdeSolution ()
 
void UpdateCellPdeElementMap ()
 
bool GetImposeBcsOnCoarseBoundary ()
 
unsigned GetNumRadialIntervals ()
 
virtual void SolvePdeAndWriteResultsToFile (unsigned samplingTimestepMultiple)
 
double GetPdeSolutionAtPoint (const c_vector< double, DIM > &rPoint, const std::string &rVariable)
 
unsigned FindCoarseElementContainingCell (CellPtr pCell)
 
virtual Vec GetPdeSolution (const std::string &rName="")
 
void SetWriteAverageRadialPdeSolution (const std::string &rName, unsigned numRadialIntervals=10, bool writeDailyResults=false)
 
void SetImposeBcsOnCoarseBoundary (bool setBcsOnCoarseBoundary)
 
virtual void UseCoarsePdeMesh (double stepSize, ChasteCuboid< DIM > meshCuboid, bool centreOnCellPopulation=false)
 
void AddPdeAndBc (PdeAndBoundaryConditions< DIM > *pPdeAndBc)
 
- Public Member Functions inherited from Identifiable
virtual ~Identifiable ()
 
std::string GetIdentifier () const
 

Private Member Functions

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

Private Attributes

std::vector
< ConstBoundaryCondition< DIM > * > 
mConstBoundaryConditions
 

Friends

class TestCellBasedPdeHandler
 
class TestOffLatticeSimulationWithPdes
 
class TestOnLatticeSimulationWithPdes
 
class boost::serialization::access
 

Additional Inherited Members

- Protected Member Functions inherited from CellBasedPdeHandler< DIM >
void InitialiseCellPdeElementMap ()
 
virtual void WritePdeSolution (double time)
 
void WriteAverageRadialPdeSolution (double time)
 
bool PdeSolveNeedsCoarseMesh ()
 
- Protected Attributes inherited from CellBasedPdeHandler< DIM >
AbstractCellPopulation< DIM > * mpCellPopulation
 
std::vector
< PdeAndBoundaryConditions
< DIM > * > 
mPdeAndBcCollection
 
std::string mDirPath
 
out_stream mpVizPdeSolutionResultsFile
 
out_stream mpAverageRadialPdeSolutionResultsFile
 
bool mWriteAverageRadialPdeSolution
 
bool mWriteDailyAverageRadialPdeSolution
 
std::string mAverageRadialSolutionVariableName
 
bool mSetBcsOnCoarseBoundary
 
unsigned mNumRadialIntervals
 
TetrahedralMesh< DIM, DIM > * mpCoarsePdeMesh
 
std::map< CellPtr, unsignedmCellPdeElementMap
 
bool mDeleteMemberPointersInDestructor
 

Detailed Description

template<unsigned DIM>
class CellBasedPdeHandlerOnCuboid< DIM >

A helper class, containing code for handling the numerical solution of one or more PDEs (using the finite element method) associated with a cell-based simulation object.

By letting AbstractCellBasedSimulation have a pointer to an object of this type as a member variable, we separate out all PDE-related functionality into this class, and thus obviate the need for specialized cell-based simulation subclasses.

Definition at line 56 of file CellBasedPdeHandlerOnCuboid.hpp.

Constructor & Destructor Documentation

template<unsigned DIM>
CellBasedPdeHandlerOnCuboid< DIM >::CellBasedPdeHandlerOnCuboid ( AbstractCellPopulation< DIM > *  pCellPopulation,
bool  deleteMemberPointersInDestructor = false 
)

Constructor.

Parameters
pCellPopulationpointer to a cell population
deleteMemberPointersInDestructorwhether to delete member pointers in the destructor (defaults to false)

Definition at line 40 of file CellBasedPdeHandlerOnCuboid.cpp.

template<unsigned DIM>
CellBasedPdeHandlerOnCuboid< DIM >::~CellBasedPdeHandlerOnCuboid ( )
virtual

Destructor.

Definition at line 47 of file CellBasedPdeHandlerOnCuboid.cpp.

Member Function Documentation

template<unsigned DIM>
std::auto_ptr< BoundaryConditionsContainer< DIM, DIM, 1 > > CellBasedPdeHandlerOnCuboid< DIM >::ConstructBoundaryConditionsContainer ( PdeAndBoundaryConditions< DIM > *  pPdeAndBc,
TetrahedralMesh< DIM, DIM > *  pMesh 
)
virtual

Overridden ConstructBoundaryConditionsContainer method to implement different boundary conditions on each face of the cuboid.

Parameters
pPdeAndBca pointer to the PDE and BCs
pMeshthe mesh on which to solve the PDE
Returns
The full boundary conditions container

Reimplemented from CellBasedPdeHandler< DIM >.

Definition at line 57 of file CellBasedPdeHandlerOnCuboid.cpp.

References AbstractMesh< ELEMENT_DIM, SPACE_DIM >::CalculateBoundingBox(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetBoundaryElementIteratorBegin(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetBoundaryElementIteratorEnd(), AbstractMesh< ELEMENT_DIM, SPACE_DIM >::GetBoundaryNodeIteratorBegin(), AbstractMesh< ELEMENT_DIM, SPACE_DIM >::GetBoundaryNodeIteratorEnd(), ChasteCuboid< SPACE_DIM >::rGetLowerCorner(), and ChasteCuboid< SPACE_DIM >::rGetUpperCorner().

template<unsigned DIM>
void CellBasedPdeHandlerOnCuboid< DIM >::OutputParameters ( out_stream &  rParamsFile)
virtual

Output parameters to file.

Parameters
rParamsFilethe file stream to which the parameters are output

Reimplemented from CellBasedPdeHandler< DIM >.

Definition at line 188 of file CellBasedPdeHandlerOnCuboid.cpp.

References CellBasedPdeHandler< DIM >::OutputParameters().

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

Archive the member variables.

Parameters
archivethe archive
versionthe current version of this class

Definition at line 77 of file CellBasedPdeHandlerOnCuboid.hpp.

Friends And Related Function Documentation

template<unsigned DIM>
friend class boost::serialization::access
friend

Needed for serialization.

Definition at line 69 of file CellBasedPdeHandlerOnCuboid.hpp.

Member Data Documentation

template<unsigned DIM>
std::vector<ConstBoundaryCondition<DIM>* > CellBasedPdeHandlerOnCuboid< DIM >::mConstBoundaryConditions
private

Container for pointers to boundary conditions that are passed into the boundary condition containers.

Definition at line 66 of file CellBasedPdeHandlerOnCuboid.hpp.


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