Chaste Commit::1fd4e48e3990e67db148bc1bc4cf6991a0049d0c
|
#include <AbstractConvergenceTester.hpp>
Public Member Functions | |
void | Converge (std::string nameOfTest) |
void | DisplayRun () |
virtual void | SetInitialConvergenceParameters ()=0 |
virtual void | UpdateConvergenceParameters ()=0 |
virtual bool | GiveUpConvergence ()=0 |
virtual double | Abscissa ()=0 |
virtual void | PopulateStandardResult (std::vector< double > &result, std::vector< double > ×) |
bool | IsConverged () |
void | SetMeshWidth (double meshWidth) |
Additional Inherited Members | |
Public Attributes inherited from AbstractUntemplatedConvergenceTester | |
double | OdeTimeStep |
double | PdeTimeStep |
unsigned | MeshNum |
double | RelativeConvergenceCriterion |
double | LastDifference |
double | Apd90FirstQn |
double | Apd90ThirdQn |
double | ConductionVelocity |
bool | PopulatedResult |
bool | FixedResult |
double | AbsoluteStimulus |
bool | SimulateFullActionPotential |
bool | Converged |
StimulusType | Stimulus |
double | NeumannStimulus |
Protected Attributes inherited from AbstractUntemplatedConvergenceTester | |
double | mMeshWidth |
AbstractConvergenceTester Run convergence for a particular cell type, mono/bidomain and dimension
Definition at line 235 of file AbstractConvergenceTester.hpp.
|
inlinevirtual |
Definition at line 676 of file AbstractConvergenceTester.hpp.
|
pure virtual |
Implemented in OdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, OdePdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, PdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, and SpaceConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >.
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge().
|
inlinevirtual |
Run the same test at different levels of refinement until some convergence criterion is met.
nameOfTest | The name of the convergence test (typically the name in the suite) for use in naming files. |
Implements AbstractUntemplatedConvergenceTester.
Definition at line 243 of file AbstractConvergenceTester.hpp.
References AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Abscissa(), PetscTools::AmMaster(), AbstractUntemplatedConvergenceTester::Apd90FirstQn, AbstractUntemplatedConvergenceTester::Apd90ThirdQn, PropagationPropertiesCalculator::CalculateActionPotentialDuration(), PropagationPropertiesCalculator::CalculateConductionVelocity(), AbstractUntemplatedConvergenceTester::ConductionVelocity, CuboidMeshConstructor< ELEMENT_DIM, SPACE_DIM >::Construct(), AbstractUntemplatedConvergenceTester::Converged, AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::DisplayRun(), OutputFileHandler::FindFile(), AbstractUntemplatedConvergenceTester::FixedResult, FileFinder::GetAbsolutePath(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetBoundaryElementIteratorBegin(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetBoundaryElementIteratorEnd(), Timer::GetElapsedTime(), CuboidMeshConstructor< ELEMENT_DIM, SPACE_DIM >::GetNumElements(), Hdf5DataReader::GetUnlimitedDimensionValues(), Hdf5DataReader::GetVariableOverTime(), CuboidMeshConstructor< ELEMENT_DIM, SPACE_DIM >::GetWidth(), AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::GiveUpConvergence(), HeartConfig::Instance(), AbstractUntemplatedConvergenceTester::LastDifference, AbstractUntemplatedConvergenceTester::MeshNum, AbstractUntemplatedConvergenceTester::mMeshWidth, AbstractUntemplatedConvergenceTester::NeumannStimulus, NEVER_REACHED, AbstractUntemplatedConvergenceTester::OdeTimeStep, OutputFileHandler::OpenOutputFile(), AbstractUntemplatedConvergenceTester::PdeTimeStep, AbstractUntemplatedConvergenceTester::PopulatedResult, AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::PopulateStandardResult(), AbstractUntemplatedConvergenceTester::RelativeConvergenceCriterion, Timer::Reset(), AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::SetInitialConvergenceParameters(), HeartConfig::SetOdePdeAndPrintingTimeSteps(), HeartConfig::SetOutputDirectory(), HeartConfig::SetOutputFilenamePrefix(), HeartConfig::SetSimulationDuration(), AbstractUntemplatedConvergenceTester::SimulateFullActionPotential, AbstractUntemplatedConvergenceTester::Stimulus, and AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::UpdateConvergenceParameters().
|
inline |
Show convergence details relevant to this run in std::cout
Definition at line 628 of file AbstractConvergenceTester.hpp.
References PetscTools::AmMaster(), HeartConfig::GetAbsoluteTolerance(), HeartConfig::GetRelativeTolerance(), HeartConfig::GetUseAbsoluteTolerance(), HeartConfig::Instance(), AbstractUntemplatedConvergenceTester::MeshNum, AbstractUntemplatedConvergenceTester::mMeshWidth, AbstractUntemplatedConvergenceTester::OdeTimeStep, AbstractUntemplatedConvergenceTester::PdeTimeStep, and AbstractUntemplatedConvergenceTester::Stimulus.
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge().
|
pure virtual |
Implemented in OdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, OdePdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, PdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, and SpaceConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >.
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge().
|
inline |
Definition at line 702 of file AbstractConvergenceTester.hpp.
References AbstractUntemplatedConvergenceTester::Converged.
|
inlinevirtual |
This is currently used as stub for convergence testers which need to converge to a known standardised result (the StimulusConvergence tester in projects/jmpf).
result | a standard vector to be sized and filled with V_m values by this method (in subclass) |
times | a standard vector to be sized and filled with times values by this method (in subclass) |
Definition at line 692 of file AbstractConvergenceTester.hpp.
References AbstractUntemplatedConvergenceTester::PopulatedResult.
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge().
|
pure virtual |
Initial values of parameters at the beginning of the convergence test (the parameter to be varied will be larger than the expected value at convergence)
Implemented in OdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, OdePdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, PdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, and SpaceConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >.
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge().
|
inline |
meshWidth | set the dimension of the cuboid mesh (default value is 0.2cm) |
Definition at line 710 of file AbstractConvergenceTester.hpp.
References AbstractUntemplatedConvergenceTester::mMeshWidth.
|
pure virtual |
Update the parameter which is being varied
Implemented in OdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, OdePdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, PdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, and SpaceConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >.
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge().