Test standard constants and verify accuracy to type-level precision
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module.
subroutine testConstants
!! Test standard constants and verify accuracy to type-level precision
character(41),parameter::cPI = '3.141592653589793238462643383279502884197'
character(41),parameter::cE = '2.718281828459045235360287471352662497757'
integer::dPI,dE
dPI = checkPrecision(PI,cPI)
dE = checkPrecision( E,cE )
if( any([dPI,dE]<precision(1.0_wp)-2) ) error stop "Failed real constants precision check"
end subroutine testConstants