2#ifndef STORMM_ATOMGRAPH_ENUMERATORS_H
3#define STORMM_ATOMGRAPH_ENUMERATORS_H
6#include "Constants/behavior.h"
7#include "Parsing/citation.h"
12using constants::CaseSensitivity;
13using constants::ExceptionResponse;
18enum class TopologyKind {
32enum class TopologyDescriptor {
33 ATOM_COUNT = 0, ATOM_TYPE_COUNT, BONDS_WITH_HYDROGEN, BONDS_WITHOUT_HYDROGEN,
34 ANGLES_WITH_HYDROGEN, ANGLES_WITHOUT_HYDROGEN, DIHEDRALS_WITH_HYDROGEN,
35 DIHEDRALS_WITHOUT_HYDROGEN, NHPARM_UNUSED, ADDLES_CREATED, TOTAL_EXCLUDED_ATOMS,
36 RESIDUE_COUNT, NBONA_UNUSED, NTHETA_UNUSED, NPHIA_UNUSED, BOND_TYPE_COUNT,
37 ANGLE_TYPE_COUNT, DIHEDRAL_TYPE_COUNT, NATYP_UNUSED, NPHB_UNUSED, PERTURBATION,
38 BOND_PERTURBATIONS, ANGLE_PERTURBATIONS, DIHEDRAL_PERTURBATIONS, BONDS_IN_PERTURBED_GROUP,
39 ANGLES_IN_PERTURBED_GROUP, DIHEDRALS_IN_PERTURBED_GROUP, BOX_TYPE_INDEX,
40 ATOM_COUNT_LARGEST_RESIDUE, CAP, EXTRA_POINT_COUNT, PIMD_SLICE_COUNT, N_VALUES
47enum class SanderDescriptor {
48 NATOM = 0, NTYPES, NBONH, MBONA, NTHETH, MTHETA, NPHIH, MPHIA, NHPARM,
49 NPARM, NNB, NRES, NBONA, NTHETA, NPHIA, NUMBND, NUMANG, NPTRA, NATYP, NPHB, IFPERT,
50 NBPER, NGPER, NDPER, MBPER, MGPER, MDPER, IFBOX, NMXRS, IFCAP, NUMEXTRA, NCOPY, N_VALUES
54enum class UnitCellType {
55 NONE = 0, ORTHORHOMBIC, TRICLINIC
59enum class MoleculeKind {
79enum class MoleculeOrdering {
91enum class MobilitySetting {
96enum class PerturbationSetting {
101enum class SolventCapSetting {
106enum class PolarizationSetting {
111enum class TopologyRequirement {
125enum class ConstraintStatus :
char {
128enum class HydrogenContent :
char {
129 NO_HYDROGEN, HAS_HYDROGEN
131enum class ForceFieldFamily :
char {
132 BASIC, AMBER, CHARMM, OPENMM
134enum class TorsionKind :
char {
135 PROPER, PROPER_NO_14, IMPROPER, IMPROPER_NO_14
141enum class ImplicitSolventModel {
153enum class AtomicRadiusSet {
154 NONE, BONDI, AMBER6, MBONDI, MBONDI2, MBONDI3, PARSE
158enum class WaterModel {
202enum class VirtualSiteKind {
235std::string getEnumerationName(TopologyKind input);
236std::string getEnumerationName(UnitCellType input);
237std::string getEnumerationName(MoleculeKind input);
238std::string getEnumerationName(MobilitySetting input);
239std::string getEnumerationName(PerturbationSetting input);
240std::string getEnumerationName(SolventCapSetting input);
241std::string getEnumerationName(PolarizationSetting input);
242std::string getEnumerationName(TopologyRequirement input);
243std::string getEnumerationName(MassForm input);
244std::string getEnumerationName(ConstraintStatus input);
245std::string getEnumerationName(HydrogenContent input);
246std::string getEnumerationName(ForceFieldFamily input);
247std::string getEnumerationName(TorsionKind input);
248std::string getEnumerationName(ImplicitSolventModel input);
249std::string getEnumerationName(AtomicRadiusSet input);
250std::string getEnumerationName(WaterModel input);
251std::string getEnumerationName(VirtualSiteKind input);
261translateImplicitSolventModel(
int igb_val, ExceptionResponse policy = ExceptionResponse::DIE);
268AtomicRadiusSet translateAtomicRadiusSet(
const std::string &pb_radii_in,
269 ExceptionResponse policy = ExceptionResponse::DIE);
274Citation getWaterModelCitation(WaterModel wm);
A means for numbering and tracking citations or other documented sources of information.
Definition citation.h:14