diff --git a/IPhreeqc.h b/IPhreeqc.h index 93adac90..4c04c426 100644 --- a/IPhreeqc.h +++ b/IPhreeqc.h @@ -1672,9 +1672,9 @@ Headings * FUNCTION SetBasicFortranCallback(ID,FCN) * INTEGER(KIND=4), INTENT(IN) :: ID * INTERFACE - * DOUBLE PRECISION FUNCTION FCN(x1, x2, str) - * DOUBLE PRECISION, INTENT(in) :: x1 - * DOUBLE PRECISION, INTENT(in) :: x2 + * real(kind=8) FUNCTION FCN(x1, x2, str) + * real(kind=8), INTENT(in) :: x1 + * real(kind=8), INTENT(in) :: x2 * CHARACTER(*), INTENT(in) :: str * END FUNCTION * END INTERFACE diff --git a/IPhreeqc.hpp b/IPhreeqc.hpp index 22bdf150..c79957b5 100644 --- a/IPhreeqc.hpp +++ b/IPhreeqc.hpp @@ -713,7 +713,7 @@ public: * Sets a Fortran callback function for Basic programs. The syntax for the Basic command is * 10 result = CALLBACK(x1, x2, string$) * The syntax for the Fortran function is - * double precision my_callback(x1, x2, string), where x1 and x2 are double precision and string is a character variable. + * real(kind=8) my_callback(x1, x2, string), where x1 and x2 are real(kind=8) and string is a character variable. * @param fcn The name of a user-defined function. * @see SetBasicCallback */ diff --git a/IPhreeqc_interface.F90 b/IPhreeqc_interface.F90 index 6c726c83..45e6db0c 100644 --- a/IPhreeqc_interface.F90 +++ b/IPhreeqc_interface.F90 @@ -688,7 +688,7 @@ INTEGER FUNCTION GetSelectedOutputValue(id, row, col, vtype, dvalue, svalue, sle END INTERFACE INTEGER, INTENT(in) :: id, row, col INTEGER, INTENT(out) :: vtype - DOUBLE PRECISION, INTENT(out) :: dvalue + real(kind=8), INTENT(out) :: dvalue CHARACTER(len=*), INTENT(out) :: svalue INTEGER, INTENT(out), OPTIONAL :: slength INTEGER :: sz, sz_fortran @@ -898,9 +898,9 @@ INTEGER FUNCTION SetBasicFortranCallback(id, fcn) IMPLICIT NONE INTEGER, INTENT(in) :: id INTERFACE - DOUBLE PRECISION FUNCTION fcn(x1, x2, str, l) + real(kind=8) FUNCTION fcn(x1, x2, str, l) INTEGER, INTENT(in) :: l - DOUBLE PRECISION, INTENT(in) :: x1, x2 + real(kind=8), INTENT(in) :: x1, x2 CHARACTER, INTENT(in) :: str(*) END FUNCTION fcn END INTERFACE @@ -908,9 +908,9 @@ INTEGER FUNCTION SetBasicFortranCallback(id, fcn) END INTERFACE INTEGER, INTENT(in) :: id INTERFACE - DOUBLE PRECISION FUNCTION fcn(x1, x2, str, l) + real(kind=8) FUNCTION fcn(x1, x2, str, l) INTEGER, INTENT(in) :: l - DOUBLE PRECISION, INTENT(in) :: x1, x2 + real(kind=8), INTENT(in) :: x1, x2 CHARACTER, INTENT(in) :: str(*) END FUNCTION fcn END INTERFACE diff --git a/phreeqcpp/cl1.cpp b/phreeqcpp/cl1.cpp index 107a8ad9..b0dd1be4 100644 --- a/phreeqcpp/cl1.cpp +++ b/phreeqcpp/cl1.cpp @@ -142,7 +142,7 @@ cl1(int k, int l, int m, int n, /* AT LEAST NKLMD COLUMNS USED FOR WORKSPACE. */ /* S INTEGER ARRAY OF SIZE AT LEAST KLMD, USED FOR */ /* WORKSPACE. */ -/* DOUBLE PRECISION DBLE */ +/* real(kind=8) DBLE */ /* REAL */ /* INITIALIZATION. */ diff --git a/phreeqcpp/sundialsmath.h b/phreeqcpp/sundialsmath.h index 59e49d3a..4f240e81 100644 --- a/phreeqcpp/sundialsmath.h +++ b/phreeqcpp/sundialsmath.h @@ -13,10 +13,10 @@ * listed here work with the type realtype as defined in * * sundialstypes.h. * * To do single precision floating point arithmetic, set the type * - * realtype to be float. To do double precision arithmetic, set * + * realtype to be float. To do real(kind=8) arithmetic, set * * the type realtype to be double. The default implementations * * for RPowerR and RSqrt call standard math library functions * - * which do double precision arithmetic. If this is unacceptable * + * which do real(kind=8) arithmetic. If this is unacceptable * * when realtype is float, then the user should re-implement * * these two routines by calling single precision routines * * available on his/her machine. * diff --git a/phreeqcpp/sundialstypes.h b/phreeqcpp/sundialstypes.h index 1003410f..ddf6c84a 100644 --- a/phreeqcpp/sundialstypes.h +++ b/phreeqcpp/sundialstypes.h @@ -25,7 +25,7 @@ * The types for realtype and integertype below have been set to * * double and long int, respectively. A user should modify these * * type declarations as he/she sees fit. For example, if a user * - * wants the work with type float because double precision * + * wants the work with type float because real(kind=8) * * floating point arithmetic is too expensive on the user's * * machine, then the definition below should be changed to: * * *