Documentation for module pao_potentials

Factory routines for potentials used e.g. by pao_param_exp and pao_ml

source: pao_potentials.F
Loading...

public Subroutines/Functions:

Calculates potential term of the form r**lpot * Exp(-beta*r**2) One needs to call init_orbital_pointers(lpot) before calling pao_calc_gaussian().
Makes an educated guess for the intial potential based on positions of neighboring atoms

SUBROUTINEpao_calc_gaussian(basis_set, block_v, block_d, rab, lpot, beta, weight, min_shell, max_shell, min_l, max_l)

Calculates potential term of the form r**lpot * Exp(-beta*r**2) One needs to call init_orbital_pointers(lpot) before calling pao_calc_gaussian().

Arguments:
POINTER
:: basis_set ...
REAL(dp),
INTENT(out),
OPTIONAL
:: block_v(:,:) potential term that is returned
REAL(dp),
INTENT(out),
OPTIONAL
:: block_d(:,:,:) derivative of potential term wrt to Rab
REAL(dp)
:: rab(3) ...
INTEGER,
INTENT(in)
:: lpot polynomial prefactor, r**lpot
REAL(dp),
INTENT(in)
:: beta exponent of the Gaussian
REAL(dp),
INTENT(in)
:: weight ...
INTEGER,
INTENT(in),
OPTIONAL
:: min_shell ...
INTEGER,
INTENT(in),
OPTIONAL
:: max_shell ...
INTEGER,
INTENT(in),
OPTIONAL
:: min_l ...
INTEGER,
INTENT(in),
OPTIONAL
:: max_l ...

SUBROUTINEpao_guess_initial_potential(qs_env, iatom, block_v)

Makes an educated guess for the intial potential based on positions of neighboring atoms

Arguments:
POINTER
:: qs_env ...
INTEGER,
INTENT(in)
:: iatom ...
REAL(dp),
INTENT(out)
:: block_v(:,:) ...