7#ifndef SVZERODSOLVER_MODEL_CHAMBERELASTANCEINDUCTOR_HPP_
8#define SVZERODSOLVER_MODEL_CHAMBERELASTANCEINDUCTOR_HPP_
161 std::vector<double>& parameters)
override;
171 std::vector<double>& parameters)
override;
190 std::vector<std::pair<std::string, InputParameter>> params)
Activation function classes for cardiac chamber models.
BlockType
The types of blocks supported by the solver.
Definition BlockType.h:15
BlockClass
The classes/categories of blocks supported. Some classes require special handling (e....
Definition BlockType.h:44
SparseSystem source file.
Block(int id, Model *model, BlockType block_type, BlockClass block_class, std::vector< std::pair< std::string, InputParameter > > input_params)
Construct a new Block object.
Definition Block.h:101
const int id
Global ID of the block.
Definition Block.h:78
const Model * model
The model to which the block belongs.
Definition Block.h:79
const BlockType block_type
Type of this block.
Definition Block.h:80
TripletsContributions num_triplets
Number of triplets of element.
Definition ChamberElastanceInductor.h:174
void update_constant(SparseSystem &system, std::vector< double > ¶meters) override
Update the constant contributions of the element in a sparse system.
Definition ChamberElastanceInductor.cpp:12
std::unique_ptr< ActivationFunction > activation_func_
Activation function.
Definition ChamberElastanceInductor.h:197
void update_time(SparseSystem &system, std::vector< double > ¶meters) override
Update the time-dependent contributions of the element in a sparse system.
Definition ChamberElastanceInductor.cpp:32
ChamberElastanceInductor(int id, Model *model)
Construct a new ChamberElastanceInductor object.
Definition ChamberElastanceInductor.h:121
void setup_dofs(DOFHandler &dofhandler) override
Set up the degrees of freedom (DOF) of the block.
Definition ChamberElastanceInductor.cpp:7
ChamberElastanceInductor(int id, Model *model, BlockType block_type, std::vector< std::pair< std::string, InputParameter > > params)
Construct a ChamberElastanceInductor with custom block type and parameters. Used by derived classes.
Definition ChamberElastanceInductor.h:188
double Elas
Current chamber elastance.
Definition ChamberElastanceInductor.h:193
virtual void get_elastance_values(std::vector< double > ¶meters)
Compute elastance and rest volume from activation and parameters.
Definition ChamberElastanceInductor.cpp:43
ParamId
Local IDs of the parameters (shared indices first).
Definition ChamberElastanceInductor.h:133
double Vrest
Current rest volume.
Definition ChamberElastanceInductor.h:194
void set_activation_function(std::unique_ptr< ActivationFunction > af) override
Set activation function (for chamber blocks that use one).
Definition ChamberElastanceInductor.cpp:55
double act_
Definition ChamberElastanceInductor.h:195
Degree-of-freedom handler.
Definition DOFHandler.h:21
Model of 0D elements.
Definition Model.h:55
Sparse system.
Definition SparseSystem.h:30
The number of triplets that the element contributes to the global system.
Definition Block.h:27