Chaste
Release::3.4
|
#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 |
bool | UseAbsoluteStimulus |
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 238 of file AbstractConvergenceTester.hpp.
|
pure virtual |
Implemented in SpaceConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, OdePdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, PdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, and OdeConvergenceTester< 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 246 of file AbstractConvergenceTester.hpp.
References AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Abscissa(), AbstractUntemplatedConvergenceTester::AbsoluteStimulus, 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(), Timer::GetElapsedTime(), Exception::GetMessage(), 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, SmallPow(), AbstractUntemplatedConvergenceTester::Stimulus, AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::UpdateConvergenceParameters(), and AbstractUntemplatedConvergenceTester::UseAbsoluteStimulus.
|
inline |
Definition at line 638 of file AbstractConvergenceTester.hpp.
References AbstractUntemplatedConvergenceTester::AbsoluteStimulus, PetscTools::AmMaster(), HeartConfig::GetAbsoluteTolerance(), HeartConfig::GetRelativeTolerance(), HeartConfig::GetUseAbsoluteTolerance(), HeartConfig::Instance(), AbstractUntemplatedConvergenceTester::MeshNum, AbstractUntemplatedConvergenceTester::mMeshWidth, AbstractUntemplatedConvergenceTester::OdeTimeStep, AbstractUntemplatedConvergenceTester::PdeTimeStep, SmallPow(), AbstractUntemplatedConvergenceTester::Stimulus, and AbstractUntemplatedConvergenceTester::UseAbsoluteStimulus.
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge().
|
pure virtual |
Implemented in SpaceConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, PdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, OdePdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, and OdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >.
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge().
|
inline |
Definition at line 720 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 710 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 SpaceConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, PdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, OdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, and OdePdeConvergenceTester< 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 728 of file AbstractConvergenceTester.hpp.
References AbstractUntemplatedConvergenceTester::mMeshWidth.
|
pure virtual |
Update the parameter which is being varied
Implemented in SpaceConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, PdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, OdePdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >, and OdeConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >.
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge().