A class to sort and hold details of a topology's Lennard-Jones interactions. The Lennard-Jones table is parsed for a combining rule, tables of sigma and epsilon parameters for self-interactions are kept, and a list of pair-specific sigma and epsilon parameters are stored according to the type indices they modify.
More...
|
int | getLJTypeCount () const |
| Get the number of Lennard-Jones indices, the number of distinct Lennard Jones parameter sets which are needed to describe all interactions.
|
|
int | getAtomTypeCount () const |
| Get the number of atom types, including all types with equivalent Lennard-Jones parameters.
|
|
int | getSetCount () const |
| Get the number of Lennard-Jones parameter sets that the analysis has compiled within its data members.
|
|
VdwCombiningRule | getMostPrevalentCombiningRule () const |
| Get the most prevalent Lennard-Jones rule, as judged by the formula that fits the most combinations of distinct sigma and epsilon parameters.
|
|
double | getLJSigma (int consensus_index) const |
| Get the Lennard-Jones self interaction sigma for a particular interaction index from within the consensus tables.
|
|
double | getLJ14Sigma (int consensus_index) const |
| Get the Lennard-Jones 1:4 non-bonded self interaction sigma for a particular interaction index from within the consensus tables. Descriptions of input parameters follow from getLJSigma(), above.
|
|
double | getLJEpsilon (int consensus_index) const |
| Get the Lennard-Jones self interaction epsilon for a particular interaction index from within the consensus tables.
|
|
double | getLJ14Epsilon (int consensus_index) const |
| Get the Lennard-Jones 1:4 non-bonded self interaction epsilon for a particular interaction index from within the consensus tables. Descriptions of input parameters follow from getLJEpsilon(), above.
|
|
double3 | getLJCoefficients (int index_i, int index_j) const |
| Get the Lennard-Jones A and B coefficients for the general non-bonded interaction of two Lennard-Jones atom types. Overloading and descriptions of input parameters follow from getLJParameters(), above.
|
|
double3 | getLJCoefficients (const char4 atype_i, const char4 atype_j, ExceptionResponse policy=ExceptionResponse::DIE) const |
|
double3 | getLJ14Coefficients (int index_i, int index_j) const |
| Get the Lennard-Jones A and B coefficients for the 1:4 non-bonded interaction of two Lennard-Jones atom types. Overloading and descriptions of input parameters follow from getLJParameters(), above.
|
|
double3 | getLJ14Coefficients (const char4 atype_i, const char4 atype_j, ExceptionResponse policy=ExceptionResponse::DIE) const |
|
int | getCorrespondence (int set_index, int type_index) const |
| Obtain the Lennard-Jones type correspondence for an indexed Lennard-Jones type in one of the underlying sets.
|
|
const std::vector< int > & | getSetCorrespondence (int set_index) const |
| Obtain the Lennard-Jones type correspondence for one of the underlying sets. This can be used to reconfigure the Lennard-Jones type indices of a topology to fit within the consensus set.
|
|
const std::vector< int2 > & | getInputInstances (int consensus_index) const |
| Get the input sets and Lennard-Jones types to which one of the consensus Lennard-Jones types maps.
|
|
void | addSet (const NonbondedKit< double > &nbk, const std::vector< std::vector< char4 > > &othr_type_aliases) |
| Add a new set of Lennard-Jones interactions to the list and expand the internal tables with all unique parameters it may contain, as well as new atom type names for existing parameters. The new topology will be checked to ensure that it does not redefine the parameters associated with known atom type names, or contradict the prevailing combining rules of topologies already incorporated into the tables.
|
|
|
| LennardJonesAnalysis (const NonbondedKit< double > &nbk, const std::vector< std::vector< char4 > > &atom_type_aliases_in) |
| The constructor accepts a topology. Supplying additional topologies will expand the analysis to cover multiple systems and create a consensus of their respective Lennard-Jones parameters with arrays to index the original topologies' atoms into the unified tables.
|
|
|
| LennardJonesAnalysis (const LennardJonesAnalysis &original)=default |
|
| LennardJonesAnalysis (LennardJonesAnalysis &&original)=default |
|
LennardJonesAnalysis & | operator= (const LennardJonesAnalysis &original)=default |
|
LennardJonesAnalysis & | operator= (LennardJonesAnalysis &&original)=default |
|
|
const std::vector< char4 > & | getLJAliases (int consensus_index) const |
| Get the atom type names associated with a particular Lennard-Jones parameter set, type index in one of the topologies, or aliases of a particular type name.
|
|
const std::vector< char4 > & | getLJAliases (double sigma_query, double epsilon_query, double tolerance=1.0e-4) const |
|
const std::vector< char4 > & | getLJAliases (const char4 atom_type_query, ExceptionResponse policy=ExceptionResponse::DIE) const |
|
|
double2 | getLJParameters (int consensus_index) const |
| Get the Lennard-Jones sigma and epsilon parameters for the self interaction of a specific interaction index within the consensus tables or atom type name. The sigma parameter appears in the "x" member of the result and the epsilon parameter in the "y" member.
|
|
double2 | getLJParameters (const char4 atom_type_query, ExceptionResponse policy=ExceptionResponse::DIE) const |
|
|
double2 | getLJ14Parameters (int consensus_index) const |
| Get the Lennard-Jones sigma and epsilon parameters for 1:4 self interactions of a specific interaction index within the consensus tables or atom type name. The sigma parameter appears in the "x" member of the result and the epsilon parameter in the "y" member. Overloading and descriptions of input parameters follow from getLJParameters(), above.
|
|
double2 | getLJ14Parameters (const char4 atom_type_query, ExceptionResponse policy=ExceptionResponse::DIE) const |
|
A class to sort and hold details of a topology's Lennard-Jones interactions. The Lennard-Jones table is parsed for a combining rule, tables of sigma and epsilon parameters for self-interactions are kept, and a list of pair-specific sigma and epsilon parameters are stored according to the type indices they modify.