#include <AbstractCardiacProblem.hpp>
Public Member Functions | |
AbstractCardiacProblem (AbstractCardiacCellFactory< ELEMENT_DIM, SPACE_DIM > *pCellFactory) | |
AbstractCardiacProblem () | |
virtual | ~AbstractCardiacProblem () |
void | Initialise () |
void | SetNodesPerProcessorFilename (const std::string &rFilename) |
void | SetBoundaryConditionsContainer (BccType pBcc) |
virtual void | PreSolveChecks () |
virtual Vec | CreateInitialCondition () |
void | SetMesh (AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > *pMesh) |
void | PrintOutput (bool rPrintOutput) |
void | SetWriteInfo (bool writeInfo=true) |
Vec | GetSolution () |
DistributedVector | GetSolutionDistributedVector () |
double | GetCurrentTime () |
AbstractTetrahedralMesh < ELEMENT_DIM, SPACE_DIM > & | rGetMesh () |
AbstractCardiacTissue < ELEMENT_DIM, SPACE_DIM > * | GetTissue () |
void | Solve () |
void | CloseFilesAndPostProcess () |
virtual void | WriteInfo (double time)=0 |
virtual void | DefineWriterColumns (bool extending) |
void | DefineExtraVariablesWriterColumns (bool extending) |
virtual void | WriteOneStep (double time, Vec voltageVec)=0 |
void | WriteExtraVariablesOneStep () |
void | InitialiseWriter () |
void | SetOutputNodes (std::vector< unsigned > &rNodesToOutput) |
Hdf5DataReader | GetDataReader () |
void | UseMatrixBasedRhsAssembly (bool useMatrixBasedRhsAssembly=true) |
virtual void | AtBeginningOfTimestep (double time) |
virtual void | OnEndOfTimestep (double time) |
virtual void | SetUpAdditionalStoppingTimes (std::vector< double > &rAdditionalStoppingTimes) |
void | SetUseTimeAdaptivityController (bool useAdaptivity, AbstractTimeAdaptivityController *pController=NULL) |
template<class Archive> | |
void | LoadExtraArchive (Archive &archive, unsigned version) |
virtual bool | GetHasBath () |
virtual void | SetElectrodes () |
Protected Member Functions | |
virtual AbstractCardiacTissue < ELEMENT_DIM, SPACE_DIM > * | CreateCardiacTissue ()=0 |
virtual AbstractDynamicLinearPdeSolver < ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM > * | CreateSolver ()=0 |
Protected Attributes | |
std::string | mMeshFilename |
bool | mUseMatrixBasedRhsAssembly |
bool | mAllocatedMemoryForMesh |
bool | mWriteInfo |
bool | mPrintOutput |
std::vector< unsigned > | mNodesToOutput |
unsigned | mVoltageColumnId |
std::vector< unsigned > | mExtraVariablesId |
unsigned | mTimeColumnId |
unsigned | mNodeColumnId |
AbstractCardiacTissue < ELEMENT_DIM, SPACE_DIM > * | mpCardiacTissue |
BccType | mpBoundaryConditionsContainer |
BccType | mpDefaultBoundaryConditionsContainer |
AbstractDynamicLinearPdeSolver < ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM > * | mpSolver |
AbstractCardiacCellFactory < ELEMENT_DIM, SPACE_DIM > * | mpCellFactory |
AbstractTetrahedralMesh < ELEMENT_DIM, SPACE_DIM > * | mpMesh |
Vec | mSolution |
double | mCurrentTime |
AbstractTimeAdaptivityController * | mpTimeAdaptivityController |
Hdf5DataWriter * | mpWriter |
Private Types | |
typedef boost::shared_ptr < BoundaryConditionsContainer < ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM > > | BccType |
Private Member Functions | |
template<class Archive> | |
void | save (Archive &archive, const unsigned int version) const |
template<class Archive> | |
void | load (Archive &archive, const unsigned int version) |
template<class Archive> | |
void | SaveBoundaryConditions (Archive &archive, AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > *pMesh, BccType pBcc) const |
template<class Archive> | |
BccType | LoadBoundaryConditions (Archive &archive, AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > *pMesh) |
Friends | |
class | TestBidomainWithBath |
class | TestCardiacSimulationArchiver |
class | boost::serialization::access |
class | CardiacElectroMechanicsProblem |
See tutorials for usage.
Definition at line 98 of file AbstractCardiacProblem.hpp.
typedef boost::shared_ptr<BoundaryConditionsContainer<ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM> > AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::BccType [private] |
To save typing
Definition at line 105 of file AbstractCardiacProblem.hpp.
AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::AbstractCardiacProblem | ( | AbstractCardiacCellFactory< ELEMENT_DIM, SPACE_DIM > * | pCellFactory | ) | [inline] |
Constructor
pCellFactory | User defined cell factory which shows how the pde should create cells. |
Definition at line 46 of file AbstractCardiacProblem.cpp.
References GenericEventHandler< 13, HeartEventHandler >::BeginEvent(), EXCEPTION, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mNodesToOutput, and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpCellFactory.
AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::AbstractCardiacProblem | ( | ) | [inline] |
Constructor used by archiving.
Definition at line 72 of file AbstractCardiacProblem.cpp.
AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::~AbstractCardiacProblem | ( | ) | [inline, virtual] |
Destructor
Definition at line 96 of file AbstractCardiacProblem.cpp.
References AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mAllocatedMemoryForMesh, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpCardiacTissue, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpMesh, and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mSolution.
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::save | ( | Archive & | archive, | |
const unsigned int | version | |||
) | const [inline, private] |
Save the member variables.
archive | ||
version |
Reimplemented in BidomainProblem< DIM >.
Definition at line 118 of file AbstractCardiacProblem.hpp.
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::load | ( | Archive & | archive, | |
const unsigned int | version | |||
) | [inline, private] |
Load the member variables.
archive | ||
version |
Reimplemented in BidomainProblem< DIM >.
Definition at line 198 of file AbstractCardiacProblem.hpp.
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SaveBoundaryConditions | ( | Archive & | archive, | |
AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > * | pMesh, | |||
BccType | pBcc | |||
) | const [inline, private] |
Serialization helper method to save a boundary conditions container.
archive | the archive to save to | |
pMesh | the mesh boundary conditions are defined on | |
pBcc | the container to save |
Definition at line 311 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::save().
BccType AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::LoadBoundaryConditions | ( | Archive & | archive, | |
AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > * | pMesh | |||
) | [inline, private] |
Serialization helper method to load a boundary conditions container.
archive | the archive to load from | |
pMesh | the mesh boundary conditions are to be defined on |
Definition at line 326 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::load().
virtual AbstractCardiacTissue<ELEMENT_DIM,SPACE_DIM>* AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CreateCardiacTissue | ( | ) | [protected, pure virtual] |
Subclasses must override this method to create a PDE object of the appropriate type.
This class will take responsibility for freeing the object when it is finished with.
Implemented in BidomainProblem< DIM >, MonodomainProblem< ELEMENT_DIM, SPACE_DIM >, and MonodomainProblem< DIM >.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise().
virtual AbstractDynamicLinearPdeSolver<ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM>* AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CreateSolver | ( | ) | [protected, pure virtual] |
Subclasses must override this method to create a suitable solver object.
This class will take responsibility for freeing the object when it is finished with.
Implemented in BidomainProblem< DIM >, MonodomainProblem< ELEMENT_DIM, SPACE_DIM >, and MonodomainProblem< DIM >.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise | ( | ) | [inline] |
Initialise the system, once parameters have been set up.
Must be called before first calling Solve(). If loading from a checkpoint, do NOT call this method, as it can also be used to reset the problem to perform another simulation from time 0.
Definition at line 111 of file AbstractCardiacProblem.cpp.
References GenericEventHandler< 13, HeartEventHandler >::BeginEvent(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CreateCardiacTissue(), GenericEventHandler< 13, HeartEventHandler >::EndEvent(), EXCEPTION, HeartConfig::GetFibreLength(), HeartConfig::GetInterNodeSpace(), HeartConfig::GetMeshPartitioning(), HeartConfig::GetSheetDimensions(), Exception::GetShortMessage(), HeartConfig::GetSlabDimensions(), HeartConfig::Instance(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mAllocatedMemoryForMesh, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mCurrentTime, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpCardiacTissue, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpCellFactory, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpMesh, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mSolution, NEVER_REACHED, and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetElectrodes().
Referenced by CardiacElectroMechanicsProblem< DIM >::Initialise().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetNodesPerProcessorFilename | ( | const std::string & | rFilename | ) |
Set a file from which the nodes for each processor are read
rFilename |
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetBoundaryConditionsContainer | ( | BccType | pBcc | ) | [inline] |
Set the boundary conditions container.
pBcc | is a pointer to a boundary conditions container |
Definition at line 205 of file AbstractCardiacProblem.cpp.
References AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpBoundaryConditionsContainer.
Referenced by CardiacElectroMechanicsProblem< DIM >::Solve().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::PreSolveChecks | ( | ) | [inline, virtual] |
Performs a series of checks before solving. It checks whether the cardiac pde has been defined, whether the simulation time is greater than zero and whether the output directory is specified (or the output is set not to be produced). It throws exceptions if any of the above checks fails.
Reimplemented in BidomainProblem< DIM >.
Definition at line 211 of file AbstractCardiacProblem.cpp.
References EXCEPTION, HeartConfig::GetPdeTimeStep(), HeartConfig::GetSimulationDuration(), HeartConfig::Instance(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mCurrentTime, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpCardiacTissue, and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mPrintOutput.
Referenced by BidomainProblem< DIM >::PreSolveChecks(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
Vec AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CreateInitialCondition | ( | ) | [inline, virtual] |
Perhaps this should be a method of AbstractCardiacTissue?? This is virtual so BidomainProblem can overwrite V to zero for bath nodes, if there are any.
Reimplemented in BidomainProblem< DIM >.
Definition at line 243 of file AbstractCardiacProblem.cpp.
References DistributedVector::Begin(), DistributedVectorFactory::CreateDistributedVector(), DistributedVectorFactory::CreateVec(), DistributedVector::End(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpCardiacTissue, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpMesh, and DistributedVector::Restore().
Referenced by BidomainProblem< DIM >::CreateInitialCondition(), CardiacElectroMechanicsProblem< DIM >::Solve(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetMesh | ( | AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > * | pMesh | ) | [inline] |
This only needs to be called if a mesh filename has not been set.
pMesh | the mesh object to use |
Definition at line 273 of file AbstractCardiacProblem.cpp.
References AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mAllocatedMemoryForMesh, and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpMesh.
Referenced by CardiacElectroMechanicsProblem< DIM >::Initialise().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::PrintOutput | ( | bool | rPrintOutput | ) | [inline] |
Set whether the simulation will generate results files.
rPrintOutput |
Definition at line 284 of file AbstractCardiacProblem.cpp.
References AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mPrintOutput.
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetWriteInfo | ( | bool | writeInfo = true |
) | [inline] |
Set whether extra info will be written to stdout during computation.
writeInfo |
Definition at line 290 of file AbstractCardiacProblem.cpp.
References AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mWriteInfo.
Vec AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::GetSolution | ( | ) | [inline] |
Get the final solution vector. This vector is distributed over all processes.
In case of Bidomain, this is of length 2*numNodes, and of the form (V_1, phi_1, V_2, phi_2, ......, V_N, phi_N). where V_j is the voltage at node j and phi_j is the extracellular potential at node j.
Use with caution since we don't want to alter the state of the PETSc vector.
Definition at line 296 of file AbstractCardiacProblem.cpp.
References AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mSolution.
DistributedVector AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::GetSolutionDistributedVector | ( | ) | [inline] |
Get the solution vector, wrapped in a DistributedVector.
See also GetSolution.
Definition at line 302 of file AbstractCardiacProblem.cpp.
References AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpMesh, and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mSolution.
double AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::GetCurrentTime | ( | ) | [inline] |
Definition at line 308 of file AbstractCardiacProblem.cpp.
References AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mCurrentTime.
AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > & AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::rGetMesh | ( | ) | [inline] |
Definition at line 314 of file AbstractCardiacProblem.cpp.
References AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpMesh.
AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM > * AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::GetTissue | ( | ) | [inline] |
Definition at line 321 of file AbstractCardiacProblem.cpp.
References AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpCardiacTissue.
Referenced by CardiacElectroMechanicsProblem< DIM >::Solve().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve | ( | ) | [inline] |
First performs some checks by calling the PreSolveChecks method. It creates an solver to which it passes the boundary conditions specified by the user (otherwise it passes the defauls bcc). It then calls the Solve method on the solver class. It also handles the output, if necessary.
Definition at line 345 of file AbstractCardiacProblem.cpp.
References Hdf5DataWriter::AdvanceAlongUnlimitedDimension(), TimeStepper::AdvanceOneTimeStep(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::AtBeginningOfTimestep(), GenericEventHandler< 13, HeartEventHandler >::BeginEvent(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CloseFilesAndPostProcess(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CreateInitialCondition(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CreateSolver(), GenericEventHandler< 13, HeartEventHandler >::EndEvent(), TimeStepper::GetNextTime(), HeartConfig::GetOutputDirectory(), TimeStepper::GetTime(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::InitialiseWriter(), HeartConfig::Instance(), TimeStepper::IsTimeAtEnd(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mCurrentTime, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpBoundaryConditionsContainer, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpDefaultBoundaryConditionsContainer, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpMesh, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mPrintOutput, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpSolver, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpTimeAdaptivityController, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpWriter, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mSolution, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mWriteInfo, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::OnEndOfTimestep(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::PreSolveChecks(), ProgressReporter::PrintFinalising(), PetscTools::ReplicateException(), GenericEventHandler< 13, HeartEventHandler >::Reset(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetUpAdditionalStoppingTimes(), ProgressReporter::Update(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::WriteInfo(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::WriteOneStep().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CloseFilesAndPostProcess | ( | ) | [inline] |
Closes the files where the solution is stored and, if specified so (as it is by default), converts the output to Meshalyzer format by calling the WriteFilesUsingMesh method in the MeshalyzerWriter class.
Definition at line 525 of file AbstractCardiacProblem.cpp.
References GenericEventHandler< 13, HeartEventHandler >::BeginEvent(), GenericEventHandler< 13, HeartEventHandler >::EndEvent(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::GetHasBath(), HeartConfig::GetVisualizeWithMeshalyzer(), HeartConfig::Instance(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mNodesToOutput, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpMesh, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mPrintOutput, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpWriter, and PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WritePostProcessingFiles().
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
virtual void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::WriteInfo | ( | double | time | ) | [pure virtual] |
Write informative details about the progress of the simulation to standard output.
Implemented only in subclasses.
time | the current time |
Implemented in BidomainProblem< DIM >, MonodomainProblem< ELEMENT_DIM, SPACE_DIM >, and MonodomainProblem< DIM >.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::DefineWriterColumns | ( | bool | extending | ) | [inline, virtual] |
Define what variables are written to the primary results file.
extending | whether we are extending an existing results file |
Reimplemented in BidomainProblem< DIM >, MonodomainProblem< ELEMENT_DIM, SPACE_DIM >, and MonodomainProblem< DIM >.
Definition at line 576 of file AbstractCardiacProblem.cpp.
References Hdf5DataWriter::DefineFixedDimension(), Hdf5DataWriter::DefineUnlimitedDimension(), Hdf5DataWriter::DefineVariable(), TimeStepper::EstimateTimeSteps(), Hdf5DataWriter::GetVariableByName(), HeartConfig::Instance(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mCurrentTime, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mNodesToOutput, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpMesh, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpWriter, and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mVoltageColumnId.
Referenced by MonodomainProblem< ELEMENT_DIM, SPACE_DIM >::DefineWriterColumns(), BidomainProblem< DIM >::DefineWriterColumns(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::InitialiseWriter().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::DefineExtraVariablesWriterColumns | ( | bool | extending | ) | [inline] |
Define the user specified variables to be written to the primary results file
extending | whether we are extending an existing results file |
Definition at line 607 of file AbstractCardiacProblem.cpp.
References Hdf5DataWriter::DefineVariable(), HeartConfig::GetOutputVariables(), Hdf5DataWriter::GetVariableByName(), HeartConfig::Instance(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mExtraVariablesId, and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpWriter.
Referenced by MonodomainProblem< ELEMENT_DIM, SPACE_DIM >::DefineWriterColumns(), and BidomainProblem< DIM >::DefineWriterColumns().
virtual void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::WriteOneStep | ( | double | time, | |
Vec | voltageVec | |||
) | [pure virtual] |
Write one timestep of output data to the primary results file.
time | the current time | |
voltageVec | the solution vector to write |
Implemented in BidomainProblem< DIM >, MonodomainProblem< ELEMENT_DIM, SPACE_DIM >, and MonodomainProblem< DIM >.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::WriteExtraVariablesOneStep | ( | ) | [inline] |
Write one timestep of output data for the extra variables to the primary results file.
Definition at line 643 of file AbstractCardiacProblem.cpp.
References DistributedVector::Begin(), DistributedVector::End(), AbstractParameterisedSystem< VECTOR >::GetAnyVariable(), AbstractParameterisedSystem< VECTOR >::GetAnyVariableIndex(), HeartConfig::GetOutputVariables(), HeartConfig::Instance(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mCurrentTime, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mExtraVariablesId, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpCardiacTissue, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpMesh, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpWriter, Hdf5DataWriter::PutVector(), and DistributedVector::Restore().
Referenced by MonodomainProblem< ELEMENT_DIM, SPACE_DIM >::WriteOneStep(), and BidomainProblem< DIM >::WriteOneStep().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::InitialiseWriter | ( | ) | [inline] |
It creates and initialises the hdf writer from the Hdf5DataWriter class. It passes the output directory and file name to it. It is called by Solve(), if the output needs to be generated.
Definition at line 682 of file AbstractCardiacProblem.cpp.
References Hdf5DataWriter::ApplyPermutation(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::DefineWriterColumns(), Hdf5DataWriter::EndDefineMode(), HeartConfig::GetOutputDirectory(), HeartConfig::GetOutputFilenamePrefix(), HeartConfig::Instance(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpMesh, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpWriter, AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mSolution, and HeartConfig::SetOutputUsingOriginalNodeOrdering().
Referenced by CardiacElectroMechanicsProblem< DIM >::Solve(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetOutputNodes | ( | std::vector< unsigned > & | rNodesToOutput | ) | [inline] |
Specifies which nodes in the mesh to output.
rNodesToOutput | is a reference to a vector with the indexes of the nodes where the output is desired. If empty, the output will be for all the nodes in the mesh. |
Definition at line 732 of file AbstractCardiacProblem.cpp.
References AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mNodesToOutput.
Hdf5DataReader AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::GetDataReader | ( | ) | [inline] |
Create and return a data reader configured to read the results we've been outputting.
Definition at line 738 of file AbstractCardiacProblem.cpp.
References EXCEPTION, and HeartConfig::Instance().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::UseMatrixBasedRhsAssembly | ( | bool | useMatrixBasedRhsAssembly = true |
) | [inline] |
Whether to use matrix-based RHS assembly or not.
useMatrixBasedRhsAssembly |
Definition at line 748 of file AbstractCardiacProblem.cpp.
References AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mUseMatrixBasedRhsAssembly.
virtual void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::AtBeginningOfTimestep | ( | double | time | ) | [inline, virtual] |
Called at beginning of each time step in the main time-loop in Solve(). Empty implementation but can be overloaded by child classes.
time | the current time |
Reimplemented in BidomainProblem< DIM >.
Definition at line 629 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
virtual void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::OnEndOfTimestep | ( | double | time | ) | [inline, virtual] |
Called at end of each time step in the main time-loop in Solve(). Empty implementation but can be overloaded by child classes.
time | the current time |
Reimplemented in BidomainProblem< DIM >.
Definition at line 639 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
virtual void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetUpAdditionalStoppingTimes | ( | std::vector< double > & | rAdditionalStoppingTimes | ) | [inline, virtual] |
Allow subclasses to define additional 'stopping times' for the printing time step loop. This allows bidomain simulations to specify exactly when the Electrodes should be turned on or off.
rAdditionalStoppingTimes | to be filled in with the additional stopping times |
Reimplemented in BidomainProblem< DIM >.
Definition at line 649 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetUseTimeAdaptivityController | ( | bool | useAdaptivity, | |
AbstractTimeAdaptivityController * | pController = NULL | |||
) | [inline] |
useAdaptivity | whether to use adaptivity | |
pController | The controller (only relevant if useAdaptivity==true) |
Definition at line 327 of file AbstractCardiacProblem.cpp.
References AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpTimeAdaptivityController.
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::LoadExtraArchive | ( | Archive & | archive, | |
unsigned | version | |||
) | [inline] |
Used when loading a set of archives written by a parallel simulation onto a single process. Loads data from the given process-specific archive (written by a non-master process) and merges it into our data.
archive | the archive to load | |
version | the archive file version |
Definition at line 708 of file AbstractCardiacProblem.hpp.
References BidomainProblem< DIM >::LoadExtraArchiveForBidomain().
bool AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::GetHasBath | ( | ) | [inline, virtual] |
Return whether there's bath defined in this problem
Reimplemented in BidomainProblem< DIM >.
Definition at line 754 of file AbstractCardiacProblem.cpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CloseFilesAndPostProcess().
void AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetElectrodes | ( | ) | [inline, virtual] |
Set an electrode object (which provides boundary conditions). Only valid if there is a bath.
Reimplemented in BidomainProblem< DIM >.
Definition at line 759 of file AbstractCardiacProblem.cpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise().
friend class boost::serialization::access [friend] |
Needed for serialization.
Reimplemented in BidomainProblem< DIM >, BidomainWithBathProblem< DIM >, MonodomainProblem< ELEMENT_DIM, SPACE_DIM >, and MonodomainProblem< DIM >.
Definition at line 109 of file AbstractCardiacProblem.hpp.
friend class CardiacElectroMechanicsProblem [friend] |
CardiacElectroMechanicsProblem needs access to mpWriter.
Definition at line 423 of file AbstractCardiacProblem.hpp.
std::string AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mMeshFilename [protected] |
Meshes can be read from file or instantiated and passed directly to this class, this is for the former
Definition at line 346 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::load(), and AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::save().
bool AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mUseMatrixBasedRhsAssembly [protected] |
Whether to use matrix-based assembly of the RHS vector (much more efficient). True by default
Definition at line 352 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::load(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::save(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::UseMatrixBasedRhsAssembly().
bool AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mAllocatedMemoryForMesh [protected] |
Whether this problem class has created the mesh itself, as opposed to being given it
Definition at line 354 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetMesh(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::~AbstractCardiacProblem().
bool AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mWriteInfo [protected] |
Whether to print some statistics (max/min voltage) to screen during the simulation
Definition at line 356 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::load(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::save(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetWriteInfo(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
bool AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mPrintOutput [protected] |
Whether to write any output at all
Definition at line 358 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CloseFilesAndPostProcess(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::load(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::PreSolveChecks(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::PrintOutput(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::save(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
std::vector<unsigned> AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mNodesToOutput [protected] |
If only outputing voltage for selected nodes, which nodes to output at
Definition at line 361 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::AbstractCardiacProblem(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CloseFilesAndPostProcess(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::DefineWriterColumns(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::load(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::save(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetOutputNodes().
unsigned AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mVoltageColumnId [protected] |
Used by the writer
Definition at line 364 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::DefineWriterColumns().
std::vector<unsigned> AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mExtraVariablesId [protected] |
List of extra variables to be written to HDF5 file
Definition at line 366 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::DefineExtraVariablesWriterColumns(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::WriteExtraVariablesOneStep().
unsigned AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mTimeColumnId [protected] |
Used by the writer
Definition at line 368 of file AbstractCardiacProblem.hpp.
unsigned AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mNodeColumnId [protected] |
Used by the writer
Definition at line 370 of file AbstractCardiacProblem.hpp.
AbstractCardiacTissue<ELEMENT_DIM,SPACE_DIM>* AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpCardiacTissue [protected] |
The monodomain or bidomain pde
Definition at line 373 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CreateInitialCondition(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::GetTissue(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::load(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::PreSolveChecks(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::save(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::WriteExtraVariablesOneStep(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::~AbstractCardiacProblem().
BccType AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpBoundaryConditionsContainer [protected] |
Boundary conditions container used in the simulation
Definition at line 376 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::load(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::save(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetBoundaryConditionsContainer(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
BccType AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpDefaultBoundaryConditionsContainer [protected] |
It is convenient to also have a separate variable for default (zero-Neumann) boundary conditions
Definition at line 378 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::load(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::save(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
AbstractDynamicLinearPdeSolver<ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM>* AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpSolver [protected] |
The PDE solver
Reimplemented in BidomainProblem< DIM >.
Definition at line 380 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
AbstractCardiacCellFactory<ELEMENT_DIM,SPACE_DIM>* AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpCellFactory [protected] |
The cell factory creates the cells for each node
Definition at line 382 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::AbstractCardiacProblem(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise().
AbstractTetrahedralMesh<ELEMENT_DIM,SPACE_DIM>* AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpMesh [protected] |
The mesh. Can either by passed in, or the mesh filename can be set
Definition at line 384 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CloseFilesAndPostProcess(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CreateInitialCondition(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::DefineWriterColumns(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::GetSolutionDistributedVector(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::InitialiseWriter(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::load(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::rGetMesh(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::save(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetMesh(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::WriteExtraVariablesOneStep(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::~AbstractCardiacProblem().
Vec AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mSolution [protected] |
The current solution vector, of the form [V_0 .. V_N ] for monodomain and [V_0 phi_0 .. V_N phi_N] for bidomain
Definition at line 388 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::GetSolution(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::GetSolutionDistributedVector(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::InitialiseWriter(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::load(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::save(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::~AbstractCardiacProblem().
double AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mCurrentTime [protected] |
The current simulation time.
This is used to be able to restart simulations at a point other than time zero, either because of repeated calls to Solve (with increased simulation duration) or because of restarting from a checkpoint.
Definition at line 397 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::DefineWriterColumns(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::GetCurrentTime(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::load(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::PreSolveChecks(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::save(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::WriteExtraVariablesOneStep().
AbstractTimeAdaptivityController* AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpTimeAdaptivityController [protected] |
Adaptivity controller (defaults to NULL).
Definition at line 400 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetUseTimeAdaptivityController(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve().
Hdf5DataWriter* AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::mpWriter [protected] |
The object to use to write results to disk.
Definition at line 427 of file AbstractCardiacProblem.hpp.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CloseFilesAndPostProcess(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::DefineExtraVariablesWriterColumns(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::DefineWriterColumns(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::InitialiseWriter(), CardiacElectroMechanicsProblem< DIM >::Solve(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::WriteExtraVariablesOneStep().