## Documentation for module rs_methods

numerical operations on real-space grid

source: rs_methods.F

#### public Subroutines/Functions:

SUBROUTINE
derive_fdm_cd3 (f, df, rs_grid)
2nd order finite difference derivative of a function on realspace grid
SUBROUTINE
derive_fdm_cd5 (f, df, rs_grid)
4th order finite difference derivative of a function on realspace grid
SUBROUTINE
derive_fdm_cd7 (f, df, rs_grid)
6th order finite difference derivative of a function on realspace grid
convolutes a function with a smoothing kernel K_\zeta
returns the global axes and the portion of the axes that are local to the current mpi rank

#### SUBROUTINEderive_fdm_cd3(f, df, rs_grid)^

2nd order finite difference derivative of a function on realspace grid

##### Arguments:
 TYPE(pw_type), POINTER :: f input function TYPE(pw_p_type), INTENT(out) :: df(3) derivative of f TYPE(realspace_grid_type), POINTER :: rs_grid real-space grid

#### SUBROUTINEderive_fdm_cd5(f, df, rs_grid)^

4th order finite difference derivative of a function on realspace grid

##### Arguments:
 TYPE(pw_type), POINTER :: f input function TYPE(pw_p_type), INTENT(inout) :: df(3) derivative of f TYPE(realspace_grid_type), POINTER :: rs_grid real-space grid

#### SUBROUTINEderive_fdm_cd7(f, df, rs_grid)^

6th order finite difference derivative of a function on realspace grid

##### Arguments:
 TYPE(pw_type), POINTER :: f input function TYPE(pw_p_type), INTENT(out) :: df(3) derivative of f TYPE(realspace_grid_type), POINTER :: rs_grid real-space grid

#### SUBROUTINEpw_mollifier(pw_pool, zeta, x_glbl, y_glbl, z_glbl, pw_in, pw_out)^

convolutes a function with a smoothing kernel K_\zeta

##### Arguments:
 TYPE(pw_pool_type), INTENT(in), POINTER :: pw_pool pool of pw grid REAL(dp), INTENT(in) :: zeta paramter \zeta defining the width of the mollifier REAL(dp), INTENT(in), ALLOCATABLE :: x_glbl(:) x grid vetor of the simulation box REAL(dp), INTENT(in), ALLOCATABLE :: y_glbl(:) y grid vetor of the simulation box REAL(dp), INTENT(in), ALLOCATABLE :: z_glbl(:) z grid vetor of the simulation box TYPE(pw_type), INTENT(in), POINTER :: pw_in the input function TYPE(pw_type), INTENT(inout), POINTER :: pw_out the convoluted function

#### SUBROUTINEsetup_grid_axes(pw_grid, x_glbl, y_glbl, z_glbl, x_locl, y_locl, z_locl)^

returns the global axes and the portion of the axes that are local to the current mpi rank

##### Arguments:
 TYPE(pw_grid_type), INTENT(in), POINTER :: pw_grid plane wave grid REAL(dp), INTENT(out), ALLOCATABLE :: x_glbl(:) x grid vetor of the simulation box REAL(dp), INTENT(out), ALLOCATABLE :: y_glbl(:) y grid vetor of the simulation box REAL(dp), INTENT(out), ALLOCATABLE :: z_glbl(:) z grid vetor of the simulation box REAL(dp), INTENT(out), ALLOCATABLE :: x_locl(:) x grid vetor of the simulation box local to this process REAL(dp), INTENT(out), ALLOCATABLE :: y_locl(:) y grid vetor of the simulation box local to this process REAL(dp), INTENT(out), ALLOCATABLE :: z_locl(:) z grid vetor of the simulation box local to this process