Procedures to handle the PSML pseudopotential format.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public, | parameter | :: | dp | = | selected_real_kind(14) | |
| logical, | public | :: | global_debug | = | .false. | ||
| logical, | public | :: | global_use_effective_range | = | .true. | ||
| character(len=1), | public, | dimension(0:4) | :: | sym | = | (/"s", "p", "d", "f", "g"/) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in), | target | :: | ps | ||
| integer, | intent(in), | optional | :: | indexes_in(:) | ||
| integer, | intent(in), | optional | :: | l | ||
| real(kind=dp), | intent(in), | optional | :: | j | ||
| integer, | intent(in), | optional | :: | n | ||
| integer, | intent(in), | optional | :: | set | ||
| integer, | intent(out), | optional, | allocatable | :: | indexes(:) | |
| integer, | intent(out), | optional | :: | number |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in), | target | :: | ps | ||
| integer, | intent(in), | optional | :: | indexes_in(:) | ||
| integer, | intent(in), | optional | :: | l | ||
| real(kind=dp), | intent(in), | optional | :: | j | ||
| integer, | intent(in), | optional | :: | seq | ||
| integer, | intent(in), | optional | :: | set | ||
| integer, | intent(out), | optional, | allocatable | :: | indexes(:) | |
| integer, | intent(out), | optional | :: | number |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in), | target | :: | ps | ||
| integer, | intent(in), | optional | :: | indexes_in(:) | ||
| integer, | intent(in), | optional | :: | l | ||
| real(kind=dp), | intent(in), | optional | :: | j | ||
| integer, | intent(in), | optional | :: | n | ||
| integer, | intent(in), | optional | :: | set | ||
| integer, | intent(out), | optional, | allocatable | :: | indexes(:) | |
| integer, | intent(out), | optional | :: | number |
Returns the library version in integer format
Computes the value of the valence charge at r @param ps is a handle to the psml information @param r is the radius It returns the valence charge density integrated over solid angle, so that Q_val = int{ valrr }
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| real(kind=dp), | intent(in) | :: | r |
Computes the value of the pseudo-core charge at r @param ps is a handle to the psml information @param r is the radius It returns the pseudo-core charge density integrated over solid angle, so that Q_core = int{ valrr }
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| real(kind=dp), | intent(in) | :: | r |
Computes the value of the valence kinetic energy density at r @param ps is a handle to the psml information @param r is the radius ??? It returns the valence kinetic energy density integrated over ??? solid angle, so that KE_val = int{ valrr }
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| real(kind=dp), | intent(in) | :: | r |
Computes the value of the pseudo-core kinetic energy density at r @param ps is a handle to the psml information @param r is the radius ??? It returns the pseudo-core kinetic energy density integrated over ??? solid angle, so that Q_core = int{ valrr }
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| real(kind=dp), | intent(in) | :: | r |
Returns the annotation associated to a grid. If a radial function handle is given, the annotation for that radial function's grid is returned. Otherwise, the return value is the annotation for the global grid. If there is no appropriate annotation, an empty structure is returned. @param ps is a handle to the psml information @param radfunc is a handle to a radial function structure
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| type(ps_radfunc_t), | intent(in), | optional | :: | radfunc |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_radfunc_t), | intent(in) | :: | f | |||
| real(kind=dp), | intent(in) | :: | r |
Evaluator by storage index
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| integer, | intent(in) | :: | i | |||
| real(kind=dp), | intent(in) | :: | r |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| integer, | intent(in) | :: | i | |||
| real(kind=dp), | intent(in) | :: | r |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| real(kind=dp), | intent(in) | :: | r |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| integer, | intent(in) | :: | i | |||
| real(kind=dp), | intent(in) | :: | r |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | str | |||
| character(len=*), | intent(in) | :: | name |
Returns the maximum radius in a radfunc's data
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_radfunc_t), | intent(in) | :: | f |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_radfunc_t), | intent(in) | :: | f | |||
| real(kind=dp), | intent(in) | :: | r | |||
| logical, | intent(in) | :: | debug |
Sets various parameters for the operation of the evaluator
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in), | optional | :: | quality_level | ||
| logical, | intent(in), | optional | :: | debug | ||
| logical, | intent(in), | optional | :: | use_effective_range | ||
| procedure(interp), | optional | :: | custom_interpolator |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| character(len=*), | intent(out), | optional | :: | uuid | ||
| character(len=*), | intent(out), | optional | :: | version | ||
| character(len=*), | intent(out), | optional | :: | namespace | ||
| type(assoc_list_t), | intent(out), | optional | :: | annotation |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| integer, | intent(in) | :: | level | |||
| character(len=*), | intent(out), | optional | :: | creator | ||
| character(len=*), | intent(out), | optional | :: | date | ||
| type(assoc_list_t), | intent(out), | optional | :: | annotation | ||
| integer, | intent(out), | optional | :: | number_of_input_files |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| character(len=*), | intent(out), | optional | :: | atomic_symbol | ||
| character(len=*), | intent(out), | optional | :: | atomic_label | ||
| real(kind=dp), | intent(out), | optional | :: | atomic_number | ||
| real(kind=dp), | intent(out), | optional | :: | z_pseudo | ||
| character(len=*), | intent(out), | optional | :: | pseudo_flavor | ||
| character(len=*), | intent(out), | optional | :: | relativity | ||
| logical, | intent(out), | optional | :: | spin_dft | ||
| logical, | intent(out), | optional | :: | core_corrections | ||
| logical, | intent(out), | optional | :: | meta_gga | ||
| type(assoc_list_t), | intent(out), | optional | :: | annotation |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| integer, | intent(out), | optional | :: | nshells | ||
| real(kind=dp), | intent(out), | optional | :: | charge | ||
| type(assoc_list_t), | intent(out), | optional | :: | annotation |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| integer, | intent(in) | :: | i | |||
| integer, | intent(out), | optional | :: | n | ||
| integer, | intent(out), | optional | :: | l | ||
| real(kind=dp), | intent(out), | optional | :: | occupation | ||
| real(kind=dp), | intent(out), | optional | :: | occ_up | ||
| real(kind=dp), | intent(out), | optional | :: | occ_down |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| real(kind=dp), | intent(out), | optional | :: | total_charge | ||
| character(len=*), | intent(out), | optional | :: | is_unscreening_charge | ||
| character(len=*), | intent(out), | optional | :: | rescaled_to_z_pseudo | ||
| type(assoc_list_t), | intent(out), | optional | :: | annotation | ||
| type(ps_radfunc_t), | intent(out), | optional | :: | func |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| real(kind=dp), | intent(out), | optional | :: | rc | ||
| integer, | intent(out), | optional | :: | nderivs | ||
| type(assoc_list_t), | intent(out), | optional | :: | annotation | ||
| type(ps_radfunc_t), | intent(out), | optional | :: | func |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| type(assoc_list_t), | intent(out), | optional | :: | annotation | ||
| type(ps_radfunc_t), | intent(out), | optional | :: | func |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| real(kind=dp), | intent(out), | optional | :: | rc | ||
| integer, | intent(out), | optional | :: | nderivs | ||
| type(assoc_list_t), | intent(out), | optional | :: | annotation | ||
| type(ps_radfunc_t), | intent(out), | optional | :: | func |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| type(assoc_list_t), | intent(out), | optional | :: | annotation | ||
| integer, | intent(out), | optional | :: | n_libxc_functionals |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| integer, | intent(in) | :: | i | |||
| character(len=*), | intent(out), | optional | :: | name | ||
| integer, | intent(out), | optional | :: | code | ||
| character(len=*), | intent(out), | optional | :: | type | ||
| real(kind=dp), | intent(out), | optional | :: | weight |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in), | target | :: | ps | ||
| integer, | intent(in) | :: | i | |||
| integer, | intent(out), | optional | :: | l | ||
| real(kind=dp), | intent(out), | optional | :: | j | ||
| integer, | intent(out), | optional | :: | n | ||
| real(kind=dp), | intent(out), | optional | :: | rc | ||
| integer, | intent(out), | optional | :: | set | ||
| character(len=*), | intent(out), | optional | :: | flavor | ||
| real(kind=dp), | intent(out), | optional | :: | eref | ||
| type(assoc_list_t), | intent(out), | optional | :: | annotation | ||
| type(ps_radfunc_t), | intent(out), | optional | :: | func |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in), | target | :: | ps | ||
| integer, | intent(in), | optional | :: | indexes_in(:) | ||
| integer, | intent(in), | optional | :: | l | ||
| real(kind=dp), | intent(in), | optional | :: | j | ||
| integer, | intent(in), | optional | :: | n | ||
| integer, | intent(in), | optional | :: | set | ||
| integer, | intent(out), | optional, | allocatable | :: | indexes(:) | |
| integer, | intent(out), | optional | :: | number |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_radfunc_t), | intent(in) | :: | f | |||
| real(kind=dp), | intent(out), | allocatable | :: | raw_r(:) | ||
| real(kind=dp), | intent(out), | allocatable | :: | raw_data(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in), | target | :: | ps | ||
| integer, | intent(in), | optional | :: | indexes_in(:) | ||
| integer, | intent(in), | optional | :: | l | ||
| real(kind=dp), | intent(in), | optional | :: | j | ||
| integer, | intent(in), | optional | :: | n | ||
| integer, | intent(in), | optional | :: | set | ||
| integer, | intent(out), | optional, | allocatable | :: | indexes(:) | |
| integer, | intent(out), | optional | :: | number |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in), | target | :: | ps | ||
| integer, | intent(in) | :: | i | |||
| integer, | intent(out), | optional | :: | l | ||
| real(kind=dp), | intent(out), | optional | :: | j | ||
| integer, | intent(out), | optional | :: | n | ||
| integer, | intent(out), | optional | :: | set | ||
| real(kind=dp), | intent(out), | optional | :: | energy_level | ||
| type(assoc_list_t), | intent(out), | optional | :: | annotation | ||
| type(ps_radfunc_t), | intent(out), | optional | :: | func |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in) | :: | ps | |||
| character(len=*), | intent(out), | optional | :: | type | ||
| type(assoc_list_t), | intent(out), | optional | :: | annotation | ||
| type(ps_radfunc_t), | intent(out), | optional | :: | func | ||
| logical, | intent(out), | optional | :: | has_local_charge | ||
| type(ps_radfunc_t), | intent(out), | optional | :: | func_local_charge |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in), | target | :: | ps | ||
| integer, | intent(in), | optional | :: | indexes_in(:) | ||
| integer, | intent(in), | optional | :: | l | ||
| real(kind=dp), | intent(in), | optional | :: | j | ||
| integer, | intent(in), | optional | :: | seq | ||
| integer, | intent(in), | optional | :: | set | ||
| integer, | intent(out), | optional, | allocatable | :: | indexes(:) | |
| integer, | intent(out), | optional | :: | number |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ps_t), | intent(in), | target | :: | ps | ||
| integer, | intent(in) | :: | i | |||
| integer, | intent(out), | optional | :: | l | ||
| real(kind=dp), | intent(out), | optional | :: | j | ||
| integer, | intent(out), | optional | :: | seq | ||
| integer, | intent(out), | optional | :: | set | ||
| real(kind=dp), | intent(out), | optional | :: | ekb | ||
| real(kind=dp), | intent(out), | optional | :: | eref | ||
| character(len=*), | intent(out), | optional | :: | type | ||
| type(assoc_list_t), | intent(out), | optional | :: | annotation | ||
| type(ps_radfunc_t), | intent(out), | optional | :: | func |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | i | |||
| integer, | intent(in) | :: | n | |||
| character(len=*), | intent(in) | :: | str |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| logical, | intent(in) | :: | cond | |||
| character(len=*) | :: | message |