Octopus
helmholtz_decomposition_m::helmholtz_decomposition_t Type Reference

Detailed Description

Definition at line 184 of file helmholtz_decomposition.F90.

Public Attributes

logical, public compute_surface_correction
 Should the surface correction be computed? More...
 

Private Member Functions

procedure init => helmholtz_decomposition_init
 
procedure dapply_inner_stencil_mask
 
 zapply_inner_stencil_mask
 
generic apply_inner_stencil_mask => dapply_inner_stencil_mask, zapply_inner_stencil_mask
 
procedure dget_vector_potential
 
 zget_vector_potential
 
generic get_vector_potential => dget_vector_potential, zget_vector_potential
 
procedure dget_scalar_potential
 
 zget_scalar_potential
 
generic get_scalar_potential => dget_scalar_potential, zget_scalar_potential
 
procedure dget_trans_field
 
 zget_trans_field
 
generic get_trans_field => dget_trans_field, zget_trans_field
 
procedure dget_long_field
 
 zget_long_field
 
generic get_long_field => dget_long_field, zget_long_field
 
final helmholtz_finalize
 

Private Attributes

type(grid_t), pointer sys_grid
 Pointer to the system grid. More...
 
integer, dimension(:), allocatable surface_points
 Array containing the list of surface points of the box. More...
 
integer, dimension(:), allocatable inner_stencil
 Mask for points that are less than a stencil away from sys_grid boundary. More...
 
logical enforce_coulomb_gauge
 If true, the Vector Potential is enforced to be in Coulomb Gauge. See https: More...
 
real(real64) coulomb_gauge_tolerance
 Tolerance deviation for the vector potential to be in Coulomb Gauge. The code will evaluate the following expression: $spacing * \frac{\nabla \cdot A}{|A|}$. More...
 
real(real64) poisson_prefactor
 Prefactor to handle singularities in the surface correction. More...
 
type(poisson_tpoisson_solver
 The poisson solver for the Helmholtz decomposition. More...
 

Member Function/Subroutine Documentation

◆ init()

procedure helmholtz_decomposition_m::helmholtz_decomposition_t::init
private

Definition at line 202 of file helmholtz_decomposition.F90.

◆ dapply_inner_stencil_mask()

procedure helmholtz_decomposition_m::helmholtz_decomposition_t::dapply_inner_stencil_mask
private

Definition at line 204 of file helmholtz_decomposition.F90.

◆ zapply_inner_stencil_mask()

helmholtz_decomposition_m::helmholtz_decomposition_t::zapply_inner_stencil_mask
private

Definition at line 204 of file helmholtz_decomposition.F90.

◆ apply_inner_stencil_mask()

generic helmholtz_decomposition_m::helmholtz_decomposition_t::apply_inner_stencil_mask
private

Definition at line 205 of file helmholtz_decomposition.F90.

◆ dget_vector_potential()

procedure helmholtz_decomposition_m::helmholtz_decomposition_t::dget_vector_potential
private

Definition at line 207 of file helmholtz_decomposition.F90.

◆ zget_vector_potential()

helmholtz_decomposition_m::helmholtz_decomposition_t::zget_vector_potential
private

Definition at line 207 of file helmholtz_decomposition.F90.

◆ get_vector_potential()

generic helmholtz_decomposition_m::helmholtz_decomposition_t::get_vector_potential
private

Definition at line 208 of file helmholtz_decomposition.F90.

◆ dget_scalar_potential()

procedure helmholtz_decomposition_m::helmholtz_decomposition_t::dget_scalar_potential
private

Definition at line 210 of file helmholtz_decomposition.F90.

◆ zget_scalar_potential()

helmholtz_decomposition_m::helmholtz_decomposition_t::zget_scalar_potential
private

Definition at line 210 of file helmholtz_decomposition.F90.

◆ get_scalar_potential()

generic helmholtz_decomposition_m::helmholtz_decomposition_t::get_scalar_potential
private

Definition at line 211 of file helmholtz_decomposition.F90.

◆ dget_trans_field()

procedure helmholtz_decomposition_m::helmholtz_decomposition_t::dget_trans_field
private

Definition at line 213 of file helmholtz_decomposition.F90.

◆ zget_trans_field()

helmholtz_decomposition_m::helmholtz_decomposition_t::zget_trans_field
private

Definition at line 213 of file helmholtz_decomposition.F90.

◆ get_trans_field()

generic helmholtz_decomposition_m::helmholtz_decomposition_t::get_trans_field
private

Definition at line 214 of file helmholtz_decomposition.F90.

◆ dget_long_field()

procedure helmholtz_decomposition_m::helmholtz_decomposition_t::dget_long_field
private

Definition at line 216 of file helmholtz_decomposition.F90.

◆ zget_long_field()

helmholtz_decomposition_m::helmholtz_decomposition_t::zget_long_field
private

Definition at line 216 of file helmholtz_decomposition.F90.

◆ get_long_field()

generic helmholtz_decomposition_m::helmholtz_decomposition_t::get_long_field
private

Definition at line 217 of file helmholtz_decomposition.F90.

◆ helmholtz_finalize()

final helmholtz_decomposition_m::helmholtz_decomposition_t::helmholtz_finalize
finalprivate

Definition at line 219 of file helmholtz_decomposition.F90.

Member Data Documentation

◆ sys_grid

type(grid_t), pointer helmholtz_decomposition_m::helmholtz_decomposition_t::sys_grid
private

Pointer to the system grid.

Definition at line 187 of file helmholtz_decomposition.F90.

◆ compute_surface_correction

logical, public helmholtz_decomposition_m::helmholtz_decomposition_t::compute_surface_correction

Should the surface correction be computed?

Definition at line 188 of file helmholtz_decomposition.F90.

◆ surface_points

integer, dimension(:), allocatable helmholtz_decomposition_m::helmholtz_decomposition_t::surface_points
private

Array containing the list of surface points of the box.

Definition at line 189 of file helmholtz_decomposition.F90.

◆ inner_stencil

integer, dimension(:), allocatable helmholtz_decomposition_m::helmholtz_decomposition_t::inner_stencil
private

Mask for points that are less than a stencil away from sys_grid boundary.

Definition at line 190 of file helmholtz_decomposition.F90.

◆ enforce_coulomb_gauge

logical helmholtz_decomposition_m::helmholtz_decomposition_t::enforce_coulomb_gauge
private

If true, the Vector Potential is enforced to be in Coulomb Gauge. See https:

Definition at line 192 of file helmholtz_decomposition.F90.

◆ coulomb_gauge_tolerance

real(real64) helmholtz_decomposition_m::helmholtz_decomposition_t::coulomb_gauge_tolerance
private

Tolerance deviation for the vector potential to be in Coulomb Gauge. The code will evaluate the following expression: $spacing * \frac{\nabla \cdot A}{|A|}$.

Definition at line 194 of file helmholtz_decomposition.F90.

◆ poisson_prefactor

real(real64) helmholtz_decomposition_m::helmholtz_decomposition_t::poisson_prefactor
private

Prefactor to handle singularities in the surface correction.

Definition at line 197 of file helmholtz_decomposition.F90.

◆ poisson_solver

type(poisson_t) helmholtz_decomposition_m::helmholtz_decomposition_t::poisson_solver
private

The poisson solver for the Helmholtz decomposition.

Definition at line 198 of file helmholtz_decomposition.F90.


The documentation for this type was generated from the following file: