OpenCMISS-Iron Internal API Documentation
finite_elasticity_routines Module Reference

This module handles all finite elasticity routines. More...

## Functions/Subroutines

subroutine, public finiteelasticity_boundaryconditionsanalyticcalculate (EQUATIONS_SET, BOUNDARY_CONDITIONS, ERR, ERROR,)
Calculates the analytic solution and sets the boundary conditions for an analytic problem. More...

subroutine finiteelasticity_cylinderanalyticcalculate (X, ANALYTIC_USER_PARAMS, DEFORMED_X, P, ERR, ERROR,)
Calcualates the analytic solution (deformed coordinates and hydrostatic pressure) for cylinder inflation+extension+torsion problem. More...

real(dp) function finite_elasticity_cylinder_analytic_func_evaluate (MU1, PIN, POUT, LAMBDA, TSI, A1, A2, C1, C2)
Evaluates the residual function required to solve for MU1, in the cylinder analytic example. More...

subroutine finite_elasticity_gauss_elasticity_tensor (EQUATIONS_SET, DEPENDENT_INTERPOLATED_POINT, MATERIALS_INTERPOLATED_POINT, ELASTICITY_TENSOR, HYDRO_ELASTICITY_VOIGT, STRESS_TENSOR, DZDNU, Jznu, ELEMENT_NUMBER, GAUSS_POINT_NUMBER, ERR, ERROR,)
Evaluates the spatial elasticity and stress tensor in Voigt form at a given Gauss point. More...

subroutine, public finiteelasticity_finiteelementjacobianevaluate (EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
Evaluates the element Jacobian matrix for the given element number for a finite elasticity class finite element equation set. More...

subroutine finite_elasticity_push_elasticity_tensor (ELASTICITY_TENSOR, DZDNU, Jznu, ERR, ERROR,)
Push-forward the rank 4 elasticity tensor. More...

subroutine finite_elasticity_push_stress_tensor (STRESS_TENSOR, DZDNU, Jznu, ERR, ERROR,)
Push-forward the rank 2 Piola stress tensor. More...

subroutine finiteelasticity_gaussgrowthtensor (equationsSet, numberOfDimensions, gaussPointNumber, elementNumber, dependentField, deformationGradientTensor, growthTensor, elasticDeformationGradientTensor, Jg, Je, err, error,)
Evaluates the growth tensor at a given Gauss point and calculates the elastic part of the deformation gradient tensor. More...

subroutine finiteelasticity_straintensor (deformationGradientTensor, rightCauchyDeformationTensor, fingerDeformationTensor, Jacobian, greenStrainTensor, err, error,)
Evaluates the strain tensor given the deformation gradient tensor. More...

subroutine, public finiteelasticity_finiteelementresidualevaluate (EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
Evaluates the residual and RHS vectors for a finite elasticity finite element equations set. More...

subroutine, public finiteelasticity_finiteelementpreresidualevaluate (EQUATIONS_SET, ERR, ERROR,)
Pre-evaluates the residual for a finite elasticity finite element equations set. More...

subroutine, public finiteelasticity_finiteelementpostresidualevaluate (EQUATIONS_SET, ERR, ERROR,)
Post-evaluates the residual for a finite elasticity finite element equations set. More...

subroutine, public finiteelasticityequationsset_derivedvariablecalculate (equationsSet, derivedType, err, error,)
Calculated an output field for a finite elasticity equations set. More...

subroutine, public finiteelasticity_straincalculate (equationsSet, strainField, strainFieldVariableType, err, error,)
Calculates the strain field for a finite elasticity finite element equations set. More...

subroutine, public finiteelasticity_tensorinterpolatexi (equationsSet, tensorEvaluateType, userElementNumber, xi, values, err, error,)
Evaluates a tensor at a given element xi location. More...

subroutine finiteelasticity_surfacepressurejacobianevaluate (EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)

subroutine finiteelasticity_surfacepressureresidualevaluate (EQUATIONS_SET, ELEMENT_NUMBER, var1, var2, ERR, ERROR,)

subroutine, public finiteelasticity_gaussdeformationgradienttensor (dependentInterpPointMetrics, geometricInterpPointMetrics, fibreInterpolatedPoint, dZdNu, err, error,)
Evaluates the deformation gradient tensor at a given Gauss point. More...

subroutine finite_elasticity_gauss_cauchy_tensor (EQUATIONS_SET, DEPENDENT_INTERPOLATED_POINT, MATERIALS_INTERPOLATED_POINT, DARCY_DEPENDENT_INTERPOLATED_POINT, INDEPENDENT_INTERPOLATED_POINT, CAUCHY_TENSOR, Jznu, DZDNU, ELEMENT_NUMBER, GAUSS_POINT_NUMBER, ERR, ERROR,)
Evaluates the Cauchy stress tensor at a given Gauss point. More...

Evaluates the growth tensor at a given Gauss point and calculates the elastic part of the deformation gradient tensor. More...

Evaluates the strain tensor given the deformation gradient tensor. More...

subroutine finite_elasticity_gauss_stress_tensor (EQUATIONS_SET, DEPENDENT_INTERPOLATED_POINT, MATERIALS_INTERPOLATED_POINT, STRESS_TENSOR, DZDNU, Jznu, ELEMENT_NUMBER, GAUSS_POINT_NUMBER, ERR, ERROR,)
Evaluates the Cauchy stress tensor at a given Gauss point. More...

subroutine finiteelasticity_piolaaddactivecontraction (INDEPENDENT_FIELD, MATERIALS_FIELD, PIOLA_FF, E_FF, ELEMENT_NUMBER, GAUSS_POINT_NUMBER, ERR, ERROR,)

subroutine finite_elasticity_fmm (TIME, DT, PREV_LAMBDA, CURR_LAMBDA, Q123, ISO_TA, TA)

subroutine finite_elasticity_gauss_dfdz (INTERPOLATED_POINT, ELEMENT_NUMBER, GAUSS_POINT_NUMBER, NUMBER_OF_DIMENSIONS, NUMBER_OF_XI, DFDZ, ERR, ERROR,)
Evaluates df/dz (derivative of interpolation function wrt deformed coord) matrix at a given Gauss point. More...

subroutine, public finite_elasticity_equations_set_setup (EQUATIONS_SET, EQUATIONS_SET_SETUP, ERR, ERROR,)
Sets up the finite elasticity equation type of an elasticity equations set class. More...

subroutine, public finiteelasticity_equationssetsolutionmethodset (EQUATIONS_SET, SOLUTION_METHOD, ERR, ERROR,)
Sets/changes the solution method for a finite elasticity equation type of an elasticity equations set class. More...

subroutine, public finiteelasticity_equationssetspecificationset (equationsSet, specification, err, error,)
Sets the equation specification for a finite elasticity equation type of an elasticity equations set class. More...

subroutine, public finite_elasticity_problem_setup (PROBLEM, PROBLEM_SETUP, ERR, ERROR,)
Sets up the finite elasticity problem. More...

subroutine, public finiteelasticity_contactproblemsetup (PROBLEM, PROBLEM_SETUP, ERR, ERROR,)
Sets up the finite elasticity problem. More...

subroutine, public finiteelasticity_problemspecificationset (problem, problemSpecification, err, error,)
Sets the problem specification for a finite elasticity type problem. More...

subroutine, public finiteelasticity_contactproblemspecificationset (problem, problemSpecification, err, error,)
Sets/changes the problem subtype for a finite elasticity contact type . More...

subroutine, public finite_elasticity_post_solve (CONTROL_LOOP, SOLVER, ERR, ERROR,)
Sets up the finite elasticity problem post solve. More...

subroutine, public finite_elasticity_post_solve_output_data (CONTROL_LOOP, SOLVER, ERR, ERROR,)
Sets up the finite elasticity problem post solve output data. More...

subroutine, public finiteelasticity_controltimelooppreloop (CONTROL_LOOP, ERR, ERROR,)
Runs before each time loop for a finite elasticity problem. More...

subroutine, public finiteelasticity_controlloadincrementlooppostloop (controlLoop, err, error,)
Executes after each loop of a control loop for finite elasticity problems, i.e., after each load increment in a load increment loop. More...

subroutine, public finite_elasticity_pre_solve (CONTROL_LOOP, SOLVER, ERR, ERROR,)
Sets up the finite elasticity problem pre-solve. More...

subroutine finite_elasticity_evaluate_evolution_law (SOLVER, ERR, ERROR,)
Evaluates the evolution law of a multiscale active strain muscle model. More...

subroutine finiteelasticity_presolvegetsoliddisplacement (CONTROL_LOOP, SOLVER, ERR, ERROR,)
Read in the displacement field for a PGM elasticity problem. More...

subroutine finiteelasticity_presolveupdateboundaryconditions (CONTROL_LOOP, SOLVER, ERR, ERROR,)
Update boundary conditions for finite elasticity pre solve. More...

subroutine, public evaluate_chapelle_function (Jznu, ffact, dfdJfact, ERR, ERROR,)
Evaluates the functions f(J) and f\'(J); Eq.(21) in Chapelle, Gerbeau, Sainte-Marie, Vignon-Clementel, Computational Mechanics (2010) More...

Evaluates the 2nd Piola-Kirchhoff stress tensor; Eq.(13) in Chapelle, Gerbeau, Sainte-Marie, Vignon-Clementel, Computational Mechanics (2010) More...

subroutine, public get_darcy_finite_elasticity_parameters (DARCY_RHO_0_F, Mfact, bfact, p0fact, ERR, ERROR,)
Sets some data for the coupled Darcy / finite-elasticity model. More...

subroutine, public finite_elasticity_load_increment_apply (EQUATIONS_SET, ITERATION_NUMBER, MAXIMUM_NUMBER_OF_ITERATIONS, ERR, ERROR,)
Apply load increments to the gravity vector. More...

## Variables

integer(intg), parameter, public finite_elasticity_analytic_cylinder_param_pin_idx =1
Inner pressure parameter index. More...

integer(intg), parameter, public finite_elasticity_analytic_cylinder_param_pout_idx =2
Outer pressure parameter index. More...

integer(intg), parameter, public finite_elasticity_analytic_cylinder_param_lambda_idx =3
Lambda parameter index. More...

integer(intg), parameter, public finite_elasticity_analytic_cylinder_param_tsi_idx =4
Tsi parameter index. More...

integer(intg), parameter, public finite_elasticity_analytic_cylinder_param_rin_idx =5

integer(intg), parameter, public finite_elasticity_analytic_cylinder_param_rout_idx =6

integer(intg), parameter, public finite_elasticity_analytic_cylinder_param_c1_idx =7
c1 parameter index More...

integer(intg), parameter, public finite_elasticity_analytic_cylinder_param_c2_idx =8
c2 parameter index More...

## Detailed Description

This module handles all finite elasticity routines.

## Function/Subroutine Documentation

 subroutine, public finite_elasticity_routines::evaluate_chapelle_function ( real(dp), intent(in) Jznu, real(dp), intent(out) ffact, real(dp), intent(out) dfdJfact, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )

Evaluates the functions f(J) and f\'(J); Eq.(21) in Chapelle, Gerbeau, Sainte-Marie, Vignon-Clementel, Computational Mechanics (2010)

Parameters
 [in] jznu Jznu=DETERMINANT(AZL,ERR,ERROR)**0.5_DP [out] ffact f(Jznu) of the INRIA model [out] dfdjfact dfdJfact = f'(Jznu) of the INRIA model [out] err The error code [out] error The error string

Definition at line 10814 of file finite_elasticity_routines.f90.

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

 subroutine finite_elasticity_routines::evaluate_chapelle_piola_tensor_addition ( real(dp), dimension(3,3), intent(in) AZL, real(dp), dimension(3,3), intent(in) AZU, real(dp), intent(in) DARCY_MASS_INCREASE, real(dp), dimension(3,3), intent(out) PIOLA_TENSOR_ADDITION, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private

Evaluates the 2nd Piola-Kirchhoff stress tensor; Eq.(13) in Chapelle, Gerbeau, Sainte-Marie, Vignon-Clementel, Computational Mechanics (2010)

Parameters
 [in] azl C=F\'F [in] azu inverse of AZL [in] darcy_mass_increase mass increase [out] piola_tensor_addition Addition to the 2nd Piola-Kirchhoff tensor [out] err The error code [out] error The error string

Definition at line 10848 of file finite_elasticity_routines.f90.

 real(dp) function finite_elasticity_routines::finite_elasticity_cylinder_analytic_func_evaluate ( real(dp) MU1, real(dp) PIN, real(dp) POUT, real(dp) LAMBDA, real(dp) TSI, real(dp) A1, real(dp) A2, real(dp) C1, real(dp) C2 )
private

Evaluates the residual function required to solve for MU1, in the cylinder analytic example.

Definition at line 593 of file finite_elasticity_routines.f90.

References fluid_mechanics_io_routines::element_number.

Referenced by finiteelasticity_cylinderanalyticcalculate().

 subroutine finite_elasticity_routines::finite_elasticity_evaluate_evolution_law ( type(solver_type), pointer SOLVER, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private

Evaluates the evolution law of a multiscale active strain muscle model.

Parameters
 solver A pointer to the solver [out] err The error code [out] error The error string

Definition at line 9857 of file finite_elasticity_routines.f90.

Referenced by finite_elasticity_pre_solve().

 subroutine finite_elasticity_routines::finite_elasticity_fmm ( real(dp), intent(in) TIME, real(dp), intent(in) DT, real(dp), intent(in) PREV_LAMBDA, real(dp), intent(inout) CURR_LAMBDA, real(dp), dimension(:), intent(inout) Q123, real(dp), intent(in) ISO_TA, real(dp), intent(out) TA )
private
 subroutine finite_elasticity_routines::finite_elasticity_gauss_cauchy_tensor ( type(equations_set_type), intent(in), pointer EQUATIONS_SET, type(field_interpolated_point_type), pointer DEPENDENT_INTERPOLATED_POINT, type(field_interpolated_point_type), pointer MATERIALS_INTERPOLATED_POINT, type(field_interpolated_point_type), pointer DARCY_DEPENDENT_INTERPOLATED_POINT, type(field_interpolated_point_type), pointer INDEPENDENT_INTERPOLATED_POINT, real(dp), dimension(:,:), intent(out) CAUCHY_TENSOR, real(dp), intent(out) Jznu, real(dp), dimension(3,3), intent(in) DZDNU, integer(intg), intent(in) ELEMENT_NUMBER, integer(intg), intent(in) GAUSS_POINT_NUMBER, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private
 subroutine finite_elasticity_routines::finite_elasticity_gauss_dfdz ( type(field_interpolated_point_type), pointer INTERPOLATED_POINT, integer(intg), intent(in) ELEMENT_NUMBER, integer(intg), intent(in) GAUSS_POINT_NUMBER, integer(intg), intent(in) NUMBER_OF_DIMENSIONS, integer(intg), intent(in) NUMBER_OF_XI, real(dp), dimension(:,:,:), intent(out) DFDZ, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private

Evaluates df/dz (derivative of interpolation function wrt deformed coord) matrix at a given Gauss point.

Parameters
 interpolated_point Interpolated point for the dependent field [in] element_number The element number [in] gauss_point_number The gauss point number [in] number_of_dimensions The number of dimensions [in] number_of_xi The number of xi directions for the interpolation [out] dfdz On return, a matrix containing the derivatives of the basis functions wrt the deformed coordinates [out] err The error code [out] error The error string

Definition at line 5684 of file finite_elasticity_routines.f90.

Referenced by finiteelasticity_finiteelementresidualevaluate().

 subroutine finite_elasticity_routines::finite_elasticity_gauss_elasticity_tensor ( type(equations_set_type), intent(in), pointer EQUATIONS_SET, type(field_interpolated_point_type), pointer DEPENDENT_INTERPOLATED_POINT, type(field_interpolated_point_type), pointer MATERIALS_INTERPOLATED_POINT, real(dp), dimension(:,:), intent(out) ELASTICITY_TENSOR, real(dp), dimension(:), intent(out) HYDRO_ELASTICITY_VOIGT, real(dp), dimension(:), intent(out) STRESS_TENSOR, real(dp), dimension(:,:), intent(in) DZDNU, real(dp), intent(in) Jznu, integer(intg), intent(in) ELEMENT_NUMBER, integer(intg), intent(in) GAUSS_POINT_NUMBER, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private

Evaluates the spatial elasticity and stress tensor in Voigt form at a given Gauss point.

Parameters
 [in] equations_set A pointer to the equations set [out] elasticity_tensor Rank 4 elasticity tensor in Voigt notation [out] hydro_elasticity_voigt Rank 2 hydrostatic portion of the elasticity tensor in Voigt notation [out] stress_tensor Rank 2 stress tensor in Voigt notation [in] dzdnu The deformation gradient [in] jznu The Jacobian [in] gauss_point_number Element/Gauss point number [out] err The error code [out] error The error string

Definition at line 619 of file finite_elasticity_routines.f90.

Referenced by finiteelasticity_finiteelementjacobianevaluate().

 subroutine finite_elasticity_routines::finite_elasticity_gauss_stress_tensor ( type(equations_set_type), intent(in), pointer EQUATIONS_SET, type(field_interpolated_point_type), pointer DEPENDENT_INTERPOLATED_POINT, type(field_interpolated_point_type), pointer MATERIALS_INTERPOLATED_POINT, real(dp), dimension(:), intent(out) STRESS_TENSOR, real(dp), dimension(3,3), intent(in) DZDNU, real(dp), intent(in) Jznu, integer(intg), intent(in) ELEMENT_NUMBER, integer(intg), intent(in) GAUSS_POINT_NUMBER, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private

Evaluates the Cauchy stress tensor at a given Gauss point.

Parameters
 [in] equations_set A pointer to the equations set [in] gauss_point_number Element/Gauss point number [out] err The error code [out] error The error string

Definition at line 5454 of file finite_elasticity_routines.f90.

 subroutine, public finite_elasticity_routines::finite_elasticity_load_increment_apply ( type(equations_set_type), pointer EQUATIONS_SET, integer(intg), intent(in) ITERATION_NUMBER, integer(intg), intent(in) MAXIMUM_NUMBER_OF_ITERATIONS, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )

Apply load increments to the gravity vector.

Parameters
 [in] iteration_number The current load increment iteration index [in] maximum_number_of_iterations Final index for load increment loop [out] err The error code [out] error The error string

Definition at line 10947 of file finite_elasticity_routines.f90.

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

 subroutine, public finite_elasticity_routines::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 finite elasticity problem post solve.

Parameters
 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 9326 of file finite_elasticity_routines.f90.

 subroutine, public finite_elasticity_routines::finite_elasticity_post_solve_output_data ( 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 finite elasticity problem post solve output data.

Parameters
 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 9407 of file finite_elasticity_routines.f90.

 subroutine, public finite_elasticity_routines::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 finite_elasticity_routines::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 )
 subroutine finite_elasticity_routines::finite_elasticity_push_elasticity_tensor ( real(dp), dimension(6,6), intent(inout) ELASTICITY_TENSOR, real(dp), dimension(3,3), intent(in) DZDNU, real(dp), intent(in) Jznu, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private

Push-forward the rank 4 elasticity tensor.

Parameters
 [out] err The error code [out] error The error string

Definition at line 1226 of file finite_elasticity_routines.f90.

Referenced by finite_elasticity_gauss_elasticity_tensor().

 subroutine finite_elasticity_routines::finite_elasticity_push_stress_tensor ( real(dp), dimension(6), intent(inout) STRESS_TENSOR, real(dp), dimension(3,3), intent(in) DZDNU, real(dp), intent(in) Jznu, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private

Push-forward the rank 2 Piola stress tensor.

Parameters
 [out] err The error code [out] error The error string

Definition at line 1265 of file finite_elasticity_routines.f90.

 subroutine, public finite_elasticity_routines::finiteelasticity_boundaryconditionsanalyticcalculate ( type(equations_set_type), pointer EQUATIONS_SET, type(boundary_conditions_type), pointer BOUNDARY_CONDITIONS, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )

Calculates the analytic solution and sets the boundary conditions for an analytic problem.

Parameters
 [out] err The error code [out] error The error string

Definition at line 140 of file finite_elasticity_routines.f90.

 subroutine, public finite_elasticity_routines::finiteelasticity_contactproblemsetup ( type(problem_type), pointer PROBLEM, type(problem_setup_type), intent(inout) PROBLEM_SETUP, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
 subroutine, public finite_elasticity_routines::finiteelasticity_contactproblemspecificationset ( type(problem_type), pointer problem, integer(intg), dimension(:), intent(in) problemSpecification, integer(intg), intent(out) err, type(varying_string), intent(out) error )

Sets/changes the problem subtype for a finite elasticity contact type .

Parameters
 problem A pointer to the problem to set the problem subtype for [in] problemspecification The problem specification to set [out] err The error code [out] error The error string

Definition at line 9266 of file finite_elasticity_routines.f90.

 subroutine, public finite_elasticity_routines::finiteelasticity_controlloadincrementlooppostloop ( type(control_loop_type), pointer controlLoop, integer(intg), intent(out) err, type(varying_string), intent(out) error )

Executes after each loop of a control loop for finite elasticity problems, i.e., after each load increment in a load increment loop.

Parameters
 controlloop A pointer to the control loop [out] err The error code [out] error The error string

Definition at line 9619 of file finite_elasticity_routines.f90.

Referenced by elasticity_routines::elasticity_controllooppostloop().

 subroutine, public finite_elasticity_routines::finiteelasticity_controltimelooppreloop ( type(control_loop_type), pointer CONTROL_LOOP, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )

Runs before each time loop for a finite elasticity problem.

Parameters
 control_loop A pointer to the time control loop [out] err The error code [out] error The error string

Definition at line 9545 of file finite_elasticity_routines.f90.

 subroutine finite_elasticity_routines::finiteelasticity_cylinderanalyticcalculate ( real(dp), dimension(:), intent(in) X, real(dp), dimension(:), intent(in) ANALYTIC_USER_PARAMS, real(dp), dimension(3), intent(out) DEFORMED_X, real(dp), intent(out) P, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private

Calcualates the analytic solution (deformed coordinates and hydrostatic pressure) for cylinder inflation+extension+torsion problem.

Parameters
 [in] x Undeformed coordinates [in] analytic_user_params Array containing the problem parameters [out] deformed_x Deformed coordinates [out] p Hydrostatic pressure at the given material coordintae [out] err The error code [out] error The error string

Definition at line 499 of file finite_elasticity_routines.f90.

Referenced by finiteelasticity_boundaryconditionsanalyticcalculate().

 subroutine, public finite_elasticity_routines::finiteelasticity_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 finite_elasticity_routines::finiteelasticity_equationssetspecificationset ( type(equations_set_type), pointer equationsSet, integer(intg), dimension(:), intent(in) specification, integer(intg), intent(out) err, type(varying_string), intent(out) error )
 subroutine, public finite_elasticity_routines::finiteelasticity_finiteelementjacobianevaluate ( type(equations_set_type), pointer EQUATIONS_SET, integer(intg), intent(in) ELEMENT_NUMBER, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )

Evaluates the element Jacobian matrix for the given element number for a finite elasticity class finite element equation set.

Parameters
 equations_set A pointer to the equations set [in] element_number The element number to evaluate the Jacobian for [out] err The error code [out] error The error string

Definition at line 832 of file finite_elasticity_routines.f90.

 subroutine, public finite_elasticity_routines::finiteelasticity_gaussdeformationgradienttensor ( type(field_interpolated_point_metrics_type), pointer dependentInterpPointMetrics, type(field_interpolated_point_metrics_type), pointer geometricInterpPointMetrics, type(field_interpolated_point_type), pointer fibreInterpolatedPoint, real(dp), dimension(3,3), intent(out) dZdNu, integer(intg), intent(out) err, type(varying_string), intent(out) error )

Evaluates the deformation gradient tensor at a given Gauss point.

Parameters
 [out] dzdnu dZdNu(coordinateIdx,coordianteIdx). On return, the deformation gradient tensor [out] err The error code [out] error The error string

Definition at line 3594 of file finite_elasticity_routines.f90.

 subroutine finite_elasticity_routines::finiteelasticity_gaussgrowthtensor ( type(equations_set_type), intent(in), pointer equationsSet, integer(intg), intent(in) numberOfDimensions, integer(intg), intent(in) gaussPointNumber, integer(intg), intent(in) elementNumber, type(field_type), pointer dependentField, real(dp), dimension(3,3), intent(in) deformationGradientTensor, real(dp), dimension(3,3), intent(out) growthTensor, real(dp), dimension(3,3), intent(out) elasticDeformationGradientTensor, real(dp), intent(out) Jg, real(dp), intent(out) Je, integer(intg), intent(out) err, type(varying_string), intent(out) error )
private

Evaluates the growth tensor at a given Gauss point and calculates the elastic part of the deformation gradient tensor.

Parameters
 [in] equationsset A pointer to the equations set [in] numberofdimensions The number of dimensions [in] gausspointnumber The Gauss point number to evaluate the growth tensor at [in] elementnumber The element number to evaluate the growth tensor at dependentfield A pointer to the dependent field [in] deformationgradienttensor The full deformation gradient tensor [out] growthtensor On output, the growth tensor [out] elasticdeformationgradienttensor On output, the elastic part of the deformation gradient tensor [out] jg On output, the Jacobian of the growth tensor [out] je On output, the Jacobian of the elastic tensor [out] err The error code [out] error The error string

Definition at line 1305 of file finite_elasticity_routines.f90.

 subroutine finite_elasticity_routines::finiteelasticity_gaussgrowthtensor_newer123 ( type(equations_set_type), intent(in), pointer equationsSet, integer(intg), intent(in) numberOfDimensions, integer(intg), intent(in) gaussPointNumber, integer(intg), intent(in) elementNumber, type(field_type), pointer dependentField, real(dp), dimension(3,3), intent(in) deformationGradientTensor, real(dp), dimension(3,3), intent(out) growthTensor, real(dp), dimension(3,3), intent(out) elasticDeformationGradientTensor, real(dp), intent(out) Jg, real(dp), intent(out) Je, integer(intg), intent(out) err, type(varying_string), intent(out) error )
private

Evaluates the growth tensor at a given Gauss point and calculates the elastic part of the deformation gradient tensor.

Parameters
 [in] equationsset A pointer to the equations set [in] numberofdimensions The number of dimensions [in] gausspointnumber The Gauss point number to evaluate the growth tensor at [in] elementnumber The element number to evaluate the growth tensor at dependentfield A pointer to the dependent field [in] deformationgradienttensor The full deformation gradient tensor [out] growthtensor On output, the growth tensor [out] elasticdeformationgradienttensor On output, the elastic part of the deformation gradient tensor [out] jg On output, the Jacobian of the growth tensor [out] je On output, the Jacobian of the elastic tensor [out] err The error code [out] error The error string

Definition at line 5320 of file finite_elasticity_routines.f90.

 subroutine finite_elasticity_routines::finiteelasticity_piolaaddactivecontraction ( type(field_type), intent(in), pointer INDEPENDENT_FIELD, type(field_type), intent(in), pointer MATERIALS_FIELD, real(dp), intent(inout) PIOLA_FF, real(dp), intent(in) E_FF, integer(intg), intent(in) ELEMENT_NUMBER, integer(intg), intent(in) GAUSS_POINT_NUMBER, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private
Parameters
 [in,out] piola_ff The (1,1)=(fiber,fiber) component of the stress tensor [in] e_ff E(1,1) [in] gauss_point_number Element/Gauss point number [out] err The error code [out] error The error string

Definition at line 5574 of file finite_elasticity_routines.f90.

Referenced by finite_elasticity_gauss_cauchy_tensor().

 subroutine finite_elasticity_routines::finiteelasticity_presolvegetsoliddisplacement ( type(control_loop_type), pointer CONTROL_LOOP, type(solver_type), pointer SOLVER, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private

Read in the displacement field for a PGM elasticity problem.

Parameters
 control_loop A pointer to the control loop to solve. solver A pointer to the solvers [out] err The error code [out] error The error string

Definition at line 10292 of file finite_elasticity_routines.f90.

Referenced by finiteelasticity_controltimelooppreloop().

 subroutine finite_elasticity_routines::finiteelasticity_presolveupdateboundaryconditions ( type(control_loop_type), pointer CONTROL_LOOP, type(solver_type), pointer SOLVER, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private

Update boundary conditions for finite elasticity pre solve.

Parameters
 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 10426 of file finite_elasticity_routines.f90.

Referenced by finiteelasticity_controltimelooppreloop().

 subroutine, public finite_elasticity_routines::finiteelasticity_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 finite elasticity type problem.

Parameters
 problem A pointer to the problem to set the problem subtype for [in] problemspecification The problem specification to set [out] err the error code [out] error the error string

Definition at line 9204 of file finite_elasticity_routines.f90.

 subroutine, public finite_elasticity_routines::finiteelasticity_straincalculate ( type(equations_set_type), intent(in), pointer equationsSet, type(field_type), intent(inout), pointer strainField, integer(intg), intent(in) strainFieldVariableType, integer(intg), intent(out) err, type(varying_string), intent(out) error )

Calculates the strain field for a finite elasticity finite element equations set.

Parameters
 [in] equationsset A pointer to the equations set to calculate strain for [in,out] strainfield The field to store the strain in. [in] strainfieldvariabletype The field variable type of the output field to store the strain in. [out] err The error code [out] error The error string

Definition at line 2763 of file finite_elasticity_routines.f90.

 subroutine finite_elasticity_routines::finiteelasticity_straintensor ( real(dp), dimension(3,3), intent(in) deformationGradientTensor, real(dp), dimension(3,3), intent(out) rightCauchyDeformationTensor, real(dp), dimension(3,3), intent(out) fingerDeformationTensor, real(dp), intent(out) Jacobian, real(dp), dimension(3,3), intent(out) greenStrainTensor, integer(intg), intent(out) err, type(varying_string), intent(out) error )
private

Evaluates the strain tensor given the deformation gradient tensor.

Parameters
 [in] deformationgradienttensor The elastic part of the deformation gradient tensor [out] rightcauchydeformationtensor On output, the right Cauchy deformation tensor, C [out] fingerdeformationtensor On output, the finger deformation tensor, f [out] jacobian On output, the Jacobian of the deformation [out] greenstraintensor On output, the Green-Lagrange strain tensor [out] err The error code [out] error The error string

Definition at line 1365 of file finite_elasticity_routines.f90.

 subroutine finite_elasticity_routines::finiteelasticity_straintensor_newer123 ( real(dp), dimension(3,3), intent(in) deformationGradientTensor, real(dp), dimension(3,3), intent(out) rightCauchyDeformationTensor, real(dp), dimension(3,3), intent(out) fingerDeformationTensor, real(dp), intent(out) Jacobian, real(dp), dimension(3,3), intent(out) greenStrainTensor, integer(intg), intent(out) err, type(varying_string), intent(out) error )
private

Evaluates the strain tensor given the deformation gradient tensor.

Parameters
 [in] deformationgradienttensor The elastic part of the deformation gradient tensor [out] rightcauchydeformationtensor On output, the right Cauchy deformation tensor, C [out] fingerdeformationtensor On output, the finger deformation tensor, f [out] jacobian On output, the Jacobian of the deformation [out] greenstraintensor On output, the Green-Lagrange strain tensor [out] err The error code [out] error The error string

Definition at line 5398 of file finite_elasticity_routines.f90.

 subroutine finite_elasticity_routines::finiteelasticity_surfacepressurejacobianevaluate ( type(equations_set_type), pointer EQUATIONS_SET, integer(intg), intent(in) ELEMENT_NUMBER, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private
Parameters
 equations_set A pointer to the equations set [out] err The error code [out] error The error string

Definition at line 3250 of file finite_elasticity_routines.f90.

Referenced by finiteelasticity_finiteelementjacobianevaluate().

 subroutine finite_elasticity_routines::finiteelasticity_surfacepressureresidualevaluate ( type(equations_set_type), pointer EQUATIONS_SET, integer(intg), intent(in) ELEMENT_NUMBER, integer(intg), intent(in) var1, integer(intg), intent(in) var2, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )
private
Parameters
 equations_set A pointer to the equations set [in] var1 'U' variable number in single-physics case [in] var2 'DELUDELN' variable number in single-physics case [out] err The error code [out] error The error string

Definition at line 3441 of file finite_elasticity_routines.f90.

Referenced by finiteelasticity_finiteelementresidualevaluate().

 subroutine, public finite_elasticity_routines::finiteelasticity_tensorinterpolatexi ( type(equations_set_type), intent(in), pointer equationsSet, integer(intg), intent(in) tensorEvaluateType, integer(intg), intent(in) userElementNumber, real(dp), dimension(:), intent(in) xi, real(dp), dimension(3,3), intent(out) values, integer(intg), intent(out) err, type(varying_string), intent(out) error )

Evaluates a tensor at a given element xi location.

Parameters
 [in] equationsset A pointer to the equations set to calculate the tensor for [in] tensorevaluatetype The type of tensor to evaluate. [out] values The interpolated tensor values. [out] err The error code. [out] error The error string.

Definition at line 3033 of file finite_elasticity_routines.f90.

Referenced by elasticity_routines::elasticity_tensorinterpolatexi().

 subroutine, public finite_elasticity_routines::finiteelasticityequationsset_derivedvariablecalculate ( type(equations_set_type), intent(in), pointer equationsSet, integer(intg), intent(in) derivedType, integer(intg), intent(out) err, type(varying_string), intent(out) error )

Calculated an output field for a finite elasticity equations set.

Parameters
 [in] equationsset A pointer to the equations set to calculate the output for [in] derivedtype The derived field type to calculate.
EQUATIONS_SET_CONSTANTS::DerivedTypes.
Parameters
 [out] err The error code [out] error The error string

Definition at line 2712 of file finite_elasticity_routines.f90.

 subroutine, public finite_elasticity_routines::get_darcy_finite_elasticity_parameters ( real(dp), intent(out) DARCY_RHO_0_F, real(dp), intent(out) Mfact, real(dp), intent(out) bfact, real(dp), intent(out) p0fact, integer(intg), intent(out) ERR, type(varying_string), intent(out) ERROR )

Sets some data for the coupled Darcy / finite-elasticity model.

Parameters
 [out] err The error code [out] error The error string

Definition at line 10917 of file finite_elasticity_routines.f90.

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