AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM > Class Template Reference

#include <AbstractConvergenceTester.hpp>

Inheritance diagram for AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >:

Inheritance graph
[legend]
Collaboration diagram for AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >:

Collaboration graph
[legend]

List of all members.

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 > &times)
bool IsConverged ()
void SetMeshWidth (double meshWidth)


Detailed Description

template<class CELL, class CARDIAC_PROBLEM, unsigned DIM, unsigned PROBLEM_DIM>
class AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >

AbstractConvergenceTester Run convergence for a particular cell type, mono/bidomain and dimension

Definition at line 229 of file AbstractConvergenceTester.hpp.


Member Function Documentation

template<class CELL, class CARDIAC_PROBLEM, unsigned DIM, unsigned PROBLEM_DIM>
void AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge ( std::string  nameOfTest  )  [inline, virtual]

Todo:
This is a scarily long method; could do with some parts extracted?
Parameters:
nameOfTest The name of the convergence test (typically the name in the suite) for use in naming files.

Todo:
consider reducing all stimuli to match this one.

Implements AbstractUntemplatedConvergenceTester.

Definition at line 236 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(), AbstractUntemplatedConvergenceTester::FixedResult, Exception::GetMessage(), CuboidMeshConstructor< ELEMENT_DIM, SPACE_DIM >::GetNumElements(), OutputFileHandler::GetOutputDirectoryFullPath(), 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, MPIABORTIFNON0, AbstractUntemplatedConvergenceTester::NeumannStimulus, NEVER_REACHED, AbstractUntemplatedConvergenceTester::OdeTimeStep, OutputFileHandler::OpenOutputFile(), AbstractUntemplatedConvergenceTester::PdeTimeStep, AbstractUntemplatedConvergenceTester::PopulatedResult, AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::PopulateStandardResult(), AbstractUntemplatedConvergenceTester::RelativeConvergenceCriterion, AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::SetInitialConvergenceParameters(), HeartConfig::SetOdePdeAndPrintingTimeSteps(), HeartConfig::SetOutputDirectory(), HeartConfig::SetOutputFilenamePrefix(), HeartConfig::SetSimulationDuration(), AbstractUntemplatedConvergenceTester::SimulateFullActionPotential, AbstractUntemplatedConvergenceTester::Stimulus, AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::UpdateConvergenceParameters(), and AbstractUntemplatedConvergenceTester::UseAbsoluteStimulus.

template<class CELL, class CARDIAC_PROBLEM, unsigned DIM, unsigned PROBLEM_DIM>
void AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::DisplayRun (  )  [inline]

template<class CELL, class CARDIAC_PROBLEM, unsigned DIM, unsigned PROBLEM_DIM>
virtual void AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::SetInitialConvergenceParameters (  )  [pure virtual]

template<class CELL, class CARDIAC_PROBLEM, unsigned DIM, unsigned PROBLEM_DIM>
virtual void AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::UpdateConvergenceParameters (  )  [pure virtual]

template<class CELL, class CARDIAC_PROBLEM, unsigned DIM, unsigned PROBLEM_DIM>
virtual bool AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::GiveUpConvergence (  )  [pure virtual]

template<class CELL, class CARDIAC_PROBLEM, unsigned DIM, unsigned PROBLEM_DIM>
virtual double AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Abscissa (  )  [pure virtual]

template<class CELL, class CARDIAC_PROBLEM, unsigned DIM, unsigned PROBLEM_DIM>
virtual void AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::PopulateStandardResult ( std::vector< double > &  result,
std::vector< double > &  times 
) [inline, virtual]

This is currently used as stub for convergence testers which need to converge to a known standardised result (the StimulusConvergence tester in projects/jmpf).

Parameters:
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 677 of file AbstractConvergenceTester.hpp.

References AbstractUntemplatedConvergenceTester::PopulatedResult.

Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge().

template<class CELL, class CARDIAC_PROBLEM, unsigned DIM, unsigned PROBLEM_DIM>
bool AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::IsConverged (  )  [inline]

Returns:
when the convergence criterion is met

Definition at line 687 of file AbstractConvergenceTester.hpp.

References AbstractUntemplatedConvergenceTester::Converged.

template<class CELL, class CARDIAC_PROBLEM, unsigned DIM, unsigned PROBLEM_DIM>
void AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::SetMeshWidth ( double  meshWidth  )  [inline]

Parameters:
meshWidth set the dimension of the cuboid mesh (default value is 0.2cm)

Definition at line 695 of file AbstractConvergenceTester.hpp.

References AbstractUntemplatedConvergenceTester::mMeshWidth.


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

Generated on Mon Apr 18 11:35:55 2011 for Chaste by  doxygen 1.5.5