22 use,
intrinsic :: iso_fortran_env
65 integer,
parameter,
public :: &
66 PSEUDO_TYPE_ULTRASOFT = 30, &
71 integer,
parameter,
public :: &
72 PSEUDO_STATUS_SUCCESS = 0, &
80 integer,
parameter,
public :: &
81 PSEUDO_FORMAT_FILE_NOT_FOUND = 773, &
95 integer,
parameter,
public :: &
96 PSEUDO_EXCHANGE_UNKNOWN = -2, &
99 integer,
parameter,
public :: &
100 PSEUDO_CORRELATION_UNKNOWN = -2, &
105 integer(int64) :: dummy
116 character(len=*),
intent(in) :: filename
121 subroutine pseudo_init(pseudo, filename, fmt, ierr)
125 type(pseudo_t),
intent(out) :: pseudo
126 character(len=*),
intent(in) :: filename
127 integer,
intent(in) :: fmt
128 integer,
intent(out) :: ierr
137 type(pseudo_t),
intent(inout) :: pseudo
146 type(pseudo_t),
intent(in) :: pseudo
155 type(pseudo_t),
intent(in) :: pseudo
165 type(
pseudo_t),
intent(in) :: pseudo
175 type(
pseudo_t),
intent(in) :: pseudo
184 type(
pseudo_t),
intent(in) :: pseudo
194 type(
pseudo_t),
intent(in) :: pseudo
203 type(
pseudo_t),
intent(in) :: pseudo
212 type(
pseudo_t),
intent(in) :: pseudo
221 type(
pseudo_t),
intent(in) :: pseudo
230 type(
pseudo_t),
intent(in) :: pseudo
239 type(
pseudo_t),
intent(in) :: pseudo
240 integer,
intent(in) :: l
250 type(
pseudo_t),
intent(in) :: pseudo
251 real(real64),
intent(out) :: grid
261 type(
pseudo_t),
intent(in) :: pseudo
262 real(real64),
intent(out) :: weight
272 type(
pseudo_t),
intent(in) :: pseudo
273 real(real64),
intent(out) :: local_potential
283 type(
pseudo_t),
intent(in) :: pseudo
284 integer,
intent(in) :: l
285 integer,
intent(in) :: ic
286 real(real64),
intent(out) :: projector
291 real(real64) function
pseudo_dij(pseudo, l, ic, jc)
296 type(
pseudo_t),
intent(in) :: pseudo
297 integer,
intent(in) :: l
298 integer,
intent(in) :: ic
299 integer,
intent(in) :: jc
309 type(
pseudo_t),
intent(in) :: pseudo
310 integer,
intent(in) :: l
311 real(real64),
intent(inout) :: radial_potential
321 type(
pseudo_t),
intent(in) :: pseudo
322 integer,
intent(in) :: l
323 real(real64),
intent(out) :: radial_function
333 type(
pseudo_t),
intent(in) :: pseudo
334 real(real64),
intent(out) :: nlcc_density
344 type(
pseudo_t),
intent(in) :: pseudo
345 real(real64),
intent(out) :: density
354 type(
pseudo_t),
intent(in) :: pseudo
364 type(
pseudo_t),
intent(in) :: pseudo
365 integer,
intent(in) :: index
366 integer,
intent(out) :: n
367 integer,
intent(out) :: l
368 real(real64),
intent(out) :: occ
369 real(real64),
intent(out) :: wf
378 type(
pseudo_t),
intent(in) :: pseudo
387 type(
pseudo_t),
intent(in) :: pseudo
396 type(
pseudo_t),
intent(in) :: pseudo
397 integer,
intent(in) :: l
398 integer,
intent(in) :: ic
407 type(
pseudo_t),
intent(in) :: pseudo
408 integer,
intent(in) :: ii
418 type(
pseudo_t),
intent(in) :: pseudo
421 integer function pseudo_has_nlcc_low(pseudo)
425 type(
pseudo_t),
intent(in) :: pseudo
426 end function pseudo_has_nlcc_low
436 type(
pseudo_t),
intent(in) :: pseudo
439 integer function pseudo_has_density_low(pseudo)
444 end function pseudo_has_density_low
454 logical pure function pseudo_has_total_angular_momentum(pseudo)
455 type(
pseudo_t),
intent(in) :: pseudo
458 integer pure function pseudo_has_total_angular_momentum_low(pseudo)
462 type(
pseudo_t),
intent(in) :: pseudo
463 end function pseudo_has_total_angular_momentum_low
473 type(
pseudo_t),
intent(in) :: pseudo
474 integer,
intent(in) :: l
477 integer function pseudo_has_radial_function_low(pseudo, l)
481 type(
pseudo_t),
intent(in) :: pseudo
482 integer,
intent(in) :: l
483 end function pseudo_has_radial_function_low
integer, parameter, public pseudo_type_kleinman_bylander
logical function, public pseudo_has_radial_function(pseudo, l)
integer, parameter, public pseudo_format_qso
logical function, public pseudo_has_density(pseudo)
integer, parameter, public pseudo_format_hgh
integer, parameter, public pseudo_format_upf2
integer, parameter, public pseudo_type_paw
logical function, public pseudo_has_nlcc(pseudo)
integer, parameter, public pseudo_format_cpi
integer, parameter, public pseudo_status_unsupported_type
integer, parameter, public pseudo_status_file_not_found
integer, parameter, public pseudo_type_semilocal
integer, parameter, public pseudo_format_psp8
integer, parameter, public pseudo_status_unsupported_type_ultrasoft
logical pure function, public pseudo_has_total_angular_momentum(pseudo)
integer, parameter, public pseudo_format_psf
integer, parameter, public pseudo_status_unknown_format
integer, parameter, public pseudo_status_unsupported_type_paw
integer, parameter, public pseudo_format_fhi
integer, parameter, public pseudo_correlation_any
integer, parameter, public pseudo_format_upf1
integer, parameter, public pseudo_format_unknown
integer, parameter, public pseudo_status_format_not_supported
integer, parameter, public pseudo_exchange_any
integer, parameter, public pseudo_format_psml