LifeV
RogersMcCulloch< Mesh, SolverType > Class Template Reference

#include <HeartIonicSolver.hpp>

+ Inheritance diagram for RogersMcCulloch< Mesh, SolverType >:
+ Collaboration diagram for RogersMcCulloch< Mesh, SolverType >:

Public Types

typedef HeartIonicSolver< Mesh, SolverType >::data_Type data_Type
 
typedef HeartIonicSolver< Mesh, SolverType >::vector_Type vector_Type
 
typedef HeartIonicSolver< Mesh, SolverType >::function_Type function_Type
 
- Public Types inherited from HeartIonicSolver< Mesh, SolverType >
typedef HeartIonicData data_Type
 
typedef Real(* function_Type) (const Real &, const Real &, const Real &, const Real &, const ID &)
 
typedef std::function< Real(const markerID_Type &ref, const Real &x, const Real &y, const Real &z, const ID &i) > functorTauClose_Type
 
typedef Mesh mesh_Type
 
typedef SolverType::matrix_type matrix_Type
 
typedef SolverType::vector_type vector_Type
 
typedef SolverType::prec_raw_type precRaw_Type
 
typedef SolverType::prec_type prec_Type
 

Public Member Functions

 RogersMcCulloch (const data_Type &dataType, const Mesh &mesh, FESpace< Mesh, MapEpetra > &uFEspace, Epetra_Comm &comm)
 Constructor. More...
 
virtual ~RogersMcCulloch ()
 
void updateRepeated ()
 
void updateElementSolution (UInt eleID)
 Update the ionic model elvecs. More...
 
void solveIonicModel (const vector_Type &u, const Real timeStep)
 Solves the ionic model. More...
 
void computeIonicCurrent (Real Capacitance, VectorElemental &elvec, VectorElemental &elvec_u, FESpace< Mesh, MapEpetra > &uFESpace)
 Computes the term -1/ u^n (G (1-u^n/vp) (1-u^n/v_th) + eta_1 v^{n+1}) for the PDE righthand side. More...
 
const vector_TypesolutionGatingW () const
 
void initialize ()
 Initialize. More...
 
- Public Member Functions inherited from HeartIonicSolver< Mesh, SolverType >
 HeartIonicSolver (const data_Type &dataType, const Mesh &mesh, FESpace< Mesh, MapEpetra > &uFEspace, Epetra_Comm &comm)
 Constructor. More...
 
virtual ~HeartIonicSolver ()
 Destructor. More...
 
FESpace< Mesh, MapEpetra > & recoveryFESpace ()
 Returns the recovery variable FE space. More...
 
Epetra_Map const & getRepeatedMapEpetra () const
 Return maps. More...
 
MapEpetra const & getMap () const
 

Protected Attributes

vector_Type M_solutionGatingW
 Global solution _w. More...
 
vector_Type M_solutionGatingWRepeated
 
VectorElemental M_elvec
 

Additional Inherited Members

- Data Fields inherited from HeartIonicSolver< Mesh, SolverType >
const data_TypeM_data
 
const Mesh & M_mesh
 
FESpace< Mesh, MapEpetra > & M_uFESpace
 
Epetra_Comm * M_comm
 MPI communicator. More...
 
Int M_me
 
MapEpetra M_localMap
 Map. More...
 
bool M_verbose
 Boolean that indicates if output is sent to cout. More...
 
- Protected Member Functions inherited from HeartIonicSolver< Mesh, SolverType >
UInt solutionUDimension () const
 

Detailed Description

template<typename Mesh, typename SolverType = LifeV::SolverAztecOO>
class LifeV::RogersMcCulloch< Mesh, SolverType >

Definition at line 412 of file HeartIonicSolver.hpp.

Member Typedef Documentation

◆ data_Type

typedef HeartIonicSolver<Mesh, SolverType>::data_Type data_Type

Definition at line 415 of file HeartIonicSolver.hpp.

◆ vector_Type

typedef HeartIonicSolver<Mesh, SolverType>::vector_Type vector_Type

Definition at line 416 of file HeartIonicSolver.hpp.

◆ function_Type

typedef HeartIonicSolver<Mesh, SolverType>::function_Type function_Type

Definition at line 417 of file HeartIonicSolver.hpp.

Constructor & Destructor Documentation

◆ RogersMcCulloch()

RogersMcCulloch ( const data_Type dataType,
const Mesh &  mesh,
FESpace< Mesh, MapEpetra > &  uFEspace,
Epetra_Comm &  comm 
)

Constructor.

Definition at line 460 of file HeartIonicSolver.hpp.

+ Here is the caller graph for this function:

◆ ~RogersMcCulloch()

~RogersMcCulloch ( )
virtual

Definition at line 473 of file HeartIonicSolver.hpp.

Member Function Documentation

◆ updateRepeated()

void updateRepeated ( )
virtual

Implements HeartIonicSolver< Mesh, SolverType >.

Definition at line 478 of file HeartIonicSolver.hpp.

◆ updateElementSolution()

void updateElementSolution ( UInt  eleIDw)
virtual

Update the ionic model elvecs.

Implements HeartIonicSolver< Mesh, SolverType >.

Definition at line 484 of file HeartIonicSolver.hpp.

◆ solveIonicModel()

void solveIonicModel ( const vector_Type u,
const Real  timeStep 
)
virtual

Solves the ionic model.

Solving dw/dt= b/(A*T) (u - u0 - A d w)

Implements HeartIonicSolver< Mesh, SolverType >.

Definition at line 497 of file HeartIonicSolver.hpp.

◆ computeIonicCurrent()

void computeIonicCurrent ( Real  Capacitance,
VectorElemental elvec,
VectorElemental elvec_u,
FESpace< Mesh, MapEpetra > &  uFESpace 
)
virtual

Computes the term -1/ u^n (G (1-u^n/vp) (1-u^n/v_th) + eta_1 v^{n+1}) for the PDE righthand side.

Implements HeartIonicSolver< Mesh, SolverType >.

Definition at line 518 of file HeartIonicSolver.hpp.

◆ solutionGatingW()

const vector_Type& solutionGatingW ( ) const
inline

Definition at line 436 of file HeartIonicSolver.hpp.

◆ initialize()

void initialize ( )
virtual

Initialize.

Implements HeartIonicSolver< Mesh, SolverType >.

Definition at line 555 of file HeartIonicSolver.hpp.

Field Documentation

◆ M_solutionGatingW

vector_Type M_solutionGatingW
protected

Global solution _w.

Definition at line 446 of file HeartIonicSolver.hpp.

◆ M_solutionGatingWRepeated

vector_Type M_solutionGatingWRepeated
protected

Definition at line 447 of file HeartIonicSolver.hpp.

◆ M_elvec

VectorElemental M_elvec
protected

Definition at line 448 of file HeartIonicSolver.hpp.


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