OpenCMISS-Iron Internal API Documentation
darcy_equations_routines Module Reference

This module handles all Darcy equations routines. More...

Functions/Subroutines

subroutine, public darcy_equationssetsolutionmethodset (EQUATIONS_SET, SOLUTION_METHOD, ERR, ERROR,)
 Sets/changes the solution method for a Darcy equation type of a fluid mechanics equations set class. More...
 
subroutine, public darcy_equation_equations_set_setup (EQUATIONS_SET, EQUATIONS_SET_SETUP, ERR, ERROR,)
 Sets up the Darcy equation. More...
 
subroutine, public darcy_equation_finite_element_calculate (EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
 Calculates the element stiffness matrices and RHS for a Darcy equation finite element equations set. More...
 
subroutine darcy_finiteelementfaceintegrate (equationsSet, elementNumber, dependentVariable, err, error,)
 Calculates the face integration term of the finite element formulation for Darcy's equation, required for pressure boundary conditions. More...
 
subroutine, public darcy_equationssetspecificationset (equationsSet, specification, err, error,)
 Sets the equation specification for a Darcy equation type of a fluid mechanics equations set class. More...
 
subroutine, public darcy_problemspecificationset (problem, problemSpecification, err, error,)
 Sets the problem specification for a Darcy problem. More...
 
subroutine, public darcy_equation_problem_setup (PROBLEM, PROBLEM_SETUP, ERR, ERROR,)
 Sets up the Darcy equations problem. More...
 
subroutine, public darcy_equation_pre_solve (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Sets up the Darcy problem pre-solve. More...
 
subroutine, public darcy_control_time_loop_pre_loop (CONTROL_LOOP, ERR, ERROR,)
 
subroutine darcy_presolvestorereferencedata (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Store some reference data for ALE Darcy problem. More...
 
subroutine darcy_presolvestorepreviousdata (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Store data of previous time step (mesh position) for ALE Darcy problem. More...
 
subroutine darcy_equation_pre_solve_ale_update_mesh (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Update mesh position and velocity for ALE Darcy problem. More...
 
subroutine darcy_presolveupdateboundaryconditions (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Update boundary conditions for Darcy equation pre solve. More...
 
subroutine darcy_presolveupdatematrixproperties (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Update materials field for ALE Darcy problem. More...
 
subroutine, public darcy_equation_post_solve (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Sets up the Darcy problem post solve. More...
 
subroutine, public darcy_equation_post_solve_output_data (CONTROL_LOOP, SOLVER, err, error,)
 Sets up the Darcy problem post solve output data. More...
 
subroutine, public darcy_boundaryconditionsanalyticcalculate (EQUATIONS_SET, BOUNDARY_CONDITIONS, ERR, ERROR,)
 Calculates the analytic solution and sets the boundary conditions for an analytic problem. More...
 
subroutine darcy_presolvegetsoliddisplacement (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Update geometric field for ALE Darcy problem. More...
 
subroutine, public darcy_presolvestorepreviousiterate (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Store solution of previous subiteration iterate. More...
 
subroutine darcy_presolveupdateanalyticvalues (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 
subroutine, public darcy_equation_monitor_convergence (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Monitor convergence of the Darcy solution. More...
 
subroutine darcy_equation_accelerate_convergence (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Accelerate convergence of the Darcy solution. More...
 
subroutine darcy_equation_post_solve_set_mass_increase (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Allows to set an explicit Darcy mass increase to test finite elasticity (and only then this function is called, but not for the coupled problem) More...
 
subroutine darcy_equation_impermeable_bc_via_penalty (EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
 

Variables

integer(intg) solver_number_solid
 
integer(intg) solver_number_mat_properties
 
integer(intg) solver_number_darcy
 
integer(intg) solver_index_solid
 
integer(intg) solver_index_mat_properties
 
integer(intg) solver_index_darcy
 
real(dp) residual_norm_0
 
logical idebug1
 
logical idebug2
 
logical idebug3
 

Detailed Description

This module handles all Darcy equations routines.

Function/Subroutine Documentation

subroutine, public darcy_equations_routines::darcy_control_time_loop_pre_loop ( type(control_loop_type), pointer  CONTROL_LOOP,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)
subroutine darcy_equations_routines::darcy_equation_accelerate_convergence ( type(control_loop_type), pointer  CONTROL_LOOP,
type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Accelerate convergence of the Darcy solution.

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

Definition at line 7454 of file Darcy_equations_routines.f90.

References base_routines::enters(), equations_set_constants::equations_set_ale_darcy_subtype, equations_set_constants::equations_set_elasticity_darcy_inria_model_subtype, equations_set_constants::equations_set_incompressible_elast_multi_comp_darcy_subtype, equations_set_constants::equations_set_incompressible_elasticity_driven_darcy_subtype, equations_set_constants::equations_set_incompressible_finite_elasticity_darcy_subtype, equations_set_constants::equations_set_quasistatic_darcy_subtype, equations_set_constants::equations_set_standard_darcy_subtype, equations_set_constants::equations_set_transient_ale_darcy_subtype, base_routines::exits(), base_routines::general_output_type, problem_constants::problem_ale_darcy_subtype, problem_constants::problem_pgm_darcy_subtype, problem_constants::problem_pgm_elasticity_darcy_subtype, problem_constants::problem_pgm_transient_darcy_subtype, problem_constants::problem_quasistatic_darcy_subtype, problem_constants::problem_quasistatic_elast_trans_darcy_mat_solve_subtype, problem_constants::problem_quasistatic_elasticity_transient_darcy_subtype, problem_constants::problem_standard_darcy_subtype, problem_constants::problem_standard_elasticity_darcy_subtype, problem_constants::problem_transient_darcy_subtype, and solver_number_darcy.

subroutine, public darcy_equations_routines::darcy_equation_equations_set_setup ( 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 Darcy 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 181 of file Darcy_equations_routines.f90.

References darcy_equationssetsolutionmethodset(), distributed_matrix_vector::distributed_matrix_block_storage_type, distributed_matrix_vector::distributed_matrix_compressed_row_storage_type, distributed_matrix_vector::distributed_matrix_diagonal_storage_type, base_routines::enters(), equations_routines::equations_create_finish(), equations_routines::equations_create_start(), equations_set_constants::equations_first_order_dynamic, equations_set_constants::equations_linear, equations_routines::equations_linearity_type_set(), equations_routines::equations_lumped_matrices, equations_mapping_routines::equations_mapping_create_finish(), equations_mapping_routines::equations_mapping_create_start(), equations_mapping_routines::equations_mapping_dynamic_variable_type_set(), equations_mapping_routines::equations_mapping_rhs_variable_type_set(), equations_mapping_routines::equations_mapping_source_variable_type_set(), equations_matrices_routines::equations_matrices_create_finish(), equations_matrices_routines::equations_matrices_create_start(), equations_matrices_routines::equations_matrices_dynamic_lumping_type_set(), equations_matrices_routines::equations_matrices_dynamic_storage_type_set(), equations_matrices_routines::equations_matrices_full_matrices, equations_matrices_routines::equations_matrices_linear_storage_type_set(), equations_matrices_routines::equations_matrices_sparse_matrices, equations_matrices_routines::equations_matrix_diagonal_structure, equations_matrices_routines::equations_matrix_fem_structure, equations_matrices_routines::equations_matrix_lumped, equations_matrices_routines::equations_matrix_unlumped, equations_set_constants::equations_quasistatic, equations_set_constants::equations_set_ale_darcy_subtype, equations_set_constants::equations_set_bem_solution_method, equations_set_constants::equations_set_darcy_equation_three_dim_1, equations_set_constants::equations_set_darcy_equation_three_dim_2, equations_set_constants::equations_set_darcy_equation_three_dim_3, equations_set_constants::equations_set_darcy_equation_two_dim_1, equations_set_constants::equations_set_darcy_equation_two_dim_2, equations_set_constants::equations_set_darcy_equation_two_dim_3, equations_set_constants::equations_set_elasticity_darcy_inria_model_subtype, equations_routines::equations_set_equations_get(), 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_incomp_elast_darcy_analytic_darcy, equations_set_constants::equations_set_incompressible_elast_multi_comp_darcy_subtype, equations_set_constants::equations_set_incompressible_elasticity_driven_darcy_subtype, equations_set_constants::equations_set_incompressible_finite_elasticity_darcy_subtype, equations_set_constants::equations_set_multi_compartment_darcy_subtype, equations_set_constants::equations_set_quasistatic_darcy_subtype, equations_set_constants::equations_set_setup_analytic_type, equations_set_constants::equations_set_setup_dependent_type, equations_set_constants::equations_set_setup_equations_type, equations_set_constants::equations_set_setup_finish_action, equations_set_constants::equations_set_setup_geometry_type, equations_set_constants::equations_set_setup_independent_type, equations_set_constants::equations_set_setup_initial_type, equations_set_constants::equations_set_setup_materials_type, equations_set_constants::equations_set_setup_source_type, equations_set_constants::equations_set_setup_start_action, equations_set_constants::equations_set_standard_darcy_subtype, equations_set_constants::equations_set_transient_ale_darcy_subtype, equations_set_constants::equations_set_transient_darcy_subtype, equations_set_constants::equations_static, equations_routines::equations_time_dependence_type_set(), equations_mapping_routines::equationsmapping_linearmatricesnumberset(), equations_mapping_routines::equationsmapping_linearmatricesvariabletypesset(), equations_matrices_routines::equationsmatrices_dynamicstructuretypeset(), equations_matrices_routines::equationsmatrices_linearstructuretypeset(), base_routines::exits(), matrix_vector::matrix_block_storage_type, matrix_vector::matrix_compressed_row_storage_type, and fluid_mechanics_io_routines::source_field.

Referenced by fluid_mechanics_routines::fluid_mechanics_equations_set_setup().

subroutine, public darcy_equations_routines::darcy_equation_finite_element_calculate ( 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 Darcy 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 1733 of file Darcy_equations_routines.f90.

References basis_routines::basis_default_quadrature_scheme, fluid_mechanics_io_routines::darcy, darcy_equation_impermeable_bc_via_penalty(), darcy_finiteelementfaceintegrate(), base_routines::diagnostic_output_type, base_routines::diagnostics3, base_routines::diagnostics5, base_routines::enters(), equations_set_constants::equations_set_ale_darcy_subtype, equations_set_constants::equations_set_darcy_equation_three_dim_1, equations_set_constants::equations_set_darcy_equation_three_dim_2, equations_set_constants::equations_set_darcy_equation_three_dim_3, equations_set_constants::equations_set_darcy_equation_two_dim_1, equations_set_constants::equations_set_darcy_equation_two_dim_2, equations_set_constants::equations_set_darcy_equation_two_dim_3, equations_set_constants::equations_set_elasticity_darcy_inria_model_subtype, equations_set_constants::equations_set_elasticity_multi_compartment_darcy_inria_subtype, equations_set_constants::equations_set_incompressible_elast_multi_comp_darcy_subtype, equations_set_constants::equations_set_incompressible_elasticity_driven_darcy_subtype, equations_set_constants::equations_set_incompressible_finite_elasticity_darcy_subtype, equations_set_constants::equations_set_multi_compartment_darcy_subtype, equations_set_constants::equations_set_quasistatic_darcy_subtype, equations_set_constants::equations_set_standard_darcy_subtype, equations_set_constants::equations_set_transient_ale_darcy_subtype, equations_set_constants::equations_set_transient_darcy_subtype, finite_elasticity_routines::evaluate_chapelle_function(), base_routines::exits(), constants::first_part_deriv, finite_elasticity_routines::get_darcy_finite_elasticity_parameters(), idebug2, constants::no_part_deriv, constants::partial_derivative_first_derivative_map, constants::pi, and constants::zero_tolerance.

Referenced by fluid_mechanics_routines::fluid_mechanics_finite_element_calculate().

subroutine darcy_equations_routines::darcy_equation_impermeable_bc_via_penalty ( type(equations_set_type), pointer  EQUATIONS_SET,
integer(intg), intent(in)  ELEMENT_NUMBER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)
subroutine, public darcy_equations_routines::darcy_equation_monitor_convergence ( type(control_loop_type), pointer  CONTROL_LOOP,
type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Monitor convergence of the Darcy solution.

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

Definition at line 7216 of file Darcy_equations_routines.f90.

References comp_environment::computational_node_number_get(), base_routines::enters(), equations_set_constants::equations_set_ale_darcy_subtype, equations_set_constants::equations_set_elasticity_darcy_inria_model_subtype, equations_set_constants::equations_set_incompressible_elast_multi_comp_darcy_subtype, equations_set_constants::equations_set_incompressible_elasticity_driven_darcy_subtype, equations_set_constants::equations_set_incompressible_finite_elasticity_darcy_subtype, equations_set_constants::equations_set_quasistatic_darcy_subtype, equations_set_constants::equations_set_standard_darcy_subtype, equations_set_constants::equations_set_transient_ale_darcy_subtype, base_routines::exits(), base_routines::general_output_type, problem_constants::problem_ale_darcy_subtype, problem_constants::problem_control_while_loop_type, problem_constants::problem_pgm_darcy_subtype, problem_constants::problem_pgm_elasticity_darcy_subtype, problem_constants::problem_pgm_transient_darcy_subtype, problem_constants::problem_quasistatic_darcy_subtype, problem_constants::problem_quasistatic_elast_trans_darcy_mat_solve_subtype, problem_constants::problem_quasistatic_elasticity_transient_darcy_subtype, problem_constants::problem_standard_darcy_subtype, problem_constants::problem_standard_elasticity_darcy_subtype, problem_constants::problem_transient_darcy_subtype, residual_norm_0, and solver_number_darcy.

Referenced by finite_elasticity_darcy_routines::elasticity_darcy_control_loop_post_loop().

subroutine, public darcy_equations_routines::darcy_equation_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 Darcy problem post solve output data.

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

Definition at line 5231 of file Darcy_equations_routines.f90.

References control_loop_routines::control_loop_current_times_get(), control_loop_routines::control_loop_progress_output, base_routines::enters(), equations_set_constants::equations_set_darcy_equation_type, equations_set_constants::equations_set_incompressible_elast_multi_comp_darcy_subtype, base_routines::exits(), field_io_routines::field_io_elements_export(), field_io_routines::field_io_nodes_export(), base_routines::general_output_type, problem_constants::problem_ale_darcy_subtype, problem_constants::problem_control_time_loop_type, problem_constants::problem_control_while_loop_type, problem_constants::problem_pgm_darcy_subtype, problem_constants::problem_pgm_elasticity_darcy_subtype, problem_constants::problem_pgm_transient_darcy_subtype, problem_constants::problem_quasistatic_darcy_subtype, problem_constants::problem_quasistatic_elast_trans_darcy_mat_solve_subtype, problem_constants::problem_quasistatic_elasticity_transient_darcy_subtype, problem_constants::problem_standard_darcy_subtype, problem_constants::problem_standard_elasticity_darcy_subtype, problem_constants::problem_transient_darcy_subtype, and solver_routines::solver_progress_output.

Referenced by darcy_equation_post_solve(), and finite_elasticity_darcy_routines::elasticity_darcy_post_solve_output_data().

subroutine darcy_equations_routines::darcy_equation_post_solve_set_mass_increase ( 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 darcy_equations_routines::darcy_equation_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 darcy_equations_routines::darcy_equation_pre_solve_ale_update_mesh ( type(control_loop_type), pointer  CONTROL_LOOP,
type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Update mesh position and velocity for ALE Darcy problem.

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

Definition at line 4565 of file Darcy_equations_routines.f90.

References control_loop_routines::control_loop_current_times_get(), base_routines::diagnostic_output_type, base_routines::diagnostics1, base_routines::enters(), equations_set_constants::equations_set_ale_darcy_subtype, equations_set_constants::equations_set_elasticity_darcy_inria_model_subtype, equations_set_constants::equations_set_incompressible_elast_multi_comp_darcy_subtype, equations_set_constants::equations_set_incompressible_elasticity_driven_darcy_subtype, equations_set_constants::equations_set_incompressible_finite_elasticity_darcy_subtype, equations_set_constants::equations_set_quasistatic_darcy_subtype, equations_set_constants::equations_set_standard_darcy_subtype, equations_set_constants::equations_set_transient_ale_darcy_subtype, base_routines::exits(), base_routines::general_output_type, problem_constants::problem_ale_darcy_subtype, problem_constants::problem_control_time_loop_type, problem_constants::problem_pgm_darcy_subtype, problem_constants::problem_pgm_elasticity_darcy_subtype, problem_constants::problem_pgm_transient_darcy_subtype, problem_constants::problem_quasistatic_darcy_subtype, problem_constants::problem_quasistatic_elast_trans_darcy_mat_solve_subtype, problem_constants::problem_quasistatic_elasticity_transient_darcy_subtype, problem_constants::problem_standard_darcy_subtype, problem_constants::problem_standard_elasticity_darcy_subtype, problem_constants::problem_transient_darcy_subtype, solver_number_darcy, and solver_routines::solver_progress_output.

Referenced by darcy_equation_pre_solve().

subroutine, public darcy_equations_routines::darcy_equation_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 Darcy equations 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 3448 of file Darcy_equations_routines.f90.

References 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_solvers_get(), control_loop_routines::control_loop_type_set(), base_routines::enters(), base_routines::exits(), problem_constants::problem_ale_darcy_subtype, problem_constants::problem_control_time_loop_type, problem_constants::problem_pgm_darcy_subtype, problem_constants::problem_pgm_transient_darcy_subtype, problem_constants::problem_quasistatic_darcy_subtype, 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, problem_constants::problem_standard_darcy_subtype, problem_constants::problem_transient_darcy_subtype, solver_routines::solver_cmiss_library, 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_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_quasistatic, 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_linear_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 fluid_mechanics_routines::fluid_mechanics_problem_setup().

subroutine, public darcy_equations_routines::darcy_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 Darcy equation type of a fluid mechanics equations set class.

Parameters
equations_setA pointer to the equations set to set the solution method for
[in]solution_methodThe solution method to set
[out]errThe error code
[out]errorThe error string

Definition at line 119 of file Darcy_equations_routines.f90.

References base_routines::enters(), equations_set_constants::equations_set_ale_darcy_subtype, equations_set_constants::equations_set_bem_solution_method, equations_set_constants::equations_set_elasticity_darcy_inria_model_subtype, 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_incompressible_elast_multi_comp_darcy_subtype, equations_set_constants::equations_set_incompressible_elasticity_driven_darcy_subtype, equations_set_constants::equations_set_incompressible_finite_elasticity_darcy_subtype, equations_set_constants::equations_set_multi_compartment_darcy_subtype, equations_set_constants::equations_set_quasistatic_darcy_subtype, equations_set_constants::equations_set_standard_darcy_subtype, equations_set_constants::equations_set_transient_ale_darcy_subtype, equations_set_constants::equations_set_transient_darcy_subtype, and base_routines::exits().

Referenced by darcy_equation_equations_set_setup().

subroutine, public darcy_equations_routines::darcy_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 darcy_equations_routines::darcy_finiteelementfaceintegrate ( type(equations_set_type), pointer  equationsSet,
integer(intg), intent(in)  elementNumber,
type(field_variable_type), pointer  dependentVariable,
integer(intg), intent(out)  err,
type(varying_string), intent(out)  error 
)

Calculates the face integration term of the finite element formulation for Darcy's equation, required for pressure boundary conditions.

Parameters
equationssetThe equations set to calculate the RHS term for
[in]elementnumberThe element number to calculat the RHS term for
[out]errThe error code
[out]errorThe error string

Definition at line 3161 of file Darcy_equations_routines.f90.

References basis_routines::basis_default_quadrature_scheme, coordinate_routines::coordinate_jacobian_volume_type, base_routines::enters(), equations_set_constants::equations_set_ale_darcy_subtype, equations_set_constants::equations_set_quasistatic_darcy_subtype, equations_set_constants::equations_set_standard_darcy_subtype, equations_set_constants::equations_set_transient_darcy_subtype, base_routines::exits(), constants::first_part_deriv, constants::no_part_deriv, and constants::zero_tolerance.

Referenced by darcy_equation_finite_element_calculate().

subroutine darcy_equations_routines::darcy_presolvegetsoliddisplacement ( type(control_loop_type), pointer  CONTROL_LOOP,
type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Update geometric field for ALE Darcy problem.

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

Definition at line 6396 of file Darcy_equations_routines.f90.

References control_loop_routines::control_loop_current_times_get(), control_loop_routines::control_loop_node, base_routines::diagnostic_output_type, base_routines::diagnostics1, base_routines::diagnostics3, base_routines::enters(), equations_set_constants::equations_set_ale_darcy_subtype, equations_set_constants::equations_set_elasticity_darcy_inria_model_subtype, equations_set_constants::equations_set_incompressible_elasticity_driven_darcy_subtype, equations_set_constants::equations_set_incompressible_finite_elasticity_darcy_subtype, equations_set_constants::equations_set_quasistatic_darcy_subtype, equations_set_constants::equations_set_standard_darcy_subtype, equations_set_constants::equations_set_transient_ale_darcy_subtype, base_routines::exits(), fluid_mechanics_io_routines::fluid_mechanics_io_read_data(), base_routines::general_output_type, constants::pi, problem_constants::problem_ale_darcy_subtype, problem_constants::problem_control_time_loop_type, problem_constants::problem_pgm_darcy_subtype, problem_constants::problem_pgm_elasticity_darcy_subtype, problem_constants::problem_pgm_transient_darcy_subtype, problem_constants::problem_quasistatic_darcy_subtype, problem_constants::problem_quasistatic_elast_trans_darcy_mat_solve_subtype, problem_constants::problem_quasistatic_elasticity_transient_darcy_subtype, problem_constants::problem_standard_darcy_subtype, problem_constants::problem_standard_elasticity_darcy_subtype, problem_constants::problem_transient_darcy_subtype, solver_routines::solver_linear_type, solver_number_darcy, solver_number_solid, solver_routines::solver_progress_output, and solver_routines::solvers_solver_get().

Referenced by darcy_equation_pre_solve().

subroutine darcy_equations_routines::darcy_presolvestorepreviousdata ( type(control_loop_type), pointer  CONTROL_LOOP,
type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Store data of previous time step (mesh position) for ALE Darcy problem.

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

Definition at line 4446 of file Darcy_equations_routines.f90.

References base_routines::enters(), equations_set_constants::equations_set_ale_darcy_subtype, equations_set_constants::equations_set_elasticity_darcy_inria_model_subtype, equations_set_constants::equations_set_incompressible_elast_multi_comp_darcy_subtype, equations_set_constants::equations_set_incompressible_elasticity_driven_darcy_subtype, equations_set_constants::equations_set_incompressible_finite_elasticity_darcy_subtype, equations_set_constants::equations_set_quasistatic_darcy_subtype, equations_set_constants::equations_set_standard_darcy_subtype, equations_set_constants::equations_set_transient_ale_darcy_subtype, equations_set_constants::equations_set_transient_darcy_subtype, base_routines::exits(), problem_constants::problem_ale_darcy_subtype, problem_constants::problem_pgm_darcy_subtype, problem_constants::problem_pgm_elasticity_darcy_subtype, problem_constants::problem_pgm_transient_darcy_subtype, problem_constants::problem_quasistatic_darcy_subtype, problem_constants::problem_quasistatic_elast_trans_darcy_mat_solve_subtype, problem_constants::problem_quasistatic_elasticity_transient_darcy_subtype, problem_constants::problem_standard_darcy_subtype, problem_constants::problem_standard_elasticity_darcy_subtype, problem_constants::problem_transient_darcy_subtype, and solver_number_darcy.

Referenced by darcy_control_time_loop_pre_loop().

subroutine, public darcy_equations_routines::darcy_presolvestorepreviousiterate ( type(control_loop_type), pointer  CONTROL_LOOP,
type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Store solution of previous subiteration iterate.

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

Definition at line 6746 of file Darcy_equations_routines.f90.

References base_routines::enters(), equations_set_constants::equations_set_ale_darcy_subtype, equations_set_constants::equations_set_elasticity_darcy_inria_model_subtype, equations_set_constants::equations_set_incompressible_elast_multi_comp_darcy_subtype, equations_set_constants::equations_set_incompressible_elasticity_driven_darcy_subtype, equations_set_constants::equations_set_incompressible_finite_elasticity_darcy_subtype, equations_set_constants::equations_set_quasistatic_darcy_subtype, equations_set_constants::equations_set_standard_darcy_subtype, equations_set_constants::equations_set_transient_ale_darcy_subtype, base_routines::exits(), problem_constants::problem_ale_darcy_subtype, problem_constants::problem_pgm_darcy_subtype, problem_constants::problem_pgm_elasticity_darcy_subtype, problem_constants::problem_pgm_transient_darcy_subtype, problem_constants::problem_quasistatic_darcy_subtype, problem_constants::problem_quasistatic_elast_trans_darcy_mat_solve_subtype, problem_constants::problem_quasistatic_elasticity_transient_darcy_subtype, problem_constants::problem_standard_darcy_subtype, problem_constants::problem_standard_elasticity_darcy_subtype, and solver_number_darcy.

Referenced by finite_elasticity_darcy_routines::elasticity_darcy_control_loop_pre_loop().

subroutine darcy_equations_routines::darcy_presolvestorereferencedata ( type(control_loop_type), pointer  CONTROL_LOOP,
type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Store some reference data for ALE Darcy problem.

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

Definition at line 4279 of file Darcy_equations_routines.f90.

References base_routines::diagnostic_output_type, base_routines::diagnostics1, base_routines::enters(), equations_set_constants::equations_set_ale_darcy_subtype, equations_set_constants::equations_set_elasticity_darcy_inria_model_subtype, equations_set_constants::equations_set_incompressible_elast_multi_comp_darcy_subtype, equations_set_constants::equations_set_incompressible_elasticity_driven_darcy_subtype, equations_set_constants::equations_set_incompressible_finite_elasticity_darcy_subtype, equations_set_constants::equations_set_quasistatic_darcy_subtype, equations_set_constants::equations_set_standard_darcy_subtype, equations_set_constants::equations_set_transient_ale_darcy_subtype, equations_set_constants::equations_set_transient_darcy_subtype, base_routines::exits(), problem_constants::problem_ale_darcy_subtype, problem_constants::problem_pgm_darcy_subtype, problem_constants::problem_pgm_elasticity_darcy_subtype, problem_constants::problem_pgm_transient_darcy_subtype, problem_constants::problem_quasistatic_darcy_subtype, problem_constants::problem_quasistatic_elast_trans_darcy_mat_solve_subtype, problem_constants::problem_quasistatic_elasticity_transient_darcy_subtype, problem_constants::problem_standard_darcy_subtype, problem_constants::problem_standard_elasticity_darcy_subtype, problem_constants::problem_transient_darcy_subtype, and solver_number_darcy.

Referenced by darcy_control_time_loop_pre_loop().

subroutine darcy_equations_routines::darcy_presolveupdateanalyticvalues ( type(control_loop_type), pointer  CONTROL_LOOP,
type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)
subroutine darcy_equations_routines::darcy_presolveupdateboundaryconditions ( type(control_loop_type), pointer  CONTROL_LOOP,
type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Update boundary conditions for Darcy equation pre solve.

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

Definition at line 4739 of file Darcy_equations_routines.f90.

References boundary_conditions_routines::boundary_condition_fixed, boundary_conditions_routines::boundary_condition_moved_wall, boundary_conditions_routines::boundary_conditions_variable_get(), control_loop_routines::control_loop_current_times_get(), base_routines::diagnostic_output_type, base_routines::diagnostics1, base_routines::enters(), equations_set_constants::equations_set_ale_darcy_subtype, equations_set_constants::equations_set_elasticity_darcy_inria_model_subtype, equations_set_constants::equations_set_incompressible_elast_multi_comp_darcy_subtype, equations_set_constants::equations_set_incompressible_elasticity_driven_darcy_subtype, equations_set_constants::equations_set_incompressible_finite_elasticity_darcy_subtype, equations_set_constants::equations_set_quasistatic_darcy_subtype, equations_set_constants::equations_set_standard_darcy_subtype, equations_set_constants::equations_set_transient_ale_darcy_subtype, base_routines::errors(), base_routines::exits(), base_routines::general_output_type, problem_constants::problem_ale_darcy_subtype, problem_constants::problem_control_time_loop_type, problem_constants::problem_pgm_darcy_subtype, problem_constants::problem_pgm_elasticity_darcy_subtype, problem_constants::problem_pgm_transient_darcy_subtype, problem_constants::problem_quasistatic_darcy_subtype, problem_constants::problem_quasistatic_elast_trans_darcy_mat_solve_subtype, problem_constants::problem_quasistatic_elasticity_transient_darcy_subtype, problem_constants::problem_standard_darcy_subtype, problem_constants::problem_standard_elasticity_darcy_subtype, problem_constants::problem_transient_darcy_subtype, solver_number_darcy, and solver_routines::solver_progress_output.

Referenced by darcy_equation_pre_solve().

subroutine, public darcy_equations_routines::darcy_problemspecificationset ( type(problem_type), pointer  problem,
integer(intg), dimension(:), intent(in)  problemSpecification,
integer(intg), intent(out)  err,
type(varying_string), intent(out)  error 
)

Variable Documentation

logical darcy_equations_routines::idebug1
logical darcy_equations_routines::idebug2
logical darcy_equations_routines::idebug3

Definition at line 108 of file Darcy_equations_routines.f90.

Referenced by darcy_equation_pre_solve().

real(dp) darcy_equations_routines::residual_norm_0

Definition at line 106 of file Darcy_equations_routines.f90.

Referenced by darcy_equation_monitor_convergence().

integer(intg) darcy_equations_routines::solver_index_darcy

Definition at line 104 of file Darcy_equations_routines.f90.

integer(intg) darcy_equations_routines::solver_index_mat_properties

Definition at line 104 of file Darcy_equations_routines.f90.

integer(intg) darcy_equations_routines::solver_index_solid

Definition at line 104 of file Darcy_equations_routines.f90.

integer(intg) darcy_equations_routines::solver_number_mat_properties
integer(intg) darcy_equations_routines::solver_number_solid