(git:6a2e663)
xc_rho_set_types Module Reference

contains the structure More...

Functions/Subroutines

subroutine, public xc_rho_set_create (rho_set, local_bounds, rho_cutoff, drho_cutoff, tau_cutoff)
 allocates and does (minimal) initialization of a rho_set More...
 
subroutine, public xc_rho_set_release (rho_set, pw_pool)
 releases the given rho_set More...
 
subroutine, public xc_rho_set_get (rho_set, can_return_null, rho, drho, norm_drho, rhoa, rhob, norm_drhoa, norm_drhob, rho_1_3, rhoa_1_3, rhob_1_3, laplace_rho, laplace_rhoa, laplace_rhob, drhoa, drhob, rho_cutoff, drho_cutoff, tau_cutoff, tau, tau_a, tau_b, local_bounds)
 returns the various attributes of rho_set More...
 
subroutine, public xc_rho_set_recover_pw (rho_set, pw_grid, pw_pool, owns_data, rho, drho, norm_drho, rhoa, rhob, norm_drhoa, norm_drhob, rho_1_3, rhoa_1_3, rhob_1_3, laplace_rho, laplace_rhoa, laplace_rhob, drhoa, drhob, tau, tau_a, tau_b)
 Shifts association of the requested array to a pw grid Requires that the corresponding component of rho_set is associated If owns_data returns TRUE, the caller has to allocate the data later It is allowed to task for only one component per call. In case of drho, the array is allocated if not internally available and calculated from drhoa and drhob. More...
 
subroutine, public xc_rho_set_update (rho_set, rho_r, rho_g, tau, needs, xc_deriv_method_id, xc_rho_smooth_id, pw_pool)
 updates the given rho set with the density given by rho_r (and rho_g). The rho set will contain the components specified in needs More...
 

Detailed Description

contains the structure

History
11.2003 created [fawzi]
Author
fawzi

Function/Subroutine Documentation

◆ xc_rho_set_create()

subroutine, public xc_rho_set_types::xc_rho_set_create ( type(xc_rho_set_type), intent(inout)  rho_set,
integer, dimension(2, 3), intent(in)  local_bounds,
real(kind=dp), intent(in), optional  rho_cutoff,
real(kind=dp), intent(in), optional  drho_cutoff,
real(kind=dp), intent(in), optional  tau_cutoff 
)

allocates and does (minimal) initialization of a rho_set

Parameters
rho_setthe structure to allocate
local_bounds...
rho_cutoff...
drho_cutoff...
tau_cutoff...

Definition at line 109 of file xc_rho_set_types.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ xc_rho_set_release()

subroutine, public xc_rho_set_types::xc_rho_set_release ( type(xc_rho_set_type), intent(inout)  rho_set,
type(pw_pool_type), optional, pointer  pw_pool 
)

releases the given rho_set

Parameters
rho_setthe structure to release
pw_poolthe plae where to give back the arrays

Definition at line 128 of file xc_rho_set_types.F.

Here is the caller graph for this function:

◆ xc_rho_set_get()

subroutine, public xc_rho_set_types::xc_rho_set_get ( type(xc_rho_set_type), intent(in)  rho_set,
logical, intent(in), optional  can_return_null,
real(kind=dp), dimension(:, :, :), optional, pointer  rho,
type(cp_3d_r_cp_type), dimension(3), optional  drho,
real(kind=dp), dimension(:, :, :), optional, pointer  norm_drho,
real(kind=dp), dimension(:, :, :), optional, pointer  rhoa,
real(kind=dp), dimension(:, :, :), optional, pointer  rhob,
real(kind=dp), dimension(:, :, :), optional, pointer  norm_drhoa,
real(kind=dp), dimension(:, :, :), optional, pointer  norm_drhob,
real(kind=dp), dimension(:, :, :), optional, pointer  rho_1_3,
real(kind=dp), dimension(:, :, :), optional, pointer  rhoa_1_3,
real(kind=dp), dimension(:, :, :), optional, pointer  rhob_1_3,
real(kind=dp), dimension(:, :, :), optional, pointer  laplace_rho,
real(kind=dp), dimension(:, :, :), optional, pointer  laplace_rhoa,
real(kind=dp), dimension(:, :, :), optional, pointer  laplace_rhob,
type(cp_3d_r_cp_type), dimension(3), optional  drhoa,
type(cp_3d_r_cp_type), dimension(3), optional  drhob,
real(kind=dp), intent(out), optional  rho_cutoff,
real(kind=dp), intent(out), optional  drho_cutoff,
real(kind=dp), intent(out), optional  tau_cutoff,
real(kind=dp), dimension(:, :, :), optional, pointer  tau,
real(kind=dp), dimension(:, :, :), optional, pointer  tau_a,
real(kind=dp), dimension(:, :, :), optional, pointer  tau_b,
integer, dimension(2, 3), intent(out), optional  local_bounds 
)

returns the various attributes of rho_set

Parameters
rho_setthe object you want info about
can_return_nullif true the object returned can be null, if false (the default) it stops with an error if a requested component is not associated
rho...
drho...
norm_drho...
rhoa...
rhob...
norm_drhoa...
norm_drhob...
rho_1_3...
rhoa_1_3...
rhob_1_3...
laplace_rho...
laplace_rhoa...
laplace_rhob...
drhoa...
drhob...
rho_cutoff...
drho_cutoff...
tau_cutoff...
tau...
tau_a...
tau_b...
local_bounds...

Definition at line 277 of file xc_rho_set_types.F.

◆ xc_rho_set_recover_pw()

subroutine, public xc_rho_set_types::xc_rho_set_recover_pw ( type(xc_rho_set_type)  rho_set,
type(pw_grid_type), intent(in), pointer  pw_grid,
type(pw_pool_type), intent(in), pointer  pw_pool,
logical, intent(out)  owns_data,
type(pw_r3d_rs_type), optional, pointer  rho,
type(pw_r3d_rs_type), dimension(3), intent(out), optional  drho,
type(pw_r3d_rs_type), optional, pointer  norm_drho,
type(pw_r3d_rs_type), optional, pointer  rhoa,
type(pw_r3d_rs_type), optional, pointer  rhob,
type(pw_r3d_rs_type), optional, pointer  norm_drhoa,
type(pw_r3d_rs_type), optional, pointer  norm_drhob,
type(pw_r3d_rs_type), optional, pointer  rho_1_3,
type(pw_r3d_rs_type), optional, pointer  rhoa_1_3,
type(pw_r3d_rs_type), optional, pointer  rhob_1_3,
type(pw_r3d_rs_type), optional, pointer  laplace_rho,
type(pw_r3d_rs_type), optional, pointer  laplace_rhoa,
type(pw_r3d_rs_type), optional, pointer  laplace_rhob,
type(pw_r3d_rs_type), dimension(3), intent(out), optional  drhoa,
type(pw_r3d_rs_type), dimension(3), intent(out), optional  drhob,
type(pw_r3d_rs_type), optional, pointer  tau,
type(pw_r3d_rs_type), optional, pointer  tau_a,
type(pw_r3d_rs_type), optional, pointer  tau_b 
)

Shifts association of the requested array to a pw grid Requires that the corresponding component of rho_set is associated If owns_data returns TRUE, the caller has to allocate the data later It is allowed to task for only one component per call. In case of drho, the array is allocated if not internally available and calculated from drhoa and drhob.

Parameters
rho_setthe object you want info about
pw_grid...
pw_pool...
owns_data...
rho...
drho...
norm_drho...
rhoa...
rhob...
norm_drhoa...
norm_drhob...
rho_1_3...
rhoa_1_3...
rhob_1_3...
laplace_rho...
laplace_rhoa...
laplace_rhob...
drhoa...
drhob...
tau...
tau_a...
tau_b...

Definition at line 417 of file xc_rho_set_types.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ xc_rho_set_update()

subroutine, public xc_rho_set_types::xc_rho_set_update ( type(xc_rho_set_type), intent(inout)  rho_set,
type(pw_r3d_rs_type), dimension(:), intent(in)  rho_r,
type(pw_c1d_gs_type), dimension(:), pointer  rho_g,
type(pw_r3d_rs_type), dimension(:), intent(in), pointer  tau,
type(xc_rho_cflags_type), intent(in)  needs,
integer, intent(in)  xc_deriv_method_id,
integer, intent(in)  xc_rho_smooth_id,
type(pw_pool_type), pointer  pw_pool 
)

updates the given rho set with the density given by rho_r (and rho_g). The rho set will contain the components specified in needs

Parameters
rho_setthe rho_set to update
rho_rthe new density (in r space)
rho_gthe new density (in g space, needed for some derivatives)
tau...
needsthe components of rho that are needed
xc_deriv_method_id...
xc_rho_smooth_id...
pw_poolpool for the allocation of pw and cr3d

Definition at line 689 of file xc_rho_set_types.F.

Here is the call graph for this function:
Here is the caller graph for this function: