openCARP Online parameters

openCARP offers the possibility to load custom ionic models during run-time without recompiling the simulator.

Parameters

num_external_imp <Int>
Description Defines the number of models to read in from external libraries
Default value (Int)(0)
required parameter:
  • external_imp

Parameters

external_imp <RFile>
Description Defines external imp modules to read into openCARP. Multiple imps can be grouped using a comma seperated list which can be used here.
Default value (RFile)("")
In openCARP, you can create and use custom functions that can be loaded during run-time without recompiling the simulator.

Parameters

rt_lib <String>
Description Gives a colon separated list of runtime shared object libraries
Default value (String)("")

Parameters

rt_lib_args <String>
Description Gives colon separated list of parameters for objects
Default value (String)("")
(null)

Parameters

num_trace <Int>
Description Number of nodes at which to gather trace info.
Default value (Int)(0)
required parameter:
  • trace_node

Parameters

trace_node <Int>
Description Nodes at which to gather trace information.
Default value (Int)(0)

Parameters

tracedt <Double>
Description Time resolution to print out trace info.
Unit ms
Default value (Double)(timedt)
Validation Value must be greater than (Double)(dt/1000.)

Parameters

dump_protocol <Short>
Description If set to 1, the overall stimulation protocol will be outputted as a trace file.
Default value (Short)(0)
Validation Value must be between (Short)(0) and (Short)(1)
In openCARP, you can quickly recover the extracellular potential from monodomain simulations using the parameters explained below.

Parameters

phie_rec_ptf <WFile>
Description Defines the basename for the phie recovery file.
This file specifies the phie recovery points.
Use the same convention and format as for the mesh points file (see the first chapters of the openCARP manual file format section). Provide the filename without extension.
Default value (WFile)("")

Parameters

phie_recovery_file <WFile>
Description Defines the file name used to output recovered extracellular potentials.
Output granularity is defined by 'spacedt'.
Default value (WFile)("phie_recovery")

Parameters

phie_rec_meth <Int>
Description Defines the method for recovering phie with monodomain runs.
Default value (Int)(1)
Validation

Possible values are

  • (Int)(3): Infrequent bidomain solve (recover phie only on phie grid, not on 'phie_rec_ptf') NOT IMPLEMENTED YET!
  • (Int)(2): Integrate over element-centered Im using integral solution of Poisson PDE
  • (Int)(1): Use FE mass and stiffness matrices
  • (Int)(0): Don't recover phie

Parameters

dump_ecg_leads <Int>
Description Dump recovered phie data from nodes stored in 'phie_rec_ptf'.
The stated node file may contain arbitrary nodes of interest.
In the case of an ecg recording, the spatial coordinates of LA, RA, LF, V1-V6 need to be provided.
Default value (Int)(strlen(phie_rec_ptf)>0?0:1)
Validation Value must be between (Int)(0) and (Int)(1)
In this section, you can find all the information to define the conductivity of your model.

Parameters

num_gregions <Int>
Description Defines the total number of regions with respectively different conductivity settings.
Default value (Int)(1)
Validation Value must be greater than (Int)(1)
required parameters:
  • gregion
  • gregion[PrMelem1].num_IDs
  • gregion[PrMelem1].name
  • gregion[PrMelem1].g_bath
  • gregion[PrMelem1].g_en
  • gregion[PrMelem1].g_in
  • gregion[PrMelem1].g_et
  • gregion[PrMelem1].g_it
  • gregion[PrMelem1].g_el
  • gregion[PrMelem1].g_il
  • gregion[PrMelem1].g_mult
  • gregion[PrMelem1].ID
Description Sets the conductivity for different regions. The array index allows enumeration of all gregions.

Parameters

ID <Int>
Description Specify a list of model regions (equivalent to mesh element tags) using this conductivity setting.
Default value (Int)(0)
required parameters:
  • gregion.num_IDs
  • gregion
num_IDs <Int>
Description Shows how many model regions use this conductivity setting
Default value (Int)(0)
required parameter:
  • gregion
name <String>
Description Symbolic description of this conductive region (e.g. bath, cavity etc.)
Default value (String)("")
required parameter:
  • gregion
g_bath <Double>
Description Defines the isotropic conductivity for non-myocardium domain, e.g blood.
The absence of anisotropy is assumed for this region. If anisotropy is required use a negative tag for the mesh elements in the .elem file and set fibre direction in the .lon file.
Unit S/m
Default value (Double)(1.)
Validation Value must be greater than (Double)(0.)
required parameter:
  • gregion
g_en <Double>
Description Defines the extracellular conductivity in the local sheet direction, i.e. perpendicular to the longitudinal fiber 'g_el' and transversal fiber directions 'g_et'.
Unit S/m
Default value (Double)(0.236)
Validation Value must be greater than (Double)(0.)
required parameter:
  • gregion
g_in <Double>
Description Defines the intracellular conductivity in the local sheet direction, i.e. perpendicular to the longitudinal fiber 'g_il' and transversal fiber 'g_it' directions.
Unit S/m
Default value (Double)(0.019)
Validation Value must be greater than (Double)(0.)
required parameter:
  • gregion
g_et <Double>
Description Defines the extracellular conductivity transverse to the fiber direction i.e. perpendicular to the longitudinal fiber 'g_il' and local sheet 'g_it' direction.
Unit S/m
Default value (Double)(0.236)
Validation Value must be greater than (Double)(0.)
required parameter:
  • gregion
g_it <Double>
Description Defines the intracellular conductivity transverse to the fiber direction i.e. perpendicular to the longitudinal fiber 'g_il' and local sheet 'g_it' direction.
Unit S/m
Default value (Double)(0.019)
Validation Value must be greater than (Double)(0.)
required parameter:
  • gregion
g_el <Double>
Description Defines the extracellular conductivity along the fiber direction (longitudinal).
Unit S/m
Default value (Double)(0.625)
Validation Value must be greater than (Double)(0.)
required parameter:
  • gregion
g_il <Double>
Description Defines the intracellular conductivity along the fiber direction (longitudinal).
Unit S/m
Default value (Double)(0.174)
Validation Value must be greater than (Double)(0.)
required parameter:
  • gregion
g_mult <Float>
Description Defines the factor by which all conductivities in the region should be multiplied (after all other modifications are performed).
Default value (Float)(1.0)
Validation Value must be greater than (Float)(0.)
required parameter:
  • gregion

Parameters

gi_scale_vec <RFile>
Description Path to element-wise vector with intra-cellular conductivity scaling
Default value (RFile)("")

Parameters

ge_scale_vec <RFile>
Description Path to element-wise vector with extra-cellular conductivity scaling
Default value (RFile)("")
In this section, you can find all the information to define global variables in your simulation.

Parameters

num_gvecs <Int>
Description Specify the number of global state variable vector definitions.
Default value (Int)(0)
required parameters:
  • gvec
  • gvec[PrMelem1].bogus
  • gvec[PrMelem1].imp
  • gvec[PrMelem1].units
  • gvec[PrMelem1].name
  • gvec[PrMelem1].ID
Description Gives the global state variable vectors of each model region

Parameters

bogus <Float>
Description Set to 1 if the state variable is not in a region.
Default value (Float)(0.)
required parameter:
  • gvec
imp <String>
Description If the state variable is defined in a plugin, specify the plugin name here.
Default value (String)("")
required parameter:
  • gvec
units <String>
Description Units of the state variables to be written in the header of the ouput igb file.
Default value (String)("")
required parameter:
  • gvec
ID <String>
Description Defines the list of state variable names in a region, which are combined into a global vector. For example gvec[0].ID[0] = 'Cai'
Default value (String)([[Father]].name)
required parameters:
  • gvec.name
  • num_imp_regions
  • gvec
name <WFile>
Description Defines the name of the output file for the global state variable.
Default value (WFile)("sv")
required parameter:
  • gvec
In this section, you can find all the information to define more or more ionic models for your simulation.

Parameters

num_imp_regions <Int>
Description Number of different region definitions.
Default value (Int)(1)
Validation Value must be greater than (Int)(1)
required parameters:
  • imp_region
  • imp_region[PrMelem1].cellSurfVolRatio
  • imp_region[PrMelem1].volFrac
  • imp_region[PrMelem1].plug_param
  • imp_region[PrMelem1].plug_sv_dumps
  • imp_region[PrMelem1].im_sv_dumps
  • imp_region[PrMelem1].num_IDs
  • imp_region[PrMelem1].name
  • imp_region[PrMelem1].plugins
  • imp_region[PrMelem1].im_sv_init
  • imp_region[PrMelem1].im
  • imp_region[PrMelem1].im_param
  • imp_region[PrMelem1].ID
  • gvec[PrMelem1].ID
Description Sets the ionic model for different regions. The array index allows enumeration of all imp_regions.

Parameters

cellSurfVolRatio <Float>
Description Defines the default single cell surface-to-volume-ratio used if it is not specified by the ionic model plugin (IMP).
Unit um^-1
Default value (Float)(0.14)
Validation Value must be greater than (Float)(0.)
required parameter:
  • imp_region
volFrac <Float>
Description Defines the portion of the volume occupied by cells.
Default value (Float)(1.)
Validation Value must be between (Float)(0.) and (Float)(1.)
required parameter:
  • imp_region
plug_param <String>
Description User can modify the values for various ionic model parameters.
Every PARAMETER=VALUE modification needs to be separated with a comma.
Default value (String)("")
required parameter:
  • imp_region
plug_sv_dumps <String>
Description This produces a colon separated lists of state variables of a plugin to dump (use bench --imp=XXX --plug-in=YYY --imp-info to get a list of SVs for imp XXX and plug-in YYY)
Default value (String)("")
required parameter:
  • imp_region
im_sv_dumps <String>
Description Specify a comma separated list of state variables of an ionic model to be dumped into the simulation folder.
Use bench --imp=XXX --imp-info to get a list of SVs for imp XXX.
Default value (String)("")
required parameter:
  • imp_region
im_param <String>
Description Specify a comma separated list of changes from default values, e.g. 'APDshorten*4,Gks*1.29,...'.
Default value (String)(strcmp([[Father]].im,TO_STRING(DiFranNoble))? TO_STRING():TO_STRING(G_Na*3))
required parameters:
  • imp_region.im
  • imp_region
ID <Int>
Description Array of element tags associated with this model region.
Default value (Int)(0)
required parameters:
  • imp_region.num_IDs
  • imp_region
num_IDs <Int>
Description Number of elements tags listed in 'imp_region[].ID[]'.
Default value (Int)(0)
required parameter:
  • imp_region
name <String>
Description Defines the symbolic name of region. This helps with structuring extensive parameter lists and makes them more human readable.
Default value (String)(strncmp(TO_STRING([[Father]]),TO_STRING(PurkIon),7)? TO_STRING(Myocardium):TO_STRING(Purkinje))
required parameter:
  • imp_region
plugins <String>
Description Specify a colon separated list of plug-ins to use with the ionic model.
Query for available plug-ins by calling 'bench --plugin-outputs'.
Default value (String)("")
required parameter:
  • imp_region
im_sv_init <RFile>
Description Name of the file containing the initial of state variable values.
Default value (RFile)("")
required parameter:
  • imp_region
im <String>
Description Defines the ionic model to be used in the simulation.
Query for available ionic models by calling 'bench' with the command list-imps.
Default value (String)(TO_STRING(LuoRudy91))
required parameter:
  • imp_region

Parameters

dump_imp_region <Int>
Description flag controling whether to dump nodal ionic region indices. output file name is 'imp_region.dat'
Default value (Int)(0)
Validation

Possible values are

  • (Int)(1): dump nodal ionic region indices
  • (Int)(0): dont dump
openCARP allows modifying of the conductivity based on the element index.

Parameters

rseed <Int>
Description Defines the seed for the random generator
Default value (Int)(1)

Parameters

fluct <Float>
Description Defines the conductivity fluctuation in percent.
Unit %
Default value (Float)(0.)
Validation Value must be between (Float)(0.0) and (Float)(100.0)
openCARP offers the possibility to modify the ionic models on a nodal basis.

Parameters

num_adjustments <Int>
Description Size of the adjustment array.
Default value (Int)(0)
Validation Value must be greater than (Int)(0)
required parameters:
  • adjustment
  • adjustment[PrMelem1].dump
  • adjustment[PrMelem1].file
  • adjustment[PrMelem1].variable
Description file of adjustments

Parameters

dump <Short>
Description Dump nodal adjustments for state variables for display on intra grid
Default value (Short)(0)
Validation Value must be between (Short)(0) and (Short)(1)
required parameter:
  • adjustment
file <RFile>
Description Defines the filename filled with nodal adjustments for the state variable
Default value (RFile)("")
required parameter:
  • adjustment
variable <String>
Description Defines the name of the variable that should be adjusted on initialization.
The variable name should be defined as an external variable like 'Lambda', or an ionic model variable like 'LR1.tau_f_factor' in the cellmodel file.
Default value (String)("")
required parameter:
  • adjustment
openCARP offers the possibility to pre-process your mesh. In this section, you can find the different parameters that can help you to, for example, retag your mesh on-the-fly.

Parameters

mesh_statistics <Flag>
Description Compute mesh statistic parameters (only edge lengths at this point).
Default value (Flag)(PrMFALSE)

Parameters

meshname <String>
Description Defines the basename for mesh files
Default value (String)("project")

Parameters

orthoname <String>
Description Basename for lon file holding orthotropy data

!!!! This parameter is unsupported in openCARP, but kept for compatibility with CARPentry !!!!
Default value (String)("")

Parameters

orthogonalize <Short>
Description Toggle automatic fiber orthogonalization
Default value (Short)(0)
Validation Value must be between (Short)(0) and (Short)(1)

Parameters

orthoname_output <WFile>
Description Basename for .lon file holding orthotropy data that is used for output purposed, e.g. strain in this fiber direction.

!!!! This parameter is unsupported in openCARP, but kept for compatibility with CARPentry !!!!
Default value (WFile)("")

Parameters

meshformat <Short>
Description Mesh format ID
Default value (Short)(2)
Validation

Possible values are

  • (Short)(2): Auto: Use binary if possible, else use text.
  • (Short)(1): openCARP binary format
  • (Short)(0): openCARP text format

Parameters

numtagreg <Int>
Description Defines the number of regions to retag
Default value (Int)(0)
Validation Value must be greater than (Int)(0)
required parameters:
  • tagreg
  • tagreg[PrMelem1].radius
  • tagreg[PrMelem1].p1
  • tagreg[PrMelem1].p0
  • tagreg[PrMelem1].elemfile
  • tagreg[PrMelem1].no_elem_split
  • tagreg[PrMelem1].type
  • tagreg[PrMelem1].name
  • tagreg[PrMelem1].tag
Description Defines the regions to which to assign new tags

Parameters

radius <Float>
Description Used to describe the profile chosen in tagregion.type in more detail.
- If sphere was chosen, this value is the radius of the sphere.
- If box was chosen, this value is not necessary/ignored. Use tagregion.p0 & tagregion.p1 instead.
- If cylinder was chosen, this value is the radius of the cylinder.
Unit micrometers
Default value (Float)(100.)
required parameter:
  • tagreg
p1 <Float>
Description Used to describe the profile chosen in tagregion.type in more detail.
- If sphere was chosen, this value is not necessary/ignored. Use tagregion.radius instead.
- If box was chosen, this value describes the upper right corner of the box.
- If cylinder was chosen, this value describes the center of the cylinders' top.
- For sphere & cylinder the additional parameter tagregion.radius is needed.
- For box & cylinder the additional parameter tagregion.p0 is needed.
Unit micrometers
Default value (Float)(0.)
required parameter:
  • tagreg
p0 <Float>
Description Used to describe the profile chosen in tagregion.type in more detail.
- If sphere was chosen, this value describes the center of the sphere.
- If box was chosen, this value describes the lower left corner of the box.
- If cylinder was chosen, this value describes the center of the cylinders' base.
- For sphere & cylinder the additional parameter tagregion.radius is needed.
- For box & cylinder the additional parameter tagregion.p1 is needed.
Unit micrometers
Default value (Float)(0.)(Float)(0.)(Float)(0.)
required parameter:
  • tagreg
elemfile <RFile>
Description Name of file with list of elements to be assigned to this region. The file needs the extension .regele with the format being the number of elements followed by one element number per line
Default value (RFile)("")
required parameter:
  • tagreg
no_elem_split <Short>
Description Defines whether a mesh element needs to be fully enclosed by the tagreg.type definition to become part of this region.
1 = all nodes of each element need to be fully contained inside tagreg.type
0 = a single node of an element within tagreg.type is sufficient to become a member of this region
Default value (Short)(0)
Validation Value must be between (Short)(0) and (Short)(1)
required parameter:
  • tagreg
type <Int>
Description Defines profile of region. 1-3 are predefined shapes while 4 can be used to create own region profile.
Default value (Int)(1)
Validation

Possible values are

  • (Int)(4): element list
  • (Int)(3): cylinder
  • (Int)(2): block
  • (Int)(1): sphere
required parameter:
  • tagreg
name <String>
Description Label for a region in the mesh. This helps with structuring extensive parameter lists and makes them more human readable.
Default value (String)("")
required parameter:
  • tagreg
tag <Int>
Description New tag for a region in the mesh. Each element in this region is re-assigned this tag. In general, each element in a mesh is designated as part of a region. Electrical or mechanical properties are assigned based on region definitions.
Default value (Int)(321)
required parameter:
  • tagreg

Parameters

retagfile <WFile>
Description Defines an output file storing the element labels
after applying all 'dynamic' tagreg choices to the input mesh.
Default value (WFile)("")
In this section, you can find the parameters that define the different available experiments in openCARP.

Parameters

ppID <String>
Description Defines the name of the output directory in post processing mode.
- It comes into play when choosing 'experiment 4'.
- If it is specified, it must not already exist.
- A folder with the default name will be created, if it is not specified.
Default value (String)("POSTPROC_DIR")

Parameters

experiment <Short>
Description Defines how the simulation will be solved and what will be outputted
Default value (Short)(0)
Validation

Possible values are

  • (Short)(4): Post process only
  • (Short)(3): Build model only
  • (Short)(2): Laplace solve
  • (Short)(1): Output FEM matrices
  • (Short)(0): NORMAL RUN

Parameters

post_processing_opts <Short>
Description Post-processing Options, add up option numbers to use multiple options
Default value (Short)(0)
Validation

Possible values are

  • (Short)(1): Recover phie
  • (Short)(0): No post-processing done.
openCARP offers the possibility to solve monodomain, pseudo-bidomain, and bidomain. In this section, you can find all the parameters related to the solving method and the solver parameters.

Parameters

bidomain <Short>
Description Defines if the simulation is solved using the monodomain, bidomain or pseudo-bidomain approach.
- Monodomain model (less costly). Dervied from bidomain under the assumption that intracellular and extracellular tensors are related.
- Bidomain model solves for both the intra- & extracellular space.
- Pseudo-bidomain model (monodomain model with adjustments to account for bath loading effects).
Default value (Short)(0)
Validation

Possible values are

  • (Short)(2): Pseudo-bidomain
  • (Short)(1): Bidomain
  • (Short)(0): Monodomain

Parameters

pstrat <Short>
Description Defines the partitioning strategy.
Default value (Short)(2)
Validation

Possible values are

  • (Short)(2): KDtree partitioning
  • (Short)(1): Parmetis partitioning
  • (Short)(0): Linear partitioning

Parameters

pstrat_i <Short>
Description Defines the partitioning strategy for the intracellular grid

!!!! This parameter is unsupported in openCARP, but kept for compatibility with CARPentry !!!!
Default value (Short)(1)
Validation

Possible values are

  • (Short)(2): KDtree partitioning
  • (Short)(1): Parmetis partitioning
  • (Short)(0): Linear partitioning

Parameters

pstrat_imbalance <Float>
Description Amount of imbalance to tolerate in parmetis partitioning
Default value (Float)(1.0001)

Parameters

ellip_solve <Short>
Description Defines the solving method for elliptic problems.
- Direct is typically more accurate but memory consuming.
- Iterative methods are more suitable for large problems.
Default value (Short)(0)
Validation

Possible values are

  • (Short)(1): Iterative
  • (Short)(0): Direct if available

Parameters

flavor <String>
Description String defining the backend to be used
Default value (String)("petsc")

Parameters

ginkgo_exec <String>
Description Defines the hardware backend used by Ginkgo.
Default value (String)("ref")
Validation

Possible values are

  • (String)("dpcpp"): Dpcpp executor for execution on Intel GPUs
  • (String)("hip"): Hip executor for execution on AMD GPUs
  • (String)("cuda"): Cuda executor for execution on NVIDIA GPUs
  • (String)("omp"): OpenMP parallelized CPU execution
  • (String)("ref"): Reference Executor for sequential CPU execution

Parameters

device_id <Int>
Description Device ID used for the Ginkgo backend.
Default value (Int)(0)
Validation Value must be greater than (Int)(0)

Parameters

ellip_options_file <RFile>
Description File containing PETSc or Ginkgo options for elliptic solver.
For all available PETSc options refer to the PETSc documentation.
Default value (RFile)("")

Parameters

floating_ground <Short>
Description Enforces average extracellular potential to be zero.

!!!! This parameter is unsupported in openCARP, but kept for compatibility with CARPentry !!!!
Default value (Short)(0)
Validation Value must be between (Short)(0) and (Short)(1)

Parameters

floating_ground_refnode <Int>
Description Reference node which is clamped to zero for elliptic solve prior to shifting phie average to zero.

!!!! This parameter is unsupported in openCARP, but kept for compatibility with CARPentry !!!!
Default value (Int)(0)
Validation Value must be greater than (Int)(0)

Parameters

parab_solve <Short>
Description Defines the solution method for the parabolic problem
Default value (Short)(1)
Validation

Possible values are

  • (Short)(2): 2nd order dt
  • (Short)(1): Crank-Nicolson
  • (Short)(0): Explicit

Parameters

theta <Float>
Description Defines the weight given to solution at t(n+1) when using Crank-Nicolson (theta) method
Default value (Float)(0.5)
Validation Value must be between (Float)(0.1) and (Float)(0.99)

Parameters

parab_options_file <RFile>
Description File containing PETSc or Ginkgo options for parabolic solver
Default value (RFile)("")

Parameters

bidm_eqv_mono <Short>
Description Use monodomain conductivities that are equivalent to the bidomain.
Default value (Short)(1)
Validation

Possible values are

  • (Short)(1): Use harmonic mean tensor
  • (Short)(0): use intracellular tensor

Parameters

stimactivedelay <Float>
Description Time after stimulus ends to continue FEM solve.
Unit ms
Default value (Float)(0.)

Parameters

vm_per_phie <Short>
Description Defines the number of Vm solves per phi_e solve
Default value (Short)(1)
Validation Value must be between (Short)(1) and (Short)(1000)

Parameters

par_fac <Short>
Description Defines the number of parabolic solves per global dt
Default value (Short)(1)
Validation Value must be between (Short)(1) and (Short)(100)

Parameters

ode_fac <Short>
Description Defines the number of ode solves per global dt
Default value (Short)(1)
Validation Value must be between (Short)(1) and (Short)(10)

Parameters

extracell_monodomain_stim <Flag>
Description When bidomain mode is turned off, i.e. '-bidomain=0', set phi_e to be utterly determined by the extracellular stimuli.
Default value (Flag)(0)

Parameters

cg_tol_ellip <Double>
Description conjugate gradient solver tolerance for elliptic problem
Default value (Double)(1.0e-8)

Parameters

cg_norm_ellip <Short>
Description Pick a norm for checking convergence of elliptic solve for PETSc solvers
Default value (Short)(0)
Validation

Possible values are

  • (Short)(3): combined tolerance, using both 0 and 2, iteration stops if either 0 or 2 are met
  • (Short)(2): relative tolerance
  • (Short)(1): absolute tolerance using L2 of unpreconditioned residual (not always possible, defaults to 0 then)
  • (Short)(0): absolute tolerance using L2 of preconditioned residual (energy norm)

Parameters

cg_maxit_ellip <Int>
Description Defines the maximum number of iterations for iterative solver of elliptic PDE.
Default value (Int)(500)
Validation Value must be between (Int)(0) and (Int)(10000)

Parameters

ellip_use_pt <Short>
Description Choose solvers for the elliptic PDE from:
- PETSc, then set to 0, or
- PT, then set to 1.
Default value (Short)(0)
Validation Value must be between (Short)(0) and (Short)(1)

Parameters

cg_tol_parab <Double>
Description conjugate gradient solver tolerance for parabolic problem
Default value (Double)(1.0e-8)

Parameters

cg_norm_parab <Short>
Description Pick a norm for checking convergence of parabolic solve (PETSc solvers only, ignored with PT)
Default value (Short)(0)
Validation

Possible values are

  • (Short)(3): combined tolerance, using both 0 and 2, iteration stops if either 0 or 2 are met
  • (Short)(2): relative tolerance
  • (Short)(1): absolute tolerance using L2 of unpreconditioned residual (not always possible, defaults to 0 then)
  • (Short)(0): absolute tolerance using L2 of preconditioned residual (energy norm)

Parameters

cg_maxit_parab <Int>
Description maximum number of iterations for iterative solver of parabolic PDE.
Default value (Int)(100)
Validation Value must be between (Int)(0) and (Int)(1000)

Parameters

parab_use_pt <Short>
Description Choose solvers for the parabolic PDE from:
- PETSc, then set to 0, or
- PT, then set to 1.
Default value (Short)(0)
Validation Value must be between (Short)(0) and (Short)(1)

Parameters

cg_precond <Int>
Description Defines the preconditioning method to ensure fast convergence of the conjugate gradient method.
Default value (Int)(2)
Validation

Possible values are

  • (Int)(3): System reduction
  • (Int)(2): Incomplete Cholesky
  • (Int)(1): diagonal
  • (Int)(0): none
You can select different methods to solve the finite element method.

Parameters

mat_entries_per_row <Short>
Description Assumed average number of entries per PETSc matrix row timportant for memory preallocation.

!!!! This parameter is unsupported in openCARP, but kept for compatibility with CARPentry !!!!
Default value (Short)(27)

Parameters

mass_lumping <Short>
Description toggles mass matrix lumping
Default value (Short)(1)
Validation

Possible values are

  • (Short)(1): Lump mass matrix
  • (Short)(0): Use full mass matrix

Parameters

operator_splitting <Short>
Description toggles operator splitting
Default value (Short)(1)
Validation

Possible values are

  • (Short)(1): Use operator splitting
  • (Short)(0): Don't use operator splitting
openCARP offers you the possibility to define one or more stimuli. Different stimuli parameters can specify in the simulation (for example, strength, duration, BCL, and more).

Parameters

num_stim <Int>
Description Defines the number of stimuli.
Default value (Int)(2)
Validation Value must be greater than (Int)(0)
required parameters:
  • stim
  • stimulus
  • stim[PrMelem1].crct
  • stim[PrMelem1].elec
  • stim[PrMelem1].ptcl
  • stim[PrMelem1].pulse
  • stim[PrMelem1].name
  • stimulus[PrMelem1].vtx_fcn
  • stimulus[PrMelem1].data_file
  • stimulus[PrMelem1].pulse_file
  • stimulus[PrMelem1].total_current
  • stimulus[PrMelem1].balance
  • stimulus[PrMelem1].stimtype
  • stimulus[PrMelem1].bias
  • stimulus[PrMelem1].tau_plateau
  • stimulus[PrMelem1].tau_edge
  • stimulus[PrMelem1].s2
  • stimulus[PrMelem1].strength
  • stimulus[PrMelem1].d1
  • stimulus[PrMelem1].start
  • stimulus[PrMelem1].geometry
  • stimulus[PrMelem1].ctr_def
  • stimulus[PrMelem1].zd
  • stimulus[PrMelem1].yd
  • stimulus[PrMelem1].xd
  • stimulus[PrMelem1].z0
  • stimulus[PrMelem1].y0
  • stimulus[PrMelem1].x0
  • stimulus[PrMelem1].dump_vtx_file
  • stimulus[PrMelem1].vtx_file
  • stimulus[PrMelem1].name
  • stim[PrMelem1].crct.total_current
  • stim[PrMelem1].crct.balance
  • stim[PrMelem1].crct.type
  • stim[PrMelem1].elec.dump_vtx_file
  • stim[PrMelem1].elec.geom_type
  • stim[PrMelem1].elec.radius
  • stim[PrMelem1].elec.p1
  • stim[PrMelem1].elec.p0
  • stim[PrMelem1].elec.vtx_fcn
  • stim[PrMelem1].elec.vtx_file
  • stim[PrMelem1].elec.domain
  • stim[PrMelem1].elec.geomID
  • stim[PrMelem1].ptcl.stimlist
  • stim[PrMelem1].ptcl.npls
  • stim[PrMelem1].ptcl.start
  • stim[PrMelem1].ptcl.name
  • stim[PrMelem1].pulse.bias
  • stim[PrMelem1].pulse.tau_plateau
  • stim[PrMelem1].pulse.tau_edge
  • stim[PrMelem1].pulse.s2
  • stim[PrMelem1].pulse.tilt_ampl
  • stim[PrMelem1].pulse.tilt_time
  • stim[PrMelem1].pulse.strength
  • stim[PrMelem1].pulse.file
  • stim[PrMelem1].pulse.shape
  • stim[PrMelem1].pulse.name
  • stimulus[PrMelem1].duration
  • stim[PrMelem1].ptcl.duration
  • stimulus[PrMelem1].bcl
  • stim[PrMelem1].ptcl.bcl
  • stimulus[PrMelem1].npls
Description Array of stimuli

Parameters

vtx_fcn <Short>
Description Set true to specify stimulation strengths on a nodal basis. The specific values need to be provided in the stimulus.vtx_file. For file format specifications check the first chapters of the openCARP manual.

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (Short)(0)
required parameter:
  • stimulus
data_file <RFile>
Description Stimulus dependent auxiliary data. Used for presribed takeoff and prescribed phie.

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (RFile)("")
required parameter:
  • stimulus
pulse_file <RFile>
Description Reads in pulse definition from an external file.
For file format specifications check the first chapters of the openCARP manual.

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (RFile)("")
required parameter:
  • stimulus
total_current <Short>
Description Treat strengths as total current (uA) and not density

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (Short)(0)
Validation Value must be between (Short)(0) and (Short)(1)
required parameter:
  • stimulus
balance <Int>
Description Defines whether the electrode is balancing another electrode. The balance value is interpreted as the electrode index to balance. The waveform is mirrored, but with opposite polarity.
If the balance value is -1, no balancing is applied.

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (Int)(-1)
Validation Value must be between (Int)(-1) and (Int)(num_stim-1)
required parameters:
  • num_stim
  • stimulus
stimtype <Short>
Description Defines the stimulus type. Closed loop stimuli return to ground (0 mV) when expired.
Open loop stimuli are removed entirely when expired.

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (Short)(0)
Validation

Possible values are

  • (Short)(9): Vm clamp (use mV)
  • (Short)(6): illumination (use mW/mm^2)
  • (Short)(5): extracellular voltage (open loop, use mV)
  • (Short)(4): intracellular current
  • (Short)(3): extracellular ground (enforce 0 mV)
  • (Short)(2): extracellular voltage (closed loop, use mV)
  • (Short)(1): extracellular current (use uA/cm^3)
  • (Short)(0): transmembrane current (use uA/cm^2)
required parameter:
  • stimulus
bias <Float>
Description Defines a constant term which is added to the stimuluspulse.

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (Float)(0.0)
required parameter:
  • stimulus
tau_plateau <Float>
Description Defines a time constant governing plateau of pulse (>10^5 is infinite)
A larger tau_plateau will result in a longer plateauphase.
Other important parameters for stimulus form definition are: stimulus.tau_edge, stimulus.tau_plateau, stimulus.strength, stimulus.duration

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Unit ms
Default value (Float)(1000.)
Validation Value must be between (Float)(0.1) and (Float)(1000000.)
required parameter:
  • stimulus
tau_edge <Float>
Description Defines the time constant governing leading and trailing edge of pulse. The formulation used resembles the equation: Amp * (1 - exp( -t/tau_edge)) * exp( -t/tau_plateau ).
A larger tau_edge will result in a fast drop, while a smaller tau_edge will have a longer exponentialy decreasing flank.
Other important parameters for stimulus form definition are: stimulus.tau_edge, stimulus.tau_plateau, stimulus.strength, stimulus.duration

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Unit ms
Default value (Float)(0.01)
Validation Value must be between (Float)(0.) and (Float)(1000.)
required parameter:
  • stimulus
s2 <Float>
Description This value is only used for defining a biphasic pulse.
This value is a relative value and defines the stimulus strength of the trailing pulse (after zero crossing) relative to leading pulse (from start to zero crossing).
Giving the value 0 will result in a flip of polarity
Other important parameters for stimulus form definition are: stimulus.tau_edge, stimulus.tau_plateau, stimulus.strength, stimulus.duration

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (Float)(0.)
Validation Value must be between (Float)(0.) and (Float)(10.)
required parameter:
  • stimulus
strength <Float>
Description Defines strength of prescribed stimulation. Strength is defined as amplitude of signal. If dealing with currents it is defined as uA/volume. If dealing with voltages it is defined as mV.
To create a stimulation the minimum requirement is a given stimulus.duration and stimulus.strength. This creates a monophasic stimulus. For biphasic stimuli check stimulus.s2 and stimulus.d1.
For more advanced pulsesignals introduce them using a pulse file with stimulus.pulse_file

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Unit uA/cm^2(2D current), uA/cm^3(3D current), or mV
Default value (Float)(0.)
required parameter:
  • stimulus
d1 <Float>
Description This parameter is used to introduce biphasic stimulation pulses. It specifies the duration of the first part of the pulse relative to the duration of the entire pulse (1.0 = monophasic).
Further parameters to define biphasic stimuli are: stimulus.strength, stimulus.s2, stimulus.tau_edge and stimulus.tau_plateau

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (Float)(1.0)
Validation Value must be between (Float)(0.) and (Float)(1.0)
required parameter:
  • stimulus
duration <Float>
Description Defines the duration of one a single stimulation event.

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Unit ms
Default value (Float)(tend-[[Father]].start)
Validation Value must be between (Float)(0.) and (Float)(tend-stimulus.start)
required parameters:
  • stimulus.start
  • tend
  • stimulus
npls <Int>
Description Defines the number of pulses in the stimulation protocol. The period of pulses can be set with bcl in ms.
If set to 0, the stimulus will have a single instance.

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (Int)(tend > 0 ? 1 : 0)
Validation Value must be between (Int)(0) and (Int)(tend > 0 ? 1+tend/stimulus.bcl : 0)
required parameters:
  • tend
  • stimulus.bcl
  • stimulus
bcl <Float>
Description Defines the basic cycle length for repetitive stimulation.
Duration must be smaller than bcl, as it specifies the duration of a single stimulation event.
The full protocol duration is npls * bcl. This is derived automatically from the user input.

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Unit ms
Default value (Float)(tend-[[Father]].start)
Validation Value must be between (Float)(stimulus.duration) and (Float)(tend-stimulus.start)
required parameters:
  • stimulus.start
  • tend
  • stimulus.duration
  • stimulus
start <Double>
Description Defines the start time when the stimulationpulse is introduced

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Unit ms
Default value (Double)(0.)
Validation Value must be between (Double)(0.) and (Double)(tend)
required parameters:
  • tend
  • stimulus
geometry <Int>
Description Refers to a region ID to be used as geometry definition for the stimulus electrode

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (Int)(-1)
required parameter:
  • stimulus
ctr_def <Flag>
Description setting this to 1 yields limits in the form of [x0-xd/2,x0+xd/2] for x,y and z. Setting to 0 yields [x0,x0+xd] for x,y and z.

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (Flag)(0)
required parameter:
  • stimulus
zd <Float>
Description z dimension of electrode volume. This will give the limits [z0,z0+zd]. To change this to [z0-zd/2,z0+zd/2] use stimulus.ctr_def

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Unit um
Default value (Float)(cell_length)
Validation Value must be greater than (Float)(0.)
required parameters:
  • cell_length
  • stimulus
yd <Float>
Description y dimension of electrode volume. This will give the limits [y0,y0+yd]. To change this to [y0-yd/2,y0+yd/2] use stimulus.ctr_def

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Unit um
Default value (Float)(cell_length)
Validation Value must be greater than (Float)(0.)
required parameters:
  • cell_length
  • stimulus
xd <Float>
Description x dimension of electrode volume. This will give the limits [x0,x0+xd]. To change this to [x0-xd/2,x0+xd/2] use stimulus.ctr_def

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Unit um
Default value (Float)(cell_length)
Validation Value must be greater than (Float)(0.)
required parameters:
  • cell_length
  • stimulus
z0 <Float>
Description Lower z ordinate of electrode volume (zd defines the spatial electrode extension in z)

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Unit um
Default value (Float)(0.)
required parameter:
  • stimulus
y0 <Float>
Description Lower y ordinate of electrode volume (yd defines the spatial electrode extension in y)

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Unit um
Default value (Float)(0.)
required parameter:
  • stimulus
x0 <Float>
Description Lower x ordinate of electrode volume (xd defines the spatial electrode extension in x)

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Unit um
Default value (Float)(0.)
required parameter:
  • stimulus
dump_vtx_file <Short>
Description For volume based electrode definitions, vertices of this electrode are dumped to a file. The output file name is electrode_num.stim

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (Short)(0)
Validation Value must be between (Short)(0) and (Short)(1)
required parameter:
  • stimulus
vtx_file <RFile>
Description File name allowing a vertex based electrode definition. Using a non-empty string switches to vertex-based definition and ignores other settings.
For file format specifications check the first chapters of the openCARP manual.

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (RFile)("")
required parameter:
  • stimulus
name <String>
Description Definition of the label for a single electrode.

!!!! The stimulus[] parameter was declared legacy. Please use stim[] !!!!
Default value (String)("")
required parameter:
  • stimulus
Description Definition of stimuli

Parameters

name <String> (default=(String)(""))
Description "Definition of the label for a single electrode"
required parameter:
  • stim
Description "Definition of setup and wiring of stimulation circuit"

Parameters

total_current <Short>
Description Treat strengths as total current (uA)
Default value (Short)(0)
Validation Value must be between (Short)(0) and (Short)(1)
required parameter:
  • stim
balance <Int>
Description Defines whether the electrode is balancing another electrode. The balance value is interpreted as the electrode index to balance. The waveform is mirrored, but with opposite polarity.
If the balance value is -1, no balancing is applied.
Default value (Int)(-1)
Validation Value must be between (Int)(-1) and (Int)(num_stim-1)
required parameters:
  • num_stim
  • stim
type <Short>
Description Defines the physics of the actual source used for stimulation and in some cases also the wiring of the electric stimulation circuit.
Default value (Short)(0)
Validation

Possible values are

  • (Short)(9): Vm clamp (use mV)
  • (Short)(6): illumination (use mW/mm^2)
  • (Short)(5): extracellular voltage (open loop, use mV)
  • (Short)(4): intracellular current
  • (Short)(3): extracellular ground (enforce 0 mV)
  • (Short)(2): extracellular voltage (closed loop, use mV)
  • (Short)(1): extracellular current (use uA/cm^3)
  • (Short)(0): transmembrane current (use uA/cm^2)
required parameter:
  • stim
Description "Definition of electrode geometry"

Parameters

dump_vtx_file <Short>
Description For volume based electrode definitions, vertices of this electrode are dumped to a file.
Default value (Short)(0)
Validation Value must be between (Short)(0) and (Short)(1)
required parameter:
  • stim
geom_type <Int>
Description This value defines the geometry used for the electrode. For now only predefined geometries are supported.
Default value (Int)(2)
Validation

Possible values are

  • (Int)(5): vertex list, not implemented
  • (Int)(4): element list (volume or surface), not implemented
  • (Int)(3): cylinder
  • (Int)(2): block
  • (Int)(1): sphere
required parameter:
  • stim
radius <Float>
Description Used to describe the profile chosen in electrode.geom_type.
- If sphere was chosen, this value is sets the radius of the sphere.
- If box was chosen, this value is not necessary/ignored. Use TagRegion.p1 & TagRegion.p0 instead.
- If cylinder was chosen, this value is sets the radius of the cylinder.
Unit micrometers
Default value (Float)(100.)
required parameter:
  • stim
p1 <Float>
Description Used to describe the profile chosen in electrode.geom_type.
- If sphere was chosen, this value is not necessary/ignored. Use TagRegion.radius instead.
- If box was chosen, this value describes the upper right corner of box.
- If cylinder was chosen, this value describes the end of the cylinders main axis.
- For sphere & cylinder the additional parameter electrode.radius is needed.
- For box & cylinder the additional parameter electrode.p0 is needed.
Unit micrometers
Default value (Float)(0.)
required parameter:
  • stim
p0 <Float>
Description Used to describe the profile chosen in electrode.geom_type.
- If sphere was chosen, this value describes the center of the sphere.
- If box was chosen, this value describes the lower left corner of box.
- If cylinder was chosen, this value describes the start of the cylinders main axis.
- For sphere & cylinder the additional parameter electrode.radius is needed.
- For box & cylinder the additional parameter electrode.p1 is needed.
Unit micrometers
Default value (Float)(0.)(Float)(0.)(Float)(0.)
required parameter:
  • stim
vtx_fcn <Short>
Description Whether the electrode is spatially constant (homogenous) or varying (inhomogenous).Spatially inhomogenous stimulations need to be defined via a .vtx file that includes nodes and nodal scaling.
Default value (Short)(0)
Validation

Possible values are

  • (Short)(1): inhomogenous
  • (Short)(0): homogenous
required parameter:
  • stim
vtx_file <RFile>
Description File name allowing a vertex based electrode definition. Using a non-empty stringswitches to vertex-based definition and ignores other settings.
For file format specifications check the first chapters of the openCARP manual.
Default value (RFile)("")
required parameter:
  • stim
domain <Int>
Description tissue domains affected
Default value (Int)(1)
Validation

Possible values are

  • (Int)(3): all
  • (Int)(2): Purkinje only
  • (Int)(1): myocardium only
required parameter:
  • stim
geomID <Int>
Description region ID defining an electrode's geometry, standard block defs are used if set to -1.
Default value (Int)(-1)
required parameter:
  • stim
Description "Definition of stimulation protocol"

Parameters

stimlist <String>
Description List of activation times (float), defining the stim protocol. Entries are separated by a comma (,).
The list should be surrounded by quotes. An activation time can also be expressed as an increment to the previous
activation, by starting with a '+', e.g.: '0,+240'
Unit ms
Default value (String)("")
required parameter:
  • stim
bcl <Float>
Description Defines the basic cycle length for repetitive stimulation.
protocol.duration must be smaller than protocol.bcl, as it specifies the duration of a single stimulation event.The full protocol duration is protocol.npls * protocol.bcl. This is derived automatically from the user input.
Unit ms
Default value (Float)(tend-[[Father]].start)
Validation Value must be between (Float)(stim.duration) and (Float)(tend-stim.start)
required parameters:
  • stim.start
  • tend
  • stim.duration
  • stim
npls <Int>
Description Defines the number of pulses in the stimulation protocol. The period of pulses can be set with bcl in ms.If set to 0, the stimulus will have a single instance.
Default value (Int)(tend > 0 ? 1 : 0)
Validation Value must be greater than (Int)(0)
required parameters:
  • tend
  • stim
duration <Float>
Description Defines the duration of one a single stimulation event.
Unit ms
Default value (Float)(tend-[[Father]].start)
Validation Value must be between (Float)(0.) and (Float)(tend-stim.start)
required parameters:
  • stim.start
  • tend
  • stim
start <Double>
Description Defines the start time of the stimulation protocol
Unit ms
Default value (Double)(0.)
Validation Value must be between (Double)(0.) and (Double)(tend)
required parameters:
  • tend
  • stim
name <String>
Description Label of protocol used (S1-S2, restitution, etc). This helps with structuring extensive parameter lists and makes them more human readable.
Default value (String)("")
required parameter:
  • stim
Description "Definition of stimulation pulse"

Parameters

bias <Float>
Description Defines a constant term which is added to the stimulus pulse.
Default value (Float)(0.)
required parameter:
  • stim
tau_plateau <Float>
Description Defines a time constant governing plateau of pulse (>10^5 is infinite).
A larger tau_plateau will result in a longer plateauphase.
Other important parameters for stimulus form definition are: pulse.tau_edge, pulse.tau_plateau, pulse.strength, pulse.duration
Unit ms
Default value (Float)(1000.)
Validation Value must be between (Float)(0.1) and (Float)(1000000.)
required parameter:
  • stim
tau_edge <Float>
Description Defines the time constant governing leading and trailing edge of pulse. The formulation used resembles the equation: Amp * (1 - exp( -t/tau_edge)) * exp( -t/tau_plateau ).
A larger tau_edge will result in a fast drop, while a smaller tau_edge will have a longer exponentialy decreasing flank.
Other important parameters for stimulus form definition are: pulse.tau_edge, pulse.tau_plateau, pulse.strength, pulse.duration
Unit ms
Default value (Float)(0.01)
Validation Value must be between (Float)(0.) and (Float)(1000.)
required parameter:
  • stim
s2 <Float>
Description This value is only used for defining a biphasic pulse.
This value is a relative value and defines the stimulus strength of the trailing pulse (after 0 crossing) relative to leading pulse (from start to 0 crossing).
Giving the value 0 will result in a flip of polarity.
Other important parameters for stimulus form definition are: pulse.tau_edge, pulse.tau_plateau, pulse.strength, pulse.duration
Default value (Float)(0.)
Validation Value must be between (Float)(0.) and (Float)(10.)
required parameter:
  • stim
tilt_ampl <Float>
Description prescribe fixed tilt amplitude (as in real shock delivery devices by capacitive discharge)
Default value (Float)(1.0)
Validation Value must be between (Float)(0.) and (Float)(1.0)
required parameter:
  • stim
tilt_time <Float>
Description prescribe fixed tilt time (not value) relative to pulse duration
Default value (Float)(1.0)
Validation Value must be between (Float)(0.) and (Float)(1.0)
required parameter:
  • stim
strength <Float>
Description Defines strength of prescribed stimulation. Strength is defined as amplitude of signal. If dealing with currents it is defined as uA/volume. If dealing with voltages it is defined as mV.
To create a stimulation the minimum requirement is a given pulse.duration and pulse.strength
Unit uA/cm^2(2D current), uA/cm^3(3D current), or mV
Default value (Float)(0.)
required parameter:
  • stim
file <RFile>
Description Reads in pulse definition from external file.
For file format specifications check the first chapters of the openCARP manual.
Default value (RFile)("")
required parameter:
  • stim
shape <Short>
Description Defines the shape of the prescribed pulse if an implemented pulseform is chosen (see choices below). To impose a manually created stimulus use the pulse.file functionality.
By default, the pulse shape is defined as a monophasic pulse of square-like shape of a certain duration and strength. There are two time constants:
- tau_edge, governs the leading and trailing edges of the pulse.
- tau_plateau, governs the plateau phase.
By default, these time constants are set to yield essentially a square-like pulse shape, but can be easily adjusted to generate truncated exponential-like pulses.
Biphasic shapes are specified by two additional parameters, the duration of the first part of the pulse relative to the duration of the entire pulse (specified by pulse.d1 in range of [0,1] ), and the strength of the second part of the pulse relative to the strength of the first part (specified by pulse.s2 in range of [0,1] ).
To create a stimulation the minimum requirement is a given pulse.duration and pulse.strength
Default value (Short)(0)
Validation

Possible values are

  • (Short)(2): sine wave
  • (Short)(1): truncated exponential wave
  • (Short)(0): square wave
required parameter:
  • stim
name <String>
Description Definition of the Label for the prescribed pulse waveform
Default value (String)("")
required parameter:
  • stim
In this section, you can find the parameters related to all the output files of a simulation. Moreover, you can also find parameters that will modify the output in the terminal.

Parameters

simID <String>
Description Defines the Simulation ID to generate output directory.
A good practice is to include date and time of the simulation in the 'simID'to avoid overwriting simulations. If 'simID' already exists, e.g the directory was created in a previous run, the user needs to decide on how to proceed (overwrite, append, abort) the simulation.
Default value (String)("OUTPUT_DIR")

Parameters

dt <Double>
Description Defines the time step size to solve the numeric equations for.
Check the first chapters of the openCARP manual for a comprehensive explanation on how to choose 'dt'.
Unit microseconds
Default value (Double)(5.)
Validation Value must be greater than (Double)(0.)

Parameters

tend <Double>
Description Defines the point in time when the simulation stops.
To get a rough estimation for 'tend', multiply the number of stimulation pulses 'stimulation.npls' with the basic cycle length 'stimulation.bcl'. 'tend' then needs to be larger than 'stimulation.npls * stimulation.bcl' to cover your entire stimulation protocol.
Unit ms
Default value (Double)(100.)
Validation Value must be greater than (Double)(dt/1000.)

Parameters

num_io_nodes <Int>
Description The number of nodes to dedicate to doing IO
Default value (Int)(0)

Parameters

buildinfo <Flag>
Description (deprecated) the build info is now shown by default.
hence this flag has no effect.
Default value (Flag)(PrMFALSE)

Parameters

output_level <Int>
Description Defines the level of verbosity [0, 10] to the terminal output.
0 is considered minimal feedback to the user on the terminal.
Default value (Int)(1)
Validation Value must be between (Int)(0) and (Int)(10)

Parameters

dump2MatLab <Flag>
Description Dumps stiffness and mass matrices, mappings and stimulation vectors
to be used with MatLab to the simulation folder
Default value (Flag)(0)

Parameters

dump_basename <String>
Description Defines the basename for dumped files. Different endings will be attached to specify different variables:
- _Ki & _Kie ... for the intra- & extracellular stiffness matrices
- _Mi & _Me ... for the intra- & extracellular mass matrices
- _i2e & _e2i ... for the intracellular-to-extracellular and vice-versa mappings
- _Itr & _Ie ... for the transmembrane- & extracellular currents
Default value (String)("MatLabDump")

Parameters

vofile <WFile>
Description IGB formatted file of transmembrane voltages.
Default value (WFile)("vm")

Parameters

phiefile <WFile>
Description IGB formatted file of extracellular potential (phi).
Default value (WFile)("phie")

Parameters

phieifile <WFile>
Description IGB formatted file of extracellular potential (phie) on intracellular grid (only in presence of bath required).
Default value (WFile)("phie_i")

Parameters

gridout_i <Int>
Description Defines if intracellular grid is outputted in simulation directory.
Settings: 0=none, 1=surface, 2=volumetric mesh, 3=surface & volumetric mesh.
Default value (Int)(0)
Validation Value must be greater than (Int)(0)

Parameters

gridout_e <Int>
Description Defines if extracellular grid is outputted in simulation directory.
Settings: 0=none, 1=surface, 2=volumetric mesh, 3=surface & volumetric mesh.
Default value (Int)(0)
Validation Value must be greater than (Int)(0)

Parameters

gridout_p <Int>
Description If not 0, writes partition index of each element as .dat file in simulation directory.
Default value (Int)(0)

Parameters

dataout_i <Short>
Description Defines how intracellular grid data is outputted.
Default value (Short)(2)
Validation

Possible values are

  • (Short)(3): output defined in .vtx file, see dataout_i_vtx
  • (Short)(2): volume output
  • (Short)(1): surface output
  • (Short)(0): turn off output

Parameters

dataout_i_vtx <RFile>
Description if option dataout_i == 3, intracellular output is restricted to the provided vertices.
Default value (RFile)("")

Parameters

dataout_e <Short>
Description Defines how extracellular grid data is outputted.
Default value (Short)(2)
Validation

Possible values are

  • (Short)(3): output defined in .vtx file, see dataout_e_vtx
  • (Short)(2): volume output
  • (Short)(1): surface output
  • (Short)(0): turn off output

Parameters

dataout_e_vtx <RFile>
Description if option dataout_e == 3, extracellular output is restricted to the provided vertices.
Default value (RFile)("")

Parameters

spacedt <Double>
Description Defines the temporal interval to output data to files.
It can only be as small as 'dt/1000'.
For long simulations outputting every single calculated value, would yield terrabytes of data. So here you can reduce the outputted values.
Unit ms
Default value (Double)(3.)
Validation Value must be between (Double)(dt/1000.) and (Double)(tend)

Parameters

timedt <Double>
Description Defines the temporal interval between progress updates made to the terminal. (For informational purposes only).
Unit ms
Default value (Double)(1.)
Validation Value must be between (Double)(dt/1000.) and (Double)(tend)

Parameters

spacetol <Float>
Description Defines the spatial tolerance when searching for a node.
Unit um
Default value (Float)(100.)
Validation Value must be greater than (Float)(0.)

Parameters

display_meminfo <Short>
Description Turns on/off displaying memory malloc info.
Default value (Short)(0)
Validation

Possible values are

  • (Short)(1): Turn on meminfo output
  • (Short)(0): Turn off meminfo output
Defines the length of the cell used in the model.

Parameters

cell_length <Float>
Description Defines the default cell length.
Unit um
Default value (Float)(100.)
Validation Value must be greater than (Float)(0.)
Defines all variables to save and read the simulated system states and therefore the simulation progress.
Additionally allows for interval saving of simulation and reserving queue time in batch processing.

Parameters

num_tsav <Int>
Description Defines the number of states to be saved. Each time instant of the simulation progression needs to be specified in 'tsav'.
Default value (Int)(0)
Validation Value must be between (Int)(0) and (Int)(50)
required parameters:
  • tsav
  • tsav_ext

Parameters

tsav <Double>
Description Defines the times at which to save the simulation state.
Multiple saves for different times can be defined by adding the times to this array.
Unit ms
Default value (Double)(tend-dt/1000.)
Validation Value must be between (Double)(0.) and (Double)(num_tsav>1?tend:1.0e50)

Parameters

tsav_ext <WFile>
Description Defines the filename for each saved state file. For multiple save states of the simulation, add the names for all savetimes in respective order to this array.
Default value (WFile)(opencarp::stringify(tsav[PrMelem1]))

Parameters

write_statef <WFile>
Description Defines the basename of the output file in which to write a single saved state. Each saved state will have a timestamp appended to the basename.
Default value (WFile)("state")

Parameters

start_statef <RFile>
Description Loads a statefile and continues the simulation from there.
Default value (RFile)("")

Parameters

chkpt_start <Float>
Description Defines the start time to trigger interval-based checkpointing (saving of the simulation progress).
Unit ms
Default value (Float)(0.)
Validation Value must be between (Float)(0.) and (Float)(tend)

Parameters

chkpt_intv <Float>
Description Defines the interval for checkpointing (saving of the simulation progress) in ms. 0 means no checkpointing.
Unit ms
Default value (Float)(0.)
Validation Value must be between (Float)(0.) and (Float)(tend)

Parameters

chkpt_stop <Float>
Description Defines the time to stop interval-based checkpointing (saving of the simulation progress).
Unit ms
Default value (Float)(tend)
Validation Value must be between (Float)(0.) and (Float)(tend)

Parameters

queue_time <Float>
Description Defines the reserved queue time when running in batch mode
Unit hours
Default value (Float)(168.)
Validation Value must be between (Float)(0.) and (Float)(168.)

Parameters

shrimp_pipe <String>
Description Defines the path to file where info should be dumped when openCARP receives SIGIO (in general, this should be a named pipe)
Default value (String)("")

Parameters

state_dump_buffer <Long>
Description Defines the dump buffer size
Default value (Long)(100000000)
Validation Value must be greater than (Long)(1000)
In openCARP, the user can define several methods to detect an activation threshold in tissue simulations. It also offers several functions to start a simulation based on LATs, stop or restart a simulation. Additionally, you can obtain APD statics as an output file.

Parameters

LAT_ID <String>
Description a variable
Default value default_value[PrMelem1]

Parameters

num_LATs <Int>
Description Defines the number of local activation measurements.
Default value (Int)(0)
Validation Value must be greater than (Int)(0)
required parameters:
  • lats
  • lats[PrMelem1].measurand
  • lats[PrMelem1].all
  • lats[PrMelem1].mode
  • lats[PrMelem1].threshold
  • lats[PrMelem1].method
  • lats[PrMelem1].ID

Parameters

prepacing_lats <RFile>
Description Tissue activation times to guide state set-up for prepacing
Default value (RFile)("")

Parameters

prepacing_beats <Int>
Description Defines the number of beats to pre-pace using a single-cell model.
Prepacing of a single cell is used to put the single-cell models into a preconditioned state.
This state is then given all cells in a tissue simulation as a better initial starting point than a completly unstimulated cell
Default value (Int)(0)

Parameters

prepacing_bcl <Float>
Description Sets the basic cycle length for the prepacing stimulus.
Default value (Float)(0.)
Description Array containing LATs. Index of array corresponds to LAT measurement.

Parameters

ID <WFile>
Description Defines the output filename.
Default value (WFile)([[Father]].measurand ? LAT_ID[1] : LAT_ID[0])
required parameters:
  • lats.method
  • lats.measurand
  • lats
measurand <Int>
Description Defines the quantity to measure, e.g. the signal (transmembrane voltage or extracellular potential) to use the thresholds on.
Default value (Int)(0)
Validation

Possible values are

  • (Int)(1): Phie
  • (Int)(0): Vm
required parameter:
  • lats
all <Int>
Description Defines that all activations should be detected (1) or only the first one (0). Detecting 'all' is the default.
Default value (Int)(1)
Validation Value must be between (Int)(0) and (Int)(1)
required parameter:
  • lats
mode <Short>
Description Toggles between detecting max derivative or positive(+) slope threshold crossing and detecting minimum derivative and negative(-) slope threshold crossing.
Default value (Short)(0)
Validation

Possible values are

  • (Short)(1): detect min derivative or -slope threshold crossing
  • (Short)(0): detect max derivative or +slope threshold crossing
required parameter:
  • lats
threshold <Float>
Description Defines the crossing threshold (for method 1) or maximum derivative threshold (for method 2)
Default value (Float)(-10.)
required parameter:
  • lats
method <Int>
Description Describes the method used to determine the instant of local activation. Define the threshold using structure.threshold. Choose if you want to evaluate during the rising or falling slope of the signal using structure.mode.
Default value (Int)(1)
Validation

Possible values are

  • (Int)(2): instant of maximum derivative (do not use, not implemented yet)
  • (Int)(1): instant of threshold crossing
required parameter:
  • lats

Parameters

t_sentinel <Float>
Description Sentinel checks for activations, based on LATs. If none are found, exits simulation, else continues.
t_sentinel should always be >0 .
t_sentinel describes the time sentinel is run for from the t_sentinel_start time.
If during this time period no lats[] are detected, savequit() cleanly.
Default value (Float)(-1.)

Parameters

t_sentinel_start <Float>
Description Defines the time instant when checking for quiescence is started
Default value (Float)(0.)

Parameters

sentinel_ID <Int>
Description Sentinel will check the LAT ID specified here as a reference to quit or continue the simulation.
Default value (Int)(-1)
Validation Value must be smaller than (Int)(num_LATs-1)

Parameters

compute_APD <Flag>
Description Defines if the actionpotential duration should be computed
- If is set to 1 = computes action potential durations
- If is set to 0 = action potential durations are not calculated
Default value (Flag)(PrMFALSE)

Parameters

actthresh <Float>
Description Defines the threshold to determine if element was activated, e.g the threshold where an action potential was triggered.
The magnitude is used from the signal to be thresholded.
Unit mV
Default value (Float)(30.)

Parameters

recovery_thresh <Float>
Description Defines the threshold to determine if element wich was activated recovered back to its steadystate.
The magnitude is used from the signal to be thresholded.
Unit mV
Default value (Float)(-60.)
openCARP is designed to support multi-physics from the ground up. Therefore, the mesh regions are assigned to different physics. For simple EP experiments on the whole mesh without bath, no additional input w.r.t. CARPentry is required, as all regions are assigned by default to the Intracellular and Extracellular domains. With a bath present, the user needs to inform the simulator which regions form which simulation domains.

Parameters

num_phys_regions <Int>
Description The number of physics regions
Default value (Int)(0)
Validation Value must be greater than (Int)(0)
required parameters:
  • phys_region
  • phys_region[PrMelem1].num_IDs
  • phys_region[PrMelem1].name
  • phys_region[PrMelem1].ptype
  • phys_region[PrMelem1].ID
Description Array containing the defined physics regions.

Parameters

ID <Int>
Description Define a list of tags forming a mesh region.
Default value (Int)(0)
required parameters:
  • phys_region.num_IDs
  • phys_region
num_IDs <Int>
Description Defines the number of IDs (equivalent to element tags) listed under 'ID'.
Default value (Int)(0)
required parameter:
  • phys_region
name <String>
Description Symbolic name for the physics region
Default value (String)("")
required parameter:
  • phys_region
ptype <Int>
Description Defines the type of physics.
Default value (Int)(0)
Validation

Possible values are

  • (Int)(1): Extracellular Electrics
  • (Int)(0): Intracellular Electrics
required parameter:
  • phys_region