Octopus
kick_oct_m Module Reference

Data Types

type  kick_t
 

Functions/Subroutines

subroutine, public kick_init (kick, namespace, space, kpoints, nspin)
 
subroutine, public kick_copy (kick_out, kick_in)
 
subroutine, public kick_end (kick)
 
subroutine, public kick_read (kick, iunit, namespace)
 
subroutine, public kick_write (kick, iunit, out)
 
subroutine, public kick_function_get (space, mesh, kick, kick_function, iq, to_interpolate)
 
subroutine kick_pcm_function_get (space, mesh, kick, psolver, pcm, kick_pcm_function)
 
subroutine, public kick_apply (space, mesh, st, ions_dyn, ions, kick, psolver, kpoints, pcm)
 Applies the delta-function electric field \( E(t) = E_0 \Delta(t) \) where \( E_0 = \frac{- k \hbar}{e} \) k = kick%delta_strength. More...
 
pure integer function, public kick_get_type (kick)
 

Variables

integer, parameter, public kick_function_dipole = 0
 
integer, parameter, public kick_function_multipole = 1
 
integer, parameter, public kick_function_user_defined = 2
 
integer, parameter, public kick_density_mode = 0
 
integer, parameter, public kick_spin_mode = 1
 
integer, parameter, public kick_spin_density_mode = 2
 
integer, parameter, public kick_magnon_mode = 3
 
integer, parameter, public qkickmode_none = 0
 
integer, parameter, public qkickmode_exp = 1
 
integer, parameter, public qkickmode_cos = 2
 
integer, parameter, public qkickmode_sin = 3
 
integer, parameter, public qkickmode_bessel = 4
 

Function/Subroutine Documentation

◆ kick_init()

subroutine, public kick_oct_m::kick_init ( type(kick_t), intent(inout)  kick,
type(namespace_t), intent(in)  namespace,
class(space_t), intent(in)  space,
type(kpoints_t), intent(in)  kpoints,
integer, intent(in)  nspin 
)

Definition at line 222 of file kick.F90.

◆ kick_copy()

subroutine, public kick_oct_m::kick_copy ( type(kick_t), intent(inout)  kick_out,
type(kick_t), intent(in)  kick_in 
)

In case we use a normal dipole kick:

In case we have a general multipolar kick,

In case we use a general function

Definition at line 751 of file kick.F90.

◆ kick_end()

subroutine, public kick_oct_m::kick_end ( type(kick_t), intent(inout)  kick)

Definition at line 794 of file kick.F90.

◆ kick_read()

subroutine, public kick_oct_m::kick_read ( type(kick_t), intent(inout)  kick,
integer, intent(in)  iunit,
type(namespace_t), intent(in)  namespace 
)

Definition at line 818 of file kick.F90.

◆ kick_write()

subroutine, public kick_oct_m::kick_write ( type(kick_t), intent(in)  kick,
integer, intent(in), optional  iunit,
type(c_ptr), intent(inout), optional  out 
)

Definition at line 890 of file kick.F90.

◆ kick_function_get()

subroutine, public kick_oct_m::kick_function_get ( class(space_t), intent(in)  space,
class(mesh_t), intent(in)  mesh,
type(kick_t), intent(in)  kick,
complex(real64), dimension(:), intent(out)  kick_function,
integer, intent(in)  iq,
logical, intent(in), optional  to_interpolate 
)

Definition at line 992 of file kick.F90.

◆ kick_pcm_function_get()

subroutine kick_oct_m::kick_pcm_function_get ( class(space_t), intent(in)  space,
class(mesh_t), intent(in)  mesh,
type(kick_t), intent(in)  kick,
type(poisson_t), intent(in)  psolver,
type(pcm_t), intent(inout)  pcm,
complex(real64), dimension(:), intent(out)  kick_pcm_function 
)
private

Definition at line 1093 of file kick.F90.

◆ kick_apply()

subroutine, public kick_oct_m::kick_apply ( class(space_t), intent(in)  space,
class(mesh_t), intent(in)  mesh,
type(states_elec_t), intent(inout)  st,
type(ion_dynamics_t), intent(in)  ions_dyn,
type(ions_t), intent(inout)  ions,
type(kick_t), intent(in)  kick,
type(poisson_t), intent(in)  psolver,
type(kpoints_t), intent(in)  kpoints,
type(pcm_t), intent(inout), optional  pcm 
)

Applies the delta-function electric field \( E(t) = E_0 \Delta(t) \) where \( E_0 = \frac{- k \hbar}{e} \) k = kick%delta_strength.

Definition at line 1135 of file kick.F90.

◆ kick_get_type()

pure integer function, public kick_oct_m::kick_get_type ( type(kick_t), intent(in)  kick)

Definition at line 1361 of file kick.F90.

Variable Documentation

◆ kick_function_dipole

integer, parameter, public kick_oct_m::kick_function_dipole = 0

Definition at line 158 of file kick.F90.

◆ kick_function_multipole

integer, parameter, public kick_oct_m::kick_function_multipole = 1

Definition at line 158 of file kick.F90.

◆ kick_function_user_defined

integer, parameter, public kick_oct_m::kick_function_user_defined = 2

Definition at line 158 of file kick.F90.

◆ kick_density_mode

integer, parameter, public kick_oct_m::kick_density_mode = 0

Definition at line 163 of file kick.F90.

◆ kick_spin_mode

integer, parameter, public kick_oct_m::kick_spin_mode = 1

Definition at line 163 of file kick.F90.

◆ kick_spin_density_mode

integer, parameter, public kick_oct_m::kick_spin_density_mode = 2

Definition at line 163 of file kick.F90.

◆ kick_magnon_mode

integer, parameter, public kick_oct_m::kick_magnon_mode = 3

Definition at line 163 of file kick.F90.

◆ qkickmode_none

integer, parameter, public kick_oct_m::qkickmode_none = 0

Definition at line 169 of file kick.F90.

◆ qkickmode_exp

integer, parameter, public kick_oct_m::qkickmode_exp = 1

Definition at line 169 of file kick.F90.

◆ qkickmode_cos

integer, parameter, public kick_oct_m::qkickmode_cos = 2

Definition at line 169 of file kick.F90.

◆ qkickmode_sin

integer, parameter, public kick_oct_m::qkickmode_sin = 3

Definition at line 169 of file kick.F90.

◆ qkickmode_bessel

integer, parameter, public kick_oct_m::qkickmode_bessel = 4

Definition at line 169 of file kick.F90.