34 use,
intrinsic :: iso_fortran_env
75 procedure :: delec_dipole_me, zelec_dipole_me
79 procedure :: delec_ks_multipoles_1d_me, zelec_ks_multipoles_1d_me
83 procedure :: delec_ks_multipoles_2d_me, zelec_ks_multipoles_2d_me
87 procedure :: delec_ks_multipoles_3d_me, zelec_ks_multipoles_3d_me
91 procedure :: delec_one_body_me, zelec_one_body_me
95 procedure :: delec_two_body_me, zelec_two_body_me
101 subroutine elec_momentum_me(namespace, gr, st, space, hm, ions, momentum, non_local)
102 type(namespace_t),
intent(in) :: namespace
103 type(grid_t),
intent(in) :: gr
104 type(states_elec_t),
intent(in) :: st
105 type(space_t),
intent(in) :: space
106 type(hamiltonian_elec_t),
intent(in) :: hm
107 type(ions_t),
intent(in) :: ions
108 real(real64),
intent(out) :: momentum(:,:,:)
109 logical,
optional,
intent(in) :: non_local
124 type(grid_t),
intent(in) :: gr
125 type(states_elec_t),
intent(in) :: st
126 type(space_t),
intent(in) :: space
127 real(real64),
contiguous,
intent(out) :: ll(:, :, :)
128 real(real64),
contiguous,
optional,
intent(out) :: l2(:, :)
142#include "complex.F90"
143#include "elec_matrix_elements_inc.F90"
147#include "elec_matrix_elements_inc.F90"
This module implements batches of mesh functions.
Module implementing boundary conditions in Octopus.
This module calculates the derivatives (gradients, Laplacians, etc.) of a function.
subroutine, public elec_angular_momentum_me(gr, st, space, ll, l2)
subroutine delec_momentum_me(namespace, gr, st, space, hm, ions, momentum, non_local)
The routine calculates the expectation value of the momentum operator.
subroutine zelec_momentum_me(namespace, gr, st, space, hm, ions, momentum, non_local)
The routine calculates the expectation value of the momentum operator.
subroutine zelec_angular_momentum_me(gr, st, space, ll, l2)
It calculates the expectation value of the angular momentum of the states. If l2 is passed,...
subroutine delec_angular_momentum_me(gr, st, space, ll, l2)
It calculates the expectation value of the angular momentum of the states. If l2 is passed,...
subroutine, public elec_momentum_me(namespace, gr, st, space, hm, ions, momentum, non_local)
This module implements the underlying real-space grid.
A module to handle KS potential, without the external potential.
This module defines functions over batches of mesh functions.
This module defines various routines, operating on mesh functions.
This module defines the meshes, which are used in Octopus.
This module contains some common usage patterns of MPI routines.
pure logical function, public states_are_real(st)
This module handles spin dimensions of the states and the k-point distribution.