107     & normal,time,variable_type,global_derivative,component_number,analytic_parameters,materials_parameters,
VALUE,err,error,*)
   111     INTEGER(INTG), 
INTENT(IN) :: EQUATIONS_TYPE
   112     INTEGER(INTG), 
INTENT(IN) :: ANALYTIC_FUNCTION_TYPE
   113     REAL(DP), 
INTENT(IN) :: POSITION(:)
   114     REAL(DP), 
INTENT(IN) :: TANGENTS(:,:)
   115     REAL(DP), 
INTENT(IN) :: NORMAL(:)
   116     REAL(DP), 
INTENT(IN) :: TIME
   117     INTEGER(INTG), 
INTENT(IN) :: VARIABLE_TYPE
   118     INTEGER(INTG), 
INTENT(IN) :: GLOBAL_DERIVATIVE
   119     INTEGER(INTG), 
INTENT(IN) :: COMPONENT_NUMBER
   120     REAL(DP), 
INTENT(IN) :: ANALYTIC_PARAMETERS(:)
   121     REAL(DP), 
INTENT(IN) :: MATERIALS_PARAMETERS(:)
   122     REAL(DP), 
INTENT(OUT) :: 
VALUE   123     INTEGER(INTG), 
INTENT(OUT) :: ERR
   128     enters(
"CLASSICAL_FIELD_ANALYTIC_FUNCTIONS_EVALUATE",err,error,*999)
   130     IF(
ASSOCIATED(equations_set)) 
THEN   133         CALL flagerror(
"Not implemented.",err,error,*999)
   135         CALL flagerror(
"Not implemented.",err,error,*999)
   137         CALL flagerror(
"Not implemented.",err,error,*999)
   139         CALL flagerror(
"Not implemented.",err,error,*999)
   141         CALL flagerror(
"Not implemented.",err,error,*999)
   144           & tangents,normal,time,variable_type,global_derivative,component_number,analytic_parameters, &
   145           & materials_parameters,
VALUE,err,error,*999)
   147         CALL flagerror(
"Not implemented.",err,error,*999)
   149         CALL flagerror(
"Not implemented.",err,error,*999)
   151         CALL flagerror(
"Not implemented.",err,error,*999)
   153         CALL flagerror(
"Not implemented.",err,error,*999)
   156           & 
" is not valid for a classical field equations set class."   157         CALL flagerror(local_error,err,error,*999)
   160       CALL flagerror(
"Equations set is not associated.",err,error,*999)
   163     exits(
"CLASSICAL_FIELD_ANALYTIC_FUNCTIONS_EVALUATE")
   165 999 errorsexits(
"CLASSICAL_FIELD_ANALYTIC_FUNCTIONS_EVALUATE",err,error)
   178     INTEGER(INTG), 
INTENT(OUT) :: ERR
   184     enters(
"CLASSICAL_FIELD_CONTROL_LOOP_POST_LOOP",err,error,*999)
   186     IF(
ASSOCIATED(control_loop)) 
THEN   187       problem=>control_loop%PROBLEM
   188       IF(
ASSOCIATED(problem)) 
THEN   189         SELECT CASE(control_loop%LOOP_TYPE)
   191           SELECT CASE(problem%specification(2))
   195             CALL reaction_diffusion_control_loop_post_loop(control_loop,err,error,*999)
   197             local_error=
"The second problem specification of "// &
   199               & 
" is not valid for a classical field problem."   200             CALL flagerror(local_error,err,error,*999)
   206         CALL flagerror(
"Control loop problem is not associated.",err,error,*999)
   209       CALL flagerror(
"Control loop is not associated.",err,error,*999)
   212     exits(
"CLASSICAL_FIELD_CONTROL_LOOP_POST_LOOP")
   214 999 errorsexits(
"CLASSICAL_FIELD_LOOP_POST_LOOP",err,error)
   228     INTEGER(INTG), 
INTENT(IN) :: specification(:)
   229     INTEGER(INTG), 
INTENT(OUT) :: err
   234     enters(
"ClassicalField_EquationsSetSpecificationSet",err,error,*999)
   236     IF(
ASSOCIATED(equationsset)) 
THEN   237       IF(
SIZE(specification,1)<2) 
THEN   238         CALL flagerror(
"Equations set specification must have at least two entries for a classical field class equations set.", &
   241       SELECT CASE(specification(2))
   245         CALL hjequation_equationssetspecificationset(equationsset,specification,err,error,*999)
   249         CALL helmholtz_equationssetspecificationset(equationsset,specification,err,error,*999)
   251         CALL flagerror(
"Not implemented.",err,error,*999)
   259         CALL reactiondiffusion_equationssetspecificationset(equationsset,specification,err,error,*999)
   261         CALL flagerror(
"Not implemented.",err,error,*999)
   263         localerror=
"The second equations set specification of "//
trim(
numbertovstring(specification(2),
"*",err,error))// &
   264           & 
" is not valid for a classical field equations set."   265        CALL flagerror(localerror,err,error,*999)
   268       CALL flagerror(
"Equations set is not associated",err,error,*999)
   271     exits(
"ClassicalField_EquationsSetSpecificationSet")
   273 999 
errors(
"ClassicalField_EquationsSetSpecificationSet",err,error)
   274     exits(
"ClassicalField_EquationsSetSpecificationSet")
   288     INTEGER(INTG), 
INTENT(IN) :: ELEMENT_NUMBER
   289     INTEGER(INTG), 
INTENT(OUT) :: ERR
   294     enters(
"CLASSICAL_FIELD_FINITE_ELEMENT_CALCULATE",err,error,*999)
   296     IF(
ASSOCIATED(equations_set)) 
THEN   297       IF(.NOT.
ALLOCATED(equations_set%SPECIFICATION)) 
THEN   298         CALL flagerror(
"Equations set specification is not allocated.",err,error,*999)
   299       ELSE IF(
SIZE(equations_set%SPECIFICATION,1)<2) 
THEN   300         CALL flagerror(
"Equations set specification must have at least two entries for a classical field class equations set.", &
   303       SELECT CASE(equations_set%SPECIFICATION(2))
   307         CALL hj_equation_finite_element_calculate(equations_set,element_number,err,error,*999)
   311         CALL helmholtz_equation_finite_element_calculate(equations_set,element_number,err,error,*999)
   313         CALL flagerror(
"Not implemented.",err,error,*999)
   321         CALL reactiondiffusion_finiteelementcalculate(equations_set,element_number,err,error,*999)
   323         CALL flagerror(
"Not implemented.",err,error,*999)
   325         local_error=
"Equations set type "//
trim(
number_to_vstring(equations_set%SPECIFICATION(2),
"*",err,error))// &
   326           & 
" is not valid for a classical field equation set class."   327         CALL flagerror(local_error,err,error,*999)
   330       CALL flagerror(
"Equations set is not associated",err,error,*999)
   333     exits(
"CLASSICAL_FIELD_FINITE_ELEMENT_CALCULATE")
   335 999 errorsexits(
"CLASSICAL_FIELD_FINITE_ELEMENT_CALCULATE",err,error)
   348     INTEGER(INTG), 
INTENT(IN) :: ELEMENT_NUMBER
   349     INTEGER(INTG), 
INTENT(OUT) :: ERR
   354     enters(
"ClassicalField_FiniteElementJacobianEvaluate",err,error,*999)
   356     IF(
ASSOCIATED(equations_set)) 
THEN   357       IF(.NOT.
ALLOCATED(equations_set%SPECIFICATION)) 
THEN   358         CALL flagerror(
"Equations set specification is not allocated.",err,error,*999)
   359       ELSE IF(
SIZE(equations_set%SPECIFICATION,1)<2) 
THEN   360         CALL flagerror(
"Equations set specification must have at least two entries for a classical field class equations set.", &
   363       SELECT CASE(equations_set%SPECIFICATION(2))
   365         CALL flagerror(
"Not implemented.",err,error,*999)
   367         CALL flagerror(
"Not implemented.",err,error,*999)
   371         CALL flagerror(
"Not implemented.",err,error,*999)
   373         CALL flagerror(
"Not implemented.",err,error,*999)
   377         CALL flagerror(
"Not implemented.",err,error,*999)
   379         CALL flagerror(
"Not implemented.",err,error,*999)
   381         CALL flagerror(
"Not implemented.",err,error,*999)
   383         CALL flagerror(
"Not implemented.",err,error,*999)
   385         local_error=
"Equations set type "//
trim(
number_to_vstring(equations_set%SPECIFICATION(2),
"*",err,error))// &
   386           & 
" is not valid for a classical field equation set class."   387         CALL flagerror(local_error,err,error,*999)
   390       CALL flagerror(
"Equations set is not associated",err,error,*999)
   393     exits(
"ClassicalField_FiniteElementJacobianEvaluate")
   395 999 
errors(
"ClassicalField_FiniteElementJacobianEvaluate",err,error)
   396     exits(
"ClassicalField_FiniteElementJacobianEvaluate")
   410     INTEGER(INTG), 
INTENT(IN) :: ELEMENT_NUMBER
   411     INTEGER(INTG), 
INTENT(OUT) :: ERR
   416     enters(
"ClassicalField_FiniteElementResidualEvaluate",err,error,*999)
   418     IF(
ASSOCIATED(equations_set)) 
THEN   419       IF(.NOT.
ALLOCATED(equations_set%SPECIFICATION)) 
THEN   420         CALL flagerror(
"Equations set specification is not allocated.",err,error,*999)
   421       ELSE IF(
SIZE(equations_set%SPECIFICATION,1)<2) 
THEN   422         CALL flagerror(
"Equations set specification must have at least two entries for a classical field class equations set.", &
   425       SELECT CASE(equations_set%SPECIFICATION(2))
   427         CALL flagerror(
"Not implemented.",err,error,*999)
   429         CALL flagerror(
"Not implemented.",err,error,*999)
   433         CALL flagerror(
"Not implemented.",err,error,*999)
   435         CALL flagerror(
"Not implemented.",err,error,*999)
   439         CALL flagerror(
"Not implemented.",err,error,*999)
   443         CALL flagerror(
"Not implemented.",err,error,*999)
   445         CALL flagerror(
"Not implemented.",err,error,*999)
   447         local_error=
"Equations set type "//
trim(
number_to_vstring(equations_set%SPECIFICATION(2),
"*",err,error))// &
   448           & 
" is not valid for a classical field equation set class."   449         CALL flagerror(local_error,err,error,*999)
   452       CALL flagerror(
"Equations set is not associated",err,error,*999)
   455     exits(
"ClassicalField_FiniteElementResidualEvaluate")
   457 999 
errors(
"ClassicalField_FiniteElementResidualEvaluate",err,error)
   458     exits(
"ClassicalField_FiniteElementResidualEvaluate")
   473     INTEGER(INTG), 
INTENT(OUT) :: ERR
   478     enters(
"CLASSICAL_FIELD_EQUATIONS_SET_SETUP",err,error,*999)
   480     IF(
ASSOCIATED(equations_set)) 
THEN   481       IF(.NOT.
ALLOCATED(equations_set%SPECIFICATION)) 
THEN   482         CALL flagerror(
"Equations set specification is not allocated.",err,error,*999)
   483       ELSE IF(
SIZE(equations_set%SPECIFICATION,1)<2) 
THEN   484         CALL flagerror(
"Equations set specification must have at least two entries for a classical field class equations set.", &
   487       SELECT CASE(equations_set%SPECIFICATION(2))
   491         CALL hj_equation_equations_set_setup(equations_set,equations_set_setup,err,error,*999)
   495         CALL helmholtz_equation_equations_set_setup(equations_set,equations_set_setup,err,error,*999)
   497         CALL flagerror(
"Not implemented.",err,error,*999)
   505         CALL reactiondiffusion_equationssetsetup(equations_set,equations_set_setup,err,error,*999)
   507         CALL flagerror(
"Not implemented.",err,error,*999)
   509         local_error=
"Equation set type "//
trim(
number_to_vstring(equations_set%SPECIFICATION(2),
"*",err,error))// &
   510           & 
" is not valid for a classical field equation set class."   511         CALL flagerror(local_error,err,error,*999)
   514       CALL flagerror(
"Equations set is not associated.",err,error,*999)
   517     exits(
"CLASSICAL_FIELD_EQUATIONS_SET_SETUP")
   519 999 errorsexits(
"CLASSICAL_FIELD_EQUATIONS_SET_SETUP",err,error)
   532     INTEGER(INTG), 
INTENT(IN) :: SOLUTION_METHOD
   533     INTEGER(INTG), 
INTENT(OUT) :: ERR
   538     enters(
"CLASSICAL_FIELD_EQUATIONS_SOLUTION_METHOD_SET",err,error,*999)
   540     IF(
ASSOCIATED(equations_set)) 
THEN   541       IF(.NOT.
ALLOCATED(equations_set%SPECIFICATION)) 
THEN   542         CALL flagerror(
"Equations set specification is not allocated.",err,error,*999)
   543       ELSE IF(
SIZE(equations_set%SPECIFICATION,1)<2) 
THEN   544         CALL flagerror(
"Equations set specification must have at least two entries for a classical field class equations set.", &
   547       SELECT CASE(equations_set%SPECIFICATION(2))
   551         CALL hjequation_equationssetsolutionmethodset(equations_set,solution_method,err,error,*999)
   555         CALL helmholtz_equationssetsolutionmethodset(equations_set,solution_method,err,error,*999)
   557         CALL flagerror(
"Not implemented.",err,error,*999)
   565         CALL reactiondiffusion_equationssetsolutionmethodset(equations_set,solution_method,err,error,*999)
   567         CALL flagerror(
"Not implemented.",err,error,*999)
   569         local_error=
"Equations set equation type of "//
trim(
number_to_vstring(equations_set%SPECIFICATION(2),
"*",err,error))// &
   570           & 
" is not valid for a classical field equations set class."   571         CALL flagerror(local_error,err,error,*999)
   574       CALL flagerror(
"Equations set is not associated",err,error,*999)
   577     exits(
"ClassicalField_EquationsSetSolutionMethodSet")
   579 999 
errors(
"ClassicalField_EquationsSetSolutionMethodSet",err,error)
   580     exits(
"ClassicalField_EquationsSetSolutionMethodSet")
   595     INTEGER(INTG), 
INTENT(OUT) :: ERR
   600     enters(
"ClassicalField_BoundaryConditionsAnalyticCalculate",err,error,*999)
   602     IF(
ASSOCIATED(equations_set)) 
THEN   603       IF(.NOT.
ALLOCATED(equations_set%SPECIFICATION)) 
THEN   604         CALL flagerror(
"Equations set specification is not allocated.",err,error,*999)
   605       ELSE IF(
SIZE(equations_set%SPECIFICATION,1)<2) 
THEN   606         CALL flagerror(
"Equations set specification must have at least two entries for a classical field class equations set.", &
   609       SELECT CASE(equations_set%SPECIFICATION(2))
   613         CALL hj_boundaryconditionsanalyticcalculate(equations_set,boundary_conditions,err,error,*999)
   617         CALL helmholtz_boundaryconditionsanalyticcalculate(equations_set,boundary_conditions,err,error,*999)
   619         CALL flagerror(
"Not implemented.",err,error,*999)
   625         CALL flagerror(
"Not implemented.",err,error,*999)
   627         CALL flagerror(
"Not implemented.",err,error,*999)
   629         local_error=
"Equations set equation type of "//
trim(
number_to_vstring(equations_set%SPECIFICATION(2),
"*",err,error))// &
   630           & 
" is not valid for a classical field equations set class."   631         CALL flagerror(local_error,err,error,*999)
   634       CALL flagerror(
"Equations set is not associated",err,error,*999)
   637     exits(
"ClassicalField_BoundaryConditionsAnalyticCalculate")
   639 999 
errors(
"ClassicalField_BoundaryConditionsAnalyticCalculate",err,error)
   640     exits(
"ClassicalField_BoundaryConditionsAnalyticCalculate")
   654     INTEGER(INTG), 
INTENT(IN) :: problemSpecification(:)
   655     INTEGER(INTG), 
INTENT(OUT) :: err
   659     INTEGER(INTG) :: problemType
   661     enters(
"ClassicalField_ProblemSpecificationSet",err,error,*999)
   663     IF(
ASSOCIATED(problem)) 
THEN   664       IF(
SIZE(problemspecification,1)>=2) 
THEN   665         problemtype=problemspecification(2)
   666         SELECT CASE(problemtype)
   670           CALL hjequation_problemspecificationset(problem,problemspecification,err,error,*999)
   674           CALL helmholtz_problemspecificationset(problem,problemspecification,err,error,*999)
   676           CALL flagerror(
"Not implemented.",err,error,*999)
   684           CALL reactiondiffusion_problemspecificationset(problem,problemspecification,err,error,*999)
   686           CALL flagerror(
"Not implemented.",err,error,*999)
   688           localerror=
"The second problem specification of "//
trim(
numbertovstring(problemtype,
"*",err,error))// &
   689             & 
" is not valid for a classical field problem."   690           CALL flagerror(localerror,err,error,*999)
   693         CALL flagerror(
"Classical field problem specification must have a type set.",err,error,*999)
   696       CALL flagerror(
"Problem is not associated.",err,error,*999)
   699     exits(
"ClassicalField_ProblemSpecificationSet")
   701 999 
errors(
"ClassicalField_ProblemSpecificationSet",err,error)
   702     exits(
"ClassicalField_ProblemSpecificationSet")
   717     INTEGER(INTG), 
INTENT(OUT) :: ERR
   722     enters(
"CLASSICAL_FIELD_PROBLEM_SETUP",err,error,*999)
   724     IF(
ASSOCIATED(problem)) 
THEN   725       IF(.NOT.
ALLOCATED(problem%SPECIFICATION)) 
THEN   726         CALL flagerror(
"Problem specification is not allocated.",err,error,*999)
   727       ELSE IF(
SIZE(problem%SPECIFICATION,1)<2) 
THEN   728         CALL flagerror(
"Problem specification must have at least two entries for a classical field problem.",err,error,*999)
   730       SELECT CASE(problem%SPECIFICATION(2))
   734         CALL hj_equation_problem_setup(problem,problem_setup,err,error,*999)
   738         CALL helmholtz_equation_problem_setup(problem,problem_setup,err,error,*999)
   740         CALL flagerror(
"Not implemented.",err,error,*999)
   748         CALL reaction_diffusion_equation_problem_setup(problem,problem_setup,err,error,*999)
   750         CALL flagerror(
"Not implemented.",err,error,*999)
   753           & 
" is not valid for a classical field problem class."   754         CALL flagerror(local_error,err,error,*999)
   757       CALL flagerror(
"Problem is not associated.",err,error,*999)
   760     exits(
"CLASSICAL_FIELD_PROBLEM_SETUP")
   762 999 errorsexits(
"CLASSICAL_FIELD_PROBLEM_SETUP",err,error)
   776     INTEGER(INTG), 
INTENT(OUT) :: ERR
   781     enters(
"CLASSICAL_FIELD_PRE_SOLVE",err,error,*999)
   783     IF(
ASSOCIATED(control_loop%PROBLEM)) 
THEN   784       IF(.NOT.
ALLOCATED(control_loop%PROBLEM%SPECIFICATION)) 
THEN   785         CALL flagerror(
"Problem specification is not allocated.",err,error,*999)
   786       ELSE IF(
SIZE(control_loop%PROBLEM%SPECIFICATION,1)<2) 
THEN   787         CALL flagerror(
"Problem specification must have at least two entries for a classical field problem.",err,error,*999)
   789       SELECT CASE(control_loop%PROBLEM%SPECIFICATION(2))
   807         CALL reaction_diffusion_pre_solve(solver,err,error,*999)
   811         local_error=
"Problem type "//
trim(
number_to_vstring(control_loop%PROBLEM%SPECIFICATION(2),
"*",err,error))// &
   812           & 
" is not valid for a classical field problem class."   813         CALL flagerror(local_error,err,error,*999)
   816       CALL flagerror(
"Problem is not associated.",err,error,*999)
   819     exits(
"CLASSICAL_FIELD_PRE_SOLVE")
   821 999 errorsexits(
"CLASSICAL_FIELD_PRE_SOLVE",err,error)
   835     INTEGER(INTG), 
INTENT(OUT) :: ERR
   840     enters(
"CLASSICAL_FIELD_POST_SOLVE",err,error,*999)
   842     IF(
ASSOCIATED(control_loop%PROBLEM)) 
THEN   843       IF(.NOT.
ALLOCATED(control_loop%PROBLEM%SPECIFICATION)) 
THEN   844         CALL flagerror(
"Problem specification is not allocated.",err,error,*999)
   845       ELSE IF(
SIZE(control_loop%PROBLEM%SPECIFICATION,1)<2) 
THEN   846         CALL flagerror(
"Problem specification must have at least two entries for a classical field problem.",err,error,*999)
   848       SELECT CASE(control_loop%PROBLEM%SPECIFICATION(2))
   866         CALL reaction_diffusion_post_solve(control_loop,solver,err,error,*999)
   870         local_error=
"Problem type "//
trim(
number_to_vstring(control_loop%PROBLEM%SPECIFICATION(2),
"*",err,error))// &
   871           & 
" is not valid for a classical field problem class."   872         CALL flagerror(local_error,err,error,*999)
   875       CALL flagerror(
"Problem is not associated.",err,error,*999)
   878     exits(
"CLASSICAL_FIELD_POST_SOLVE")
   880 999 errorsexits(
"CLASSICAL_FIELD_POST_SOLVE",err,error)
 Contains information on the boundary conditions for the solver equations. 
subroutine, public enters(NAME, ERR, ERROR,)
Records the entry into the named procedure and initialises the error code. 
subroutine, public advectiondiffusion_finiteelementcalculate(EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
Calculates the element stiffness matrices and RHS for a diffusion equation finite element equations s...
subroutine, public diffusion_equation_control_loop_post_loop(CONTROL_LOOP, ERR, ERROR,)
Runs after each control loop iteration. 
This module handles pure advection equation routines. 
Contains information about the equations in an equations set. 
integer(intg), parameter problem_control_time_loop_type
Time control loop. 
integer(intg), parameter problem_laplace_equation_type
integer(intg), parameter problem_biharmonic_equation_type
This module handles all problem wide constants. 
subroutine, public advection_pre_solve(SOLVER, ERR, ERROR,)
Sets up the Poisson problem pre solve. 
Converts a number to its equivalent varying string representation. 
subroutine, public poisson_equationssetsolutionmethodset(EQUATIONS_SET, SOLUTION_METHOD, ERR, ERROR,)
Sets/changes the solution method for a Poisson equation type of an classical field equations set clas...
subroutine, public classical_field_finite_element_calculate(EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
Calculates the element stiffness matries and rhs vector for the given element number for a clasical f...
Contains information on the type of solver to be used. 
This module handles all Hamilton-Jacobi equations routines. 
subroutine, public classical_field_pre_solve(CONTROL_LOOP, SOLVER, ERR, ERROR,)
Sets up the output type for a classical field problem class. 
subroutine, public advectiondiffusion_equationssetsetup(EQUATIONS_SET, EQUATIONS_SET_SETUP, ERR, ERROR,)
Sets up the diffusion equation type of a classical field equations set class. 
subroutine, public diffusion_equation_pre_solve(CONTROL_LOOP, SOLVER, ERR, ERROR,)
Sets up the diffusion problem pre-solve. 
This module handles all Laplace equations routines. 
subroutine, public diffusion_boundaryconditionanalyticcalculate(EQUATIONS_SET, BOUNDARY_CONDITIONS, ERR, ERROR,)
Calculates the analytic solution and sets the boundary conditions for an analytic problem...
subroutine, public classicalfield_problemspecificationset(problem, problemSpecification, err, error,)
Sets the problem specification for a classical field problem class. 
Contains information on an equations set. 
This module contains all string manipulation and transformation routines. 
subroutine, public laplace_equationssetspecificationset(equationsSet, specification, err, error,)
Sets the equation specification for a Laplace type of a classical field equations set...
subroutine, public classical_field_problem_setup(PROBLEM, PROBLEM_SETUP, ERR, ERROR,)
Sets up the problem for a classical field problem class. 
subroutine, public classical_field_post_solve(CONTROL_LOOP, SOLVER, ERR, ERROR,)
Sets up the output type for a classical field problem class. 
subroutine, public poisson_pre_solve(CONTROL_LOOP, SOLVER, ERR, ERROR,)
Sets up the Poisson problem pre solve. 
integer(intg), parameter equations_set_poisson_equation_type
integer(intg), parameter equations_set_laplace_equation_type
integer(intg), parameter problem_hj_equation_type
subroutine, public diffusion_problemspecificationset(problem, problemSpecification, err, error,)
Sets the problem specification for a diffusion equation problem. 
subroutine, public advectiondiffusion_boundaryconditionsanalyticcalculate(EQUATIONS_SET, BOUNDARY_CONDITIONS, ERR, ERROR,)
Calculates the analytic solution and sets the boundary conditions for an analytic problem...
Contains information on a control loop. 
subroutine, public laplace_equation_problem_setup(PROBLEM, PROBLEM_SETUP, ERR, ERROR,)
Sets up the Laplace problem. 
subroutine, public advectiondiffusion_problemspecificationset(problem, problemSpecification, err, error,)
Sets the problem specification for an advection diffusion problem type. 
This module provides an iso_varying_string module, conformant to the API specified in ISO/IEC 1539-2:...
subroutine, public classicalfield_finiteelementjacobianevaluate(EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
Evaluates the element Jacobian matrix for the given element number for a clasical field class finite ...
This module handles all classical field class routines. 
subroutine, public poisson_equationssetspecificationset(equationsSet, specification, err, error,)
Sets the equation specification for a Poisson equation type of a classical field equations set class...
subroutine, public poisson_problemspecificationset(problem, problemSpecification, err, error,)
Sets the problem specification for a Poisson equation type. 
subroutine, public advection_equationssetspecificationset(equationsSet, specification, err, error,)
Sets the equation specification for an advection type of a classical field equations set...
subroutine, public diffusion_finiteelementjacobianevaluate(EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
Evaluates the Jacobian element stiffness matrices for a diffusion equation finite element equations s...
This module handles all Poisson equations routines. 
subroutine, public laplace_equationssetsolutionmethodset(EQUATIONS_SET, SOLUTION_METHOD, ERR, ERROR,)
Sets/changes the solution method for a Laplace equation type of an classical field equations set clas...
This module handles all advection-diffusion equation routines. 
subroutine, public exits(NAME)
Records the exit out of the named procedure. 
subroutine, public classicalfield_boundaryconditionsanalyticcalculate(EQUATIONS_SET, BOUNDARY_CONDITIONS, ERR, ERROR,)
Sets the analytic boundary conditions for a classical field equation set class. 
This module contains all type definitions in order to avoid cyclic module references. 
subroutine, public advectiondiffusion_equationssetspecificationset(equationsSet, specification, err, error,)
Sets the equation specification for a diffusion equation type of a classical field equations set clas...
integer(intg), parameter equations_set_helmholtz_equation_type
subroutine, public advection_equationssetsetup(EQUATIONS_SET, EQUATIONS_SET_SETUP, ERR, ERROR,)
Sets up the diffusion equation type of a classical field equations set class. 
integer(intg), parameter equations_set_advection_equation_type
subroutine, public diffusion_analyticfunctionsevaluate(EQUATIONS_SET, ANALYTIC_FUNCTION_TYPE, X, TANGENTS, NORMAL, TIME, VARIABLE_TYPE, GLOBAL_DERIVATIVE, COMPONENT_NUMBER, ANALYTIC_PARAMETERS, MATERIALS_PARAMETERS, VALUE, ERR, ERROR,)
Evaluate the analytic solutions for a diffusion equation. 
This module contains all the low-level base routines e.g., all debug, control, and low-level communic...
subroutine, public advection_diffusion_pre_solve(CONTROL_LOOP, SOLVER, ERR, ERROR,)
Sets up the diffusion equations. 
subroutine, public classicalfield_finiteelementresidualevaluate(EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
Evaluates the element residual and rhs vectors for the given element number for a clasical field clas...
subroutine, public classicalfield_equationssetspecificationset(equationsSet, specification, err, error,)
Sets the equations set specification for a classical field equation set. 
This module handles all Helmholtz equations routines. 
subroutine, public poisson_equation_problem_setup(PROBLEM, PROBLEM_SETUP, ERR, ERROR,)
Sets up the Poisson problem. 
subroutine, public poisson_post_solve(CONTROL_LOOP, SOLVER, ERR, ERROR,)
Sets up the Poisson problem post solve. 
subroutine, public poisson_equation_equations_set_setup(EQUATIONS_SET, EQUATIONS_SET_SETUP, ERR, ERROR,)
Sets up the Poisson equation type of a classical field equations set class. 
subroutine, public diffusion_equation_equations_set_setup(EQUATIONS_SET, EQUATIONS_SET_SETUP, ERR, ERROR,)
Sets up the diffusion equation type of a classical field equations set class. 
subroutine, public poisson_equation_finite_element_calculate(EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
Calculates the element stiffness matrices and RHS for a Poisson equation finite element equations set...
subroutine, public classical_field_control_loop_post_loop(CONTROL_LOOP, ERR, ERROR,)
Executes after each loop of a control loop for bioelectric problems, i.e., after each time step for a...
subroutine, public diffusion_equation_finite_element_calculate(EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
Calculates the element stiffness matrices and RHS for a diffusion equation finite element equations s...
Contains information for a problem. 
subroutine, public classical_field_analytic_functions_evaluate(EQUATIONS_SET, EQUATIONS_TYPE, ANALYTIC_FUNCTION_TYPE, POSITION, TANGENTS, NORMAL, TIME, VARIABLE_TYPE, GLOBAL_DERIVATIVE, COMPONENT_NUMBER, ANALYTIC_PARAMETERS, MATERIALS_PARAMETERS, VALUE, ERR, ERROR,)
Evaluate the analytic solution for a classical field equations set. 
integer(intg), parameter equations_set_hj_equation_type
integer(intg), parameter equations_set_biharmonic_equation_type
subroutine, public diffusion_equationssetsolutionmethodset(EQUATIONS_SET, SOLUTION_METHOD, ERR, ERROR,)
Sets/changes the solution method for a diffusion equation type of an classical field equations set cl...
subroutine, public laplace_equation_equations_set_setup(EQUATIONS_SET, EQUATIONS_SET_SETUP, ERR, ERROR,)
Sets up the Laplace equation type of a classical field equations set class. 
integer(intg), parameter problem_helmholtz_equation_type
subroutine, public laplace_problemspecificationset(problem, problemSpecification, err, error,)
Sets the problem specification for a Laplace equation type. 
integer(intg), parameter equations_set_diffusion_equation_type
integer(intg), parameter problem_advection_diffusion_equation_type
integer(intg), parameter problem_poisson_equation_type
This module handles all reaction diffusion equation routines. 
subroutine, public classicalfield_equationssetsolutionmethodset(EQUATIONS_SET, SOLUTION_METHOD, ERR, ERROR,)
Sets/changes the solution method for a classical field equation set class. 
integer(intg), parameter equations_set_reaction_diffusion_equation_type
integer(intg), parameter problem_wave_equation_type
subroutine, public diffusion_equation_problem_setup(PROBLEM, PROBLEM_SETUP, ERR, ERROR,)
Sets up the diffusion problem. 
subroutine, public advection_diffusion_equation_problem_setup(PROBLEM, PROBLEM_SETUP, ERR, ERROR,)
Sets up the diffusion problem. 
subroutine, public advection_equation_finite_element_calculate(EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
Calculates the element stiffness matrices for an advection equation finite element equations set...
integer(intg), parameter equations_set_advection_diffusion_equation_type
subroutine, public laplaceequation_finiteelementcalculate(equationsSet, elementNumber, err, error,)
Calculates the element stiffness matrices and RHS for a Laplace equation finite element equations set...
Contains information on the setup information for an equations set. 
subroutine, public advection_equationssetsolutionmethodset(EQUATIONS_SET, SOLUTION_METHOD, ERR, ERROR,)
Sets/changes the solution method for an advection equation type of an classical field equations set c...
subroutine, public laplace_boundaryconditionsanalyticcalculate(EQUATIONS_SET, BOUNDARY_CONDITIONS, ERR, ERROR,)
Calculates the analytic solution and sets the boundary conditions for an analytic problem...
subroutine, public poisson_finiteelementjacobianevaluate(EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
Evaluates the Jacobian element stiffness matrices and RHS for a Poisson equation finite element equat...
subroutine, public errors(NAME, ERR, ERROR)
Records the exiting error of the subroutine. 
This module defines all constants shared across equations set routines. 
subroutine, public advectiondiffusion_equationssetsolnmethodset(EQUATIONS_SET, SOLUTION_METHOD, ERR, ERROR,)
Sets/changes the solution method for a diffusion equation type of an classical field equations set cl...
subroutine, public diffusion_finiteelementresidualevaluate(EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
Evaluates the residual element stiffness matrices and RHS for a Diffusion equation finite element equ...
subroutine, public advection_diffusion_post_solve(CONTROL_LOOP, SOLVER, ERR, ERROR,)
integer(intg), parameter equations_set_wave_equation_type
subroutine, public poisson_finiteelementresidualevaluate(EQUATIONS_SET, ELEMENT_NUMBER, ERR, ERROR,)
Evaluates the residual element stiffness matrices and RHS for a Poisson equation finite element equat...
subroutine, public advection_equation_problem_setup(PROBLEM, PROBLEM_SETUP, ERR, ERROR,)
Sets up the diffusion problem. 
integer(intg), parameter problem_advection_equation_type
subroutine, public advection_problemspecificationset(problem, problemSpecification, err, error,)
Sets the problem specification for an advection problem. 
Flags an error condition. 
subroutine, public poisson_boundaryconditionsanalyticcalculate(EQUATIONS_SET, BOUNDARY_CONDITIONS, ERR, ERROR,)
Calculates the analytic solution and sets the boundary conditions for an analytic problem...
subroutine, public diffusion_equation_post_solve(CONTROL_LOOP, SOLVER, ERR, ERROR,)
Sets up the diffusion problem post solve. 
This module handles all diffusion equation routines. 
subroutine, public diffusion_equationssetspecificationset(equationsSet, specification, err, error,)
Sets the equation specification for a diffusion equation type of a classical field equations set clas...
integer(intg), parameter problem_reaction_diffusion_equation_type
This module contains all kind definitions. 
integer(intg), parameter problem_diffusion_equation_type
subroutine, public classical_field_equations_set_setup(EQUATIONS_SET, EQUATIONS_SET_SETUP, ERR, ERROR,)
Sets up the equations set for a classical field equations set class.