Octopus
poisson.F90 File Reference

Go to the source code of this file.

Modules

module  poisson_oct_m
 

Data Types

type  poisson_oct_m::poisson_t
 

Functions/Subroutines

subroutine, public poisson_oct_m::poisson_init (this, namespace, space, der, mc, stencil, qtot, label, solver, verbose, force_serial, force_cmplx, fft_batch_size, fft_batch_axis)
 
subroutine, public poisson_oct_m::poisson_end (this)
 
subroutine poisson_oct_m::zpoisson_solve_real_and_imag_separately (this, namespace, pot, rho, all_nodes, kernel)
 
subroutine poisson_oct_m::zpoisson_solve_real_and_imag_separately_batch (this, pot, rho, view, kernel)
 Batched analogue of zpoisson_solve_real_and_imag_separately. More...
 
subroutine, public poisson_oct_m::zpoisson_solve (this, namespace, pot, rho, all_nodes, kernel, reset)
 
subroutine, public poisson_oct_m::poisson_solve_batch (this, namespace, potb, rhob, all_nodes, kernel)
 
logical function, public poisson_oct_m::poisson_is_fft_batch_capable (this)
 Whether this solver supports the batched FFT path (X(poisson_solve_batch)). More...
 
subroutine, public poisson_oct_m::dpoisson_solve (this, namespace, pot, rho, all_nodes, kernel, reset)
 Calculates the Poisson equation. Given the density returns the corresponding potential. More...
 
subroutine, public poisson_oct_m::poisson_init_sm (this, namespace, space, main, der, sm, grp, method, force_cmplx)
 
logical pure function poisson_oct_m::poisson_solver_is_iterative (this)
 
subroutine, public poisson_oct_m::poisson_async_init (this, mc)
 
subroutine, public poisson_oct_m::poisson_async_end (this, mc)
 
subroutine, public poisson_oct_m::poisson_slave_work (this, namespace)
 
logical pure function, public poisson_oct_m::poisson_is_async (this)
 
subroutine, public poisson_oct_m::poisson_build_kernel (this, namespace, space, coulb, qq, cam, singul)
 
real(real64) function, public poisson_oct_m::poisson_get_full_range_weight (this, cam)
 Most Poisson solvers do not implement Coulomb attenuated potentials, and can only be used for global hybrids like PBE0. For these ones, this routine returns the weight of the full-range hybrids. More...
 
subroutine poisson_oct_m::poisson_kernel_init (this, namespace, space, mc, stencil)
 
subroutine poisson_oct_m::poisson_solve_direct (this, namespace, pot, rho)
 
subroutine poisson_oct_m::dpoisson_solve_direct_sm (this, namespace, sm, pot, rho)
 
subroutine poisson_oct_m::zpoisson_solve_direct_sm (this, namespace, sm, pot, rho)
 
subroutine, public poisson_oct_m::dpoisson_solve_start (this, rho)
 
subroutine, public poisson_oct_m::dpoisson_solve_finish (this, pot)
 
subroutine, public poisson_oct_m::dpoisson_solve_sm (this, namespace, sm, pot, rho, all_nodes)
 Calculates the Poisson equation. Given the density returns the corresponding potential. More...
 
subroutine, public poisson_oct_m::dpoisson_solve_batch (this, pot, rho, kernel, view)
 Solves the Poisson equation for batched quantities, using fast Fourier transforms (FFTs). More...
 
subroutine, public poisson_oct_m::zpoisson_solve_start (this, rho)
 
subroutine, public poisson_oct_m::zpoisson_solve_finish (this, pot)
 
subroutine, public poisson_oct_m::zpoisson_solve_sm (this, namespace, sm, pot, rho, all_nodes)
 Calculates the Poisson equation. Given the density returns the corresponding potential. More...
 
subroutine, public poisson_oct_m::zpoisson_solve_batch (this, pot, rho, kernel, view)
 Solves the Poisson equation for batched quantities, using fast Fourier transforms (FFTs). More...
 

Variables

integer, parameter, public poisson_oct_m::poisson_direct_sum = -1
 
integer, parameter, public poisson_oct_m::poisson_fft = 0
 
integer, parameter, public poisson_oct_m::poisson_cg = 5
 
integer, parameter, public poisson_oct_m::poisson_cg_corrected = 6
 
integer, parameter, public poisson_oct_m::poisson_multigrid = 7
 
integer, parameter, public poisson_oct_m::poisson_isf = 8
 
integer, parameter, public poisson_oct_m::poisson_psolver = 10
 
integer, parameter, public poisson_oct_m::poisson_no = -99
 
integer, parameter, public poisson_oct_m::poisson_null = -999
 
integer, parameter poisson_oct_m::cmd_finish = 1
 
integer, parameter poisson_oct_m::cmd_poisson_solve = 2