Octopus
|
Data Types | |
type | nonlocal_pseudopotential_t |
nonlocal part of the pseudopotential More... | |
type | projection_t |
Class for projections of wave functions. More... | |
Functions/Subroutines | |
subroutine | nonlocal_pseudopotential_init (this) |
initialize the nonlocal_pseudopotential_t object More... | |
subroutine | nonlocal_pseudopotential_destroy_proj (this) |
Destroy the data of nonlocal_pseudopotential_t. More... | |
subroutine | nonlocal_pseudopotential_build_proj (this, space, mesh, epot) |
build the projectors for the application of pseudo-potentials More... | |
logical pure function | nonlocal_pseudopotential_self_overlap (this) |
Returns .true. if the Hamiltonian contains projectors, which overlap with themself. More... | |
subroutine | dnonlocal_pseudopotential_start (this, mesh, std, spiral_bnd, psib, projection, async) |
Start application of non-local potentials (stored in the Hamiltonian) to the wave functions. More... | |
subroutine | dnonlocal_pseudopotential_finish (this, mesh, spiral_bnd, std, projection, vpsib) |
finish the application of non-local potentials. More... | |
subroutine | dnonlocal_pseudopotential_force (this, mesh, st, spiral_bnd, iqn, ndim, psi1b, psi2b, force) |
calculate contribution to forces, from non-local potentials More... | |
subroutine | dnonlocal_pseudopotential_position_commutator (this, mesh, std, spiral_bnd, psib, commpsib, async) |
apply the commutator between the non-local potential and the position to the wave functions. More... | |
subroutine | dnonlocal_pseudopotential_r_vnlocal (this, mesh, std, spiral_bnd, psib, commpsib) |
Accumulates to commpsib the result of x V_{nl} | psib > More... | |
subroutine | znonlocal_pseudopotential_start (this, mesh, std, spiral_bnd, psib, projection, async) |
Start application of non-local potentials (stored in the Hamiltonian) to the wave functions. More... | |
subroutine | znonlocal_pseudopotential_finish (this, mesh, spiral_bnd, std, projection, vpsib) |
finish the application of non-local potentials. More... | |
subroutine | znonlocal_pseudopotential_force (this, mesh, st, spiral_bnd, iqn, ndim, psi1b, psi2b, force) |
calculate contribution to forces, from non-local potentials More... | |
subroutine | znonlocal_pseudopotential_position_commutator (this, mesh, std, spiral_bnd, psib, commpsib, async) |
apply the commutator between the non-local potential and the position to the wave functions. More... | |
subroutine | znonlocal_pseudopotential_r_vnlocal (this, mesh, std, spiral_bnd, psib, commpsib) |
Accumulates to commpsib the result of x V_{nl} | psib > More... | |
|
private |
initialize the nonlocal_pseudopotential_t object
Definition at line 231 of file nonlocal_pseudopotential.F90.
|
private |
Destroy the data of nonlocal_pseudopotential_t.
Definition at line 248 of file nonlocal_pseudopotential.F90.
|
private |
build the projectors for the application of pseudo-potentials
This routine also determines the regions for the projectors and whether any projector overlaps with itself in a periodic system.
Definition at line 288 of file nonlocal_pseudopotential.F90.
|
private |
Returns .true. if the Hamiltonian contains projectors, which overlap with themself.
Definition at line 835 of file nonlocal_pseudopotential.F90.
|
private |
Start application of non-local potentials (stored in the Hamiltonian) to the wave functions.
This routine is split into the *_start and *_finish parts, in order to allow for other operations during device transfer or communications.
TODO: add more details.
[in] | mesh | the mesh |
[in] | std | dimensions of the states |
[in] | spiral_bnd | flag for spiral boundary conditions |
[in] | psib | original wave functions |
[out] | projection | TODO: add description |
Definition at line 917 of file nonlocal_pseudopotential.F90.
|
private |
finish the application of non-local potentials.
Definition at line 1214 of file nonlocal_pseudopotential.F90.
|
private |
calculate contribution to forces, from non-local potentials
TODO: add more details
spiral BC ik should be the same for psi2b
Definition at line 1534 of file nonlocal_pseudopotential.F90.
|
private |
apply the commutator between the non-local potential and the position to the wave functions.
TODO: add more details
[in] | mesh | the mesh |
[in] | std | the electronic states |
[in] | spiral_bnd | flag for spiral boundary conditions |
[in] | psib | original wave functions psi |
[in,out] | commpsib | resulting [v_nl, r]*psi |
Definition at line 1827 of file nonlocal_pseudopotential.F90.
|
private |
Accumulates to commpsib the result of x V_{nl} | psib >
Definition at line 2231 of file nonlocal_pseudopotential.F90.
|
private |
Start application of non-local potentials (stored in the Hamiltonian) to the wave functions.
This routine is split into the *_start and *_finish parts, in order to allow for other operations during device transfer or communications.
TODO: add more details.
[in] | mesh | the mesh |
[in] | std | dimensions of the states |
[in] | spiral_bnd | flag for spiral boundary conditions |
[in] | psib | original wave functions |
[out] | projection | TODO: add description |
Definition at line 2701 of file nonlocal_pseudopotential.F90.
|
private |
finish the application of non-local potentials.
Definition at line 3055 of file nonlocal_pseudopotential.F90.
|
private |
calculate contribution to forces, from non-local potentials
TODO: add more details
spiral BC ik should be the same for psi2b
Definition at line 3466 of file nonlocal_pseudopotential.F90.
|
private |
apply the commutator between the non-local potential and the position to the wave functions.
TODO: add more details
[in] | mesh | the mesh |
[in] | std | the electronic states |
[in] | spiral_bnd | flag for spiral boundary conditions |
[in] | psib | original wave functions psi |
[in,out] | commpsib | resulting [v_nl, r]*psi |
Definition at line 3819 of file nonlocal_pseudopotential.F90.
|
private |
Accumulates to commpsib the result of x V_{nl} | psib >
Definition at line 4290 of file nonlocal_pseudopotential.F90.