Octopus
zora.F90 File Reference

Go to the source code of this file.

Modules

module  zora_oct_m
 This module implements the ZORA terms for the Hamoiltonian.
 

Data Types

interface  zora_oct_m::zora_t
 This class is responsible for calculating and applying the ZORA. More...
 

Functions/Subroutines

class(zora_t) function, pointer zora_oct_m::zora_constructor (namespace, der, st_d, ep, mass)
 initialize the ZORA More...
 
subroutine zora_oct_m::zora_finalize (this)
 finalize the ZORA object and free memory More...
 
subroutine zora_oct_m::zora_update (this, der, potential)
 update the ZORA potentials More...
 
subroutine zora_update_fully_relativistic ()
 update quantities, necessary only for fully relativistic ZORA More...
 
subroutine zora_oct_m::dzora_apply_batch (this, mesh, der, states_dim, psib, hpsib)
 apply the ZORA to a batch of states psib More...
 
subroutine zora_oct_m::zzora_apply_batch (this, mesh, der, states_dim, psib, hpsib)
 apply the ZORA to a batch of states psib More...
 

Variables

integer, parameter, public zora_oct_m::zora_none = 0
 no ZORA More...
 
integer, parameter, public zora_oct_m::zora_scalar_relativistic = 1
 ZORA for scalar relativistic calculations. More...
 
integer, parameter, public zora_oct_m::zora_fully_relativistic = 2
 ZORA for fully relativistic calculations. More...
 

Function/Subroutine Documentation

◆ zora_update_fully_relativistic()

subroutine zora_update::zora_update_fully_relativistic
private

update quantities, necessary only for fully relativistic ZORA

soc(:,:,1) = \( (\boldsymbol{\sigma} \times \nabla V )_x = (-(\nabla V)_y, (\nabla V)_y, 0, -(\nabla V)_z) \) soc(:,:,2) = \( (\boldsymbol{\sigma} \times \nabla V )_y = ((\nabla V)_x, -(\nabla V)_x, -(\nabla V)_z, 0) \) soc(:,:,3) = \( (\boldsymbol{\sigma} \times \nabla V )_z = (0, 0, (\nabla V)_y, (\nabla V)_x) \)

Definition at line 356 of file zora.F90.