OpenCMISS-Iron Internal API Documentation
burgers_equation_routines Module Reference

This module handles all Burgers equation routines. More...

Functions/Subroutines

subroutine, public burgers_boundaryconditionsanalyticcalculate (EQUATIONS_SET, BOUNDARY_CONDITIONS, ERR, ERROR,)
 Calculates the analytic solution and sets the boundary conditions for an analytic problem. More...
 
subroutine, public burgers_analyticfunctionsevaluate (EQUATIONS_SET, ANALYTIC_FUNCTION_TYPE, X, TANGENTS, NORMAL, TIME, VARIABLE_TYPE, GLOBAL_DERIVATIVE, COMPONENT_NUMBER, ANALYTIC_PARAMETERS, MATERIALS_PARAMETERS, VALUE, ERR, ERROR,)
 Evaluate the analytic solutions for a Burgers equation. More...
 
subroutine, public burgers_equationssetsolutionmethodset (EQUATIONS_SET, SOLUTION_METHOD, ERR, ERROR,)
 Sets/changes the solution method for a burgers equation type of an fluid mechanics equations set class. More...
 
subroutine, public burgers_equationssetspecificationset (equationsSet, specification, err, error,)
 Sets the equation specification for a Burgers type of a fluid mechanics equations set. More...
 
subroutine, public burgers_equation_equations_set_setup (EQUATIONS_SET, EQUATIONS_SET_SETUP, ERR, ERROR,)
 Sets up the Burgers equation type of a fluid mechanics equations set class. More...
 
subroutine, public burgers_equation_pre_solve (SOLVER, ERR, ERROR,)
 Sets up the BURGERS problem pre-solve. More...
 
subroutine burgers_presolveupdateanalyticvalues (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 
subroutine burgers_presolvestorecurrentsolution (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 
subroutine, public burgers_equation_post_solve (CONTROL_LOOP, SOLVER, ERR, ERROR,)
 Sets up the Burgers problem post solve. More...
 
subroutine burgers_equation_post_solve_output_data (SOLVER, ERR, ERROR,)
 Output data post solve. More...
 
subroutine, public burgers_problemspecificationset (problem, problemSpecification, err, error,)
 Sets the problem specification for a Burgers problem. More...
 
subroutine, public burgers_equation_problem_setup (PROBLEM, PROBLEM_SETUP, ERR, ERROR,)
 Sets up the Burgers problem. More...
 
subroutine, public burgers_finiteelementjacobianevaluate (EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
 Evaluates the Jacobian element stiffness matrices for a BURGERS equation finite element equations set. More...
 
subroutine, public burgers_finiteelementresidualevaluate (EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
 Evaluates the residual element stiffness matrices and RHS for a Burgers equation finite element equations set. More...
 

Detailed Description

This module handles all Burgers equation routines.

Function/Subroutine Documentation

subroutine, public burgers_equation_routines::burgers_analyticfunctionsevaluate ( type(equations_set_type), intent(in), pointer  EQUATIONS_SET,
integer(intg), intent(in)  ANALYTIC_FUNCTION_TYPE,
real(dp), dimension(:), intent(in)  X,
real(dp), dimension(:,:), intent(in)  TANGENTS,
real(dp), dimension(:), intent(in)  NORMAL,
real(dp), intent(in)  TIME,
integer(intg), intent(in)  VARIABLE_TYPE,
integer(intg), intent(in)  GLOBAL_DERIVATIVE,
integer(intg), intent(in)  COMPONENT_NUMBER,
real(dp), dimension(:), intent(in)  ANALYTIC_PARAMETERS,
real(dp), dimension(:), intent(in)  MATERIALS_PARAMETERS,
real(dp), intent(out)  VALUE,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Evaluate the analytic solutions for a Burgers equation.

Parameters
[in]equations_setThe equations set to evaluate
[in]analytic_function_typeThe type of analytic function to evaluate
[in]xX(dimention_idx). The geometric position to evaluate at
[in]tangentsTANGENTS(dimention_idx,xi_idx). The geometric tangents at the point to evaluate at.
[in]normalNORMAL(dimension_idx). The normal vector at the point to evaluate at.
[in]timeThe time to evaluate at
[in]variable_typeThe field variable type to evaluate at
[in]global_derivativeThe global derivative direction to evaluate at
[in]component_numberThe dependent field component number to evaluate
[in]analytic_parametersA pointer to any analytic field parameters
[in]materials_parametersA pointer to any materials field parameters
[out]valueOn return, the analytic function value.
[out]errThe error code
[out]errorThe error string

Definition at line 277 of file Burgers_equation_routines.f90.

References base_routines::enters(), equations_set_constants::equations_set_burgers_equation_one_dim_1, equations_set_constants::equations_set_burgers_subtype, equations_set_constants::equations_set_generalised_burgers_equation_one_dim_1, equations_set_constants::equations_set_generalised_burgers_equation_one_dim_2, equations_set_constants::equations_set_generalised_burgers_subtype, equations_set_constants::equations_set_inviscid_burgers_subtype, equations_set_constants::equations_set_static_burgers_subtype, base_routines::exits(), constants::global_deriv_s1, and constants::no_global_deriv.

Referenced by burgers_boundaryconditionsanalyticcalculate(), burgers_presolveupdateanalyticvalues(), and fluid_mechanics_routines::fluid_mechanics_analytic_functions_evaluate().

subroutine, public burgers_equation_routines::burgers_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]errThe error code
[out]errorThe error string

Definition at line 116 of file Burgers_equation_routines.f90.

References boundary_conditions_routines::boundary_condition_fixed, burgers_analyticfunctionsevaluate(), base_routines::enters(), and base_routines::exits().

Referenced by fluid_mechanics_routines::fluidmechanics_boundaryconditionsanalyticcalculate().

subroutine, public burgers_equation_routines::burgers_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 Burgers equation type of a fluid mechanics equations set class.

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

Definition at line 572 of file Burgers_equation_routines.f90.

References burgers_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_matrices_routines::equations_jacobian_analytic_calculated, 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_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_nonlinear, equations_set_constants::equations_set_bem_solution_method, equations_set_constants::equations_set_burgers_equation_one_dim_1, equations_set_constants::equations_set_burgers_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_generalised_burgers_equation_one_dim_1, equations_set_constants::equations_set_generalised_burgers_equation_one_dim_2, equations_set_constants::equations_set_generalised_burgers_subtype, equations_set_constants::equations_set_gfem_solution_method, equations_set_constants::equations_set_gfv_solution_method, equations_set_constants::equations_set_inviscid_burgers_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_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_static_burgers_subtype, equations_set_constants::equations_static, equations_routines::equations_time_dependence_type_set(), equations_mapping_routines::equationsmapping_linearmatricesnumberset(), equations_mapping_routines::equationsmapping_linearmatricesvariabletypesset(), equations_mapping_routines::equationsmapping_residualvariabletypesset(), equations_matrices_routines::equationsmatrices_dynamicstructuretypeset(), equations_matrices_routines::equationsmatrices_jacobiantypesset(), equations_matrices_routines::equationsmatrices_linearstructuretypeset(), base_routines::exits(), matrix_vector::matrix_block_storage_type, and matrix_vector::matrix_compressed_row_storage_type.

Referenced by fluid_mechanics_routines::fluid_mechanics_equations_set_setup().

subroutine, public burgers_equation_routines::burgers_equation_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 Burgers problem post 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 1688 of file Burgers_equation_routines.f90.

References base_routines::enters(), base_routines::exits(), problem_constants::problem_dynamic_burgers_subtype, and problem_constants::problem_static_burgers_subtype.

Referenced by fluid_mechanics_routines::fluid_mechanics_post_solve().

subroutine burgers_equation_routines::burgers_equation_post_solve_output_data ( type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)
private
subroutine, public burgers_equation_routines::burgers_equation_pre_solve ( type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)

Sets up the BURGERS problem pre-solve.

Parameters
solverA pointer to the solver
[out]errThe error code
[out]errorThe error string

Definition at line 1362 of file Burgers_equation_routines.f90.

References burgers_presolveupdateanalyticvalues(), base_routines::enters(), base_routines::exits(), problem_constants::problem_dynamic_burgers_subtype, and problem_constants::problem_static_burgers_subtype.

Referenced by fluid_mechanics_routines::fluid_mechanics_pre_solve().

subroutine, public burgers_equation_routines::burgers_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 Burgers problem.

Parameters
problemA pointer to the problem set to setup a Burgers problem on.
[in,out]problem_setupThe problem setup information
[out]errThe error code
[out]errorThe error string

Definition at line 1888 of file Burgers_equation_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_control_time_loop_type, problem_constants::problem_dynamic_burgers_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_static_burgers_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_linearity_type_set(), solver_routines::solver_dynamic_nonlinear, 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, 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 fluid_mechanics_routines::fluid_mechanics_problem_setup().

subroutine, public burgers_equation_routines::burgers_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 burgers_equation_routines::burgers_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 burgers_equation_routines::burgers_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 Jacobian element stiffness matrices for a BURGERS 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 2124 of file Burgers_equation_routines.f90.

References basis_routines::basis_default_quadrature_scheme, base_routines::enters(), equations_set_constants::equations_set_generalised_burgers_subtype, base_routines::errors(), base_routines::exits(), constants::first_part_deriv, constants::no_part_deriv, constants::partial_derivative_first_derivative_map, and constants::second_part_deriv.

Referenced by fluid_mechanics_routines::fluidmechanics_finiteelementjacobianevaluate().

subroutine, public burgers_equation_routines::burgers_finiteelementresidualevaluate ( 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 residual element stiffness matrices and RHS for a Burgers 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 evaluate the residual for
[out]errThe error code
[out]errorThe error string

Definition at line 2271 of file Burgers_equation_routines.f90.

References basis_routines::basis_default_quadrature_scheme, base_routines::enters(), equations_set_constants::equations_set_burgers_subtype, equations_set_constants::equations_set_generalised_burgers_subtype, equations_set_constants::equations_set_inviscid_burgers_subtype, equations_set_constants::equations_set_static_burgers_subtype, base_routines::errors(), base_routines::exits(), constants::first_part_deriv, constants::no_part_deriv, and constants::partial_derivative_first_derivative_map.

Referenced by fluid_mechanics_routines::fluidmechanics_finiteelementresidualevaluate().

subroutine burgers_equation_routines::burgers_presolvestorecurrentsolution ( type(control_loop_type), pointer  CONTROL_LOOP,
type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)
private
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 1634 of file Burgers_equation_routines.f90.

References base_routines::enters(), base_routines::errors(), base_routines::exits(), problem_constants::problem_dynamic_burgers_subtype, and problem_constants::problem_static_burgers_subtype.

subroutine burgers_equation_routines::burgers_presolveupdateanalyticvalues ( type(control_loop_type), pointer  CONTROL_LOOP,
type(solver_type), pointer  SOLVER,
integer(intg), intent(out)  ERR,
type(varying_string), intent(out)  ERROR 
)
private
subroutine, public burgers_equation_routines::burgers_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 Burgers problem.

Parameters
problemA pointer to the problem to set the problem specification for
[in]problemspecificationThe problem specification to set
[out]errThe error code
[out]errorThe error string

Definition at line 1836 of file Burgers_equation_routines.f90.

References base_routines::enters(), base_routines::errors(), base_routines::exits(), problem_constants::problem_burgers_equation_type, problem_constants::problem_dynamic_burgers_subtype, problem_constants::problem_fluid_mechanics_class, and problem_constants::problem_static_burgers_subtype.

Referenced by fluid_mechanics_routines::fluidmechanics_problemspecificationset().