OpenCMISS-Iron Internal API Documentation
bioelectric_finite_elasticity_routines Module Reference

This module handles all routines pertaining to bioelectrics coupled with finite elasticity. More...

Functions/Subroutines

subroutine, public bioelectricfiniteelasticity_equationssetsolutionmethodset (EQUATIONS_SET, SOLUTION_METHOD, ERR, ERROR,)
 Sets/changes the solution method for a bioelectrics finite elasticity equation type of a multi physics equations set class. More...
 
subroutine, public bioelectricfiniteelasticity_equationssetsetup (EQUATIONS_SET, EQUATIONS_SET_SETUP, ERR, ERROR,)
 Sets up the bioelectrics finite elasticity equation. More...
 
subroutine, public bioelectricfiniteelasticity_finiteelementcalculate (EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
 Calculates the element stiffness matrices and RHS for a bioelectrics finite elasticity equation finite element equations set. More...
 
subroutine, public bioelectricfiniteelasticity_problemspecificationset (problem, problemSpecification, err, error,)
 Sets the problem specification for a bioelectric finite elasticity problem type . More...
 
subroutine, public bioelectric_finite_elasticity_problem_setup (PROBLEM, PROBLEM_SETUP, ERR, ERROR,)
 Sets up the bioelectric finite elasticity problem. More...
 
subroutine, public bioelectric_finite_elasticity_pre_solve (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Sets up the bioelectrics finite elasticity problem pre-solve. More...
 
subroutine, public bioelectric_finite_elasticity_post_solve (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Sets up the bioelectrics finite elasticity problem post solve. More...
 
subroutine, public bioelectricfiniteelasticity_controllooppreloop (CONTROL_LOOP, ERR, ERROR,)
 Sets up the bioelectrics finite elasticity problem pre-control loop. More...
 
subroutine bioelectricfiniteelasticity_computefibrestretch (CONTROL_LOOP, ERR, ERROR,)
 Computes the fibre stretch for bioelectrics finite elasticity problems. More...
 
subroutine bioelectricfiniteelasticity_forcelengthvelocityrelation (CONTROL_LOOP, ERR, ERROR,)
 Computes the bioelectrics finite elasticity force-length and force_velocity relations. More...
 
subroutine, public bioelectricfiniteelasticity_controllooppostloop (CONTROL_LOOP, ERR, ERROR,)
 Sets up the bioelectrics finite elasticity problem post-control loop. More...
 
subroutine bioelectricfiniteelasticity_convergencecheck (CONTROL_LOOP, ERR, ERROR,)
 Check for the convergence of the bioelectric finite elasticity while loop, i.e., if the force-length and force-velocity relations yielded a different actual configuration. More...
 
subroutine, public bioelectricfiniteelasticity_updategeometricfield (CONTROL_LOOP, CALC_CLOSEST_GAUSS_POINT, ERR, ERROR,)
 Update the the bioelectric equation geometric field from the finite elasticity dependent field (deformed geometry) NOTE: this is only temporary - will be replaced once embedded meshes are available. More...
 
subroutine bioelectricfiniteelasticity_independentfieldinterpolate (CONTROL_LOOP, ERR, ERROR,)
 Interpolates the finite elasticity independent field from the biolectrics independent field. NOTE: this is only temporary - will be replaced once embedded meshes are available. More...
 
subroutine bioelectric_finite_elasticity_compute_titin (CONTROL_LOOP, ERR, ERROR,)
 Computes force enhancement based on the titin model of C Rode et al. (2009). Force depression is not yet implemented. Titin-induced force enhancement and force depression: A 'sticky-spring' mechanism in muscle contractions? C Rode, T Siebert, R Blickhan - Journal of theoretical biology, 2009. More...
 

Detailed Description

This module handles all routines pertaining to bioelectrics coupled with finite elasticity.

Function/Subroutine Documentation

subroutine bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_compute_titin ( type(control_loop_type), pointer  CONTROL_LOOP,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Computes force enhancement based on the titin model of C Rode et al. (2009). Force depression is not yet implemented. Titin-induced force enhancement and force depression: A 'sticky-spring' mechanism in muscle contractions? C Rode, T Siebert, R Blickhan - Journal of theoretical biology, 2009.

Definition at line 2981 of file bioelectric_finite_elasticity_routines.f90.

References control_loop_routines::control_loop_node, control_loop_routines::control_loop_solvers_get(), control_loop_routines::control_loop_sub_loop_get(), base_routines::enters(), base_routines::exits(), problem_constants::problem_monodomain_elasticity_w_titin_subtype, and solver_routines::solvers_solver_get().

Referenced by bioelectricfiniteelasticity_controllooppreloop().

subroutine, public bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_post_solve ( type(control_loop_type), pointer  CONTROL_LOOP,
type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)
subroutine, public bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_pre_solve ( type(control_loop_type), pointer  CONTROL_LOOP,
type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)
subroutine, public bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup ( type(problem_type), pointer  PROBLEM,
type(problem_setup_type), intent(inout)  PROBLEM_SETUP,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Sets up the bioelectric finite elasticity problem.

Parameters
problemA pointer to the problem to setup
[in,out]problem_setupThe problem setup information
[out]errThe error code
[out]errorThe error string

Definition at line 269 of file bioelectric_finite_elasticity_routines.f90.

References solver_routines::cellml_equations_create_finish(), solver_routines::cellml_equations_create_start(), control_loop_routines::control_loop_create_finish(), control_loop_routines::control_loop_create_start(), control_loop_routines::control_loop_node, control_loop_routines::control_loop_number_of_sub_loops_set(), control_loop_routines::control_loop_output_type_set(), control_loop_routines::control_loop_progress_output, control_loop_routines::control_loop_solvers_get(), control_loop_routines::control_loop_sub_loop_get(), control_loop_routines::control_loop_type_set(), base_routines::enters(), base_routines::exits(), problem_constants::problem_control_load_increment_loop_type, problem_constants::problem_control_time_loop_type, problem_constants::problem_control_while_loop_type, problem_constants::problem_gudunov_monodomain_1d3d_elasticity_subtype, problem_constants::problem_gudunov_monodomain_simple_elasticity_subtype, problem_constants::problem_monodomain_1d3d_active_strain_subtype, problem_constants::problem_monodomain_elasticity_velocity_subtype, problem_constants::problem_monodomain_elasticity_w_titin_subtype, problem_constants::problem_setup_cellml_equations_type, problem_constants::problem_setup_control_type, problem_constants::problem_setup_finish_action, problem_constants::problem_setup_initial_type, problem_constants::problem_setup_solver_equations_type, problem_constants::problem_setup_solvers_type, problem_constants::problem_setup_start_action, solver_routines::solver_cellml_equations_get(), solver_routines::solver_cmiss_library, solver_routines::solver_dae_type, solver_routines::solver_dynamic_crank_nicolson_scheme, solver_routines::solver_dynamic_degree_set(), solver_routines::solver_dynamic_first_degree, solver_routines::solver_dynamic_first_order, solver_routines::solver_dynamic_order_set(), solver_routines::solver_dynamic_restart_set(), solver_routines::solver_dynamic_scheme_set(), solver_routines::solver_dynamic_type, solver_routines::solver_equations_create_finish(), solver_routines::solver_equations_create_start(), problem_constants::solver_equations_first_order_dynamic, problem_constants::solver_equations_linear, solver_routines::solver_equations_linearity_type_set(), problem_constants::solver_equations_nonlinear, solver_routines::solver_equations_sparsity_type_set(), problem_constants::solver_equations_static, solver_routines::solver_equations_time_dependence_type_set(), solver_routines::solver_library_type_set(), solver_routines::solver_nonlinear_type, solver_routines::solver_petsc_library, solver_routines::solver_solver_equations_get(), solver_routines::solver_sparse_matrices, solver_routines::solver_type_set(), solver_routines::solvers_create_finish(), solver_routines::solvers_create_start(), solver_routines::solvers_number_set(), and solver_routines::solvers_solver_get().

Referenced by multi_physics_routines::MULTI_PHYSICS_PROBLEM_SETUP::multi_physics_problem_setup().

subroutine bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_computefibrestretch ( type(control_loop_type), pointer  CONTROL_LOOP,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)
subroutine, public bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_controllooppostloop ( type(control_loop_type), pointer  CONTROL_LOOP,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)
subroutine bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_convergencecheck ( type(control_loop_type), pointer  CONTROL_LOOP,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Check for the convergence of the bioelectric finite elasticity while loop, i.e., if the force-length and force-velocity relations yielded a different actual configuration.

Parameters
control_loopA pointer to the control loop to solve.
[out]errThe error code
[out]errorThe error string

Definition at line 1514 of file bioelectric_finite_elasticity_routines.f90.

References bioelectricfiniteelasticity_updategeometricfield(), control_loop_routines::control_loop_solvers_get(), base_routines::enters(), base_routines::errors(), base_routines::exits(), problem_constants::problem_control_load_increment_loop_type, problem_constants::problem_control_time_loop_type, problem_constants::problem_control_while_loop_type, solver_routines::solver_solution_update(), solver_routines::solver_solver_equations_get(), and solver_routines::solvers_solver_get().

Referenced by bioelectricfiniteelasticity_controllooppostloop().

subroutine, public bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_equationssetsetup ( type(equations_set_type), pointer  EQUATIONS_SET,
type(equations_set_setup_type), intent(inout)  EQUATIONS_SET_SETUP,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Sets up the bioelectrics finite elasticity equation.

Parameters
equations_setA pointer to the equations set to setup
[in,out]equations_set_setupThe equations set setup information
[out]errThe error code
[out]errorThe error string

Definition at line 163 of file bioelectric_finite_elasticity_routines.f90.

References base_routines::enters(), base_routines::errors(), and base_routines::exits().

subroutine, public bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_equationssetsolutionmethodset ( type(equations_set_type), pointer  EQUATIONS_SET,
integer(intg), intent(in)  SOLUTION_METHOD,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)
subroutine, public bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_finiteelementcalculate ( type(equations_set_type), pointer  EQUATIONS_SET,
integer(intg), intent(in)  ELEMENT_NUMBER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Calculates the element stiffness matrices and RHS for a bioelectrics finite elasticity equation finite element equations set.

Parameters
equations_setA pointer to the equations set to perform the finite element calculations on
[in]element_numberThe element number to calculate
[out]errThe error code
[out]errorThe error string

Definition at line 188 of file bioelectric_finite_elasticity_routines.f90.

References base_routines::enters(), base_routines::errors(), and base_routines::exits().

subroutine bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_forcelengthvelocityrelation ( type(control_loop_type), pointer  CONTROL_LOOP,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)
subroutine bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_independentfieldinterpolate ( type(control_loop_type), pointer  CONTROL_LOOP,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)
subroutine, public bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_problemspecificationset ( type(problem_type), pointer  problem,
integer(intg), dimension(:), intent(in)  problemSpecification,
integer(intg), intent(out)  err,
type(varying_string), intent(out)  error 
)
subroutine, public bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_updategeometricfield ( type(control_loop_type), pointer  CONTROL_LOOP,
logical, intent(in)  CALC_CLOSEST_GAUSS_POINT,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)