#include <HeartConfig.hpp>
Public Types | |
typedef std::map< std::string, std::string > | SchemaLocationsMap |
Public Member Functions | |
void | SetUseFixedSchemaLocation (bool useFixedSchemaLocation) |
void | SetFixedSchemaLocations (const SchemaLocationsMap &rSchemaLocations) |
void | SetDefaultsFile (const std::string &rFileName) |
void | SetParametersFile (const std::string &rFileName) |
void | Write (bool useArchiveLocationInfo=false, std::string subfolderName="output") |
void | CopySchema (const std::string &rToDirectory) |
boost::shared_ptr < cp::chaste_parameters_type > | ReadFile (const std::string &rFileName) |
~HeartConfig () | |
unsigned | GetVersionFromNamespace (const std::string &rNamespaceUri) |
bool | IsSimulationDefined () const |
bool | IsSimulationResumed () const |
unsigned | GetSpaceDimension () const |
double | GetSimulationDuration () const |
cp::domain_type | GetDomain () const |
cp::ionic_model_selection_type | GetDefaultIonicModel () const |
template<unsigned DIM> | |
void | GetIonicModelRegions (std::vector< boost::shared_ptr< AbstractChasteRegion< DIM > > > &rDefinedRegions, std::vector< cp::ionic_model_selection_type > &rIonicModels) const |
void | SetIonicModelRegions (std::vector< ChasteCuboid< 3 > > &rDefinedRegions, std::vector< cp::ionic_model_selection_type > &rIonicModels) const |
bool | IsMeshProvided () const |
bool | GetCreateMesh () const |
bool | GetCreateSlab () const |
bool | GetCreateSheet () const |
bool | GetCreateFibre () const |
bool | GetLoadMesh () const |
void | GetSlabDimensions (c_vector< double, 3 > &slabDimensions) const |
void | GetSheetDimensions (c_vector< double, 2 > &sheetDimensions) const |
void | GetFibreLength (c_vector< double, 1 > &fibreLength) const |
double | GetInterNodeSpace () const |
std::string | GetMeshName () const |
cp::media_type | GetConductivityMedia () const |
template<unsigned DIM> | |
void | GetStimuli (std::vector< boost::shared_ptr< AbstractStimulusFunction > > &rStimuliApplied, std::vector< boost::shared_ptr< AbstractChasteRegion< DIM > > > &rStimulatedAreas) const |
template<unsigned DIM> | |
void | GetCellHeterogeneities (std::vector< boost::shared_ptr< AbstractChasteRegion< DIM > > > &rCellHeterogeneityRegions, std::vector< double > &rScaleFactorGks, std::vector< double > &rScaleFactorIto, std::vector< double > &rScaleFactorGkr, std::vector< std::map< std::string, double > > *pParameterSettings) |
bool | GetConductivityHeterogeneitiesProvided () const |
bool | AreCellularTransmuralHeterogeneitiesRequested () |
double | GetEpiLayerFraction () |
double | GetEndoLayerFraction () |
double | GetMidLayerFraction () |
unsigned | GetEpiLayerIndex () |
unsigned | GetEndoLayerIndex () |
unsigned | GetMidLayerIndex () |
template<unsigned DIM> | |
void | GetConductivityHeterogeneities (std::vector< boost::shared_ptr< AbstractChasteRegion< DIM > > > &conductivitiesHeterogeneityAreas, std::vector< c_vector< double, 3 > > &intraConductivities, std::vector< c_vector< double, 3 > > &extraConductivities) const |
std::string | GetOutputDirectory () const |
std::string | GetOutputFilenamePrefix () const |
bool | GetOutputVariablesProvided () const |
void | GetOutputVariables (std::vector< std::string > &rOutputVariables) const |
bool | GetOutputUsingOriginalNodeOrdering () |
bool | GetCheckpointSimulation () const |
double | GetCheckpointTimestep () const |
unsigned | GetMaxCheckpointsOnDisk () const |
HeartFileFinder | GetArchivedSimulationDir () const |
void | GetIntracellularConductivities (c_vector< double, 3 > &intraConductivities) const |
void | GetIntracellularConductivities (c_vector< double, 2 > &intraConductivities) const |
void | GetIntracellularConductivities (c_vector< double, 1 > &intraConductivities) const |
void | GetExtracellularConductivities (c_vector< double, 3 > &extraConductivities) const |
void | GetExtracellularConductivities (c_vector< double, 2 > &extraConductivities) const |
void | GetExtracellularConductivities (c_vector< double, 1 > &extraConductivities) const |
double | GetBathConductivity (unsigned bathRegion=UINT_MAX) const |
const std::set< unsigned > & | rGetTissueIdentifiers () |
const std::set< unsigned > & | rGetBathIdentifiers () |
double | GetSurfaceAreaToVolumeRatio () const |
double | GetCapacitance () const |
double | GetOdeTimeStep () const |
double | GetPdeTimeStep () const |
double | GetPrintingTimeStep () const |
bool | GetUseAbsoluteTolerance () const |
double | GetAbsoluteTolerance () const |
bool | GetUseRelativeTolerance () const |
double | GetRelativeTolerance () const |
const char * | GetKSPSolver () const |
const char * | GetKSPPreconditioner () const |
DistributedTetrahedralMeshPartitionType::type | GetMeshPartitioning () const |
bool | IsAdaptivityParametersPresent () const |
double | GetTargetErrorForAdaptivity () const |
double | GetSigmaForAdaptivity () const |
double | GetMaxEdgeLengthForAdaptivity () const |
double | GetMinEdgeLengthForAdaptivity () const |
double | GetGradationForAdaptivity () const |
unsigned | GetMaxNodesForAdaptivity () const |
unsigned | GetNumberOfAdaptiveSweeps () const |
bool | IsPostProcessingSectionPresent () const |
void | EnsurePostProcessingSectionPresent () |
bool | IsPostProcessingRequested () const |
bool | IsApdMapsRequested () const |
void | GetApdMaps (std::vector< std::pair< double, double > > &rApdMaps) const |
bool | IsUpstrokeTimeMapsRequested () const |
void | GetUpstrokeTimeMaps (std::vector< double > &rUpstrokeTimeMaps) const |
bool | IsMaxUpstrokeVelocityMapRequested () const |
void | GetMaxUpstrokeVelocityMaps (std::vector< double > &rUpstrokeVelocityMaps) const |
bool | IsConductionVelocityMapsRequested () const |
void | GetConductionVelocityMaps (std::vector< unsigned > &rConductionVelocityMaps) const |
bool | IsAnyNodalTimeTraceRequested () const |
void | GetNodalTimeTraceRequested (std::vector< unsigned > &rRequestedNodes) const |
bool | IsPseudoEcgCalculationRequested () const |
template<unsigned SPACE_DIM> | |
void | GetPseudoEcgElectrodePositions (std::vector< ChastePoint< SPACE_DIM > > &rPseudoEcgElectrodePositions) const |
bool | GetUseStateVariableInterpolation () const |
bool | IsOutputVisualizerPresent () const |
bool | GetVisualizeWithMeshalyzer () const |
bool | GetVisualizeWithCmgui () const |
bool | GetVisualizeWithVtk () const |
bool | GetVisualizeWithParallelVtk () const |
bool | IsElectrodesPresent () const |
void | GetElectrodeParameters (bool &rGroundSecondElectrode, unsigned &rIndex, double &rMagnitude, double &rStartTime, double &rDuration) |
bool | GetUseMassLumping () |
bool | GetUseMassLumpingForPrecond () |
bool | GetUseReactionDiffusionOperatorSplitting () |
bool | GetUseFixedNumberIterationsLinearSolver () |
unsigned | GetEvaluateNumItsEveryNSolves () |
void | SetSpaceDimension (unsigned spaceDimension) |
void | SetSimulationDuration (double simulationDuration) |
void | SetDomain (const cp::domain_type &rDomain) |
void | SetDefaultIonicModel (const cp::ionic_models_available_type &rIonicModel) |
void | SetSlabDimensions (double x, double y, double z, double inter_node_space) |
void | SetSheetDimensions (double x, double y, double inter_node_space) |
void | SetFibreLength (double x, double inter_node_space) |
void | SetMeshFileName (std::string meshPrefix, cp::media_type fibreDefinition=cp::media_type::NoFibreOrientation) |
void | SetConductivityHeterogeneities (std::vector< ChasteCuboid< 3 > > &rConductivityAreas, std::vector< c_vector< double, 3 > > &rIntraConductivities, std::vector< c_vector< double, 3 > > &rExtraConductivities) |
void | SetConductivityHeterogeneitiesEllipsoid (std::vector< ChasteEllipsoid< 3 > > &conductivityAreas, std::vector< c_vector< double, 3 > > &intraConductivities, std::vector< c_vector< double, 3 > > &extraConductivities) |
void | SetOutputDirectory (const std::string &rOutputDirectory) |
void | SetOutputFilenamePrefix (const std::string &rOutputFilenamePrefix) |
void | SetOutputVariables (const std::vector< std::string > &rOutputVariables) |
void | SetOutputUsingOriginalNodeOrdering (bool useOriginal) |
void | SetCheckpointSimulation (bool checkpointSimulation, double checkpointTimestep=-1.0, unsigned maxCheckpointsOnDisk=UINT_MAX) |
void | SetIntracellularConductivities (const c_vector< double, 3 > &rIntraConductivities) |
void | SetIntracellularConductivities (const c_vector< double, 2 > &rIntraConductivities) |
void | SetIntracellularConductivities (const c_vector< double, 1 > &rIntraConductivities) |
void | SetExtracellularConductivities (const c_vector< double, 3 > &rExtraConductivities) |
void | SetExtracellularConductivities (const c_vector< double, 2 > &rExtraConductivities) |
void | SetExtracellularConductivities (const c_vector< double, 1 > &rExtraConductivities) |
void | SetBathConductivity (double bathConductivity) |
void | SetBathMultipleConductivities (std::map< unsigned, double > bathConductivities) |
void | SetTissueAndBathIdentifiers (const std::set< unsigned > &tissueIds, const std::set< unsigned > &bathIds) |
void | SetSurfaceAreaToVolumeRatio (double ratio) |
void | SetCapacitance (double capacitance) |
void | SetOdePdeAndPrintingTimeSteps (double odeTimeStep, double pdeTimeStep, double printingTimeStep) |
void | SetOdeTimeStep (double odeTimeStep) |
void | SetPdeTimeStep (double pdeTimeStep) |
void | SetPrintingTimeStep (double printingTimeStep) |
void | SetUseRelativeTolerance (double relativeTolerance) |
void | SetUseAbsoluteTolerance (double absoluteTolerance) |
void | SetKSPSolver (const char *kspSolver) |
void | SetKSPPreconditioner (const char *kspPreconditioner) |
void | SetMeshPartitioning (const char *meshPartioningMethod) |
void | SetAdaptivityParameters (double targetError, double sigma, double maxEdgeLength, double minEdgeLength, double gradation, unsigned maxNodes, unsigned numSweeps) |
void | SetTargetErrorForAdaptivity (double targetError) |
void | SetSigmaForAdaptivity (double sigma) |
void | SetMaxEdgeLengthForAdaptivity (double maxEdgeLength) |
void | SetMinEdgeLengthForAdaptivity (double minEdgeLength) |
void | SetGradationForAdaptivity (double gradation) |
void | SetMaxNodesForAdaptivity (unsigned maxNodes) |
void | SetNumberOfAdaptiveSweeps (unsigned numSweeps) |
void | SetApdMaps (const std::vector< std::pair< double, double > > &rApdMaps) |
void | SetUpstrokeTimeMaps (std::vector< double > &rUpstrokeTimeMaps) |
void | SetMaxUpstrokeVelocityMaps (std::vector< double > &rMaxUpstrokeVelocityMaps) |
void | SetConductionVelocityMaps (std::vector< unsigned > &rConductionVelocityMaps) |
void | SetRequestedNodalTimeTraces (std::vector< unsigned > &requestedNodes) |
template<unsigned SPACE_DIM> | |
void | SetPseudoEcgElectrodePositions (const std::vector< ChastePoint< SPACE_DIM > > &rPseudoEcgElectrodePositions) |
void | EnsureOutputVisualizerExists (void) |
void | SetVisualizeWithMeshalyzer (bool useMeshalyzer=true) |
void | SetVisualizeWithCmgui (bool useCmgui=true) |
void | SetVisualizeWithVtk (bool useVtk=true) |
void | SetVisualizeWithParallelVtk (bool useParallelVtk=true) |
void | SetElectrodeParameters (bool groundSecondElectrode, unsigned index, double magnitude, double startTime, double duration) |
void | SetUseStateVariableInterpolation (bool useStateVariableInterpolation=true) |
void | SetUseMassLumping (bool useMassLumping=true) |
void | SetUseMassLumpingForPrecond (bool useMassLumping=true) |
void | SetUseReactionDiffusionOperatorSplitting (bool useOperatorSplitting=true) |
void | SetUseFixedNumberIterationsLinearSolver (bool useFixedNumberIterations=true, unsigned evaluateNumItsEveryNSolves=UINT_MAX) |
bool | HasDrugDose () const |
double | GetDrugDose () const |
void | SetDrugDose (double drugDose) |
void | SetIc50Value (const std::string &rCurrentName, double ic50, double hill=1.0) |
std::map< std::string, std::pair< double, double > > | GetIc50Values () |
Static Public Member Functions | |
static HeartConfig * | Instance () |
static void | Reset () |
Private Member Functions | |
void | CheckTimeSteps () const |
template<class Archive> | |
void | save (Archive &archive, const unsigned int version) const |
template<class Archive> | |
void | load (Archive &archive, const unsigned int version) |
void | UpdateParametersFromResumeSimulation (boost::shared_ptr< cp::chaste_parameters_type > pResumeParameters) |
void | SetDefaultSchemaLocations () |
HeartConfig () | |
template<class TYPE> | |
TYPE * | DecideLocation (TYPE *params_ptr, TYPE *defaults_ptr, const std::string &rNameParameter) const |
void | CheckSimulationIsDefined (std::string callingMethod="") const |
void | CheckResumeSimulationIsDefined (std::string callingMethod="") const |
Private Attributes | |
SchemaLocationsMap | mSchemaLocations |
boost::shared_ptr < cp::chaste_parameters_type > | mpUserParameters |
boost::shared_ptr < cp::chaste_parameters_type > | mpDefaultParameters |
bool | mUseFixedSchemaLocation |
double | mEpiFraction |
double | mEndoFraction |
double | mMidFraction |
unsigned | mIndexMid |
unsigned | mIndexEpi |
unsigned | mIndexEndo |
bool | mUserAskedForCellularTransmuralHeterogeneities |
bool | mUseMassLumping |
bool | mUseMassLumpingForPrecond |
bool | mUseReactionDiffusionOperatorSplitting |
std::map< unsigned, double > | mBathConductivities |
std::set< unsigned > | mTissueIdentifiers |
std::set< unsigned > | mBathIdentifiers |
bool | mUseFixedNumberIterations |
unsigned | mEvaluateNumItsEveryNSolves |
Static Private Attributes | |
static std::auto_ptr< HeartConfig > | mpInstance |
Friends | |
class | boost::serialization::access |
class | TestHeartConfig |
This class wraps the settings from the XML configuration file in a more friendly interface, providing methods to read and write all the settings, and round-trip them to/from XML format. It also deals with the complexities of supporting multiple versions of CodeSynthesis XSD.
chaste_parameters_type is a convenience class created by CodeSynthesis XSD
Definition at line 74 of file HeartConfig.hpp.
typedef std::map<std::string, std::string> HeartConfig::SchemaLocationsMap |
Our type for specifying schema location properties: a map from namespace URI to schema URI. The default namespace is specified by an empty namespace URI.
Definition at line 162 of file HeartConfig.hpp.
HeartConfig::~HeartConfig | ( | ) |
Destructor
Definition at line 206 of file HeartConfig.cpp.
HeartConfig::HeartConfig | ( | ) | [private] |
Definition at line 173 of file HeartConfig.cpp.
References CreateDefaultParameters(), mBathIdentifiers, mEndoFraction, mEpiFraction, mIndexEndo, mIndexEpi, mIndexMid, mMidFraction, mpDefaultParameters, mpInstance, mpUserParameters, mTissueIdentifiers, mUseFixedSchemaLocation, mUserAskedForCellularTransmuralHeterogeneities, mUseReactionDiffusionOperatorSplitting, and SetDefaultSchemaLocations().
void HeartConfig::CheckTimeSteps | ( | ) | const [private] |
Throws if the time steps don't obey constraints (within machine precision) ode_step > 0.0 pde_step = n1 * ode_step (where n1 is a positive integer) printing_step = n2 * pde_step (where n2 is a positive integer)
Definition at line 2594 of file HeartConfig.cpp.
References EXCEPTION, GetCheckpointSimulation(), GetCheckpointTimestep(), GetOdeTimeStep(), GetPdeTimeStep(), and GetPrintingTimeStep().
Referenced by SetCheckpointSimulation(), SetDefaultsFile(), SetOdePdeAndPrintingTimeSteps(), and SetParametersFile().
void HeartConfig::save | ( | Archive & | archive, | |
const unsigned int | version | |||
) | const [inline, private] |
Archive the object.
archive | ||
version |
Definition at line 94 of file HeartConfig.hpp.
References PetscTools::AmMaster(), PetscTools::Barrier(), and mpInstance.
void HeartConfig::load | ( | Archive & | archive, | |
const unsigned int | version | |||
) | [inline, private] |
Un-archive the object.
archive | ||
version |
Definition at line 111 of file HeartConfig.hpp.
References ArchiveLocationInfo::GetArchiveDirectory(), Instance(), mpUserParameters, SetCheckpointSimulation(), SetDefaultsFile(), SetParametersFile(), and UpdateParametersFromResumeSimulation().
void HeartConfig::UpdateParametersFromResumeSimulation | ( | boost::shared_ptr< cp::chaste_parameters_type > | pResumeParameters | ) | [private] |
When loading a simulation from archive, some parameters can get overridden by the content of the ResumeSimulation element. This method does that.
pResumeParameters | the parameters containing the ResumeSimulation element. |
Definition at line 438 of file HeartConfig.cpp.
References EnsurePostProcessingSectionPresent(), EXCEPTION, GetDomain(), GetSpaceDimension(), Instance(), mpUserParameters, SetCheckpointSimulation(), SetSimulationDuration(), SetVisualizeWithCmgui(), SetVisualizeWithMeshalyzer(), SetVisualizeWithParallelVtk(), and SetVisualizeWithVtk().
Referenced by load().
void HeartConfig::SetDefaultSchemaLocations | ( | ) | [private] |
Set default schema locations in the Chaste source tree.
Definition at line 302 of file HeartConfig.cpp.
References ChasteBuildInfo::GetRootDir(), and mSchemaLocations.
Referenced by HeartConfig().
HeartConfig * HeartConfig::Instance | ( | ) | [static] |
Call this method to access the global parameters holder.
Definition at line 164 of file HeartConfig.cpp.
References mpInstance.
Referenced by AbstractBidomainSolver< ELEMENT_DIM, SPACE_DIM >::AbstractBidomainSolver(), AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::AbstractCardiacTissue(), AbstractHdf5Converter< ELEMENT_DIM, SPACE_DIM >::AbstractHdf5Converter(), AdaptiveTetrahedralMesh::Adapt(), AdaptiveBidomainProblem::AdaptMesh(), BasicBidomainSolver< ELEMENT_DIM, SPACE_DIM >::BasicBidomainSolver(), BasicMonodomainSolver< ELEMENT_DIM, SPACE_DIM >::BasicMonodomainSolver(), BidomainAssembler< ELEMENT_DIM, SPACE_DIM >::BidomainAssembler(), BidomainCorrectionTermAssembler< ELEM_DIM, SPACE_DIM >::BidomainCorrectionTermAssembler(), AdaptiveTetrahedralMesh::CalculateErrorMetric(), CardiacElectroMechanicsProblem< DIM >::CardiacElectroMechanicsProblem(), CardiacSimulation::CardiacSimulation(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CloseFilesAndPostProcess(), AbstractCvodeCell::Compute(), BidomainWithBathAssembler< ELEMENT_DIM, SPACE_DIM >::ComputeMatrixTerm(), AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge(), CardiacSimulation::CreateAndRun(), MonodomainProblem< ELEMENT_DIM, SPACE_DIM >::CreateCardiacTissue(), BidomainProblem< DIM >::CreateCardiacTissue(), HeartConfigRelatedCellFactory< SPACE_DIM >::CreateCellWithIntracellularStimulus(), BidomainTissue< SPACE_DIM >::CreateExtracellularConductivityTensors(), AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::CreateIntracellularConductivityTensor(), CardiacSimulation::CreateResumeXmlFile(), MonodomainProblem< ELEMENT_DIM, SPACE_DIM >::CreateSolver(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::DefineExtraVariablesWriterColumns(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::DefineWriterColumns(), AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::DisplayRun(), Electrodes< DIM >::Electrodes(), HeartConfigRelatedCellFactory< SPACE_DIM >::FillInCellularTransmuralAreas(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::GetDataReader(), AdaptiveBidomainProblem::GetGradation(), CML_noble_varghese_kohl_noble_1998_basic_with_sac::GetIIonic(), AbstractCardiacCellInterface::GetIntracellularAreaStimulus(), AdaptiveBidomainProblem::GetMaxEdgeLength(), AdaptiveBidomainProblem::GetMaxMeshNodes(), AdaptiveBidomainProblem::GetMinEdgeLength(), AdaptiveBidomainProblem::GetNumAdaptSweeps(), AdaptiveBidomainProblem::GetSigma(), AdaptiveBidomainProblem::GetTargetError(), HeartRegionCode::GetValidBathId(), HeartRegionCode::GetValidTissueId(), Hdf5ToCmguiConverter< ELEMENT_DIM, SPACE_DIM >::Hdf5ToCmguiConverter(), Hdf5ToMeshalyzerConverter< ELEMENT_DIM, SPACE_DIM >::Hdf5ToMeshalyzerConverter(), Hdf5ToVtkConverter< ELEMENT_DIM, SPACE_DIM >::Hdf5ToVtkConverter(), HeartConfigRelatedCellFactory< SPACE_DIM >::HeartConfigRelatedCellFactory(), CardiacElectroMechanicsProblem< DIM >::Initialise(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise(), OperatorSplittingMonodomainSolver< ELEMENT_DIM, SPACE_DIM >::InitialiseForSolve(), AbstractMonodomainSolver< ELEMENT_DIM, SPACE_DIM >::InitialiseForSolve(), AbstractBidomainSolver< ELEMENT_DIM, SPACE_DIM >::InitialiseForSolve(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::InitialiseWriter(), HeartRegionCode::IsRegionBath(), HeartRegionCode::IsRegionTissue(), load(), MatrixBasedBidomainSolver< ELEMENT_DIM, SPACE_DIM >::MatrixBasedBidomainSolver(), MatrixBasedMonodomainSolver< ELEMENT_DIM, SPACE_DIM >::MatrixBasedMonodomainSolver(), MonodomainAssembler< ELEMENT_DIM, SPACE_DIM >::MonodomainAssembler(), MonodomainCorrectionTermAssembler< ELEM_DIM, SPACE_DIM >::MonodomainCorrectionTermAssembler(), BidomainProblem< DIM >::OnEndOfTimestep(), BidomainProblem< DIM >::PreSolveChecks(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::PreSolveChecks(), CardiacSimulation::ReadParametersFromFile(), CardiacSimulation::Run(), AbstractCardiacTissue< SPACE_DIM >::save(), AbstractCardiacProblem< ELEMENT_DIM, ELEMENT_DIM, 1 >::save(), HeartConfigRelatedCellFactory< SPACE_DIM >::SetCellParameters(), BidomainProblem< DIM >::SetElectrodes(), AdaptiveBidomainProblem::SetNeumannStimulusMagnitudeAndDuration(), OperatorSplittingMonodomainSolver< ELEMENT_DIM, SPACE_DIM >::SetupLinearSystem(), MatrixBasedMonodomainSolver< ELEMENT_DIM, SPACE_DIM >::SetupLinearSystem(), MatrixBasedBidomainSolver< ELEMENT_DIM, SPACE_DIM >::SetupLinearSystem(), CardiacElectroMechanicsProblem< DIM >::Solve(), AdaptiveBidomainProblem::Solve(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve(), AbstractCvodeCell::SolveAndUpdateState(), UpdateParametersFromResumeSimulation(), VoltageInterpolaterOntoMechanicsMesh< DIM >::VoltageInterpolaterOntoMechanicsMesh(), Hdf5ToCmguiConverter< ELEMENT_DIM, SPACE_DIM >::WriteCmguiScript(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::WriteExtraVariablesOneStep(), PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WriteGenericFile(), PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WritePostProcessingFiles(), PseudoEcgCalculator< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::WritePseudoEcg(), and PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WriteVariablesOverTimeAtNodes().
void HeartConfig::SetUseFixedSchemaLocation | ( | bool | useFixedSchemaLocation | ) |
useFixedSchemaLocation | whether to read the schema location from the XML file (false) or use the schema located at heart/src/io/ChasteParameters.xsd in the Chaste source tree (or specified with SetFixedSchemaLocations()) (true). |
Definition at line 356 of file HeartConfig.cpp.
References mUseFixedSchemaLocation.
Referenced by CardiacSimulation::ReadParametersFromFile(), and SetFixedSchemaLocations().
void HeartConfig::SetFixedSchemaLocations | ( | const SchemaLocationsMap & | rSchemaLocations | ) |
Set the schema files to use. Also calls SetUseFixedSchemaLocation(true).
rSchemaLocations | map from namespace URI to schema URI |
Definition at line 350 of file HeartConfig.cpp.
References mSchemaLocations, and SetUseFixedSchemaLocation().
void HeartConfig::SetDefaultsFile | ( | const std::string & | rFileName | ) |
Allows users to override the built-in defaults.
rFileName | The name of the defaults file |
Definition at line 210 of file HeartConfig.cpp.
References CheckTimeSteps(), mpDefaultParameters, mpUserParameters, and ReadFile().
Referenced by load().
void HeartConfig::SetParametersFile | ( | const std::string & | rFileName | ) |
mpUserParameters is set to a new context associated with a parameters file
rFileName | The name of the parameters file |
Definition at line 430 of file HeartConfig.cpp.
References CheckTimeSteps(), mpUserParameters, and ReadFile().
Referenced by load(), and CardiacSimulation::ReadParametersFromFile().
void HeartConfig::Write | ( | bool | useArchiveLocationInfo = false , |
|
std::string | subfolderName = "output" | |||
) |
Write out the complete configuration set (ChasteParameters and ChasteDefaults) as an XML file. Note that the location of ChasteParameters.xsd (schema definition) will be hard-coded in the XML file.
useArchiveLocationInfo | if false, then use self's GetOutputDirectory() and open in *named* subfolder if true, then use ArchiveLocationInfo | |
subfolderName | -- where to store with respect to GetOutputDirectory() |
Definition at line 223 of file HeartConfig.cpp.
References PetscTools::AmMaster(), CopySchema(), EXCEPTION, ArchiveLocationInfo::GetArchiveDirectory(), GetOutputDirectory(), OutputFileHandler::GetOutputDirectoryFullPath(), mpDefaultParameters, and mpUserParameters.
Referenced by AbstractHdf5Converter< ELEMENT_DIM, SPACE_DIM >::AbstractHdf5Converter().
void HeartConfig::CopySchema | ( | const std::string & | rToDirectory | ) |
Try to copy the latest version of the schema to the given directory. If we can't find the latest version of the schema, generate a warning.
rToDirectory | directory to copy to |
Definition at line 276 of file HeartConfig.cpp.
References PetscTools::AmMaster(), RelativeTo::ChasteSourceRoot, RelativeTo::CWD, FileFinder::Exists(), FileFinder::GetAbsolutePath(), MPIABORTIFNON0, and FileFinder::SetPath().
Referenced by CardiacSimulation::CreateResumeXmlFile(), and Write().
boost::shared_ptr< cp::chaste_parameters_type > HeartConfig::ReadFile | ( | const std::string & | rFileName | ) |
Utility method to parse an XML parameters file.
rFileName | Name of XML file |
Definition at line 361 of file HeartConfig.cpp.
References XmlTransforms::CheckForIluPreconditioner(), XmlTools::EscapeSpaces(), EXCEPTION, GetVersionFromNamespace(), mpDefaultParameters, mpUserParameters, mSchemaLocations, mUseFixedSchemaLocation, XmlTools::ReadXmlFile(), XmlTools::SetNamespace(), XmlTransforms::TransformArchiveDirectory(), and XmlTransforms::TransformIonicModelDefinitions().
Referenced by SetDefaultsFile(), and SetParametersFile().
void HeartConfig::Reset | ( | ) | [static] |
Throw away the current instance by resetting auto_ptr mpInstance to NULL. "New" another mpInstance
Definition at line 547 of file HeartConfig.cpp.
References mpInstance.
Referenced by CardiacSimulation::ReadParametersFromFile(), and CardiacElectroMechanicsProblem< DIM >::Solve().
unsigned HeartConfig::GetVersionFromNamespace | ( | const std::string & | rNamespaceUri | ) |
Get the Chaste version of a parameters file, given its namespace URI. The version will be encoded as major*1000+minor.
rNamespaceUri | the namespace URI of the parameters file |
Definition at line 316 of file HeartConfig.cpp.
References EXCEPTION.
Referenced by ReadFile().
bool HeartConfig::IsSimulationDefined | ( | ) | const |
Returns whether the configuration file defines a new simulation.
Definition at line 555 of file HeartConfig.cpp.
References mpUserParameters.
Referenced by CheckResumeSimulationIsDefined(), GetCheckpointSimulation(), GetCheckpointTimestep(), GetDomain(), GetMaxCheckpointsOnDisk(), GetSimulationDuration(), and GetSpaceDimension().
bool HeartConfig::IsSimulationResumed | ( | ) | const |
Returns whether the configuration file resumes an archived simulation.
Definition at line 560 of file HeartConfig.cpp.
References mpUserParameters.
Referenced by CheckSimulationIsDefined().
unsigned HeartConfig::GetSpaceDimension | ( | ) | const |
Definition at line 597 of file HeartConfig.cpp.
References DecideLocation(), IsSimulationDefined(), mpDefaultParameters, and mpUserParameters.
Referenced by CardiacSimulation::CreateResumeXmlFile(), GetFibreLength(), GetInterNodeSpace(), GetSheetDimensions(), GetSlabDimensions(), and UpdateParametersFromResumeSimulation().
double HeartConfig::GetSimulationDuration | ( | ) | const |
Definition at line 611 of file HeartConfig.cpp.
References DecideLocation(), IsSimulationDefined(), mpDefaultParameters, and mpUserParameters.
Referenced by CardiacSimulation::CreateAndRun(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::PreSolveChecks().
cp::domain_type HeartConfig::GetDomain | ( | ) | const |
cp::domain_type is an xsd convenience class type
Definition at line 625 of file HeartConfig.cpp.
References DecideLocation(), IsSimulationDefined(), mpDefaultParameters, and mpUserParameters.
Referenced by CardiacSimulation::CreateResumeXmlFile(), and UpdateParametersFromResumeSimulation().
cp::ionic_model_selection_type HeartConfig::GetDefaultIonicModel | ( | ) | const |
Default cardiac cell model to use at all mesh nodes (unless otherwise specified by GetIonicModelRegions). cp::ionic_model_selection_type is generated automatically from the XML Schema.
Definition at line 639 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), mpDefaultParameters, and mpUserParameters.
void HeartConfig::GetIonicModelRegions | ( | std::vector< boost::shared_ptr< AbstractChasteRegion< DIM > > > & | rDefinedRegions, | |
std::vector< cp::ionic_model_selection_type > & | rIonicModels | |||
) | const [inline] |
Regions where we need to use a different cell model (think infarction). cp::ionic_model_selection_type is generated automatically from the XML Schema.
The supplied vectors are first cleared, then filled in with the information from the parameters files. On return, both vectors will be the same length (one entry per region).
rDefinedRegions | vector of axis-aligned box regions (one per cellular heterogeneity) | |
rIonicModels | vector of models (one per cellular heterogeneity) |
Definition at line 649 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), EXCEPTION, mpDefaultParameters, mpUserParameters, and NEVER_REACHED.
Referenced by HeartConfigRelatedCellFactory< SPACE_DIM >::HeartConfigRelatedCellFactory().
void HeartConfig::SetIonicModelRegions | ( | std::vector< ChasteCuboid< 3 > > & | rDefinedRegions, | |
std::vector< cp::ionic_model_selection_type > & | rIonicModels | |||
) | const |
Set the regions where we need to use a different cell model (think infarction). Unlike the get method, this is currently only supported in 3d. cp::ionic_model_selection_type is generated automatically from the XML Schema.
The input standard vectors must be of the same length (one entry per region) otherwise the method throws.
rDefinedRegions | vector of axis-aligned box regions (one per cellular heterogeneity) | |
rIonicModels | vector of models (one per cellular heterogeneity) |
Definition at line 2265 of file HeartConfig.cpp.
References mpUserParameters.
bool HeartConfig::IsMeshProvided | ( | ) | const |
Definition at line 756 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by BidomainTissue< SPACE_DIM >::CreateExtracellularConductivityTensors(), and AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::CreateIntracellularConductivityTensor().
bool HeartConfig::GetCreateMesh | ( | ) | const |
Definition at line 773 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by GetInterNodeSpace().
bool HeartConfig::GetCreateSlab | ( | ) | const |
Definition at line 784 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by GetSlabDimensions().
bool HeartConfig::GetCreateSheet | ( | ) | const |
Definition at line 795 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by GetSheetDimensions().
bool HeartConfig::GetCreateFibre | ( | ) | const |
Definition at line 806 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by GetFibreLength().
bool HeartConfig::GetLoadMesh | ( | ) | const |
Definition at line 818 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by BidomainTissue< SPACE_DIM >::CreateExtracellularConductivityTensors(), AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::CreateIntracellularConductivityTensor(), GetConductivityMedia(), and GetMeshName().
void HeartConfig::GetSlabDimensions | ( | c_vector< double, 3 > & | slabDimensions | ) | const |
slabDimensions | return vector for the (cuboid) mesh dimensions (cm) |
Definition at line 827 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), EXCEPTION, GetCreateSlab(), GetSpaceDimension(), mpDefaultParameters, and mpUserParameters.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise().
void HeartConfig::GetSheetDimensions | ( | c_vector< double, 2 > & | sheetDimensions | ) | const |
sheetDimensions | return vector for the (cuboid) mesh dimensions (cm) |
Definition at line 845 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), EXCEPTION, GetCreateSheet(), GetSpaceDimension(), mpDefaultParameters, and mpUserParameters.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise().
void HeartConfig::GetFibreLength | ( | c_vector< double, 1 > & | fibreLength | ) | const |
fibreLength | return vector for the (cuboid) mesh dimensions (cm) |
Definition at line 862 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), EXCEPTION, GetCreateFibre(), GetSpaceDimension(), mpDefaultParameters, and mpUserParameters.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise().
double HeartConfig::GetInterNodeSpace | ( | ) | const |
Definition at line 878 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), GetCreateMesh(), GetSpaceDimension(), mpDefaultParameters, mpUserParameters, and NEVER_REACHED.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise().
std::string HeartConfig::GetMeshName | ( | ) | const |
Definition at line 908 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), GetLoadMesh(), mpDefaultParameters, and mpUserParameters.
Referenced by AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::AbstractCardiacTissue(), and HeartConfigRelatedCellFactory< SPACE_DIM >::FillInCellularTransmuralAreas().
cp::media_type HeartConfig::GetConductivityMedia | ( | ) | const |
Definition at line 918 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), GetLoadMesh(), mpDefaultParameters, and mpUserParameters.
Referenced by BidomainTissue< SPACE_DIM >::CreateExtracellularConductivityTensors(), and AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::CreateIntracellularConductivityTensor().
void HeartConfig::GetStimuli | ( | std::vector< boost::shared_ptr< AbstractStimulusFunction > > & | rStimuliApplied, | |
std::vector< boost::shared_ptr< AbstractChasteRegion< DIM > > > & | rStimulatedAreas | |||
) | const [inline] |
Return a number of stimulated regions (Axis-aligned boxes)
rStimuliApplied | rStimuliApplied[0] is stimulus for the first region | |
rStimulatedAreas | rStimulatedAreas[0] is the first region to be stimulated |
Definition at line 929 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), EXCEPTION, mpDefaultParameters, mpUserParameters, and NEVER_REACHED.
Referenced by HeartConfigRelatedCellFactory< SPACE_DIM >::HeartConfigRelatedCellFactory().
void HeartConfig::GetCellHeterogeneities | ( | std::vector< boost::shared_ptr< AbstractChasteRegion< DIM > > > & | rCellHeterogeneityRegions, | |
std::vector< double > & | rScaleFactorGks, | |||
std::vector< double > & | rScaleFactorIto, | |||
std::vector< double > & | rScaleFactorGkr, | |||
std::vector< std::map< std::string, double > > * | pParameterSettings | |||
) | [inline] |
Reads from the XML file the cellular hetrogeneities. It fugures out whether the user specified a cuboid or a transmural-type of hetrogeneities. In the latter case, it stores the percentage values of Epi and Endo layers in two member variables, accessible via get methods. It also checks if the user-supplied numbers are consistent (i.e., positive and add up to less than 1) Return a number of heterogeneous regions for special gating variable changes
rCellHeterogeneityRegions | cellHeterogeneityAreas[0] is the first region | |
rScaleFactorGks | scaleFactorGks[0] is a scaling factor for the first region | |
rScaleFactorIto | scaleFactorIto[0] is a scaling factor for the first region | |
rScaleFactorGkr | scaleFactorGkr[0] is a scaling factor for the first region | |
pParameterSettings | specification of named parameters to set on the cell models; each entry is a map from parameter name to value. |
Definition at line 1072 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), EXCEPTION, mEndoFraction, mEpiFraction, mIndexEndo, mIndexEpi, mIndexMid, mMidFraction, mpDefaultParameters, mpUserParameters, and mUserAskedForCellularTransmuralHeterogeneities.
Referenced by HeartConfigRelatedCellFactory< SPACE_DIM >::HeartConfigRelatedCellFactory().
bool HeartConfig::GetConductivityHeterogeneitiesProvided | ( | ) | const |
Definition at line 1251 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by BidomainTissue< SPACE_DIM >::CreateExtracellularConductivityTensors(), and AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::CreateIntracellularConductivityTensor().
bool HeartConfig::AreCellularTransmuralHeterogeneitiesRequested | ( | ) |
Definition at line 1216 of file HeartConfig.cpp.
References mUserAskedForCellularTransmuralHeterogeneities.
double HeartConfig::GetEpiLayerFraction | ( | ) |
Definition at line 1221 of file HeartConfig.cpp.
References mEpiFraction.
Referenced by HeartConfigRelatedCellFactory< SPACE_DIM >::FillInCellularTransmuralAreas().
double HeartConfig::GetEndoLayerFraction | ( | ) |
Definition at line 1226 of file HeartConfig.cpp.
References mEndoFraction.
Referenced by HeartConfigRelatedCellFactory< SPACE_DIM >::FillInCellularTransmuralAreas().
double HeartConfig::GetMidLayerFraction | ( | ) |
Definition at line 1231 of file HeartConfig.cpp.
References mMidFraction.
unsigned HeartConfig::GetEpiLayerIndex | ( | ) |
Definition at line 1236 of file HeartConfig.cpp.
References mIndexEpi.
Referenced by HeartConfigRelatedCellFactory< SPACE_DIM >::FillInCellularTransmuralAreas().
unsigned HeartConfig::GetEndoLayerIndex | ( | ) |
Definition at line 1241 of file HeartConfig.cpp.
References mIndexEndo.
Referenced by HeartConfigRelatedCellFactory< SPACE_DIM >::FillInCellularTransmuralAreas().
unsigned HeartConfig::GetMidLayerIndex | ( | ) |
Definition at line 1246 of file HeartConfig.cpp.
References mIndexMid.
Referenced by HeartConfigRelatedCellFactory< SPACE_DIM >::FillInCellularTransmuralAreas().
void HeartConfig::GetConductivityHeterogeneities | ( | std::vector< boost::shared_ptr< AbstractChasteRegion< DIM > > > & | conductivitiesHeterogeneityAreas, | |
std::vector< c_vector< double, 3 > > & | intraConductivities, | |||
std::vector< c_vector< double, 3 > > & | extraConductivities | |||
) | const [inline] |
Return a number of heterogeneous regions (Axis-aligned boxes)
conductivitiesHeterogeneityAreas | conductivitiesHeterogeneityAreas[0] is the first region | |
intraConductivities | intraConductivities[0] is conductivity vector for the first region | |
extraConductivities | extraConductivities[0] is conductivity vector for the first region |
Definition at line 1268 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), EXCEPTION, GetExtracellularConductivities(), GetIntracellularConductivities(), mpDefaultParameters, and mpUserParameters.
Referenced by BidomainTissue< SPACE_DIM >::CreateExtracellularConductivityTensors(), and AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::CreateIntracellularConductivityTensor().
std::string HeartConfig::GetOutputDirectory | ( | ) | const |
Definition at line 1344 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by CardiacSimulation::CreateAndRun(), Hdf5ToCmguiConverter< ELEMENT_DIM, SPACE_DIM >::Hdf5ToCmguiConverter(), Hdf5ToMeshalyzerConverter< ELEMENT_DIM, SPACE_DIM >::Hdf5ToMeshalyzerConverter(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::InitialiseWriter(), CardiacElectroMechanicsProblem< DIM >::Solve(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Solve(), VoltageInterpolaterOntoMechanicsMesh< DIM >::VoltageInterpolaterOntoMechanicsMesh(), and Write().
std::string HeartConfig::GetOutputFilenamePrefix | ( | ) | const |
Definition at line 1352 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::InitialiseWriter(), AdaptiveBidomainProblem::Solve(), and Hdf5ToCmguiConverter< ELEMENT_DIM, SPACE_DIM >::WriteCmguiScript().
bool HeartConfig::GetOutputVariablesProvided | ( | ) | const |
Definition at line 1360 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), mpDefaultParameters, and mpUserParameters.
void HeartConfig::GetOutputVariables | ( | std::vector< std::string > & | rOutputVariables | ) | const |
Get the extra output variables from the xml file.
rOutputVariables | reference to std::vector to contain the output variables requested. Note: will be cleared before being filled. |
Definition at line 1377 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::DefineExtraVariablesWriterColumns(), and AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::WriteExtraVariablesOneStep().
bool HeartConfig::GetOutputUsingOriginalNodeOrdering | ( | ) |
Definition at line 1396 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WriteVariablesOverTimeAtNodes().
bool HeartConfig::GetCheckpointSimulation | ( | ) | const |
Get whether simulation should be checkpointed or not
Definition at line 1411 of file HeartConfig.cpp.
References CheckResumeSimulationIsDefined(), CheckSimulationIsDefined(), DecideLocation(), IsSimulationDefined(), mpDefaultParameters, and mpUserParameters.
Referenced by CheckTimeSteps(), CardiacSimulation::CreateAndRun(), and HeartConfigRelatedCellFactory< SPACE_DIM >::CreateCellWithIntracellularStimulus().
double HeartConfig::GetCheckpointTimestep | ( | ) | const |
Get checkpointing timestep
Definition at line 1437 of file HeartConfig.cpp.
References CheckResumeSimulationIsDefined(), CheckSimulationIsDefined(), DecideLocation(), IsSimulationDefined(), mpDefaultParameters, and mpUserParameters.
Referenced by CheckTimeSteps(), CardiacSimulation::CreateAndRun(), and CardiacSimulation::CreateResumeXmlFile().
unsigned HeartConfig::GetMaxCheckpointsOnDisk | ( | ) | const |
Get number of checkpoints to keep on disk
Definition at line 1455 of file HeartConfig.cpp.
References CheckResumeSimulationIsDefined(), CheckSimulationIsDefined(), DecideLocation(), IsSimulationDefined(), mpDefaultParameters, and mpUserParameters.
Referenced by CardiacSimulation::CreateResumeXmlFile().
HeartFileFinder HeartConfig::GetArchivedSimulationDir | ( | ) | const |
Get directory where the archived simulation to resume is defined
Definition at line 1474 of file HeartConfig.cpp.
References CheckResumeSimulationIsDefined(), and mpUserParameters.
void HeartConfig::GetIntracellularConductivities | ( | c_vector< double, 3 > & | intraConductivities | ) | const |
3D version
intraConductivities | DIM-vector for returning intracellular conductivities (mS/cm) |
Definition at line 1482 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::CreateIntracellularConductivityTensor(), and GetConductivityHeterogeneities().
void HeartConfig::GetIntracellularConductivities | ( | c_vector< double, 2 > & | intraConductivities | ) | const |
2D version
intraConductivities | DIM-vector for returning intracellular conductivities (mS/cm) |
Definition at line 1500 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
void HeartConfig::GetIntracellularConductivities | ( | c_vector< double, 1 > & | intraConductivities | ) | const |
1D version
intraConductivities | DIM-vector for returning intracellular conductivities (mS/cm) |
Definition at line 1515 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
void HeartConfig::GetExtracellularConductivities | ( | c_vector< double, 3 > & | extraConductivities | ) | const |
3D version
extraConductivities | DIM-vector for returning extracellular conductivities (mS/cm) |
Definition at line 1526 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by BidomainTissue< SPACE_DIM >::CreateExtracellularConductivityTensors(), and GetConductivityHeterogeneities().
void HeartConfig::GetExtracellularConductivities | ( | c_vector< double, 2 > & | extraConductivities | ) | const |
2D version
extraConductivities | DIM-vector for returning extracellular conductivities (mS/cm) |
Definition at line 1544 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
void HeartConfig::GetExtracellularConductivities | ( | c_vector< double, 1 > & | extraConductivities | ) | const |
1D version
extraConductivities | DIM-vector for returning extracellular conductivities (mS/cm) |
Definition at line 1559 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
double HeartConfig::GetBathConductivity | ( | unsigned | bathRegion = UINT_MAX |
) | const |
Returns bath conductivities for different regions of the bath. When called without a region identifier, it will return whatever has been defined as BathConductivity
bathRegion | region identifier |
Definition at line 1570 of file HeartConfig.cpp.
References DecideLocation(), HeartRegionCode::IsRegionBath(), mBathConductivities, mpDefaultParameters, and mpUserParameters.
Referenced by BidomainWithBathAssembler< ELEMENT_DIM, SPACE_DIM >::ComputeMatrixTerm().
const std::set< unsigned > & HeartConfig::rGetTissueIdentifiers | ( | ) |
Gets region identifiers that have to be considered as cardiac tissue.
Definition at line 1607 of file HeartConfig.cpp.
References mTissueIdentifiers.
Referenced by HeartRegionCode::GetValidTissueId().
const std::set< unsigned > & HeartConfig::rGetBathIdentifiers | ( | ) |
Gets region identifiers that have to be considered as bath.
Definition at line 1612 of file HeartConfig.cpp.
References mBathIdentifiers.
Referenced by HeartRegionCode::GetValidBathId().
double HeartConfig::GetSurfaceAreaToVolumeRatio | ( | ) | const |
Definition at line 1617 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by BidomainAssembler< ELEMENT_DIM, SPACE_DIM >::ComputeMatrixTerm(), MonodomainCorrectionTermAssembler< ELEM_DIM, SPACE_DIM >::ComputeVectorTerm(), MonodomainAssembler< ELEMENT_DIM, SPACE_DIM >::ComputeVectorTerm(), BidomainCorrectionTermAssembler< ELEM_DIM, SPACE_DIM >::ComputeVectorTerm(), BidomainAssembler< ELEMENT_DIM, SPACE_DIM >::ComputeVectorTerm(), AbstractCardiacCellInterface::GetIntracellularAreaStimulus(), OperatorSplittingMonodomainSolver< ELEMENT_DIM, SPACE_DIM >::SetupLinearSystem(), MatrixBasedMonodomainSolver< ELEMENT_DIM, SPACE_DIM >::SetupLinearSystem(), and MatrixBasedBidomainSolver< ELEMENT_DIM, SPACE_DIM >::SetupLinearSystem().
double HeartConfig::GetCapacitance | ( | ) | const |
Definition at line 1625 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by BidomainAssembler< ELEMENT_DIM, SPACE_DIM >::ComputeMatrixTerm(), MonodomainAssembler< ELEMENT_DIM, SPACE_DIM >::ComputeVectorTerm(), BidomainAssembler< ELEMENT_DIM, SPACE_DIM >::ComputeVectorTerm(), CML_noble_varghese_kohl_noble_1998_basic_with_sac::GetIIonic(), OperatorSplittingMonodomainSolver< ELEMENT_DIM, SPACE_DIM >::SetupLinearSystem(), MatrixBasedMonodomainSolver< ELEMENT_DIM, SPACE_DIM >::SetupLinearSystem(), and MatrixBasedBidomainSolver< ELEMENT_DIM, SPACE_DIM >::SetupLinearSystem().
double HeartConfig::GetOdeTimeStep | ( | ) | const |
Definition at line 1633 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by CheckTimeSteps(), SetPdeTimeStep(), and SetPrintingTimeStep().
double HeartConfig::GetPdeTimeStep | ( | ) | const |
Definition at line 1640 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by CheckTimeSteps(), AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::PreSolveChecks(), SetOdeTimeStep(), and SetPrintingTimeStep().
double HeartConfig::GetPrintingTimeStep | ( | ) | const |
Definition at line 1647 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by AbstractHdf5Converter< ELEMENT_DIM, SPACE_DIM >::AbstractHdf5Converter(), CheckTimeSteps(), AbstractCvodeCell::Compute(), SetOdeTimeStep(), and SetPdeTimeStep().
bool HeartConfig::GetUseAbsoluteTolerance | ( | ) | const |
Definition at line 1654 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::DisplayRun(), and GetAbsoluteTolerance().
double HeartConfig::GetAbsoluteTolerance | ( | ) | const |
Definition at line 1661 of file HeartConfig.cpp.
References DecideLocation(), EXCEPTION, GetUseAbsoluteTolerance(), mpDefaultParameters, and mpUserParameters.
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::DisplayRun(), and AbstractBidomainSolver< ELEMENT_DIM, SPACE_DIM >::InitialiseForSolve().
bool HeartConfig::GetUseRelativeTolerance | ( | ) | const |
Definition at line 1672 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by GetRelativeTolerance(), and BidomainProblem< DIM >::PreSolveChecks().
double HeartConfig::GetRelativeTolerance | ( | ) | const |
Definition at line 1679 of file HeartConfig.cpp.
References DecideLocation(), EXCEPTION, GetUseRelativeTolerance(), mpDefaultParameters, and mpUserParameters.
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::DisplayRun(), and AbstractBidomainSolver< ELEMENT_DIM, SPACE_DIM >::InitialiseForSolve().
const char * HeartConfig::GetKSPSolver | ( | ) | const |
Definition at line 1690 of file HeartConfig.cpp.
References DecideLocation(), EXCEPTION, mpDefaultParameters, and mpUserParameters.
const char * HeartConfig::GetKSPPreconditioner | ( | ) | const |
Definition at line 1710 of file HeartConfig.cpp.
References DecideLocation(), EXCEPTION, mpDefaultParameters, and mpUserParameters.
DistributedTetrahedralMeshPartitionType::type HeartConfig::GetMeshPartitioning | ( | ) | const |
Definition at line 1741 of file HeartConfig.cpp.
References DecideLocation(), EXCEPTION, mpDefaultParameters, and mpUserParameters.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::Initialise().
bool HeartConfig::IsAdaptivityParametersPresent | ( | ) | const |
Definition at line 1761 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by GetGradationForAdaptivity(), GetMaxEdgeLengthForAdaptivity(), GetMaxNodesForAdaptivity(), GetMinEdgeLengthForAdaptivity(), GetNumberOfAdaptiveSweeps(), GetSigmaForAdaptivity(), GetTargetErrorForAdaptivity(), and SetAdaptivityParameters().
double HeartConfig::GetTargetErrorForAdaptivity | ( | ) | const |
Definition at line 1778 of file HeartConfig.cpp.
References DecideLocation(), EXCEPTION, IsAdaptivityParametersPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by AdaptiveTetrahedralMesh::CalculateErrorMetric(), AdaptiveBidomainProblem::GetTargetError(), SetGradationForAdaptivity(), SetMaxEdgeLengthForAdaptivity(), SetMaxNodesForAdaptivity(), SetMinEdgeLengthForAdaptivity(), SetNumberOfAdaptiveSweeps(), and SetSigmaForAdaptivity().
double HeartConfig::GetSigmaForAdaptivity | ( | ) | const |
Definition at line 1792 of file HeartConfig.cpp.
References DecideLocation(), EXCEPTION, IsAdaptivityParametersPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by AdaptiveTetrahedralMesh::CalculateErrorMetric(), AdaptiveBidomainProblem::GetSigma(), SetGradationForAdaptivity(), SetMaxEdgeLengthForAdaptivity(), SetMaxNodesForAdaptivity(), SetMinEdgeLengthForAdaptivity(), SetNumberOfAdaptiveSweeps(), and SetTargetErrorForAdaptivity().
double HeartConfig::GetMaxEdgeLengthForAdaptivity | ( | ) | const |
Definition at line 1806 of file HeartConfig.cpp.
References DecideLocation(), EXCEPTION, IsAdaptivityParametersPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by AdaptiveTetrahedralMesh::CalculateErrorMetric(), AdaptiveBidomainProblem::GetMaxEdgeLength(), SetGradationForAdaptivity(), SetMaxNodesForAdaptivity(), SetMinEdgeLengthForAdaptivity(), SetNumberOfAdaptiveSweeps(), SetSigmaForAdaptivity(), and SetTargetErrorForAdaptivity().
double HeartConfig::GetMinEdgeLengthForAdaptivity | ( | ) | const |
Definition at line 1820 of file HeartConfig.cpp.
References DecideLocation(), EXCEPTION, IsAdaptivityParametersPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by AdaptiveTetrahedralMesh::CalculateErrorMetric(), AdaptiveBidomainProblem::GetMinEdgeLength(), SetGradationForAdaptivity(), SetMaxEdgeLengthForAdaptivity(), SetMaxNodesForAdaptivity(), SetNumberOfAdaptiveSweeps(), SetSigmaForAdaptivity(), and SetTargetErrorForAdaptivity().
double HeartConfig::GetGradationForAdaptivity | ( | ) | const |
Definition at line 1834 of file HeartConfig.cpp.
References DecideLocation(), EXCEPTION, IsAdaptivityParametersPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by AdaptiveTetrahedralMesh::CalculateErrorMetric(), AdaptiveBidomainProblem::GetGradation(), SetMaxEdgeLengthForAdaptivity(), SetMaxNodesForAdaptivity(), SetMinEdgeLengthForAdaptivity(), SetNumberOfAdaptiveSweeps(), SetSigmaForAdaptivity(), and SetTargetErrorForAdaptivity().
unsigned HeartConfig::GetMaxNodesForAdaptivity | ( | ) | const |
Definition at line 1848 of file HeartConfig.cpp.
References DecideLocation(), EXCEPTION, IsAdaptivityParametersPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by AdaptiveTetrahedralMesh::CalculateErrorMetric(), AdaptiveBidomainProblem::GetMaxMeshNodes(), SetGradationForAdaptivity(), SetMaxEdgeLengthForAdaptivity(), SetMinEdgeLengthForAdaptivity(), SetNumberOfAdaptiveSweeps(), SetSigmaForAdaptivity(), and SetTargetErrorForAdaptivity().
unsigned HeartConfig::GetNumberOfAdaptiveSweeps | ( | ) | const |
Definition at line 1862 of file HeartConfig.cpp.
References DecideLocation(), EXCEPTION, IsAdaptivityParametersPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by AdaptiveBidomainProblem::GetNumAdaptSweeps(), SetGradationForAdaptivity(), SetMaxEdgeLengthForAdaptivity(), SetMaxNodesForAdaptivity(), SetMinEdgeLengthForAdaptivity(), SetSigmaForAdaptivity(), and SetTargetErrorForAdaptivity().
bool HeartConfig::IsPostProcessingSectionPresent | ( | ) | const |
Definition at line 1880 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by IsAnyNodalTimeTraceRequested(), IsApdMapsRequested(), IsConductionVelocityMapsRequested(), IsMaxUpstrokeVelocityMapRequested(), IsPostProcessingRequested(), IsPseudoEcgCalculationRequested(), and IsUpstrokeTimeMapsRequested().
void HeartConfig::EnsurePostProcessingSectionPresent | ( | ) |
Create a PostProcessing section in the user parameters if one doesn't exist.
Definition at line 1897 of file HeartConfig.cpp.
References mpUserParameters.
Referenced by SetApdMaps(), SetConductionVelocityMaps(), SetMaxUpstrokeVelocityMaps(), SetPseudoEcgElectrodePositions(), SetRequestedNodalTimeTraces(), SetUpstrokeTimeMaps(), and UpdateParametersFromResumeSimulation().
bool HeartConfig::IsPostProcessingRequested | ( | ) | const |
Definition at line 1902 of file HeartConfig.cpp.
References IsAnyNodalTimeTraceRequested(), IsApdMapsRequested(), IsConductionVelocityMapsRequested(), IsMaxUpstrokeVelocityMapRequested(), IsPostProcessingSectionPresent(), IsPseudoEcgCalculationRequested(), and IsUpstrokeTimeMapsRequested().
bool HeartConfig::IsApdMapsRequested | ( | ) | const |
Definition at line 1918 of file HeartConfig.cpp.
References DecideLocation(), IsPostProcessingSectionPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by GetApdMaps(), and IsPostProcessingRequested().
void HeartConfig::GetApdMaps | ( | std::vector< std::pair< double, double > > & | rApdMaps | ) | const |
rApdMaps | each entry is a request for a map with
|
Definition at line 1929 of file HeartConfig.cpp.
References DecideLocation(), IsApdMapsRequested(), mpDefaultParameters, and mpUserParameters.
Referenced by PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WritePostProcessingFiles().
bool HeartConfig::IsUpstrokeTimeMapsRequested | ( | ) | const |
Definition at line 1949 of file HeartConfig.cpp.
References DecideLocation(), IsPostProcessingSectionPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by GetUpstrokeTimeMaps(), and IsPostProcessingRequested().
void HeartConfig::GetUpstrokeTimeMaps | ( | std::vector< double > & | rUpstrokeTimeMaps | ) | const |
rUpstrokeTimeMaps | each entry is a request for a map with
|
Definition at line 1959 of file HeartConfig.cpp.
References DecideLocation(), IsUpstrokeTimeMapsRequested(), mpDefaultParameters, and mpUserParameters.
Referenced by PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WritePostProcessingFiles().
bool HeartConfig::IsMaxUpstrokeVelocityMapRequested | ( | ) | const |
Definition at line 1977 of file HeartConfig.cpp.
References DecideLocation(), IsPostProcessingSectionPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by GetMaxUpstrokeVelocityMaps(), and IsPostProcessingRequested().
void HeartConfig::GetMaxUpstrokeVelocityMaps | ( | std::vector< double > & | rUpstrokeVelocityMaps | ) | const |
rUpstrokeVelocityMaps | each entry is a request for a map with
|
Definition at line 1989 of file HeartConfig.cpp.
References DecideLocation(), IsMaxUpstrokeVelocityMapRequested(), mpDefaultParameters, and mpUserParameters.
Referenced by PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WritePostProcessingFiles().
bool HeartConfig::IsConductionVelocityMapsRequested | ( | ) | const |
Definition at line 2007 of file HeartConfig.cpp.
References DecideLocation(), IsPostProcessingSectionPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by GetConductionVelocityMaps(), and IsPostProcessingRequested().
void HeartConfig::GetConductionVelocityMaps | ( | std::vector< unsigned > & | rConductionVelocityMaps | ) | const |
rConductionVelocityMaps | each entry is a request for a map with
|
Definition at line 2018 of file HeartConfig.cpp.
References DecideLocation(), IsConductionVelocityMapsRequested(), mpDefaultParameters, and mpUserParameters.
Referenced by PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WritePostProcessingFiles().
bool HeartConfig::IsAnyNodalTimeTraceRequested | ( | ) | const |
Definition at line 2036 of file HeartConfig.cpp.
References DecideLocation(), IsPostProcessingSectionPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by GetNodalTimeTraceRequested(), and IsPostProcessingRequested().
void HeartConfig::GetNodalTimeTraceRequested | ( | std::vector< unsigned > & | rRequestedNodes | ) | const |
rRequestedNodes | vector of indices of requested nodes that will be filled in by this function |
Definition at line 2047 of file HeartConfig.cpp.
References DecideLocation(), IsAnyNodalTimeTraceRequested(), mpDefaultParameters, and mpUserParameters.
Referenced by PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WritePostProcessingFiles().
bool HeartConfig::IsPseudoEcgCalculationRequested | ( | ) | const |
Definition at line 2066 of file HeartConfig.cpp.
References DecideLocation(), IsPostProcessingSectionPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by IsPostProcessingRequested().
void HeartConfig::GetPseudoEcgElectrodePositions | ( | std::vector< ChastePoint< SPACE_DIM > > & | rPseudoEcgElectrodePositions | ) | const [inline] |
rPseudoEcgElectrodePositions | will be filled in with the positions of electrodes to use in calculating pseudo-ECGs (if any) |
Definition at line 2078 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WritePostProcessingFiles().
bool HeartConfig::GetUseStateVariableInterpolation | ( | ) | const |
Definition at line 3094 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by BidomainCorrectionTermAssembler< ELEM_DIM, SPACE_DIM >::BidomainCorrectionTermAssembler(), MonodomainProblem< ELEMENT_DIM, SPACE_DIM >::CreateCardiacTissue(), BidomainProblem< DIM >::CreateCardiacTissue(), and MonodomainCorrectionTermAssembler< ELEM_DIM, SPACE_DIM >::MonodomainCorrectionTermAssembler().
bool HeartConfig::IsOutputVisualizerPresent | ( | ) | const |
Whether there is an OutputVisualizer element present.
Definition at line 2098 of file HeartConfig.cpp.
References CheckSimulationIsDefined(), DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by GetVisualizeWithCmgui(), GetVisualizeWithMeshalyzer(), GetVisualizeWithParallelVtk(), and GetVisualizeWithVtk().
bool HeartConfig::GetVisualizeWithMeshalyzer | ( | ) | const |
Whether to convert the output from HDF5 to meshalyzer readable format
Definition at line 2117 of file HeartConfig.cpp.
References DecideLocation(), IsOutputVisualizerPresent(), mpDefaultParameters, and mpUserParameters.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CloseFilesAndPostProcess().
bool HeartConfig::GetVisualizeWithCmgui | ( | ) | const |
Whether to convert the output from HDF5 to Cmgui readable format
Definition at line 2131 of file HeartConfig.cpp.
References DecideLocation(), IsOutputVisualizerPresent(), mpDefaultParameters, and mpUserParameters.
bool HeartConfig::GetVisualizeWithVtk | ( | ) | const |
Whether to convert the output from HDF5 to Vtk readable format
Definition at line 2159 of file HeartConfig.cpp.
References DecideLocation(), IsOutputVisualizerPresent(), mpDefaultParameters, and mpUserParameters.
bool HeartConfig::GetVisualizeWithParallelVtk | ( | ) | const |
Whether to convert the output from HDF5 to parallel Vtk readable format
Definition at line 2145 of file HeartConfig.cpp.
References DecideLocation(), IsOutputVisualizerPresent(), mpDefaultParameters, and mpUserParameters.
bool HeartConfig::IsElectrodesPresent | ( | ) | const |
Definition at line 2173 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by GetElectrodeParameters(), HeartConfigRelatedCellFactory< SPACE_DIM >::HeartConfigRelatedCellFactory(), and SetElectrodeParameters().
void HeartConfig::GetElectrodeParameters | ( | bool & | rGroundSecondElectrode, | |
unsigned & | rIndex, | |||
double & | rMagnitude, | |||
double & | rStartTime, | |||
double & | rDuration | |||
) |
Get electrode parameters.
rGroundSecondElectrode | Whether to ground the second electrode (see class documentation) | |
rIndex | The value i when applying the electrodes to x_i=a and x_i=b (a<b) | |
rMagnitude | Magnitude of the stimulus | |
rStartTime | Switch on time | |
rDuration | Duration of the stimulus. |
Definition at line 3061 of file HeartConfig.cpp.
References EXCEPTION, IsElectrodesPresent(), and mpUserParameters.
Referenced by Electrodes< DIM >::Electrodes().
bool HeartConfig::GetUseMassLumping | ( | ) |
Get whether to use mass lumping in the FE solver or not.
Definition at line 3220 of file HeartConfig.cpp.
References mUseMassLumping.
bool HeartConfig::GetUseMassLumpingForPrecond | ( | ) |
Get whether to use mass lumping in the construction of the preconditioner of the FE solver or not.
Definition at line 3230 of file HeartConfig.cpp.
References mUseMassLumpingForPrecond.
bool HeartConfig::GetUseReactionDiffusionOperatorSplitting | ( | ) |
Get whether to use Strang operator splitting of the reaction and diffusion terms (see Set method documentation).
Definition at line 3240 of file HeartConfig.cpp.
References mUseReactionDiffusionOperatorSplitting.
Referenced by MonodomainProblem< ELEMENT_DIM, SPACE_DIM >::CreateSolver().
bool HeartConfig::GetUseFixedNumberIterationsLinearSolver | ( | ) |
Get whether to use a fixed number of iterations in the linear solver
Definition at line 3251 of file HeartConfig.cpp.
References mUseFixedNumberIterations.
unsigned HeartConfig::GetEvaluateNumItsEveryNSolves | ( | ) |
Get how often perform a solve with residual-based stop criteria in order to decide how many iterations to perform in following linear solves.
Definition at line 3256 of file HeartConfig.cpp.
References mEvaluateNumItsEveryNSolves.
void HeartConfig::SetSpaceDimension | ( | unsigned | spaceDimension | ) |
Set the configuration dimension
spaceDimension | 1, 2 or 3. |
Definition at line 2193 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetSimulationDuration | ( | double | simulationDuration | ) |
Set the configuration simulation end time.
simulationDuration | end time for the next call to Solve() (in ms). |
Definition at line 2198 of file HeartConfig.cpp.
References mpUserParameters.
Referenced by CardiacElectroMechanicsProblem< DIM >::CardiacElectroMechanicsProblem(), AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge(), CardiacSimulation::CreateAndRun(), and UpdateParametersFromResumeSimulation().
void HeartConfig::SetDomain | ( | const cp::domain_type & | rDomain | ) |
Set the configuration to run mono or bidomain cp::domain_type is an xsd convenience class type
rDomain | type of simulation bi- mono-domain |
Definition at line 2204 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetDefaultIonicModel | ( | const cp::ionic_models_available_type & | rIonicModel | ) |
Set the configuration to place the given cardiac cell models at all mesh nodes (unless otherwise specified by SetIonicModelRegions). cp::ionic_models_available_type is generated automatically from the XML Schema.
rIonicModel | type of model |
Definition at line 2209 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetSlabDimensions | ( | double | x, | |
double | y, | |||
double | z, | |||
double | inter_node_space | |||
) |
Set dimensions of simulation for use with a cuboid mesh generated on the fly. 3-D.
x | length in 1st dimension (cm) | |
y | length in 2nd dimension (cm) | |
z | length in 3rd dimension (cm) | |
inter_node_space | Spacing in cartesian direction (cm). Diagonals will be longer. |
Definition at line 2217 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetSheetDimensions | ( | double | x, | |
double | y, | |||
double | inter_node_space | |||
) |
Set dimensions of simulation for use with a cuboid mesh generated on the fly. 2-D.
x | length in 1st dimension (cm) | |
y | length in 2nd dimension (cm) | |
inter_node_space | Spacing in cartesian direction (cm). Diagonals will be longer. |
Definition at line 2229 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetFibreLength | ( | double | x, | |
double | inter_node_space | |||
) |
Set dimensions of simulation for use with a cuboid mesh generated on the fly. 1-D.
x | length in 1st dimension (cm) | |
inter_node_space | Spacing in cartesian direction (cm). |
Definition at line 2241 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetMeshFileName | ( | std::string | meshPrefix, | |
cp::media_type | fibreDefinition = cp::media_type::NoFibreOrientation | |||
) |
Sets the name of a mesh to be read from disk for this simulation
meshPrefix | path and basename of a set of mesh files (.nodes .ele etc) in triangle/tetget format | |
fibreDefinition | if set (Orthotropic/Axisymmetric) then a (.ortho/.axi) file should also be read |
Definition at line 2253 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetConductivityHeterogeneities | ( | std::vector< ChasteCuboid< 3 > > & | rConductivityAreas, | |
std::vector< c_vector< double, 3 > > & | rIntraConductivities, | |||
std::vector< c_vector< double, 3 > > & | rExtraConductivities | |||
) |
Set a number of heterogeneous regions (Axis-aligned boxes) It is assumed that the std::vectors are all of the same length
rConductivityAreas | conductivityAreas[0] is the first region | |
rIntraConductivities | intraConductivities[0] is conductivity vector for the first region | |
rExtraConductivities | extraConductivities[0] is conductivity vector for the first region |
Definition at line 2292 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetConductivityHeterogeneitiesEllipsoid | ( | std::vector< ChasteEllipsoid< 3 > > & | conductivityAreas, | |
std::vector< c_vector< double, 3 > > & | intraConductivities, | |||
std::vector< c_vector< double, 3 > > & | extraConductivities | |||
) |
Set a number of heterogeneous regions (Axis-aligned ellipsoids) It is assumed that the std::vectors are all of the same length
conductivityAreas | conductivityAreas[0] is the first region | |
intraConductivities | intraConductivities[0] is conductivity vector for the first region | |
extraConductivities | extraConductivities[0] is conductivity vector for the first region |
Definition at line 2340 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetOutputDirectory | ( | const std::string & | rOutputDirectory | ) |
rOutputDirectory | Full path to output directory (will be created if necessary) |
Definition at line 2388 of file HeartConfig.cpp.
References mpUserParameters.
Referenced by CardiacElectroMechanicsProblem< DIM >::CardiacElectroMechanicsProblem(), AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge(), CardiacElectroMechanicsProblem< DIM >::Solve(), and VoltageInterpolaterOntoMechanicsMesh< DIM >::VoltageInterpolaterOntoMechanicsMesh().
void HeartConfig::SetOutputFilenamePrefix | ( | const std::string & | rOutputFilenamePrefix | ) |
rOutputFilenamePrefix | Prefix for files If set to "res" this will produce [path]/res.h5 [path]/output/res_mesh.pts [path]/output/res_mesh.tri [path]/output/res_parameters.xml (a copy of this configuration at the end of the simulation) [path]/output/res_times.info [path]/output/res_V.dat |
Definition at line 2393 of file HeartConfig.cpp.
References mpUserParameters.
Referenced by CardiacElectroMechanicsProblem< DIM >::CardiacElectroMechanicsProblem(), and AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge().
void HeartConfig::SetOutputVariables | ( | const std::vector< std::string > & | rOutputVariables | ) |
rOutputVariables | a vector of std::strings of the names of each variable that should be outputted at each time step. |
Warning: when specifying output variables, you cannot convert the HDF5 output to Meshalyzer, Cmgui or VTK formats, since the converter will get confused by the presence of extra data. This method thus also turns off visualizer output if the provided vector is non-empty.
Definition at line 2398 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetOutputUsingOriginalNodeOrdering | ( | bool | useOriginal | ) |
This method may set the output HDF5 file to be written using the original mesh permutation (in situations where a parallel partition may have permuted the node). The default is to use the new, not original permutation, i.e. useOriginal=false
useOriginal | whether to use the original permutation |
Definition at line 2428 of file HeartConfig.cpp.
References mpUserParameters.
Referenced by AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::InitialiseWriter().
void HeartConfig::SetCheckpointSimulation | ( | bool | checkpointSimulation, | |
double | checkpointTimestep = -1.0 , |
|||
unsigned | maxCheckpointsOnDisk = UINT_MAX | |||
) |
Set whether the simulation should be checkpointed or not.
checkpointSimulation | whether to do checkpointing | |
checkpointTimestep | checkpointing timestep | |
maxCheckpointsOnDisk | maximum number of checkpoint archives to keep on disk |
Definition at line 2434 of file HeartConfig.cpp.
References CheckTimeSteps(), and mpUserParameters.
Referenced by load(), and UpdateParametersFromResumeSimulation().
void HeartConfig::SetIntracellularConductivities | ( | const c_vector< double, 3 > & | rIntraConductivities | ) |
3D version
rIntraConductivities | DIM-vector of intracellular conductivities (mS/cm) |
Definition at line 2458 of file HeartConfig.cpp.
References mpUserParameters.
Referenced by CardiacElectroMechanicsProblem< DIM >::Initialise().
void HeartConfig::SetIntracellularConductivities | ( | const c_vector< double, 2 > & | rIntraConductivities | ) |
2D version
rIntraConductivities | DIM-vector of intracellular conductivities (mS/cm) |
Definition at line 2469 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetIntracellularConductivities | ( | const c_vector< double, 1 > & | rIntraConductivities | ) |
1D version
rIntraConductivities | DIM-vector of intracellular conductivities (mS/cm) |
Definition at line 2479 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetExtracellularConductivities | ( | const c_vector< double, 3 > & | rExtraConductivities | ) |
3D version
rExtraConductivities | DIM-vector of extracellular conductivities (mS/cm) |
Definition at line 2488 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetExtracellularConductivities | ( | const c_vector< double, 2 > & | rExtraConductivities | ) |
2D version
rExtraConductivities | DIM-vector of extracellular conductivities (mS/cm) |
Definition at line 2499 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetExtracellularConductivities | ( | const c_vector< double, 1 > & | rExtraConductivities | ) |
1D version
rExtraConductivities | DIM-vector of extracellular conductivities (mS/cm) |
Definition at line 2509 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetBathConductivity | ( | double | bathConductivity | ) |
Set bath default conductivity
bathConductivity | default conductivity for perfusing bath (mS/cm) |
Definition at line 2518 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetBathMultipleConductivities | ( | std::map< unsigned, double > | bathConductivities | ) |
Set multiple bath conductivities based on element region label (mS/cm)
bathConductivities | map between different bath region identifier and their conductivity (if different from default) |
Definition at line 2524 of file HeartConfig.cpp.
References mBathConductivities.
void HeartConfig::SetTissueAndBathIdentifiers | ( | const std::set< unsigned > & | tissueIds, | |
const std::set< unsigned > & | bathIds | |||
) |
Sets which region identifiers have to be considered cardiac tissue and bath.
tissueIds | set of identifiers | |
bathIds | set of identifiers |
Definition at line 2536 of file HeartConfig.cpp.
References EXCEPTION, mBathIdentifiers, and mTissueIdentifiers.
void HeartConfig::SetSurfaceAreaToVolumeRatio | ( | double | ratio | ) |
Sets which region identifiers have to be considered cardiac tissue.
param tissueIds set of identifiers
ratio | (1/cm) |
Definition at line 2557 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetCapacitance | ( | double | capacitance | ) |
Set surface capacitance Cm (for PDE)
capacitance | (uF/cm^2) |
Definition at line 2563 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetOdePdeAndPrintingTimeSteps | ( | double | odeTimeStep, | |
double | pdeTimeStep, | |||
double | printingTimeStep | |||
) |
Set the configuration to use ode, pde and printing times of given values Calls CheckTimeSteps to ensure compatibility
odeTimeStep | ode value to use | |
pdeTimeStep | pde value to use | |
printingTimeStep | printing value to use |
Definition at line 2571 of file HeartConfig.cpp.
References CheckTimeSteps(), and mpUserParameters.
Referenced by AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge(), SetOdeTimeStep(), SetPdeTimeStep(), and SetPrintingTimeStep().
void HeartConfig::SetOdeTimeStep | ( | double | odeTimeStep | ) |
Set the configuration to use ode time of given value Calls CheckTimeSteps via SetOdePdeAndPrintingTimeSteps
odeTimeStep | the value to use |
Definition at line 2579 of file HeartConfig.cpp.
References GetPdeTimeStep(), GetPrintingTimeStep(), and SetOdePdeAndPrintingTimeSteps().
void HeartConfig::SetPdeTimeStep | ( | double | pdeTimeStep | ) |
Set the configuration to use pde time of given value Calls CheckTimeSteps via SetOdePdeAndPrintingTimeSteps
pdeTimeStep | the value to use |
Definition at line 2584 of file HeartConfig.cpp.
References GetOdeTimeStep(), GetPrintingTimeStep(), and SetOdePdeAndPrintingTimeSteps().
void HeartConfig::SetPrintingTimeStep | ( | double | printingTimeStep | ) |
Set the configuration to use printing time of given value Calls CheckTimeSteps via SetOdePdeAndPrintingTimeSteps
printingTimeStep | the value to use |
Definition at line 2589 of file HeartConfig.cpp.
References GetOdeTimeStep(), GetPdeTimeStep(), and SetOdePdeAndPrintingTimeSteps().
Referenced by CardiacElectroMechanicsProblem< DIM >::Solve().
void HeartConfig::SetUseRelativeTolerance | ( | double | relativeTolerance | ) |
Set the configuration to use KSP relative tolerance of given value
relativeTolerance | the value to use |
Definition at line 2639 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetUseAbsoluteTolerance | ( | double | absoluteTolerance | ) |
Set the configuration to use KSP absolute tolerance of given value
absoluteTolerance | the value to use |
Definition at line 2647 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetKSPSolver | ( | const char * | kspSolver | ) |
Set the type of KSP solver as with the flag "-ksp_type"
kspSolver | a string from {"gmres", "cg", "symmlq"} |
Definition at line 2655 of file HeartConfig.cpp.
References EXCEPTION, and mpUserParameters.
Referenced by AbstractBidomainSolver< ELEMENT_DIM, SPACE_DIM >::FinaliseLinearSystem().
void HeartConfig::SetKSPPreconditioner | ( | const char * | kspPreconditioner | ) |
Set the type of preconditioner as with the flag "-pc_type"
kspPreconditioner | a string from {"jacobi", "bjacobi", "hypre", "ml", "spai", "blockdiagonal", "ldufactorisation", "none"} |
Definition at line 2682 of file HeartConfig.cpp.
References EXCEPTION, and mpUserParameters.
void HeartConfig::SetMeshPartitioning | ( | const char * | meshPartioningMethod | ) |
Set the type of mesh partitioning method
meshPartioningMethod | a string from {"dumb", "metis", "parmetis", "petsc"} |
Definition at line 2734 of file HeartConfig.cpp.
References EXCEPTION, and mpUserParameters.
void HeartConfig::SetAdaptivityParameters | ( | double | targetError, | |
double | sigma, | |||
double | maxEdgeLength, | |||
double | minEdgeLength, | |||
double | gradation, | |||
unsigned | maxNodes, | |||
unsigned | numSweeps | |||
) |
Set the parameters to be used during mesh adaptation.
targetError | is the target error passed to the adaptivity library | |
sigma | is the value of sigma passed to the adaptivity library | |
maxEdgeLength | is the maximum edge length permitted in the adapted mesh | |
minEdgeLength | is the minimum edge length permitted in the adapted mesh | |
gradation | is the value of gradation passed to the adaptivity library | |
maxNodes | is the maximum number of nodes permitted in the adapted mesh | |
numSweeps | is the number of adaptive sweeps through the mesh performed by the adaptivity library |
Definition at line 2761 of file HeartConfig.cpp.
References EXCEPTION, IsAdaptivityParametersPresent(), and mpUserParameters.
Referenced by SetGradationForAdaptivity(), SetMaxEdgeLengthForAdaptivity(), SetMaxNodesForAdaptivity(), SetMinEdgeLengthForAdaptivity(), SetNumberOfAdaptiveSweeps(), SetSigmaForAdaptivity(), and SetTargetErrorForAdaptivity().
void HeartConfig::SetTargetErrorForAdaptivity | ( | double | targetError | ) |
Set the target error to be used during mesh adaptation.
targetError | is the target error passed to the adaptivity library |
Definition at line 2795 of file HeartConfig.cpp.
References GetGradationForAdaptivity(), GetMaxEdgeLengthForAdaptivity(), GetMaxNodesForAdaptivity(), GetMinEdgeLengthForAdaptivity(), GetNumberOfAdaptiveSweeps(), GetSigmaForAdaptivity(), and SetAdaptivityParameters().
void HeartConfig::SetSigmaForAdaptivity | ( | double | sigma | ) |
Set the value of sigma to be used during mesh adaptation.
sigma | is the value of sigma passed to the adaptivity library |
Definition at line 2806 of file HeartConfig.cpp.
References GetGradationForAdaptivity(), GetMaxEdgeLengthForAdaptivity(), GetMaxNodesForAdaptivity(), GetMinEdgeLengthForAdaptivity(), GetNumberOfAdaptiveSweeps(), GetTargetErrorForAdaptivity(), and SetAdaptivityParameters().
void HeartConfig::SetMaxEdgeLengthForAdaptivity | ( | double | maxEdgeLength | ) |
Set the maximum edge length to be used during mesh adaptation.
maxEdgeLength | is the maximum edge length permitted in the adapted mesh |
Definition at line 2817 of file HeartConfig.cpp.
References GetGradationForAdaptivity(), GetMaxNodesForAdaptivity(), GetMinEdgeLengthForAdaptivity(), GetNumberOfAdaptiveSweeps(), GetSigmaForAdaptivity(), GetTargetErrorForAdaptivity(), and SetAdaptivityParameters().
void HeartConfig::SetMinEdgeLengthForAdaptivity | ( | double | minEdgeLength | ) |
Set the minimum edge length to be used during mesh adaptation.
minEdgeLength | is the minimum edge length permitted in the adapted mesh |
Definition at line 2828 of file HeartConfig.cpp.
References GetGradationForAdaptivity(), GetMaxEdgeLengthForAdaptivity(), GetMaxNodesForAdaptivity(), GetNumberOfAdaptiveSweeps(), GetSigmaForAdaptivity(), GetTargetErrorForAdaptivity(), and SetAdaptivityParameters().
void HeartConfig::SetGradationForAdaptivity | ( | double | gradation | ) |
Set the gradation to be used during mesh adaptation.
gradation | is the gradation passed to the adaptivity library |
Definition at line 2839 of file HeartConfig.cpp.
References GetMaxEdgeLengthForAdaptivity(), GetMaxNodesForAdaptivity(), GetMinEdgeLengthForAdaptivity(), GetNumberOfAdaptiveSweeps(), GetSigmaForAdaptivity(), GetTargetErrorForAdaptivity(), and SetAdaptivityParameters().
void HeartConfig::SetMaxNodesForAdaptivity | ( | unsigned | maxNodes | ) |
Set the maximum number of nodes to be used during mesh adaptation.
maxNodes | is the maximum number of nodes permitted in the adapted mesh |
Definition at line 2850 of file HeartConfig.cpp.
References GetGradationForAdaptivity(), GetMaxEdgeLengthForAdaptivity(), GetMinEdgeLengthForAdaptivity(), GetNumberOfAdaptiveSweeps(), GetSigmaForAdaptivity(), GetTargetErrorForAdaptivity(), and SetAdaptivityParameters().
void HeartConfig::SetNumberOfAdaptiveSweeps | ( | unsigned | numSweeps | ) |
Set the number of adaptive sweeps to be used during mesh adaptation.
numSweeps | is the number of adaptive sweeps through the mesh performed by the adaptivity library |
Definition at line 2861 of file HeartConfig.cpp.
References GetGradationForAdaptivity(), GetMaxEdgeLengthForAdaptivity(), GetMaxNodesForAdaptivity(), GetMinEdgeLengthForAdaptivity(), GetSigmaForAdaptivity(), GetTargetErrorForAdaptivity(), and SetAdaptivityParameters().
void HeartConfig::SetApdMaps | ( | const std::vector< std::pair< double, double > > & | rApdMaps | ) |
Set the parameters of the apd map requested
rApdMaps | each entry is a request for a map with
|
Definition at line 2872 of file HeartConfig.cpp.
References EnsurePostProcessingSectionPresent(), and mpUserParameters.
void HeartConfig::SetUpstrokeTimeMaps | ( | std::vector< double > & | rUpstrokeTimeMaps | ) |
Set the parameters of the upstroke time map requested
rUpstrokeTimeMaps | is the list of thresholds (mV) with respect to which the upstroke time maps are calculated. The threshold is used for determining when an action potential occurs. |
Definition at line 2890 of file HeartConfig.cpp.
References EnsurePostProcessingSectionPresent(), and mpUserParameters.
void HeartConfig::SetMaxUpstrokeVelocityMaps | ( | std::vector< double > & | rMaxUpstrokeVelocityMaps | ) |
Set the parameters of the maximal upstroke velocity map requested
rMaxUpstrokeVelocityMaps | is the list of thresholds (mV) with respect to which the upstroke velocity maps are calculated. The threshold is used for determining when an action potential occurs. |
Definition at line 2908 of file HeartConfig.cpp.
References EnsurePostProcessingSectionPresent(), and mpUserParameters.
void HeartConfig::SetConductionVelocityMaps | ( | std::vector< unsigned > & | rConductionVelocityMaps | ) |
Set the parameters of the conduction velocity map requested
rConductionVelocityMaps | is a list of origin node indices. One map is created for each origin node. |
Definition at line 2929 of file HeartConfig.cpp.
References EnsurePostProcessingSectionPresent(), and mpUserParameters.
void HeartConfig::SetRequestedNodalTimeTraces | ( | std::vector< unsigned > & | requestedNodes | ) |
Sets the requested nodes for extrapolation of the time trace. The node numbering is referred to the original numbering (unpermuted).
requestedNodes | the node indices (in the unpermuted mesh) where we want the plot over time |
Definition at line 2945 of file HeartConfig.cpp.
References EnsurePostProcessingSectionPresent(), and mpUserParameters.
void HeartConfig::SetPseudoEcgElectrodePositions | ( | const std::vector< ChastePoint< SPACE_DIM > > & | rPseudoEcgElectrodePositions | ) | [inline] |
Set the parameters for pseudo-ECG calculation.
rPseudoEcgElectrodePositions | should contan the positions of electrodes to use in calculating pseudo-ECGs (if any) |
Definition at line 2962 of file HeartConfig.cpp.
References EnsurePostProcessingSectionPresent(), and mpUserParameters.
void HeartConfig::EnsureOutputVisualizerExists | ( | void | ) |
Create the OutputVisualizer element if it doesn't exist
Definition at line 2985 of file HeartConfig.cpp.
References mpUserParameters.
Referenced by SetVisualizeWithCmgui(), SetVisualizeWithMeshalyzer(), SetVisualizeWithParallelVtk(), and SetVisualizeWithVtk().
void HeartConfig::SetVisualizeWithMeshalyzer | ( | bool | useMeshalyzer = true |
) |
Set whether to convert the output from HDF5 to meshalyzer readable format
useMeshalyzer |
Definition at line 2990 of file HeartConfig.cpp.
References EnsureOutputVisualizerExists(), and mpUserParameters.
Referenced by UpdateParametersFromResumeSimulation().
void HeartConfig::SetVisualizeWithCmgui | ( | bool | useCmgui = true |
) |
Set whether to convert the output from HDF5 to Cmgui readable format
useCmgui |
Definition at line 2998 of file HeartConfig.cpp.
References EnsureOutputVisualizerExists(), and mpUserParameters.
Referenced by UpdateParametersFromResumeSimulation().
void HeartConfig::SetVisualizeWithVtk | ( | bool | useVtk = true |
) |
Set whether to convert the output from HDF5 to Vtk readable format
useVtk |
Definition at line 3006 of file HeartConfig.cpp.
References EnsureOutputVisualizerExists(), and mpUserParameters.
Referenced by UpdateParametersFromResumeSimulation().
void HeartConfig::SetVisualizeWithParallelVtk | ( | bool | useParallelVtk = true |
) |
Set whether to convert the output from HDF5 to parallel Vtk readable format
useParallelVtk |
Definition at line 3014 of file HeartConfig.cpp.
References EnsureOutputVisualizerExists(), and mpUserParameters.
Referenced by UpdateParametersFromResumeSimulation().
void HeartConfig::SetElectrodeParameters | ( | bool | groundSecondElectrode, | |
unsigned | index, | |||
double | magnitude, | |||
double | startTime, | |||
double | duration | |||
) |
Setup electrode parameters.
groundSecondElectrode | Whether to ground the second electrode (see class documentation) | |
index | The value i when applying the electrodes to x_i=a and x_i=b (a<b) | |
magnitude | Magnitude of the stimulus | |
startTime | Switch on time | |
duration | Duration of the stimulus. |
Definition at line 3022 of file HeartConfig.cpp.
References IsElectrodesPresent(), and mpUserParameters.
void HeartConfig::SetUseStateVariableInterpolation | ( | bool | useStateVariableInterpolation = true |
) |
Set the use of State Variable Interpolation in the computation of ionic currents. See documentation page ChasteGuides/StateVariableInterpolation.
useStateVariableInterpolation | Whether to use it. |
Definition at line 3109 of file HeartConfig.cpp.
References mpUserParameters.
void HeartConfig::SetUseMassLumping | ( | bool | useMassLumping = true |
) |
Set the use of mass lumping in the FE solver.
useMassLumping | Whether to use it |
Definition at line 3215 of file HeartConfig.cpp.
References mUseMassLumping.
Referenced by MatrixBasedMonodomainSolver< ELEMENT_DIM, SPACE_DIM >::SetupLinearSystem().
void HeartConfig::SetUseMassLumpingForPrecond | ( | bool | useMassLumping = true |
) |
Set the use of mass lumping in the construction of the preconditioner in the FE solver.
useMassLumping | Whether to use it |
Definition at line 3225 of file HeartConfig.cpp.
References mUseMassLumpingForPrecond.
void HeartConfig::SetUseReactionDiffusionOperatorSplitting | ( | bool | useOperatorSplitting = true |
) |
Use Strang operator splitting of the diffusion (conductivity) term and the reaction (ionic current) term, instead of solving the full reaction-diffusion PDE. This does NOT refer to operator splitting of the two PDEs in the bidomain equations. For details see for example Sundnes et al "Computing the Electrical Activity of the Heart".
useOperatorSplitting | Whether to use operator splitting (defaults to true). |
Definition at line 3235 of file HeartConfig.cpp.
References mUseReactionDiffusionOperatorSplitting.
void HeartConfig::SetUseFixedNumberIterationsLinearSolver | ( | bool | useFixedNumberIterations = true , |
|
unsigned | evaluateNumItsEveryNSolves = UINT_MAX | |||
) |
Set the use of fixed number of iterations in the linear solver
useFixedNumberIterations | Whether to use a fixed number of iterations for the linear solver | |
evaluateNumItsEveryNSolves | Perform a solve with convergence-based stop criteria every n solves to decide how many iterations perform for the next n-1 solves. Default is perfoming a single evaluation at the beginning of the simulation. |
Definition at line 3245 of file HeartConfig.cpp.
References mEvaluateNumItsEveryNSolves, and mUseFixedNumberIterations.
bool HeartConfig::HasDrugDose | ( | ) | const |
Definition at line 3123 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
double HeartConfig::GetDrugDose | ( | ) | const |
Definition at line 3140 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by HeartConfigRelatedCellFactory< SPACE_DIM >::SetCellParameters().
void HeartConfig::SetDrugDose | ( | double | drugDose | ) |
drugDose | The dose of the drug to use (should be in units consistent with the IC50s). |
Definition at line 3147 of file HeartConfig.cpp.
References mpUserParameters.
Referenced by SetIc50Value().
void HeartConfig::SetIc50Value | ( | const std::string & | rCurrentName, | |
double | ic50, | |||
double | hill = 1.0 | |||
) |
Add a new conductance block model for a particular channel.
rCurrentName | The Oxford metadata name of the current (e.g. membrane_fast_sodium_current) | |
ic50 | The IC50 value for this channel (should be in consistent units with drug dose) | |
hill | The hill coefficient to use (usually default to 1) |
Definition at line 3181 of file HeartConfig.cpp.
References mpUserParameters, and SetDrugDose().
std::map< std::string, std::pair< double, double > > HeartConfig::GetIc50Values | ( | ) |
Get the parameters for the model of "conductance-block" drug action on a set of ion channels.
Definition at line 3160 of file HeartConfig.cpp.
References DecideLocation(), mpDefaultParameters, and mpUserParameters.
Referenced by HeartConfigRelatedCellFactory< SPACE_DIM >::SetCellParameters().
TYPE * HeartConfig::DecideLocation | ( | TYPE * | params_ptr, | |
TYPE * | defaults_ptr, | |||
const std::string & | rNameParameter | |||
) | const [inline, private] |
DecideLocation is a convenience method used to get the correct parameter value from the defaults/parameters files. It checks if the first value is present and (if not) moves onto the second
params_ptr | Pointer to quantity within the parameters file (checked first, since it will override a default) | |
defaults_ptr | Pointer to quantity within the defaults file (used if there was no override) | |
rNameParameter | Name of quatity within params_ptr/defaults_ptr (so we can throw a meaningful exception if it's not found) |
Definition at line 567 of file HeartConfig.cpp.
References EXCEPTION.
Referenced by GetAbsoluteTolerance(), GetApdMaps(), GetBathConductivity(), GetCapacitance(), GetCellHeterogeneities(), GetCheckpointSimulation(), GetCheckpointTimestep(), GetConductionVelocityMaps(), GetConductivityHeterogeneities(), GetConductivityHeterogeneitiesProvided(), GetConductivityMedia(), GetCreateFibre(), GetCreateMesh(), GetCreateSheet(), GetCreateSlab(), GetDefaultIonicModel(), GetDomain(), GetDrugDose(), GetExtracellularConductivities(), GetFibreLength(), GetGradationForAdaptivity(), GetIc50Values(), GetInterNodeSpace(), GetIntracellularConductivities(), GetIonicModelRegions(), GetKSPPreconditioner(), GetKSPSolver(), GetLoadMesh(), GetMaxCheckpointsOnDisk(), GetMaxEdgeLengthForAdaptivity(), GetMaxNodesForAdaptivity(), GetMaxUpstrokeVelocityMaps(), GetMeshName(), GetMeshPartitioning(), GetMinEdgeLengthForAdaptivity(), GetNodalTimeTraceRequested(), GetNumberOfAdaptiveSweeps(), GetOdeTimeStep(), GetOutputDirectory(), GetOutputFilenamePrefix(), GetOutputUsingOriginalNodeOrdering(), GetOutputVariables(), GetOutputVariablesProvided(), GetPdeTimeStep(), GetPrintingTimeStep(), GetPseudoEcgElectrodePositions(), GetRelativeTolerance(), GetSheetDimensions(), GetSigmaForAdaptivity(), GetSimulationDuration(), GetSlabDimensions(), GetSpaceDimension(), GetStimuli(), GetSurfaceAreaToVolumeRatio(), GetTargetErrorForAdaptivity(), GetUpstrokeTimeMaps(), GetUseAbsoluteTolerance(), GetUseRelativeTolerance(), GetUseStateVariableInterpolation(), GetVisualizeWithCmgui(), GetVisualizeWithMeshalyzer(), GetVisualizeWithParallelVtk(), GetVisualizeWithVtk(), HasDrugDose(), IsAdaptivityParametersPresent(), IsAnyNodalTimeTraceRequested(), IsApdMapsRequested(), IsConductionVelocityMapsRequested(), IsElectrodesPresent(), IsMaxUpstrokeVelocityMapRequested(), IsMeshProvided(), IsOutputVisualizerPresent(), IsPostProcessingSectionPresent(), IsPseudoEcgCalculationRequested(), and IsUpstrokeTimeMapsRequested().
void HeartConfig::CheckSimulationIsDefined | ( | std::string | callingMethod = "" |
) | const [private] |
CheckSimulationIsDefined is a convience method for checking if the "<"Simulation">" element has been defined and therefore is safe to use the Simulation().get() pointer to access other data.
Throws an exception if not.
callingMethod | string describing the get method performing the check. |
Definition at line 581 of file HeartConfig.cpp.
References EXCEPTION, and IsSimulationResumed().
Referenced by GetCellHeterogeneities(), GetCheckpointSimulation(), GetCheckpointTimestep(), GetConductivityHeterogeneities(), GetConductivityHeterogeneitiesProvided(), GetConductivityMedia(), GetCreateFibre(), GetCreateMesh(), GetCreateSheet(), GetCreateSlab(), GetDefaultIonicModel(), GetFibreLength(), GetInterNodeSpace(), GetIonicModelRegions(), GetLoadMesh(), GetMaxCheckpointsOnDisk(), GetMeshName(), GetOutputDirectory(), GetOutputFilenamePrefix(), GetOutputVariables(), GetOutputVariablesProvided(), GetSheetDimensions(), GetSlabDimensions(), GetStimuli(), IsMeshProvided(), and IsOutputVisualizerPresent().
void HeartConfig::CheckResumeSimulationIsDefined | ( | std::string | callingMethod = "" |
) | const [private] |
CheckSimulationIsDefined is a convience method for checking if the "<"ResumeSimulation">" element has been defined and therefore is safe to use the ResumeSimulation().get() pointer to access other data.
Throws an exception if not.
callingMethod | string describing the get method performing the check. |
Definition at line 589 of file HeartConfig.cpp.
References EXCEPTION, and IsSimulationDefined().
Referenced by GetArchivedSimulationDir(), GetCheckpointSimulation(), GetCheckpointTimestep(), and GetMaxCheckpointsOnDisk().
friend class boost::serialization::access [friend] |
Needed for serialization.
Definition at line 86 of file HeartConfig.hpp.
Fixed location of schema files for the different Chaste parameters namespaces.
Definition at line 168 of file HeartConfig.hpp.
Referenced by ReadFile(), SetDefaultSchemaLocations(), and SetFixedSchemaLocations().
boost::shared_ptr<cp::chaste_parameters_type> HeartConfig::mpUserParameters [private] |
Pointer to parameters read from the user's input XML file (override those given by mpDefaultParameters).
Definition at line 1256 of file HeartConfig.hpp.
Referenced by EnsureOutputVisualizerExists(), EnsurePostProcessingSectionPresent(), GetAbsoluteTolerance(), GetApdMaps(), GetArchivedSimulationDir(), GetBathConductivity(), GetCapacitance(), GetCellHeterogeneities(), GetCheckpointSimulation(), GetCheckpointTimestep(), GetConductionVelocityMaps(), GetConductivityHeterogeneities(), GetConductivityHeterogeneitiesProvided(), GetConductivityMedia(), GetCreateFibre(), GetCreateMesh(), GetCreateSheet(), GetCreateSlab(), GetDefaultIonicModel(), GetDomain(), GetDrugDose(), GetElectrodeParameters(), GetExtracellularConductivities(), GetFibreLength(), GetGradationForAdaptivity(), GetIc50Values(), GetInterNodeSpace(), GetIntracellularConductivities(), GetIonicModelRegions(), GetKSPPreconditioner(), GetKSPSolver(), GetLoadMesh(), GetMaxCheckpointsOnDisk(), GetMaxEdgeLengthForAdaptivity(), GetMaxNodesForAdaptivity(), GetMaxUpstrokeVelocityMaps(), GetMeshName(), GetMeshPartitioning(), GetMinEdgeLengthForAdaptivity(), GetNodalTimeTraceRequested(), GetNumberOfAdaptiveSweeps(), GetOdeTimeStep(), GetOutputDirectory(), GetOutputFilenamePrefix(), GetOutputUsingOriginalNodeOrdering(), GetOutputVariables(), GetOutputVariablesProvided(), GetPdeTimeStep(), GetPrintingTimeStep(), GetPseudoEcgElectrodePositions(), GetRelativeTolerance(), GetSheetDimensions(), GetSigmaForAdaptivity(), GetSimulationDuration(), GetSlabDimensions(), GetSpaceDimension(), GetStimuli(), GetSurfaceAreaToVolumeRatio(), GetTargetErrorForAdaptivity(), GetUpstrokeTimeMaps(), GetUseAbsoluteTolerance(), GetUseRelativeTolerance(), GetUseStateVariableInterpolation(), GetVisualizeWithCmgui(), GetVisualizeWithMeshalyzer(), GetVisualizeWithParallelVtk(), GetVisualizeWithVtk(), HasDrugDose(), HeartConfig(), IsAdaptivityParametersPresent(), IsAnyNodalTimeTraceRequested(), IsApdMapsRequested(), IsConductionVelocityMapsRequested(), IsElectrodesPresent(), IsMaxUpstrokeVelocityMapRequested(), IsMeshProvided(), IsOutputVisualizerPresent(), IsPostProcessingSectionPresent(), IsPseudoEcgCalculationRequested(), IsSimulationDefined(), IsSimulationResumed(), IsUpstrokeTimeMapsRequested(), load(), ReadFile(), SetAdaptivityParameters(), SetApdMaps(), SetBathConductivity(), SetCapacitance(), SetCheckpointSimulation(), SetConductionVelocityMaps(), SetConductivityHeterogeneities(), SetConductivityHeterogeneitiesEllipsoid(), SetDefaultIonicModel(), SetDefaultsFile(), SetDomain(), SetDrugDose(), SetElectrodeParameters(), SetExtracellularConductivities(), SetFibreLength(), SetIc50Value(), SetIntracellularConductivities(), SetIonicModelRegions(), SetKSPPreconditioner(), SetKSPSolver(), SetMaxUpstrokeVelocityMaps(), SetMeshFileName(), SetMeshPartitioning(), SetOdePdeAndPrintingTimeSteps(), SetOutputDirectory(), SetOutputFilenamePrefix(), SetOutputUsingOriginalNodeOrdering(), SetOutputVariables(), SetParametersFile(), SetPseudoEcgElectrodePositions(), SetRequestedNodalTimeTraces(), SetSheetDimensions(), SetSimulationDuration(), SetSlabDimensions(), SetSpaceDimension(), SetSurfaceAreaToVolumeRatio(), SetUpstrokeTimeMaps(), SetUseAbsoluteTolerance(), SetUseRelativeTolerance(), SetUseStateVariableInterpolation(), SetVisualizeWithCmgui(), SetVisualizeWithMeshalyzer(), SetVisualizeWithParallelVtk(), SetVisualizeWithVtk(), UpdateParametersFromResumeSimulation(), and Write().
boost::shared_ptr<cp::chaste_parameters_type> HeartConfig::mpDefaultParameters [private] |
Pointer to parameters read from the default input XML file (to be read before mpUserParameters, but may be subsequently overridden).
Definition at line 1261 of file HeartConfig.hpp.
Referenced by GetAbsoluteTolerance(), GetApdMaps(), GetBathConductivity(), GetCapacitance(), GetCellHeterogeneities(), GetCheckpointSimulation(), GetCheckpointTimestep(), GetConductionVelocityMaps(), GetConductivityHeterogeneities(), GetConductivityHeterogeneitiesProvided(), GetConductivityMedia(), GetCreateFibre(), GetCreateMesh(), GetCreateSheet(), GetCreateSlab(), GetDefaultIonicModel(), GetDomain(), GetDrugDose(), GetExtracellularConductivities(), GetFibreLength(), GetGradationForAdaptivity(), GetIc50Values(), GetInterNodeSpace(), GetIntracellularConductivities(), GetIonicModelRegions(), GetKSPPreconditioner(), GetKSPSolver(), GetLoadMesh(), GetMaxCheckpointsOnDisk(), GetMaxEdgeLengthForAdaptivity(), GetMaxNodesForAdaptivity(), GetMaxUpstrokeVelocityMaps(), GetMeshName(), GetMeshPartitioning(), GetMinEdgeLengthForAdaptivity(), GetNodalTimeTraceRequested(), GetNumberOfAdaptiveSweeps(), GetOdeTimeStep(), GetOutputDirectory(), GetOutputFilenamePrefix(), GetOutputUsingOriginalNodeOrdering(), GetOutputVariables(), GetOutputVariablesProvided(), GetPdeTimeStep(), GetPrintingTimeStep(), GetPseudoEcgElectrodePositions(), GetRelativeTolerance(), GetSheetDimensions(), GetSigmaForAdaptivity(), GetSimulationDuration(), GetSlabDimensions(), GetSpaceDimension(), GetStimuli(), GetSurfaceAreaToVolumeRatio(), GetTargetErrorForAdaptivity(), GetUpstrokeTimeMaps(), GetUseAbsoluteTolerance(), GetUseRelativeTolerance(), GetUseStateVariableInterpolation(), GetVisualizeWithCmgui(), GetVisualizeWithMeshalyzer(), GetVisualizeWithParallelVtk(), GetVisualizeWithVtk(), HasDrugDose(), HeartConfig(), IsAdaptivityParametersPresent(), IsAnyNodalTimeTraceRequested(), IsApdMapsRequested(), IsConductionVelocityMapsRequested(), IsElectrodesPresent(), IsMaxUpstrokeVelocityMapRequested(), IsMeshProvided(), IsOutputVisualizerPresent(), IsPostProcessingSectionPresent(), IsPseudoEcgCalculationRequested(), IsUpstrokeTimeMapsRequested(), ReadFile(), SetDefaultsFile(), and Write().
std::auto_ptr< HeartConfig > HeartConfig::mpInstance [static, private] |
The single instance of the class
Definition at line 1264 of file HeartConfig.hpp.
Referenced by HeartConfig(), Instance(), Reset(), and save().
bool HeartConfig::mUseFixedSchemaLocation [private] |
Whether to read the schema location from the XML file (false) or use the schema located at heart/src/io/ChasteParameters.xsd in the Chaste source tree (true).
Definition at line 1270 of file HeartConfig.hpp.
Referenced by HeartConfig(), ReadFile(), and SetUseFixedSchemaLocation().
double HeartConfig::mEpiFraction [private] |
Fraction of epicardial layer
Definition at line 1275 of file HeartConfig.hpp.
Referenced by GetCellHeterogeneities(), GetEpiLayerFraction(), and HeartConfig().
double HeartConfig::mEndoFraction [private] |
Fraction of endocardial layer
Definition at line 1280 of file HeartConfig.hpp.
Referenced by GetCellHeterogeneities(), GetEndoLayerFraction(), and HeartConfig().
double HeartConfig::mMidFraction [private] |
Fraction of midmyocardial layer
Definition at line 1285 of file HeartConfig.hpp.
Referenced by GetCellHeterogeneities(), GetMidLayerFraction(), and HeartConfig().
unsigned HeartConfig::mIndexMid [private] |
Order index in which the midmyocardial heterogeneities are supplied
Definition at line 1290 of file HeartConfig.hpp.
Referenced by GetCellHeterogeneities(), GetMidLayerIndex(), and HeartConfig().
unsigned HeartConfig::mIndexEpi [private] |
Order index in which the epicardial heterogeneities are supplied
Definition at line 1295 of file HeartConfig.hpp.
Referenced by GetCellHeterogeneities(), GetEpiLayerIndex(), and HeartConfig().
unsigned HeartConfig::mIndexEndo [private] |
Order index in which the endocardial heterogeneities are supplied
Definition at line 1300 of file HeartConfig.hpp.
Referenced by GetCellHeterogeneities(), GetEndoLayerIndex(), and HeartConfig().
bool HeartConfig::mUserAskedForCellularTransmuralHeterogeneities [private] |
Flag to check whether the user asked for cellular transmural heterogeneities
Definition at line 1305 of file HeartConfig.hpp.
Referenced by AreCellularTransmuralHeterogeneitiesRequested(), GetCellHeterogeneities(), and HeartConfig().
bool HeartConfig::mUseMassLumping [private] |
Flag telling whether to use mass lumping or not.
Definition at line 1310 of file HeartConfig.hpp.
Referenced by GetUseMassLumping(), and SetUseMassLumping().
bool HeartConfig::mUseMassLumpingForPrecond [private] |
Flag telling whether to use mass lumping in the preconditioner or not.
Definition at line 1315 of file HeartConfig.hpp.
Referenced by GetUseMassLumpingForPrecond(), and SetUseMassLumpingForPrecond().
bool HeartConfig::mUseReactionDiffusionOperatorSplitting [private] |
Whether to use Strang operator splitting of the diffusion and reaction terms (see Set method documentation).
Definition at line 1321 of file HeartConfig.hpp.
Referenced by GetUseReactionDiffusionOperatorSplitting(), HeartConfig(), and SetUseReactionDiffusionOperatorSplitting().
std::map<unsigned, double> HeartConfig::mBathConductivities [private] |
Map defining bath conductivity for multiple bath regions
Definition at line 1326 of file HeartConfig.hpp.
Referenced by GetBathConductivity(), and SetBathMultipleConductivities().
std::set<unsigned> HeartConfig::mTissueIdentifiers [private] |
Mesh region identifiers to be considered as cardiac tissue
Definition at line 1331 of file HeartConfig.hpp.
Referenced by HeartConfig(), rGetTissueIdentifiers(), and SetTissueAndBathIdentifiers().
std::set<unsigned> HeartConfig::mBathIdentifiers [private] |
Mesh region identifiers to be considered as Bath
Definition at line 1336 of file HeartConfig.hpp.
Referenced by HeartConfig(), rGetBathIdentifiers(), and SetTissueAndBathIdentifiers().
bool HeartConfig::mUseFixedNumberIterations [private] |
Whether to use a fixed number of iterations for the linear solver
Definition at line 1341 of file HeartConfig.hpp.
Referenced by GetUseFixedNumberIterationsLinearSolver(), and SetUseFixedNumberIterationsLinearSolver().
unsigned HeartConfig::mEvaluateNumItsEveryNSolves [private] |
Perform a solve with convergence-based stop criteria every n solves to decide how many iterations perform for the next n-1 solves. Default is perfoming a single evaluation at the beginning of the simulation.
Definition at line 1348 of file HeartConfig.hpp.
Referenced by GetEvaluateNumItsEveryNSolves(), and SetUseFixedNumberIterationsLinearSolver().