23 #include "./base/base_uses.f90"
29 CHARACTER(len=*),
PARAMETER,
PRIVATE :: moduleN =
'xc_write_output'
42 INTEGER,
INTENT(IN) :: iounit
43 TYPE(section_vals_type),
POINTER :: xc_section
44 LOGICAL,
INTENT(IN) :: lsd
46 CHARACTER(LEN=2*default_string_length) :: shortform
47 CHARACTER(LEN=:),
ALLOCATABLE :: reference
48 INTEGER :: ifun, il, myfun
49 TYPE(section_vals_type),
POINTER :: xc_fun, xc_fun_section
65 IF (.NOT.
ASSOCIATED(xc_fun))
EXIT
67 ALLOCATE (
CHARACTER(LEN=libxc_get_reference_length(xc_fun, lsd)) :: reference)
69 ALLOCATE (
CHARACTER(LEN=20*default_string_length) :: reference)
72 WRITE (iounit, fmt=
"(' FUNCTIONAL| ',a,':')") &
73 trim(xc_fun%section%name)
74 DO il = 1, len_trim(reference), 67
75 WRITE (iounit, fmt=
"(' FUNCTIONAL| ',a67)") reference(il:)
77 DEALLOCATE (reference)
80 WRITE (iounit, fmt=
"(' FUNCTIONAL| NO EXCHANGE-CORRELATION FUNCTIONAL USED.')")
Defines the basic variable types.
integer, parameter, public default_string_length
subroutine, public xc_functional_get_info(functional, lsd, reference, shortform, needs, max_deriv, print_warn)
get the information about the given functional
calculates a functional from libxc and its derivatives
logical function, public libxc_check_existence_in_libxc(libxc_params)
This function checks whether a functional name belongs to LibXC.
integer function, public libxc_get_reference_length(libxc_params, lsd)
This function returns the maximum length of the reference string for a given LibXC functional.
Writes information on XC functionals to output.
subroutine, public xc_write(iounit, xc_section, lsd)
...