Object to encapsulate electrostatic and Lennard-Jones particle-mesh interaction controls. Like other namelist encapsualtors, this object can take input file data as part of its construction, or by a series of setters. Validation of each piece of data is handled as it appears either in the contructor or via setters. Getter functions dispense the internal information to any application using STORMM libraries.
More...
|
NonbondedTheme | getTheme () const |
| Get the non-bonded potential theme.
|
|
int | getInterpolationOrder () const |
| Get the interpolation order.
|
|
double | getEwaldCoefficient () const |
| Get the Ewald coefficient.
|
|
double | getGaussianWidth () const |
| Get the Gaussian particle density spreading sigma.
|
|
double | getCutoff () const |
| Get the particle-particle interaction cutoff.
|
|
double | getDirectSumTolerance () const |
| Get the direct sum tolerance.
|
|
int | getMeshSubdivisions () const |
| Get the number of particle-mesh interaction grid ticks per spatial decomposition cell.
|
|
PMIStrategy | getStrategy () const |
| Get the strategy for choosing particle-mesh interaction grid parameters. This is not passed along to other objects, and is reported for purposes of interrogating the contents of an object of this class.
|
|
VdwSumMethod | getVdwSummation () const |
| Get the method for computing van-der Waals interactions between particles.
|
|
void | setInterpolationOrder (int order_in) |
| Set the interpolation order.
|
|
void | setEwaldCoefficient (double ewald_coefficient_in) |
| Set the Ewald coefficient.
|
|
void | setGaussianWidth (double spread_in) |
| Set the Gaussian particle density spreading sigma.
|
|
void | setCutoff (double cutoff_in) |
| Set the particle-particle interaction cutoff.
|
|
void | setDirectSumTolerance (double dsum_tol_in) |
| Set the direct sum tolerance.
|
|
void | setMeshSubdivisions (int mesh_ticks_in) |
| Set the number of particle-interaction grid elements per spatial decomposition cell.
|
|
void | applyStrategy () |
| Apply the current strategy, to the extent possible, for filling in missing parameters from the &pppm namelist in the interest of obtaining a particular level of accuracy.
|
|
|
| PPPMControls (ExceptionResponse policy_in=ExceptionResponse::DIE, WrapTextSearch wrap=WrapTextSearch::NO) |
| The constructor can prepare an object with default settings or read the corresponding namelist to accept user input.
|
|
| PPPMControls (const TextFile &tf, int *start_line, bool *found_nml, ExceptionResponse policy_in=ExceptionResponse::DIE, WrapTextSearch wrap=WrapTextSearch::NO) |
|
|
| PPPMControls (const PPPMControls &original)=default |
| As with other control objects, copy and move constructors, plus copy and move assignment operators, can all take their default forms.
|
|
| PPPMControls (PPPMControls &&original)=default |
|
PPPMControls & | operator= (const PPPMControls &original)=default |
|
PPPMControls & | operator= (PPPMControls &&original)=default |
|
|
void | setTheme (NonbondedTheme theme_in) |
| Set the non-bonded potential type.
|
|
void | setTheme (const std::string &theme_in) |
|
|
void | setStrategy (PMIStrategy strat_in) |
| Set the strategy for determining various parameters of the particle-mesh interaction grid. Overloading follows from other keywords which control an enumeration setting.
|
|
void | setStrategy (const std::string &strat_in) |
|
|
void | setVdwSummation (const std::string &vdw_method_in) |
| Set the strategy for evaluating the tails of van-der Waals (Lennard-Jones) interactions.
|
|
void | setVdwSummation (const VdwSumMethod vdw_method_in) |
|
Object to encapsulate electrostatic and Lennard-Jones particle-mesh interaction controls. Like other namelist encapsualtors, this object can take input file data as part of its construction, or by a series of setters. Validation of each piece of data is handled as it appears either in the contructor or via setters. Getter functions dispense the internal information to any application using STORMM libraries.