|
CP2K 2.4 (Revision 12889)
|
Calculate the electrostatic energy by the Smooth Particle Ewald method. More...
Functions | |
| subroutine, public | spme_evaluate (ewald_env, ewald_pw, box, particle_set, fg_coulomb, vg_coulomb, pv_g, shell_particle_set, core_particle_set, fgshell_coulomb, fgcore_coulomb, use_virial, charges, atprop, error) |
| subroutine, public | get_patch (part, box, green, npts, p, rhos, is_core, is_shell, unit_charge, charges) |
| Calculates local density in a small box. | |
| subroutine | spme_get_patch (rhos, n, delta, q, coeff) |
| Calculates SPME charge assignment. | |
| subroutine | get_delta (box, r, npts, delta, n) |
Variables | |
| CHARACTER(len=*), parameter, private | moduleN = 'spme' |
Calculate the electrostatic energy by the Smooth Particle Ewald method.
| subroutine spme::get_delta | ( | TYPE(cell_type),pointer | box, |
| REAL(KIND=dp),dimension(3),intent(in) | r, | ||
| INTEGER,dimension(3),intent(in) | npts, | ||
| REAL(KIND=dp),dimension(3),intent(out) | delta, | ||
| INTEGER,intent(in) | n | ||
| ) | [private] |
Definition at line 547 of file spme.f90.
References kinds::dp, and REAL().
Referenced by get_patch().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine,public spme::get_patch | ( | TYPE(particle_type),dimension(:),intent(in) | part, |
| TYPE(cell_type),pointer | box, | ||
| TYPE(greens_fn_type),pointer | green, | ||
| INTEGER,dimension(3),intent(in) | npts, | ||
| INTEGER,intent(in) | p, | ||
| REAL(KIND=dp),dimension(:, :, :),intent(out) | rhos, | ||
| LOGICAL,intent(in) | is_core, | ||
| LOGICAL,intent(in) | is_shell, | ||
| LOGICAL,intent(in) | unit_charge, | ||
| REAL(KIND=dp),dimension(:),optional,pointer | charges | ||
| ) |
Calculates local density in a small box.
Definition at line 425 of file spme.f90.
References atomic_kind_types::get_atomic_kind(), get_delta(), spme_get_patch(), and termination::stop_program().
Referenced by qs_dftb_coulomb::dftb_spme_evaluate(), and spme_evaluate().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine,public spme::spme_evaluate | ( | TYPE(ewald_environment_type),pointer | ewald_env, |
| TYPE(ewald_pw_type),pointer | ewald_pw, | ||
| TYPE(cell_type),pointer | box, | ||
| TYPE(particle_type),dimension(:),intent(in) | particle_set, | ||
| REAL(KIND=dp),dimension(:, :),intent(out) | fg_coulomb, | ||
| REAL(KIND=dp),intent(out) | vg_coulomb, | ||
| REAL(KIND=dp),dimension(:, :),intent(out) | pv_g, | ||
| TYPE(particle_type),dimension(:),optional,pointer | shell_particle_set, | ||
| TYPE(particle_type),dimension(:),optional,pointer | core_particle_set, | ||
| REAL(KIND=dp),dimension(:, :),intent(out),optional | fgshell_coulomb, | ||
| REAL(KIND=dp),dimension(:, :),intent(out),optional | fgcore_coulomb, | ||
| LOGICAL,intent(in) | use_virial, | ||
| REAL(KIND=dp),dimension(:),optional,pointer | charges, | ||
| TYPE(atprop_type),pointer | atprop, | ||
| TYPE(cp_error_type),intent(inout) | error | ||
| ) |
Definition at line 74 of file spme.f90.
References pw_types::COMPLEXDATA1D, CPPostcondition, error, bibliography::Essmann1995, ewald_environment_types::ewald_env_get(), ewald_pw_types::ewald_pw_get(), mathconstants::fourpi, pme_tools::get_center(), get_patch(), pw_grids::get_pw_grid_info(), realspace_grid_types::pw2rs, pw_methods::pw_integral_a2b(), pw_poisson_methods::pw_poisson_rebuild(), pw_pool_types::pw_pool_create_pw(), realspace_grid_types::rs2pw, realspace_grid_types::rs_grid_create(), realspace_grid_types::rs_grid_release(), realspace_grid_types::rs_grid_set_box(), realspace_grid_types::rs_grid_zero(), realspace_grid_types::rs_pw_transfer(), and timings::timeset().
Referenced by fist_force::fist_force_control().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine spme::spme_get_patch | ( | REAL(KIND=dp),dimension(:, :, :),intent(out) | rhos, |
| INTEGER,intent(in) | n, | ||
| REAL(KIND=dp),dimension(3),intent(in) | delta, | ||
| REAL(KIND=dp),intent(in) | q, | ||
| REAL(KIND=dp),dimension(-(n-1):n-1, 0:n-1),intent(in) | coeff | ||
| ) | [private] |
Calculates SPME charge assignment.
Definition at line 483 of file spme.f90.
References termination::stop_program().
Referenced by get_patch().
Here is the call graph for this function:
Here is the caller graph for this function:| CHARACTER(len=*),parameter,private spme::moduleN = 'spme' |
1.7.3