GRASP rci-qed
|
Functions/Subroutines | |
program | matrixelements_hydrogenic |
subroutine | verify_dcb (ic, ir, reference) |
subroutine | verify_dcbmsvp (ic, ir, reference) |
subroutine | verify_se_mohr (ic, reference) |
logical function | getenv_allocating (variable_name, value) |
Fetches an environment variable. More... | |
logical function matrixelements_hydrogenic::getenv_allocating | ( | character(*), intent(in) | variable_name, |
character(:), intent(inout), allocatable | value | ||
) |
Fetches an environment variable.
If it was able to fetch the variable value, returns .true.
and sets value
to the value ([re]allocating if necessary). Returns .false.
if the variable is not defined
Under the hood it calls get_environment_variable
, but it properly allocates or re-allocates the value
to match the actual length of the environment variable.
TODO: For this to be a proper library function, it should be implemented as an interface with additional methods to handle pointers and fixed-length strings.
NOTE: It appears that this implementation does not work with GFortran 4.8 and 4.9, probably due to a compiler bug (value
in the caller context does not get set properly, even though it looks fine in getenv_allocating
). It works with GFortran 5.5.0, but it is unknown if which 5.x version fixed the issue.
program matrixelements_hydrogenic | ( | ) |
subroutine matrixelements_hydrogenic::verify_dcb | ( | integer, intent(in) | ic, |
integer, intent(in) | ir, | ||
real(real64), intent(in) | reference | ||
) |
subroutine matrixelements_hydrogenic::verify_dcbmsvp | ( | integer, intent(in) | ic, |
integer, intent(in) | ir, | ||
real(real64), intent(in) | reference | ||
) |
subroutine matrixelements_hydrogenic::verify_se_mohr | ( | integer, intent(in) | ic, |
real(real64), intent(in) | reference | ||
) |