29#include "../base/base_uses.f90"
35 INTEGER,
PARAMETER,
PUBLIC :: &
56 INTEGER,
PARAMETER :: max_label_length = 12
58 LOGICAL,
PARAMETER :: debug_this_module = .false.
60 CHARACTER(len=*),
PARAMETER,
PRIVATE :: modulen =
'xc_derivative_desc'
72 CHARACTER(LEN=*),
INTENT(IN) :: desc
75 SELECT CASE (trim(desc))
109 cpabort(
"Unknown derivative variable: "//desc)
120 INTEGER,
INTENT(IN) :: id
121 CHARACTER(LEN=MAX_LABEL_LENGTH) :: desc
145 desc =
"laplace_rhoa"
147 desc =
"laplace_rhob"
157 cpabort(
"Unknown derivative id!")
168 INTEGER,
DIMENSION(:),
INTENT(IN) :: desc
169 INTEGER,
DIMENSION(:),
POINTER :: split_desc
171 INTEGER,
ALLOCATABLE,
DIMENSION(:) :: indices
173 ALLOCATE (split_desc(
SIZE(desc)))
174 IF (
SIZE(desc) > 0)
THEN
175 ALLOCATE (indices(
SIZE(desc)))
177 CALL sort(split_desc,
SIZE(desc), indices)
189 INTEGER,
DIMENSION(:),
INTENT(IN) :: desc
190 INTEGER,
ALLOCATABLE,
DIMENSION(:),
INTENT(OUT) :: split_desc
192 INTEGER,
ALLOCATABLE,
DIMENSION(:) :: indices
194 ALLOCATE (split_desc(
SIZE(desc)))
195 IF (
SIZE(desc) > 0)
THEN
196 ALLOCATE (indices(
SIZE(desc)))
198 CALL sort(split_desc,
SIZE(desc), indices)
All kind of helpful little routines.
Module with functions to handle derivative descriptors. derivative description are strings have the f...
integer, parameter, public deriv_norm_drho
integer, parameter, public deriv_laplace_rhob
integer, parameter, public deriv_gamma
integer, parameter, public deriv_norm_drhoa
integer, parameter, public deriv_rhob
integer, parameter, public deriv_gamma_aa
integer, parameter, public deriv_rhoa
integer, parameter, public deriv_tau
integer, parameter, public deriv_tau_b
subroutine, public standardize_desc(desc, split_desc)
...
integer, parameter, public deriv_tau_a
integer, parameter, public deriv_laplace_rhoa
subroutine, public create_split_desc(desc, split_desc)
...
integer function, public desc_to_id(desc)
...
integer, parameter, public deriv_rho
integer, parameter, public deriv_gamma_bb
integer, parameter, public deriv_norm_drhob
character(len=max_label_length) function, public id_to_desc(id)
...
integer, parameter, public deriv_gamma_ab
integer, parameter, public deriv_laplace_rho