ddx 0.6.0
Libary for domain-decomposition methods for polarizable continuum models
|
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... | |
Module to treat properly user input parameters.
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.
[in] | model | Choose model: 1 for COSMO, 2 for PCM and 3 for LPB. |
[in] | force | 1 if forces will probably be required and 0 otherwise. |
[in] | eps | Relative dielectric permittivity. eps > 1. |
[in] | kappa | Debye-H"{u}ckel parameter. kappa > 0. Referenced only if the model is LPB. |
[in] | eta | Regularization parameter. 0 < eta <= 1. |
[in] | se | Shift of the regularization. -1 for interior, 0 for centered and 1 for outer regularization. |
[in] | lmax | Maximal degree of modeling spherical harmonics. lmax >= 0. |
[in] | ngrid | Number of Lebedev grid points ngrid >= 0. |
[in] | matvecmem | handling of sparse matrices. 1 for precomputing them and keeping them in memory, 0 for direct matrix-vector products. |
[in] | maxiter | Maximum number of iterations for an iterative solver. maxiter > 0. |
[in] | jacobi_ndiis | Number of extrapolation points for Jacobi/DIIS solver. ndiis >= 1. |
[in] | fmm | 1 to use FMM acceleration and 0 otherwise. |
[in] | pm | Maximal degree of multipole spherical harmonics. Ignored in the case fmm=0 . Value -1 means no far-field FMM interactions are computed. pm >= -1. |
[in] | pl | Maximal degree of local spherical harmonics. Ignored in the case fmm=0 . Value -1 means no far-field FMM interactions are computed. pl >= -1. |
[in] | nproc | Number 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] | nsph | Number of atoms. nsph > 0. |
[in] | csph | Coordinates of atoms. Dimension is (3, nsph) . |
[in] | rsph | Van-der-Waals radii of atoms. Dimension is (nsph) . |
[in] | output_filename | file name of log file. |
[out] | params | Object containing all inputs. |
[in,out] | ddx_error | ddX error |
Definition at line 120 of file ddx_parameters.f90.
subroutine ddx_parameters::closest_supported_lebedev_grid | ( | integer, intent(inout) | ngrid | ) |
Adjust a guess for the number of Lebedev grid points.
[in,out] | ngrid | Approximate 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.
subroutine ddx_parameters::params_free | ( | type(ddx_params_type), intent(inout) | params, |
type(ddx_error_type), intent(inout) | ddx_error | ||
) |
Deallocate the parameter object.
[out] | params | User specified parameters |
[in,out] | ddx_error | ddX error |
Definition at line 344 of file ddx_parameters.f90.
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.
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.