OpenCMISS-Iron Internal API Documentation
|
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... | |
This module handles all routines pertaining to bioelectrics coupled with finite elasticity.
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 | ||
) |
Sets up the bioelectrics finite elasticity problem post solve.
control_loop | A pointer to the control loop to solve. | |
solver | A pointer to the solver | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 609 of file bioelectric_finite_elasticity_routines.f90.
References bioelectric_routines::bioelectric_post_solve(), base_routines::enters(), base_routines::exits(), finite_elasticity_routines::finite_elasticity_post_solve(), 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, solver_routines::solver_dae_type, solver_routines::solver_dynamic_type, and solver_routines::solver_nonlinear_type.
Referenced by multi_physics_routines::MULTI_PHYSICS_POST_SOLVE::multi_physics_post_solve().
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 | ||
) |
Sets up the bioelectrics finite elasticity problem pre-solve.
control_loop | A pointer to the control loop to solve. | |
solver | A pointer to the solver | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 536 of file bioelectric_finite_elasticity_routines.f90.
References biodomain_equation_routines::biodomain_pre_solve(), base_routines::enters(), base_routines::exits(), finite_elasticity_routines::finite_elasticity_pre_solve(), 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, and problem_constants::problem_monodomain_elasticity_w_titin_subtype.
Referenced by multi_physics_routines::MULTI_PHYSICS_PRE_SOLVE::multi_physics_pre_solve().
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.
problem | A pointer to the problem to setup | |
[in,out] | problem_setup | The problem setup information |
[out] | err | The error code |
[out] | error | The 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 | ||
) |
Computes the fibre stretch for bioelectrics finite elasticity problems.
control_loop | A pointer to the control loop to solve. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 764 of file bioelectric_finite_elasticity_routines.f90.
References basis_routines::basis_default_quadrature_scheme, control_loop_routines::control_loop_solvers_get(), base_routines::enters(), base_routines::errors(), base_routines::exits(), finite_elasticity_routines::finiteelasticity_gaussdeformationgradienttensor(), constants::first_part_deriv, 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_solver_equations_get(), and solver_routines::solvers_solver_get().
Referenced by bioelectricfiniteelasticity_controllooppreloop().
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 | ||
) |
Sets up the bioelectrics finite elasticity problem post-control loop.
control_loop | A pointer to the control loop to solve. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1347 of file bioelectric_finite_elasticity_routines.f90.
References biodomain_equation_routines::biodomain_control_loop_post_loop(), bioelectricfiniteelasticity_convergencecheck(), bioelectricfiniteelasticity_updategeometricfield(), control_loop_routines::control_loop_progress_output, control_loop_routines::control_loop_solvers_get(), control_loop_routines::control_loop_sub_loop_get(), base_routines::enters(), base_routines::errors(), base_routines::exits(), field_io_routines::field_io_nodes_export(), problem_constants::problem_bioelectric_finite_elasticity_type, 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_monodomain_1d3d_active_strain_subtype, problem_constants::problem_monodomain_elasticity_velocity_subtype, problem_constants::problem_monodomain_elasticity_w_titin_subtype, solver_routines::solver_solver_equations_get(), and solver_routines::solvers_solver_get().
Referenced by multi_physics_routines::MULTI_PHYSICS_CONTROL_LOOP_POST_LOOP::multi_physics_control_loop_post_loop().
subroutine, public bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_controllooppreloop | ( | type(control_loop_type), pointer | CONTROL_LOOP, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets up the bioelectrics finite elasticity problem pre-control loop.
control_loop | A pointer to the control loop to solve. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 674 of file bioelectric_finite_elasticity_routines.f90.
References bioelectric_finite_elasticity_compute_titin(), bioelectricfiniteelasticity_computefibrestretch(), bioelectricfiniteelasticity_forcelengthvelocityrelation(), bioelectricfiniteelasticity_independentfieldinterpolate(), base_routines::enters(), base_routines::errors(), base_routines::exits(), finite_elasticity_routines::finiteelasticity_controltimelooppreloop(), problem_constants::problem_bioelectric_finite_elasticity_type, 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_monodomain_1d3d_active_strain_subtype, problem_constants::problem_monodomain_elasticity_velocity_subtype, and problem_constants::problem_monodomain_elasticity_w_titin_subtype.
Referenced by multi_physics_routines::MULTI_PHYSICS_CONTROL_LOOP_PRE_LOOP::multi_physics_control_loop_pre_loop().
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.
control_loop | A pointer to the control loop to solve. | |
[out] | err | The error code |
[out] | error | The 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.
equations_set | A pointer to the equations set to setup | |
[in,out] | equations_set_setup | The equations set setup information |
[out] | err | The error code |
[out] | error | The 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 | ||
) |
Sets/changes the solution method for a bioelectrics finite elasticity equation type of a multi physics equations set class.
equations_set | A pointer to the equations set to set the solution method for | |
[in] | solution_method | The solution method to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 99 of file bioelectric_finite_elasticity_routines.f90.
References base_routines::enters(), equations_set_constants::equations_set_1d3d_monodomain_active_strain_subtype, equations_set_constants::equations_set_1d3d_monodomain_elasticity_subtype, equations_set_constants::equations_set_bem_solution_method, equations_set_constants::equations_set_fd_solution_method, equations_set_constants::equations_set_fem_solution_method, equations_set_constants::equations_set_fv_solution_method, equations_set_constants::equations_set_gfem_solution_method, equations_set_constants::equations_set_gfv_solution_method, equations_set_constants::equations_set_monodomain_elasticity_velocity_subtype, equations_set_constants::equations_set_monodomain_elasticity_w_titin_subtype, equations_set_constants::equations_set_standard_monodomain_elasticity_subtype, base_routines::errors(), and base_routines::exits().
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.
equations_set | A pointer to the equations set to perform the finite element calculations on | |
[in] | element_number | The element number to calculate |
[out] | err | The error code |
[out] | error | The 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 | ||
) |
Computes the bioelectrics finite elasticity force-length and force_velocity relations.
control_loop | A pointer to the control loop to solve. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 979 of file bioelectric_finite_elasticity_routines.f90.
References basis_routines::basis_default_quadrature_scheme, control_loop_routines::control_loop_node, 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_solver_equations_get(), and solver_routines::solvers_solver_get().
Referenced by bioelectricfiniteelasticity_controllooppreloop().
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 | ||
) |
Interpolates the finite elasticity independent field from the biolectrics independent field. NOTE: this is only temporary - will be replaced once embedded meshes are available.
control_loop | A pointer to the time control loop | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2618 of file bioelectric_finite_elasticity_routines.f90.
References basis_routines::basis_default_quadrature_scheme, 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::errors(), base_routines::exits(), problem_constants::problem_gudunov_monodomain_1d3d_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, and solver_routines::solvers_solver_get().
Referenced by bioelectricfiniteelasticity_controllooppreloop().
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 | ||
) |
Sets the problem specification for a bioelectric finite elasticity problem type .
problem | A pointer to the problem to set the problem specification for | |
[in] | problemspecification | The problem specification to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 213 of file bioelectric_finite_elasticity_routines.f90.
References base_routines::enters(), base_routines::errors(), base_routines::exits(), problem_constants::problem_bioelectric_finite_elasticity_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, and problem_constants::problem_multi_physics_class.
Referenced by multi_physics_routines::MultiPhysics_ProblemSpecificationSet::multiphysics_problemspecificationset().
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 | ||
) |
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.
control_loop | A pointer to the control loop to solve. | |
[in] | calc_closest_gauss_point | If true then the closest finite elasticity Gauss point for each bioelectrics node is calculated |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1658 of file bioelectric_finite_elasticity_routines.f90.
References basis_routines::basis_default_quadrature_scheme, 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::errors(), base_routines::exits(), constants::no_part_deriv, problem_constants::problem_bioelectric_finite_elasticity_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, and solver_routines::solvers_solver_get().
Referenced by bioelectricfiniteelasticity_controllooppostloop(), and bioelectricfiniteelasticity_convergencecheck().