Octopus
test_oct_m Module Reference

This module implements a unit-test like runmode for Octopus. More...

Detailed Description

This module implements a unit-test like runmode for Octopus.

Data Types

type  test_parameters_t
 

Functions/Subroutines

subroutine, public test_run (namespace)
 
subroutine test_hartree (param, namespace)
 
subroutine test_helmholtz_decomposition (namespace)
 
subroutine test_linear_solver (namespace)
 
subroutine test_projector (param, namespace)
 
subroutine test_dft_u (param, namespace)
 
subroutine test_hamiltonian (param, namespace)
 
subroutine test_density_calc (param, namespace)
 
subroutine test_boundaries (param, namespace)
 
subroutine test_exponential (param, namespace)
 
subroutine test_subspace_diagonalization (param, namespace)
 
subroutine test_batch_ops (param, namespace)
 
subroutine test_derivatives (param, namespace)
 
subroutine test_orthogonalization (param, namespace)
 
subroutine test_interpolation (param, namespace)
 
subroutine test_ion_interaction (namespace)
 
subroutine test_prints_info_batch (st, gr, psib, string)
 
subroutine test_clock ()
 
subroutine test_cgal ()
 
subroutine test_dense_eigensolver ()
 
subroutine test_batch_set_gaussian (psib, mesh)
 
subroutine test_grid_interpolation ()
 
subroutine test_iihash ()
 
subroutine test_sihash ()
 
subroutine test_sphash (namespace)
 
subroutine test_regridding (namespace)
 
subroutine test_vecpot_analytical (namespace)
 Here, analytical formulation for vector potential and B field are used. Ref: Sangita Sen and Erik I. Tellgren, J. Chem. Theory Comput. 17, 3 (2021). Analytical input for vector potential \( A_{r}= 1/3[ -xz, yz, x^2 - y^2] \) When bounded, above expression is multiplied with gaussian envelope \( (1/box_size)*exp^(-x^2-y^2-z^2)] \). More...
 
subroutine multigrid_test_interpolation (mgrid, space)
 
subroutine test_current_density (namespace)
 Here we test the different contributions to the total electronic current density. More...
 
subroutine set_hydrogen_states (psib, mesh, namespace, alpha, a0)
 
complex(real64) function lc_hydrogen_state (rr, alpha, a0)
 
real(real64) function psi_1s (rr, a0)
 
real(real64) function psi_2s (rr, a0)
 
real(real64) function dr_psi_1s (rr, a0)
 
real(real64) function dr_psi_2s (rr, a0)
 

Variables

real(real64) shift_aux
 
type(derivatives_t), pointer der_aux => null()
 
type(preconditioner_tprec_aux
 

Function/Subroutine Documentation

◆ test_run()

subroutine, public test_oct_m::test_run ( type(namespace_t), intent(in)  namespace)

Definition at line 205 of file test.F90.

◆ test_hartree()

subroutine test_oct_m::test_hartree ( type(test_parameters_t), intent(in)  param,
type(namespace_t), intent(in)  namespace 
)

Definition at line 414 of file test.F90.

◆ test_helmholtz_decomposition()

subroutine test_oct_m::test_helmholtz_decomposition ( type(namespace_t), intent(in)  namespace)

Definition at line 433 of file test.F90.

◆ test_linear_solver()

subroutine test_oct_m::test_linear_solver ( type(namespace_t), intent(in)  namespace)

Definition at line 464 of file test.F90.

◆ test_projector()

subroutine test_oct_m::test_projector ( type(test_parameters_t), intent(in)  param,
type(namespace_t), intent(in)  namespace 
)

Definition at line 554 of file test.F90.

◆ test_dft_u()

subroutine test_oct_m::test_dft_u ( type(test_parameters_t), intent(in)  param,
type(namespace_t), intent(in)  namespace 
)

Definition at line 606 of file test.F90.

◆ test_hamiltonian()

subroutine test_oct_m::test_hamiltonian ( type(test_parameters_t), intent(in)  param,
type(namespace_t), intent(in)  namespace 
)

Definition at line 714 of file test.F90.

◆ test_density_calc()

subroutine test_oct_m::test_density_calc ( type(test_parameters_t), intent(in)  param,
type(namespace_t), intent(in)  namespace 
)

Definition at line 796 of file test.F90.

◆ test_boundaries()

subroutine test_oct_m::test_boundaries ( type(test_parameters_t), intent(in)  param,
type(namespace_t), intent(in)  namespace 
)

Definition at line 834 of file test.F90.

◆ test_exponential()

subroutine test_oct_m::test_exponential ( type(test_parameters_t), intent(in)  param,
type(namespace_t), intent(in)  namespace 
)

Definition at line 871 of file test.F90.

◆ test_subspace_diagonalization()

subroutine test_oct_m::test_subspace_diagonalization ( type(test_parameters_t), intent(in)  param,
type(namespace_t), intent(in)  namespace 
)

Definition at line 920 of file test.F90.

◆ test_batch_ops()

subroutine test_oct_m::test_batch_ops ( type(test_parameters_t), intent(in)  param,
type(namespace_t), intent(in)  namespace 
)

Definition at line 973 of file test.F90.

◆ test_derivatives()

subroutine test_oct_m::test_derivatives ( type(test_parameters_t), intent(in)  param,
type(namespace_t), intent(in)  namespace 
)

Definition at line 1214 of file test.F90.

◆ test_orthogonalization()

subroutine test_oct_m::test_orthogonalization ( type(test_parameters_t), intent(in)  param,
type(namespace_t), intent(in)  namespace 
)

Definition at line 1244 of file test.F90.

◆ test_interpolation()

subroutine test_oct_m::test_interpolation ( type(test_parameters_t), intent(in)  param,
type(namespace_t), intent(in)  namespace 
)

Definition at line 1286 of file test.F90.

◆ test_ion_interaction()

subroutine test_oct_m::test_ion_interaction ( type(namespace_t), intent(in)  namespace)

Definition at line 1324 of file test.F90.

◆ test_prints_info_batch()

subroutine test_oct_m::test_prints_info_batch ( type(states_elec_t), intent(in)  st,
type(grid_t), intent(in)  gr,
class(batch_t), intent(inout)  psib,
character(*), intent(in), optional  string 
)

Definition at line 1344 of file test.F90.

◆ test_clock()

subroutine test_oct_m::test_clock

Definition at line 1389 of file test.F90.

◆ test_cgal()

subroutine test_oct_m::test_cgal

Definition at line 1448 of file test.F90.

◆ test_dense_eigensolver()

subroutine test_oct_m::test_dense_eigensolver

Definition at line 1468 of file test.F90.

◆ test_batch_set_gaussian()

subroutine test_oct_m::test_batch_set_gaussian ( class(batch_t), intent(inout)  psib,
class(mesh_t), intent(in)  mesh 
)

Definition at line 1527 of file test.F90.

◆ test_grid_interpolation()

subroutine test_oct_m::test_grid_interpolation

Definition at line 1579 of file test.F90.

◆ test_iihash()

subroutine test_oct_m::test_iihash

Definition at line 1600 of file test.F90.

◆ test_sihash()

subroutine test_oct_m::test_sihash

Definition at line 1626 of file test.F90.

◆ test_sphash()

subroutine test_oct_m::test_sphash ( type(namespace_t), intent(in)  namespace)

Definition at line 1672 of file test.F90.

◆ test_regridding()

subroutine test_oct_m::test_regridding ( type(namespace_t), intent(in)  namespace)

Definition at line 1765 of file test.F90.

◆ test_vecpot_analytical()

subroutine test_oct_m::test_vecpot_analytical ( type(namespace_t), intent(in)  namespace)

Here, analytical formulation for vector potential and B field are used. Ref: Sangita Sen and Erik I. Tellgren, J. Chem. Theory Comput. 17, 3 (2021). Analytical input for vector potential \( A_{r}= 1/3[ -xz, yz, x^2 - y^2] \) When bounded, above expression is multiplied with gaussian envelope \( (1/box_size)*exp^(-x^2-y^2-z^2)] \).

Definition at line 1883 of file test.F90.

◆ multigrid_test_interpolation()

subroutine test_oct_m::multigrid_test_interpolation ( type(multigrid_t), intent(in)  mgrid,
class(space_t), intent(in)  space 
)

Definition at line 1983 of file test.F90.

◆ test_current_density()

subroutine test_oct_m::test_current_density ( type(namespace_t), intent(in)  namespace)

Here we test the different contributions to the total electronic current density.

Definition at line 2080 of file test.F90.

◆ set_hydrogen_states()

subroutine test_oct_m::set_hydrogen_states ( class(batch_t), intent(inout)  psib,
class(mesh_t), intent(in)  mesh,
type(namespace_t), intent(in)  namespace,
complex(real64), intent(in)  alpha,
real(real64), intent(in)  a0 
)

Definition at line 2223 of file test.F90.

◆ lc_hydrogen_state()

complex(real64) function test_oct_m::lc_hydrogen_state ( real(real64), intent(in)  rr,
complex(real64), intent(in)  alpha,
real(real64), intent(in)  a0 
)

Definition at line 2253 of file test.F90.

◆ psi_1s()

real(real64) function test_oct_m::psi_1s ( real(real64), intent(in)  rr,
real(real64), intent(in)  a0 
)

Definition at line 2261 of file test.F90.

◆ psi_2s()

real(real64) function test_oct_m::psi_2s ( real(real64), intent(in)  rr,
real(real64), intent(in)  a0 
)

Definition at line 2268 of file test.F90.

◆ dr_psi_1s()

real(real64) function test_oct_m::dr_psi_1s ( real(real64), intent(in)  rr,
real(real64), intent(in)  a0 
)

Definition at line 2275 of file test.F90.

◆ dr_psi_2s()

real(real64) function test_oct_m::dr_psi_2s ( real(real64), intent(in)  rr,
real(real64), intent(in)  a0 
)

Definition at line 2281 of file test.F90.

Variable Documentation

◆ shift_aux

real(real64) test_oct_m::shift_aux

Definition at line 196 of file test.F90.

◆ der_aux

type(derivatives_t), pointer test_oct_m::der_aux => null()

Definition at line 197 of file test.F90.

◆ prec_aux

type(preconditioner_t) test_oct_m::prec_aux

Definition at line 198 of file test.F90.