openCARP
Doxygen code documentation for the open cardiac electrophysiology simulator openCARP
Public Types | Public Member Functions | Public Attributes | List of all members
opencarp::parabolic_solver Class Reference

#include <electrics.h>

Collaboration diagram for opencarp::parabolic_solver:

Public Types

enum  parabolic_t { EXPLICIT = 0, CN = 1, O2dT = 2 }
 

Public Member Functions

 ~parabolic_solver ()
 
void init ()
 
void rebuild_matrices (MaterialType *mtype, limpet::MULTI_IF &miif, FILE_SPEC logger)
 
void solve (sf_vec &phie_i)
 

Public Attributes

sf_vecIIon = nullptr
 ionic currents More...
 
sf_vecVmv = nullptr
 global Vm vector More...
 
sf_vecold_vm = nullptr
 older Vm needed for 2nd order dT More...
 
sf_veckappa_i = nullptr
 scaling vector for intracellular mass matrix, M More...
 
sf_vectmp_i1 = nullptr
 scratch vector for i-grid More...
 
sf_vectmp_i2 = nullptr
 scratch vector for i-grid More...
 
sf_vecIrhs = nullptr
 weighted transmembrane currents More...
 
sf_vecinv_mass_diag = nullptr
 inverse diagonal of mass matrix, for EXPLICIT solving More...
 
sf_matu_mass_i = nullptr
 unscaled mass matrix, M More...
 
sf_matmass_i = nullptr
 lumped $\kappa M$ for parabolic problem More...
 
sf_matrhs_parab = nullptr
 rhs matrix to solve parabolic More...
 
sf_matlhs_parab = nullptr
 lhs matrix (CN) to solve parabolic More...
 
sf_matphie_recov_mat = nullptr
 rhs for phie recovery with pseudo bidomain More...
 
sf_sollin_solver = nullptr
 petsc or ginkgo lin_solver More...
 
lin_solver_stats stats
 
double tol = 1e-8
 CG stopping tolerance. More...
 
int max_it = 100
 maximum number of iterations More...
 
parabolic_t parab_tech = CN
 manner in which parabolic equations are solved More...
 
double final_residual = -1.0
 Holds the residual after convergence. More...
 
int niter = -1
 number of iterations More...
 

Detailed Description

Definition at line 91 of file electrics.h.

Member Enumeration Documentation

◆ parabolic_t

Enumerator
EXPLICIT 
CN 
O2dT 

Definition at line 96 of file electrics.h.

Constructor & Destructor Documentation

◆ ~parabolic_solver()

opencarp::parabolic_solver::~parabolic_solver ( )
inline

Definition at line 129 of file electrics.h.

Member Function Documentation

◆ init()

void opencarp::parabolic_solver::init ( )

Definition at line 1085 of file electrics.cc.

Here is the caller graph for this function:

◆ rebuild_matrices()

void opencarp::parabolic_solver::rebuild_matrices ( MaterialType mtype,
limpet::MULTI_IF miif,
FILE_SPEC  logger 
)

Definition at line 1133 of file electrics.cc.

Here is the caller graph for this function:

◆ solve()

void opencarp::parabolic_solver::solve ( sf_vec phie_i)

Definition at line 1236 of file electrics.cc.

Here is the caller graph for this function:

Member Data Documentation

◆ final_residual

double opencarp::parabolic_solver::final_residual = -1.0

Holds the residual after convergence.

Definition at line 126 of file electrics.h.

◆ IIon

sf_vec* opencarp::parabolic_solver::IIon = nullptr

ionic currents

Definition at line 98 of file electrics.h.

◆ inv_mass_diag

sf_vec* opencarp::parabolic_solver::inv_mass_diag = nullptr

inverse diagonal of mass matrix, for EXPLICIT solving

Definition at line 106 of file electrics.h.

◆ Irhs

sf_vec* opencarp::parabolic_solver::Irhs = nullptr

weighted transmembrane currents

Definition at line 105 of file electrics.h.

◆ kappa_i

sf_vec* opencarp::parabolic_solver::kappa_i = nullptr

scaling vector for intracellular mass matrix, M

Definition at line 102 of file electrics.h.

◆ lhs_parab

sf_mat* opencarp::parabolic_solver::lhs_parab = nullptr

lhs matrix (CN) to solve parabolic

Definition at line 111 of file electrics.h.

◆ lin_solver

sf_sol* opencarp::parabolic_solver::lin_solver = nullptr

petsc or ginkgo lin_solver

Definition at line 115 of file electrics.h.

◆ mass_i

sf_mat* opencarp::parabolic_solver::mass_i = nullptr

lumped $\kappa M$ for parabolic problem

Definition at line 109 of file electrics.h.

◆ max_it

int opencarp::parabolic_solver::max_it = 100

maximum number of iterations

Definition at line 122 of file electrics.h.

◆ niter

int opencarp::parabolic_solver::niter = -1

number of iterations

Definition at line 127 of file electrics.h.

◆ old_vm

sf_vec* opencarp::parabolic_solver::old_vm = nullptr

older Vm needed for 2nd order dT

Definition at line 101 of file electrics.h.

◆ parab_tech

parabolic_t opencarp::parabolic_solver::parab_tech = CN

manner in which parabolic equations are solved

Definition at line 123 of file electrics.h.

◆ phie_recov_mat

sf_mat* opencarp::parabolic_solver::phie_recov_mat = nullptr

rhs for phie recovery with pseudo bidomain

Definition at line 112 of file electrics.h.

◆ rhs_parab

sf_mat* opencarp::parabolic_solver::rhs_parab = nullptr

rhs matrix to solve parabolic

Definition at line 110 of file electrics.h.

◆ stats

lin_solver_stats opencarp::parabolic_solver::stats

Definition at line 118 of file electrics.h.

◆ tmp_i1

sf_vec* opencarp::parabolic_solver::tmp_i1 = nullptr

scratch vector for i-grid

Definition at line 103 of file electrics.h.

◆ tmp_i2

sf_vec* opencarp::parabolic_solver::tmp_i2 = nullptr

scratch vector for i-grid

Definition at line 104 of file electrics.h.

◆ tol

double opencarp::parabolic_solver::tol = 1e-8

CG stopping tolerance.

Definition at line 121 of file electrics.h.

◆ u_mass_i

sf_mat* opencarp::parabolic_solver::u_mass_i = nullptr

unscaled mass matrix, M

Definition at line 108 of file electrics.h.

◆ Vmv

sf_vec* opencarp::parabolic_solver::Vmv = nullptr

global Vm vector

Definition at line 99 of file electrics.h.


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