OpenCMISS-Iron Internal API Documentation
|
This module handles all solver routines. More...
Data Types | |
interface | SOLVER_DAE_EXTERNAL_INTEGRATE |
interface | solver_dynamic_theta_set |
interface | solver_label_get |
interface | solver_label_set |
Functions/Subroutines | |
subroutine, public | cellml_equations_cellml_add (CELLML_EQUATIONS, CELLML, CELLML_INDEX, ERR, ERROR,) |
Adds a CellML environment to a solvers CellML equations. More... | |
subroutine, public | cellml_equations_create_finish (CELLML_EQUATIONS, ERR, ERROR,) |
Finishes the process of creating CellML equations. More... | |
subroutine, public | cellml_equations_create_start (SOLVER, CELLML_EQUATIONS, ERR, ERROR,) |
Starts the process of creating CellML equations. More... | |
subroutine, public | cellml_equations_destroy (CELLML_EQUATIONS, ERR, ERROR,) |
Destroys the CellML equations. More... | |
subroutine | cellml_equations_finalise (CELLML_EQUATIONS, ERR, ERROR,) |
Finalises the CellML equations and deallocates all memory. More... | |
subroutine | cellml_equations_initialise (SOLVER, ERR, ERROR,) |
Initialises the CellML equations for a solver. More... | |
subroutine, public | solver_cellml_equations_get (SOLVER, CELLML_EQUATIONS, ERR, ERROR,) |
Returns a pointer to the CellML equations for a solver. More... | |
subroutine | solver_cellml_evaluator_create_finish (CELLML_EVALUATOR_SOLVER, ERR, ERROR,) |
Finishes the process of creating a CellML evaluator solver. More... | |
subroutine, public | solver_cellml_evaluator_finalise (CELLML_EVALUATOR_SOLVER, ERR, ERROR,) |
Finalise a CellML evaluator solver. More... | |
subroutine | solver_cellml_evaluator_initialise (SOLVER, ERR, ERROR,) |
Initialise a CellML evaluator solver for a solver. More... | |
subroutine | solver_cellml_evaluator_library_type_get (CELLML_EVALUATOR_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for a CellML evaluator solver. More... | |
subroutine | solver_cellml_evaluator_library_type_set (CELLML_EVALUATOR_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the type of library to use for a CellML evaluator solver. More... | |
subroutine | solver_cellml_evaluator_time_get (CELLML_EVALUATOR_SOLVER, TIME, ERR, ERROR,) |
Returns the time for a CellML evaluator solver. More... | |
subroutine | solver_cellml_evaluator_time_set (CELLML_EVALUATOR_SOLVER, TIME, ERR, ERROR,) |
Sets/changes the time for a CellML evaluator solver. More... | |
subroutine | solver_cellml_evaluator_solve (CELLML_EVALUATOR_SOLVER, ERR, ERROR,) |
Solve a CellML evaluator solver. More... | |
subroutine | solver_cellml_evaluate (CELLML_EVALUATOR_SOLVER, CELLML, N, ONLY_ONE_MODEL_INDEX, MODELS_DATA, MAX_NUMBER_STATES, STATE_DATA, MAX_NUMBER_PARAMETERS, PARAMETERS_DATA, MAX_NUMBER_INTERMEDIATES, INTERMEDIATE_DATA, ERR, ERROR,) |
Evaluate the CellML equations. More... | |
subroutine | solver_create_finish (SOLVER, ERR, ERROR,) |
Finishes the process of creating a solver. More... | |
subroutine | solver_dae_adams_moulton_finalise (ADAMS_MOULTON_SOLVER, ERR, ERROR,) |
Finalise an Adams-Moulton differential-algebraic equation solver and deallocate all memory. More... | |
subroutine | solver_dae_adams_moulton_initialise (DAE_SOLVER, ERR, ERROR,) |
Initialise an Adams-Moulton solver for a differential-algebraic equation solver. More... | |
subroutine | solver_dae_adams_moulton_solve (ADAMS_MOULTON_SOLVER, ERR, ERROR,) |
Solve using an Adams-Moulton differential-algebraic equation solver. More... | |
subroutine | solver_dae_create_finish (DAE_SOLVER, ERR, ERROR,) |
Finishes the process of creating a differential-algebraic equation solver. More... | |
subroutine | solver_dae_euler_backward_finalise (BACKWARD_EULER_SOLVER, ERR, ERROR,) |
Finalise a backward Euler differential-algebraic equation and deallocate all memory. More... | |
subroutine | solver_dae_euler_backward_initialise (EULER_DAE_SOLVER, ERR, ERROR,) |
Initialise a backward Euler solver for a differential-algebraic equation solver. More... | |
subroutine | solver_dae_euler_backward_solve (BACKWARD_EULER_SOLVER, ERR, ERROR,) |
Solve using a backward Euler differential-algebraic equation solver. More... | |
subroutine | solver_dae_euler_finalise (EULER_SOLVER, ERR, ERROR,) |
Finalise an Euler differential-algebraic equation solver and deallocate all memory. More... | |
subroutine | solver_dae_euler_forward_finalise (FORWARD_EULER_SOLVER, ERR, ERROR,) |
Finalise a forward Euler differential-algebraic equation and deallocate all memory. More... | |
subroutine | solver_dae_euler_forward_initialise (EULER_DAE_SOLVER, ERR, ERROR,) |
Initialise a forward Euler solver for a differential-algebraic equation solver. More... | |
subroutine | solver_dae_euler_forward_integrate (FORWARD_EULER_SOLVER, CELLML, N, START_TIME, END_TIME, TIME_INCREMENT, ONLY_ONE_MODEL_INDEX, MODELS_DATA, MAX_NUMBER_STATES, STATE_DATA, MAX_NUMBER_PARAMETERS, PARAMETERS_DATA, MAX_NUMBER_INTERMEDIATES, INTERMEDIATE_DATA, ERR, ERROR,) |
Integrate using a forward Euler differential-algebraic equation solver. More... | |
subroutine | solver_dae_euler_forward_solve (FORWARD_EULER_SOLVER, ERR, ERROR,) |
Solve using a forward Euler differential-algebraic equation solver. More... | |
subroutine | solver_dae_euler_improved_finalise (IMPROVED_EULER_SOLVER, ERR, ERROR,) |
Finalise an improved Euler differential-algebaic equation and deallocate all memory. More... | |
subroutine | solver_dae_euler_improved_initialise (EULER_DAE_SOLVER, ERR, ERROR,) |
Initialise an improved Euler solver for a differential-algebraic equation solver. More... | |
subroutine | solver_dae_euler_improved_solve (IMPROVED_EULER_SOLVER, ERR, ERROR,) |
Solve using an improved Euler differential-algebraic equation solver. More... | |
subroutine | solver_dae_euler_initialise (DAE_SOLVER, ERR, ERROR,) |
Initialise an Euler solver for a differential-algebraic equation solver. More... | |
subroutine | solver_dae_euler_library_type_get (EULER_DAE_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for an Euler differential-algebraic equation solver. More... | |
subroutine | solver_dae_euler_library_type_set (EULER_DAE_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the type of library to use for an Euler differential-algebraic equation solver. More... | |
subroutine | solver_dae_euler_solve (EULER_SOLVER, ERR, ERROR,) |
Solve using an Euler differential-algebraic equation solver. More... | |
subroutine, public | solver_dae_euler_solver_type_get (SOLVER, DAE_EULER_TYPE, ERR, ERROR,) |
Returns the solve type for an Euler differential-algebraic equation solver. More... | |
subroutine, public | solver_dae_euler_solver_type_set (SOLVER, DAE_EULER_TYPE, ERR, ERROR,) |
Sets/changes the solve type for an Euler differential-algebraic equation solver. More... | |
subroutine | solver_dae_finalise (DAE_SOLVER, ERR, ERROR,) |
Finalise a differential-algebraic equation solver and deallocate all memory. More... | |
subroutine | solver_dae_initialise (SOLVER, ERR, ERROR,) |
Initialise a differential-algebraic equation solver for a solver. More... | |
subroutine | solver_dae_library_type_get (DAE_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for a differential-algebraic equation solver. More... | |
subroutine | solver_dae_library_type_set (DAE_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the type of library to use for a differential-algebraic equation solver. More... | |
subroutine | solver_dae_bdf_finalise (BDF_SOLVER, ERR, ERROR,) |
Finalise a BDF differential-algebraic equation solver and deallocate all memory. More... | |
subroutine | solver_dae_bdf_initialise (DAE_SOLVER, ERR, ERROR,) |
Initialise a BDF solver for a differential-algebraic equation solver. More... | |
subroutine | solver_daecellmlpetsccontextfinalise (ctx, err, error,) |
Finalise a CellML PETSc solver context. More... | |
subroutine | solver_daecellmlpetsccontextinitialise (ctx, err, error,) |
Initialise a CellML PETSc context. More... | |
subroutine | solver_daecellmlpetsccontextset (ctx, solver, cellml, dofIdx, err, error,) |
Set a CellML PETSc context. More... | |
subroutine | solver_dae_bdf_integrate (BDF_SOLVER, CELLML, N, START_TIME, END_TIME, TIME_INCREMENT, ONLY_ONE_MODEL_INDEX, MODELS_DATA, MAX_NUMBER_STATES, STATE_DATA, MAX_NUMBER_PARAMETERS, PARAMETERS_DATA, MAX_NUMBER_INTERMEDIATES, INTERMEDIATE_DATA, ERR, ERROR,) |
Integrate using a BDF differential-algebraic equation solver. More... | |
subroutine | solver_dae_bdf_solve (BDF_SOLVER, ERR, ERROR,) |
Solve using a BDF differential-algebraic equation solver. More... | |
subroutine | solver_dae_crank_nicolson_finalise (CRANK_NICOLSON_SOLVER, ERR, ERROR,) |
Finalise a Crank-Nicolson differential-algebraic equation solver and deallocate all memory. More... | |
subroutine | solver_dae_crank_nicolson_initialise (DAE_SOLVER, ERR, ERROR,) |
Initialise a Crank-Nicolson solver for a differential-algebraic equation solver. More... | |
subroutine | solver_dae_crank_nicolson_solve (CRANK_NICOLSON_SOLVER, ERR, ERROR,) |
Solve using a Crank-Nicolson differential-algebraic equation solver. More... | |
subroutine | solver_dae_external_finalise (EXTERNAL_SOLVER, ERR, ERROR,) |
Finalise an external differential-algebraic equation solver and deallocate all memory. More... | |
subroutine | solver_dae_external_initialise (DAE_SOLVER, ERR, ERROR,) |
Initialise an external solver for a differential-algebraic equation solver. More... | |
subroutine | solver_dae_external_solve (EXTERNAL_SOLVER, ERR, ERROR,) |
Solve using an external differential-algebraic equation solver. More... | |
subroutine, public | solver_daecellmlrhsevaluate (model, time, stateStartIdx, stateDataOffset, stateData, parameterStartIdx, parameterDataOffset, parameterData, intermediateStartIdx, intermediateDataOffset, intermediateData, rateStartIdx, rateDataOffset, rateData, err, error,) |
Integrate using a forward Euler differential-algebraic equation solver. More... | |
subroutine | solver_dae_runge_kutta_finalise (RUNGE_KUTTA_SOLVER, ERR, ERROR,) |
Finalise a Runge-Kutta differential-algebraic equation solver and deallocate all memory. More... | |
subroutine | solver_dae_runge_kutta_initialise (DAE_SOLVER, ERR, ERROR,) |
Initialise a Runge-Kutta solver for a differential-algebraic equation solver. More... | |
subroutine | solver_dae_runge_kutta_solve (RUNGE_KUTTA_SOLVER, ERR, ERROR,) |
Solve using a Runge-Kutta differential-algebraic equation solver. More... | |
subroutine | solver_dae_rush_larson_finalise (RUSH_LARSON_SOLVER, ERR, ERROR,) |
Finalise a Rush-Larson differential-algebraic equation solver and deallocate all memory. More... | |
subroutine | solver_dae_rush_larson_initialise (DAE_SOLVER, ERR, ERROR,) |
Initialise an Rush-Larson solver for a differential-algebraic equation solver. More... | |
subroutine | solver_dae_rush_larson_solve (RUSH_LARSON_SOLVER, ERR, ERROR,) |
Solve using a Rush-Larson differential-algebraic equation solver. More... | |
subroutine | solver_dae_solve (DAE_SOLVER, ERR, ERROR,) |
Solve a differential-algebraic equation solver. More... | |
subroutine, public | solver_dae_solver_type_get (SOLVER, DAE_SOLVE_TYPE, ERR, ERROR,) |
Returns the solve type for an differential-algebraic equation solver. More... | |
subroutine, public | solver_dae_solver_type_set (SOLVER, DAE_SOLVE_TYPE, ERR, ERROR,) |
Sets/changes the solve type for an differential-algebraic equation solver. More... | |
subroutine, public | solver_dae_times_set (SOLVER, START_TIME, END_TIME, ERR, ERROR,) |
Set/change the times for a differential-algebraic equation solver. More... | |
subroutine, public | solver_dae_time_step_set (SOLVER, TIME_STEP, ERR, ERROR,) |
Set/change the (initial) time step size for a differential-algebraic equation solver. More... | |
subroutine, public | solver_destroy (SOLVER, ERR, ERROR,) |
Destroys a solver. More... | |
subroutine | solver_dynamic_create_finish (DYNAMIC_SOLVER, ERR, ERROR,) |
Finishes the process of creating a dynamic solver. More... | |
subroutine, public | solver_dynamic_degree_get (SOLVER, DEGREE, ERR, ERROR,) |
Returns the degree of the polynomial used to interpolate time for a dynamic solver. More... | |
subroutine, public | solver_dynamic_degree_set (SOLVER, DEGREE, ERR, ERROR,) |
Sets/changes the degree of the polynomial used to interpolate time for a dynamic solver. More... | |
recursive subroutine | solver_dynamic_finalise (DYNAMIC_SOLVER, ERR, ERROR,) |
Finalise a dynamic solver and deallocates all memory. More... | |
subroutine | solver_dynamic_initialise (SOLVER, ERR, ERROR,) |
Initialise a dynamic solver for a solver. More... | |
subroutine | solver_dynamic_library_type_get (DYNAMIC_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for a dynamic solver. More... | |
subroutine | solver_dynamic_library_type_set (DYNAMIC_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the type of library to use for a dynamic solver. More... | |
subroutine, public | solver_dynamic_linearity_type_get (SOLVER, LINEARITY_TYPE, ERR, ERROR,) |
Returns the linearity type for the dynamic solver. More... | |
subroutine, public | solver_dynamic_linearity_type_set (SOLVER, LINEARITY_TYPE, ERR, ERROR,) |
Sets/changes the linearity type for the dynamic solver. More... | |
subroutine, public | solver_dynamic_nonlinear_solver_get (SOLVER, NONLINEAR_SOLVER, ERR, ERROR,) |
Returns the nonlinear solver associated with a dynamic solver. More... | |
subroutine, public | solver_dynamic_linear_solver_get (SOLVER, LINEAR_SOLVER, ERR, ERROR,) |
Returns the linear solver associated with a dynamic solver. More... | |
subroutine | solver_dynamic_mean_predicted_calculate (SOLVER, ERR, ERROR,) |
Copies the current to previous time-step, calculates mean predicted values, predicted values and previous residual values. More... | |
subroutine, public | solver_dynamic_restart_get (SOLVER, RESTART, ERR, ERROR,) |
Returns the restart value for a dynamic solver. More... | |
subroutine, public | solver_dynamic_restart_set (SOLVER, RESTART, ERR, ERROR,) |
Sets/changes the restart value for a dynamic solver. More... | |
subroutine, public | solver_time_stepping_monitor (DAE_SOLVER, STEPS, TIME, ERR, ERROR,) |
Monitors the differential-algebraic equations solve. More... | |
subroutine, public | solver_dynamic_order_set (SOLVER, ORDER, ERR, ERROR,) |
Sets/changes the order for a dynamic solver. More... | |
subroutine, public | solver_dynamic_scheme_set (SOLVER, SCHEME, ERR, ERROR,) |
Sets/changes the scheme for a dynamic solver. More... | |
subroutine | solver_dynamic_solve (DYNAMIC_SOLVER, ERR, ERROR,) |
Solve a dynamic solver. More... | |
subroutine | solver_dynamic_theta_set_dp1 (SOLVER, THETA, ERR, ERROR,) |
Sets/changes a single theta value for a dynamic solver. More... | |
subroutine | solver_dynamic_theta_set_dp (SOLVER, THETA, ERR, ERROR,) |
Sets/changes the theta value for a dynamic solver. More... | |
subroutine, public | solver_dynamic_ale_set (SOLVER, ALE, ERR, ERROR,) |
Sets/changes the ALE flag for a dynamic solver. More... | |
subroutine, public | solver_dynamic_update_bc_set (SOLVER, UPDATE_BC, ERR, ERROR,) |
Sets/changes the bc flag for a dynamic solver. More... | |
subroutine, public | solver_dynamic_times_set (SOLVER, CURRENT_TIME, TIME_INCREMENT, ERR, ERROR,) |
Sets/changes the dynamic times for a dynamic solver. More... | |
subroutine | solver_eigenproblem_create_finish (EIGENPROBLEM_SOLVER, ERR, ERROR,) |
Finishes the process of creating a eigenproblem solver. More... | |
subroutine | solver_eigenproblem_finalise (EIGENPROBLEM_SOLVER, ERR, ERROR,) |
Finalise a eigenproblem solver for a solver. More... | |
subroutine | solver_eigenproblem_initialise (SOLVER, ERR, ERROR,) |
Initialise a eigenproblem solver for a solver. More... | |
subroutine | solver_eigenproblem_library_type_get (EIGENPROBLEM_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for an eigenproblem solver. More... | |
subroutine | solver_eigenproblem_library_type_set (EIGENPROBLEM_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the type of library to use for an eigenproblem solver. More... | |
subroutine | solver_eigenproblemmatriceslibrarytypeget (EIGENPROBLEM_SOLVER, MATRICES_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for an eigenproblem solver matrices. More... | |
subroutine | solver_eigenproblem_solve (EIGENPROBLEM_SOLVER, ERR, ERROR,) |
Solve a eigenproblem solver. More... | |
subroutine, public | solver_equations_boundary_conditions_get (SOLVER_EQUATIONS, BOUNDARY_CONDITIONS, ERR, ERROR,) |
Gets the boundary conditions for solver equations. More... | |
subroutine, public | solver_equations_create_finish (SOLVER_EQUATIONS, ERR, ERROR,) |
Finishes the process of creating solver equations. More... | |
subroutine, public | solver_equations_create_start (SOLVER, SOLVER_EQUATIONS, ERR, ERROR,) |
Starts the process of creating solver equations. More... | |
subroutine, public | solver_equations_destroy (SOLVER_EQUATIONS, ERR, ERROR,) |
Destroys the solver equations. More... | |
subroutine, public | solver_equations_equations_set_add (SOLVER_EQUATIONS, EQUATIONS_SET, EQUATIONS_SET_INDEX, ERR, ERROR,) |
Adds equations sets to solver equations. More... | |
subroutine | solver_equations_finalise (SOLVER_EQUATIONS, ERR, ERROR,) |
Finalises the solver equations and deallocates all memory. More... | |
subroutine | solver_equations_initialise (SOLVER, ERR, ERROR,) |
Initialises the solver equations for a solver. More... | |
subroutine, public | solver_equations_interface_condition_add (SOLVER_EQUATIONS, INTERFACE_CONDITION, INTERFACE_CONDITION_INDEX, ERR, ERROR,) |
Adds an interface condition to the solver equations. More... | |
subroutine, public | solver_equations_linearity_type_set (SOLVER_EQUATIONS, LINEARITY_TYPE, ERR, ERROR,) |
Sets/changes the linearity type for solver equations. More... | |
subroutine, public | solverequations_boundaryconditionscreatefinish (SOLVER_EQUATIONS, ERR, ERROR,) |
Finishes the creation of boundary conditions for the given solver equations. More... | |
subroutine, public | solverequations_boundaryconditionscreatestart (SOLVER_EQUATIONS, BOUNDARY_CONDITIONS, ERR, ERROR,) |
Starts the creation of boundary conditions for the given solver equations, and returns a pointer to the boundary conditions. More... | |
subroutine, public | solver_equations_sparsity_type_set (SOLVER_EQUATIONS, SPARSITY_TYPE, ERR, ERROR,) |
Sets/changes the sparsity type for solver equations. More... | |
subroutine, public | solver_equations_time_dependence_type_set (SOLVER_EQUATIONS, TIME_DEPENDENCE_TYPE, ERR, ERROR,) |
Sets/changes the time dependence type for solver equations. More... | |
subroutine, public | solverequations_numberofmatricesget (solverEquations, numberOfMatrices, err, error,) |
Get the number of solver matrices for the solver equations. More... | |
subroutine, public | solverequations_matrixget (solverEquations, matrixIndex, matrix, err, error,) |
Get a solver matrix from the solver equations matrices. More... | |
subroutine, public | solverequations_jacobianmatrixget (solverEquations, matrix, err, error,) |
Get the Jacobian matrix from the solver equations matrices for nonlinear solver equations. More... | |
subroutine, public | solverequations_vectorget (solverEquations, matrixIndex, vector, err, error,) |
Get the vector assiciated with a solver matrix from the solver equations matrices. More... | |
subroutine, public | solverequations_residualvectorget (solverEquations, residualVector, err, error,) |
Get the residual vector from the solver equations for nonlinear problems. More... | |
subroutine, public | solverequations_rhsvectorget (solverEquations, rhsVector, err, error,) |
Get the right hand side vector from the solver equations. More... | |
recursive subroutine | solver_finalise (SOLVER, ERR, ERROR,) |
Finalises a solver and deallocates all memory. More... | |
subroutine, public | solver_geometrictransformationarbitrarypathset (solver, arbitraryPath, err, error,) |
Set the arbitrary path logical for geometric transformation solver. More... | |
subroutine, public | solver_geometrictransformationclear (solver, err, error,) |
Clear transformation for a geometric transformation solver. More... | |
subroutine, public | solver_geometrictransformationfieldset (solver, field, variableType, err, error,) |
Set the field and field variable type for geometric transformation solver. More... | |
subroutine, public | solver_geometrictransformationmatrixset (solver, matrix, incrementIdx, err, error,) |
Set the full transformation matrix for a geometric transformation at a load increment. More... | |
subroutine, public | solver_geometrictransformationnumberofloadincrementsset (solver, numberOfIncrements, err, error,) |
Set the number of load increments for geometric transformation solver. More... | |
subroutine, public | solver_geometrictransformationrotationset (solver, pt, axis, theta, incrementIdx, err, error,) |
Set the rotation for a geometric transformation. More... | |
subroutine, public | solver_geometrictransformationscalingsset (solver, scalings, err, error,) |
Set the scalings for geometric transformation solver. More... | |
subroutine, public | solver_geometrictransformationtranslationset (solver, translation, incrementIdx, err, error,) |
Set the translation for a geometric transformation. More... | |
subroutine | solver_geometrictransformationfinalise (geometricTransformationSolver, err, error,) |
Finalise a geometric transformation solver for a solver. More... | |
subroutine | solver_geometrictransformationinitialise (solver, err, error,) |
Initialise a geometric transformation solver for a solver. More... | |
subroutine, public | solver_newton_cellml_evaluator_create (SOLVER, CELLML_SOLVER, ERR, ERROR,) |
Create a CellML evaluator solver for the Newton solver. More... | |
subroutine | solver_initialise (SOLVERS, SOLVER_INDEX, ERR, ERROR,) |
Initialise a solver for a control loop. More... | |
subroutine | solver_initialise_ptr (SOLVER, ERR, ERROR,) |
Initialise a solver. More... | |
subroutine | solver_label_get_c (SOLVER, LABEL, ERR, ERROR,) |
Returns the label of a solver. More... | |
subroutine | solver_label_get_vs (SOLVER, LABEL, ERR, ERROR,) |
Returns the label of a solver. More... | |
subroutine | solver_label_set_c (SOLVER, LABEL, ERR, ERROR,) |
Sets the label of a solver. More... | |
subroutine | solver_label_set_vs (SOLVER, LABEL, ERR, ERROR,) |
Sets the label of a solver. More... | |
subroutine, public | solver_library_type_get (SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Gets the type of library to use for the solver. More... | |
subroutine, public | solver_library_type_set (SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the type of library type to use for the solver. More... | |
subroutine | solver_linear_create_finish (LINEAR_SOLVER, ERR, ERROR,) |
Finishes the process of creating a linear solver. More... | |
subroutine | solver_linear_direct_cholesky_finalise (DIRECT_SOLVER, ERR, ERROR,) |
Finalise a Cholesky direct linear solver and deallocate all memory. More... | |
subroutine | solver_linear_direct_cholesky_initialise (DIRECT_SOLVER, ERR, ERROR,) |
Initialise a Cholesky direct linear solver for a direct linear solver. More... | |
subroutine | solver_linear_direct_create_finish (LINEAR_DIRECT_SOLVER, ERR, ERROR,) |
Finishes the process of creating a linear direct solver. More... | |
subroutine | solver_linear_direct_finalise (LINEAR_DIRECT_SOLVER, ERR, ERROR,) |
Finalise a direct linear solver for a linear solver and deallocate all memory. More... | |
subroutine | solver_linear_direct_initialise (LINEAR_SOLVER, ERR, ERROR,) |
Initialise a direct linear solver for a lienar solver. More... | |
subroutine | solver_linear_direct_library_type_get (DIRECT_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for a direct linear solver. More... | |
subroutine | solver_linear_direct_library_type_set (DIRECT_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the type of library to use for a direct linear solver. More... | |
subroutine | solver_linear_direct_lu_finalise (DIRECT_SOLVER, ERR, ERROR,) |
Finalise a LU direct linear solver and deallocate all memory. More... | |
subroutine | solver_linear_direct_lu_initialise (DIRECT_SOLVER, ERR, ERROR,) |
Initialise a LU direct linear solver for a direct linear solver. More... | |
subroutine | solver_lineardirectmatriceslibrarytypeget (DIRECT_SOLVER, MATRICES_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for a direct linear solver matrices. More... | |
subroutine, public | solver_mumpsseticntl (solver, icntl, ivalue, err, error,) |
Sets MUMPS ICNTL(icntl)=ivalue through PETSc Mat API (see MUMPS user guide for more info). Must be called after the boundary conditions have been set up. More... | |
subroutine, public | solver_mumpssetcntl (solver, icntl, val, err, error,) |
Sets MUMPS CNTL(icntl)=val through PETSc Mat API (see MUMPS user guide for more info). Must be called after the boundary conditions have been set up. More... | |
subroutine | solver_linear_direct_solve (LINEAR_DIRECT_SOLVER, ERR, ERROR,) |
Solve a linear direct solver. More... | |
subroutine | solver_linear_direct_svd_finalise (LINEAR_DIRECT_SOLVER, ERR, ERROR,) |
Finalise a SVD direct linear solver and deallocate all memory. More... | |
subroutine | solver_linear_direct_svd_initialise (DIRECT_SOLVER, ERR, ERROR,) |
Initialise a SVD direct linear solver for a direct linear solver. More... | |
subroutine, public | solver_linear_direct_type_set (SOLVER, DIRECT_SOLVER_TYPE, ERR, ERROR,) |
Sets/changes the type of direct linear solver. More... | |
subroutine | solver_linear_finalise (LINEAR_SOLVER, ERR, ERROR,) |
Finalise a linear solver for a solver. More... | |
subroutine | solver_linear_initialise (SOLVER, ERR, ERROR,) |
Initialise a linear solver for a solver. More... | |
subroutine, public | solver_lineariterativeabsolutetoleranceset (SOLVER, ABSOLUTE_TOLERANCE, ERR, ERROR,) |
Sets/changes the maximum absolute tolerance for an iterative linear solver. More... | |
subroutine | solver_linear_iterative_create_finish (LINEAR_ITERATIVE_SOLVER, ERR, ERROR,) |
Finishes the process of creating a linear iterative solver. More... | |
subroutine, public | solver_lineariterativedivergencetoleranceset (SOLVER, DIVERGENCE_TOLERANCE, ERR, ERROR,) |
Sets/changes the maximum divergence tolerance for an iterative linear solver. More... | |
subroutine | solver_linear_iterative_finalise (LINEAR_ITERATIVE_SOLVER, ERR, ERROR,) |
Finalise an iterative linear solver for a linear solver and deallocate all memory. More... | |
subroutine, public | solver_linear_iterative_gmres_restart_set (SOLVER, GMRES_RESTART, ERR, ERROR,) |
Sets/changes the GMRES restart value for a GMRES iterative linear solver. More... | |
subroutine | solver_linear_iterative_initialise (LINEAR_SOLVER, ERR, ERROR,) |
Initialise an iterative linear solver for a linear solver. More... | |
subroutine | solver_linear_iterative_library_type_get (ITERATIVE_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for an iterative linear solver. More... | |
subroutine | solver_linear_iterative_library_type_set (ITERATIVE_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the type of library to use for an iterative linear solver. More... | |
subroutine | solver_lineariterativematriceslibrarytypeget (ITERATIVE_SOLVER, MATRICES_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for an iterative linear solver matrices. More... | |
subroutine, public | solver_lineariterativemaximumiterationsset (SOLVER, MAXIMUM_ITERATIONS, ERR, ERROR,) |
Sets/changes the maximum number of iterations for an iterative linear solver. More... | |
subroutine, public | solver_lineariterativepreconditionertypeset (SOLVER, ITERATIVE_PRECONDITIONER_TYPE, ERR, ERROR,) |
Sets/changes the type of preconditioner for an iterative linear solver. More... | |
subroutine, public | solver_lineariterativerelativetoleranceset (SOLVER, RELATIVE_TOLERANCE, ERR, ERROR,) |
Sets/changes the relative tolerance for an iterative linear solver. More... | |
subroutine, public | solver_lineariterativesolutioninittypeset (SOLVER, SOLUTION_INITIALISE_TYPE, ERR, ERROR,) |
Sets/changes the solution initialise type for an iterative linear solver. More... | |
subroutine | solver_linear_iterative_solve (LINEAR_ITERATIVE_SOLVER, ERR, ERROR,) |
Solves a linear iterative linear solver. More... | |
subroutine, public | solver_linear_iterative_type_set (SOLVER, ITERATIVE_SOLVER_TYPE, ERR, ERROR,) |
Sets/changes the type of iterative linear solver. More... | |
subroutine | solver_linear_library_type_get (LINEAR_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for a linear solver. More... | |
subroutine | solver_linear_library_type_set (LINEAR_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the type of library to use for a linear solver. More... | |
subroutine | solver_linear_matrices_library_type_get (LINEAR_SOLVER, MATRICES_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for a linear solver matrices. More... | |
subroutine | solver_linear_solve (LINEAR_SOLVER, ERR, ERROR,) |
Solve a linear solver. More... | |
subroutine, public | solver_linear_type_set (SOLVER, LINEAR_SOLVE_TYPE, ERR, ERROR,) |
Sets/changes the type of linear solver. More... | |
subroutine, public | solver_matrices_dynamic_assemble (SOLVER, SELECTION_TYPE, ERR, ERROR,) |
Assembles the solver matrices and rhs from the dynamic equations. More... | |
subroutine, public | solver_matrices_static_assemble (SOLVER, SELECTION_TYPE, ERR, ERROR,) |
Assembles the solver matrices and rhs from the static equations. More... | |
subroutine | solver_matrices_library_type_get (SOLVER, MATRICES_LIBRARY_TYPE, ERR, ERROR,) |
Gets the type of library to use for the solver matrices. More... | |
subroutine, public | solver_quasi_newton_absolute_tolerance_set (SOLVER, ABSOLUTE_TOLERANCE, ERR, ERROR,) |
Sets/changes the maximum absolute tolerance for a nonlinear Quasi-Newton solver. More... | |
subroutine, public | solver_quasinewtonlinesearchmonitoroutputset (solver, linesearchMonitorOutputFlag, err, error,) |
Enables/disables output monitoring for a nonlinear Quasi-Newton line search solver. More... | |
subroutine | solver_quasi_newton_create_finish (QUASI_NEWTON_SOLVER, ERR, ERROR,) |
Finishes the process of creating a Quasi-Newton solver. More... | |
recursive subroutine | solver_quasi_newton_finalise (QUASI_NEWTON_SOLVER, ERR, ERROR,) |
Finalise a Quasi-Newton solver and deallocate all memory. More... | |
subroutine | solver_quasi_newton_initialise (NONLINEAR_SOLVER, ERR, ERROR,) |
Initialise a Quasi-Newton solver for a nonlinear solver. More... | |
subroutine, public | solver_quasinewtonjacobiancalculationtypeset (SOLVER, JACOBIAN_CALCULATION_TYPE, ERR, ERROR,) |
Sets/changes the type of Jacobian calculation type for a Quasi-Newton solver. More... | |
subroutine | solver_quasi_newton_library_type_get (QUASI_NEWTON_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for a Quasi-Newton solver. More... | |
subroutine | solver_quasi_newton_library_type_set (QUASI_NEWTON_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the type of library to use for a Quasi-Newton solver. More... | |
subroutine, public | solver_quasi_newton_linear_solver_get (SOLVER, LINEAR_SOLVER, ERR, ERROR,) |
Returns the linear solver associated with a Quasi-Newton solver. More... | |
subroutine, public | solver_quasi_newton_cellml_solver_get (SOLVER, CELLML_SOLVER, ERR, ERROR,) |
Returns the CellML solver associated with a Quasi-Newton solver. More... | |
subroutine, public | solver_quasinewtonconvergencetesttypeset (solver, convergenceTestType, err, error,) |
Sets/changes the convergence test for a Quasi-Newton nonlinear solver. More... | |
subroutine | solver_quasinewtonlinesearchcreatefinish (LINESEARCH_SOLVER, ERR, ERROR,) |
Finishes the process of creating nonlinear Quasi-Newton line search solver. More... | |
subroutine | solver_quasinewtonlinesearchfinalise (linesearchSolver, err, error,) |
Finalise a nonlinear Quasi-Newton line search solver and deallocate all memory. More... | |
subroutine | solver_quasi_newton_linesearch_initialise (QUASI_NEWTON_SOLVER, ERR, ERROR,) |
Initialise a nonlinear Quasi-Newton line search solver for a Quasi-Newton solver. More... | |
subroutine, public | solver_quasi_newton_linesearch_maxstep_set (SOLVER, LINESEARCH_MAXSTEP, ERR, ERROR,) |
Sets/changes the line search maximum step for a nonlinear Quasi-Newton linesearch solver. More... | |
subroutine | solver_quasi_newton_linesearch_solve (LINESEARCH_SOLVER, ERR, ERROR,) |
subroutine, public | solver_quasi_newton_linesearch_steptol_set (SOLVER, LINESEARCH_STEPTOL, ERR, ERROR,) |
Sets/changes the line search step tolerance for a nonlinear Quasi-Newton line search solver. More... | |
subroutine, public | solver_quasi_newton_linesearch_type_set (SOLVER, LINESEARCH_TYPE, ERR, ERROR,) |
Sets/changes the line search type for a nonlinear Quasi-Newton linesearch solver. More... | |
subroutine | solver_quasinewtonmatriceslibrarytypeget (QUASI_NEWTON_SOLVER, MATRICES_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for a Quasi-Newton solver matrices. More... | |
subroutine, public | solver_quasinewtonmaximumfunctionevaluationsset (SOLVER, MAXIMUM_FUNCTION_EVALUATIONS, ERR, ERROR,) |
Sets/changes the maximum number of function evaluations for a nonlinear Quasi-Newton solver. More... | |
subroutine, public | solver_quasi_newton_maximum_iterations_set (SOLVER, MAXIMUM_ITERATIONS, ERR, ERROR,) |
Sets/changes the maximum number of iterations for a nonlinear Quasi-Newton solver. More... | |
subroutine, public | solver_quasi_newton_relative_tolerance_set (SOLVER, RELATIVE_TOLERANCE, ERR, ERROR,) |
Sets/changes the relative tolerance for a nonlinear Quasi-Newton solver. More... | |
subroutine, public | solver_quasi_newton_solution_init_type_set (SOLVER, SOLUTION_INITIALISE_TYPE, ERR, ERROR,) |
Sets/changes the solution initialisation for a nonlinear Quasi-Newton solver. More... | |
subroutine, public | solver_quasi_newton_solution_tolerance_set (SOLVER, SOLUTION_TOLERANCE, ERR, ERROR,) |
Sets/changes the solution tolerance for a nonlinear Quasi-Newton solver. More... | |
subroutine | solver_quasi_newton_solve (QUASI_NEWTON_SOLVER, ERR, ERROR,) |
subroutine | solver_quasinewtontrustregioncreatefinish (TRUSTREGION_SOLVER, ERR, ERROR,) |
Finishes the process of creating nonlinear Quasi-Newton trust region solver. More... | |
subroutine, public | solver_quasi_newton_trustregion_delta0_set (SOLVER, TRUSTREGION_DELTA0, ERR, ERROR,) |
Sets/changes the trust region delta0 for a nonlinear Quasi-Newton trust region solver solver. More... | |
subroutine | solver_quasi_newton_trustregion_finalise (TRUSTREGION_SOLVER, ERR, ERROR,) |
Finalise a nonlinear Quasi-Newton trust region solver and deallocate all memory. More... | |
subroutine | solver_quasi_newton_trustregion_initialise (QUASI_NEWTON_SOLVER, ERR, ERROR,) |
Initialise a Quaso-Newton trust region solver for a nonlinear solver. More... | |
subroutine | solver_quasi_newton_trustregion_solve (TRUSTREGION_SOLVER, ERR, ERROR,) |
subroutine, public | solver_quasinewtontrustregiontoleranceset (SOLVER, TRUSTREGION_TOLERANCE, ERR, ERROR,) |
Sets/changes the trust region tolerance for a nonlinear Quasi-Newton trust region solver. More... | |
subroutine, public | solver_quasi_newton_restart_set (SOLVER, RESTART, ERR, ERROR,) |
Sets/changes the restart of nonlinear Quasi-Newton solver. More... | |
subroutine, public | solver_quasi_newton_restart_type_set (SOLVER, QUASI_NEWTON_RESTART_TYPE, ERR, ERROR,) |
Sets/changes the restart type of nonlinear Quasi-Newton solver. More... | |
subroutine, public | solver_quasi_newton_scale_type_set (SOLVER, QUASI_NEWTON_SCALE_TYPE, ERR, ERROR,) |
Sets/changes the scale type of nonlinear Quasi-Newton solver. More... | |
subroutine, public | solver_quasi_newton_type_set (SOLVER, QUASI_NEWTON_TYPE, ERR, ERROR,) |
Sets/changes the type of nonlinear Quasi-Newton solver. More... | |
subroutine, public | solver_quasi_newton_solve_type_set (SOLVER, QUASI_NEWTON_SOLVE_TYPE, ERR, ERROR,) |
Sets/changes the solve type of nonlinear Quasi-Newton solver. More... | |
subroutine, public | solver_newton_absolute_tolerance_set (SOLVER, ABSOLUTE_TOLERANCE, ERR, ERROR,) |
Sets/changes the maximum absolute tolerance for a nonlinear Newton solver. More... | |
subroutine, public | solver_newtonlinesearchmonitoroutputset (solver, linesearchMonitorOutputFlag, err, error,) |
Enables/disables output monitoring for a nonlinear Newton line search solver. More... | |
subroutine | solver_newton_create_finish (NEWTON_SOLVER, ERR, ERROR,) |
Finishes the process of creating a Newton solver. More... | |
recursive subroutine | solver_newton_finalise (NEWTON_SOLVER, ERR, ERROR,) |
Finalise a Newton solver and deallocate all memory. More... | |
subroutine | solver_newton_initialise (NONLINEAR_SOLVER, ERR, ERROR,) |
Initialise a Newton solver for a nonlinear solver. More... | |
subroutine, public | solver_newton_jacobian_calculation_type_set (SOLVER, JACOBIAN_CALCULATION_TYPE, ERR, ERROR,) |
Sets/changes the type of Jacobian calculation type for a Newton solver. More... | |
subroutine | solver_newton_library_type_get (NEWTON_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for a Newton solver. More... | |
subroutine | solver_newton_library_type_set (NEWTON_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the type of library to use for a Newton solver. More... | |
subroutine, public | solver_newton_linear_solver_get (SOLVER, LINEAR_SOLVER, ERR, ERROR,) |
Returns the linear solver associated with a Newton solver. More... | |
subroutine, public | solver_newton_cellml_solver_get (SOLVER, CELLML_SOLVER, ERR, ERROR,) |
Returns the CellML solver associated with a Newton solver. More... | |
subroutine, public | solver_newtonconvergencetesttypeset (solver, convergenceTestType, err, error,) |
Sets/changes the convergence test for a Newton nonlinear solver. More... | |
subroutine, public | solver_newton_linesearch_alpha_set (SOLVER, LINESEARCH_ALPHA, ERR, ERROR,) |
Sets/changes the line search alpha for a Newton linesearch solver. More... | |
subroutine | solver_newton_linesearch_create_finish (LINESEARCH_SOLVER, ERR, ERROR,) |
Finishes the process of creating nonlinear Newton line search solver. More... | |
subroutine | solver_newton_linesearch_finalise (LINESEARCH_SOLVER, ERR, ERROR,) |
Finalise a nonlinear Newton line search solver and deallocate all memory. More... | |
subroutine | solver_newton_linesearch_initialise (NEWTON_SOLVER, ERR, ERROR,) |
Initialise a nonlinear Newton line search solver for a Newton solver. More... | |
subroutine, public | solver_newton_linesearch_maxstep_set (SOLVER, LINESEARCH_MAXSTEP, ERR, ERROR,) |
Sets/changes the line search maximum step for a nonlinear Newton linesearch solver. More... | |
subroutine | solver_newton_linesearch_solve (LINESEARCH_SOLVER, ERR, ERROR,) |
subroutine, public | solver_newton_linesearch_steptol_set (SOLVER, LINESEARCH_STEPTOL, ERR, ERROR,) |
Sets/changes the line search step tolerance for a nonlinear Newton line search solver. More... | |
subroutine, public | solver_newton_linesearch_type_set (SOLVER, LINESEARCH_TYPE, ERR, ERROR,) |
Sets/changes the line search type for a nonlinear Newton linesearch solver. More... | |
subroutine | solver_newton_matrices_library_type_get (NEWTON_SOLVER, MATRICES_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for a Newton solver matrices. More... | |
subroutine, public | solver_newtonmaximumfunctionevaluationsset (SOLVER, MAXIMUM_FUNCTION_EVALUATIONS, ERR, ERROR,) |
Sets/changes the maximum number of function evaluations for a nonlinear Newton solver. More... | |
subroutine, public | solver_newton_maximum_iterations_set (SOLVER, MAXIMUM_ITERATIONS, ERR, ERROR,) |
Sets/changes the maximum number of iterations for a nonlinear Newton solver. More... | |
subroutine, public | solver_newton_relative_tolerance_set (SOLVER, RELATIVE_TOLERANCE, ERR, ERROR,) |
Sets/changes the relative tolerance for a nonlinear Newton solver. More... | |
subroutine, public | solver_newton_solution_init_type_set (SOLVER, SOLUTION_INITIALISE_TYPE, ERR, ERROR,) |
Sets/changes the solution initialisation for a nonlinear Newton solver. More... | |
subroutine, public | solver_newton_solution_tolerance_set (SOLVER, SOLUTION_TOLERANCE, ERR, ERROR,) |
Sets/changes the solution tolerance for a nonlinear Newton solver. More... | |
subroutine | solver_newton_solve (NEWTON_SOLVER, ERR, ERROR,) |
subroutine | solver_newton_trustregion_create_finish (TRUSTREGION_SOLVER, ERR, ERROR,) |
Finishes the process of creating nonlinear Newton trust region solver. More... | |
subroutine, public | solver_newton_trustregion_delta0_set (SOLVER, TRUSTREGION_DELTA0, ERR, ERROR,) |
Sets/changes the trust region delta0 for a nonlinear Newton trust region solver solver. More... | |
subroutine | solver_newton_trustregion_finalise (TRUSTREGION_SOLVER, ERR, ERROR,) |
Finalise a nonlinear Newton trust region solver and deallocate all memory. More... | |
subroutine | solver_newton_trustregion_initialise (NEWTON_SOLVER, ERR, ERROR,) |
Initialise a Newton trust region solver for a nonlinear solver. More... | |
subroutine | solver_newton_trustregion_solve (TRUSTREGION_SOLVER, ERR, ERROR,) |
subroutine, public | solver_newton_trustregion_tolerance_set (SOLVER, TRUSTREGION_TOLERANCE, ERR, ERROR,) |
Sets/changes the trust region tolerance for a nonlinear Newton trust region solver. More... | |
subroutine, public | solver_newton_type_set (SOLVER, NEWTON_SOLVE_TYPE, ERR, ERROR,) |
Sets/changes the type of nonlinear Newton solver. More... | |
subroutine | solver_nonlinear_create_finish (NONLINEAR_SOLVER, ERR, ERROR,) |
Finishes the process of creating a nonlinear solver. More... | |
subroutine, public | solver_nonlinear_divergence_exit (SOLVER, ERR, ERROR,) |
Instead of warning on nonlinear divergence, exit with error. More... | |
recursive subroutine | solver_nonlinear_finalise (NONLINEAR_SOLVER, ERR, ERROR,) |
Finalise a nonlinear solver for a solver. More... | |
subroutine | solver_nonlinear_initialise (SOLVER, ERR, ERROR,) |
Initialise a nonlinear solver for a solver. More... | |
subroutine | solver_nonlinear_library_type_get (NONLINEAR_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for a nonlinear solver. More... | |
subroutine | solver_nonlinear_library_type_set (NONLINEAR_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the type of library to use for a nonlinear solver. More... | |
subroutine | solver_nonlinear_matrices_library_type_get (NONLINEAR_SOLVER, MATRICES_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for a nonlinear solver matrices. More... | |
subroutine, public | solver_nonlinear_monitor (nonlinearSolver, its, norm, err, error,) |
Monitors the nonlinear solve. More... | |
subroutine | solver_nonlinear_solve (NONLINEAR_SOLVER, ERR, ERROR,) |
subroutine, public | solver_nonlinear_type_set (SOLVER, NONLINEAR_SOLVE_TYPE, ERR, ERROR,) |
Sets/changes the type of nonlinear solver. More... | |
subroutine | solver_optimiser_create_finish (OPTIMISER_SOLVER, ERR, ERROR,) |
Finishes the process of creating an optimiser solver. More... | |
subroutine | solver_optimiser_finalise (OPTIMISER_SOLVER, ERR, ERROR,) |
Finalise a optimiser solver. More... | |
subroutine | solver_optimiser_initialise (SOLVER, ERR, ERROR,) |
Initialise an optimiser solver for a solver. More... | |
subroutine | solver_optimiser_library_type_get (OPTIMISER_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for an optimiser solver. More... | |
subroutine | solver_optimiser_library_type_set (OPTIMISER_SOLVER, SOLVER_LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the type of library to use for an optimisation solver. More... | |
subroutine | solver_optimiser_matrices_library_type_get (OPTIMISER_SOLVER, MATRICES_LIBRARY_TYPE, ERR, ERROR,) |
Returns the type of library to use for an optimiser solver matrices. More... | |
subroutine | solver_optimiser_solve (OPTIMISER_SOLVER, ERR, ERROR,) |
Solve an optimiser solver. More... | |
subroutine, public | solver_output_type_set (SOLVER, OUTPUT_TYPE, ERR, ERROR,) |
Sets/changes the output type for a solver. More... | |
subroutine, public | solver_solution_update (SOLVER, ERR, ERROR,) |
Updates the solver solution from the field variables. More... | |
subroutine, public | solver_solver_equations_get (SOLVER, SOLVER_EQUATIONS, ERR, ERROR,) |
Returns a pointer to the solver equations for a solver. More... | |
recursive subroutine, public | solver_solve (SOLVER, ERR, ERROR,) |
Solve the problem. More... | |
subroutine, public | solver_type_set (SOLVER, SOLVE_TYPE, ERR, ERROR,) |
Sets/changes the type for a solver. More... | |
subroutine, public | solver_variables_dynamic_field_update (SOLVER, ERR, ERROR,) |
Updates the dependent variables from the solver solution for dynamic solvers. More... | |
subroutine, public | solver_variablesdynamicfieldpreviousvaluesupdate (SOLVER, ERR, ERROR,) |
Updates the previous values from the solver solution for dynamic solvers. More... | |
subroutine, public | solver_variables_dynamic_nonlinear_update (SOLVER, ERR, ERROR,) |
Update the field values form the dynamic factor * current solver values AND add in mean predicted displacements. More... | |
subroutine, public | solver_variables_field_update (SOLVER, ERR, ERROR,) |
Updates the dependent variables from the solver solution for static solvers. More... | |
subroutine, public | solvers_create_finish (SOLVERS, ERR, ERROR,) |
Finish the creation of solvers. More... | |
subroutine, public | solvers_create_start (CONTROL_LOOP, SOLVERS, ERR, ERROR,) |
Start the creation of a solvers for the control loop. More... | |
subroutine, public | solvers_destroy (SOLVERS, ERR, ERROR,) |
Destroys the solvers. More... | |
subroutine | solvers_finalise (SOLVERS, ERR, ERROR,) |
Finalises the solvers and deallocates all memory. More... | |
subroutine | solvers_initialise (CONTROL_LOOP, ERR, ERROR,) |
Initialises the solvers for a control loop. More... | |
subroutine, public | solvers_number_set (SOLVERS, NUMBER_OF_SOLVERS, ERR, ERROR,) |
Sets/changes the number of solvers. More... | |
subroutine, public | solvers_solver_get (SOLVERS, SOLVER_INDEX, SOLVER, ERR, ERROR,) |
Returns a pointer to the specified solver in the list of solvers. More... | |
subroutine, public | solver_linked_solver_add (SOLVER, SOLVER_TO_LINK, SOLV_TYPE, ERR, ERROR,) |
Adds a linked solver to the solver. Also sets the solver type for the linked solver, als well as its linking solver. More... | |
subroutine, public | solver_linked_solver_remove (SOLVER, SOLV_TYPE, ERR, ERROR,) |
Adds a linked solver to the solver. Also sets the solver type for the linked solver, als well as its linking solver. More... | |
Variables | |
integer(intg), parameter, public | solver_number_of_solver_types =9 |
Number of different solver types possible. More... | |
integer(intg), parameter, public | solver_linear_type =1 |
A linear solver. More... | |
integer(intg), parameter, public | solver_nonlinear_type =2 |
A nonlinear solver. More... | |
integer(intg), parameter, public | solver_dynamic_type =3 |
A dynamic solver. More... | |
integer(intg), parameter, public | solver_dae_type =4 |
A differential-algebraic equation solver. More... | |
integer(intg), parameter, public | solver_eigenproblem_type =5 |
A eigenproblem solver. More... | |
integer(intg), parameter, public | solver_optimiser_type =6 |
An optimiser solver. More... | |
integer(intg), parameter, public | solver_cellml_evaluator_type =7 |
A CellML evaluation solver. More... | |
integer(intg), parameter | solver_state_iteration_type =8 |
An state iteration solver. More... | |
integer(intg), parameter, public | solver_geometric_transformation_type =9 |
An geometric transformation solver. More... | |
integer(intg), parameter, public | solver_cmiss_library =LIBRARY_CMISS_TYPE |
CMISS (internal) solver library. More... | |
integer(intg), parameter, public | solver_petsc_library =LIBRARY_PETSC_TYPE |
PETSc solver library. More... | |
integer(intg), parameter, public | solver_mumps_library =LIBRARY_MUMPS_TYPE |
MUMPS solver library. More... | |
integer(intg), parameter, public | solver_superlu_library =LIBRARY_SUPERLU_TYPE |
SuperLU solver library. More... | |
integer(intg), parameter, public | solver_spooles_library =LIBRARY_SPOOLES_TYPE |
Spooles solver library. More... | |
integer(intg), parameter, public | solver_umfpack_library =LIBRARY_UMFPACK_TYPE |
UMFPACK solver library. More... | |
integer(intg), parameter, public | solver_lusol_library =LIBRARY_LUSOL_TYPE |
LUSOL solver library. More... | |
integer(intg), parameter, public | solver_essl_library =LIBRARY_ESSL_TYPE |
ESSL solver library. More... | |
integer(intg), parameter, public | solver_lapack_library =LIBRARY_LAPACK_TYPE |
LAPACK solver library. More... | |
integer(intg), parameter, public | solver_tao_library =LIBRARY_TAO_TYPE |
TAO solver library. More... | |
integer(intg), parameter, public | solver_hypre_library =LIBRARY_HYPRE_TYPE |
Hypre solver library. More... | |
integer(intg), parameter, public | solver_pastix_library =LIBRARY_PASTIX_TYPE |
PaStiX solver library. More... | |
integer(intg), parameter, public | solver_linear_direct_solve_type =1 |
Direct linear solver type. More... | |
integer(intg), parameter, public | solver_linear_iterative_solve_type =2 |
Iterative linear solver type. More... | |
integer(intg), parameter, public | solver_direct_lu =1 |
LU direct linear solver. More... | |
integer(intg), parameter, public | solver_direct_cholesky =2 |
Cholesky direct linear solver. More... | |
integer(intg), parameter, public | solver_direct_svd =3 |
SVD direct linear solver. More... | |
integer(intg), parameter, public | solver_iterative_richardson =1 |
Richardson iterative solver type. More... | |
integer(intg), parameter, public | solver_iterative_chebyshev =2 |
Chebyshev iterative solver type. More... | |
integer(intg), parameter, public | solver_iterative_conjugate_gradient =3 |
Conjugate gradient iterative solver type. More... | |
integer(intg), parameter, public | solver_iterative_biconjugate_gradient =4 |
Bi-conjugate gradient iterative solver type. More... | |
integer(intg), parameter, public | solver_iterative_gmres =5 |
Generalised minimum residual iterative solver type. More... | |
integer(intg), parameter, public | solver_iterative_bicgstab =6 |
Stabalised bi-conjugate gradient iterative solver type. More... | |
integer(intg), parameter, public | solver_iterative_conjgrad_squared =7 |
Conjugate gradient squared iterative solver type. More... | |
integer(intg), parameter, public | solver_iterative_no_preconditioner =0 |
No preconditioner type. More... | |
integer(intg), parameter, public | solver_iterative_jacobi_preconditioner =1 |
Jacobi preconditioner type. More... | |
integer(intg), parameter, public | solver_iterative_block_jacobi_preconditioner =2 |
Iterative block Jacobi preconditioner type. More... | |
integer(intg), parameter, public | solver_iterative_sor_preconditioner =3 |
Successive over relaxation preconditioner type. More... | |
integer(intg), parameter, public | solver_iterative_incomplete_cholesky_preconditioner =4 |
Incomplete Cholesky preconditioner type. More... | |
integer(intg), parameter, public | solver_iterative_incomplete_lu_preconditioner =5 |
Incomplete LU preconditioner type. More... | |
integer(intg), parameter, public | solver_iterative_additive_schwarz_preconditioner =6 |
Additive Schwrz preconditioner type. More... | |
integer(intg), parameter, public | solver_nonlinear_newton =1 |
Newton nonlinear solver type. More... | |
integer(intg), parameter, public | solver_nonlinear_bfgs_inverse =2 |
BFGS inverse nonlinear solver type. More... | |
integer(intg), parameter, public | solver_nonlinear_sqp =3 |
Sequential Quadratic Program nonlinear solver type. More... | |
integer(intg), parameter, public | solver_nonlinear_quasi_newton =4 |
Sequential Quasi-Newton nonlinear solver type. More... | |
integer(intg), parameter, public | solver_quasi_newton_linesearch =1 |
Quasi-Newton line search nonlinear solver type. More... | |
integer(intg), parameter, public | solver_quasi_newton_trustregion =2 |
Quasi-Newton trust region nonlinear solver type. More... | |
integer(intg), parameter, public | solver_quasi_newton_lbfgs =1 |
LBFGS Quasi-Newton type. More... | |
integer(intg), parameter, public | solver_quasi_newton_goodbroyden =2 |
"Good" Broyden Quasi-Newton type More... | |
integer(intg), parameter, public | solver_quasi_newton_badbroyden =3 |
"Bad" Broyden Quasi-Newton type More... | |
integer(intg), parameter, public | solver_quasi_newton_linesearch_basic =1 |
Simple damping line search. More... | |
integer(intg), parameter, public | solver_quasi_newton_linesearch_l2 =2 |
Secant line search over the L2 norm of the function. More... | |
integer(intg), parameter, public | solver_quasi_newton_linesearch_cp =3 |
Critical point secant line search. More... | |
integer(intg), parameter, public | solver_quasi_newton_restart_none =1 |
Never restart. More... | |
integer(intg), parameter, public | solver_quasi_newton_restart_powell =2 |
Restart based upon descent criteria. More... | |
integer(intg), parameter, public | solver_quasi_newton_restart_periodic =3 |
Restart after a fixed number of iterations. More... | |
integer(intg), parameter, public | solver_quasi_newton_scale_none =1 |
Don't scale the problem. More... | |
integer(intg), parameter, public | solver_quasi_newton_scale_shanno =2 |
Use Shanno scaling. More... | |
integer(intg), parameter, public | solver_quasi_newton_scale_linesearch =3 |
Scale based upon line search lambda. More... | |
integer(intg), parameter, public | solver_quasi_newton_scale_jacobian =4 |
Scale by inverting a previously computed Jacobian. More... | |
integer(intg), parameter, public | solver_newton_linesearch =1 |
Newton line search nonlinear solver type. More... | |
integer(intg), parameter, public | solver_newton_trustregion =2 |
Newton trust region nonlinear solver type. More... | |
integer(intg), parameter, public | solver_newton_linesearch_nonorms =1 |
No norms line search for Newton line search nonlinear solves. More... | |
integer(intg), parameter, public | solver_newton_linesearch_linear =2 |
Linear search for Newton line search nonlinear solves. More... | |
integer(intg), parameter, public | solver_newton_linesearch_quadratic =3 |
Quadratic search for Newton line search nonlinear solves. More... | |
integer(intg), parameter, public | solver_newton_linesearch_cubic =4 |
Cubic search for Newton line search nonlinear solves. More... | |
integer(intg), parameter, public | solver_newton_jacobian_not_calculated =1 |
The Jacobian values will not be calculated for the nonlinear equations set. More... | |
integer(intg), parameter, public | solver_newton_jacobian_equations_calculated =2 |
The Jacobian values will be calculated analytically for the nonlinear equations set. More... | |
integer(intg), parameter, public | solver_newton_jacobian_fd_calculated =3 |
The Jacobian values will be calculated using finite differences for the nonlinear equations set. More... | |
integer(intg), parameter, public | solver_newton_convergence_petsc_default =1 |
Petsc default convergence test. More... | |
integer(intg), parameter, public | solver_newton_convergence_energy_norm =2 |
Energy norm convergence test. More... | |
integer(intg), parameter, public | solver_newton_convergence_differentiated_ratio =3 |
Sum of differentiated ratios of unconstrained to constrained residuals convergence test. More... | |
integer(intg), parameter, public | solver_dynamic_first_order =1 |
Dynamic solver has first order terms. More... | |
integer(intg), parameter, public | solver_dynamic_second_order =2 |
Dynamic solver has second order terms. More... | |
integer(intg), parameter, public | solver_dynamic_linear =1 |
Dynamic solver has linear terms. More... | |
integer(intg), parameter, public | solver_dynamic_nonlinear =2 |
Dynamic solver has nonlinear terms. More... | |
integer(intg), parameter, public | solver_dynamic_first_degree =1 |
Dynamic solver uses a first degree polynomial for time interpolation. More... | |
integer(intg), parameter, public | solver_dynamic_second_degree =2 |
Dynamic solver uses a second degree polynomial for time interpolation. More... | |
integer(intg), parameter, public | solver_dynamic_third_degree =3 |
Dynamic solver uses a third degree polynomial for time interpolation. More... | |
integer(intg), parameter, public | solver_dynamic_euler_scheme =1 |
Euler (explicit) dynamic solver. More... | |
integer(intg), parameter, public | solver_dynamic_backward_euler_scheme =2 |
Backward Euler (implicit) dynamic solver. More... | |
integer(intg), parameter, public | solver_dynamic_crank_nicolson_scheme =3 |
Crank-Nicolson dynamic solver. More... | |
integer(intg), parameter, public | solver_dynamic_galerkin_scheme =4 |
Galerkin dynamic solver. More... | |
integer(intg), parameter, public | solver_dynamic_zlamal_scheme =5 |
Zlamal dynamic solver. More... | |
integer(intg), parameter, public | solver_dynamic_second_degree_gear_scheme =6 |
2nd degree Gear dynamic solver More... | |
integer(intg), parameter, public | solver_dynamic_second_degree_liniger1_scheme =7 |
1st 2nd degree Liniger dynamic solver More... | |
integer(intg), parameter, public | solver_dynamic_second_degree_liniger2_scheme =8 |
2nd 2nd degree Liniger dynamic solver More... | |
integer(intg), parameter, public | solver_dynamic_newmark1_scheme =9 |
1st Newmark dynamic solver More... | |
integer(intg), parameter, public | solver_dynamic_newmark2_scheme =10 |
2nd Newmark dynamic solver More... | |
integer(intg), parameter, public | solver_dynamic_newmark3_scheme =11 |
3rd Newmark dynamic solver More... | |
integer(intg), parameter, public | solver_dynamic_third_degree_gear_scheme =12 |
3rd degree Gear dynamic solver More... | |
integer(intg), parameter, public | solver_dynamic_third_degree_liniger1_scheme =13 |
1st 3rd degree Liniger dynamic solver More... | |
integer(intg), parameter, public | solver_dynamic_third_degree_liniger2_scheme =14 |
2nd 3rd degree Liniger dynamic solver More... | |
integer(intg), parameter, public | solver_dynamic_houbolt_scheme =15 |
Houbolt dynamic solver. More... | |
integer(intg), parameter, public | solver_dynamic_wilson_scheme =16 |
Wilson dynamic solver. More... | |
integer(intg), parameter, public | solver_dynamic_bossak_newmark1_scheme =17 |
1st Bossak-Newmark dynamic solver More... | |
integer(intg), parameter, public | solver_dynamic_bossak_newmark2_scheme =18 |
2nd Bossak-Newmark dynamic solver More... | |
integer(intg), parameter, public | solver_dynamic_hilbert_hughes_taylor1_scheme =19 |
1st Hilbert-Hughes-Taylor dynamic solver More... | |
integer(intg), parameter, public | solver_dynamic_hilbert_hughes_taylor2_scheme =20 |
1st Hilbert-Hughes-Taylor dynamic solver More... | |
integer(intg), parameter, public | solver_dynamic_user_defined_scheme =21 |
User specified degree and theta dynamic solver. More... | |
integer(intg), parameter, public | solver_dae_differential_only =0 |
Differential equations only. More... | |
integer(intg), parameter, public | solver_dae_index_1 =1 |
Index 1 differential-algebraic equation. More... | |
integer(intg), parameter, public | solver_dae_index_2 =2 |
Index 2 differential-algebraic equation. More... | |
integer(intg), parameter, public | solver_dae_index_3 =3 |
Index 3 differential-algebraic equation. More... | |
integer(intg), parameter, public | solver_dae_euler =1 |
Euler differential-algebraic equation solver. More... | |
integer(intg), parameter, public | solver_dae_crank_nicolson =2 |
Crank-Nicolson differential-algebraic equation solver. More... | |
integer(intg), parameter, public | solver_dae_runge_kutta =3 |
Runge-Kutta differential-algebraic equation solver. More... | |
integer(intg), parameter, public | solver_dae_adams_moulton =4 |
Adams-Moulton differential-algebraic equation solver. More... | |
integer(intg), parameter, public | solver_dae_bdf =5 |
General BDF differential-algebraic equation solver. More... | |
integer(intg), parameter, public | solver_dae_rush_larson =6 |
Rush-Larson differential-algebraic equation solver. More... | |
integer(intg), parameter, public | solver_dae_external =7 |
External (e.g., CellML generated) differential-algebraic equation solver. More... | |
integer(intg), parameter, public | solver_dae_euler_forward =1 |
Forward Euler differential equation solver. More... | |
integer(intg), parameter, public | solver_dae_euler_backward =2 |
Backward Euler differential equation solver. More... | |
integer(intg), parameter, public | solver_dae_euler_improved =3 |
Improved Euler differential equation solver. More... | |
integer(intg), parameter, public | solver_solution_initialise_zero =0 |
Initialise the solution by zeroing it before a solve. More... | |
integer(intg), parameter, public | solver_solution_initialise_current_field =1 |
Initialise the solution by copying in the current dependent field values. More... | |
integer(intg), parameter, public | solver_solution_initialise_no_change =2 |
Do not change the solution before a solve. More... | |
integer(intg), parameter, public | solver_no_output =0 |
No output from the solver routines. More... | |
integer(intg), parameter, public | solver_progress_output =1 |
Progress output from solver routines. More... | |
integer(intg), parameter, public | solver_timing_output =2 |
Timing output from the solver routines plus below. More... | |
integer(intg), parameter, public | solver_solver_output =3 |
Solver specific output from the solver routines plus below. More... | |
integer(intg), parameter, public | solver_matrix_output =4 |
Solver matrices output from the solver routines plus below. More... | |
integer(intg), parameter, public | solver_sparse_matrices =1 |
Use sparse solver matrices. More... | |
integer(intg), parameter, public | solver_full_matrices =2 |
Use fully populated solver matrices. More... | |
This module handles all solver routines.
subroutine, public solver_routines::cellml_equations_cellml_add | ( | type(cellml_equations_type), pointer | CELLML_EQUATIONS, |
type(cellml_type), pointer | CELLML, | ||
integer(intg), intent(out) | CELLML_INDEX, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Adds a CellML environment to a solvers CellML equations.
cellml_equations | A pointer the CellML equations to add the CellML environment to. | |
cellml | A pointer to the CellML environment to add | |
[out] | cellml_index | On return, the index of the added CellML environment. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 721 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
subroutine, public solver_routines::cellml_equations_create_finish | ( | type(cellml_equations_type), pointer | CELLML_EQUATIONS, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Finishes the process of creating CellML equations.
cellml_equations | A pointer the CellML equations to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 780 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), and reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup().
subroutine, public solver_routines::cellml_equations_create_start | ( | type(solver_type), pointer | SOLVER, |
type(cellml_equations_type), pointer | CELLML_EQUATIONS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Starts the process of creating CellML equations.
solver | A pointer the solver to start the creation of CellML equations on | |
cellml_equations | On return, A pointer the CellML equations. Must not be associated on entry | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 818 of file solver_routines.f90.
References cellml_equations_initialise(), base_routines::enters(), and base_routines::exits().
Referenced by biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), and reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup().
subroutine, public solver_routines::cellml_equations_destroy | ( | type(cellml_equations_type), pointer | CELLML_EQUATIONS, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Destroys the CellML equations.
cellml_equations | A pointer the CellML equations to destroy. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 853 of file solver_routines.f90.
References cellml_equations_finalise(), base_routines::enters(), and base_routines::exits().
|
private |
Finalises the CellML equations and deallocates all memory.
cellml_equations | A pointer the CellML equations to finalise. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 881 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by cellml_equations_destroy(), and cellml_equations_initialise().
|
private |
Initialises the CellML equations for a solver.
solver | A pointer the solver to initialise the CellML equations for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 908 of file solver_routines.f90.
References cellml_equations_finalise(), base_routines::enters(), and base_routines::exits().
Referenced by cellml_equations_create_start().
subroutine, public solver_routines::solver_cellml_equations_get | ( | type(solver_type), pointer | SOLVER, |
type(cellml_equations_type), pointer | CELLML_EQUATIONS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns a pointer to the CellML equations for a solver.
solver | A pointer to the solver to get the CellML equations for | |
cellml_equations | On exit, a pointer to the specified CellML equations. Must not be associated on entry. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 947 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), and reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup().
|
private |
Evaluate the CellML equations.
cellml_evaluator_solver | A pointer the CellML evaluator equation solver to evaluate | |
cellml | A pointer to the CellML environment to integrate the equations for. | |
[in] | n | The number of degrees-of-freedom |
[in] | only_one_model_index | If only one model is used in the models data the index of that model. 0 otherwise. |
models_data | MODELS_DATA(dof_idx). The models data for the dof_idx'th dof. | |
[in] | max_number_states | The maximum number of state variables per dof |
state_data | STATE_DATA(state_idx,dof_idx). The state data for the state_idx'th state variable of the dof_idx'th dof. state_idx varies from 1..NUMBER_STATES. | |
[in] | max_number_parameters | The maximum number of parameter variables per dof. |
parameters_data | PARAMETERS_DATA(parameter_idx,dof_idx). The parameters data for the parameter_idx'th parameter variable of the dof_idx'th dof. parameter_idx varies from 1..NUMBER_PARAMETERS. | |
[in] | max_number_intermediates | The maximum number of intermediate variables per dof. |
intermediate_data | INTERMEDIATE_DATA(intermediate_idx,dof_idx). The intermediate values data for the intermediate_idx'th intermediate variable of the dof_idx'th dof. intermediate_idx varies from 1..NUMBER_INTERMEDIATE | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1343 of file solver_routines.f90.
References cmiss_cellml::cellml_models_field_not_constant, base_routines::enters(), and base_routines::exits().
Referenced by solver_cellml_evaluator_solve().
|
private |
Finishes the process of creating a CellML evaluator solver.
cellml_evaluator_solver | A pointer to the CellML evaluator solver to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 985 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
subroutine, public solver_routines::solver_cellml_evaluator_finalise | ( | type(cellml_evaluator_solver_type), pointer | CELLML_EVALUATOR_SOLVER, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Finalise a CellML evaluator solver.
cellml_evaluator_solver | A pointer the CellML evaluator solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1013 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_cellml_evaluator_initialise(), solver_finalise(), and solver_type_set().
|
private |
Initialise a CellML evaluator solver for a solver.
solver | A pointer the solver to initialise the CellML evaluator solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1039 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_cellml_evaluator_finalise(), and solver_cmiss_library.
Referenced by solver_newton_cellml_evaluator_create(), and solver_type_set().
|
private |
Returns the type of library to use for a CellML evaluator solver.
cellml_evaluator_solver | A pointer the CellML evaluator solver to get the library type for. | |
[out] | solver_library_type | On exit, the type of library used for the CellML evaluator solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1078 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_library_type_get().
|
private |
Sets/changes the type of library to use for a CellML evaluator solver.
cellml_evaluator_solver | A pointer the CellML evaluator solver to get the library type for. | |
[in] | solver_library_type | The type of library for the CellML evaluator solver to set. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1107 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_cmiss_library.
Referenced by solver_library_type_set().
|
private |
Solve a CellML evaluator solver.
cellml_evaluator_solver | A pointer the CellML evaluator solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1201 of file solver_routines.f90.
References cmiss_cellml::cellml_cellml_to_field_update(), cmiss_cellml::cellml_field_to_cellml_update(), base_routines::enters(), base_routines::exits(), solver_cellml_evaluate(), and solver_cmiss_library.
Referenced by solver_solve().
|
private |
Returns the time for a CellML evaluator solver.
cellml_evaluator_solver | A pointer the CellML evaluator solver to get the time for. | |
[out] | time | On exit, the time for the CellML evaluator solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1144 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
|
private |
Sets/changes the time for a CellML evaluator solver.
cellml_evaluator_solver | A pointer the CellML evaluator solver to set the time for. | |
[in] | time | The time for the CellML evaluator solver to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1173 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
|
private |
Finishes the process of creating a solver.
solver | A pointer the solver to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1714 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solvers_create_finish().
|
private |
Finalise an Adams-Moulton differential-algebraic equation solver and deallocate all memory.
adams_moulton_solver | A pointer the Adams-Moulton differential-algebraic equation solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1752 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_adams_moulton_initialise(), solver_dae_finalise(), and solver_dae_solver_type_set().
|
private |
Initialise an Adams-Moulton solver for a differential-algebraic equation solver.
dae_solver | A pointer the differential-algebraic equation solver to initialise an Adams-Moulton solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1778 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_dae_adams_moulton_finalise().
Referenced by solver_dae_solver_type_set().
|
private |
Solve using an Adams-Moulton differential-algebraic equation solver.
adams_moulton_solver | A pointer the Adams-Moulton differential-algebraic equation solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1820 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_solve().
|
private |
Finalise a BDF differential-algebraic equation solver and deallocate all memory.
bdf_solver | A pointer the BDF differential-algebraic equation solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3411 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_bdf_initialise(), solver_dae_finalise(), and solver_dae_solver_type_set().
|
private |
Initialise a BDF solver for a differential-algebraic equation solver.
dae_solver | A pointer the differential-algebraic equation solver to initialise a BDF solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3437 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dae_bdf_finalise(), and solver_petsc_library.
Referenced by solver_dae_solver_type_set().
|
private |
Integrate using a BDF differential-algebraic equation solver.
bdf_solver | A pointer the BDF differential-algebraic equation solver to integrate | |
cellml | A pointer to the CellML environment to integrate the equations for. | |
[in] | n | The number of degrees-of-freedom |
[in] | start_time | The start time for the integration |
[in] | end_time | The end time for the integration |
[in,out] | time_increment | The (initial) time increment for the integration |
[in] | only_one_model_index | If only one model is used in the models data the index of that model. 0 otherwise. |
[in] | models_data | MODELS_DATA(dof_idx). The models data for the dof_idx'th dof. |
[in] | max_number_states | The maximum number of state variables per dof |
[in,out] | state_data | STATE_DATA(state_idx,dof_idx). The state data for the state_idx'th state variable of the dof_idx'th dof. state_idx varies from 1..NUMBER_STATES. |
[in] | max_number_parameters | The maximum number of parameter variables per dof. |
[in,out] | parameters_data | PARAMETERS_DATA(parameter_idx,dof_idx). The parameters data for the parameter_idx'th parameter variable of the dof_idx'th dof. parameter_idx varies from 1..NUMBER_PARAMETERS. |
[in] | max_number_intermediates | The maximum number of intermediate variables per dof. |
[in,out] | intermediate_data | INTERMEDIATE_DATA(intermediate_idx,dof_idx). The intermediate values data for the intermediate_idx'th intermediate variable of the dof_idx'th dof. intermediate_idx varies from 1.NUMBER_INTERMEDIATE |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3594 of file solver_routines.f90.
References cmiss_cellml::cellml_models_field_not_constant, base_routines::diagnostic_output_type, base_routines::diagnostics1, base_routines::enters(), base_routines::exits(), cmisspetsc::petsc_tscreate(), cmisspetsc::petsc_tsfinalise(), cmisspetsc::petsc_tssetduration(), cmisspetsc::petsc_tssetexactfinaltime(), cmisspetsc::petsc_tssetinitialtimestep(), cmisspetsc::petsc_tssetproblemtype(), cmisspetsc::petsc_tssetrhsfunction(), cmisspetsc::petsc_tssetsolution(), cmisspetsc::petsc_tssettype(), cmisspetsc::petsc_tssolve(), cmisspetsc::petsc_tssundialssettolerance(), cmisspetsc::petsc_tssundialssettype(), cmisspetsc::petsc_vecassemblybegin(), cmisspetsc::petsc_vecassemblyend(), cmisspetsc::petsc_veccreateseq(), cmisspetsc::petsc_vecdestroy(), cmisspetsc::petsc_vecgetvalues(), cmisspetsc::petsc_vecsetvalues(), solver_daecellmlpetsccontextinitialise(), solver_daecellmlpetsccontextset(), and solver_petsc_library.
Referenced by solver_dae_bdf_solve().
|
private |
Solve using a BDF differential-algebraic equation solver.
bdf_solver | A pointer the BDF differential-algebraic equation solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3765 of file solver_routines.f90.
References cmiss_cellml::cellml_cellml_to_field_update(), cmiss_cellml::cellml_field_to_cellml_update(), base_routines::enters(), base_routines::exits(), and solver_dae_bdf_integrate().
Referenced by solver_dae_solve().
|
private |
Finalise a Crank-Nicolson differential-algebraic equation solver and deallocate all memory.
crank_nicolson_solver | A pointer the Crank-Nicolson differential-algebraic equation solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3905 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_crank_nicolson_initialise(), solver_dae_finalise(), and solver_dae_solver_type_set().
|
private |
Initialise a Crank-Nicolson solver for a differential-algebraic equation solver.
dae_solver | A pointer the differential-algebraic equation solver to initialise a Crank-Nicolson solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3931 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_dae_crank_nicolson_finalise().
Referenced by solver_dae_solver_type_set().
|
private |
Solve using a Crank-Nicolson differential-algebraic equation solver.
crank_nicolson_solver | A pointer the Crank-Nicolson differential-algebraic equation solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3973 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_solve().
|
private |
Finishes the process of creating a differential-algebraic equation solver.
dae_solver | A pointer to the differential-algebraic equation solver to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1848 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solverequations_boundaryconditionscreatefinish().
|
private |
Finalise a backward Euler differential-algebraic equation and deallocate all memory.
backward_euler_solver | A pointer the backward Euler differential-algebraic equation solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1876 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_euler_backward_initialise(), solver_dae_euler_finalise(), and solver_dae_euler_solver_type_set().
|
private |
Initialise a backward Euler solver for a differential-algebraic equation solver.
euler_dae_solver | A pointer the Euler differential-algebraic equation solver to initialise a backward Euler solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1902 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_dae_euler_backward_finalise().
Referenced by solver_dae_euler_solver_type_set().
|
private |
Solve using a backward Euler differential-algebraic equation solver.
backward_euler_solver | A pointer the backward Euler differential-algebraic equation solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1944 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_euler_solve().
|
private |
Finalise an Euler differential-algebraic equation solver and deallocate all memory.
euler_solver | A pointer the Euler differential-algebraic equation solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1972 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dae_euler_backward_finalise(), solver_dae_euler_forward_finalise(), and solver_dae_euler_improved_finalise().
Referenced by solver_dae_euler_initialise(), solver_dae_finalise(), and solver_dae_solver_type_set().
|
private |
Finalise a forward Euler differential-algebraic equation and deallocate all memory.
forward_euler_solver | A pointer the forward Euler differential-algebraic equation solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2001 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_euler_finalise(), solver_dae_euler_forward_initialise(), and solver_dae_euler_solver_type_set().
|
private |
Initialise a forward Euler solver for a differential-algebraic equation solver.
euler_dae_solver | A pointer the Euler differential-algebraic equation solver to initialise a forward Euler solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2027 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_cmiss_library, and solver_dae_euler_forward_finalise().
Referenced by solver_dae_euler_initialise(), and solver_dae_euler_solver_type_set().
|
private |
Integrate using a forward Euler differential-algebraic equation solver.
forward_euler_solver | A pointer the forward Euler differential-algebraic equation solver to integrate | |
cellml | A pointer to the CellML environment to integrate the equations for. | |
[in] | n | The number of degrees-of-freedom |
[in] | start_time | The start time for the integration |
[in] | end_time | The end time for the integration |
[in,out] | time_increment | The (initial) time increment for the integration |
[in] | only_one_model_index | If only one model is used in the models data the index of that model. 0 otherwise. |
models_data | MODELS_DATA(dof_idx). The models data for the dof_idx'th dof. | |
[in] | max_number_states | The maximum number of state variables per dof |
state_data | STATE_DATA(state_idx,dof_idx). The state data for the state_idx'th state variable of the dof_idx'th dof. state_idx varies from 1..NUMBER_STATES. | |
[in] | max_number_parameters | The maximum number of parameter variables per dof. |
parameters_data | PARAMETERS_DATA(parameter_idx,dof_idx). The parameters data for the parameter_idx'th parameter variable of the dof_idx'th dof. parameter_idx varies from 1..NUMBER_PARAMETERS. | |
[in] | max_number_intermediates | The maximum number of intermediate variables per dof. |
intermediate_data | INTERMEDIATE_DATA(intermediate_idx,dof_idx). The intermediate values data for the intermediate_idx'th intermediate variable of the dof_idx'th dof. intermediate_idx varies from 1.NUMBER_INTERMEDIATE | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2071 of file solver_routines.f90.
References cmiss_cellml::cellml_models_field_not_constant, base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_euler_forward_solve().
|
private |
Solve using a forward Euler differential-algebraic equation solver.
forward_euler_solver | A pointer the forward Euler differential-algebraic equation solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2440 of file solver_routines.f90.
References cmiss_cellml::cellml_cellml_to_field_update(), cmiss_cellml::cellml_field_to_cellml_update(), base_routines::enters(), base_routines::exits(), and solver_dae_euler_forward_integrate().
Referenced by solver_dae_euler_solve().
|
private |
Finalise an improved Euler differential-algebaic equation and deallocate all memory.
improved_euler_solver | A pointer the improved Euler differential-algebraic equation solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2589 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_euler_finalise(), solver_dae_euler_improved_initialise(), and solver_dae_euler_solver_type_set().
|
private |
Initialise an improved Euler solver for a differential-algebraic equation solver.
euler_dae_solver | A pointer the Euler differential-algebraic equation solver to initialise an improved Euler solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2615 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_dae_euler_improved_finalise().
Referenced by solver_dae_euler_solver_type_set().
|
private |
Solve using an improved Euler differential-algebraic equation solver.
improved_euler_solver | A pointer the improved Euler differential-algebraic equation solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2657 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_euler_solve().
|
private |
Initialise an Euler solver for a differential-algebraic equation solver.
dae_solver | A pointer the differential-algebraic equation solver to initialise an Euler solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2685 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dae_euler_finalise(), solver_dae_euler_forward, and solver_dae_euler_forward_initialise().
Referenced by solver_dae_initialise(), and solver_dae_solver_type_set().
|
private |
Returns the type of library to use for an Euler differential-algebraic equation solver.
euler_dae_solver | A pointer the differential-algebraic equation Euler solver to get the library type for | |
[out] | solver_library_type | On return, the type of library used for the differential-algebraic equation Euler solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2730 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dae_euler_backward, solver_dae_euler_forward, and solver_dae_euler_improved.
Referenced by solver_dae_library_type_get().
|
private |
Sets/changes the type of library to use for an Euler differential-algebraic equation solver.
euler_dae_solver | A pointer the Euler differential-algebraic equation solver to set the library type for | |
[in] | solver_library_type | The type of library for the Euler differential-algebraic equation solver to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2789 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_cmiss_library, solver_dae_euler_backward, solver_dae_euler_forward, solver_dae_euler_improved, and solver_petsc_library.
|
private |
Solve using an Euler differential-algebraic equation solver.
euler_solver | A pointer the Euler differential-algebraic equation solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2875 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dae_euler_backward, solver_dae_euler_backward_solve(), solver_dae_euler_forward, solver_dae_euler_forward_solve(), solver_dae_euler_improved, and solver_dae_euler_improved_solve().
Referenced by solver_dae_solve().
subroutine, public solver_routines::solver_dae_euler_solver_type_get | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(out) | DAE_EULER_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns the solve type for an Euler differential-algebraic equation solver.
solver | A pointer the Euler differential equation solver to get type for | |
[out] | dae_euler_type | On return, the type of Euler solver for the Euler differential-algebraic equation to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2915 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dae_euler, and solver_dae_type.
subroutine, public solver_routines::solver_dae_euler_solver_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | DAE_EULER_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the solve type for an Euler differential-algebraic equation solver.
solver | A pointer the Euler differential equation solver to set type for | |
[in] | dae_euler_type | The type of Euler solver for the Euler differential-algebraic equation to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2969 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dae_euler, solver_dae_euler_backward, solver_dae_euler_backward_finalise(), solver_dae_euler_backward_initialise(), solver_dae_euler_forward, solver_dae_euler_forward_finalise(), solver_dae_euler_forward_initialise(), solver_dae_euler_improved, solver_dae_euler_improved_finalise(), solver_dae_euler_improved_initialise(), and solver_dae_type.
|
private |
Finalise an external differential-algebraic equation solver and deallocate all memory.
external_solver | A pointer the external differential-algebraic equation solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4001 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_external_initialise(), solver_dae_finalise(), and solver_dae_solver_type_set().
|
private |
Initialise an external solver for a differential-algebraic equation solver.
dae_solver | A pointer the differential-algebraic equation solver to initialise an external solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4027 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_dae_external_finalise().
Referenced by solver_dae_solver_type_set().
|
private |
Solve using an external differential-algebraic equation solver.
external_solver | A pointer the external differential-algebraic equation solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4068 of file solver_routines.f90.
References cmiss_cellml::cellml_cellml_to_field_update(), cmiss_cellml::cellml_field_to_cellml_update(), base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_solve().
|
private |
Finalise a differential-algebraic equation solver and deallocate all memory.
dae_solver | A pointer the differential-algebraic equation solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3052 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dae_adams_moulton_finalise(), solver_dae_bdf_finalise(), solver_dae_crank_nicolson_finalise(), solver_dae_euler_finalise(), solver_dae_external_finalise(), solver_dae_runge_kutta_finalise(), and solver_dae_rush_larson_finalise().
Referenced by solver_dae_initialise(), solver_finalise(), and solver_type_set().
|
private |
Initialise a differential-algebraic equation solver for a solver.
solver | A pointer the solver to initialise the differential-algebraic equation solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3085 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dae_euler, solver_dae_euler_initialise(), and solver_dae_finalise().
Referenced by solver_type_set().
|
private |
Returns the type of library to use for a differential-algebraic equation solver.
dae_solver | A pointer the differential-algebraic equation solver to get the library type for | |
[out] | solver_library_type | On return, the type of library used for the differential-algebraic equation solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3139 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dae_adams_moulton, solver_dae_bdf, solver_dae_crank_nicolson, solver_dae_euler, solver_dae_euler_library_type_get(), solver_dae_external, solver_dae_runge_kutta, and solver_dae_rush_larson.
Referenced by solver_library_type_get().
|
private |
Sets/changes the type of library to use for a differential-algebraic equation solver.
dae_solver | A pointer the differential-algebraic equation solver to set the library type for | |
[in] | solver_library_type | The type of library for the differential-algebraic equation solver to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3224 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_cmiss_library, solver_dae_adams_moulton, solver_dae_bdf, solver_dae_crank_nicolson, solver_dae_euler, solver_dae_euler_backward, solver_dae_euler_forward, solver_dae_euler_improved, solver_dae_external, solver_dae_runge_kutta, solver_dae_rush_larson, and solver_petsc_library.
Referenced by solver_library_type_set().
|
private |
Finalise a Runge-Kutta differential-algebraic equation solver and deallocate all memory.
runge_kutta_solver | A pointer the Runge-Kutta differential-algebraic equation solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4585 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_finalise(), solver_dae_runge_kutta_initialise(), and solver_dae_solver_type_set().
|
private |
Initialise a Runge-Kutta solver for a differential-algebraic equation solver.
dae_solver | A pointer the differential-algebraic equation solver to initialise a Runge-Kutta solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4611 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_dae_runge_kutta_finalise().
Referenced by solver_dae_solver_type_set().
|
private |
Solve using a Runge-Kutta differential-algebraic equation solver.
runge_kutta_solver | A pointer the Runge-Kutta differential-algebraic equation solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4652 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_solve().
|
private |
Finalise a Rush-Larson differential-algebraic equation solver and deallocate all memory.
rush_larson_solver | A pointer the Rush-Larson differential-algebraic equation solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4680 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_finalise(), solver_dae_rush_larson_initialise(), and solver_dae_solver_type_set().
|
private |
Initialise an Rush-Larson solver for a differential-algebraic equation solver.
dae_solver | A pointer the differential-algebraic equation solver to initialise a Rush-Larson solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4706 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_dae_rush_larson_finalise().
Referenced by solver_dae_solver_type_set().
|
private |
Solve using a Rush-Larson differential-algebraic equation solver.
rush_larson_solver | A pointer the Rush-Larson differential-algebraic equation solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4747 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_dae_solve().
|
private |
Solve a differential-algebraic equation solver.
dae_solver | A pointer the differential-algebraic equation solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4775 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), base_routines::general_output_type, solver_dae_adams_moulton, solver_dae_adams_moulton_solve(), solver_dae_bdf, solver_dae_bdf_solve(), solver_dae_crank_nicolson, solver_dae_crank_nicolson_solve(), solver_dae_euler, solver_dae_euler_solve(), solver_dae_external, solver_dae_external_solve(), solver_dae_runge_kutta, solver_dae_runge_kutta_solve(), solver_dae_rush_larson, solver_dae_rush_larson_solve(), and solver_solver_output.
Referenced by solver_solve().
subroutine, public solver_routines::solver_dae_solver_type_get | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(out) | DAE_SOLVE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns the solve type for an differential-algebraic equation solver.
solver | A pointer the solver to get the differential-algebraic equation solver type for | |
[out] | dae_solve_type | On return, the type of solver for the differential-algebraic equation to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4868 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_dae_type.
subroutine, public solver_routines::solver_dae_solver_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | DAE_SOLVE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the solve type for an differential-algebraic equation solver.
solver | A pointer the solver to set the differential-algebraic equation solver type for | |
[in] | dae_solve_type | The type of solver for the differential-algebraic equation to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4911 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dae_adams_moulton, solver_dae_adams_moulton_finalise(), solver_dae_adams_moulton_initialise(), solver_dae_bdf, solver_dae_bdf_finalise(), solver_dae_bdf_initialise(), solver_dae_crank_nicolson, solver_dae_crank_nicolson_finalise(), solver_dae_crank_nicolson_initialise(), solver_dae_euler, solver_dae_euler_finalise(), solver_dae_euler_initialise(), solver_dae_external, solver_dae_external_finalise(), solver_dae_external_initialise(), solver_dae_runge_kutta, solver_dae_runge_kutta_finalise(), solver_dae_runge_kutta_initialise(), solver_dae_rush_larson, solver_dae_rush_larson_finalise(), solver_dae_rush_larson_initialise(), and solver_dae_type.
subroutine, public solver_routines::solver_dae_time_step_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | TIME_STEP, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Set/change the (initial) time step size for a differential-algebraic equation solver.
solver | A pointer the differential-algebraic equation solver to set the times for | |
[in] | time_step | The (initial) time step for the differential-algebraic equation solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5047 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dae_type, and constants::zero_tolerance.
Referenced by navier_stokes_equations_routines::NAVIER_STOKES_PRE_SOLVE::navier_stokes_pre_solve().
subroutine, public solver_routines::solver_dae_times_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | START_TIME, | ||
real(dp), intent(in) | END_TIME, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Set/change the times for a differential-algebraic equation solver.
solver | A pointer the differential-algebraic equation solver to set the times for | |
[in] | start_time | The start time for the differential equation solver |
[in] | end_time | The end time for the differential equation solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4999 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_dae_type.
Referenced by biodomain_equation_routines::biodomain_pre_solve(), finite_elasticity_routines::finite_elasticity_pre_solve(), navier_stokes_equations_routines::NAVIER_STOKES_PRE_SOLVE::navier_stokes_pre_solve(), and reaction_diffusion_equation_routines::REACTION_DIFFUSION_PRE_SOLVE::reaction_diffusion_pre_solve().
|
private |
Finalise a CellML PETSc solver context.
ctx | A pointer the CellML-PETSc solver context to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3477 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_daecellmlpetsccontextinitialise(), and solver_daecellmlpetsccontextset().
|
private |
Initialise a CellML PETSc context.
[out] | ctx | A pointer to CellML PETSc context to initialise |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3506 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_daecellmlpetsccontextfinalise().
Referenced by solver_dae_bdf_integrate().
|
private |
Set a CellML PETSc context.
[in] | ctx | A pointer to initialise a CELLML_PETSC_CONTEXT |
[in] | solver | A pointer to the solver to set to ctx |
[in] | cellml | A pointer to the CellML environment to set to ctx |
[in] | dofidx | The DOF index of the cellml-petsc context |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3543 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_daecellmlpetsccontextfinalise().
Referenced by solver_dae_bdf_integrate().
subroutine, public solver_routines::solver_daecellmlrhsevaluate | ( | type(cellml_model_type), pointer | model, |
real(dp), intent(in) | time, | ||
integer(intg), intent(in) | stateStartIdx, | ||
integer(intg), intent(in) | stateDataOffset, | ||
real(dp), dimension(:), pointer | stateData, | ||
integer(intg), intent(in) | parameterStartIdx, | ||
integer(intg), intent(in) | parameterDataOffset, | ||
real(dp), dimension(:), pointer | parameterData, | ||
integer(intg), intent(in) | intermediateStartIdx, | ||
integer(intg), intent(in) | intermediateDataOffset, | ||
real(dp), dimension(:), pointer | intermediateData, | ||
integer(intg), intent(in) | rateStartIdx, | ||
integer(intg), intent(in) | rateDataOffset, | ||
real(dp), dimension(:), pointer | rateData, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Integrate using a forward Euler differential-algebraic equation solver.
model | The CellML model to evaluate | |
[in] | time | The time to evaluate the CellML model at |
[in] | statestartidx | The state start data offset. |
[in] | statedataoffset | The offset to the next state data |
statedata | A pointer to the state data | |
[in] | parameterstartidx | The parameter start data offset. |
[in] | parameterdataoffset | The offset to the next parameters data |
parameterdata | A pointer to the parameters data | |
[in] | intermediatestartidx | The intermediate start data offset. |
[in] | intermediatedataoffset | The offset to the next intermediate data |
intermediatedata | A pointer to the intermediate data | |
[in] | ratestartidx | The rate start data offset. |
[in] | ratedataoffset | The offset to the next rates data |
ratedata | On exit, the rate data. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4220 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
subroutine, public solver_routines::solver_destroy | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Destroys a solver.
solver | A pointer to the solver to destroy | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5093 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
subroutine, public solver_routines::solver_dynamic_ale_set | ( | type(solver_type), pointer | SOLVER, |
logical | ALE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the ALE flag for a dynamic solver.
solver | A pointer to the dynamic solver to set the theta value for | |
ale | The ALE flag for a dynamic solver | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6775 of file solver_routines.f90.
References solver_dynamic_type.
|
private |
Finishes the process of creating a dynamic solver.
dynamic_solver | A pointer to the dynamic solver to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5121 of file solver_routines.f90.
References 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, distributed_matrix_vector::distributed_matrix_vector_dp_type, distributed_matrix_vector::distributed_vector_create_finish(), distributed_matrix_vector::distributed_vector_create_start(), distributed_matrix_vector::distributed_vector_data_type_set(), base_routines::enters(), base_routines::exits(), solver_cmiss_library, solver_dynamic_linear, solver_dynamic_nonlinear, solver_dynamic_second_degree, solver_dynamic_third_degree, solver_full_matrices, solver_linear_create_finish(), solver_matrices_routines::solver_matrices_create_finish(), solver_matrices_routines::solver_matrices_create_start(), solver_matrices_routines::solver_matrices_library_type_get(), solver_matrices_routines::solver_matrices_library_type_set(), solver_matrices_routines::solver_matrices_storage_type_set(), solver_nonlinear_create_finish(), solver_petsc_library, solver_sparse_matrices, and constants::zero_tolerance.
Referenced by solverequations_boundaryconditionscreatefinish().
subroutine, public solver_routines::solver_dynamic_degree_get | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(out) | DEGREE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns the degree of the polynomial used to interpolate time for a dynamic solver.
solver | A pointer to the dynamic solver to get the degree for | |
[out] | degree | On return, the degree of the polynomial used for time interpolation in a dynamic solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5441 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_dynamic_type.
subroutine, public solver_routines::solver_dynamic_degree_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | DEGREE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the degree of the polynomial used to interpolate time for a dynamic solver.
solver | A pointer to the dynamic solver to set the theta value for | |
[in] | degree | The degree of the polynomial used for time interpolation in a dynamic solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5484 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dynamic_first_degree, solver_dynamic_second_degree, solver_dynamic_third_degree, and solver_dynamic_type.
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), fsi_routines::fsi_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), solver_dynamic_scheme_set(), and stokes_equations_routines::stokes_problem_setup().
|
private |
Finalise a dynamic solver and deallocates all memory.
dynamic_solver | A pointer the dynamic solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5564 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_finalise().
Referenced by solver_finalise(), and solver_type_set().
|
private |
Initialise a dynamic solver for a solver.
solver | A pointer the solver to initialise the dynamic solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5596 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_cmiss_library, solver_dynamic_crank_nicolson_scheme, solver_dynamic_first_degree, solver_dynamic_first_order, solver_dynamic_linear, and solver_dynamic_linearity_type_set().
Referenced by solver_type_set().
|
private |
Returns the type of library to use for a dynamic solver.
dynamic_solver | A pointer the dynamic solver to get the library type for. | |
[out] | solver_library_type | On exit, the type of library used for the dynamic solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5653 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by solver_library_type_get().
|
private |
Sets/changes the type of library to use for a dynamic solver.
dynamic_solver | A pointer the dynamic solver to get the library type for. | |
[in] | solver_library_type | The type of library for the dynamic solver to set. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5682 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_cmiss_library.
Referenced by solver_library_type_set().
subroutine, public solver_routines::solver_dynamic_linear_solver_get | ( | type(solver_type), pointer | SOLVER, |
type(solver_type), pointer | LINEAR_SOLVER, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns the linear solver associated with a dynamic solver.
solver | A pointer the dynamic solver to get the linear solver for | |
linear_solver | On exit, a pointer the linear solver linked to the dynamic solver. Must not be associated on entry | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5885 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_dynamic_type.
subroutine, public solver_routines::solver_dynamic_linearity_type_get | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(out) | LINEARITY_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns the linearity type for the dynamic solver.
solver | A pointer the solver to get the dynamic linearity type for | |
[out] | linearity_type | On return, the type of linearity |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5719 of file solver_routines.f90.
References base_routines::enters(), and base_routines::exits().
subroutine, public solver_routines::solver_dynamic_linearity_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | LINEARITY_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the linearity type for the dynamic solver.
solver | A pointer the solver to initialise the dynamic solver for | |
[in] | linearity_type | The type of linearity to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5758 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), solver_dynamic_linear, solver_dynamic_nonlinear, solver_finalise(), solver_initialise_ptr(), solver_linear_initialise(), solver_linear_iterative_solve_type, solver_linear_type, solver_lineariterativesolutioninittypeset(), solver_linked_solver_add(), solver_linked_solver_remove(), solver_newton_solution_init_type_set(), solver_nonlinear_initialise(), solver_nonlinear_newton, solver_nonlinear_type, and solver_solution_initialise_zero.
Referenced by burgers_equation_routines::burgers_equation_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), fsi_routines::fsi_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), and solver_dynamic_initialise().
|
private |
Copies the current to previous time-step, calculates mean predicted values, predicted values and previous residual values.
solver | A pointer to the solver | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5930 of file solver_routines.f90.
References base_routines::enters(), solver_dynamic_first_degree, solver_dynamic_first_order, solver_dynamic_nonlinear, solver_dynamic_second_degree, solver_dynamic_second_order, and solver_dynamic_third_degree.
Referenced by solver_dynamic_solve().
subroutine, public solver_routines::solver_dynamic_nonlinear_solver_get | ( | type(solver_type), pointer | SOLVER, |
type(solver_type), pointer | NONLINEAR_SOLVER, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns the nonlinear solver associated with a dynamic solver.
solver | A pointer the dynamic solver to get the linear solver for | |
nonlinear_solver | On exit, a pointer the linear solver linked to the dynamic solver. Must not be associated on entry | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5839 of file solver_routines.f90.
References base_routines::enters(), base_routines::exits(), and solver_dynamic_type.
subroutine, public solver_routines::solver_dynamic_order_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | ORDER, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the order for a dynamic solver.
solver | A pointer to the dynamic solver to set the theta value for | |
[in] | order | The order of the dynamic solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6327 of file solver_routines.f90.
References solver_dynamic_first_degree, solver_dynamic_first_order, solver_dynamic_second_order, and solver_dynamic_type.
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), fsi_routines::fsi_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), solver_dynamic_scheme_set(), and stokes_equations_routines::stokes_problem_setup().
subroutine, public solver_routines::solver_dynamic_restart_get | ( | type(solver_type), pointer | SOLVER, |
logical, intent(out) | RESTART, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns the restart value for a dynamic solver.
solver | A pointer to the dynamic solver to get the degree for | |
[out] | restart | On return, the restart value |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6206 of file solver_routines.f90.
References solver_dynamic_type.
subroutine, public solver_routines::solver_dynamic_restart_set | ( | type(solver_type), pointer | SOLVER, |
logical, intent(in) | RESTART, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the restart value for a dynamic solver.
solver | A pointer to the dynamic solver to set the theta value for | |
[in] | restart | The restart value to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6249 of file solver_routines.f90.
References solver_dynamic_type.
Referenced by biodomain_equation_routines::biodomain_equation_problem_setup(), and bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup().
subroutine, public solver_routines::solver_dynamic_scheme_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | SCHEME, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the scheme for a dynamic solver.
solver | A pointer to the dynamic solver to set the scheme for | |
[in] | scheme | The scheme used for a dynamic solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6384 of file solver_routines.f90.
References solver_dynamic_backward_euler_scheme, solver_dynamic_bossak_newmark1_scheme, solver_dynamic_bossak_newmark2_scheme, solver_dynamic_crank_nicolson_scheme, solver_dynamic_degree_set(), solver_dynamic_euler_scheme, solver_dynamic_first_degree, solver_dynamic_first_order, solver_dynamic_galerkin_scheme, solver_dynamic_hilbert_hughes_taylor1_scheme, solver_dynamic_hilbert_hughes_taylor2_scheme, solver_dynamic_houbolt_scheme, solver_dynamic_newmark1_scheme, solver_dynamic_newmark2_scheme, solver_dynamic_newmark3_scheme, solver_dynamic_order_set(), solver_dynamic_second_degree, solver_dynamic_second_degree_gear_scheme, solver_dynamic_second_degree_liniger1_scheme, solver_dynamic_second_degree_liniger2_scheme, solver_dynamic_second_order, solver_dynamic_third_degree, solver_dynamic_third_degree_gear_scheme, solver_dynamic_third_degree_liniger1_scheme, solver_dynamic_third_degree_liniger2_scheme, solver_dynamic_type, solver_dynamic_user_defined_scheme, solver_dynamic_wilson_scheme, and solver_dynamic_zlamal_scheme.
Referenced by advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), fsi_routines::fsi_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), and stokes_equations_routines::stokes_problem_setup().
|
private |
Solve a dynamic solver.
dynamic_solver | A pointer to the dynamic solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6555 of file solver_routines.f90.
References solver_cmiss_library, solver_dynamic_first_degree, solver_dynamic_first_order, solver_dynamic_linear, solver_dynamic_mean_predicted_calculate(), solver_dynamic_nonlinear, solver_dynamic_second_degree, solver_dynamic_second_order, solver_matrices_dynamic_assemble(), solver_petsc_library, solver_solve(), solver_solver_output, and solver_variables_dynamic_field_update().
Referenced by solver_solve().
|
private |
Sets/changes the theta value for a dynamic solver.
solver | A pointer to the dynamic solver to set the theta value for | |
[in] | theta | THEATA(degree_idx). The theta value to set for the degree_idx-1'th polynomial |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6715 of file solver_routines.f90.
References solver_dynamic_type.
Referenced by solver_dynamic_theta_set_dp1().
|
private |
Sets/changes a single theta value for a dynamic solver.
solver | A pointer to the dynamic solver to set the theta value for | |
[in] | theta | The theta value to set for the first degree polynomial |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6691 of file solver_routines.f90.
References solver_dynamic_theta_set_dp().
subroutine, public solver_routines::solver_dynamic_times_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | CURRENT_TIME, | ||
real(dp), intent(in) | TIME_INCREMENT, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the dynamic times for a dynamic solver.
solver | A pointer to the dynamic solver to set the times for | |
[in] | current_time | The current time to set |
[in] | time_increment | The time increment to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6863 of file solver_routines.f90.
References solver_dynamic_type.
subroutine, public solver_routines::solver_dynamic_update_bc_set | ( | type(solver_type), pointer | SOLVER, |
logical | UPDATE_BC, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the bc flag for a dynamic solver.
solver | A pointer to the dynamic solver to set the theta value for | |
update_bc | The UPDATE_BC flag for a dynamic solver | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6819 of file solver_routines.f90.
References solver_dynamic_type.
|
private |
Finishes the process of creating a eigenproblem solver.
eigenproblem_solver | A pointer to the eigenproblem solver to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6911 of file solver_routines.f90.
Referenced by solverequations_boundaryconditionscreatefinish().
|
private |
Finalise a eigenproblem solver for a solver.
eigenproblem_solver | A pointer the eigenproblem solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6939 of file solver_routines.f90.
Referenced by solver_eigenproblem_initialise(), solver_finalise(), and solver_type_set().
|
private |
Initialise a eigenproblem solver for a solver.
solver | A pointer the solver to initialise the eigenproblem solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6965 of file solver_routines.f90.
References solver_eigenproblem_finalise(), and solver_petsc_library.
Referenced by solver_type_set().
|
private |
Returns the type of library to use for an eigenproblem solver.
eigenproblem_solver | A pointer the eigenproblem solver to get the library type for. | |
[out] | solver_library_type | On exit, the type of library used for the eigenproblem solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7004 of file solver_routines.f90.
Referenced by solver_library_type_get().
|
private |
Sets/changes the type of library to use for an eigenproblem solver.
eigenproblem_solver | A pointer the eigenproblem solver to get the library type for. | |
[in] | solver_library_type | The type of library for the eigenproblem solver to set. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7033 of file solver_routines.f90.
References solver_cmiss_library.
Referenced by solver_library_type_set().
|
private |
Solve a eigenproblem solver.
eigenproblem_solver | A pointer the eigenproblem solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7099 of file solver_routines.f90.
Referenced by solver_solve().
|
private |
Returns the type of library to use for an eigenproblem solver matrices.
eigenproblem_solver | A pointer the eigenproblem solver to get the library type for. | |
[out] | matrices_library_type | On exit, the type of library used for the eigenproblem solver matrices |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7070 of file solver_routines.f90.
Referenced by solver_matrices_library_type_get().
subroutine, public solver_routines::solver_equations_boundary_conditions_get | ( | type(solver_equations_type), pointer | SOLVER_EQUATIONS, |
type(boundary_conditions_type), pointer | BOUNDARY_CONDITIONS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Gets the boundary conditions for solver equations.
solver_equations | A pointer to the solver equations to get the boundary conditions for | |
boundary_conditions | On exit, a pointer to the boundary conditions for the specified solver equations. Must not be associated on entry | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7127 of file solver_routines.f90.
subroutine, public solver_routines::solver_equations_create_finish | ( | type(solver_equations_type), pointer | SOLVER_EQUATIONS, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Finishes the process of creating solver equations.
solver_equations | A pointer the solver equations to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7166 of file solver_routines.f90.
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), finite_elasticity_fluid_pressure_routines::elasticity_fluid_pressure_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), finite_elasticity_routines::finiteelasticity_contactproblemsetup(), fitting_routines::fitting_problem_standard_setup(), fitting_routines::fitting_problem_vectordata_setup(), fsi_routines::fsi_problem_setup(), helmholtz_equations_routines::HELMHOLTZ_EQUATION_PROBLEM_STANDARD_SETUP::helmholtz_equation_problem_standard_setup(), hamilton_jacobi_equations_routines::HJ_EQUATION_PROBLEM_STANDARD_SETUP::hj_equation_problem_standard_setup(), laplace_equations_routines::laplace_equation_problem_generalised_setup(), laplace_equations_routines::laplace_equation_problem_standard_setup(), linear_elasticity_routines::linear_elasticity_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), poiseuille_equations_routines::poiseuille_equation_problem_static_setup(), poisson_equations_routines::poisson_problemextracellularbidomainsetup(), poisson_equations_routines::poisson_problemlinearsourcesetup(), poisson_equations_routines::poisson_problemnonlinearsourcesetup(), poisson_equations_routines::poisson_problempressurepoissonsetup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), and stokes_equations_routines::stokes_problem_setup().
subroutine, public solver_routines::solver_equations_create_start | ( | type(solver_type), pointer | SOLVER, |
type(solver_equations_type), pointer | SOLVER_EQUATIONS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Starts the process of creating solver equations.
solver | A pointer the solver to start the creation of solver equations on | |
solver_equations | On return, A pointer the solver equations. Must not be associated on entry | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7209 of file solver_routines.f90.
References solver_dae_type, solver_dynamic_type, solver_eigenproblem_type, solver_equations_initialise(), solver_linear_type, and solver_nonlinear_type.
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), finite_elasticity_fluid_pressure_routines::elasticity_fluid_pressure_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), finite_elasticity_routines::finiteelasticity_contactproblemsetup(), fitting_routines::fitting_problem_standard_setup(), fitting_routines::fitting_problem_vectordata_setup(), fsi_routines::fsi_problem_setup(), helmholtz_equations_routines::HELMHOLTZ_EQUATION_PROBLEM_STANDARD_SETUP::helmholtz_equation_problem_standard_setup(), hamilton_jacobi_equations_routines::HJ_EQUATION_PROBLEM_STANDARD_SETUP::hj_equation_problem_standard_setup(), laplace_equations_routines::laplace_equation_problem_generalised_setup(), laplace_equations_routines::laplace_equation_problem_standard_setup(), linear_elasticity_routines::linear_elasticity_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), poiseuille_equations_routines::poiseuille_equation_problem_static_setup(), poisson_equations_routines::poisson_problemextracellularbidomainsetup(), poisson_equations_routines::poisson_problemlinearsourcesetup(), poisson_equations_routines::poisson_problemnonlinearsourcesetup(), poisson_equations_routines::poisson_problempressurepoissonsetup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), and stokes_equations_routines::stokes_problem_setup().
subroutine, public solver_routines::solver_equations_destroy | ( | type(solver_equations_type), pointer | SOLVER_EQUATIONS, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Destroys the solver equations.
solver_equations | A pointer the solver equations to destroy. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7271 of file solver_routines.f90.
References solver_equations_finalise().
Referenced by control_loop_routines::control_loop_solver_equations_destroy().
subroutine, public solver_routines::solver_equations_equations_set_add | ( | type(solver_equations_type), pointer | SOLVER_EQUATIONS, |
type(equations_set_type), pointer | EQUATIONS_SET, | ||
integer(intg), intent(out) | EQUATIONS_SET_INDEX, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Adds equations sets to solver equations.
solver_equations | A pointer the solver equations to add the equations set to. | |
equations_set | A pointer to the equations set to add | |
[out] | equations_set_index | On exit, the index of the equations set that has been added |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7299 of file solver_routines.f90.
|
private |
Finalises the solver equations and deallocates all memory.
solver_equations | A pointer the solver equations to finalise. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7445 of file solver_routines.f90.
Referenced by solver_equations_destroy(), solver_equations_initialise(), and solver_finalise().
|
private |
Initialises the solver equations for a solver.
solver | A pointer the solver to initialise the solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7474 of file solver_routines.f90.
References solver_equations_finalise(), and solver_sparse_matrices.
Referenced by solver_equations_create_start().
subroutine, public solver_routines::solver_equations_interface_condition_add | ( | type(solver_equations_type), pointer | SOLVER_EQUATIONS, |
type(interface_condition_type), pointer | INTERFACE_CONDITION, | ||
integer(intg), intent(out) | INTERFACE_CONDITION_INDEX, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Adds an interface condition to the solver equations.
solver_equations | A pointer the solver equations to add the interface condition to. | |
interface_condition | A pointer to the interface condition to add | |
[out] | interface_condition_index | On exit, the index of the interface condition that has been added |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7516 of file solver_routines.f90.
subroutine, public solver_routines::solver_equations_linearity_type_set | ( | type(solver_equations_type), pointer | SOLVER_EQUATIONS, |
integer(intg), intent(in) | LINEARITY_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the linearity type for solver equations.
solver_equations | A pointer the solver equations to set the linearity type for | |
[in] | linearity_type | The type of linearity to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7577 of file solver_routines.f90.
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), finite_elasticity_fluid_pressure_routines::elasticity_fluid_pressure_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), finite_elasticity_routines::finiteelasticity_contactproblemsetup(), fitting_routines::fitting_problem_standard_setup(), fitting_routines::fitting_problem_vectordata_setup(), fsi_routines::fsi_problem_setup(), helmholtz_equations_routines::HELMHOLTZ_EQUATION_PROBLEM_STANDARD_SETUP::helmholtz_equation_problem_standard_setup(), hamilton_jacobi_equations_routines::HJ_EQUATION_PROBLEM_STANDARD_SETUP::hj_equation_problem_standard_setup(), laplace_equations_routines::laplace_equation_problem_generalised_setup(), laplace_equations_routines::laplace_equation_problem_standard_setup(), linear_elasticity_routines::linear_elasticity_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), poiseuille_equations_routines::poiseuille_equation_problem_static_setup(), poisson_equations_routines::poisson_problemextracellularbidomainsetup(), poisson_equations_routines::poisson_problemlinearsourcesetup(), poisson_equations_routines::poisson_problemnonlinearsourcesetup(), poisson_equations_routines::poisson_problempressurepoissonsetup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), and stokes_equations_routines::stokes_problem_setup().
subroutine, public solver_routines::solver_equations_sparsity_type_set | ( | type(solver_equations_type), pointer | SOLVER_EQUATIONS, |
integer(intg), intent(in) | SPARSITY_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the sparsity type for solver equations.
solver_equations | A pointer the solver equations to set the sparsity type for | |
[in] | sparsity_type | The type of solver equations sparsity to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7734 of file solver_routines.f90.
References solver_full_matrices, and solver_sparse_matrices.
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), finite_elasticity_fluid_pressure_routines::elasticity_fluid_pressure_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), finite_elasticity_routines::finiteelasticity_contactproblemsetup(), fitting_routines::fitting_problem_standard_setup(), fitting_routines::fitting_problem_vectordata_setup(), fsi_routines::fsi_problem_setup(), helmholtz_equations_routines::HELMHOLTZ_EQUATION_PROBLEM_STANDARD_SETUP::helmholtz_equation_problem_standard_setup(), hamilton_jacobi_equations_routines::HJ_EQUATION_PROBLEM_STANDARD_SETUP::hj_equation_problem_standard_setup(), laplace_equations_routines::laplace_equation_problem_generalised_setup(), laplace_equations_routines::laplace_equation_problem_standard_setup(), linear_elasticity_routines::linear_elasticity_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), poiseuille_equations_routines::poiseuille_equation_problem_static_setup(), poisson_equations_routines::poisson_problemextracellularbidomainsetup(), poisson_equations_routines::poisson_problemlinearsourcesetup(), poisson_equations_routines::poisson_problemnonlinearsourcesetup(), poisson_equations_routines::poisson_problempressurepoissonsetup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), and stokes_equations_routines::stokes_problem_setup().
subroutine, public solver_routines::solver_equations_time_dependence_type_set | ( | type(solver_equations_type), pointer | SOLVER_EQUATIONS, |
integer(intg), intent(in) | TIME_DEPENDENCE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the time dependence type for solver equations.
solver_equations | A pointer the solver equations to set the sparsity type for | |
[in] | time_dependence_type | The type of time dependence to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7788 of file solver_routines.f90.
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), finite_elasticity_fluid_pressure_routines::elasticity_fluid_pressure_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), finite_elasticity_routines::finiteelasticity_contactproblemsetup(), fitting_routines::fitting_problem_standard_setup(), fitting_routines::fitting_problem_vectordata_setup(), fsi_routines::fsi_problem_setup(), helmholtz_equations_routines::HELMHOLTZ_EQUATION_PROBLEM_STANDARD_SETUP::helmholtz_equation_problem_standard_setup(), hamilton_jacobi_equations_routines::HJ_EQUATION_PROBLEM_STANDARD_SETUP::hj_equation_problem_standard_setup(), laplace_equations_routines::laplace_equation_problem_generalised_setup(), laplace_equations_routines::laplace_equation_problem_standard_setup(), linear_elasticity_routines::linear_elasticity_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), poiseuille_equations_routines::poiseuille_equation_problem_static_setup(), poisson_equations_routines::poisson_problemextracellularbidomainsetup(), poisson_equations_routines::poisson_problemlinearsourcesetup(), poisson_equations_routines::poisson_problemnonlinearsourcesetup(), poisson_equations_routines::poisson_problempressurepoissonsetup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), and stokes_equations_routines::stokes_problem_setup().
|
private |
Finalises a solver and deallocates all memory.
solver | A pointer the solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8108 of file solver_routines.f90.
References solver_cellml_evaluator_finalise(), solver_dae_finalise(), solver_dynamic_finalise(), solver_eigenproblem_finalise(), solver_equations_finalise(), solver_geometrictransformationfinalise(), solver_linear_finalise(), solver_nonlinear_finalise(), and solver_optimiser_finalise().
Referenced by solver_dynamic_finalise(), solver_dynamic_linearity_type_set(), solver_initialise(), solver_newton_finalise(), solver_quasi_newton_finalise(), solvers_finalise(), and solvers_number_set().
subroutine, public solver_routines::solver_geometrictransformationarbitrarypathset | ( | type(solver_type), pointer | solver, |
logical, intent(in) | arbitraryPath, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Set the arbitrary path logical for geometric transformation solver.
solver | A pointer the solver to set the field for | |
[in] | arbitrarypath | .TRUE. if the the transformation has an arbitrary path, .FALSE. if the path is uni-directional |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8147 of file solver_routines.f90.
subroutine, public solver_routines::solver_geometrictransformationclear | ( | type(solver_type), pointer | solver, |
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Clear transformation for a geometric transformation solver.
solver | A pointer the solver to set the field for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8181 of file solver_routines.f90.
subroutine, public solver_routines::solver_geometrictransformationfieldset | ( | type(solver_type), pointer | solver, |
type(field_type), pointer | field, | ||
integer(intg), intent(in) | variableType, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Set the field and field variable type for geometric transformation solver.
solver | A pointer the solver to set the field for | |
field | A pointer to the field to transformed | |
[in] | variabletype | The variable type of the field to be transformed |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8221 of file solver_routines.f90.
|
private |
Finalise a geometric transformation solver for a solver.
geometrictransformationsolver | A pointer the linear solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8581 of file solver_routines.f90.
Referenced by solver_finalise(), solver_geometrictransformationinitialise(), and solver_type_set().
|
private |
Initialise a geometric transformation solver for a solver.
solver | A pointer the solver to initialise the geometric transformation solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8615 of file solver_routines.f90.
References solver_geometrictransformationfinalise().
Referenced by solver_type_set().
subroutine, public solver_routines::solver_geometrictransformationmatrixset | ( | type(solver_type), pointer | solver, |
real(dp), dimension(:,:), intent(in) | matrix, | ||
integer(intg), intent(in) | incrementIdx, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Set the full transformation matrix for a geometric transformation at a load increment.
solver | A pointer the solver to set the field for | |
[in] | matrix | The full transformation matrix to set |
[in] | incrementidx | The load increment index |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8296 of file solver_routines.f90.
subroutine, public solver_routines::solver_geometrictransformationnumberofloadincrementsset | ( | type(solver_type), pointer | solver, |
integer(intg), intent(in) | numberOfIncrements, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Set the number of load increments for geometric transformation solver.
solver | A pointer the solver to set the field for | |
[in] | numberofincrements | The number of load increments to apply the transformation |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8344 of file solver_routines.f90.
subroutine, public solver_routines::solver_geometrictransformationrotationset | ( | type(solver_type), pointer | solver, |
real(dp), dimension(:), intent(in) | pt, | ||
real(dp), dimension(:), intent(in) | axis, | ||
real(dp), intent(in) | theta, | ||
integer(intg), intent(in) | incrementIdx, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Set the rotation for a geometric transformation.
solver | A pointer the solver to set the field for | |
[in] | pt | The pivot point to rotate about |
[in] | axis | The axis to to rotate around |
[in] | theta | The angle to rotate |
[in] | incrementidx | The load increment index |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8379 of file solver_routines.f90.
subroutine, public solver_routines::solver_geometrictransformationscalingsset | ( | type(solver_type), pointer | solver, |
real(dp), dimension(:), intent(in) | scalings, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Set the scalings for geometric transformation solver.
solver | A pointer the solver to set the field for | |
[in] | scalings | The scalings vector to set for uni-directional transformation |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8472 of file solver_routines.f90.
subroutine, public solver_routines::solver_geometrictransformationtranslationset | ( | type(solver_type), pointer | solver, |
real(dp), dimension(:), intent(in) | translation, | ||
integer(intg), intent(in) | incrementIdx, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Set the translation for a geometric transformation.
solver | A pointer the solver to set the field for | |
[in] | translation | The translation vector to set |
[in] | incrementidx | The load increment index |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8518 of file solver_routines.f90.
|
private |
Initialise a solver for a control loop.
solvers | A pointer the solvers to initialise the solver for | |
[in] | solver_index | The solver index in solvers to initialise the solver for |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8743 of file solver_routines.f90.
References solver_finalise(), solver_initialise_ptr(), solver_linear_initialise(), and solver_linear_type.
Referenced by solvers_initialise(), and solvers_number_set().
|
private |
Initialise a solver.
solver | A pointer the solver to initialise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8797 of file solver_routines.f90.
References solver_no_output, and solver_number_of_solver_types.
Referenced by solver_dynamic_linearity_type_set(), solver_initialise(), solver_newton_cellml_evaluator_create(), solver_newton_initialise(), and solver_quasi_newton_initialise().
|
private |
Returns the label of a solver.
solver | A pointer to the solver to get the label for | |
[out] | label | On return, the solver label. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8845 of file solver_routines.f90.
|
private |
Returns the label of a solver.
solver | A pointer to the solver to get the label for | |
[out] | label | On return, the solver label. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8881 of file solver_routines.f90.
|
private |
Sets the label of a solver.
solver | A pointer to the solver to set the label for | |
[in] | label | The label to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8910 of file solver_routines.f90.
|
private |
Sets the label of a solver.
solver | A pointer to the solver to set the label for | |
[in] | label | The label to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8943 of file solver_routines.f90.
subroutine, public solver_routines::solver_library_type_get | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(out) | SOLVER_LIBRARY_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Gets the type of library to use for the solver.
solver | A pointer the solver to get the library type of | |
[out] | solver_library_type | On exit, the type of library used for the solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8975 of file solver_routines.f90.
References solver_cellml_evaluator_library_type_get(), solver_cellml_evaluator_type, solver_dae_library_type_get(), solver_dae_type, solver_dynamic_library_type_get(), solver_dynamic_type, solver_eigenproblem_library_type_get(), solver_eigenproblem_type, solver_linear_library_type_get(), solver_linear_type, solver_nonlinear_library_type_get(), solver_nonlinear_type, solver_optimiser_library_type_get(), and solver_optimiser_type.
subroutine, public solver_routines::solver_library_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | SOLVER_LIBRARY_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the type of library type to use for the solver.
solver | A pointer the solver to set the type of | |
[in] | solver_library_type | The type of library to use for the solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9067 of file solver_routines.f90.
References solver_cellml_evaluator_library_type_set(), solver_cellml_evaluator_type, solver_cmiss_library, solver_dae_library_type_set(), solver_dae_type, solver_dynamic_library_type_set(), solver_dynamic_type, solver_eigenproblem_library_type_set(), solver_eigenproblem_type, solver_linear_library_type_set(), solver_linear_type, solver_nonlinear_library_type_set(), solver_nonlinear_type, solver_optimiser_library_type_set(), solver_optimiser_type, and solver_petsc_library.
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), finite_elasticity_fluid_pressure_routines::elasticity_fluid_pressure_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), finite_elasticity_routines::finiteelasticity_contactproblemsetup(), fitting_routines::fitting_problem_standard_setup(), fitting_routines::fitting_problem_vectordata_setup(), fsi_routines::fsi_problem_setup(), helmholtz_equations_routines::HELMHOLTZ_EQUATION_PROBLEM_STANDARD_SETUP::helmholtz_equation_problem_standard_setup(), hamilton_jacobi_equations_routines::HJ_EQUATION_PROBLEM_STANDARD_SETUP::hj_equation_problem_standard_setup(), laplace_equations_routines::laplace_equation_problem_generalised_setup(), laplace_equations_routines::laplace_equation_problem_standard_setup(), linear_elasticity_routines::linear_elasticity_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), poiseuille_equations_routines::poiseuille_equation_problem_static_setup(), poisson_equations_routines::poisson_problemextracellularbidomainsetup(), poisson_equations_routines::poisson_problemlinearsourcesetup(), poisson_equations_routines::poisson_problemnonlinearsourcesetup(), poisson_equations_routines::poisson_problempressurepoissonsetup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), and stokes_equations_routines::stokes_problem_setup().
|
private |
Finishes the process of creating a linear solver.
linear_solver | A pointer to the linear solver to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9170 of file solver_routines.f90.
References solver_linear_direct_create_finish(), solver_linear_direct_solve_type, solver_linear_iterative_create_finish(), solver_linear_iterative_solve_type, solver_newton_linesearch, solver_newton_trustregion, solver_nonlinear_newton, solver_nonlinear_quasi_newton, solver_nonlinear_type, solver_petsc_library, solver_quasi_newton_linesearch, and solver_quasi_newton_trustregion.
Referenced by solver_dynamic_create_finish(), solver_newton_linesearch_create_finish(), solver_quasinewtonlinesearchcreatefinish(), and solverequations_boundaryconditionscreatefinish().
|
private |
Finalise a Cholesky direct linear solver and deallocate all memory.
direct_solver | A pointer to the linear direct solver to finalise the Cholesky solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9287 of file solver_routines.f90.
Referenced by solver_linear_direct_type_set().
|
private |
Initialise a Cholesky direct linear solver for a direct linear solver.
direct_solver | A pointer the direct linear solver to initialise the Cholesky direct linear solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9313 of file solver_routines.f90.
Referenced by solver_linear_direct_type_set().
|
private |
Finishes the process of creating a linear direct solver.
linear_direct_solver | A pointer to the linear direct solver to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9341 of file solver_routines.f90.
References solver_cmiss_library, solver_direct_cholesky, solver_direct_lu, solver_direct_svd, solver_essl_library, solver_full_matrices, solver_lapack_library, solver_lusol_library, solver_mumps_library, solver_pastix_library, solver_petsc_library, solver_sparse_matrices, solver_spooles_library, solver_superlu_library, and solver_umfpack_library.
Referenced by solver_linear_create_finish().
|
private |
Finalise a direct linear solver for a linear solver and deallocate all memory.
linear_direct_solver | A pointer to the lienar direct solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9530 of file solver_routines.f90.
References solver_linear_direct_lu_finalise().
Referenced by solver_linear_direct_initialise(), solver_linear_finalise(), and solver_linear_type_set().
|
private |
Initialise a direct linear solver for a lienar solver.
linear_solver | A pointer the linear solver to initialise the direct solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9563 of file solver_routines.f90.
References solver_direct_lu, solver_linear_direct_finalise(), and solver_linear_direct_lu_initialise().
Referenced by solver_linear_type_set().
|
private |
Returns the type of library to use for a direct linear solver.
direct_solver | A pointer the direct linear solver to get the library type for. | |
[out] | solver_library_type | On exit, the type of library used for the direct linear solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9603 of file solver_routines.f90.
References solver_direct_cholesky, solver_direct_lu, and solver_direct_svd.
Referenced by solver_linear_library_type_get().
|
private |
Sets/changes the type of library to use for a direct linear solver.
direct_solver | A pointer the direct linear solver to get the library type for. | |
[in] | solver_library_type | The type of library for the direct linear solver to set. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9644 of file solver_routines.f90.
References solver_cmiss_library, solver_direct_cholesky, solver_direct_lu, solver_direct_svd, solver_essl_library, solver_lapack_library, solver_lusol_library, solver_mumps_library, solver_pastix_library, solver_spooles_library, and solver_superlu_library.
Referenced by solver_linear_library_type_set().
|
private |
Finalise a LU direct linear solver and deallocate all memory.
direct_solver | A pointer to the linear direct solver to finalise the LU solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9711 of file solver_routines.f90.
References solver_cmiss_library, solver_essl_library, solver_lapack_library, solver_lusol_library, solver_mumps_library, solver_pastix_library, solver_spooles_library, solver_superlu_library, and solver_umfpack_library.
Referenced by solver_linear_direct_finalise(), solver_linear_direct_lu_initialise(), and solver_linear_direct_type_set().
|
private |
Initialise a LU direct linear solver for a direct linear solver.
direct_solver | A pointer the direct linear solver to initialise the LU direct linear solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9770 of file solver_routines.f90.
References solver_linear_direct_lu_finalise(), and solver_mumps_library.
Referenced by solver_linear_direct_initialise(), and solver_linear_direct_type_set().
|
private |
Solve a linear direct solver.
linear_direct_solver | A pointer to the linear direct solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10065 of file solver_routines.f90.
References solver_cmiss_library, solver_direct_cholesky, solver_direct_lu, solver_direct_svd, solver_essl_library, solver_lapack_library, solver_lusol_library, solver_mumps_library, solver_pastix_library, solver_spooles_library, solver_superlu_library, and solver_umfpack_library.
Referenced by solver_linear_solve().
|
private |
Finalise a SVD direct linear solver and deallocate all memory.
linear_direct_solver | A pointer to the linear direct solver to finalise the SVD solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10311 of file solver_routines.f90.
Referenced by solver_linear_direct_type_set().
|
private |
Initialise a SVD direct linear solver for a direct linear solver.
direct_solver | A pointer the direct linear solver to initialise the SVD direct linear solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10337 of file solver_routines.f90.
Referenced by solver_linear_direct_type_set().
subroutine, public solver_routines::solver_linear_direct_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | DIRECT_SOLVER_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the type of direct linear solver.
solver | A pointer the solver to set the direct linear solver type for. | |
[in] | direct_solver_type | The type of direct linear solver to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10365 of file solver_routines.f90.
References solver_direct_cholesky, solver_direct_lu, solver_direct_svd, solver_linear_direct_cholesky_finalise(), solver_linear_direct_cholesky_initialise(), solver_linear_direct_lu_finalise(), solver_linear_direct_lu_initialise(), solver_linear_direct_solve_type, solver_linear_direct_svd_finalise(), solver_linear_direct_svd_initialise(), and solver_linear_type.
|
private |
Finalise a linear solver for a solver.
linear_solver | A pointer the linear solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10442 of file solver_routines.f90.
References solver_linear_direct_finalise(), and solver_linear_iterative_finalise().
Referenced by solver_finalise(), solver_linear_initialise(), and solver_type_set().
|
private |
Initialise a linear solver for a solver.
solver | A pointer the solver to initialise the linear solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10470 of file solver_routines.f90.
References solver_linear_finalise(), solver_linear_iterative_initialise(), and solver_linear_iterative_solve_type.
Referenced by solver_dynamic_linearity_type_set(), solver_initialise(), solver_newton_initialise(), solver_quasi_newton_initialise(), and solver_type_set().
|
private |
Finishes the process of creating a linear iterative solver.
linear_iterative_solver | A pointer to the linear iterative solver to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10570 of file solver_routines.f90.
References solver_cmiss_library, solver_full_matrices, solver_iterative_additive_schwarz_preconditioner, solver_iterative_bicgstab, solver_iterative_biconjugate_gradient, solver_iterative_block_jacobi_preconditioner, solver_iterative_chebyshev, solver_iterative_conjgrad_squared, solver_iterative_conjugate_gradient, solver_iterative_gmres, solver_iterative_incomplete_cholesky_preconditioner, solver_iterative_incomplete_lu_preconditioner, solver_iterative_jacobi_preconditioner, solver_iterative_no_preconditioner, solver_iterative_richardson, solver_iterative_sor_preconditioner, solver_newton_linesearch, solver_newton_trustregion, solver_nonlinear_newton, solver_nonlinear_quasi_newton, solver_petsc_library, solver_quasi_newton_linesearch, solver_quasi_newton_trustregion, and solver_sparse_matrices.
Referenced by solver_linear_create_finish().
|
private |
Finalise an iterative linear solver for a linear solver and deallocate all memory.
linear_iterative_solver | A pointer the linear iterative solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10860 of file solver_routines.f90.
Referenced by solver_linear_finalise(), solver_linear_iterative_initialise(), and solver_linear_type_set().
subroutine, public solver_routines::solver_linear_iterative_gmres_restart_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | GMRES_RESTART, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the GMRES restart value for a GMRES iterative linear solver.
solver | A pointer the solver to set the GMRES restart value | |
[in] | gmres_restart | The GMRES restart value |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10894 of file solver_routines.f90.
References solver_iterative_gmres, solver_linear_iterative_solve_type, and solver_linear_type.
|
private |
Initialise an iterative linear solver for a linear solver.
linear_solver | A pointer the linear solver to initialise the iterative solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10958 of file solver_routines.f90.
References solver_iterative_gmres, solver_iterative_jacobi_preconditioner, solver_linear_iterative_finalise(), solver_petsc_library, and solver_solution_initialise_current_field.
Referenced by solver_linear_initialise(), and solver_linear_type_set().
|
private |
Returns the type of library to use for an iterative linear solver.
iterative_solver | A pointer the iterative linear solver to get the library type for. | |
[out] | solver_library_type | On exit, the type of library used for the iterative linear solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 11008 of file solver_routines.f90.
References solver_iterative_bicgstab, solver_iterative_chebyshev, solver_iterative_conjgrad_squared, solver_iterative_conjugate_gradient, solver_iterative_gmres, and solver_iterative_richardson.
Referenced by solver_linear_library_type_get().
|
private |
Sets/changes the type of library to use for an iterative linear solver.
iterative_solver | A pointer the iterative linear solver to get the library type for. | |
[in] | solver_library_type | The type of library for the iterative linear solver to set. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 11055 of file solver_routines.f90.
References solver_cmiss_library, solver_iterative_bicgstab, solver_iterative_chebyshev, solver_iterative_conjgrad_squared, solver_iterative_conjugate_gradient, solver_iterative_gmres, solver_iterative_richardson, and solver_petsc_library.
Referenced by solver_linear_library_type_set().
|
private |
Solves a linear iterative linear solver.
linear_iterative_solver | A pointer the linear iterative solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 11450 of file solver_routines.f90.
References solver_cmiss_library, solver_petsc_library, solver_solution_initialise_current_field, solver_solution_initialise_no_change, solver_solution_initialise_zero, solver_solution_update(), and solver_solver_output.
Referenced by solver_linear_solve().
subroutine, public solver_routines::solver_linear_iterative_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | ITERATIVE_SOLVER_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the type of iterative linear solver.
solver | A pointer the solver to set the iterative linear solver type | |
[in] | iterative_solver_type | The type of iterative linear solver to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 11666 of file solver_routines.f90.
References solver_iterative_bicgstab, solver_iterative_biconjugate_gradient, solver_iterative_chebyshev, solver_iterative_conjgrad_squared, solver_iterative_conjugate_gradient, solver_iterative_gmres, solver_iterative_richardson, solver_linear_iterative_solve_type, solver_linear_type, and solver_petsc_library.
|
private |
Returns the type of library to use for a linear solver.
linear_solver | A pointer the linear solver to get the library type for. | |
[out] | solver_library_type | On exit, the type of library used for the linear solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 11746 of file solver_routines.f90.
References solver_linear_direct_library_type_get(), solver_linear_direct_solve_type, solver_linear_iterative_library_type_get(), and solver_linear_iterative_solve_type.
Referenced by solver_library_type_get().
|
private |
Sets/changes the type of library to use for a linear solver.
linear_solver | A pointer the linear solver to get the library type for. | |
[in] | solver_library_type | The type of library for the linear solver to set. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 11797 of file solver_routines.f90.
References solver_linear_direct_library_type_set(), solver_linear_direct_solve_type, solver_linear_iterative_library_type_set(), and solver_linear_iterative_solve_type.
Referenced by solver_library_type_set().
|
private |
Returns the type of library to use for a linear solver matrices.
linear_solver | A pointer the linear solver to get the library type for. | |
[out] | matrices_library_type | On exit, the type of library used for the linear solver matrices |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 11848 of file solver_routines.f90.
References solver_linear_direct_solve_type, solver_linear_iterative_solve_type, solver_lineardirectmatriceslibrarytypeget(), and solver_lineariterativematriceslibrarytypeget().
Referenced by solver_matrices_library_type_get().
|
private |
Solve a linear solver.
linear_solver | A pointer to the linear solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 11899 of file solver_routines.f90.
References solver_linear_direct_solve(), solver_linear_direct_solve_type, solver_linear_iterative_solve(), solver_linear_iterative_solve_type, solver_matrices_static_assemble(), solver_solver_output, and solver_variables_field_update().
Referenced by solver_solve().
subroutine, public solver_routines::solver_linear_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | LINEAR_SOLVE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the type of linear solver.
solver | A pointer the solver to set the linear solver type | |
[in] | linear_solve_type | The type of linear solver to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 12007 of file solver_routines.f90.
References solver_linear_direct_finalise(), solver_linear_direct_initialise(), solver_linear_direct_solve_type, solver_linear_iterative_finalise(), solver_linear_iterative_initialise(), solver_linear_iterative_solve_type, and solver_linear_type.
|
private |
Returns the type of library to use for a direct linear solver matrices.
direct_solver | A pointer the direct linear solver to get the library type for. | |
[out] | matrices_library_type | On exit, the type of library used for the direct linear solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9806 of file solver_routines.f90.
Referenced by solver_linear_matrices_library_type_get().
subroutine, public solver_routines::solver_lineariterativeabsolutetoleranceset | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | ABSOLUTE_TOLERANCE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the maximum absolute tolerance for an iterative linear solver.
solver | A pointer the solver to set | |
[in] | absolute_tolerance | The absolute tolerance to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10514 of file solver_routines.f90.
References solver_linear_iterative_solve_type, and solver_linear_type.
subroutine, public solver_routines::solver_lineariterativedivergencetoleranceset | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | DIVERGENCE_TOLERANCE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the maximum divergence tolerance for an iterative linear solver.
solver | A pointer the solver to set | |
[in] | divergence_tolerance | The divergence tolerance to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10802 of file solver_routines.f90.
References solver_linear_iterative_solve_type, and solver_linear_type.
|
private |
Returns the type of library to use for an iterative linear solver matrices.
iterative_solver | A pointer the iterative linear solver to get the library type for. | |
[out] | matrices_library_type | On exit, the type of library used for the iterative linear solver matrices |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 11162 of file solver_routines.f90.
Referenced by solver_linear_matrices_library_type_get().
subroutine, public solver_routines::solver_lineariterativemaximumiterationsset | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | MAXIMUM_ITERATIONS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the maximum number of iterations for an iterative linear solver.
solver | A pointer the solver to set the maximum number of iterations | |
[in] | maximum_iterations | The maximum number of iterations |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 11192 of file solver_routines.f90.
References solver_linear_iterative_solve_type, and solver_linear_type.
subroutine, public solver_routines::solver_lineariterativepreconditionertypeset | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | ITERATIVE_PRECONDITIONER_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the type of preconditioner for an iterative linear solver.
solver | A pointer the solver to set the iterative linear solver type | |
[in] | iterative_preconditioner_type | The type of iterative preconditioner to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 11248 of file solver_routines.f90.
References solver_iterative_additive_schwarz_preconditioner, solver_iterative_block_jacobi_preconditioner, solver_iterative_incomplete_cholesky_preconditioner, solver_iterative_incomplete_lu_preconditioner, solver_iterative_jacobi_preconditioner, solver_iterative_no_preconditioner, solver_iterative_sor_preconditioner, solver_linear_iterative_solve_type, solver_linear_type, and solver_petsc_library.
subroutine, public solver_routines::solver_lineariterativerelativetoleranceset | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | RELATIVE_TOLERANCE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the relative tolerance for an iterative linear solver.
solver | A pointer the solver to set | |
[in] | relative_tolerance | The relative tolerance to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 11333 of file solver_routines.f90.
References solver_linear_iterative_solve_type, and solver_linear_type.
subroutine, public solver_routines::solver_lineariterativesolutioninittypeset | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | SOLUTION_INITIALISE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the solution initialise type for an iterative linear solver.
solver | A pointer the solver to set | |
[in] | solution_initialise_type | The solution initialise type to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 11389 of file solver_routines.f90.
References solver_linear_iterative_solve_type, solver_linear_type, solver_solution_initialise_current_field, solver_solution_initialise_no_change, and solver_solution_initialise_zero.
Referenced by solver_dynamic_linearity_type_set().
subroutine, public solver_routines::solver_linked_solver_add | ( | type(solver_type), pointer | SOLVER, |
type(solver_type), pointer | SOLVER_TO_LINK, | ||
integer(intg), intent(in) | SOLV_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Adds a linked solver to the solver. Also sets the solver type for the linked solver, als well as its linking solver.
solver | A pointer to the solver to add the linked solver to. | |
solver_to_link | A pointer the the solver to be linked. | |
[in] | solv_type | The solver type of the solver to be linked. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 22925 of file solver_routines.f90.
References solver_number_of_solver_types.
Referenced by finite_elasticity_routines::finite_elasticity_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), solver_dynamic_linearity_type_set(), solver_newton_initialise(), and solver_quasi_newton_initialise().
subroutine, public solver_routines::solver_linked_solver_remove | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | SOLV_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Adds a linked solver to the solver. Also sets the solver type for the linked solver, als well as its linking solver.
solver | A pointer to the solver to add the linked solver to. | |
[in] | solv_type | The solver type of the solver to be linked. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 23011 of file solver_routines.f90.
References solver_number_of_solver_types.
Referenced by solver_dynamic_linearity_type_set(), and solver_nonlinear_type_set().
subroutine, public solver_routines::solver_matrices_dynamic_assemble | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | SELECTION_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Assembles the solver matrices and rhs from the dynamic equations.
solver | A pointer to the solver | |
[in] | selection_type | The type of matrix selection |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 12079 of file solver_routines.f90.
References solver_dynamic_first_degree, solver_dynamic_first_order, solver_dynamic_second_degree, solver_dynamic_second_order, solver_dynamic_third_degree, solver_dynamic_type, solver_matrix_output, solver_nonlinear_type, and solver_timing_output.
Referenced by solver_dynamic_solve().
|
private |
Gets the type of library to use for the solver matrices.
solver | A pointer the solver to get the matrices library type of | |
[out] | matrices_library_type | On exit, the type of library used for the solver matrices |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 14781 of file solver_routines.f90.
References solver_cellml_evaluator_type, solver_dae_type, solver_dynamic_type, solver_eigenproblem_type, solver_eigenproblemmatriceslibrarytypeget(), solver_linear_matrices_library_type_get(), solver_linear_type, solver_nonlinear_matrices_library_type_get(), solver_nonlinear_type, solver_optimiser_matrices_library_type_get(), and solver_optimiser_type.
subroutine, public solver_routines::solver_matrices_static_assemble | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | SELECTION_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Assembles the solver matrices and rhs from the static equations.
solver | A pointer to the solver | |
[in] | selection_type | The type of matrix selection |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 13748 of file solver_routines.f90.
References solver_matrix_output, and solver_timing_output.
Referenced by solver_linear_solve().
subroutine, public solver_routines::solver_mumpssetcntl | ( | type(solver_type), pointer | solver, |
integer(intg), intent(in) | icntl, | ||
real(dp), intent(in) | val, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Sets MUMPS CNTL(icntl)=val through PETSc Mat API (see MUMPS user guide for more info). Must be called after the boundary conditions have been set up.
[in] | icntl | The MUMPS ICNTL integer control parameter |
[in] | val | The MUMPS CNTL real value to set: CNTL(icntl)=val |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9956 of file solver_routines.f90.
References solver_direct_cholesky, solver_direct_lu, solver_direct_svd, and solver_mumps_library.
subroutine, public solver_routines::solver_mumpsseticntl | ( | type(solver_type), pointer | solver, |
integer(intg), intent(in) | icntl, | ||
integer(intg), intent(in) | ivalue, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Sets MUMPS ICNTL(icntl)=ivalue through PETSc Mat API (see MUMPS user guide for more info). Must be called after the boundary conditions have been set up.
[in] | icntl | The MUMPS ICNTL integer control parameter |
[in] | ivalue | The MUMPS ICNTL integer value to set: ICNTL(icntl)=ivalue |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9837 of file solver_routines.f90.
References solver_direct_cholesky, solver_direct_lu, solver_direct_svd, solver_linear_direct_solve_type, solver_linear_type, and solver_mumps_library.
subroutine, public solver_routines::solver_newton_absolute_tolerance_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | ABSOLUTE_TOLERANCE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the maximum absolute tolerance for a nonlinear Newton solver.
solver | A pointer the solver to set the absolute tolerance for | |
[in] | absolute_tolerance | The absolute tolerance to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17593 of file solver_routines.f90.
References solver_nonlinear_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_newton_cellml_evaluator_create | ( | type(solver_type), pointer | SOLVER, |
type(solver_type), pointer | CELLML_SOLVER, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Create a CellML evaluator solver for the Newton solver.
solver | A pointer to the solver to create the CellML evaluator solver for | |
cellml_solver | On return, a pointer to the created CellML evaluator solver | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8689 of file solver_routines.f90.
References solver_cellml_evaluator_initialise(), and solver_initialise_ptr().
Referenced by finite_elasticity_routines::finite_elasticity_problem_setup(), and navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup().
subroutine, public solver_routines::solver_newton_cellml_solver_get | ( | type(solver_type), pointer | SOLVER, |
type(solver_type), pointer | CELLML_SOLVER, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns the CellML solver associated with a Newton solver.
solver | A pointer the Newton solver to get the linear solver for | |
cellml_solver | On exit, a pointer the linear solver linked to the Newton solver. Must not be associated on entry | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 18100 of file solver_routines.f90.
References solver_dynamic_type, solver_nonlinear_newton, and solver_nonlinear_type.
Referenced by finite_elasticity_routines::finite_elasticity_problem_setup(), and navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup().
|
private |
Finishes the process of creating a Newton solver.
newton_solver | A pointer to the Newton solver to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17716 of file solver_routines.f90.
References solver_newton_linesearch, solver_newton_linesearch_create_finish(), solver_newton_trustregion, and solver_newton_trustregion_create_finish().
Referenced by solver_nonlinear_create_finish().
|
private |
Finalise a Newton solver and deallocate all memory.
newton_solver | A pointer the Newton solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17754 of file solver_routines.f90.
References solver_finalise(), solver_newton_linesearch_finalise(), and solver_newton_trustregion_finalise().
Referenced by solver_newton_initialise(), solver_nonlinear_finalise(), and solver_nonlinear_type_set().
|
private |
Initialise a Newton solver for a nonlinear solver.
nonlinear_solver | A pointer the solver to initialise the Newton solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17783 of file solver_routines.f90.
References solver_initialise_ptr(), solver_linear_initialise(), solver_linear_type, solver_linked_solver_add(), solver_newton_convergence_petsc_default, solver_newton_finalise(), solver_newton_jacobian_fd_calculated, solver_newton_linesearch, solver_newton_linesearch_initialise(), and solver_solution_initialise_current_field.
Referenced by solver_nonlinear_initialise(), and solver_nonlinear_type_set().
subroutine, public solver_routines::solver_newton_jacobian_calculation_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | JACOBIAN_CALCULATION_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the type of Jacobian calculation type for a Newton solver.
solver | A pointer the solver to set the Jacobian calculation type | |
[in] | jacobian_calculation_type | The type of Jacobian calculation type to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17855 of file solver_routines.f90.
References solver_newton_jacobian_equations_calculated, solver_newton_jacobian_fd_calculated, solver_newton_jacobian_not_calculated, solver_nonlinear_newton, and solver_nonlinear_type.
|
private |
Returns the type of library to use for a Newton solver.
newton_solver | A pointer the Newton solver to get the library type for. | |
[out] | solver_library_type | On exit, the type of library used for the Newton solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17922 of file solver_routines.f90.
References solver_newton_linesearch, and solver_newton_trustregion.
Referenced by solver_nonlinear_library_type_get().
|
private |
Sets/changes the type of library to use for a Newton solver.
newton_solver | A pointer the Newton solver to get the library type for. | |
[in] | solver_library_type | The type of library for the Newton solver to set. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17973 of file solver_routines.f90.
References solver_cmiss_library, solver_newton_linesearch, solver_newton_trustregion, and solver_petsc_library.
Referenced by solver_nonlinear_library_type_set().
subroutine, public solver_routines::solver_newton_linear_solver_get | ( | type(solver_type), pointer | SOLVER, |
type(solver_type), pointer | LINEAR_SOLVER, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns the linear solver associated with a Newton solver.
solver | A pointer the Newton solver to get the linear solver for | |
linear_solver | On exit, a pointer the linear solver linked to the Newton solver. Must not be associated on entry | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 18044 of file solver_routines.f90.
References solver_nonlinear_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_newton_linesearch_alpha_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | LINESEARCH_ALPHA, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the line search alpha for a Newton linesearch solver.
solver | A pointer the solver to set the line search alpha for | |
[in] | linesearch_alpha | The line search alpha to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 18239 of file solver_routines.f90.
References solver_newton_linesearch, solver_nonlinear_newton, and solver_nonlinear_type.
|
private |
Finishes the process of creating nonlinear Newton line search solver.
linesearch_solver | A pointer the nonlinear Newton line search solver to finish the creation of | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 18309 of file solver_routines.f90.
References solver_cmiss_library, solver_full_matrices, solver_linear_create_finish(), solver_linear_direct_solve_type, solver_linear_iterative_solve_type, solver_newton_convergence_differentiated_ratio, solver_newton_convergence_energy_norm, solver_newton_convergence_petsc_default, solver_newton_jacobian_equations_calculated, solver_newton_jacobian_fd_calculated, solver_newton_jacobian_not_calculated, solver_newton_linesearch_cubic, solver_newton_linesearch_linear, solver_newton_linesearch_nonorms, solver_newton_linesearch_quadratic, solver_petsc_library, solver_progress_output, and solver_sparse_matrices.
Referenced by solver_newton_create_finish().
|
private |
Finalise a nonlinear Newton line search solver and deallocate all memory.
linesearch_solver | A pointer the nonlinear Newton line search solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 18722 of file solver_routines.f90.
Referenced by solver_newton_finalise(), solver_newton_linesearch_initialise(), and solver_newton_type_set().
|
private |
Initialise a nonlinear Newton line search solver for a Newton solver.
newton_solver | A pointer the nonlinear Newton solver to initialise the Newton line search solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 18753 of file solver_routines.f90.
References solver_newton_linesearch_cubic, solver_newton_linesearch_finalise(), and solver_petsc_library.
Referenced by solver_newton_initialise(), and solver_newton_type_set().
subroutine, public solver_routines::solver_newton_linesearch_maxstep_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | LINESEARCH_MAXSTEP, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the line search maximum step for a nonlinear Newton linesearch solver.
solver | A pointer the solver to set the line search maximum step for | |
[in] | linesearch_maxstep | The line search maximum step to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 18803 of file solver_routines.f90.
References solver_newton_linesearch, solver_nonlinear_newton, and solver_nonlinear_type.
|
private |
linesearch_solver | A pointer to the nonlinear Newton line search solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 18874 of file solver_routines.f90.
References solver_cmiss_library, solver_petsc_library, solver_solution_initialise_current_field, solver_solution_initialise_no_change, solver_solution_initialise_zero, solver_solution_update(), and solver_solver_output.
Referenced by solver_newton_solve().
subroutine, public solver_routines::solver_newton_linesearch_steptol_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | LINESEARCH_STEPTOL, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the line search step tolerance for a nonlinear Newton line search solver.
solver | A pointer the solver to set the line search step tolerance for | |
[in] | linesearch_steptol | The line search step tolerance to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19032 of file solver_routines.f90.
References solver_newton_linesearch, solver_nonlinear_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_newton_linesearch_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | LINESEARCH_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the line search type for a nonlinear Newton linesearch solver.
solver | A pointer the solver to set the line search type for | |
[in] | linesearch_type | The line search type to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19103 of file solver_routines.f90.
References solver_newton_linesearch, solver_newton_linesearch_cubic, solver_newton_linesearch_linear, solver_newton_linesearch_nonorms, solver_newton_linesearch_quadratic, solver_nonlinear_newton, and solver_nonlinear_type.
|
private |
Returns the type of library to use for a Newton solver matrices.
newton_solver | A pointer the Newton solver to get the library type for. | |
[out] | matrices_library_type | On exit, the type of library used for the Newton solver matrices |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19180 of file solver_routines.f90.
References solver_newton_linesearch, and solver_newton_trustregion.
Referenced by solver_nonlinear_matrices_library_type_get().
subroutine, public solver_routines::solver_newton_maximum_iterations_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | MAXIMUM_ITERATIONS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the maximum number of iterations for a nonlinear Newton solver.
solver | A pointer the solver to set the maximum iterations for | |
[in] | maximum_iterations | The maximum iterations to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19292 of file solver_routines.f90.
References solver_nonlinear_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_newton_relative_tolerance_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | RELATIVE_TOLERANCE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the relative tolerance for a nonlinear Newton solver.
solver | A pointer the solver to set the relative tolerance for | |
[in] | relative_tolerance | The relative tolerance to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19352 of file solver_routines.f90.
References solver_nonlinear_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_newton_solution_init_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | SOLUTION_INITIALISE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the solution initialisation for a nonlinear Newton solver.
solver | A pointer the solver to set the solution tolerance for | |
[in] | solution_initialise_type | The solution initialise type to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19412 of file solver_routines.f90.
References solver_nonlinear_newton, solver_nonlinear_type, solver_solution_initialise_current_field, solver_solution_initialise_no_change, and solver_solution_initialise_zero.
Referenced by solver_dynamic_linearity_type_set().
subroutine, public solver_routines::solver_newton_solution_tolerance_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | SOLUTION_TOLERANCE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the solution tolerance for a nonlinear Newton solver.
solver | A pointer the solver to set the solution tolerance for | |
[in] | solution_tolerance | The solution tolerance to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19477 of file solver_routines.f90.
References solver_nonlinear_newton, and solver_nonlinear_type.
|
private |
newton_solver | A pointer to the nonlinear Newton solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19537 of file solver_routines.f90.
References solver_newton_linesearch, solver_newton_linesearch_solve(), solver_newton_trustregion, and solver_newton_trustregion_solve().
Referenced by solver_nonlinear_solve().
|
private |
Finishes the process of creating nonlinear Newton trust region solver.
trustregion_solver | A pointer the nonlinear Newton trust region solver to finish the creation of | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19575 of file solver_routines.f90.
References solver_cmiss_library, and solver_petsc_library.
Referenced by solver_newton_create_finish().
subroutine, public solver_routines::solver_newton_trustregion_delta0_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | TRUSTREGION_DELTA0, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the trust region delta0 for a nonlinear Newton trust region solver solver.
solver | A pointer the solver to set the trust region delta0 for | |
[in] | trustregion_delta0 | The trust region delta0 to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19753 of file solver_routines.f90.
References solver_newton_trustregion, solver_nonlinear_newton, and solver_nonlinear_type.
|
private |
Finalise a nonlinear Newton trust region solver and deallocate all memory.
trustregion_solver | A pointer the non linear trust region solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19824 of file solver_routines.f90.
Referenced by solver_newton_finalise(), solver_newton_trustregion_initialise(), and solver_newton_type_set().
|
private |
Initialise a Newton trust region solver for a nonlinear solver.
newton_solver | A pointer the Newton solver to initialise the trust region solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19851 of file solver_routines.f90.
References solver_newton_trustregion_finalise(), and solver_petsc_library.
Referenced by solver_newton_type_set().
|
private |
trustregion_solver | A pointer to the nonlinear Newton trust region solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19893 of file solver_routines.f90.
References solver_cmiss_library, and solver_petsc_library.
Referenced by solver_newton_solve().
subroutine, public solver_routines::solver_newton_trustregion_tolerance_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | TRUSTREGION_TOLERANCE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the trust region tolerance for a nonlinear Newton trust region solver.
solver | A pointer the solver to set the trust region tolerance for | |
[in] | trustregion_tolerance | The trust region tolerance to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19961 of file solver_routines.f90.
References solver_newton_trustregion, solver_nonlinear_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_newton_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | NEWTON_SOLVE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the type of nonlinear Newton solver.
solver | A pointer the solver to set the nonlinear Newton solver type | |
[in] | newton_solve_type | The type of nonlinear solver to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20032 of file solver_routines.f90.
References solver_newton_linesearch, solver_newton_linesearch_finalise(), solver_newton_linesearch_initialise(), solver_newton_trustregion, solver_newton_trustregion_finalise(), solver_newton_trustregion_initialise(), solver_nonlinear_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_newtonconvergencetesttypeset | ( | type(solver_type), pointer | solver, |
integer(intg), intent(in) | convergenceTestType, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Sets/changes the convergence test for a Newton nonlinear solver.
solver | A pointer the solver to set the convergence test for | |
[in] | convergencetesttype | The convergence test type to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 18174 of file solver_routines.f90.
References solver_newton_convergence_differentiated_ratio, solver_newton_convergence_energy_norm, solver_newton_convergence_petsc_default, solver_nonlinear_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_newtonlinesearchmonitoroutputset | ( | type(solver_type), pointer | solver, |
logical, intent(in) | linesearchMonitorOutputFlag, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Enables/disables output monitoring for a nonlinear Newton line search solver.
solver | A pointer the solver to set the absolute tolerance for | |
[in] | linesearchmonitoroutputflag | Flag to determine whether to enable/disable linsearch monitor output. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17653 of file solver_routines.f90.
References solver_newton_linesearch, solver_nonlinear_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_newtonmaximumfunctionevaluationsset | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | MAXIMUM_FUNCTION_EVALUATIONS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the maximum number of function evaluations for a nonlinear Newton solver.
solver | A pointer the solver to set the maximum function evaluations for | |
[in] | maximum_function_evaluations | The maximum function evaluations to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 19231 of file solver_routines.f90.
References solver_nonlinear_newton, and solver_nonlinear_type.
|
private |
Finishes the process of creating a nonlinear solver.
nonlinear_solver | A pointer to the nonlinear solver to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20122 of file solver_routines.f90.
References solver_newton_create_finish(), solver_nonlinear_bfgs_inverse, solver_nonlinear_newton, solver_nonlinear_quasi_newton, solver_nonlinear_sqp, and solver_quasi_newton_create_finish().
Referenced by solver_dynamic_create_finish(), and solverequations_boundaryconditionscreatefinish().
subroutine, public solver_routines::solver_nonlinear_divergence_exit | ( | type(solver_type), intent(in) | SOLVER, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Instead of warning on nonlinear divergence, exit with error.
Definition at line 20164 of file solver_routines.f90.
References solver_newton_linesearch, solver_newton_trustregion, solver_nonlinear_bfgs_inverse, solver_nonlinear_newton, solver_nonlinear_quasi_newton, and solver_nonlinear_sqp.
Referenced by finite_elasticity_routines::finite_elasticity_post_solve().
|
private |
Finalise a nonlinear solver for a solver.
nonlinear_solver | A pointer the nonlinear solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20272 of file solver_routines.f90.
References solver_newton_finalise(), solver_nonlinear_bfgs_inverse, solver_nonlinear_newton, solver_nonlinear_quasi_newton, solver_nonlinear_sqp, and solver_quasi_newton_finalise().
Referenced by solver_finalise(), solver_nonlinear_initialise(), and solver_type_set().
|
private |
Initialise a nonlinear solver for a solver.
solver | A pointer the solver to initialise the nonlinear solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20313 of file solver_routines.f90.
References solver_newton_initialise(), solver_nonlinear_finalise(), and solver_nonlinear_newton.
Referenced by solver_dynamic_linearity_type_set(), and solver_type_set().
|
private |
Returns the type of library to use for a nonlinear solver.
nonlinear_solver | A pointer the nonlinear solver to get the library type for. | |
[out] | solver_library_type | On exit, the type of library used for the nonlinear solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20355 of file solver_routines.f90.
References solver_newton_library_type_get(), solver_nonlinear_bfgs_inverse, solver_nonlinear_newton, solver_nonlinear_quasi_newton, solver_nonlinear_sqp, and solver_quasi_newton_library_type_get().
Referenced by solver_library_type_get().
|
private |
Sets/changes the type of library to use for a nonlinear solver.
nonlinear_solver | A pointer the nonlinear solver to get the library type for. | |
[in] | solver_library_type | The type of library for the nonlinear solver to set. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20411 of file solver_routines.f90.
References solver_newton_library_type_set(), solver_nonlinear_bfgs_inverse, solver_nonlinear_newton, solver_nonlinear_quasi_newton, solver_nonlinear_sqp, and solver_quasi_newton_library_type_set().
Referenced by solver_library_type_set().
|
private |
Returns the type of library to use for a nonlinear solver matrices.
nonlinear_solver | A pointer the nonlinear solver to get the library type for. | |
[out] | matrices_library_type | On exit, the type of library used for the nonlinear solver matrices |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20467 of file solver_routines.f90.
References solver_newton_matrices_library_type_get(), solver_nonlinear_bfgs_inverse, solver_nonlinear_newton, solver_nonlinear_quasi_newton, solver_nonlinear_sqp, and solver_quasinewtonmatriceslibrarytypeget().
Referenced by solver_matrices_library_type_get().
subroutine, public solver_routines::solver_nonlinear_monitor | ( | type(nonlinear_solver_type), pointer | nonlinearSolver, |
integer(intg), intent(in) | its, | ||
real(dp), intent(in) | norm, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Monitors the nonlinear solve.
nonlinearsolver | A pointer to the nonlinear solver to monitor | |
[in] | its | The number of iterations |
[in] | norm | The residual norm |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20523 of file solver_routines.f90.
References solver_newton_convergence_differentiated_ratio, solver_newton_convergence_energy_norm, solver_newton_convergence_petsc_default, solver_newton_linesearch, solver_newton_trustregion, solver_nonlinear_bfgs_inverse, solver_nonlinear_newton, solver_nonlinear_quasi_newton, and solver_nonlinear_sqp.
Referenced by solver_nonlinear_monitor_petsc().
|
private |
nonlinear_solver | A pointer to the nonlinear solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20645 of file solver_routines.f90.
References solver_newton_solve(), solver_nonlinear_bfgs_inverse, solver_nonlinear_newton, solver_nonlinear_quasi_newton, solver_nonlinear_sqp, solver_quasi_newton_solve(), and solver_solver_output.
Referenced by solver_solve().
subroutine, public solver_routines::solver_nonlinear_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | NONLINEAR_SOLVE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the type of nonlinear solver.
solver | A pointer the solver to set the nonlinear solver type | |
[in] | nonlinear_solve_type | The type of nonlinear solver to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20728 of file solver_routines.f90.
References solver_linear_type, solver_linked_solver_remove(), solver_newton_finalise(), solver_newton_initialise(), solver_nonlinear_bfgs_inverse, solver_nonlinear_newton, solver_nonlinear_quasi_newton, solver_nonlinear_sqp, solver_nonlinear_type, solver_quasi_newton_finalise(), and solver_quasi_newton_initialise().
|
private |
Finishes the process of creating an optimiser solver.
optimiser_solver | A pointer to the optimiser solver to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20818 of file solver_routines.f90.
|
private |
Finalise a optimiser solver.
optimiser_solver | A pointer the optimiser solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20846 of file solver_routines.f90.
Referenced by solver_finalise(), solver_optimiser_initialise(), and solver_type_set().
|
private |
Initialise an optimiser solver for a solver.
solver | A pointer the solver to initialise the optimiser solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20872 of file solver_routines.f90.
References solver_optimiser_finalise(), and solver_tao_library.
Referenced by solver_type_set().
|
private |
Returns the type of library to use for an optimiser solver.
optimiser_solver | A pointer the optimiser solver to get the library type for. | |
[out] | solver_library_type | On exit, the type of library used for the optimiser solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20911 of file solver_routines.f90.
Referenced by solver_library_type_get().
|
private |
Sets/changes the type of library to use for an optimisation solver.
optimiser_solver | A pointer the optimiser solver to get the library type for. | |
[in] | solver_library_type | The type of library for the optimiser solver to set. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20940 of file solver_routines.f90.
References solver_cmiss_library, and solver_tao_library.
Referenced by solver_library_type_set().
|
private |
Returns the type of library to use for an optimiser solver matrices.
optimiser_solver | A pointer the optimiser solver to get the library type for. | |
[out] | matrices_library_type | On exit, the type of library used for the optimiser solver matrices |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 20980 of file solver_routines.f90.
Referenced by solver_matrices_library_type_get().
|
private |
Solve an optimiser solver.
optimiser_solver | A pointer the optimiser solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 21009 of file solver_routines.f90.
Referenced by solver_solve().
subroutine, public solver_routines::solver_output_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | OUTPUT_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the output type for a solver.
solver | A pointer the solver to set the output type for | |
[in] | output_type | The type of solver output to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 21037 of file solver_routines.f90.
References solver_matrix_output, solver_no_output, solver_progress_output, solver_solver_output, and solver_timing_output.
subroutine, public solver_routines::solver_quasi_newton_absolute_tolerance_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | ABSOLUTE_TOLERANCE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the maximum absolute tolerance for a nonlinear Quasi-Newton solver.
solver | A pointer the solver to set the absolute tolerance for | |
[in] | absolute_tolerance | The absolute tolerance to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 14853 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_quasi_newton_cellml_solver_get | ( | type(solver_type), pointer | SOLVER, |
type(solver_type), pointer | CELLML_SOLVER, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns the CellML solver associated with a Quasi-Newton solver.
solver | A pointer the Quasi-Newton solver to get the linear solver for | |
cellml_solver | On exit, a pointer the linear solver linked to the Quasi-Newton solver. Must not be associated on entry | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 15369 of file solver_routines.f90.
References solver_dynamic_type, solver_nonlinear_quasi_newton, and solver_nonlinear_type.
|
private |
Finishes the process of creating a Quasi-Newton solver.
quasi_newton_solver | A pointer to the Quasi-Newton solver to finish the creation of. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 14977 of file solver_routines.f90.
References solver_quasi_newton_linesearch, solver_quasi_newton_trustregion, solver_quasinewtonlinesearchcreatefinish(), and solver_quasinewtontrustregioncreatefinish().
Referenced by solver_nonlinear_create_finish().
|
private |
Finalise a Quasi-Newton solver and deallocate all memory.
quasi_newton_solver | A pointer the Quasi-Newton solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 15017 of file solver_routines.f90.
References solver_finalise(), solver_quasi_newton_trustregion_finalise(), and solver_quasinewtonlinesearchfinalise().
Referenced by solver_nonlinear_finalise(), solver_nonlinear_type_set(), and solver_quasi_newton_initialise().
|
private |
Initialise a Quasi-Newton solver for a nonlinear solver.
nonlinear_solver | A pointer the solver to initialise the Quasi-Newton solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 15046 of file solver_routines.f90.
References solver_initialise_ptr(), solver_linear_initialise(), solver_linear_type, solver_linked_solver_add(), solver_newton_convergence_petsc_default, solver_newton_jacobian_fd_calculated, solver_quasi_newton_finalise(), solver_quasi_newton_goodbroyden, solver_quasi_newton_linesearch, solver_quasi_newton_linesearch_initialise(), solver_quasi_newton_restart_periodic, solver_quasi_newton_scale_jacobian, and solver_solution_initialise_current_field.
Referenced by solver_nonlinear_type_set().
|
private |
Returns the type of library to use for a Quasi-Newton solver.
quasi_newton_solver | A pointer the Quasi-Newton solver to get the library type for. | |
[out] | solver_library_type | On exit, the type of library used for the Quasi-Newton solver |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 15191 of file solver_routines.f90.
References solver_quasi_newton_linesearch, and solver_quasi_newton_trustregion.
Referenced by solver_nonlinear_library_type_get().
|
private |
Sets/changes the type of library to use for a Quasi-Newton solver.
quasi_newton_solver | A pointer the Quasi-Newton solver to get the library type for. | |
[in] | solver_library_type | The type of library for the Quasi-Newton solver to set. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 15242 of file solver_routines.f90.
References solver_cmiss_library, solver_petsc_library, solver_quasi_newton_linesearch, and solver_quasi_newton_trustregion.
Referenced by solver_nonlinear_library_type_set().
subroutine, public solver_routines::solver_quasi_newton_linear_solver_get | ( | type(solver_type), pointer | SOLVER, |
type(solver_type), pointer | LINEAR_SOLVER, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns the linear solver associated with a Quasi-Newton solver.
solver | A pointer the Quasi-Newton solver to get the linear solver for | |
linear_solver | On exit, a pointer the linear solver linked to the Quasi-Newton solver. Must not be associated on entry | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 15313 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, and solver_nonlinear_type.
|
private |
Initialise a nonlinear Quasi-Newton line search solver for a Quasi-Newton solver.
quasi_newton_solver | A pointer the nonlinear Quasi-Newton solver to initialise the Quasi-Newton line search solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 15976 of file solver_routines.f90.
References solver_petsc_library, solver_quasi_newton_linesearch_cp, and solver_quasinewtonlinesearchfinalise().
Referenced by solver_quasi_newton_initialise(), and solver_quasi_newton_solve_type_set().
subroutine, public solver_routines::solver_quasi_newton_linesearch_maxstep_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | LINESEARCH_MAXSTEP, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the line search maximum step for a nonlinear Quasi-Newton linesearch solver.
solver | A pointer the solver to set the line search maximum step for | |
[in] | linesearch_maxstep | The line search maximum step to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 16025 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, solver_nonlinear_type, and solver_quasi_newton_linesearch.
|
private |
linesearch_solver | A pointer to the nonlinear Quasi-Newton line search solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 16096 of file solver_routines.f90.
References solver_cmiss_library, solver_petsc_library, solver_solution_initialise_current_field, solver_solution_initialise_no_change, solver_solution_initialise_zero, solver_solution_update(), and solver_solver_output.
Referenced by solver_quasi_newton_solve().
subroutine, public solver_routines::solver_quasi_newton_linesearch_steptol_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | LINESEARCH_STEPTOL, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the line search step tolerance for a nonlinear Quasi-Newton line search solver.
solver | A pointer the solver to set the line search step tolerance for | |
[in] | linesearch_steptol | The line search step tolerance to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 16249 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, solver_nonlinear_type, and solver_quasi_newton_linesearch.
subroutine, public solver_routines::solver_quasi_newton_linesearch_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | LINESEARCH_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the line search type for a nonlinear Quasi-Newton linesearch solver.
solver | A pointer the solver to set the line search type for | |
[in] | linesearch_type | The line search type to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 16320 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, solver_nonlinear_type, solver_quasi_newton_linesearch, solver_quasi_newton_linesearch_basic, solver_quasi_newton_linesearch_cp, and solver_quasi_newton_linesearch_l2.
subroutine, public solver_routines::solver_quasi_newton_maximum_iterations_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | MAXIMUM_ITERATIONS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the maximum number of iterations for a nonlinear Quasi-Newton solver.
solver | A pointer the solver to set the maximum iterations for | |
[in] | maximum_iterations | The maximum iterations to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 16508 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_quasi_newton_relative_tolerance_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | RELATIVE_TOLERANCE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the relative tolerance for a nonlinear Quasi-Newton solver.
solver | A pointer the solver to set the relative tolerance for | |
[in] | relative_tolerance | The relative tolerance to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 16568 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_quasi_newton_restart_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | RESTART, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the restart of nonlinear Quasi-Newton solver.
solver | A pointer the solver to set the nonlinear Quasi-Newton solver type | |
[in] | restart | Sets the number of stored updates and the restart period for periodic restart type |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17246 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_quasi_newton_restart_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | QUASI_NEWTON_RESTART_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the restart type of nonlinear Quasi-Newton solver.
solver | A pointer the solver to set the nonlinear Quasi-Newton solver type | |
[in] | quasi_newton_restart_type | The restart type of nonlinear Quasi-Newton to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17299 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, solver_nonlinear_type, solver_quasi_newton_restart_none, solver_quasi_newton_restart_periodic, and solver_quasi_newton_restart_powell.
subroutine, public solver_routines::solver_quasi_newton_scale_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | QUASI_NEWTON_SCALE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the scale type of nonlinear Quasi-Newton solver.
solver | A pointer the solver to set the nonlinear Quasi-Newton solver type | |
[in] | quasi_newton_scale_type | The scale type of nonlinear Quasi-Newton to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17368 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, solver_nonlinear_type, solver_quasi_newton_scale_jacobian, solver_quasi_newton_scale_linesearch, solver_quasi_newton_scale_none, and solver_quasi_newton_scale_shanno.
subroutine, public solver_routines::solver_quasi_newton_solution_init_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | SOLUTION_INITIALISE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the solution initialisation for a nonlinear Quasi-Newton solver.
solver | A pointer the solver to set the solution tolerance for | |
[in] | solution_initialise_type | The solution initialise type to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 16628 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, solver_nonlinear_type, solver_solution_initialise_current_field, solver_solution_initialise_no_change, and solver_solution_initialise_zero.
subroutine, public solver_routines::solver_quasi_newton_solution_tolerance_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | SOLUTION_TOLERANCE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the solution tolerance for a nonlinear Quasi-Newton solver.
solver | A pointer the solver to set the solution tolerance for | |
[in] | solution_tolerance | The solution tolerance to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 16693 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, and solver_nonlinear_type.
|
private |
quasi_newton_solver | A pointer to the nonlinear Quasi-Newton solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 16753 of file solver_routines.f90.
References solver_quasi_newton_linesearch, solver_quasi_newton_linesearch_solve(), solver_quasi_newton_trustregion, and solver_quasi_newton_trustregion_solve().
Referenced by solver_nonlinear_solve().
subroutine, public solver_routines::solver_quasi_newton_solve_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | QUASI_NEWTON_SOLVE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the solve type of nonlinear Quasi-Newton solver.
solver | A pointer the solver to set the nonlinear Quasi-Newton solver type | |
[in] | quasi_newton_solve_type | The type of nonlinear solver to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17507 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, solver_nonlinear_type, solver_quasi_newton_linesearch, solver_quasi_newton_linesearch_initialise(), solver_quasi_newton_trustregion, solver_quasi_newton_trustregion_finalise(), solver_quasi_newton_trustregion_initialise(), and solver_quasinewtonlinesearchfinalise().
subroutine, public solver_routines::solver_quasi_newton_trustregion_delta0_set | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | TRUSTREGION_DELTA0, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the trust region delta0 for a nonlinear Quasi-Newton trust region solver solver.
solver | A pointer the solver to set the trust region delta0 for | |
[in] | trustregion_delta0 | The trust region delta0 to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 16967 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, solver_nonlinear_type, and solver_quasi_newton_trustregion.
|
private |
Finalise a nonlinear Quasi-Newton trust region solver and deallocate all memory.
trustregion_solver | A pointer the non linear trust region solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17038 of file solver_routines.f90.
Referenced by solver_quasi_newton_finalise(), solver_quasi_newton_solve_type_set(), and solver_quasi_newton_trustregion_initialise().
|
private |
Initialise a Quaso-Newton trust region solver for a nonlinear solver.
quasi_newton_solver | A pointer the Quasi-Newton solver to initialise the trust region solver for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17065 of file solver_routines.f90.
References solver_petsc_library, and solver_quasi_newton_trustregion_finalise().
Referenced by solver_quasi_newton_solve_type_set().
|
private |
trustregion_solver | A pointer to the nonlinear Quasi-Newton trust region solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17107 of file solver_routines.f90.
References solver_cmiss_library, and solver_petsc_library.
Referenced by solver_quasi_newton_solve().
subroutine, public solver_routines::solver_quasi_newton_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | QUASI_NEWTON_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the type of nonlinear Quasi-Newton solver.
solver | A pointer the solver to set the nonlinear Quasi-Newton solver type | |
[in] | quasi_newton_type | The type of nonlinear Quasi-Newton to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17439 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, solver_nonlinear_type, solver_quasi_newton_badbroyden, solver_quasi_newton_goodbroyden, and solver_quasi_newton_lbfgs.
subroutine, public solver_routines::solver_quasinewtonconvergencetesttypeset | ( | type(solver_type), pointer | solver, |
integer(intg), intent(in) | convergenceTestType, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Sets/changes the convergence test for a Quasi-Newton nonlinear solver.
solver | A pointer the solver to set the convergence test for | |
[in] | convergencetesttype | The convergence test type to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 15443 of file solver_routines.f90.
References solver_newton_convergence_differentiated_ratio, solver_newton_convergence_energy_norm, solver_newton_convergence_petsc_default, solver_nonlinear_quasi_newton, and solver_nonlinear_type.
subroutine, public solver_routines::solver_quasinewtonjacobiancalculationtypeset | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | JACOBIAN_CALCULATION_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the type of Jacobian calculation type for a Quasi-Newton solver.
solver | A pointer the solver to set the Jacobian calculation type | |
[in] | jacobian_calculation_type | The type of Jacobian calculation type to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 15123 of file solver_routines.f90.
References solver_newton_jacobian_equations_calculated, solver_newton_jacobian_fd_calculated, solver_newton_jacobian_not_calculated, solver_nonlinear_quasi_newton, and solver_nonlinear_type.
|
private |
Finishes the process of creating nonlinear Quasi-Newton line search solver.
linesearch_solver | A pointer the nonlinear Quasi-Newton line search solver to finish the creation of | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 15508 of file solver_routines.f90.
References solver_cmiss_library, solver_full_matrices, solver_linear_create_finish(), solver_linear_direct_solve_type, solver_linear_iterative_solve_type, solver_newton_convergence_differentiated_ratio, solver_newton_convergence_energy_norm, solver_newton_convergence_petsc_default, solver_newton_jacobian_equations_calculated, solver_newton_jacobian_fd_calculated, solver_newton_jacobian_not_calculated, solver_petsc_library, solver_progress_output, solver_quasi_newton_badbroyden, solver_quasi_newton_goodbroyden, solver_quasi_newton_lbfgs, solver_quasi_newton_linesearch_basic, solver_quasi_newton_linesearch_cp, solver_quasi_newton_linesearch_l2, solver_quasi_newton_restart_none, solver_quasi_newton_restart_periodic, solver_quasi_newton_restart_powell, solver_quasi_newton_scale_jacobian, solver_quasi_newton_scale_linesearch, solver_quasi_newton_scale_none, solver_quasi_newton_scale_shanno, and solver_sparse_matrices.
Referenced by solver_quasi_newton_create_finish().
|
private |
Finalise a nonlinear Quasi-Newton line search solver and deallocate all memory.
linesearchsolver | A pointer the nonlinear Quasi-Newton line search solver to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 15945 of file solver_routines.f90.
Referenced by solver_quasi_newton_finalise(), solver_quasi_newton_linesearch_initialise(), and solver_quasi_newton_solve_type_set().
subroutine, public solver_routines::solver_quasinewtonlinesearchmonitoroutputset | ( | type(solver_type), pointer | solver, |
logical, intent(in) | linesearchMonitorOutputFlag, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Enables/disables output monitoring for a nonlinear Quasi-Newton line search solver.
solver | A pointer the solver to set the absolute tolerance for | |
[in] | linesearchmonitoroutputflag | Flag to determine whether to enable/disable linsearch monitor output. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 14913 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, solver_nonlinear_type, and solver_quasi_newton_linesearch.
|
private |
Returns the type of library to use for a Quasi-Newton solver matrices.
quasi_newton_solver | A pointer the Quasi-Newton solver to get the library type for. | |
[out] | matrices_library_type | On exit, the type of library used for the Quasi-Newton solver matrices |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 16395 of file solver_routines.f90.
References solver_quasi_newton_linesearch, and solver_quasi_newton_trustregion.
Referenced by solver_nonlinear_matrices_library_type_get().
subroutine, public solver_routines::solver_quasinewtonmaximumfunctionevaluationsset | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | MAXIMUM_FUNCTION_EVALUATIONS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the maximum number of function evaluations for a nonlinear Quasi-Newton solver.
solver | A pointer the solver to set the maximum function evaluations for | |
[in] | maximum_function_evaluations | The maximum function evaluations to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 16446 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, and solver_nonlinear_type.
|
private |
Finishes the process of creating nonlinear Quasi-Newton trust region solver.
trustregion_solver | A pointer the nonlinear Quasi-Newton trust region solver to finish the creation of | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 16791 of file solver_routines.f90.
References solver_cmiss_library, and solver_petsc_library.
Referenced by solver_quasi_newton_create_finish().
subroutine, public solver_routines::solver_quasinewtontrustregiontoleranceset | ( | type(solver_type), pointer | SOLVER, |
real(dp), intent(in) | TRUSTREGION_TOLERANCE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the trust region tolerance for a nonlinear Quasi-Newton trust region solver.
solver | A pointer the solver to set the trust region tolerance for | |
[in] | trustregion_tolerance | The trust region tolerance to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 17175 of file solver_routines.f90.
References solver_nonlinear_quasi_newton, solver_nonlinear_type, and solver_quasi_newton_trustregion.
subroutine, public solver_routines::solver_solution_update | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Updates the solver solution from the field variables.
solver | A pointer the solver to update the solution from | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 21086 of file solver_routines.f90.
Referenced by bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_convergencecheck(), solver_linear_iterative_solve(), solver_newton_linesearch_solve(), and solver_quasi_newton_linesearch_solve().
recursive subroutine, public solver_routines::solver_solve | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Solve the problem.
solver | A pointer the solver to solve | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 21269 of file solver_routines.f90.
References solver_cellml_evaluator_solve(), solver_cellml_evaluator_type, solver_dae_solve(), solver_dae_type, solver_dynamic_solve(), solver_dynamic_type, solver_eigenproblem_solve(), solver_eigenproblem_type, solver_linear_solve(), solver_linear_type, solver_nonlinear_solve(), solver_nonlinear_type, solver_optimiser_solve(), solver_optimiser_type, and solver_timing_output.
Referenced by finite_elasticity_routines::finite_elasticity_pre_solve(), navier_stokes_equations_routines::NAVIER_STOKES_PRE_SOLVE::navier_stokes_pre_solve(), and solver_dynamic_solve().
subroutine, public solver_routines::solver_solver_equations_get | ( | type(solver_type), pointer | SOLVER, |
type(solver_equations_type), pointer | SOLVER_EQUATIONS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns a pointer to the solver equations for a solver.
solver | A pointer to the solver to get the solver equations for | |
solver_equations | On exit, a pointer to the specified solver equations. Must not be associated on entry. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 21230 of file solver_routines.f90.
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_computefibrestretch(), bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_controllooppostloop(), bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_convergencecheck(), bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_forcelengthvelocityrelation(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), finite_elasticity_fluid_pressure_routines::elasticity_fluid_pressure_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), finite_elasticity_routines::finiteelasticity_contactproblemsetup(), fitting_routines::fitting_problem_standard_setup(), fitting_routines::fitting_problem_vectordata_setup(), fsi_routines::fsi_problem_setup(), helmholtz_equations_routines::HELMHOLTZ_EQUATION_PROBLEM_STANDARD_SETUP::helmholtz_equation_problem_standard_setup(), hamilton_jacobi_equations_routines::HJ_EQUATION_PROBLEM_STANDARD_SETUP::hj_equation_problem_standard_setup(), laplace_equations_routines::laplace_equation_problem_generalised_setup(), laplace_equations_routines::laplace_equation_problem_standard_setup(), linear_elasticity_routines::linear_elasticity_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), poiseuille_equations_routines::poiseuille_equation_problem_static_setup(), poisson_equations_routines::poisson_problemextracellularbidomainsetup(), poisson_equations_routines::poisson_problemlinearsourcesetup(), poisson_equations_routines::poisson_problemnonlinearsourcesetup(), poisson_equations_routines::poisson_problempressurepoissonsetup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), and stokes_equations_routines::stokes_problem_setup().
subroutine, public solver_routines::solver_time_stepping_monitor | ( | type(dae_solver_type), pointer | DAE_SOLVER, |
integer(intg), intent(in) | STEPS, | ||
real(dp), intent(in) | TIME, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Monitors the differential-algebraic equations solve.
dae_solver | A pointer to the differential-algebraic equations solver to monitor | |
[in] | steps | The number of iterations |
[in] | time | The current time |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6292 of file solver_routines.f90.
Referenced by solver_time_stepping_monitor_petsc().
subroutine, public solver_routines::solver_type_set | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(in) | SOLVE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the type for a solver.
solver | A pointer the solver to set the solver type for. | |
[in] | solve_type | The type of solver to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 21345 of file solver_routines.f90.
References solver_cellml_evaluator_finalise(), solver_cellml_evaluator_initialise(), solver_cellml_evaluator_type, solver_dae_finalise(), solver_dae_initialise(), solver_dae_type, solver_dynamic_finalise(), solver_dynamic_initialise(), solver_dynamic_type, solver_eigenproblem_finalise(), solver_eigenproblem_initialise(), solver_eigenproblem_type, solver_geometric_transformation_type, solver_geometrictransformationfinalise(), solver_geometrictransformationinitialise(), solver_linear_finalise(), solver_linear_initialise(), solver_linear_type, solver_nonlinear_finalise(), solver_nonlinear_initialise(), solver_nonlinear_type, solver_optimiser_finalise(), solver_optimiser_initialise(), and solver_optimiser_type.
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), finite_elasticity_fluid_pressure_routines::elasticity_fluid_pressure_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), finite_elasticity_routines::finiteelasticity_contactproblemsetup(), fitting_routines::fitting_problem_standard_setup(), fitting_routines::fitting_problem_vectordata_setup(), fsi_routines::fsi_problem_setup(), helmholtz_equations_routines::HELMHOLTZ_EQUATION_PROBLEM_STANDARD_SETUP::helmholtz_equation_problem_standard_setup(), hamilton_jacobi_equations_routines::HJ_EQUATION_PROBLEM_STANDARD_SETUP::hj_equation_problem_standard_setup(), laplace_equations_routines::laplace_equation_problem_generalised_setup(), laplace_equations_routines::laplace_equation_problem_standard_setup(), linear_elasticity_routines::linear_elasticity_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), poiseuille_equations_routines::poiseuille_equation_problem_static_setup(), poisson_equations_routines::poisson_problemextracellularbidomainsetup(), poisson_equations_routines::poisson_problemlinearsourcesetup(), poisson_equations_routines::poisson_problemnonlinearsourcesetup(), poisson_equations_routines::poisson_problempressurepoissonsetup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), and stokes_equations_routines::stokes_problem_setup().
subroutine, public solver_routines::solver_variables_dynamic_field_update | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Updates the dependent variables from the solver solution for dynamic solvers.
solver | A pointer the solver to update the variables from | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 21447 of file solver_routines.f90.
References solver_dynamic_first_degree, solver_dynamic_first_order, solver_dynamic_nonlinear, solver_dynamic_second_degree, solver_dynamic_second_order, and solver_dynamic_third_degree.
Referenced by solver_dynamic_solve().
subroutine, public solver_routines::solver_variables_dynamic_nonlinear_update | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Update the field values form the dynamic factor * current solver values AND add in mean predicted displacements.
solver | A pointer the solver to update the variables from | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 22069 of file solver_routines.f90.
References solver_dynamic_first_degree, solver_dynamic_second_degree, and solver_dynamic_third_degree.
subroutine, public solver_routines::solver_variables_field_update | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Updates the dependent variables from the solver solution for static solvers.
solver | A pointer the solver to update the variables from | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 22404 of file solver_routines.f90.
Referenced by solver_linear_solve().
subroutine, public solver_routines::solver_variablesdynamicfieldpreviousvaluesupdate | ( | type(solver_type), pointer | SOLVER, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Updates the previous values from the solver solution for dynamic solvers.
solver | A pointer the solver to update the variables from | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 21936 of file solver_routines.f90.
References solver_dynamic_nonlinear, solver_dynamic_second_degree, and solver_dynamic_third_degree.
subroutine, public solver_routines::solverequations_boundaryconditionscreatefinish | ( | type(solver_equations_type), intent(in), pointer | SOLVER_EQUATIONS, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Finishes the creation of boundary conditions for the given solver equations.
[in] | solver_equations | A pointer to the solver equations to create boundary conditions for |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7630 of file solver_routines.f90.
References solver_dae_create_finish(), solver_dae_type, solver_dynamic_create_finish(), solver_dynamic_type, solver_eigenproblem_create_finish(), solver_eigenproblem_type, solver_linear_create_finish(), solver_linear_type, solver_nonlinear_create_finish(), and solver_nonlinear_type.
subroutine, public solver_routines::solverequations_boundaryconditionscreatestart | ( | type(solver_equations_type), intent(in), pointer | SOLVER_EQUATIONS, |
type(boundary_conditions_type), intent(out), pointer | BOUNDARY_CONDITIONS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Starts the creation of boundary conditions for the given solver equations, and returns a pointer to the boundary conditions.
[in] | solver_equations | A pointer to the solver equations to create boundary conditions for |
[out] | boundary_conditions | On return, a pointer the boundary conditions |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7696 of file solver_routines.f90.
subroutine, public solver_routines::solverequations_jacobianmatrixget | ( | type(solver_equations_type), intent(in), pointer | solverEquations, |
type(distributed_matrix_type), intent(inout), pointer | matrix, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Get the Jacobian matrix from the solver equations matrices for nonlinear solver equations.
[in] | solverequations | The solver equations to get the Jacobian matrix for |
[in,out] | matrix | On return, the solver equations Jacobian matrix |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7933 of file solver_routines.f90.
References solverequations_matrixget().
subroutine, public solver_routines::solverequations_matrixget | ( | type(solver_equations_type), intent(in), pointer | solverEquations, |
integer(intg), intent(in) | matrixIndex, | ||
type(distributed_matrix_type), intent(inout), pointer | matrix, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Get a solver matrix from the solver equations matrices.
[in] | solverequations | The solver equations to get the matrix for |
[in] | matrixindex | The solver matrix index to get |
[in,out] | matrix | On return, the requested solver matrix |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7880 of file solver_routines.f90.
Referenced by solverequations_jacobianmatrixget().
subroutine, public solver_routines::solverequations_numberofmatricesget | ( | type(solver_equations_type), intent(in), pointer | solverEquations, |
integer(intg), intent(out) | numberOfMatrices, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Get the number of solver matrices for the solver equations.
[in] | solverequations | The solver equations to get the number of matrices for |
[out] | numberofmatrices | The number of matrices for the solver equations |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7845 of file solver_routines.f90.
subroutine, public solver_routines::solverequations_residualvectorget | ( | type(solver_equations_type), intent(in), pointer | solverEquations, |
type(distributed_vector_type), intent(inout), pointer | residualVector, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Get the residual vector from the solver equations for nonlinear problems.
[in] | solverequations | The solver equations to get the residual vector for |
[in,out] | residualvector | On return, the solver residual vector |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8022 of file solver_routines.f90.
subroutine, public solver_routines::solverequations_rhsvectorget | ( | type(solver_equations_type), intent(in), pointer | solverEquations, |
type(distributed_vector_type), intent(inout), pointer | rhsVector, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Get the right hand side vector from the solver equations.
[in] | solverequations | The solver equations to get the right hand side vector for |
[in,out] | rhsvector | On return, the solver right hand side vector |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8065 of file solver_routines.f90.
subroutine, public solver_routines::solverequations_vectorget | ( | type(solver_equations_type), intent(in), pointer | solverEquations, |
integer(intg), intent(in) | matrixIndex, | ||
type(distributed_vector_type), intent(inout), pointer | vector, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Get the vector assiciated with a solver matrix from the solver equations matrices.
[in] | solverequations | The solver equations to get the vector for |
[in] | matrixindex | The solver matrix index to get the vector for |
[in,out] | vector | On return, the requested solver matrix vector |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7965 of file solver_routines.f90.
subroutine, public solver_routines::solvers_create_finish | ( | type(solvers_type), pointer | SOLVERS, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Finish the creation of solvers.
solvers | A pointer to the solvers to finish the creation of | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 22598 of file solver_routines.f90.
References solver_create_finish().
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), finite_elasticity_fluid_pressure_routines::elasticity_fluid_pressure_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), finite_elasticity_routines::finiteelasticity_contactproblemsetup(), fitting_routines::fitting_problem_standard_setup(), fitting_routines::fitting_problem_vectordata_setup(), fsi_routines::fsi_problem_setup(), helmholtz_equations_routines::HELMHOLTZ_EQUATION_PROBLEM_STANDARD_SETUP::helmholtz_equation_problem_standard_setup(), hamilton_jacobi_equations_routines::HJ_EQUATION_PROBLEM_STANDARD_SETUP::hj_equation_problem_standard_setup(), laplace_equations_routines::laplace_equation_problem_generalised_setup(), laplace_equations_routines::laplace_equation_problem_standard_setup(), linear_elasticity_routines::linear_elasticity_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), poiseuille_equations_routines::poiseuille_equation_problem_static_setup(), poisson_equations_routines::poisson_problemextracellularbidomainsetup(), poisson_equations_routines::poisson_problemlinearsourcesetup(), poisson_equations_routines::poisson_problemnonlinearsourcesetup(), poisson_equations_routines::poisson_problempressurepoissonsetup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), and stokes_equations_routines::stokes_problem_setup().
subroutine, public solver_routines::solvers_create_start | ( | type(control_loop_type), pointer | CONTROL_LOOP, |
type(solvers_type), pointer | SOLVERS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Start the creation of a solvers for the control loop.
control_loop | A pointer to the control loop to create the solvers for | |
solvers | On exit, a pointer to the solvers. Must not be associated on entry. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 22651 of file solver_routines.f90.
References solvers_initialise().
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), finite_elasticity_fluid_pressure_routines::elasticity_fluid_pressure_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), finite_elasticity_routines::finiteelasticity_contactproblemsetup(), fitting_routines::fitting_problem_standard_setup(), fitting_routines::fitting_problem_vectordata_setup(), fsi_routines::fsi_problem_setup(), helmholtz_equations_routines::HELMHOLTZ_EQUATION_PROBLEM_STANDARD_SETUP::helmholtz_equation_problem_standard_setup(), hamilton_jacobi_equations_routines::HJ_EQUATION_PROBLEM_STANDARD_SETUP::hj_equation_problem_standard_setup(), laplace_equations_routines::laplace_equation_problem_generalised_setup(), laplace_equations_routines::laplace_equation_problem_standard_setup(), linear_elasticity_routines::linear_elasticity_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), poiseuille_equations_routines::poiseuille_equation_problem_static_setup(), poisson_equations_routines::poisson_problemextracellularbidomainsetup(), poisson_equations_routines::poisson_problemlinearsourcesetup(), poisson_equations_routines::poisson_problemnonlinearsourcesetup(), poisson_equations_routines::poisson_problempressurepoissonsetup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), and stokes_equations_routines::stokes_problem_setup().
subroutine, public solver_routines::solvers_destroy | ( | type(solvers_type), pointer | SOLVERS, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Destroys the solvers.
solvers | A pointer to the solvers to destroy | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 22699 of file solver_routines.f90.
References solvers_finalise().
Referenced by control_loop_routines::control_loop_finalise(), and control_loop_routines::control_loop_solvers_destroy().
|
private |
Finalises the solvers and deallocates all memory.
solvers | A pointer to the solvers to finalise | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 22727 of file solver_routines.f90.
References solver_finalise().
Referenced by solvers_destroy(), and solvers_initialise().
|
private |
Initialises the solvers for a control loop.
control_loop | A pointer to the control loop to initialise the solvers for | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 22759 of file solver_routines.f90.
References solver_initialise(), and solvers_finalise().
Referenced by solvers_create_start().
subroutine, public solver_routines::solvers_number_set | ( | type(solvers_type), pointer | SOLVERS, |
integer(intg), intent(in) | NUMBER_OF_SOLVERS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the number of solvers.
solvers | A pointer to the solvers to set the number for | |
[in] | number_of_solvers | The number of solvers to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 22805 of file solver_routines.f90.
References solver_finalise(), and solver_initialise().
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_equation_problem_setup(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), finite_elasticity_fluid_pressure_routines::elasticity_fluid_pressure_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), finite_elasticity_routines::finiteelasticity_contactproblemsetup(), fitting_routines::fitting_problem_standard_setup(), fitting_routines::fitting_problem_vectordata_setup(), fsi_routines::fsi_problem_setup(), helmholtz_equations_routines::HELMHOLTZ_EQUATION_PROBLEM_STANDARD_SETUP::helmholtz_equation_problem_standard_setup(), hamilton_jacobi_equations_routines::HJ_EQUATION_PROBLEM_STANDARD_SETUP::hj_equation_problem_standard_setup(), laplace_equations_routines::laplace_equation_problem_generalised_setup(), laplace_equations_routines::laplace_equation_problem_standard_setup(), linear_elasticity_routines::linear_elasticity_problem_setup(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), poiseuille_equations_routines::poiseuille_equation_problem_static_setup(), poisson_equations_routines::poisson_problemextracellularbidomainsetup(), poisson_equations_routines::poisson_problemlinearsourcesetup(), poisson_equations_routines::poisson_problemnonlinearsourcesetup(), poisson_equations_routines::poisson_problempressurepoissonsetup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), and stokes_equations_routines::stokes_problem_setup().
subroutine, public solver_routines::solvers_solver_get | ( | type(solvers_type), pointer | SOLVERS, |
integer(intg), intent(in) | SOLVER_INDEX, | ||
type(solver_type), pointer | SOLVER, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Returns a pointer to the specified solver in the list of solvers.
solvers | A pointer to the solvers to get the solver for | |
[in] | solver_index | The specified solver to get |
solver | On exit, a pointer to the specified solver. Must not be associated on entry. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 22876 of file solver_routines.f90.
Referenced by advection_equation_routines::advection_equation_problem_linear_setup(), advection_diffusion_equation_routines::advectiondiffusion_presolvegetsourcevalue(), advection_diffusion_equation_routines::advectiondiffusion_presolvestorecurrentsoln(), advection_diffusion_equation_routines::advectiondiffusion_problemlinearsetup(), biodomain_equation_routines::biodomain_control_loop_post_loop(), biodomain_equation_routines::biodomain_equation_problem_setup(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_compute_titin(), bioelectric_finite_elasticity_routines::bioelectric_finite_elasticity_problem_setup(), bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_computefibrestretch(), bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_controllooppostloop(), bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_convergencecheck(), bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_forcelengthvelocityrelation(), bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_independentfieldinterpolate(), bioelectric_finite_elasticity_routines::bioelectricfiniteelasticity_updategeometricfield(), burgers_equation_routines::burgers_equation_problem_setup(), darcy_equations_routines::darcy_control_time_loop_pre_loop(), darcy_equations_routines::darcy_equation_post_solve_set_mass_increase(), darcy_equations_routines::darcy_equation_pre_solve(), darcy_equations_routines::darcy_equation_problem_setup(), darcy_equations_routines::darcy_presolvegetsoliddisplacement(), darcy_equations_routines::darcy_presolveupdatematrixproperties(), diffusion_advection_diffusion_routines::diffusion_advection_diffusion_problem_setup(), diffusion_diffusion_routines::diffusion_diffusion_problem_setup(), diffusion_equation_routines::diffusion_equation_control_loop_post_loop(), diffusion_equation_routines::diffusion_equation_problem_linear_setup(), diffusion_equation_routines::diffusion_equation_problem_nonlinear_setup(), diffusion_equation_routines::diffusion_presolvegetsourcevalue(), diffusion_equation_routines::diffusion_presolvestorecurrentsolution(), finite_elasticity_darcy_routines::elasticity_darcy_control_loop_post_loop(), finite_elasticity_darcy_routines::elasticity_darcy_control_loop_pre_loop(), finite_elasticity_darcy_routines::elasticity_darcy_problem_setup(), finite_elasticity_fluid_pressure_routines::elasticity_fluid_pressure_problem_setup(), finite_elasticity_routines::finite_elasticity_problem_setup(), finite_elasticity_routines::finiteelasticity_contactproblemsetup(), finite_elasticity_routines::finiteelasticity_controltimelooppreloop(), finite_elasticity_routines::finiteelasticity_presolvegetsoliddisplacement(), fitting_routines::fitting_problem_standard_setup(), fitting_routines::fitting_problem_vectordata_setup(), fsi_routines::fsi_control_loop_post_loop(), fsi_routines::fsi_post_solve(), fsi_routines::fsi_problem_setup(), helmholtz_equations_routines::HELMHOLTZ_EQUATION_PROBLEM_STANDARD_SETUP::helmholtz_equation_problem_standard_setup(), hamilton_jacobi_equations_routines::HJ_EQUATION_PROBLEM_STANDARD_SETUP::hj_equation_problem_standard_setup(), laplace_equations_routines::laplace_equation_problem_generalised_setup(), laplace_equations_routines::laplace_equation_problem_standard_setup(), linear_elasticity_routines::linear_elasticity_problem_setup(), monodomain_equations_routines::MONODOMAIN_CONTROL_LOOP_POST_LOOP::monodomain_control_loop_post_loop(), monodomain_equations_routines::MONODOMAIN_EQUATION_PROBLEM_SUBTYPE_SETUP::monodomain_equation_problem_subtype_setup(), multi_compartment_transport_routines::MULTI_COMPARTMENT_TRANSPORT_PROBLEM_SETUP::multi_compartment_transport_problem_setup(), navier_stokes_equations_routines::NAVIER_STOKES_POST_SOLVE::navier_stokes_post_solve(), navier_stokes_equations_routines::NAVIER_STOKES_PRE_SOLVE::navier_stokes_pre_solve(), navier_stokes_equations_routines::NAVIER_STOKES_PRE_SOLVE_ALE_UPDATE_MESH::navier_stokes_pre_solve_ale_update_mesh(), navier_stokes_equations_routines::NAVIER_STOKES_PROBLEM_SETUP::navier_stokes_problem_setup(), navier_stokes_equations_routines::NavierStokes_PreSolveUpdateBoundaryConditions::navierstokes_presolveupdateboundaryconditions(), poiseuille_equations_routines::poiseuille_equation_problem_static_setup(), poisson_equations_routines::poisson_pre_solve_update_ppe_mesh(), poisson_equations_routines::poisson_pre_solve_update_ppe_source(), poisson_equations_routines::poisson_problemextracellularbidomainsetup(), poisson_equations_routines::poisson_problemlinearsourcesetup(), poisson_equations_routines::poisson_problemnonlinearsourcesetup(), poisson_equations_routines::poisson_problempressurepoissonsetup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_CONTROL_LOOP_POST_LOOP::reaction_diffusion_control_loop_post_loop(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_EQUATION_PROBLEM_SETUP::reaction_diffusion_equation_problem_setup(), reaction_diffusion_equation_routines::REACTION_DIFFUSION_POST_SOLVE::reaction_diffusion_post_solve(), stokes_equations_routines::stokes_post_solve(), stokes_equations_routines::stokes_pre_solve(), stokes_equations_routines::stokes_pre_solve_ale_update_mesh(), and stokes_equations_routines::stokes_problem_setup().