ddx 0.6.0
Libary for domain-decomposition methods for polarizable continuum models
ddx_parameters Module Reference

Module to treat properly user input parameters. More...

Data Types

type  ddx_params_type
 Type to check and store user input parameters. More...
 

Functions/Subroutines

subroutine params_init (model, force, eps, kappa, eta, se, lmax, ngrid, matvecmem, maxiter, jacobi_ndiis, fmm, pm, pl, nproc, nsph, csph, rsph, output_filename, params, ddx_error)
 Initialize and check input parameters. More...
 
subroutine closest_supported_lebedev_grid (ngrid)
 Adjust a guess for the number of Lebedev grid points. More...
 
subroutine params_free (params, ddx_error)
 Deallocate the parameter object. More...
 
subroutine init_printing (params, ddx_error)
 Open the log file. More...
 
subroutine finalize_printing (params)
 Close the log file. More...
 

Detailed Description

Module to treat properly user input parameters.

Function/Subroutine Documentation

◆ params_init()

subroutine ddx_parameters::params_init ( integer, intent(in)  model,
integer, intent(in)  force,
real(dp), intent(in)  eps,
real(dp), intent(in)  kappa,
real(dp), intent(in)  eta,
real(dp), intent(in)  se,
integer, intent(in)  lmax,
integer, intent(in)  ngrid,
integer, intent(in)  matvecmem,
integer, intent(in)  maxiter,
integer, intent(in)  jacobi_ndiis,
integer, intent(in)  fmm,
integer, intent(in)  pm,
integer, intent(in)  pl,
integer, intent(in)  nproc,
integer, intent(in)  nsph,
real(dp), dimension(3, nsph), intent(in)  csph,
real(dp), dimension(nsph), intent(in)  rsph,
character(len=255)  output_filename,
type(ddx_params_type), intent(out)  params,
type(ddx_error_type), intent(inout)  ddx_error 
)

Initialize and check input parameters.

Parameters
[in]modelChoose model: 1 for COSMO, 2 for PCM and 3 for LPB.
[in]force1 if forces will probably be required and 0 otherwise.
[in]epsRelative dielectric permittivity. eps > 1.
[in]kappaDebye-H"{u}ckel parameter. kappa > 0. Referenced only if the model is LPB.
[in]etaRegularization parameter. 0 < eta <= 1.
[in]seShift of the regularization. -1 for interior, 0 for centered and 1 for outer regularization.
[in]lmaxMaximal degree of modeling spherical harmonics. lmax >= 0.
[in]ngridNumber of Lebedev grid points ngrid >= 0.
[in]matvecmemhandling of sparse matrices. 1 for precomputing them and keeping them in memory, 0 for direct matrix-vector products.
[in]maxiterMaximum number of iterations for an iterative solver. maxiter > 0.
[in]jacobi_ndiisNumber of extrapolation points for Jacobi/DIIS solver. ndiis >= 1.
[in]fmm1 to use FMM acceleration and 0 otherwise.
[in]pmMaximal degree of multipole spherical harmonics. Ignored in the case fmm=0. Value -1 means no far-field FMM interactions are computed. pm >= -1.
[in]plMaximal degree of local spherical harmonics. Ignored in the case fmm=0. Value -1 means no far-field FMM interactions are computed. pl >= -1.
[in]nprocNumber of OpenMP threads to be used where applicable. nproc >= 0. If input nproc=0 then a default number of threads, controlled by the environment variable OMP_NUM_THREADS during runtime, will be used. If OpenMP support in ddX is disabled, only possible input values are 0 or 1 and both inputs lead to the same output nproc=1 since the library is not parallel.
[in]nsphNumber of atoms. nsph > 0.
[in]csphCoordinates of atoms. Dimension is (3, nsph).
[in]rsphVan-der-Waals radii of atoms. Dimension is (nsph).
[in]output_filenamefile name of log file.
[out]paramsObject containing all inputs.
[in,out]ddx_errorddX error

Definition at line 120 of file ddx_parameters.f90.

◆ closest_supported_lebedev_grid()

subroutine ddx_parameters::closest_supported_lebedev_grid ( integer, intent(inout)  ngrid)

Adjust a guess for the number of Lebedev grid points.

Parameters
[in,out]ngridApproximate number of Lebedev grid points on input and actual number of grid points on exit. ngrid >= 0

Definition at line 323 of file ddx_parameters.f90.

◆ params_free()

subroutine ddx_parameters::params_free ( type(ddx_params_type), intent(inout)  params,
type(ddx_error_type), intent(inout)  ddx_error 
)

Deallocate the parameter object.

Parameters
[out]paramsUser specified parameters
[in,out]ddx_errorddX error

Definition at line 344 of file ddx_parameters.f90.

◆ init_printing()

subroutine ddx_parameters::init_printing ( type(ddx_params_type), intent(inout)  params,
type(ddx_error_type), intent(inout)  ddx_error 
)

Open the log file.

Definition at line 367 of file ddx_parameters.f90.

◆ finalize_printing()

subroutine ddx_parameters::finalize_printing ( type(ddx_params_type), intent(inout)  params)

Close the log file.

Definition at line 387 of file ddx_parameters.f90.