LifeV
|
monodomainSolver - Class featuring the solver for monodomain equations More...
#include <ElectroETAMonodomainSolver.hpp>
Private Member Functions | |
void | setParameters () |
Set default parameters. More... | |
void | init () |
initialization in constructor More... | |
void | init (commPtr_Type comm) |
initialization in constructor More... | |
void | init (meshPtr_Type meshPtr) |
initialization in constructor More... | |
void | init (ionicModelPtr_Type model) |
initialization in constructor More... | |
Type definitions | |
The monodomain equation reads | |
typedef Mesh | mesh_Type |
Mesh. More... | |
typedef std::shared_ptr< mesh_Type > | meshPtr_Type |
typedef VectorEpetra | vector_Type |
Distributed vector // For parallel usage. More... | |
typedef std::shared_ptr< VectorEpetra > | vectorPtr_Type |
typedef vector_Type | solution_Type |
typedef vectorPtr_Type | solutionPtr_Type |
typedef std::vector< vectorPtr_Type > | vectorOfPtr_Type |
typedef MatrixEpetra< Real > | matrix_Type |
Distributed Matrix // For parallel usage. More... | |
typedef std::shared_ptr< matrix_Type > | matrixPtr_Type |
typedef Epetra_Comm | comm_Type |
Communicator to exchange informations among processes. More... | |
typedef std::shared_ptr< comm_Type > | commPtr_Type |
typedef ETFESpace< mesh_Type, MapEpetra, 3, 1 > | ETFESpace_Type |
Expression template scalar finite element space To be used in the expression assembly namespace. More... | |
typedef std::shared_ptr< ETFESpace< mesh_Type, MapEpetra, 3, 1 > > | ETFESpacePtr_Type |
typedef ETFESpace< mesh_Type, MapEpetra, 3, 3 > | ETFESpaceVectorial_Type |
Expression template vectorial finite element space To be used in the expression assembly namespace. More... | |
typedef std::shared_ptr< ETFESpaceVectorial_Type > | ETFESpaceVectorialPtr_Type |
typedef FESpace< mesh_Type, MapEpetra > | feSpace_Type |
Finite element space. More... | |
typedef std::shared_ptr< feSpace_Type > | feSpacePtr_Type |
typedef LinearSolver | linearSolver_Type |
Linear Solver. More... | |
typedef std::shared_ptr< LinearSolver > | linearSolverPtr_Type |
typedef Exporter< mesh_Type > | IOFile_Type |
Exporter to save the solution. More... | |
typedef std::shared_ptr< IOFile_Type > | IOFilePtr_Type |
typedef ExporterData< mesh_Type > | IOData_Type |
Exporter data. More... | |
typedef ExporterEnsight< mesh_Type > | ensightIOFile_Type |
typedef ExporterHDF5< mesh_Type > | hdf5IOFile_Type |
typedef LifeV::Preconditioner | basePrec_Type |
Preconditioner. More... | |
typedef std::shared_ptr< basePrec_Type > | basePrecPtr_Type |
typedef LifeV::PreconditionerML | prec_Type |
MultiLevel Preconditioner. More... | |
typedef std::shared_ptr< prec_Type > | precPtr_Type |
typedef IonicModel | ionicModel_Type |
Ionic model. More... | |
typedef ElectroIonicModel | superIonicModel |
Base class of the ionic model. More... | |
typedef std::shared_ptr< superIonicModel > | ionicModelPtr_Type |
typedef Teuchos::ParameterList | list_Type |
xml list to read parameters More... | |
typedef std::function< Real(const Real &t, const Real &x, const Real &y, const Real &z, const ID &i) > | function_Type |
boost function More... | |
typedef MatrixSmall< 3, 3 > | matrixSmall_Type |
3x3 matrix More... | |
Constructors & Destructor | |
ElectroETAMonodomainSolver () | |
Empty Constructor. More... | |
ElectroETAMonodomainSolver (GetPot &dataFile, ionicModelPtr_Type model, meshPtr_Type meshPtr) | |
Constructor. More... | |
ElectroETAMonodomainSolver (std::string meshName, std::string meshPath, GetPot &dataFile, ionicModelPtr_Type model) | |
Constructor. More... | |
ElectroETAMonodomainSolver (std::string meshName, std::string meshPath, GetPot &dataFile, ionicModelPtr_Type model, commPtr_Type comm) | |
Constructor. More... | |
ElectroETAMonodomainSolver (const ElectroETAMonodomainSolver &solver) | |
Copy Constructor. More... | |
ElectroETAMonodomainSolver< Mesh, IonicModel > & | operator= (const ElectroETAMonodomainSolver &solver) |
Operator=() More... | |
virtual | ~ElectroETAMonodomainSolver () |
Destructor. More... | |
Get Methods | |
const Real & | surfaceVolumeRatio () const |
get the surface to volume ratio More... | |
const Real & | initialTime () const |
get the initial time (by default 0) More... | |
const Real & | timeStep () const |
get the final time More... | |
const Real & | endTime () const |
get the time step More... | |
const VectorSmall< 3 > & | diffusionTensor () const |
get the diagonal diffusion tensor More... | |
const std::string | elementsOrder () const |
get the order of the elements More... | |
const ionicModelPtr_Type | ionicModelPtr () const |
get the pointer to the ionic model More... | |
const commPtr_Type | commPtr () const |
get the pointer to the Epetra communicator More... | |
const meshPtr_Type | localMeshPtr () const |
get the pointer to the partitioned mesh More... | |
meshPtr_Type | localMeshPtr () |
get the pointer to the partitioned mesh More... | |
const meshPtr_Type | fullMeshPtr () const |
get the pointer to the partitioned mesh More... | |
const ETFESpacePtr_Type | ETFESpacePtr () const |
get the pointer to the ETA finite element space More... | |
const feSpacePtr_Type | feSpacePtr () const |
get the pointer to the usual finite element space More... | |
const matrixPtr_Type | massMatrixPtr () const |
get the pointer to the mass matrix More... | |
const matrixPtr_Type | fullMassMatrixPtr () const |
get the pointer to the mass matrix More... | |
const matrixPtr_Type | stiffnessMatrixPtr () const |
get the pointer to the stiffness matrix More... | |
const matrixPtr_Type | globalMatrixPtr () const |
get the pointer to the global matrix More... | |
const vectorPtr_Type | rhsPtr () const |
get the pointer to the right hand side More... | |
const vectorPtr_Type | rhsPtrUnique () const |
get the pointer to the unique version of the right hand side More... | |
const vectorPtr_Type | potentialPtr () const |
get the pointer to the transmembrane potential More... | |
const vectorPtr_Type | fiberPtr () const |
get the pointer to the fiber vector More... | |
vectorPtr_Type | fiberPtr () |
get the pointer to the fiber vector More... | |
const vectorPtr_Type | appliedCurrentPtr () |
get the pointer to the applied current vector More... | |
const linearSolverPtr_Type | linearSolverPtr () const |
get the pointer to the linear solver More... | |
const vectorOfPtr_Type & | globalSolution () const |
get the pointer to the vector of pointers containing the transmembrane potential (at 0) and the gating variables More... | |
const vectorOfPtr_Type & | globalRhs () const |
get the pointer to the vector of pointers containing the rhs for transmembrane potential (at 0) and the gating variables More... | |
bool | lumpedMassMatrix () const |
getter for the boolean to know if we want a lumped matrix More... | |
Set Methods | |
void | setSurfaceVolumeRatio (const Real &surfaceVolumeRatio) |
set the surface to volume ratio More... | |
void | setInitialTime (const Real &initialTime) |
set the starting time More... | |
void | setTimeStep (const Real &timeStep) |
set the ending time More... | |
void | setEndTime (const Real &endTime) |
set the time step More... | |
void | setDiffusionTensor (const VectorSmall< 3 > &diffusionTensor) |
set the diagonal diffusion tensor More... | |
void | setIonicModelPtr (const ionicModelPtr_Type ionicModelPtr) |
set the pointer to the ionic model More... | |
void | setIonicModel (const ionicModel_Type &ionicModel) |
set ionic model More... | |
void | setCommPtr (const commPtr_Type commPtr) |
set the pointer to the Epetra communicator More... | |
void | setComm (const comm_Type &comm) |
set the Epetra communicator More... | |
void | setLocalMeshPtr (const meshPtr_Type localMeshPtr) |
set the pointer to the partitioned mesh More... | |
void | setLocalMesh (const mesh_Type &localMesh) |
set the partitioned mesh More... | |
void | setFullMeshPtr (const meshPtr_Type fullMeshPtr) |
set the pointer to the non partitioned mesh More... | |
void | setFullMesh (const mesh_Type &fullMesh) |
set the non partitioned mesh More... | |
void | setETFESpacePtr (const ETFESpacePtr_Type ETFESpacePtr) |
set the pointer to the ETA fe space More... | |
void | setETFESpace (const ETFESpace_Type &ETFESpace) |
set the scalar ETA fe space More... | |
void | setFeSpacePtr (const feSpacePtr_Type feSpacePtr) |
set the pointer to the usual fe space More... | |
void | setFeSpace (const feSpace_Type &feSpace) |
set the fe space More... | |
void | setMassMatrixPtr (const matrixPtr_Type massMatrixPtr) |
set the pointer to the mass matrix More... | |
void | setMassMatrix (const matrix_Type &massMatrix) |
set the mass matrix More... | |
void | setFullMassMatrixPtr (const matrixPtr_Type fullMassMatrixPtr) |
set the pointer to the full mass matrix More... | |
void | setFullMassMatrix (const matrix_Type &fullMassMatrix) |
set the full mass matrix More... | |
void | setStiffnessMatrixPtr (const matrixPtr_Type stiffnessMatrixPtr) |
set the pointer to the stiffness matrix More... | |
void | setStiffnessMatrix (const matrix_Type &stiffnessMatrix) |
set the stiffness matrix More... | |
void | setGlobalMatrixPtr (const matrixPtr_Type globalMatrixPtr) |
set the pointer to the global matrix More... | |
void | setGlobalMatrix (const matrix_Type &globalMatrix) |
set the global matrix More... | |
void | setRhsPtr (const vectorPtr_Type rhsPtr) |
set the pointer to the right hand side More... | |
void | setRhs (const vector_Type &rhs) |
set the right hand side More... | |
void | setRhsPtrUnique (const vectorPtr_Type rhsPtrUnique) |
set the pointer to the unique version of the right hand side More... | |
void | setRhsUnique (const vector_Type &rhsPtrUnique) |
set the unique version of the right hand side More... | |
void | setPotentialPtr (const vectorPtr_Type potentialPtr) |
set the pointer to the potential More... | |
void | setPotential (const vector_Type &potential) |
set the potential More... | |
void | setAppliedCurrentPtr (const vectorPtr_Type appliedCurrentPtr) |
set the pointer to the applied current vector More... | |
void | setAppliedCurrent (const vector_Type &appliedCurrent) |
set the applied current vector More... | |
void | setLinearSolverPtr (const linearSolverPtr_Type linearSolverPtr) |
set the pointer to the linear solver More... | |
void | setLinearSolver (const linearSolver_Type &linearSolver) |
set the linear solver More... | |
void | setGlobalSolutionPtrs (const vectorOfPtr_Type &globalSolution) |
set the vector of pointers containing the transmembrane potential (at 0) and the gating variables More... | |
void | setGlobalSolution (const vectorOfPtr_Type &globalSolution) |
set the vectors of unknowns: containing the transmembrane potential (at 0) and the gating variables More... | |
void | setVariablePtr (const vectorPtr_Type gatingVariable, int j) |
set the pointer to the [j]-th gating variable More... | |
void | setVariablePtr (const vector_Type &gatingVariable, int j) |
set the [j]-th gating variable More... | |
void | setGlobalRhsPtrs (const vectorOfPtr_Type &globalRhs) |
set the vector of pointers containing the rhs for the transmembrane potential (at 0) and the gating variables More... | |
void | setGlobalRhs (const vectorOfPtr_Type &globalRhs) |
set the vectors containing the rhs for the transmembrane potential (at 0) and the gating variables More... | |
void | setFiberPtr (const vectorPtr_Type fiberPtr) |
set the pointer to the fiber direction vector More... | |
void | setFiber (const vector_Type &fiber) |
set the fiber direction vector More... | |
void | setLumpedMassMatrix (bool isLumped) |
set the the choice of lumping More... | |
Methods | |
virtual void | setup (GetPot &dataFile, short int ionicSize) |
setup method used in the constructor More... | |
virtual void | setup (std::string meshName, std::string meshPath, GetPot &dataFile, short int ionicSize) |
setup method used in the constructor More... | |
void | setupMassMatrix () |
create mass matrix More... | |
void | setupLumpedMassMatrix () |
create mass matrix More... | |
virtual void | setupStiffnessMatrix () |
create stiffness matrix More... | |
void | setupStiffnessMatrix (VectorSmall< 3 > diffusion) |
create stiffness matrix given a diagonal diffusion tensor More... | |
void | setupGlobalMatrix () |
setup the total matrix More... | |
void | setupLinearSolver (GetPot dataFile) |
setup the linear solver More... | |
void | initializePotential (Real k=0.0) |
Initialize the potential to the value k. More... | |
void | initializeAppliedCurrent (Real k=0.0) |
Initialize the applied current to the value k. More... | |
void | setupGlobalSolution (short int ionicSize) |
creates a vector of pointers to store the solution More... | |
void | setupGlobalRhs (short int ionicSize) |
creates a vector of pointers to store the rhs More... | |
void | setParameters (list_Type list) |
Set parameters from an xml file. More... | |
void | partitionMesh (std::string meshName, std::string meshPath) |
partition the mesh More... | |
void | setPotentialFromFunction (function_Type &f, Real time=0.0) |
given a boost function initialize the potential More... | |
void | setAppliedCurrentFromFunction (function_Type &f, Real time=0.0) |
given a boost function initialize the applied current More... | |
void | setAppliedCurrentFromElectroStimulus (ElectroStimulus &stimulus, Real time=0.0) |
given a ElectroStimulus object initialize the applied current More... | |
void | solveOneReactionStepFE (int subiterations=1) |
Solves one reaction step using the forward Euler scheme and N subiterations. More... | |
void | solveOneReactionStepFE (matrix_Type &mass, int subiterations=1) |
Solves one reaction step using the forward Euler scheme. More... | |
void | solveOneReactionStepRL (int subiterations=1) |
Solves one reaction step using the Rush-Larsen scheme. More... | |
void | updateRhs () |
Update the rhs. More... | |
void | solveOneDiffusionStepBDF2 (vectorPtr_Type previousPotentialPtr) |
Solves one diffusion step using the BDF2 scheme. More... | |
void | solveOneDiffusionStepBE () |
Solves one diffusion step using the backward Euler scheme. More... | |
void | solveOneSplittingStep () |
Solve one full step with operator splitting. More... | |
void | solveSplitting () |
Solve the system with operator splitting from M_initialTime to the M_endTime with time step M_timeStep. More... | |
void | solveOneSplittingStep (IOFile_Type &exporter, Real t) |
Solve one full step with operator splitting and export the solution. More... | |
void | solveSplitting (IOFile_Type &exporter) |
Solve the system with operator splitting from M_initialTime to the M_endTime with time step M_timeStep and export the solution. More... | |
void | solveSplitting (IOFile_Type &exporter, Real dt) |
Solve the system with operator splitting from M_initialTime to the M_endTime with time step M_timeStep and export the solution every dt. More... | |
void | setupPotentialExporter (IOFile_Type &exporter, std::string fileName="Potential") |
add to a given exporter the pointer to the potential saved with name fileName More... | |
void | setupExporter (IOFile_Type &exporter, std::string fileName="output", std::string folder="./") |
add to a given exporter the pointer to the potential and to the gating variables saved with name fileName More... | |
void | setupFibers () |
Generates a default fiber direction (0,1,0) More... | |
void | setupFibers (VectorSmall< 3 > fibers) |
Generates the fiber direction given the three component of the vector (F_x,F_y,F_z) More... | |
void | setupFibers (std::string fibersFile, const std::string &filePath="./") |
Imports the fiber direction from a hdf5 file. More... | |
void | setupFibers (std::string fibersFile, std::string directory, int format=0) |
Imports the fiber direction from a vtk file ( format = 0), or text file. More... | |
void | solveOneStepGatingVariablesFE () |
Solves the gating variables with forward Euler. More... | |
void | solveOneStepGatingVariablesRL () |
Solves the gating variables with Rush-Larsen scheme. More... | |
void | computeRhsSVI () |
Compute the rhs using state variable interpolation. More... | |
void | computeRhsICI () |
Compute the rhs using ionic current interpolation. More... | |
void | computeRhsICIWithFullMass () |
Compute the rhs using ionic current interpolation. More... | |
virtual void | solveOneICIStep () |
Solve one full step with ionic current interpolation. More... | |
void | solveOneICIStepWithFullMass () |
solves using ionic current interpolation More... | |
void | solveOneSVIStep () |
Solve one full step with state variable interpolation. More... | |
void | solveICI () |
solve system using ICI from M_initialTime to the M_endTime with time step M_timeStep More... | |
void | solveSVI () |
solve system using SVI from M_initialTime to the M_endTime with time step M_timeStep More... | |
void | solveOneICIStep (IOFile_Type &exporter, Real t) |
Solve one full step with ionic current interpolation and export the solution. More... | |
void | solveOneICIStepWithFullMass (IOFile_Type &exporter, Real t) |
Solve one full step with ionic current interpolation and export the solution. More... | |
void | solveOneSVIStep (IOFile_Type &exporter, Real t) |
Solve one full step with ionic current interpolation and export the solution. More... | |
void | solveICI (IOFile_Type &exporter) |
solve system using ICI from M_initialTime to the M_endTime with time step M_timeStep and export the solution More... | |
void | solveSVI (IOFile_Type &exporter) |
solve system using SVI from M_initialTime to the M_endTime with time step M_timeStep and export the solution More... | |
void | solveICI (IOFile_Type &exporter, Real dt) |
Solve the system using ICI from M_initialTime to the M_endTime with time step M_timeStep and export the solution every dt. More... | |
void | solveICIWithFullMass (IOFile_Type &exporter, Real dt) |
Solve the system using ICI from M_initialTime to the M_endTime with time step M_timeStep and export the solution every dt. More... | |
void | solveSVI (IOFile_Type &exporter, Real dt) |
Solve the using SVI from M_initialTime to the M_endTime with time step M_timeStep and export the solution every dt. More... | |
void | exportFiberDirection (std::string postDir="./") |
Generates a file where the fiber direction is saved. More... | |
void | exportFiberDirection (IOFile_Type &exporter) |
save the fiber direction into the given exporter More... | |
void | exportSolution (IOFile_Type &exporter, Real t) |
Save the solution in the exporter. More... | |
void | importSolution (std::string prefix, std::string postDir, Real time=0.0) |
Importer: lead a solution from an hdf5 file. More... | |
void | setInitialConditions () |
Initialize the solution with resting values of the ionic model. More... | |
void | registerActivationTime (vector_Type &activationTimeVector, Real time, Real threshold=0.0) |
save the fiber direction into the given exporter More... | |
void | setVerbosity (bool verbose) |
set the verbosity More... | |
monodomainSolver - Class featuring the solver for monodomain equations
Definition at line 87 of file ElectroETAMonodomainSolver.hpp.
typedef Mesh mesh_Type |
Mesh.
Definition at line 103 of file ElectroETAMonodomainSolver.hpp.
typedef std::shared_ptr<mesh_Type> meshPtr_Type |
Definition at line 105 of file ElectroETAMonodomainSolver.hpp.
typedef VectorEpetra vector_Type |
Distributed vector // For parallel usage.
Definition at line 108 of file ElectroETAMonodomainSolver.hpp.
typedef std::shared_ptr<VectorEpetra> vectorPtr_Type |
Definition at line 110 of file ElectroETAMonodomainSolver.hpp.
typedef vector_Type solution_Type |
Definition at line 112 of file ElectroETAMonodomainSolver.hpp.
typedef vectorPtr_Type solutionPtr_Type |
Definition at line 114 of file ElectroETAMonodomainSolver.hpp.
typedef std::vector<vectorPtr_Type> vectorOfPtr_Type |
Definition at line 116 of file ElectroETAMonodomainSolver.hpp.
typedef MatrixEpetra<Real> matrix_Type |
Distributed Matrix // For parallel usage.
Definition at line 119 of file ElectroETAMonodomainSolver.hpp.
typedef std::shared_ptr<matrix_Type> matrixPtr_Type |
Definition at line 121 of file ElectroETAMonodomainSolver.hpp.
typedef Epetra_Comm comm_Type |
Communicator to exchange informations among processes.
Definition at line 124 of file ElectroETAMonodomainSolver.hpp.
typedef std::shared_ptr<comm_Type> commPtr_Type |
Definition at line 126 of file ElectroETAMonodomainSolver.hpp.
typedef ETFESpace<mesh_Type, MapEpetra, 3, 1> ETFESpace_Type |
Expression template scalar finite element space To be used in the expression assembly namespace.
Definition at line 130 of file ElectroETAMonodomainSolver.hpp.
typedef std::shared_ptr<ETFESpace<mesh_Type, MapEpetra, 3, 1> > ETFESpacePtr_Type |
Definition at line 132 of file ElectroETAMonodomainSolver.hpp.
typedef ETFESpace<mesh_Type, MapEpetra, 3, 3> ETFESpaceVectorial_Type |
Expression template vectorial finite element space To be used in the expression assembly namespace.
Definition at line 136 of file ElectroETAMonodomainSolver.hpp.
typedef std::shared_ptr<ETFESpaceVectorial_Type> ETFESpaceVectorialPtr_Type |
Definition at line 138 of file ElectroETAMonodomainSolver.hpp.
typedef FESpace<mesh_Type, MapEpetra> feSpace_Type |
Finite element space.
Definition at line 141 of file ElectroETAMonodomainSolver.hpp.
typedef std::shared_ptr<feSpace_Type> feSpacePtr_Type |
Definition at line 143 of file ElectroETAMonodomainSolver.hpp.
typedef LinearSolver linearSolver_Type |
Linear Solver.
Definition at line 146 of file ElectroETAMonodomainSolver.hpp.
typedef std::shared_ptr<LinearSolver> linearSolverPtr_Type |
Definition at line 148 of file ElectroETAMonodomainSolver.hpp.
typedef Exporter<mesh_Type> IOFile_Type |
Exporter to save the solution.
Definition at line 151 of file ElectroETAMonodomainSolver.hpp.
typedef std::shared_ptr<IOFile_Type> IOFilePtr_Type |
Definition at line 153 of file ElectroETAMonodomainSolver.hpp.
typedef ExporterData<mesh_Type> IOData_Type |
Exporter data.
Definition at line 156 of file ElectroETAMonodomainSolver.hpp.
typedef ExporterEnsight<mesh_Type> ensightIOFile_Type |
Definition at line 158 of file ElectroETAMonodomainSolver.hpp.
typedef ExporterHDF5< mesh_Type > hdf5IOFile_Type |
Definition at line 161 of file ElectroETAMonodomainSolver.hpp.
typedef LifeV::Preconditioner basePrec_Type |
Definition at line 165 of file ElectroETAMonodomainSolver.hpp.
typedef std::shared_ptr<basePrec_Type> basePrecPtr_Type |
Definition at line 167 of file ElectroETAMonodomainSolver.hpp.
typedef LifeV::PreconditionerML prec_Type |
MultiLevel Preconditioner.
Definition at line 170 of file ElectroETAMonodomainSolver.hpp.
typedef std::shared_ptr<prec_Type> precPtr_Type |
Definition at line 172 of file ElectroETAMonodomainSolver.hpp.
typedef IonicModel ionicModel_Type |
Ionic model.
Definition at line 175 of file ElectroETAMonodomainSolver.hpp.
typedef ElectroIonicModel superIonicModel |
Base class of the ionic model.
Definition at line 178 of file ElectroETAMonodomainSolver.hpp.
typedef std::shared_ptr<superIonicModel> ionicModelPtr_Type |
Definition at line 180 of file ElectroETAMonodomainSolver.hpp.
typedef Teuchos::ParameterList list_Type |
xml list to read parameters
Definition at line 183 of file ElectroETAMonodomainSolver.hpp.
typedef std::function< Real (const Real& t, const Real& x, const Real& y, const Real& z, const ID& i) > function_Type |
boost function
Definition at line 190 of file ElectroETAMonodomainSolver.hpp.
typedef MatrixSmall<3, 3> matrixSmall_Type |
3x3 matrix
Definition at line 193 of file ElectroETAMonodomainSolver.hpp.
Empty Constructor.
Constructors.
Empty constructor
Definition at line 1419 of file ElectroETAMonodomainSolver.hpp.
ElectroETAMonodomainSolver | ( | GetPot & | dataFile, |
ionicModelPtr_Type | model, | ||
meshPtr_Type | meshPtr | ||
) |
Constructor.
GetPot | datafile (for preconditioner) |
std::shared_ptr<IonicModel> | chosen ionic model pointer |
std::shared_ptr<Mesh> | Pointer to the partitioned mesh |
Definition at line 1451 of file ElectroETAMonodomainSolver.hpp.
ElectroETAMonodomainSolver | ( | std::string | meshName, |
std::string | meshPath, | ||
GetPot & | dataFile, | ||
ionicModelPtr_Type | model | ||
) |
Constructor.
constructor
meshName | file name of the mesh |
meshPath | path to the mesh |
datafile | GetPot file to setup the preconditioner |
model | shared pointer to the chosen ionic model |
Definition at line 1428 of file ElectroETAMonodomainSolver.hpp.
ElectroETAMonodomainSolver | ( | std::string | meshName, |
std::string | meshPath, | ||
GetPot & | dataFile, | ||
ionicModelPtr_Type | model, | ||
commPtr_Type | comm | ||
) |
Constructor.
constructor with communicator
string | file name of the mesh |
string | path to the mesh |
GetPot | datafile (for preconditioner) |
std::shared_ptr<IonicModel> | chosen ionic model pointer |
std::shared_ptr<Epetra_Comm> | Epetra communicator |
Definition at line 1440 of file ElectroETAMonodomainSolver.hpp.
ElectroETAMonodomainSolver | ( | const ElectroETAMonodomainSolver< Mesh, IonicModel > & | solver | ) |
Copy Constructor.
Copy constructor.
ElectroETAmonodomainSolver | object |
Definition at line 1462 of file ElectroETAMonodomainSolver.hpp.
|
inlinevirtual |
Destructor.
Definition at line 249 of file ElectroETAMonodomainSolver.hpp.
ElectroETAMonodomainSolver< Mesh, IonicModel > & operator= | ( | const ElectroETAMonodomainSolver< Mesh, IonicModel > & | solver | ) |
Operator=()
Assignment operator.
ElectroETAmonodomainSolver | object |
Definition at line 1497 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the surface to volume ratio
Not used in the code ( implicit definition inside the diffusion tensor)
Definition at line 262 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the initial time (by default 0)
Definition at line 268 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the final time
Definition at line 274 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the time step
Definition at line 280 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the diagonal diffusion tensor
Definition at line 286 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the order of the elements
Definition at line 292 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the ionic model
Definition at line 298 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the Epetra communicator
Definition at line 304 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the partitioned mesh
Definition at line 310 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the partitioned mesh
Definition at line 316 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the partitioned mesh
Definition at line 322 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the ETA finite element space
Definition at line 328 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the usual finite element space
Definition at line 334 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the mass matrix
Definition at line 340 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the mass matrix
Definition at line 346 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the stiffness matrix
Definition at line 352 of file ElectroETAMonodomainSolver.hpp.
|
inline |
|
inline |
get the pointer to the right hand side
Definition at line 369 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the unique version of the right hand side
Definition at line 375 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the transmembrane potential
Definition at line 381 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the fiber vector
Definition at line 387 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the fiber vector
Definition at line 393 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the applied current vector
Definition at line 399 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the linear solver
Definition at line 405 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the vector of pointers containing the transmembrane potential (at 0) and the gating variables
Definition at line 411 of file ElectroETAMonodomainSolver.hpp.
|
inline |
get the pointer to the vector of pointers containing the rhs for transmembrane potential (at 0) and the gating variables
Definition at line 417 of file ElectroETAMonodomainSolver.hpp.
|
inline |
getter for the boolean to know if we want a lumped matrix
Definition at line 423 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the surface to volume ratio
surfaceVolumeRatio | surface to volume ratio |
Definition at line 436 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the starting time
initialTime | initial time |
Definition at line 445 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the ending time
timeStep | ending time |
Definition at line 454 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the time step
endTime | time step |
Definition at line 463 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the diagonal diffusion tensor
diffusionTensor | diagonal diffusion tensor |
Definition at line 472 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the ionic model
ionicModelPtr | pointer to the ionic model |
Definition at line 481 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set ionic model
ionicModel | ionic model |
Definition at line 490 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the Epetra communicator
commPtr | pointer to the Epetra communicator |
Definition at line 500 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the Epetra communicator
comm | Epetra communicator |
Definition at line 508 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the partitioned mesh
localMeshPtr | pointer to the partitioned mesh |
Definition at line 517 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the partitioned mesh
localMesh | partitioned mesh |
Definition at line 526 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the non partitioned mesh
fullMeshPtr | pointer to the partitioned mesh |
Definition at line 536 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the non partitioned mesh
fullMesh | pointer to the partitioned mesh |
Definition at line 544 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the ETA fe space
ETFESpacePtr | pointer to the ETA fe space |
Definition at line 554 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the scalar ETA fe space
ETFESpace | scalar ETA fe space |
Definition at line 563 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the usual fe space
feSpacePtr | pointer to the usual fe space |
Definition at line 572 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the fe space
feSpace | the fe space |
Definition at line 581 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the mass matrix
massMatrixPtr | pointer to the mass matrix |
Definition at line 591 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the mass matrix
massMatrix | the mass matrix |
Definition at line 600 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the full mass matrix
massMatrixPtr | pointer to the mass matrix |
Definition at line 609 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the full mass matrix
massMatrix | the mass matrix |
Definition at line 618 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the stiffness matrix
stiffnessMatrixPtr | pointer to the stiffness matrix |
Definition at line 627 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the stiffness matrix
stiffnessMatrix | the stiffness matrix |
Definition at line 636 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the global matrix
globalMatrix | pointer to the global matrix |
Definition at line 646 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the global matrix
globalMatrix | the global matrix |
Definition at line 655 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the right hand side
rhsPtr | pointer to the right hand side |
Definition at line 665 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the right hand side
rhs | the right hand side |
Definition at line 674 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the unique version of the right hand side
rhsPtrUnique | pointer to the unique version of the right hand side |
Definition at line 684 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the unique version of the right hand side
rhsPtrUnique | the unique version of the right hand side |
Definition at line 694 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the potential
potentialPtr | pointer to the potential |
Definition at line 703 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the potential
potential | the potential |
Definition at line 713 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the applied current vector
appliedCurrentPtr | pointer to the applied current vector |
Definition at line 722 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the applied current vector
appliedCurrent | the applied current vector |
Definition at line 731 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the linear solver
linearSolverPtr | pointer to the linear solver |
Definition at line 740 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the linear solver
linearSolver | the linear solver |
Definition at line 749 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the vector of pointers containing the transmembrane potential (at 0) and the gating variables
globalSolution | vector of pointers containing the transmembrane potential (at 0) and the gating variables |
Definition at line 758 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the vectors of unknowns: containing the transmembrane potential (at 0) and the gating variables
p | vector of pointers containing the transmembrane potential (at 0) and the gating variables |
Definition at line 767 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the [j]-th gating variable
gatingVariable | pointer to the gating variable |
j | index of the gating variable |
Definition at line 780 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the [j]-th gating variable
gatingVariable | the gating variable |
j | index of the gating variable |
Definition at line 790 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the vector of pointers containing the rhs for the transmembrane potential (at 0) and the gating variables
globalRhs | vector of pointers containing the rhs for the transmembrane potential (at 0) and the gating variables |
Definition at line 799 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the vectors containing the rhs for the transmembrane potential (at 0) and the gating variables
globalRhs | vector of pointers containing the rhs for the transmembrane potential (at 0) and the gating variables |
Definition at line 808 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the pointer to the fiber direction vector
fiberPtr | pointer to the fiber direction vector |
Definition at line 820 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the fiber direction vector
fiber | the fiber direction vector |
Definition at line 829 of file ElectroETAMonodomainSolver.hpp.
|
inline |
set the the choice of lumping
isLumped | true if you want to lump the mass matrix |
Definition at line 838 of file ElectroETAMonodomainSolver.hpp.
|
virtual |
setup method used in the constructor
dataFile | needed to set up the preconditioner |
ionicSize | number of equation in the ionic model |
Definition at line 1619 of file ElectroETAMonodomainSolver.hpp.
|
virtual |
setup method used in the constructor
meshFile | filename of the mesh |
meshPath | directory where we have the mesh |
dataFile | needed to set up the preconditioner |
ionicSize | number of equation in the ionic model |
Definition at line 1659 of file ElectroETAMonodomainSolver.hpp.
void setupMassMatrix | ( | ) |
create mass matrix
Computes the mass matrix calling different methods if the mass should be lumped
Definition at line 1670 of file ElectroETAMonodomainSolver.hpp.
void setupLumpedMassMatrix | ( | ) |
create mass matrix
create mass matrix
Computes the lumped mass matrix by nodal integration.
Definition at line 1697 of file ElectroETAMonodomainSolver.hpp.
|
virtual |
create stiffness matrix
Computes the stiffness matrix calling different methods
Definition at line 1719 of file ElectroETAMonodomainSolver.hpp.
void setupStiffnessMatrix | ( | VectorSmall< 3 > | diffusion | ) |
create stiffness matrix given a diagonal diffusion tensor
diffusion | vector defining the conductivities |
Definition at line 1725 of file ElectroETAMonodomainSolver.hpp.
void setupGlobalMatrix | ( | ) |
setup the total matrix
where is the membrane capacitance, t the timestep, M is the mass matrix and K is the stiffness matrix which depends on the fiber direction.
Definition at line 1759 of file ElectroETAMonodomainSolver.hpp.
void setupLinearSolver | ( | GetPot | dataFile | ) |
setup the linear solver
A file named MonodomainSolverParamList.xml must be in the execution folder with the parameters to set the linear solver
dataFile | GetPot to setup the preconditioners |
Definition at line 1768 of file ElectroETAMonodomainSolver.hpp.
|
inline |
Initialize the potential to the value k.
k | value to intialize the potential |
Definition at line 913 of file ElectroETAMonodomainSolver.hpp.
|
inline |
Initialize the applied current to the value k.
k | value to intialize the applied current |
Definition at line 922 of file ElectroETAMonodomainSolver.hpp.
void setupGlobalSolution | ( | short int | ionicSize | ) |
creates a vector of pointers to store the solution
The first pointer points to the vector of the transmembrane potential, while the others point to the gating variables
ionicSize | number of unknowns in the ionic model |
Definition at line 1791 of file ElectroETAMonodomainSolver.hpp.
void setupGlobalRhs | ( | short int | ionicSize | ) |
creates a vector of pointers to store the rhs
The first pointer points to the rhs of the transmembrane potential, while the others point to the rhs of the gating variables
ionicSize | number of unknowns in the ionic model |
Definition at line 1803 of file ElectroETAMonodomainSolver.hpp.
void setParameters | ( | list_Type | list | ) |
Set parameters from an xml file.
list | Teuchos parameter list with the monodomain parameters |
Definition at line 2356 of file ElectroETAMonodomainSolver.hpp.
|
inline |
partition the mesh
meshName | filename of the mesh |
meshPath | path to the folder where you have the mesh |
Definition at line 954 of file ElectroETAMonodomainSolver.hpp.
|
inline |
given a boost function initialize the potential
f | function defining the potential |
time | time at which we want to evaluate the function |
Definition at line 964 of file ElectroETAMonodomainSolver.hpp.
|
inline |
given a boost function initialize the applied current
f | function defining the applied current |
time | time at which we want to evaluate the function |
Definition at line 976 of file ElectroETAMonodomainSolver.hpp.
|
inline |
given a ElectroStimulus object initialize the applied current
stimulus | pacing protocol |
time | time at which we want to evaluate the stimulus |
Definition at line 987 of file ElectroETAMonodomainSolver.hpp.
void solveOneReactionStepFE | ( | int | subiterations = 1 | ) |
Solves one reaction step using the forward Euler scheme and N subiterations.
int | number of subiterations |
Definition at line 1845 of file ElectroETAMonodomainSolver.hpp.
void solveOneReactionStepFE | ( | matrix_Type & | mass, |
int | subiterations = 1 |
||
) |
Solves one reaction step using the forward Euler scheme.
matrix_Type | full mass matrix |
int | number of subiterations |
Definition at line 1863 of file ElectroETAMonodomainSolver.hpp.
void solveOneReactionStepRL | ( | int | subiterations = 1 | ) |
Solves one reaction step using the Rush-Larsen scheme.
int | number of subiterations |
Definition at line 1886 of file ElectroETAMonodomainSolver.hpp.
|
inline |
void solveOneDiffusionStepBDF2 | ( | vectorPtr_Type | previousPotentialPtr | ) |
Solves one diffusion step using the BDF2 scheme.
previousPotentialPtr | potential at n-1 |
Definition at line 1906 of file ElectroETAMonodomainSolver.hpp.
void solveOneDiffusionStepBE | ( | ) |
Solves one diffusion step using the backward Euler scheme.
Definition at line 1925 of file ElectroETAMonodomainSolver.hpp.
void solveOneSplittingStep | ( | ) |
Solve one full step with operator splitting.
Definition at line 1932 of file ElectroETAMonodomainSolver.hpp.
void solveSplitting | ( | ) |
Solve the system with operator splitting from M_initialTime to the M_endTime with time step M_timeStep.
Definition at line 1949 of file ElectroETAMonodomainSolver.hpp.
void solveOneSplittingStep | ( | IOFile_Type & | exporter, |
Real | t | ||
) |
Solve one full step with operator splitting and export the solution.
exporter | where you want to save the solution |
t | time at which we save the solution |
Definition at line 1941 of file ElectroETAMonodomainSolver.hpp.
void solveSplitting | ( | IOFile_Type & | exporter | ) |
Solve the system with operator splitting from M_initialTime to the M_endTime with time step M_timeStep and export the solution.
exporter | where you want to save the solution |
Definition at line 1959 of file ElectroETAMonodomainSolver.hpp.
void solveSplitting | ( | IOFile_Type & | exporter, |
Real | dt | ||
) |
Solve the system with operator splitting from M_initialTime to the M_endTime with time step M_timeStep and export the solution every dt.
exporter | where you want to save the solution |
t | time at which we save the solution |
Definition at line 1973 of file ElectroETAMonodomainSolver.hpp.
void setupPotentialExporter | ( | IOFile_Type & | exporter, |
std::string | fileName = "Potential" |
||
) |
add to a given exporter the pointer to the potential saved with name fileName
exporter | where you want to save the solution |
t | time at which we save the solution |
Definition at line 1816 of file ElectroETAMonodomainSolver.hpp.
void setupExporter | ( | IOFile_Type & | exporter, |
std::string | fileName = "output" , |
||
std::string | folder = "./" |
||
) |
add to a given exporter the pointer to the potential and to the gating variables saved with name fileName
exporter | where you want to save the solution |
fileName | name of the file we wish to export |
folder | directory where to save the solution |
Definition at line 1827 of file ElectroETAMonodomainSolver.hpp.
void setupFibers | ( | ) |
Generates a default fiber direction (0,1,0)
Definition at line 1535 of file ElectroETAMonodomainSolver.hpp.
void setupFibers | ( | VectorSmall< 3 > | fibers | ) |
Generates the fiber direction given the three component of the vector (F_x,F_y,F_z)
fibers | vector with the fiber direction |
Definition at line 1555 of file ElectroETAMonodomainSolver.hpp.
|
inline |
Imports the fiber direction from a hdf5 file.
fibersFile | name of the hdf5 file with the fibers |
Definition at line 1125 of file ElectroETAMonodomainSolver.hpp.
|
inline |
Imports the fiber direction from a vtk file ( format = 0), or text file.
fibersFile | name of the file with the fibers |
directory | folder in which we have the file for the fibers |
format | format in which fibers are saved |
format 0 = fibers saved as (fx, fy, fz) in each row
format 1 = fibers saved as fx in each row for all the mesh fy in each row for all the mesh fz in each row for all the mesh
Definition at line 1142 of file ElectroETAMonodomainSolver.hpp.
void solveOneStepGatingVariablesFE | ( | ) |
Solves the gating variables with forward Euler.
Definition at line 2002 of file ElectroETAMonodomainSolver.hpp.
void solveOneStepGatingVariablesRL | ( | ) |
Solves the gating variables with Rush-Larsen scheme.
Definition at line 2014 of file ElectroETAMonodomainSolver.hpp.
void computeRhsSVI | ( | ) |
Compute the rhs using state variable interpolation.
Definition at line 2053 of file ElectroETAMonodomainSolver.hpp.
void computeRhsICI | ( | ) |
Compute the rhs using ionic current interpolation.
Definition at line 2030 of file ElectroETAMonodomainSolver.hpp.
void computeRhsICIWithFullMass | ( | ) |
Compute the rhs using ionic current interpolation.
This method is useful to solve ICI without lumping the mass matrix in fron of the reaction term. Lump the mass matrix, and pass as argument a full mass matrix
Definition at line 2038 of file ElectroETAMonodomainSolver.hpp.
|
virtual |
Solve one full step with ionic current interpolation.
where ${I}$ is the vector of the ionic currents $I_j = I_{ion}(V_j^n)$
Definition at line 2065 of file ElectroETAMonodomainSolver.hpp.
void solveOneICIStepWithFullMass | ( | ) |
solves using ionic current interpolation
This method is useful to solve ICI without lumping the mass matrix in front of the reaction term. Lump the mass matrix, and pass as argument a full mass matrix
Definition at line 2073 of file ElectroETAMonodomainSolver.hpp.
void solveOneSVIStep | ( | ) |
Solve one full step with state variable interpolation.
Definition at line 2081 of file ElectroETAMonodomainSolver.hpp.
void solveICI | ( | ) |
solve system using ICI from M_initialTime to the M_endTime with time step M_timeStep
Definition at line 2089 of file ElectroETAMonodomainSolver.hpp.
void solveSVI | ( | ) |
solve system using SVI from M_initialTime to the M_endTime with time step M_timeStep
Definition at line 2100 of file ElectroETAMonodomainSolver.hpp.
void solveOneICIStep | ( | IOFile_Type & | exporter, |
Real | t | ||
) |
Solve one full step with ionic current interpolation and export the solution.
where ${I}$ is the vector of the ionic currents $I_j = I_{ion}(V_j^n)$
exporter | where we want to save the solution |
t | time at wich we save the solution |
Definition at line 2111 of file ElectroETAMonodomainSolver.hpp.
void solveOneICIStepWithFullMass | ( | IOFile_Type & | exporter, |
Real | t | ||
) |
Solve one full step with ionic current interpolation and export the solution.
where ${I}$ is the vector of the ionic currents $I_j = I_{ion}(V_j^n)$ This method is useful to solve ICI without lumping the mass matrix in front of the reaction term. Lump the mass matrix, and pass as argument a full mass matrix
exporter | where we want to save the solution |
t | time at wich we save the solution |
Definition at line 2119 of file ElectroETAMonodomainSolver.hpp.
void solveOneSVIStep | ( | IOFile_Type & | exporter, |
Real | t | ||
) |
Solve one full step with ionic current interpolation and export the solution.
exporter | where we want to save the solution |
t | time at wich we save the solution |
Definition at line 2127 of file ElectroETAMonodomainSolver.hpp.
void solveICI | ( | IOFile_Type & | exporter | ) |
solve system using ICI from M_initialTime to the M_endTime with time step M_timeStep and export the solution
exporter | where we want to save the solution |
Definition at line 2135 of file ElectroETAMonodomainSolver.hpp.
void solveSVI | ( | IOFile_Type & | exporter | ) |
solve system using SVI from M_initialTime to the M_endTime with time step M_timeStep and export the solution
exporter | where we want to save the solution |
Definition at line 2153 of file ElectroETAMonodomainSolver.hpp.
void solveICI | ( | IOFile_Type & | exporter, |
Real | dt | ||
) |
Solve the system using ICI from M_initialTime to the M_endTime with time step M_timeStep and export the solution every dt.
exporter | where we want to save the solution |
t | time at wich we save the solution |
Definition at line 2165 of file ElectroETAMonodomainSolver.hpp.
void solveICIWithFullMass | ( | IOFile_Type & | exporter, |
Real | dt | ||
) |
Solve the system using ICI from M_initialTime to the M_endTime with time step M_timeStep and export the solution every dt.
This method is useful to solve ICI without lumping the mass matrix in front of the reaction term. Lump the mass matrix, and pass as argument a full mass matrix
exporter | where we want to save the solution |
t | time at wich we save the solution |
Definition at line 2201 of file ElectroETAMonodomainSolver.hpp.
void solveSVI | ( | IOFile_Type & | exporter, |
Real | dt | ||
) |
Solve the using SVI from M_initialTime to the M_endTime with time step M_timeStep and export the solution every dt.
exporter | where we want to save the solution |
t | time at wich we save the solution |
Definition at line 2243 of file ElectroETAMonodomainSolver.hpp.
void exportFiberDirection | ( | std::string | postDir = "./" | ) |
Generates a file where the fiber direction is saved.
postDir | directory in which we save the fibers |
Definition at line 1568 of file ElectroETAMonodomainSolver.hpp.
void exportFiberDirection | ( | IOFile_Type & | exporter | ) |
save the fiber direction into the given exporter
exporter | where we want to save the solution |
Definition at line 1586 of file ElectroETAMonodomainSolver.hpp.
|
inline |
Save the solution in the exporter.
exporter | where we want to save the solution |
t | time at wich we save the solution |
Definition at line 1288 of file ElectroETAMonodomainSolver.hpp.
void importSolution | ( | std::string | prefix, |
std::string | postDir, | ||
Real | time = 0.0 |
||
) |
Importer: lead a solution from an hdf5 file.
prefix | name of the hdf5 file to import |
postDir | folder where the file to import is |
time | time at wich we want to import the solution |
Definition at line 1599 of file ElectroETAMonodomainSolver.hpp.
|
inline |
Initialize the solution with resting values of the ionic model.
Definition at line 1302 of file ElectroETAMonodomainSolver.hpp.
void registerActivationTime | ( | vector_Type & | activationTimeVector, |
Real | time, | ||
Real | threshold = 0.0 |
||
) |
save the fiber direction into the given exporter
The activationTimeVector is required to be initialized with negative values
activationTimeVector | vector where we register the activation time |
time | time at which we are |
threshold | value for which we consider activation |
Definition at line 2273 of file ElectroETAMonodomainSolver.hpp.
void setVerbosity | ( | bool | verbose | ) |
set the verbosity
verbose | show additional output |
Definition at line 2372 of file ElectroETAMonodomainSolver.hpp.
|
private |
Set default parameters.
Definition at line 2341 of file ElectroETAMonodomainSolver.hpp.
|
private |
initialization in constructor
Definition at line 2291 of file ElectroETAMonodomainSolver.hpp.
|
private |
initialization in constructor
comm | epetra communicator |
Definition at line 2321 of file ElectroETAMonodomainSolver.hpp.
|
private |
initialization in constructor
meshPtr | pointer to the mesh |
Definition at line 2330 of file ElectroETAMonodomainSolver.hpp.
|
private |
initialization in constructor
model | pointer to the ionic model |
Definition at line 2313 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1354 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1356 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1358 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1360 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1362 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1364 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1366 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1368 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1370 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1372 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1374 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1376 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1378 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1380 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1382 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1384 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1386 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1388 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1390 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1393 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1396 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1398 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1400 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1402 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1404 of file ElectroETAMonodomainSolver.hpp.
|
protected |
Definition at line 1406 of file ElectroETAMonodomainSolver.hpp.