Documentation for module rs_methods

numerical operations on real-space grid

source: rs_methods.F
Loading...

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
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
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
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:
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:
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