OpenMD 3.1
Molecular Dynamics in the Open
Loading...
Searching...
No Matches
OpenMD Namespace Reference

This basic Periodic Table class was originally taken from the data.cpp file in OpenBabel. More...

Classes

class  Accumulator
 Basic Accumulator class for numbers. More...
 
class  ActionCorrFunc
 
class  AlphaHull
 Compute alpha complex or alpha shape. More...
 
class  AlphaHullFinder
 
class  AmberImproperTorsionType
 "types/AmberImproperTorsionType.hpp" More...
 
class  AnalyticalModel
 
struct  AndParamConstraint
 
class  AngleR
 
class  AngularVelocityAutoOutProductCorrFunc
 
class  AngularVelVelOutProdCorrFunc
 
class  ApproximateModel
 
class  Atom
 
class  AtomData
 
class  AtomicBeadModel
 
struct  AtomInfo
 
class  AtomNameVisitor
 
class  AtomStamp
 
class  AtomType
 AtomType is what OpenMD looks to for unchanging data about an atom. More...
 
class  AtomTypeCompare
 
class  AtomTypesSectionParser
 "io/AtomTypesSectionParser.hpp" More...
 
class  AutoCorrFunc
 
class  BAOAB
 Declaration of the Langevin Dynamics BAOAB Integrator. More...
 
class  BaseAccumulator
 
class  BaseAtomTypesSectionParser
 "io/BaseAtomTypesSectionParser.hpp" More...
 
class  BaseAtomVisitor
 
class  BaseRigidBodyVisitor
 
class  BaseVisitor
 
class  basic_teebuf
 As a subclass of basic_streambuf, basic_teebuf can operate on multiple stream simultaneously. More...
 
class  BCCLattice
 
class  BeadModel
 References: More...
 
class  Bend
 
struct  BendData
 
struct  BendDataSet
 
class  BendStamp
 
class  BendType
 
class  BendTypeParser
 
class  BendTypesSectionParser
 "io/BendTypesSectionParser.hpp" More...
 
class  BlockSnapshotManager
 
class  Bond
 
class  BondAngleDistribution
 BondAngleDistribution. More...
 
class  BondCorrFunc
 
class  BondOrderParameter
 Bond Order Parameter. More...
 
class  BondStamp
 
class  BondType
 BondType class is responsible for calculating the force and energy of the bond. More...
 
class  BondTypeParser
 
class  BondTypesSectionParser
 "io/BondTypesSectionParser.hpp" More...
 
class  BOPofR
 
class  BoundaryElementModel
 
class  BoxObjectiveFunction
 
class  Buckingham
 
struct  BuckinghamInteractionData
 
class  BuckinghamInteractionType
 BuckinghamInteractionType is one of the basic non-bonded interactions for representing the non-Coulombic contribution in ionic and networked solids like silica and alumina. More...
 
class  CenterOfMass
 
class  ChargeAtomTypesSectionParser
 
class  ChargeDensityZ
 
class  ChargeField
 
class  ChargeHistogram
 
class  ChargeKineticCorrFunc
 
class  ChargeOrientationCorrFunc
 
class  ChargeR
 
class  ChargeZ
 
struct  CharmmTorsionParameter
 
class  CharmmTorsionType
 "types/CharmmTorsionType.hpp" These torsion types are defined identically with functional form given in the following paper: More...
 
class  ChebyshevT
 A collection of Chebyshev Polynomials. More...
 
class  ChebyshevU
 A collection of Chebyshev Polynomials. More...
 
class  COHZ
 
class  CollectiveDipoleDisplacement
 Calculates the collective dipole displacement function. More...
 
class  Communicator
 
class  Comparator
 
class  Component
 
class  CompositeShape
 Combine composite pattern and visitor pattern. More...
 
class  CompositeVisitor
 
class  COMVel
 
struct  ConstraintData
 
class  ConstraintElem
 An adapter class of StuntDouble which is used at constraint algorithm. More...
 
class  ConstraintPair
 
class  ConstraintStamp
 
class  ConstraintWriter
 
class  ContactAngle1
 Calculates the contact angle of a droplet with a surface using a spherical cap approximation for the droplet. More...
 
class  ContactAngle2
 
struct  ContainsConstraint
 
class  ConvexHull
 
class  CoordinationNumber
 CoordinationNumber. More...
 
class  CosineBendType
 A simple harmonic bend using the cosine of the angle instead of the angle itself: More...
 
class  CosineSeriesBendType
 A bend used primarily in UFF that utilizes a Fourier series in terms of the cosine of the bend angle: More...
 
class  CrossCorrFunc
 
class  CubicBendType
 
class  CubicBondType
 
class  CubicLattice
 
class  CubicSpline
 
class  CubicTorsionType
 
class  Cuboctahedron
 Generates coordinates of atoms inside a Cuboctahedron. More...
 
class  CurlingStoneDecahedron
 
class  CurrentDensity
 
class  CurrentDensityAutoCorrFunc
 
class  CutoffGroup
 
class  CutoffGroupStamp
 
class  DataHolder
 
class  DataStorage
 
class  Decahedron
 Creates the regular decahedron, Ino decahedron, or truncated (Marks) decahedron structures (depending on the parameters). More...
 
class  DefaultAtomVisitor
 
class  DensityField
 
class  DensityHistogram
 
class  DensityPlot
 
class  DipoleCorrFunc
 
class  DipoleField
 
class  DipoleOrientation
 
class  DirectionalAdapter
 
class  DirectionalAtom
 
class  DirectionalAtomTypesSectionParser
 
struct  DirectionalAtypeParameters
 
class  DirectionalRCorrFunc
 
class  Displacement
 
class  DisplacementZ
 
class  DistanceFinder
 
class  DLM
 
class  DumpReader
 
class  DumpStatusFunction
 
class  DumpWriter
 
class  DynamicProperty
 "applications/dynamicProps/DynamicProperty" More...
 
class  DynamicRectMatrix
 rectangular matrix class More...
 
class  DynamicVector
 Dynamically-sized vector class. More...
 
class  EAM
 
class  EAMAdapter
 
struct  EAMAtomData
 
class  EAMAtomTypesSectionParser
 "io/EAMAtomTypesSectionParser.hpp" More...
 
struct  EAMInteractionData
 
class  EAMInteractionType
 EAMInteractionType is one of the basic metallic interactions for representing the bonding in metallic solids. More...
 
struct  EAMParameters
 
class  Electrostatic
 
struct  ElectrostaticAtomData
 
class  ElectrostaticInteraction
 The basic interface for electrostatic interactions. More...
 
class  Element
 
class  ElementsTable
 Periodic Table of the Elements Using element data is a place holder when we lack information about a specific atom type. More...
 
class  Ellipsoid
 An ellipsoid in OpenMD is restricted to having two equal equatorial semi-axes. More...
 
class  EnergyCorrFunc
 
struct  EqualConstraint
 
struct  EqualIgnoreCaseConstraint
 
class  Equipartition
 
struct  EvenConstraint
 
class  FCCLattice
 
class  FCCOfR
 
class  Field
 
class  FixedBondType
 FixedBondType class is responsible for calculating the force and energy of the bond. More...
 
class  FixedChargeAdapter
 
struct  FixedChargeAtypeParameters
 
struct  FluctuatingAtypeParameters
 
class  FluctuatingChargeAdapter
 
struct  FluctuatingChargeAtomData
 
class  FluctuatingChargeAtomTypesSectionParser
 
class  FluctuatingChargeConstraints
 
class  FluctuatingChargeDamped
 
class  FluctuatingChargeForces
 
class  FluctuatingChargeLangevin
 
class  FluctuatingChargeNVE
 
class  FluctuatingChargeNVT
 
class  FluctuatingChargeObjectiveFunction
 
class  FluctuatingChargeParameters
 
class  FluctuatingChargePropagator
 abstract class for propagating fluctuating charge variables More...
 
class  ForceAutoCorrFunc
 
class  ForceDecomposition
 ForceDecomposition is an interface for passing out and collecting information from many processors at various stages of the main non-bonded ForceLoop. More...
 
class  ForceField
 
class  ForceFieldOptions
 
class  ForceManager
 ForceManager is responsible for calculating both the short range (bonded) interactions and long range (non-bonded) interactions. More...
 
class  ForceMatrixDecomposition
 
class  ForceModifier
 Abstract class for external ForceModifier classes. More...
 
class  ForTorCorrFunc
 
class  FragmentStamp
 
struct  FrameData
 FrameData is a structure for holding system-wide dynamic data about the simulation. More...
 
class  FrameTimeCorrFunc
 
class  FreqFlucCorrFunc
 Frequency Fluctuation Correlation Function. More...
 
struct  FuncflParameters
 
class  GaussianTriangleQuadratureRule
 
class  GayBerneAdapter
 
class  GayBerneAtomTypesSectionParser
 
class  GB
 
struct  GBAtypeParameters
 
class  GBheadVisitor
 
struct  GBInteractionData
 
class  GBtailVisitor
 
class  GCN
 Generalized Coordinate Number. More...
 
class  GCNSeq
 Generalized Coordinate Number Sequence. More...
 
class  GenericData
 @ class GenericData GenericData.hpp "utils/GenericData.hpp" More...
 
class  GenericFactory
 GenericFactory is a template based Object Factory Factory pattern is used to define an interface for creating an object. More...
 
class  GhostBend
 
class  GhostTorsion
 
class  Globals
 
class  GofAngle2
 
class  GofR
 
class  GofRAngle
 
class  GofRAngle2
 
class  GofROmega
 
class  GofRTheta
 
class  GofRZ
 
class  GofXyz
 
class  GofZ
 
struct  GreaterThanConstraint
 
struct  GreaterThanOrEqualTo
 
class  Grid3D
 
class  gzstreambase
 
class  gzstreambuf
 
class  HarmonicBendType
 
class  HarmonicBondType
 HarmonicBondType is the basic OpenMD bond type. More...
 
class  HarmonicInversionType
 This inversion potential has the form: More...
 
class  HarmonicSineBendType
 A bend using the square of the sine of the angle instead of the angle itself: More...
 
class  HarmonicTorsionType
 These torsion types are defined identically with functional form given in equation 5 in the following paper: More...
 
class  HBondGeometric
 Hydrogen Bonding statistics using geometric criteria. More...
 
class  HBondJump
 
class  HBondJumpR
 
class  HBondJumpZ
 
class  HBondPersistence
 
class  HBondR
 Hydrogen Bonding density binned by r. More...
 
class  HBondRvol
 Hydrogen Bonding density binned by r. More...
 
class  HBondZ
 Hydrogen Bonding density binned by z. More...
 
class  HBondZvol
 Hydrogen Bonding density binned by z. More...
 
class  Hull
 
class  HullFinder
 
class  Hxy
 
struct  HydrodynamicsElement
 
class  HydrodynamicsModel
 
class  HydrodynamicsModelBuilder
 
class  HydrodynamicsModelCreator
 
class  HydrodynamicsModelFactory
 Factory pattern and Singleton Pattern are used to define an interface for creating an HydrodynamicsModel. More...
 
class  HydrogenBondingInteraction
 The basic interface for hydrogen bonding interactions. More...
 
class  HydroIO
 
class  HydroProp
 Container for information about the hydrodynamic behavior of objects interacting with surroundings. More...
 
class  IcosahedralOfR
 
class  Icosahedron
 Create the Mackay icosahedron structure. More...
 
class  ifstrstream
 ifstrstream class provides a stream interface to read data from files. More...
 
class  igzstream
 
struct  ImproperCosineInversionParameter
 
class  ImproperCosineInversionType
 "types/ImproperCosineInversionType.hpp" More...
 
class  IndexFinder
 
class  IndexListContainer
 
class  InoDecahedron
 
class  Integrator
 Declaration of the Integrator base class, which all other integrators inherit from. More...
 
class  IntegratorBuilder
 
class  IntegratorCreator
 
class  IntegratorFactory
 Factory pattern and Singleton Pattern are used to define an interface for creating an Integrator. More...
 
struct  InteractionData
 The InteractionData struct. More...
 
class  InteractionManager
 InteractionManager is responsible for keeping track of the non-bonded interactions (C++) More...
 
class  InteractionTimeCorrFunc
 
class  InversePowerSeries
 
struct  InversePowerSeriesInteractionData
 
class  InversePowerSeriesInteractionType
 InversePowerSeriesInteractionType is a sum of powers in the inverse of r: More...
 
class  Inversion
 
struct  InversionData
 
struct  InversionDataSet
 
class  InversionStamp
 
class  InversionType
 
class  InversionTypeParser
 "types/InversionTypeParser.hpp" More...
 
class  InversionTypesSectionParser
 "io/InversionTypesSectionParser.hpp" More...
 
class  Kirkwood
 
class  KirkwoodBuff
 
class  KirkwoodQuadrupoles
 
class  LangevinDynamics
 
class  LangevinHullDynamics
 
class  LangevinHullForceModifier
 Force modifier for NPT Langevin Hull Dynamics applying friction and random forces as well as torques. More...
 
class  LangevinPiston
 Constant pressure and temperature integrator. More...
 
class  Lattice
 
class  LatticeBuilder
 
class  LatticeCreator
 
class  LatticeFactory
 Factory pattern and Singleton Pattern are used to define an interface for creating an Lattice. More...
 
class  LDForceModifier
 Force modifier for Langevin Dynamics applying friction and random forces as well as torques. More...
 
class  LegendreCorrFunc
 
class  LegendreCorrFuncZ
 
class  LegendreGauss1d
 
struct  LegendreGauss1dParams
 
class  LegendrePolynomial
 A collection of Legendre Polynomials. More...
 
class  LennardJonesAdapter
 
class  LennardJonesAtomTypesSectionParser
 
class  LennardJonesInteractionType
 LennardJonesInteractionType is one of the basic interaction types. More...
 
struct  LessThanConstraint
 
struct  LessThanOrEqualToConstraint
 
class  LessThanPeriodicityFunctor
 
class  LipidHeadVisitor
 
class  LipidTransVisitor
 
class  LJ
 
struct  LJAtypeParameters
 
struct  LJInteractionData
 
class  LocalIndexManager
 "utils/LocalIndexManager.hpp" More...
 
class  MagneticField
 Applies a uniform (vector) magnetic field to the system. More...
 
class  MassDensityR
 
class  MassDensityZ
 
class  MatrixAccumulator
 
class  MAW
 
struct  MAWInteractionData
 
class  MAWInteractionType
 MAWInteractionType (Metal-Angular-Water) is one of the basic Metal-to-NonMetal interaction types. More...
 
class  MeanDisplacement
 
class  Mesh
 
class  MetallicInteraction
 The basic interface for metallic interactions. More...
 
class  Mie
 
struct  MieInteractionData
 
class  MieInteractionType
 MieInteractionType is one of the basic interaction types. More...
 
class  MinimizerParameters
 
class  MolecularRestraint
 MolecularRestraint is the restraint (both positional and orientational) for the configuration of a flexible Molecule relative to some reference structure for the same Molecule. More...
 
class  Molecule
 
class  MoleculeACF
 
class  MoleculeCCF
 
class  MoleculeCount
 
class  MoleculeCreator
 
class  MoleculeStamp
 
class  MoLocator
 
class  MomAngMomCorrFunc
 
struct  MomentData
 
class  MomentumCorrFunc
 
class  MomentumHistogram
 
class  Morse
 
class  MorseBondType
 MorseBondType is a more realistic bond potential. More...
 
struct  MorseInteractionData
 
class  MorseInteractionType
 MorseInteractionType is one of the basic non-bonded interactions. More...
 
class  MPFrameTimeCorrFunc
 
class  MPITraits
 
class  MPITraits< RectMatrix< T, R, C > >
 
class  MPITraits< SquareMatrix3< T > >
 
class  MPITraits< Vector3< T > >
 
class  MPITraits< Vector< T, Dim > >
 
class  MSMSFormat
 
class  MultiComponentRDF
 Multi-Component Radial Distribution Function. More...
 
class  MultipassCorrFunc
 Computes a correlation function by scanning a trajectory once to precompute quantities to be correlated. More...
 
class  MultipoleAdapter
 
class  MultipoleAtomTypesSectionParser
 
struct  MultipoleAtypeParameters
 
class  MultipoleSum
 
class  NameFinder
 
class  NanoLength
 
class  NanoVolume
 
struct  NegativeConstraint
 
class  NgammaT
 Constant lateral surface tension integrator. More...
 
class  NitrileFrequencyMap
 
class  NodesStamp
 
class  NonBondedInteraction
 The basic interface for non-bonded interactions. More...
 
class  NonBondedInteractionsSectionParser
 
class  NonBondedInteractionType
 NonBondedInteractionType class is responsible for keeping track of static (unchanging) parameters for explicit non-bonded interactions. More...
 
struct  NonBondedInteractionTypeProperties
 
struct  NonNegativeConstraint
 
struct  NonPositiveConstraint
 
struct  NonZeroConstraint
 
class  NoStatus
 No status. More...
 
struct  NotEmptyConstraint
 
struct  NotParamConstraint
 
class  NPA
 Constant normal pressure and lateral surface area integrator No thermostat! More...
 
class  NPAT
 Constant normal pressure and lateral surface area integrator. More...
 
class  NPrT
 Constant normal pressure and lateral surface tension integrator. More...
 
class  NPT
 
class  NPTf
 
class  NPTi
 
class  NPTsz
 A utility integrator (much like NPTxyz) but which keeps the relative scaling of x & y fixed. More...
 
class  NPTxyz
 
class  NumberR
 
class  NumberZ
 
class  NVE
 
class  NVT
 Basic thermostating via Hoover, Phys.Rev.A, 1985, Vol. More...
 
class  ObjectACF
 
class  ObjectCCF
 
class  ObjectCount
 
class  ObjectRestraint
 ObjectRestraint is the basic harmonic restraint for the degrees of freedom of a StuntDouble. More...
 
class  ogzstream
 
class  OnsagerCorrFunc
 
class  OpenMDBitSet
 OpenMDBitSet is a wrapper class of std::vector<bool> to act as a growable std::bitset. More...
 
class  OpenMDException
 
class  OplsTorsionType
 These torsion types are defined identically with functional form given in the following paper: More...
 
class  OptimizationBuilder
 
class  OptimizationCreator
 
class  OptimizationFactory
 Factory pattern and Singleton Pattern are used to define an interface for creating an Optimization. More...
 
class  OptionSectionParser
 "io/OptionSectionParser.hpp" More...
 
class  OrderParameterProbZ
 
struct  OrParamConstraint
 
class  P2OrderParameter
 
class  P2R
 
class  P2Z
 
class  PairList
 PairList class maintains a general purpose list of atom pairs using the global indices of the atoms. More...
 
class  pAngle
 
struct  ParamConstraintFacade
 This class allows to recognize constraint predicates, so that they can be combined using composition operators. More...
 
class  ParticleTimeCorrFunc
 
class  PipeDensity
 
class  Plan
 
class  PolarizableAdapter
 
class  PolarizableAtomTypesSectionParser
 
struct  PolarizableAtypeParameters
 
class  Polynomial
 A generic Polynomial class. More...
 
class  PolynomialBendType
 "types/PolynomialBendType.hpp" More...
 
class  PolynomialBondType
 "types/PolynomialBondType.hpp" More...
 
class  PolynomialInversionType
 "types/PolynomialInversionType.hpp" More...
 
class  PolynomialTorsionType
 "types/PolynomialTorsionType.hpp" More...
 
class  PositionZ
 
struct  PositiveConstraint
 
class  PotDiff
 Potential Energy differences with charges turned off. More...
 
class  PotentialEnergyObjectiveFunction
 
class  PotVecAccumulator
 
class  PrepareVisitor
 
class  ProgressBar
 
class  PropertyMap
 PropertyMap class maintains a list of GenericData. More...
 
class  QuarticBendType
 
class  QuarticBondType
 
class  QuarticTorsionType
 
class  Quaternion
 Quaternion is a sort of a higher-level complex number. More...
 
class  RadialDistrFunc
 Radial Distribution Function. More...
 
class  Rattle
 Velocity Verlet Constraint Algorithm. More...
 
class  RBCOMVisitor
 
class  RCorrFunc
 
class  RCorrFuncR
 
class  RCorrFuncZ
 
class  RealSphericalHarmonic
 
class  RealSymmetricTridiagonal
 Computes eigenvalues and eigenvectors of a real (non-complex) symmetric tridiagonal matrix by the QL method. More...
 
class  RectMatrix
 rectangular matrix class More...
 
class  RegularCuboctahedron
 
class  RegularDecahedron
 
class  ReplacementVisitor
 Replaces an atomic object with a collection atomic sites. More...
 
class  ReplicateVisitor
 
class  RepulsivePower
 
class  RepulsivePowerInteractionType
 RepulsivePowerInteractionType is one of the basic interaction types. More...
 
class  Restraint
 
class  RestraintForceModifier
 
class  RestraintStamp
 
class  RestReader
 
class  RestWriter
 
class  Revision
 
class  RhoR
 
class  RhoZ
 
class  RigidBody
 
class  RigidBodyStamp
 
class  RippleOP
 
class  RMSD
 
class  RNEMDR
 
class  RNEMDRTheta
 
class  RNEMDZ
 
class  RotAngleDisplacement
 
class  RotationAlgorithm
 abstract class for rotation More...
 
class  RoughShell
 
struct  RPInteractionData
 
class  SameSectionParserFunctor
 
class  SC
 
struct  SCAtomData
 
class  SCAtomTypesSectionParser
 "io/SCAtomTypesSectionParser.hpp" More...
 
struct  SCAtypeParameters
 
class  SCDElem
 
class  SCDOrderParameter
 
struct  SCInteractionData
 
class  SCLattice
 
class  SCN
 Secondary Coordinate Number. More...
 
class  SDKBend
 
class  SDKBendType
 
struct  SDShape
 
class  SectionParser
 
struct  SectionParserContext
 
class  SectionParserManager
 "io/SectionParserManager.hpp" SectionParserManager maintains a priority list More...
 
class  SelectionCompiler
 "selection/SelectionCompiler.hpp" More...
 
class  SelectionCorrFunc
 
class  SelectionEvaluator
 "selection/SelectionEvaluator" More...
 
class  SelectionManager
 
class  SelectionSet
 
struct  SelfData
 The SelfData struct. More...
 
class  SequentialAnalyzer
 "applications/sequentialProps/SequentialAnalyzer" More...
 
class  Shake
 
class  Shape
 
class  ShapeAtomType
 
class  ShapeAtomTypesSectionParser
 
class  ShapeBuilder
 
class  shapedLattice
 Returns a vector of vector3 position on a lattice truncated. More...
 
class  shapedLatticeEllipsoid
 Implements an ellipsoid-shaped lattice. More...
 
class  shapedLatticePentRod
 Implements a spherically-capped rod-shaped lattice. More...
 
class  shapedLatticeRod
 Implements a spherically-capped rod-shaped lattice. More...
 
class  shapedLatticeSpherical
 Implements a spherical lattice. More...
 
class  SHAPES
 
class  ShellStatistics
 
class  ShiftedMieBondType
 ShiftedMieBondType is used to correct 1-3 bend interactions in the SDK force field. More...
 
class  ShortRangeInteraction
 A ShortRangeInteraction holds some bookeeping data for bonded interactions (e.g. More...
 
class  SimCreator
 The only responsibility of SimCreator is to parse the meta-data file and create a SimInfo instance based on the information returned by parser. More...
 
class  SimInfo
 One of the heavy-weight classes of OpenMD, SimInfo maintains objects and variables relating to the current simulation. More...
 
class  SimplePreprocessor
 
class  SimpleTypeData
 SimpleTypeData class is a POD repository class. More...
 
class  SimSnapshotManager
 "brains/SimSnapshotManager.hpp" More...
 
class  SlabStatistics
 
class  Snapshot
 The Snapshot class is a repository storing dynamic data during a Simulation. More...
 
class  SnapshotManager
 SnapshotManager class is an abstract class which maintains a series of snapshots. More...
 
class  SpatialStatistics
 
struct  SPFData
 
class  SPFDynamics
 
class  Sphere
 
class  SphericalHarmonic
 
class  SquareMatrix
 A square matrix class. More...
 
class  SquareMatrix3
 
class  SSDAtomVisitor
 
class  StaticAnalyser
 
class  Stats
 
class  StatusFunction
 
class  StatWriter
 A configurable Statistics Writer. More...
 
class  Sticky
 
class  StickyAdapter
 
class  StickyAtomTypesSectionParser
 "io/StickyAtomTypesSectionParser.hpp" More...
 
struct  StickyAtypeParameters
 
struct  StickyInteractionData
 
class  StickyPowerAtomTypesSectionParser
 StickyPowerAtomTypesSectionParser.hpp "io/StickyAtomTypesSectionParser.hpp". More...
 
class  StrangFixCowperTriangleQuadratureRule
 
class  StressCorrFunc
 
class  StringTokenizer
 The string tokenizer class allows an application to break a string into tokens The set of delimiters (the characters that separate tokens) may be specified either at creation time or on a per-token basis. More...
 
class  StuntDouble
 "Don't move, or you're dead! Stand up! Captain, we've got them!" More...
 
class  SurfaceDiffusion
 
class  SuttonChenAdapter
 
class  SwitchingFunction
 
class  SystemACF
 
class  SystemCCF
 
class  SystemDecomposition
 SystemDecomposition is an interface for passing out and collecting information from many processors for use during integration and computation of physical properties. More...
 
class  SystemDipoleCorrFunc
 
class  TetrahedralityHBMatrix
 Tetrahedrality Hydrogen Bonding Matrix. More...
 
class  TetrahedralityParam
 Tetrahedrality Parameter. More...
 
class  TetrahedralityParamDens
 Tetrahedrality ParameterDens. More...
 
class  TetrahedralityParamR
 Tetrahedrality ParameterR. More...
 
class  TetrahedralityParamXYZ
 Tetrahedrality Parameter XYZ. More...
 
class  TetrahedralityParamZ
 Tetrahedrality ParameterZ. More...
 
class  Thermo
 
class  ThermoIntegrationForceModifier
 
class  ThetaCorrFunc
 
class  TimeCorrFunc
 Computes a correlation function by scanning a trajectory once to precompute quantities to be correlated. More...
 
class  Token
 
class  TokenMap
 
class  TorForCorrFunc
 
class  TorqueAutoCorrFunc
 
class  Torsion
 
struct  TorsionData
 
struct  TorsionDataSet
 
class  TorsionStamp
 
class  TorsionType
 
class  TorsionTypeParser
 "types/TorsionTypeParser.hpp" More...
 
class  TorsionTypesSectionParser
 "io/TorsionTypesSectionParser.hpp" More...
 
class  TranslationalOrderParamZ
 TranslationalOrder ParameterZ. More...
 
class  TrappeTorsionType
 "types/TrappeTorsionType.hpp" These torsion types are defined identically with functional form given in the following paper: More...
 
class  TreeNode
 
class  Triangle
 Triangle provides geometric data to OpenMD. More...
 
class  TriangleQuadrature
 A class for integrating a function using numerical quadrature over triangular domains. More...
 
class  TriangleQuadratureRule
 A "rule" (weights and quadrature points) for computing quadrature over triangular domains. More...
 
class  TruncatedCube
 
class  TwoDGofR
 
class  TypeContainer
 
class  UFFAdapter
 
class  UFFAtomTypesSectionParser
 
struct  UFFAtypeParameters
 
class  UniformField
 Applies a uniform (vector) electric field to the system. More...
 
class  UniformGradient
 Applies a uniform electric field gradient to the system. More...
 
class  UreyBradleyBend
 
class  UreyBradleyBendType
 
class  VanDerWaalsInteraction
 The basic interface for van der Waals interactions. More...
 
class  VCorrFunc
 
class  VCorrFuncR
 
class  VCorrFuncZ
 
class  Vector
 Fix length vector class. More...
 
class  Vector2
 
class  Vector3
 
class  VectorAccumulator
 
class  VectorTypeData
 
class  VelAngularVelOutProdCorrFunc
 
class  Velocitizer
 Velocity-modifying routines. More...
 
class  VelocityAutoOutProductCorrFunc
 
class  VelocityField
 
class  VelocityVerletIntegrator
 
class  VelocityZ
 
class  WaterTypeVisitor
 
class  WCorrFunc
 
class  WrappingVisitor
 
struct  XYZAtom
 
class  XYZFormat
 
class  XYZVisitor
 
struct  ZconsData
 
class  ZConsReader
 
class  ZConsStamp
 
class  ZConstraintForceModifier
 
struct  ZconstraintMol
 
struct  ZconstraintParam
 
class  ZConsVisitor
 
class  ZConsWriter
 
struct  ZeroConstraint
 
struct  ZhouParameters
 

Typedefs

using SnapshotBlock = std::pair<int, int>
 
typedef DataStorageSnapshot::* DataStoragePointer
 
using TeeBuf = basic_teebuf<char>
 
using CubicSplinePtr = std::shared_ptr<CubicSpline>
 
using DoublePolynomial = Polynomial<RealType>
 
using Quat4d = Quaternion<RealType>
 
using Mat6x6d = SquareMatrix<RealType, 6>
 
using Mat3x3d = SquareMatrix3<RealType>
 
using RotMat3x3d = SquareMatrix3<RealType>
 
typedef Vector2< int > Vector2i
 
typedef Vector2< RealType > Vector2d
 
using Vector3i = Vector3<int>
 
using Vector3d = Vector3<RealType>
 
using potVec = Vector<RealType, N_INTERACTION_FAMILIES>
 
using NonBondedInteractionPtr = std::shared_ptr<NonBondedInteraction>
 
using RestraintData = SimpleTypeData<Restraint*>
 
using TreeNodePtr = std::shared_ptr<TreeNode>
 
using AtomTypeSet = std::set<AtomType*, AtomTypeCompare>
 
using DirectionalAtypeData = SimpleTypeData<DirectionalAtypeParameters>
 
using EAMData = SimpleTypeData<EAMParameters>
 
using FuncflData = SimpleTypeData<FuncflParameters>
 
using ZhouData = SimpleTypeData<ZhouParameters>
 
using FixedChargeAtypeData = SimpleTypeData<FixedChargeAtypeParameters>
 
using FluctuatingAtypeData = SimpleTypeData<FluctuatingAtypeParameters>
 
using GBAtypeData = SimpleTypeData<GBAtypeParameters>
 
using LJAtypeData = SimpleTypeData<LJAtypeParameters>
 
using MultipoleAtypeData = SimpleTypeData<MultipoleAtypeParameters>
 
using PolarizableAtypeData = SimpleTypeData<PolarizableAtypeParameters>
 
using ShapeAtypeData = SimpleTypeData<ShapeAtomType*>
 
using StickyAtypeData = SimpleTypeData<StickyAtypeParameters>
 
using SCAtypeData = SimpleTypeData<SCAtypeParameters>
 
using UFFAtypeData = SimpleTypeData<UFFAtypeParameters>
 
using BoolGenericData = SimpleTypeData<bool>
 BoolGenericData is a generic data type contains a bool variable.
 
using IntGenericData = SimpleTypeData<int>
 IntGenericData is a generic data type contains an integer variable.
 
using FloatGenericData = SimpleTypeData<float>
 FloatGenericData is a generic data type contains a float variable.
 
using DoubleGenericData = SimpleTypeData<RealType>
 DoubleGenericData is a generic data type contains a RealType variable.
 
using StringGenericData = SimpleTypeData<std::string>
 A generic data type contains a std::string variable.
 
using IntVectorGenericData = VectorTypeData<int>
 A generic data type contains a std::vector<int> variable.
 
using FloatVectorGenericData = VectorTypeData<float>
 
using DoubleVectorGenericData = VectorTypeData<RealType>
 
using StringVectorGenericData = VectorTypeData<std::string>
 A generic data type contains a std::vector<string> variable.
 
using ProgressBarPtr = std::unique_ptr<ProgressBar>
 
using VisitorIterator = std::list<std::pair<BaseVisitor*, int>>::iterator
 

Enumerations

enum  CutoffMethod {
  HARD , SWITCHED , SHIFTED_POTENTIAL , SHIFTED_FORCE ,
  TAYLOR_SHIFTED , EWALD_FULL
}
 
enum  EAMMixingMethod {
  eamJohnson , eamDaw , eamDream1 , eamDream2 ,
  eamUnknownMix
}
 
enum  ElectrostaticSummationMethod {
  esm_HARD , esm_SWITCHING_FUNCTION , esm_SHIFTED_POTENTIAL , esm_SHIFTED_FORCE ,
  esm_TAYLOR_SHIFTED , esm_REACTION_FIELD , esm_EWALD_FULL , esm_EWALD_PME ,
  esm_EWALD_SPME
}
 
enum  ElectrostaticScreeningMethod { UNDAMPED , DAMPED }
 
enum  InteractionFamily {
  NO_FAMILY = 0 , VANDERWAALS_FAMILY , ELECTROSTATIC_FAMILY = 2 , METALLIC_EMBEDDING_FAMILY ,
  METALLIC_PAIR_FAMILY , HYDROGENBONDING_FAMILY = 5 , BONDED_FAMILY = 6 , N_INTERACTION_FAMILIES = 7
}
 The InteractionFamily enum. More...
 
enum  SwitchingFunctionType { cubic , fifth_order_poly }
 
enum  communicatorType { Global = 0 , Row = 1 , Column = 2 }
 
enum  SelectionType {
  STUNTDOUBLE = 0 , BOND = 1 , BEND = 2 , TORSION = 3 ,
  INVERSION = 4 , MOLECULE = 5 , N_SELECTIONTYPES = 6
}
 The SelectionType enum. More...
 
enum  BuckinghamType { btTraditional , btModified , btUnknown }
 
enum  EAMType {
  eamFuncfl , eamZhou2001 , eamZhou2004 , eamZhou2005 ,
  eamZhou2005Oxygen , eamZhouRose , eamOxygenFuncfl , eamUnknown
}
 
enum  EAMiType { eamitTabulated , eamitZhou , eamitOxides }
 
enum  InversionKey { itAngle , itCosAngle }
 
enum  MorseType { mtShifted , mtRepulsive , mtUnknown }
 
enum class  StringState : char {
  SlashOC , StarIC , SingleLineComment , MultiLineComment ,
  NotAComment
}
 

Functions

std::ostream & operator<< (std::ostream &o, PairList &e)
 
void registerIntegrators ()
 Register all integrators.
 
void registerOptimizers ()
 Register all optimizers.
 
void registerLattice ()
 Register all lattice.
 
void registerAll ()
 register force fields, integrators and optimizers
 
int getGlobalCountOfType (AtomType *)
 
ostream & operator<< (ostream &o, SimInfo &info)
 
bool pairCompare (const pair< RealType, int > &l, const pair< RealType, int > &r)
 
template<class Cont , class Predict >
void swap_if (Cont &b1, Cont &b2, Predict predict)
 
std::ostream & operator<< (std::ostream &o, HydrodynamicsModelFactory &factory)
 write out all of the type identifiers to an output stream
 
Mesh operator+ (const Mesh &m1, const Mesh &m2)
 
std::ostream & operator<< (std::ostream &o, IntegratorFactory &factory)
 write out all of the type identifiers to an output stream
 
NotEmptyConstraint isNotEmpty ()
 
ZeroConstraint isZero ()
 
ParamConstraintFacade< NonZeroConstraintisNonZero ()
 
PositiveConstraint isPositive ()
 
NonPositiveConstraint isNonPositive ()
 
NegativeConstraint isNegative ()
 
NonNegativeConstraint isNonNegative ()
 
EqualIgnoreCaseConstraint isEqualIgnoreCase (std::string str)
 
EvenConstraint isEven ()
 
template<typename Cons1T , typename Cons2T >
AndParamConstraint< Cons1T, Cons2T > operator&& (const ParamConstraintFacade< Cons1T > &cons1, const ParamConstraintFacade< Cons2T > &cons2)
 
template<typename Cons1T , typename Cons2T >
OrParamConstraint< Cons1T, Cons2T > operator|| (const ParamConstraintFacade< Cons1T > &cons1, const ParamConstraintFacade< Cons2T > &cons2)
 
template<typename ConsT >
NotParamConstraint< ConsT > operator! (const ParamConstraintFacade< ConsT > &cons)
 
template<typename T >
LessThanConstraint< T > isLessThan (T &v)
 
template<typename T >
LessThanOrEqualToConstraint< T > isLessThanOrEqualTo (T &v)
 
template<typename T >
EqualConstraint< T > isEqual (T &v)
 
template<typename T >
GreaterThanConstraint< T > isGreaterThan (T &v)
 
template<typename T >
GreaterThanOrEqualTo< T > isGreaterThanOrEqualTo (T &v)
 
std::ostream & operator<< (std::ostream &o, LatticeFactory &factory)
 write out all of the type identifiers to an output stream
 
template<class MatrixType >
void CholeskyDecomposition (MatrixType &A, MatrixType &L)
 
template<typename Real >
DynamicRectMatrix< Real > operator- (const DynamicRectMatrix< Real > &m)
 Negate the value of every element of this matrix.
 
template<typename Real >
DynamicRectMatrix< Real > operator+ (const DynamicRectMatrix< Real > &m1, const DynamicRectMatrix< Real > &m2)
 Return the sum of two matrixes (m1 + m2).
 
template<typename Real >
DynamicRectMatrix< Real > operator- (const DynamicRectMatrix< Real > &m1, const DynamicRectMatrix< Real > &m2)
 Return the difference of two matrixes (m1 - m2).
 
template<typename Real >
DynamicRectMatrix< Real > operator* (const DynamicRectMatrix< Real > &m, Real s)
 Return the multiplication of scalar and matrix (m * s).
 
template<typename Real >
DynamicRectMatrix< Real > operator* (Real s, const DynamicRectMatrix< Real > &m)
 Return the multiplication of a scalar and a matrix (s * m).
 
template<typename Real >
DynamicRectMatrix< Real > operator* (const DynamicRectMatrix< Real > &m1, const DynamicRectMatrix< Real > &m2)
 Return the multiplication of two matrixes (m1 * m2).
 
template<typename Real >
DynamicVector< Real > operator* (const DynamicRectMatrix< Real > &m, const DynamicVector< Real > &v)
 Return the multiplication of a matrix and a vector (m * v).
 
template<typename Real >
DynamicRectMatrix< Real > operator/ (const DynamicRectMatrix< Real > &m, Real s)
 Return the scalar division of matrix (m / s).
 
template<typename Real >
std::ostream & operator<< (std::ostream &o, const DynamicRectMatrix< Real > &m)
 Write to an output stream.
 
template<typename Real >
DynamicVector< Real > operator- (const DynamicVector< Real > &v1)
 unary minus
 
template<typename Real >
DynamicVector< Real > operator+ (const DynamicVector< Real > &v1, const DynamicVector< Real > &v2)
 Return the sum of two vectors (v1 - v2).
 
template<typename Real >
DynamicVector< Real > operator- (const DynamicVector< Real > &v1, const DynamicVector< Real > &v2)
 Return the difference of two vectors (v1 - v2).
 
template<typename Real >
DynamicVector< Real > operator* (const DynamicVector< Real > &v1, Real s)
 Returns the vaule of scalar multiplication of this vector v1 (v1 * r).
 
template<typename Real >
DynamicVector< Real > operator* (Real s, const DynamicVector< Real > &v1)
 Returns the vaule of scalar multiplication of this vector v1 (v1 * r).
 
template<typename Real >
DynamicVector< Real > operator/ (const DynamicVector< Real > &v1, Real s)
 Returns the value of division of a vector by a scalar.
 
template<typename Real >
Real dot (const DynamicVector< Real > &v1, const DynamicVector< Real > &v2)
 Returns the dot product of two DynamicVectors.
 
template<typename Real >
Real distance (const DynamicVector< Real > &v1, const DynamicVector< Real > &v2)
 Returns the distance between two DynamicVectors.
 
template<typename Real >
Real distanceSquare (const DynamicVector< Real > &v1, const DynamicVector< Real > &v2)
 Returns the squared distance between two DynamicVectors.
 
template<typename Real >
std::ostream & operator<< (std::ostream &strm, const DynamicVector< Real > &v)
 Write to an output stream.
 
template<class MatrixType >
bool invertMatrix (MatrixType &A, MatrixType &AI)
 Invert input square matrix A into matrix AI.
 
template<class MatrixType >
bool invertMatrix (MatrixType &A, MatrixType &AI, unsigned int size, int *tmp1Size, typename MatrixType::ElemPoinerType tmp2Size)
 Invert input square matrix A into matrix AI (Thread safe versions).
 
template<class MatrixType >
int LUFactorLinearSystem (MatrixType &A, int *index, int size, typename MatrixType::ElemPoinerType tmpSize)
 Factor linear equations Ax = b using LU decompostion A = LU where L is lower triangular matrix and U is upper triangular matrix.
 
template<class MatrixType >
void LUSolveLinearSystem (MatrixType &A, int *index, typename MatrixType::ElemPoinerType x, int size)
 Solve linear equations Ax = b using LU decompostion A = LU where L is lower triangular matrix and U is upper triangular matrix.
 
template<typename Real >
Real fastpow (Real x, int N)
 
template<typename Real >
Polynomial< Real > operator* (const Polynomial< Real > &p1, const Polynomial< Real > &p2)
 Generates and returns the product of two given Polynomials.
 
template<typename Real >
Polynomial< Real > operator* (const Polynomial< Real > &p, const Real v)
 
template<typename Real >
Polynomial< Real > operator* (const Real v, const Polynomial< Real > &p)
 
template<typename Real >
Polynomial< Real > operator+ (const Polynomial< Real > &p1, const Polynomial< Real > &p2)
 Generates and returns the sum of two given Polynomials.
 
template<typename Real >
Polynomial< Real > operator- (const Polynomial< Real > &p1, const Polynomial< Real > &p2)
 Generates and returns the difference of two given Polynomials.
 
template<typename Real >
Polynomial< Real > * getDerivative (const Polynomial< Real > &p1)
 Returns the first derivative of this polynomial.
 
template<typename Real >
bool equal (const Polynomial< Real > &p1, const Polynomial< Real > &p2)
 Tests if two polynomial have the same exponents.
 
template<typename Real , unsigned int Dim>
Quaternion< Real > operator* (const Quaternion< Real > &q, Real s)
 Returns the vaule of scalar multiplication of this quaterion q (q * s).
 
template<typename Real , unsigned int Dim>
Quaternion< Real > operator* (const Real &s, const Quaternion< Real > &q)
 Returns the vaule of scalar multiplication of this quaterion q (q * s).
 
template<typename Real >
Quaternion< Real > operator* (const Quaternion< Real > &q1, const Quaternion< Real > &q2)
 Returns the multiplication of two quaternion.
 
template<typename Real >
Quaternion< Real > operator/ (Quaternion< Real > &q1, Quaternion< Real > &q2)
 Returns the division of two quaternion.
 
template<typename Real >
Quaternion< Real > operator/ (const Real &s, Quaternion< Real > &q)
 Returns the value of the division of a scalar by a quaternion.
 
template<class T >
bool operator== (const Quaternion< T > &lhs, const Quaternion< T > &rhs)
 
template<typename Real , unsigned int Row, unsigned int Col>
RectMatrix< Real, Row, Col > operator- (const RectMatrix< Real, Row, Col > &m)
 Negate the value of every element of this matrix.
 
template<typename Real , unsigned int Row, unsigned int Col>
RectMatrix< Real, Row, Col > operator+ (const RectMatrix< Real, Row, Col > &m1, const RectMatrix< Real, Row, Col > &m2)
 Return the sum of two matrixes (m1 + m2).
 
template<typename Real , unsigned int Row, unsigned int Col>
RectMatrix< Real, Row, Col > operator- (const RectMatrix< Real, Row, Col > &m1, const RectMatrix< Real, Row, Col > &m2)
 Return the difference of two matrixes (m1 - m2).
 
template<typename Real , unsigned int Row, unsigned int Col>
RectMatrix< Real, Row, Col > operator* (const RectMatrix< Real, Row, Col > &m, Real s)
 Return the multiplication of scalra and matrix (m * s).
 
template<typename Real , unsigned int Row, unsigned int Col>
RectMatrix< Real, Row, Col > operator* (Real s, const RectMatrix< Real, Row, Col > &m)
 Return the multiplication of a scalra and a matrix (s * m).
 
template<typename Real , unsigned int Row, unsigned int Col, unsigned int SameDim>
RectMatrix< Real, Row, Col > operator* (const RectMatrix< Real, Row, SameDim > &m1, const RectMatrix< Real, SameDim, Col > &m2)
 Return the multiplication of two matrixes (m1 * m2).
 
template<typename Real , unsigned int Row, unsigned int Col>
Vector< Real, Row > operator* (const RectMatrix< Real, Row, Col > &m, const Vector< Real, Col > &v)
 Returns the multiplication of a matrix and a vector (m * v).
 
template<typename Real , unsigned int Row, unsigned int Col>
Vector< Real, Col > operator* (const Vector< Real, Row > &v, const RectMatrix< Real, Row, Col > &m)
 Returns the multiplication of a vector transpose and a matrix (v^T * m).
 
template<typename Real , unsigned int Row, unsigned int Col>
RectMatrix< Real, Row, Col > operator/ (const RectMatrix< Real, Row, Col > &m, Real s)
 Return the scalar division of matrix (m / s).
 
template<typename Real , unsigned int Row, unsigned int Col>
Real doubleDot (const RectMatrix< Real, Row, Col > &t1, const RectMatrix< Real, Row, Col > &t2)
 Returns the tensor contraction (double dot product) of two rank 2 tensors (or Matrices)
 
template<typename Real , unsigned int Row, unsigned int Col>
Vector< Real, Row > mCross (const RectMatrix< Real, Row, Col > &t1, const RectMatrix< Real, Row, Col > &t2)
 Returns the vector (cross) product of two matrices.
 
template<typename Real , unsigned int Row, unsigned int Col>
std::ostream & operator<< (std::ostream &o, const RectMatrix< Real, Row, Col > &m)
 Write to an output stream.
 
template<typename Real >
SquareMatrix3< Real > operator* (const SquareMatrix3< Real > &m1, const SquareMatrix3< Real > &m2)
 Return the multiplication of two matrixes (m1 * m2).
 
template<typename Real >
SquareMatrix3< Real > outProduct (const Vector3< Real > &v1, const Vector3< Real > &v2)
 
template<typename T >
bool equal (T e1, T e2)
 
template<typename Real , unsigned int Dim>
Vector< Real, Dim > operator- (const Vector< Real, Dim > &v1)
 unary minus
 
template<typename Real , unsigned int Dim>
Vector< Real, Dim > operator+ (const Vector< Real, Dim > &v1, const Vector< Real, Dim > &v2)
 Return the sum of two vectors (v1 - v2).
 
template<typename Real , unsigned int Dim>
Vector< Real, Dim > operator- (const Vector< Real, Dim > &v1, const Vector< Real, Dim > &v2)
 Return the difference of two vectors (v1 - v2).
 
template<typename Real , unsigned int Dim>
Vector< Real, Dim > operator* (const Vector< Real, Dim > &v1, Real s)
 Returns the vaule of scalar multiplication of this vector v1 (v1 * r).
 
template<typename Real , unsigned int Dim>
Vector< Real, Dim > operator* (Real s, const Vector< Real, Dim > &v1)
 Returns the vaule of scalar multiplication of this vector v1 (v1 * r).
 
template<typename Real , unsigned int Dim>
Vector< Real, Dim > operator/ (const Vector< Real, Dim > &v1, Real s)
 Returns the value of division of a vector by a scalar.
 
template<typename Real , unsigned int Dim>
Real dot (const Vector< Real, Dim > &v1, const Vector< Real, Dim > &v2)
 Returns the dot product of two Vectors.
 
template<typename Real , unsigned int Dim>
Real dot (const Vector< Real, Dim > &v1, const Vector< Real, Dim > &v2, const Vector< Real, Dim > &v3)
 Returns the wide dot product of three Vectors.
 
template<typename Real , unsigned int Dim>
Real distance (const Vector< Real, Dim > &v1, const Vector< Real, Dim > &v2)
 Returns the distance between two Vectors.
 
template<typename Real , unsigned int Dim>
Real distanceSquare (const Vector< Real, Dim > &v1, const Vector< Real, Dim > &v2)
 Returns the squared distance between two Vectors.
 
template<typename Real , unsigned int Dim>
std::ostream & operator<< (std::ostream &o, const Vector< Real, Dim > &v)
 Write to an output stream.
 
std::size_t Vlinear (const Vector2< std::size_t > &p, const Vector2< std::size_t > &s)
 Returns the linear indexing for size_t vectors.
 
template<typename Real >
Vector3< Real > cross (const Vector3< Real > &v1, const Vector3< Real > &v2)
 Returns the cross product of two Vectors.
 
template<typename Real >
Real Vlinear (const Vector3< Real > &p, const Vector3< Real > &s)
 Returns the linear indexing for integer vectors.
 
std::ostream & operator<< (std::ostream &o, OptimizationFactory &factory)
 write out all of the type identifiers to an output stream
 
std::ostream & operator<< (std::ostream &o, Molecule &mol)
 
SelectionManager operator| (const SelectionManager &sman1, const SelectionManager &sman2)
 
SelectionManager operator& (const SelectionManager &sman1, const SelectionManager &sman2)
 
SelectionManager operator^ (const SelectionManager &sman1, const SelectionManager &sman2)
 
SelectionManager operator- (const SelectionManager &sman1, const SelectionManager &sman2)
 
SelectionSet operator| (const SelectionSet &ss1, const SelectionSet &ss2)
 
SelectionSet operator& (const SelectionSet &ss1, const SelectionSet &ss2)
 
SelectionSet operator^ (const SelectionSet &ss1, const SelectionSet &ss2)
 
SelectionSet operator- (const SelectionSet &ss1, const SelectionSet &ss2)
 
bool operator== (const SelectionSet &ss1, const SelectionSet &ss2)
 
std::ostream & operator<< (std::ostream &os, const SelectionSet &ss)
 
std::ostream & operator<< (std::ostream &os, AmberImproperTorsionType &ott)
 
template<class ContainerType >
bool hasDuplicateElement (const ContainerType &cont)
 
std::ostream & operator<< (std::ostream &os, HarmonicInversionType &hit)
 
std::ostream & operator<< (std::ostream &os, HarmonicTorsionType &htt)
 
std::ostream & operator<< (std::ostream &os, OplsTorsionType &ott)
 
std::ostream & operator<< (std::ostream &os, PolynomialBendType &pbt)
 
std::ostream & operator<< (std::ostream &os, PolynomialBondType &pbt)
 
std::ostream & operator<< (std::ostream &os, TrappeTorsionType &ttt)
 
template<typename Container >
void toLower (Container &cont, const std::locale &loc=std::locale())
 
template<typename Container >
Container toLowerCopy (const Container &cont, const std::locale &=std::locale())
 
template<typename Container >
void toUpper (Container &cont, const std::locale &loc=std::locale())
 
template<typename Container >
Container toUpperCopy (const Container &cont, const std::locale &=std::locale())
 
template<typename O , typename I , typename C >
std::ostream & operator<< (std::ostream &o, GenericFactory< O, I, C > &factory)
 write out all of the type identifiers to an output stream
 
template<class RandomAccessIterator >
bool next_combination (std::vector< RandomAccessIterator > &iterContainer, RandomAccessIterator first, RandomAccessIterator last)
 STL next_permuation-like combination sequence generator.
 
OpenMDBitSet operator| (const OpenMDBitSet &bs1, const OpenMDBitSet &bs2)
 
OpenMDBitSet operator& (const OpenMDBitSet &bs1, const OpenMDBitSet &bs2)
 
OpenMDBitSet operator^ (const OpenMDBitSet &bs1, const OpenMDBitSet &bs2)
 
OpenMDBitSet operator- (const OpenMDBitSet &bs1, const OpenMDBitSet &bs2)
 
bool operator== (const OpenMDBitSet &bs1, const OpenMDBitSet &bs2)
 
std::ostream & operator<< (std::ostream &os, const OpenMDBitSet &bs)
 
std::string UpperCase (const std::string &S)
 Converts a string to UPPER CASE.
 
int findBegin (std::istream &theStream, const char *startText)
 Finds the location of the string "begin <startText>" in an input stream.
 
int isEndLine (char *line)
 discovers whether or not the line contains the "end" token
 
std::string OpenMD_itoa (int value, unsigned int base)
 
std::string getPrefix (const std::string &str)
 
bool isInteger (const std::string &str)
 
bool CaseInsensitiveEquals (const char ch1, const char ch2)
 
size_t CaseInsensitiveFind (const std::string &str1, const std::string &str2)
 
template<typename T >
std::string toString (const T &v)
 Convert a variable to a string.
 
template<typename T >
lexi_cast (const std::string &str)
 
template<typename T >
bool isType (const std::string &str)
 
template<class ContainerType >
std::string containerToString (const ContainerType &cont)
 
template<typename InputIt , typename OutputIt >
constexpr OutputIt copyWithoutComments (InputIt first, InputIt last, OutputIt out)
 
bool replaceWithWildCard (std::vector< std::vector< std::string >::iterator > &cont, std::vector< std::string > &sequence, std::vector< std::string > &result, const std::string &wildCard="X")
 iteratively replace the sequence with wild cards
 
RealType roundMe (const RealType &x)
 

Variables

constexpr double SMALL_NUMBER = 1.0e-12
 
constexpr int MAX_SCRATCH_ARRAY_SIZE = 10
 
const Mat3x3d M3Zero (0.0)
 
static constexpr RealType epsilon = 0.000001
 
const Vector2d V2Zero (0.0, 0.0)
 
const Vector2d V2X (1.0, 0.0)
 
const Vector2d V2Y (0.0, 1.0)
 
const Vector3d V3Zero (0.0, 0.0, 0.0)
 
const Vector3d V3X (1.0, 0.0, 0.0)
 
const Vector3d V3Y (0.0, 1.0, 0.0)
 
const Vector3d V3Z (0.0, 0.0, 1.0)
 
static const int ELECTROSTATIC_INTERACTION = (1 << 0)
 Boolean flags for the iHash_ and sHash_ data structures.
 
static const int LJ_INTERACTION = (1 << 1)
 
static const int EAM_INTERACTION = (1 << 2)
 
static const int SC_INTERACTION = (1 << 3)
 
static const int STICKY_INTERACTION = (1 << 4)
 
static const int GB_INTERACTION = (1 << 5)
 
static const int MORSE_INTERACTION = (1 << 6)
 
static const int REPULSIVEPOWER_INTERACTION = (1 << 7)
 
static const int MAW_INTERACTION = (1 << 8)
 
static const int MIE_INTERACTION = (1 << 9)
 
static const int BUCKINGHAM_INTERACTION = (1 << 10)
 
static const int INVERSEPOWERSERIES_INTERACTION = (1 << 11)
 
string const DirectionalTypeID = "Directional"
 
string const EAMtypeID = "EAM"
 
string const FuncflTypeID = "FUNCFL"
 
string const ZhouTypeID = "ZHOU"
 
string const ZhouRoseTypeID = "ZHOUROSE"
 
string const FCtypeID = "Charge"
 
string const FQtypeID = "FlucQ"
 
string const GBtypeID = "GB"
 
string const LJtypeID = "LJ"
 
string const MultipoleTypeID = "Multipole"
 
string const PolTypeID = "Polarizable"
 
string const StickyTypeID = "Sticky"
 
string const SCtypeID = "SC"
 
string const UFFtypeID = "UFF"
 
ElementsTable etab
 
const char * progressSpinner_ = "|/-\\"
 

Detailed Description

This basic Periodic Table class was originally taken from the data.cpp file in OpenBabel.

The code has been modified to match the OpenMD coding style.

We have retained the OpenBabel copyright and GPL license on this class:

Copyright (C) 1998-2001 by OpenEye Scientific Software, Inc. Some portions Copyright (C) 2001-2005 by Geoffrey R. Hutchison

This file is part of the Open Babel project. For more information, see http://openbabel.sourceforge.net/

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation version 2 of the License.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Typedef Documentation

◆ AtomTypeSet

using OpenMD::AtomTypeSet = std::set<AtomType*, AtomTypeCompare>

Definition at line 168 of file AtomType.hpp.

◆ BoolGenericData

BoolGenericData is a generic data type contains a bool variable.

Definition at line 147 of file GenericData.hpp.

◆ CubicSplinePtr

using OpenMD::CubicSplinePtr = std::shared_ptr<CubicSpline>

Definition at line 95 of file CubicSpline.hpp.

◆ DataStoragePointer

typedef DataStorageSnapshot::* OpenMD::DataStoragePointer

Definition at line 356 of file Snapshot.hpp.

◆ DirectionalAtypeData

◆ DoubleGenericData

DoubleGenericData is a generic data type contains a RealType variable.

Definition at line 156 of file GenericData.hpp.

◆ DoublePolynomial

Definition at line 625 of file Polynomial.hpp.

◆ DoubleVectorGenericData

Definition at line 224 of file GenericData.hpp.

◆ EAMData

Definition at line 128 of file EAMAdapter.hpp.

◆ FixedChargeAtypeData

◆ FloatGenericData

FloatGenericData is a generic data type contains a float variable.

Definition at line 153 of file GenericData.hpp.

◆ FloatVectorGenericData

Definition at line 218 of file GenericData.hpp.

◆ FluctuatingAtypeData

◆ FuncflData

◆ GBAtypeData

◆ IntGenericData

IntGenericData is a generic data type contains an integer variable.

Definition at line 150 of file GenericData.hpp.

◆ IntVectorGenericData

A generic data type contains a std::vector<int> variable.

A generic data type contains a std::vector<RealType> variable.

A generic data type contains a std::vector<float> variable.

Definition at line 212 of file GenericData.hpp.

◆ LJAtypeData

◆ Mat3x3d

using OpenMD::Mat3x3d = SquareMatrix3<RealType>

Definition at line 641 of file SquareMatrix3.hpp.

◆ Mat6x6d

using OpenMD::Mat6x6d = SquareMatrix<RealType, 6>

Definition at line 461 of file SquareMatrix.hpp.

◆ MultipoleAtypeData

◆ NonBondedInteractionPtr

using OpenMD::NonBondedInteractionPtr = std::shared_ptr<NonBondedInteraction>

Definition at line 209 of file NonBondedInteraction.hpp.

◆ PolarizableAtypeData

◆ potVec

using OpenMD::potVec = Vector<RealType, N_INTERACTION_FAMILIES>

Definition at line 94 of file NonBondedInteraction.hpp.

◆ ProgressBarPtr

using OpenMD::ProgressBarPtr = std::unique_ptr<ProgressBar>

Definition at line 70 of file ProgressBar.hpp.

◆ Quat4d

using OpenMD::Quat4d = Quaternion<RealType>

Definition at line 627 of file Quaternion.hpp.

◆ RestraintData

Definition at line 191 of file Restraint.hpp.

◆ RotMat3x3d

using OpenMD::RotMat3x3d = SquareMatrix3<RealType>

Definition at line 642 of file SquareMatrix3.hpp.

◆ SCAtypeData

◆ ShapeAtypeData

◆ SnapshotBlock

using OpenMD::SnapshotBlock = std::pair<int, int>

Definition at line 57 of file BlockSnapshotManager.hpp.

◆ StickyAtypeData

◆ StringGenericData

A generic data type contains a std::string variable.

StringGenericData* s = new StringGenericData("MyStringGenericData");
PropertyMap propMap;
GenericData* gdata;
s->setData("OpenMD");
propMap->addProperty(s);
gdata = propMap->getPropertyByName("MyStringGenericData");
if (gdata != NULL){
s = dynamic_cast<StringGenericData*>(gdata);
if (s != NULL)
std::cout << s->getData() << std::endl;
}
@ class GenericData GenericData.hpp "utils/GenericData.hpp"
PropertyMap class maintains a list of GenericData.
std::shared_ptr< GenericData > getPropertyByName(const std::string &propName)
Returns property.
void addProperty(std::shared_ptr< GenericData > genData)
Adds property into property map.
SimpleTypeData class is a POD repository class.
const ElemDataType & getData() const
Returns POD data.
void setData(const ElemDataType &data)
Sets POD data.
SimpleTypeData< std::string > StringGenericData
A generic data type contains a std::string variable.

Definition at line 179 of file GenericData.hpp.

◆ StringVectorGenericData

A generic data type contains a std::vector<string> variable.

propMap; std::vector<std::string>::iterator iter;
sv->push_back("Hello World");
sv->push_back("OpenMD");
propMap.addProperty(sv);
gdata = propMap.getPropertyByName("MyStringVector");
if (gdata != NULL){
sv = dynamic_cast<StringVectorGenericData*>(gdata);
if (sv != NULL){
for (iter = sv->begin(); iter != sv->end(); ++ iter)
std::cout << *iter << std::endl;
}
}
VectorTypeData< std::string > StringVectorGenericData
A generic data type contains a std::vector<string> variable.

Definition at line 253 of file GenericData.hpp.

◆ TeeBuf

Definition at line 116 of file basic_teebuf.hpp.

◆ TreeNodePtr

using OpenMD::TreeNodePtr = std::shared_ptr<TreeNode>

Definition at line 65 of file NameFinder.hpp.

◆ UFFAtypeData

◆ Vector2d

typedef Vector2<RealType> OpenMD::Vector2d

Definition at line 118 of file Vector2.hpp.

◆ Vector2i

typedef Vector2<int> OpenMD::Vector2i

Definition at line 116 of file Vector2.hpp.

◆ Vector3d

using OpenMD::Vector3d = Vector3<RealType>

Definition at line 160 of file Vector3.hpp.

◆ Vector3i

using OpenMD::Vector3i = Vector3<int>

Definition at line 158 of file Vector3.hpp.

◆ VisitorIterator

using OpenMD::VisitorIterator = std::list<std::pair<BaseVisitor*, int>>::iterator

Definition at line 55 of file CompositeVisitor.hpp.

◆ ZhouData

Definition at line 130 of file EAMAdapter.hpp.

Enumeration Type Documentation

◆ BuckinghamType

enum OpenMD::BuckinghamType

Definition at line 72 of file BuckinghamInteractionType.hpp.

◆ communicatorType

enum OpenMD::communicatorType

Definition at line 58 of file Communicator.hpp.

◆ CutoffMethod

enum OpenMD::CutoffMethod

Definition at line 50 of file Cutoffs.hpp.

◆ EAMiType

enum OpenMD::EAMiType

Definition at line 65 of file EAMInteractionType.hpp.

◆ EAMMixingMethod

enum OpenMD::EAMMixingMethod

Definition at line 82 of file EAM.hpp.

◆ EAMType

enum OpenMD::EAMType

Definition at line 61 of file EAMAdapter.hpp.

◆ ElectrostaticScreeningMethod

enum OpenMD::ElectrostaticScreeningMethod

Definition at line 86 of file Electrostatic.hpp.

◆ ElectrostaticSummationMethod

Enumerator
esm_EWALD_PME 

PME Ewald methods aren't supported yet.

esm_EWALD_SPME 

SPME Ewald methods aren't supported yet.

Definition at line 74 of file Electrostatic.hpp.

◆ InteractionFamily

The InteractionFamily enum.

This is used to sort different types of non-bonded interaction and to prevent multiple interactions in the same family from being applied to any given pair of atom types.

Enumerator
NO_FAMILY 

No family defined.

VANDERWAALS_FAMILY 

Long-range dispersion and short-range pauli repulsion.

ELECTROSTATIC_FAMILY 

Coulombic and point-multipole interactions.

METALLIC_EMBEDDING_FAMILY 

Transition metal interactions involving electron density.

METALLIC_PAIR_FAMILY 

Transition metal interactions involving pair potentials.

HYDROGENBONDING_FAMILY 

Short-range directional interactions.

BONDED_FAMILY 

directly bonded 1-2, 1-3, or 1-4 interactions

Definition at line 62 of file NonBondedInteraction.hpp.

◆ InversionKey

enum OpenMD::InversionKey

Definition at line 59 of file InversionType.hpp.

◆ MorseType

enum OpenMD::MorseType

Definition at line 65 of file MorseInteractionType.hpp.

◆ SelectionType

The SelectionType enum.

This is used to sort different types of selections by object type

Enumerator
STUNTDOUBLE 

StuntDoubles (Atoms & RigidBodies)

BOND 

Bonds.

BEND 

Bends.

TORSION 

Torsions.

INVERSION 

Inversions.

MOLECULE 

Molecules.

Definition at line 60 of file SelectionSet.hpp.

◆ StringState

enum class OpenMD::StringState : char
strong

Definition at line 145 of file StringUtils.hpp.

◆ SwitchingFunctionType

enum OpenMD::SwitchingFunctionType

Definition at line 53 of file SwitchingFunction.hpp.

Function Documentation

◆ CaseInsensitiveEquals()

bool OpenMD::CaseInsensitiveEquals ( const char ch1,
const char ch2 )

Definition at line 187 of file StringUtils.cpp.

◆ CaseInsensitiveFind()

size_t OpenMD::CaseInsensitiveFind ( const std::string & str1,
const std::string & str2 )

Definition at line 191 of file StringUtils.cpp.

◆ CholeskyDecomposition()

template<class MatrixType >
void OpenMD::CholeskyDecomposition ( MatrixType & A,
MatrixType & L )

Definition at line 54 of file CholeskyDecomposition.hpp.

◆ containerToString()

template<class ContainerType >
std::string OpenMD::containerToString ( const ContainerType & cont)

Definition at line 129 of file StringUtils.hpp.

◆ copyWithoutComments()

template<typename InputIt , typename OutputIt >
OutputIt OpenMD::copyWithoutComments ( InputIt first,
InputIt last,
OutputIt out )
constexpr

Definition at line 149 of file StringUtils.hpp.

◆ cross()

template<typename Real >
Vector3< Real > OpenMD::cross ( const Vector3< Real > & v1,
const Vector3< Real > & v2 )
inline

◆ distance() [1/2]

template<typename Real >
Real OpenMD::distance ( const DynamicVector< Real > & v1,
const DynamicVector< Real > & v2 )
inline

Returns the distance between two DynamicVectors.

Parameters
v1first vector
v2second vector
Returns
the distance between v1 and v2

Definition at line 456 of file DynamicVector.hpp.

References OpenMD::DynamicVector< Real, Alloc >::length().

Referenced by OpenMD::shapedLatticeRod::isInterior().

◆ distance() [2/2]

template<typename Real , unsigned int Dim>
Real OpenMD::distance ( const Vector< Real, Dim > & v1,
const Vector< Real, Dim > & v2 )
inline

Returns the distance between two Vectors.

Parameters
v1first vector
v2second vector
Returns
the distance between v1 and v2

Definition at line 546 of file Vector.hpp.

References OpenMD::Vector< Real, Dim >::length().

◆ distanceSquare() [1/2]

template<typename Real >
Real OpenMD::distanceSquare ( const DynamicVector< Real > & v1,
const DynamicVector< Real > & v2 )
inline

Returns the squared distance between two DynamicVectors.

Parameters
v1first vector
v2second vector
Returns
the squared distance between v1 and v2

Definition at line 469 of file DynamicVector.hpp.

References OpenMD::DynamicVector< Real, Alloc >::lengthSquare().

◆ distanceSquare() [2/2]

template<typename Real , unsigned int Dim>
Real OpenMD::distanceSquare ( const Vector< Real, Dim > & v1,
const Vector< Real, Dim > & v2 )
inline

Returns the squared distance between two Vectors.

Parameters
v1first vector
v2second vector
Returns
the squared distance between v1 and v2

Definition at line 559 of file Vector.hpp.

References OpenMD::Vector< Real, Dim >::lengthSquare().

◆ dot() [1/3]

template<typename Real >
Real OpenMD::dot ( const DynamicVector< Real > & v1,
const DynamicVector< Real > & v2 )
inline

◆ dot() [2/3]

template<typename Real , unsigned int Dim>
Real OpenMD::dot ( const Vector< Real, Dim > & v1,
const Vector< Real, Dim > & v2 )
inline

Returns the dot product of two Vectors.

Parameters
v1first vector
v2second vector
Returns
the dot product of v1 and v2

Definition at line 508 of file Vector.hpp.

◆ dot() [3/3]

template<typename Real , unsigned int Dim>
Real OpenMD::dot ( const Vector< Real, Dim > & v1,
const Vector< Real, Dim > & v2,
const Vector< Real, Dim > & v3 )
inline

Returns the wide dot product of three Vectors.

Compare with Rapaport's VWDot function.

Parameters
v1first vector
v2second vector
v3third vector
Returns
the wide dot product of v1, v2, and v3.

Definition at line 528 of file Vector.hpp.

◆ doubleDot()

template<typename Real , unsigned int Row, unsigned int Col>
Real OpenMD::doubleDot ( const RectMatrix< Real, Row, Col > & t1,
const RectMatrix< Real, Row, Col > & t2 )
inline

Returns the tensor contraction (double dot product) of two rank 2 tensors (or Matrices)

\[ \mathbf{A} \colon \! \mathbf{B} = \sum_\alpha \sum_\beta \mathbf{A}_{\alpha \beta} B_{\alpha \beta} \]

Parameters
t1first tensor
t2second tensor
Returns
the tensor contraction (double dot product) of t1 and t2

Definition at line 602 of file RectMatrix.hpp.

◆ equal() [1/2]

template<typename Real >
bool OpenMD::equal ( const Polynomial< Real > & p1,
const Polynomial< Real > & p2 )

Tests if two polynomial have the same exponents.

Returns
true if all of the exponents in these Polynomial are identical
Parameters
p1the first polynomial
p2the second polynomial
Note
this function does not compare the coefficient

Definition at line 611 of file Polynomial.hpp.

Referenced by OpenMD::DynamicVector< Real, Alloc >::isNormalized(), OpenMD::Vector< Real, Dim >::isNormalized(), OpenMD::DynamicRectMatrix< Real >::operator==(), OpenMD::Quaternion< Real >::operator==(), OpenMD::RectMatrix< Real, Row, Col >::operator==(), and OpenMD::Vector< Real, Dim >::operator==().

◆ equal() [2/2]

template<typename T >
bool OpenMD::equal ( T e1,
T e2 )
inline

Definition at line 66 of file Vector.hpp.

◆ fastpow()

template<typename Real >
Real OpenMD::fastpow ( Real x,
int N )

Definition at line 68 of file Polynomial.hpp.

◆ findBegin()

int OpenMD::findBegin ( std::istream & theStream,
const char * startText )

Finds the location of the string "begin <startText>" in an input stream.

Parameters
theStream
startText
Returns
the line number of the block within the theStream

Definition at line 71 of file StringUtils.cpp.

◆ getDerivative()

template<typename Real >
Polynomial< Real > * OpenMD::getDerivative ( const Polynomial< Real > & p1)

Returns the first derivative of this polynomial.

Returns
the first derivative of this polynomial

Definition at line 587 of file Polynomial.hpp.

References OpenMD::Polynomial< Real >::setCoefficient().

◆ getGlobalCountOfType()

int OpenMD::getGlobalCountOfType ( AtomType * )

Definition at line 785 of file SimInfo.cpp.

◆ getPrefix()

std::string OpenMD::getPrefix ( const std::string & str)
Todo
need implementation

Definition at line 169 of file StringUtils.cpp.

Referenced by OpenMD::PotDiff::PotDiff(), and OpenMD::ZConsVisitor::ZConsVisitor().

◆ hasDuplicateElement()

template<class ContainerType >
bool OpenMD::hasDuplicateElement ( const ContainerType & cont)

Definition at line 59 of file FragmentStamp.cpp.

◆ invertMatrix() [1/2]

template<class MatrixType >
bool OpenMD::invertMatrix ( MatrixType & A,
MatrixType & AI )

Invert input square matrix A into matrix AI.

Parameters
Ainput square matrix
AIoutput square matrix
Returns
true if inverse is computed, otherwise return false
Note
A is modified during the inversion

Definition at line 98 of file LU.hpp.

References invertMatrix().

Referenced by OpenMD::SquareMatrix< Real, Dim >::inverse(), and invertMatrix().

◆ invertMatrix() [2/2]

template<class MatrixType >
bool OpenMD::invertMatrix ( MatrixType & A,
MatrixType & AI,
unsigned int size,
int * tmp1Size,
typename MatrixType::ElemPoinerType tmp2Size )

Invert input square matrix A into matrix AI (Thread safe versions).

Parameters
Ainput square matrix
AIoutput square matrix
sizesize of the matrix and temporary arrays
tmp1Sizetemporary array
tmp2Sizetemporary array
Returns
true if inverse is computed, otherwise return false
Note
A is modified during the inversion.

Definition at line 135 of file LU.hpp.

References LUFactorLinearSystem(), and LUSolveLinearSystem().

◆ isEndLine()

int OpenMD::isEndLine ( char * line)

discovers whether or not the line contains the "end" token

Parameters
lineThe line to test
Returns
int (==1 if the line has "end", ==0 if not).

Definition at line 122 of file StringUtils.cpp.

◆ isEqual()

template<typename T >
EqualConstraint< T > OpenMD::isEqual ( T & v)
inline

Definition at line 366 of file ParamConstraint.hpp.

◆ isEqualIgnoreCase()

EqualIgnoreCaseConstraint OpenMD::isEqualIgnoreCase ( std::string str)

Definition at line 64 of file ParamConstraint.cpp.

◆ isEven()

EvenConstraint OpenMD::isEven ( )

Definition at line 68 of file ParamConstraint.cpp.

◆ isGreaterThan()

template<typename T >
GreaterThanConstraint< T > OpenMD::isGreaterThan ( T & v)
inline

Definition at line 371 of file ParamConstraint.hpp.

◆ isGreaterThanOrEqualTo()

template<typename T >
GreaterThanOrEqualTo< T > OpenMD::isGreaterThanOrEqualTo ( T & v)
inline

Definition at line 376 of file ParamConstraint.hpp.

◆ isInteger()

bool OpenMD::isInteger ( const std::string & str)

Definition at line 173 of file StringUtils.cpp.

◆ isLessThan()

template<typename T >
LessThanConstraint< T > OpenMD::isLessThan ( T & v)
inline

Definition at line 356 of file ParamConstraint.hpp.

◆ isLessThanOrEqualTo()

template<typename T >
LessThanOrEqualToConstraint< T > OpenMD::isLessThanOrEqualTo ( T & v)
inline

Definition at line 361 of file ParamConstraint.hpp.

◆ isNegative()

NegativeConstraint OpenMD::isNegative ( )

Definition at line 60 of file ParamConstraint.cpp.

◆ isNonNegative()

NonNegativeConstraint OpenMD::isNonNegative ( )

Definition at line 62 of file ParamConstraint.cpp.

◆ isNonPositive()

NonPositiveConstraint OpenMD::isNonPositive ( )

Definition at line 58 of file ParamConstraint.cpp.

◆ isNonZero()

ParamConstraintFacade< NonZeroConstraint > OpenMD::isNonZero ( )

Definition at line 52 of file ParamConstraint.cpp.

◆ isNotEmpty()

NotEmptyConstraint OpenMD::isNotEmpty ( )

Definition at line 48 of file ParamConstraint.cpp.

◆ isPositive()

PositiveConstraint OpenMD::isPositive ( )

Definition at line 56 of file ParamConstraint.cpp.

◆ isType()

template<typename T >
bool OpenMD::isType ( const std::string & str)

Definition at line 113 of file StringUtils.hpp.

◆ isZero()

ZeroConstraint OpenMD::isZero ( )

Definition at line 50 of file ParamConstraint.cpp.

◆ lexi_cast()

template<typename T >
T OpenMD::lexi_cast ( const std::string & str)

Definition at line 105 of file StringUtils.hpp.

◆ LUFactorLinearSystem()

template<class MatrixType >
int OpenMD::LUFactorLinearSystem ( MatrixType & A,
int * index,
int size,
typename MatrixType::ElemPoinerType tmpSize )

Factor linear equations Ax = b using LU decompostion A = LU where L is lower triangular matrix and U is upper triangular matrix.

Parameters
Ainput square matrix
indexpivot indices
sizesize of the matrix and temporary arrays
tmpSizetemporary array
Returns
true if inverse is computed, otherwise return false
Note
A is modified during the inversion.

Definition at line 181 of file LU.hpp.

Referenced by invertMatrix().

◆ LUSolveLinearSystem()

template<class MatrixType >
void OpenMD::LUSolveLinearSystem ( MatrixType & A,
int * index,
typename MatrixType::ElemPoinerType x,
int size )

Solve linear equations Ax = b using LU decompostion A = LU where L is lower triangular matrix and U is upper triangular matrix.

Parameters
Ainput square matrix
indexpivot indices
xvector
sizesize of the matrix and temporary arrays
Returns
true if inverse is computed, otherwise return false
Note
A=LU and index[] are generated from method LUFactorLinearSystem). Also, solution vector is written directly over input load vector.

Definition at line 271 of file LU.hpp.

Referenced by invertMatrix().

◆ mCross()

template<typename Real , unsigned int Row, unsigned int Col>
Vector< Real, Row > OpenMD::mCross ( const RectMatrix< Real, Row, Col > & t1,
const RectMatrix< Real, Row, Col > & t2 )
inline

Returns the vector (cross) product of two matrices.

This operation is defined in:

W. Smith, "Point Multipoles in the Ewald Summation (Revisited)," CCP5 Newsletter No 46., pp. 18-30.

Equation 21 defines:

\[ V_alpha = \sum_\beta \left[ A_{\alpha+1,\beta} * B_{\alpha+2,\beta} -A_{\alpha+2,\beta} * B_{\alpha+2,\beta} \right] \]

where

\[\alpha+1\]

and

\[\alpha+2\]

are regarded as cyclic permuations of the matrix indices (i.e. for a 3x3 matrix, when

\[\alpha = 2\]

,

\[\alpha + 1 = 3 \]

, and

\[\alpha + 2 = 1 \]

).

Parameters
t1first matrix
t2second matrix
Returns
the cross product (vector product) of t1 and t2

Definition at line 636 of file RectMatrix.hpp.

◆ next_combination()

template<class RandomAccessIterator >
bool OpenMD::next_combination ( std::vector< RandomAccessIterator > & iterContainer,
RandomAccessIterator first,
RandomAccessIterator last )

STL next_permuation-like combination sequence generator.

Given the first and last iterator of a sequence, next_combination iteratively generates all possible combinations.

Returns
if more combination is availiable, otherwise return false
Parameters
iterContaineriterator container
firstthe first iterator
lastthe last iterator
Note
first and last must be random access iterators and iterContainer must be the container of random access iterators . And all of the iteratos in iterContainer must be within the range [first, last)
std::vector<int> iv;
iv.push_back(1);
iv.push_back(8);
std::vector<std::vector<int>::iterator> ic;
while(next_combination(ic, iv.begin(), iv.end())) {
for (i = ic.begin(); i < ic.end(); ++i) {
std::cout << **i << "\t";
}
std::cout << std::endl;
}
//output
//1
//8
//1 8
bool next_combination(std::vector< RandomAccessIterator > &iterContainer, RandomAccessIterator first, RandomAccessIterator last)
STL next_permuation-like combination sequence generator.

Definition at line 91 of file next_combination.hpp.

Referenced by replaceWithWildCard().

◆ OpenMD_itoa()

std::string OpenMD::OpenMD_itoa ( int value,
unsigned int base )

Definition at line 141 of file StringUtils.cpp.

◆ operator!()

template<typename ConsT >
NotParamConstraint< ConsT > OpenMD::operator! ( const ParamConstraintFacade< ConsT > & cons)
inline

Definition at line 338 of file ParamConstraint.hpp.

◆ operator&() [1/3]

OpenMDBitSet OpenMD::operator& ( const OpenMDBitSet & bs1,
const OpenMDBitSet & bs2 )

Definition at line 185 of file OpenMDBitSet.cpp.

◆ operator&() [2/3]

SelectionManager OpenMD::operator& ( const SelectionManager & sman1,
const SelectionManager & sman2 )

Definition at line 687 of file SelectionManager.cpp.

◆ operator&() [3/3]

SelectionSet OpenMD::operator& ( const SelectionSet & ss1,
const SelectionSet & ss2 )

Definition at line 197 of file SelectionSet.cpp.

◆ operator&&()

template<typename Cons1T , typename Cons2T >
AndParamConstraint< Cons1T, Cons2T > OpenMD::operator&& ( const ParamConstraintFacade< Cons1T > & cons1,
const ParamConstraintFacade< Cons2T > & cons2 )
inline

Definition at line 320 of file ParamConstraint.hpp.

◆ operator*() [1/20]

template<typename Real >
DynamicVector< Real > OpenMD::operator* ( const DynamicRectMatrix< Real > & m,
const DynamicVector< Real > & v )
inline

Return the multiplication of a matrix and a vector (m * v).

Returns
the multiplication of a matrix and a vector
Parameters
mthe matrix
vthe vector

Definition at line 578 of file DynamicRectMatrix.hpp.

◆ operator*() [2/20]

template<typename Real >
DynamicRectMatrix< Real > OpenMD::operator* ( const DynamicRectMatrix< Real > & m,
Real s )
inline

Return the multiplication of scalar and matrix (m * s).

Returns
the multiplication of a scalar and a matrix
Parameters
mthe matrix
sthe scalar

Definition at line 524 of file DynamicRectMatrix.hpp.

References OpenMD::DynamicRectMatrix< Real >::mul().

◆ operator*() [3/20]

template<typename Real >
DynamicRectMatrix< Real > OpenMD::operator* ( const DynamicRectMatrix< Real > & m1,
const DynamicRectMatrix< Real > & m2 )
inline

Return the multiplication of two matrixes (m1 * m2).

Returns
the multiplication of two matrixes
Parameters
m1the first matrix
m2the second matrix

Definition at line 556 of file DynamicRectMatrix.hpp.

◆ operator*() [4/20]

template<typename Real >
DynamicVector< Real > OpenMD::operator* ( const DynamicVector< Real > & v1,
Real s )

Returns the vaule of scalar multiplication of this vector v1 (v1 * r).

Returns
the vaule of scalar multiplication of this vector
Parameters
v1the source vector
sthe scalar value

Definition at line 399 of file DynamicVector.hpp.

References OpenMD::DynamicVector< Real, Alloc >::mul().

◆ operator*() [5/20]

template<typename Real >
Polynomial< Real > OpenMD::operator* ( const Polynomial< Real > & p,
const Real v )

Definition at line 520 of file Polynomial.hpp.

◆ operator*() [6/20]

template<typename Real >
Polynomial< Real > OpenMD::operator* ( const Polynomial< Real > & p1,
const Polynomial< Real > & p2 )

Generates and returns the product of two given Polynomials.

Returns
A Polynomial containing the product of the two given Polynomial parameters

Definition at line 504 of file Polynomial.hpp.

References OpenMD::Polynomial< Real >::addCoefficient().

◆ operator*() [7/20]

template<typename Real , unsigned int Dim>
Quaternion< Real > OpenMD::operator* ( const Quaternion< Real > & q,
Real s )

Returns the vaule of scalar multiplication of this quaterion q (q * s).

Returns
the vaule of scalar multiplication of this vector
Parameters
qthe source quaternion
sthe scalar value

Definition at line 561 of file Quaternion.hpp.

References OpenMD::Quaternion< Real >::mul().

◆ operator*() [8/20]

template<typename Real >
Quaternion< Real > OpenMD::operator* ( const Quaternion< Real > & q1,
const Quaternion< Real > & q2 )
inline

Returns the multiplication of two quaternion.

Returns
the multiplication of two quaternion
Parameters
q1the first quaternion
q2the second quaternion

Definition at line 587 of file Quaternion.hpp.

◆ operator*() [9/20]

template<typename Real , unsigned int Dim>
Quaternion< Real > OpenMD::operator* ( const Real & s,
const Quaternion< Real > & q )

Returns the vaule of scalar multiplication of this quaterion q (q * s).

Returns
the vaule of scalar multiplication of this vector
Parameters
sthe scalar value
qthe source quaternion

Definition at line 574 of file Quaternion.hpp.

References OpenMD::Quaternion< Real >::mul().

◆ operator*() [10/20]

template<typename Real >
Polynomial< Real > OpenMD::operator* ( const Real v,
const Polynomial< Real > & p )

Definition at line 532 of file Polynomial.hpp.

◆ operator*() [11/20]

template<typename Real , unsigned int Row, unsigned int Col>
Vector< Real, Row > OpenMD::operator* ( const RectMatrix< Real, Row, Col > & m,
const Vector< Real, Col > & v )
inline

Returns the multiplication of a matrix and a vector (m * v).

Returns
the multiplication of a matrix and a vector
Parameters
mthe matrix
vthe vector

Definition at line 545 of file RectMatrix.hpp.

◆ operator*() [12/20]

template<typename Real , unsigned int Row, unsigned int Col>
RectMatrix< Real, Row, Col > OpenMD::operator* ( const RectMatrix< Real, Row, Col > & m,
Real s )
inline

Return the multiplication of scalra and matrix (m * s).

Returns
the multiplication of a scalra and a matrix
Parameters
mthe matrix
sthe scalar

Definition at line 492 of file RectMatrix.hpp.

References OpenMD::RectMatrix< Real, Row, Col >::mul().

◆ operator*() [13/20]

template<typename Real , unsigned int Row, unsigned int Col, unsigned int SameDim>
RectMatrix< Real, Row, Col > OpenMD::operator* ( const RectMatrix< Real, Row, SameDim > & m1,
const RectMatrix< Real, SameDim, Col > & m2 )
inline

Return the multiplication of two matrixes (m1 * m2).

Returns
the multiplication of two matrixes
Parameters
m1the first matrix
m2the second matrix

Definition at line 525 of file RectMatrix.hpp.

◆ operator*() [14/20]

template<typename Real >
SquareMatrix3< Real > OpenMD::operator* ( const SquareMatrix3< Real > & m1,
const SquareMatrix3< Real > & m2 )
inline

Return the multiplication of two matrixes (m1 * m2).

Returns
the multiplication of two matrixes
Parameters
m1the first matrix
m2the second matrix

Definition at line 615 of file SquareMatrix3.hpp.

◆ operator*() [15/20]

template<typename Real , unsigned int Dim>
Vector< Real, Dim > OpenMD::operator* ( const Vector< Real, Dim > & v1,
Real s )

Returns the vaule of scalar multiplication of this vector v1 (v1 * r).

Returns
the vaule of scalar multiplication of this vector
Parameters
v1the source vector
sthe scalar value

Definition at line 469 of file Vector.hpp.

References OpenMD::Vector< Real, Dim >::mul().

◆ operator*() [16/20]

template<typename Real , unsigned int Row, unsigned int Col>
Vector< Real, Col > OpenMD::operator* ( const Vector< Real, Row > & v,
const RectMatrix< Real, Row, Col > & m )
inline

Returns the multiplication of a vector transpose and a matrix (v^T * m).

Returns
the multiplication of a vector transpose and a matrix
Parameters
vthe vector
mthe matrix

Definition at line 563 of file RectMatrix.hpp.

◆ operator*() [17/20]

template<typename Real >
DynamicRectMatrix< Real > OpenMD::operator* ( Real s,
const DynamicRectMatrix< Real > & m )
inline

Return the multiplication of a scalar and a matrix (s * m).

Returns
the multiplication of a scalar and a matrix
Parameters
sthe scalar
mthe matrix

Definition at line 540 of file DynamicRectMatrix.hpp.

References OpenMD::DynamicRectMatrix< Real >::mul().

◆ operator*() [18/20]

template<typename Real >
DynamicVector< Real > OpenMD::operator* ( Real s,
const DynamicVector< Real > & v1 )

Returns the vaule of scalar multiplication of this vector v1 (v1 * r).

Returns
the vaule of scalar multiplication of this vector
Parameters
sthe scalar value
v1the source vector

Definition at line 412 of file DynamicVector.hpp.

References OpenMD::DynamicVector< Real, Alloc >::mul().

◆ operator*() [19/20]

template<typename Real , unsigned int Row, unsigned int Col>
RectMatrix< Real, Row, Col > OpenMD::operator* ( Real s,
const RectMatrix< Real, Row, Col > & m )
inline

Return the multiplication of a scalra and a matrix (s * m).

Returns
the multiplication of a scalra and a matrix
Parameters
sthe scalar
mthe matrix

Definition at line 508 of file RectMatrix.hpp.

References OpenMD::RectMatrix< Real, Row, Col >::mul().

◆ operator*() [20/20]

template<typename Real , unsigned int Dim>
Vector< Real, Dim > OpenMD::operator* ( Real s,
const Vector< Real, Dim > & v1 )

Returns the vaule of scalar multiplication of this vector v1 (v1 * r).

Returns
the vaule of scalar multiplication of this vector
Parameters
sthe scalar value
v1the source vector

Definition at line 482 of file Vector.hpp.

References OpenMD::Vector< Real, Dim >::mul().

◆ operator+() [1/6]

template<typename Real >
DynamicRectMatrix< Real > OpenMD::operator+ ( const DynamicRectMatrix< Real > & m1,
const DynamicRectMatrix< Real > & m2 )
inline

Return the sum of two matrixes (m1 + m2).

Returns
the sum of two matrixes
Parameters
m1the first matrix
m2the second matrix

Definition at line 492 of file DynamicRectMatrix.hpp.

References OpenMD::DynamicRectMatrix< Real >::add().

◆ operator+() [2/6]

template<typename Real >
DynamicVector< Real > OpenMD::operator+ ( const DynamicVector< Real > & v1,
const DynamicVector< Real > & v2 )
inline

Return the sum of two vectors (v1 - v2).

Returns
the sum of two vectors
Parameters
v1the first vector
v2the second vector

Definition at line 369 of file DynamicVector.hpp.

References OpenMD::DynamicVector< Real, Alloc >::add().

◆ operator+() [3/6]

Mesh OpenMD::operator+ ( const Mesh & m1,
const Mesh & m2 )
inline

Definition at line 203 of file Mesh.hpp.

◆ operator+() [4/6]

template<typename Real >
Polynomial< Real > OpenMD::operator+ ( const Polynomial< Real > & p1,
const Polynomial< Real > & p2 )

Generates and returns the sum of two given Polynomials.

Parameters
p1the first polynomial
p2the second polynomial

Definition at line 549 of file Polynomial.hpp.

References OpenMD::Polynomial< Real >::addCoefficient().

◆ operator+() [5/6]

template<typename Real , unsigned int Row, unsigned int Col>
RectMatrix< Real, Row, Col > OpenMD::operator+ ( const RectMatrix< Real, Row, Col > & m1,
const RectMatrix< Real, Row, Col > & m2 )
inline

Return the sum of two matrixes (m1 + m2).

Returns
the sum of two matrixes
Parameters
m1the first matrix
m2the second matrix

Definition at line 458 of file RectMatrix.hpp.

References OpenMD::RectMatrix< Real, Row, Col >::add().

◆ operator+() [6/6]

template<typename Real , unsigned int Dim>
Vector< Real, Dim > OpenMD::operator+ ( const Vector< Real, Dim > & v1,
const Vector< Real, Dim > & v2 )
inline

Return the sum of two vectors (v1 - v2).

Returns
the sum of two vectors
Parameters
v1the first vector
v2the second vector

Definition at line 440 of file Vector.hpp.

References OpenMD::Vector< Real, Dim >::add().

◆ operator-() [1/12]

template<typename Real >
DynamicRectMatrix< Real > OpenMD::operator- ( const DynamicRectMatrix< Real > & m)
inline

Negate the value of every element of this matrix.

Definition at line 477 of file DynamicRectMatrix.hpp.

References OpenMD::DynamicRectMatrix< Real >::negate().

◆ operator-() [2/12]

template<typename Real >
DynamicRectMatrix< Real > OpenMD::operator- ( const DynamicRectMatrix< Real > & m1,
const DynamicRectMatrix< Real > & m2 )
inline

Return the difference of two matrixes (m1 - m2).

Returns
the sum of two matrixes
Parameters
m1the first matrix
m2the second matrix

Definition at line 508 of file DynamicRectMatrix.hpp.

References OpenMD::DynamicRectMatrix< Real >::sub().

◆ operator-() [3/12]

template<typename Real >
DynamicVector< Real > OpenMD::operator- ( const DynamicVector< Real > & v1)
inline

unary minus

Definition at line 356 of file DynamicVector.hpp.

References OpenMD::DynamicVector< Real, Alloc >::negate().

◆ operator-() [4/12]

template<typename Real >
DynamicVector< Real > OpenMD::operator- ( const DynamicVector< Real > & v1,
const DynamicVector< Real > & v2 )

Return the difference of two vectors (v1 - v2).

Returns
the difference of two vectors
Parameters
v1the first vector
v2the second vector

Definition at line 384 of file DynamicVector.hpp.

References OpenMD::DynamicVector< Real, Alloc >::sub().

◆ operator-() [5/12]

OpenMDBitSet OpenMD::operator- ( const OpenMDBitSet & bs1,
const OpenMDBitSet & bs2 )

Definition at line 201 of file OpenMDBitSet.cpp.

◆ operator-() [6/12]

template<typename Real >
Polynomial< Real > OpenMD::operator- ( const Polynomial< Real > & p1,
const Polynomial< Real > & p2 )

Generates and returns the difference of two given Polynomials.

Returns
Parameters
p1the first polynomial
p2the second polynomial

Definition at line 569 of file Polynomial.hpp.

References OpenMD::Polynomial< Real >::addCoefficient().

◆ operator-() [7/12]

template<typename Real , unsigned int Row, unsigned int Col>
RectMatrix< Real, Row, Col > OpenMD::operator- ( const RectMatrix< Real, Row, Col > & m)
inline

Negate the value of every element of this matrix.

Definition at line 442 of file RectMatrix.hpp.

References OpenMD::RectMatrix< Real, Row, Col >::negate().

◆ operator-() [8/12]

template<typename Real , unsigned int Row, unsigned int Col>
RectMatrix< Real, Row, Col > OpenMD::operator- ( const RectMatrix< Real, Row, Col > & m1,
const RectMatrix< Real, Row, Col > & m2 )
inline

Return the difference of two matrixes (m1 - m2).

Returns
the sum of two matrixes
Parameters
m1the first matrix
m2the second matrix

Definition at line 475 of file RectMatrix.hpp.

References OpenMD::RectMatrix< Real, Row, Col >::sub().

◆ operator-() [9/12]

SelectionManager OpenMD::operator- ( const SelectionManager & sman1,
const SelectionManager & sman2 )

Definition at line 701 of file SelectionManager.cpp.

◆ operator-() [10/12]

SelectionSet OpenMD::operator- ( const SelectionSet & ss1,
const SelectionSet & ss2 )

Definition at line 211 of file SelectionSet.cpp.

◆ operator-() [11/12]

template<typename Real , unsigned int Dim>
Vector< Real, Dim > OpenMD::operator- ( const Vector< Real, Dim > & v1)
inline

unary minus

Definition at line 427 of file Vector.hpp.

References OpenMD::Vector< Real, Dim >::negate().

◆ operator-() [12/12]

template<typename Real , unsigned int Dim>
Vector< Real, Dim > OpenMD::operator- ( const Vector< Real, Dim > & v1,
const Vector< Real, Dim > & v2 )

Return the difference of two vectors (v1 - v2).

Returns
the difference of two vectors
Parameters
v1the first vector
v2the second vector

Definition at line 455 of file Vector.hpp.

References OpenMD::Vector< Real, Dim >::sub().

◆ operator/() [1/6]

template<typename Real >
DynamicRectMatrix< Real > OpenMD::operator/ ( const DynamicRectMatrix< Real > & m,
Real s )
inline

Return the scalar division of matrix (m / s).

Returns
the scalar division of matrix
Parameters
mthe matrix
sthe scalar

Definition at line 599 of file DynamicRectMatrix.hpp.

References OpenMD::DynamicRectMatrix< Real >::div().

◆ operator/() [2/6]

template<typename Real >
DynamicVector< Real > OpenMD::operator/ ( const DynamicVector< Real > & v1,
Real s )

Returns the value of division of a vector by a scalar.

Returns
the vaule of scalar division of this vector
Parameters
v1the source vector
sthe scalar value

Definition at line 425 of file DynamicVector.hpp.

References OpenMD::DynamicVector< Real, Alloc >::div().

◆ operator/() [3/6]

template<typename Real >
Quaternion< Real > OpenMD::operator/ ( const Real & s,
Quaternion< Real > & q )

Returns the value of the division of a scalar by a quaternion.

Returns
the value of the division of a scalar by a quaternion
Parameters
sscalar
qquaternion
Note
for a quaternion q, 1/q = q.inverse()

Definition at line 614 of file Quaternion.hpp.

References OpenMD::Quaternion< Real >::inverse().

◆ operator/() [4/6]

template<typename Real , unsigned int Row, unsigned int Col>
RectMatrix< Real, Row, Col > OpenMD::operator/ ( const RectMatrix< Real, Row, Col > & m,
Real s )
inline

Return the scalar division of matrix (m / s).

Returns
the scalar division of matrix
Parameters
mthe matrix
sthe scalar

Definition at line 581 of file RectMatrix.hpp.

References OpenMD::RectMatrix< Real, Row, Col >::div().

◆ operator/() [5/6]

template<typename Real , unsigned int Dim>
Vector< Real, Dim > OpenMD::operator/ ( const Vector< Real, Dim > & v1,
Real s )

Returns the value of division of a vector by a scalar.

Returns
the vaule of scalar division of this vector
Parameters
v1the source vector
sthe scalar value

Definition at line 495 of file Vector.hpp.

References OpenMD::Vector< Real, Dim >::div().

◆ operator/() [6/6]

template<typename Real >
Quaternion< Real > OpenMD::operator/ ( Quaternion< Real > & q1,
Quaternion< Real > & q2 )
inline

Returns the division of two quaternion.

Parameters
q1divisor
q2dividen

Definition at line 601 of file Quaternion.hpp.

References OpenMD::Quaternion< Real >::inverse().

◆ operator<<() [1/21]

ostream & OpenMD::operator<< ( ostream & o,
SimInfo & info )

Definition at line 1025 of file SimInfo.cpp.

◆ operator<<() [2/21]

template<typename Real >
std::ostream & OpenMD::operator<< ( std::ostream & o,
const DynamicRectMatrix< Real > & m )

Write to an output stream.

Definition at line 612 of file DynamicRectMatrix.hpp.

◆ operator<<() [3/21]

template<typename Real , unsigned int Row, unsigned int Col>
std::ostream & OpenMD::operator<< ( std::ostream & o,
const RectMatrix< Real, Row, Col > & m )

Write to an output stream.

Definition at line 656 of file RectMatrix.hpp.

◆ operator<<() [4/21]

template<typename Real , unsigned int Dim>
std::ostream & OpenMD::operator<< ( std::ostream & o,
const Vector< Real, Dim > & v )

Write to an output stream.

Definition at line 569 of file Vector.hpp.

◆ operator<<() [5/21]

template<typename O , typename I , typename C >
std::ostream & OpenMD::operator<< ( std::ostream & o,
GenericFactory< O, I, C > & factory )

write out all of the type identifiers to an output stream

Definition at line 232 of file GenericFactory.hpp.

References OpenMD::GenericFactory< Object, IdentType, Creator >::getIdents().

◆ operator<<() [6/21]

std::ostream & OpenMD::operator<< ( std::ostream & o,
HydrodynamicsModelFactory & factory )

write out all of the type identifiers to an output stream

Definition at line 95 of file HydrodynamicsModelFactory.cpp.

References OpenMD::HydrodynamicsModelFactory::getIdents().

◆ operator<<() [7/21]

std::ostream & OpenMD::operator<< ( std::ostream & o,
IntegratorFactory & factory )

write out all of the type identifiers to an output stream

Definition at line 88 of file IntegratorFactory.cpp.

References OpenMD::IntegratorFactory::getIdents().

◆ operator<<() [8/21]

std::ostream & OpenMD::operator<< ( std::ostream & o,
LatticeFactory & factory )

write out all of the type identifiers to an output stream

Definition at line 85 of file LatticeFactory.cpp.

References OpenMD::LatticeFactory::getIdents().

◆ operator<<() [9/21]

std::ostream & OpenMD::operator<< ( std::ostream & o,
Molecule & mol )

Definition at line 425 of file Molecule.cpp.

◆ operator<<() [10/21]

std::ostream & OpenMD::operator<< ( std::ostream & o,
OptimizationFactory & factory )

write out all of the type identifiers to an output stream

Definition at line 88 of file OptimizationFactory.cpp.

References OpenMD::OptimizationFactory::getIdents().

◆ operator<<() [11/21]

std::ostream & OpenMD::operator<< ( std::ostream & o,
PairList & e )

Definition at line 154 of file PairList.cpp.

◆ operator<<() [12/21]

std::ostream & OpenMD::operator<< ( std::ostream & os,
AmberImproperTorsionType & ott )

Definition at line 85 of file AmberImproperTorsionType.hpp.

◆ operator<<() [13/21]

std::ostream & OpenMD::operator<< ( std::ostream & os,
const OpenMDBitSet & bs )

Definition at line 248 of file OpenMDBitSet.cpp.

◆ operator<<() [14/21]

std::ostream & OpenMD::operator<< ( std::ostream & os,
const SelectionSet & ss )

Definition at line 240 of file SelectionSet.cpp.

◆ operator<<() [15/21]

std::ostream & OpenMD::operator<< ( std::ostream & os,
HarmonicInversionType & hit )

Definition at line 86 of file HarmonicInversionType.hpp.

◆ operator<<() [16/21]

std::ostream & OpenMD::operator<< ( std::ostream & os,
HarmonicTorsionType & htt )

Definition at line 105 of file HarmonicTorsionType.hpp.

◆ operator<<() [17/21]

std::ostream & OpenMD::operator<< ( std::ostream & os,
OplsTorsionType & ott )

Definition at line 111 of file OplsTorsionType.hpp.

◆ operator<<() [18/21]

std::ostream & OpenMD::operator<< ( std::ostream & os,
PolynomialBendType & pbt )

Definition at line 91 of file PolynomialBendType.hpp.

◆ operator<<() [19/21]

std::ostream & OpenMD::operator<< ( std::ostream & os,
PolynomialBondType & pbt )

Definition at line 89 of file PolynomialBondType.hpp.

◆ operator<<() [20/21]

std::ostream & OpenMD::operator<< ( std::ostream & os,
TrappeTorsionType & ttt )

Definition at line 122 of file TrappeTorsionType.hpp.

◆ operator<<() [21/21]

template<typename Real >
std::ostream & OpenMD::operator<< ( std::ostream & strm,
const DynamicVector< Real > & v )

Write to an output stream.

Definition at line 479 of file DynamicVector.hpp.

◆ operator==() [1/3]

bool OpenMD::operator== ( const OpenMDBitSet & bs1,
const OpenMDBitSet & bs2 )

Definition at line 209 of file OpenMDBitSet.cpp.

◆ operator==() [2/3]

template<class T >
bool OpenMD::operator== ( const Quaternion< T > & lhs,
const Quaternion< T > & rhs )
inline

Definition at line 622 of file Quaternion.hpp.

◆ operator==() [3/3]

bool OpenMD::operator== ( const SelectionSet & ss1,
const SelectionSet & ss2 )

Definition at line 218 of file SelectionSet.cpp.

◆ operator^() [1/3]

OpenMDBitSet OpenMD::operator^ ( const OpenMDBitSet & bs1,
const OpenMDBitSet & bs2 )

Definition at line 193 of file OpenMDBitSet.cpp.

◆ operator^() [2/3]

SelectionManager OpenMD::operator^ ( const SelectionManager & sman1,
const SelectionManager & sman2 )

Definition at line 694 of file SelectionManager.cpp.

◆ operator^() [3/3]

SelectionSet OpenMD::operator^ ( const SelectionSet & ss1,
const SelectionSet & ss2 )

Definition at line 204 of file SelectionSet.cpp.

◆ operator|() [1/3]

OpenMDBitSet OpenMD::operator| ( const OpenMDBitSet & bs1,
const OpenMDBitSet & bs2 )

Definition at line 177 of file OpenMDBitSet.cpp.

◆ operator|() [2/3]

SelectionManager OpenMD::operator| ( const SelectionManager & sman1,
const SelectionManager & sman2 )

Definition at line 680 of file SelectionManager.cpp.

◆ operator|() [3/3]

SelectionSet OpenMD::operator| ( const SelectionSet & ss1,
const SelectionSet & ss2 )

Definition at line 190 of file SelectionSet.cpp.

◆ operator||()

template<typename Cons1T , typename Cons2T >
OrParamConstraint< Cons1T, Cons2T > OpenMD::operator|| ( const ParamConstraintFacade< Cons1T > & cons1,
const ParamConstraintFacade< Cons2T > & cons2 )
inline

Definition at line 329 of file ParamConstraint.hpp.

◆ outProduct()

template<typename Real >
SquareMatrix3< Real > OpenMD::outProduct ( const Vector3< Real > & v1,
const Vector3< Real > & v2 )
inline

Definition at line 628 of file SquareMatrix3.hpp.

◆ pairCompare()

bool OpenMD::pairCompare ( const pair< RealType, int > & l,
const pair< RealType, int > & r )

Definition at line 57 of file Cuboctahedron.cpp.

◆ registerAll()

void OpenMD::registerAll ( )

register force fields, integrators and optimizers

Definition at line 140 of file Register.cpp.

References registerIntegrators(), and registerOptimizers().

◆ registerIntegrators()

void OpenMD::registerIntegrators ( )

Register all integrators.

Definition at line 81 of file Register.cpp.

References OpenMD::IntegratorFactory::getInstance(), and OpenMD::IntegratorFactory::registerIntegrator().

Referenced by registerAll().

◆ registerLattice()

void OpenMD::registerLattice ( )

Register all lattice.

Definition at line 131 of file Register.cpp.

References OpenMD::LatticeFactory::getInstance(), and OpenMD::LatticeFactory::registerLattice().

◆ registerOptimizers()

void OpenMD::registerOptimizers ( )

Register all optimizers.

Definition at line 122 of file Register.cpp.

References OpenMD::OptimizationFactory::getInstance(), and OpenMD::OptimizationFactory::registerOptimization().

Referenced by registerAll().

◆ replaceWithWildCard()

bool OpenMD::replaceWithWildCard ( std::vector< std::vector< std::string >::iterator > & cont,
std::vector< std::string > & sequence,
std::vector< std::string > & result,
const std::string & wildCard = "X" )

iteratively replace the sequence with wild cards

Returns
true if more combination sequence is avaliable, otherwise return true
Parameters
contiterator container, if expect the whole series of combinations, pass an empty iterator container. The user should not modify this iterator container
sequencethe whole sequence used to generate combination
resulta possible combination sequence which is set on return
wildCardthe wild card string. Its value is "X" by default
Note
since next_combination never returns an empty sequence, replaceWildCard will not generate one special combination, which is n identical wild cards (n is equal to the size of the passing sequence)
vector<string> sv;
vector<vector<string>::iterator> sic;
vector<string> resultString;
sv.push_back("H");
sv.push_back("C");
sv.push_back("N");
while (replaceWithWildCard(sic, sv, resultString)) {
for(vector<string>::iterator i = resultString.begin();
i != resultString.end(); ++i) {
cout << *i << "\t";
}
cout << endl;
}
//output
//H X X
//X C X
//X X N
//H C X
//H X N
//X C N
//H C N
bool replaceWithWildCard(std::vector< std::vector< std::string >::iterator > &cont, std::vector< std::string > &sequence, std::vector< std::string > &result, const std::string &wildCard)
iteratively replace the sequence with wild cards
Definition Utility.cpp:55

Definition at line 55 of file Utility.cpp.

References next_combination().

Referenced by OpenMD::TypeContainer< ElemType, SIZE >::find().

◆ roundMe()

RealType OpenMD::roundMe ( const RealType & x)
inline

Definition at line 55 of file Utility.hpp.

◆ swap_if()

template<class Cont , class Predict >
void OpenMD::swap_if ( Cont & b1,
Cont & b2,
Predict predict )

Definition at line 71 of file CompositeShape.cpp.

◆ toLower()

template<typename Container >
void OpenMD::toLower ( Container & cont,
const std::locale & loc = std::locale() )

Definition at line 55 of file CaseConversion.hpp.

◆ toLowerCopy()

template<typename Container >
Container OpenMD::toLowerCopy ( const Container & cont,
const std::locale & = std::locale() )

Definition at line 61 of file CaseConversion.hpp.

◆ toString()

template<typename T >
std::string OpenMD::toString ( const T & v)

Convert a variable to a string.

Template Parameters
Tdata type
Parameters
vdata to be converted
Returns
a string

Definition at line 98 of file StringUtils.hpp.

◆ toUpper()

template<typename Container >
void OpenMD::toUpper ( Container & cont,
const std::locale & loc = std::locale() )

Definition at line 70 of file CaseConversion.hpp.

◆ toUpperCopy()

template<typename Container >
Container OpenMD::toUpperCopy ( const Container & cont,
const std::locale & = std::locale() )

Definition at line 76 of file CaseConversion.hpp.

◆ UpperCase()

std::string OpenMD::UpperCase ( const std::string & S)

Converts a string to UPPER CASE.

Parameters
S

Definition at line 61 of file StringUtils.cpp.

◆ Vlinear() [1/2]

std::size_t OpenMD::Vlinear ( const Vector2< std::size_t > & p,
const Vector2< std::size_t > & s )
inline

Returns the linear indexing for size_t vectors.

Compare to Rapaport's VLinear

Parameters
pfirst vector
ssecond vector

Definition at line 111 of file Vector2.hpp.

References OpenMD::Vector2< Real >::x(), and OpenMD::Vector2< Real >::y().

◆ Vlinear() [2/2]

template<typename Real >
Real OpenMD::Vlinear ( const Vector3< Real > & p,
const Vector3< Real > & s )
inline

Returns the linear indexing for integer vectors.

Compare to Rapaport's VLinear

Parameters
pfirst vector
ssecond vector

Definition at line 154 of file Vector3.hpp.

References OpenMD::Vector3< Real >::x(), OpenMD::Vector3< Real >::y(), and OpenMD::Vector3< Real >::z().

Variable Documentation

◆ BUCKINGHAM_INTERACTION

const int OpenMD::BUCKINGHAM_INTERACTION = (1 << 10)
static

Definition at line 91 of file NonBondedInteraction.hpp.

◆ DirectionalTypeID

string const OpenMD::DirectionalTypeID = "Directional"

Definition at line 55 of file DirectionalAdapter.hpp.

◆ EAM_INTERACTION

const int OpenMD::EAM_INTERACTION = (1 << 2)
static

Definition at line 83 of file NonBondedInteraction.hpp.

◆ EAMtypeID

string const OpenMD::EAMtypeID = "EAM"

Definition at line 56 of file EAMAdapter.hpp.

◆ ELECTROSTATIC_INTERACTION

const int OpenMD::ELECTROSTATIC_INTERACTION = (1 << 0)
static

Boolean flags for the iHash_ and sHash_ data structures.

These are used to greatly increase the speed of looking up the low-level interaction for any given pair:

Definition at line 81 of file NonBondedInteraction.hpp.

◆ epsilon

RealType OpenMD::epsilon = 0.000001
staticconstexpr

Definition at line 63 of file Vector.hpp.

◆ etab

ElementsTable OpenMD::etab

Definition at line 56 of file ElementsTable.cpp.

◆ FCtypeID

string const OpenMD::FCtypeID = "Charge"

Definition at line 54 of file FixedChargeAdapter.hpp.

◆ FQtypeID

string const OpenMD::FQtypeID = "FlucQ"

Definition at line 55 of file FluctuatingChargeAdapter.hpp.

◆ FuncflTypeID

string const OpenMD::FuncflTypeID = "FUNCFL"

Definition at line 57 of file EAMAdapter.hpp.

◆ GB_INTERACTION

const int OpenMD::GB_INTERACTION = (1 << 5)
static

Definition at line 86 of file NonBondedInteraction.hpp.

◆ GBtypeID

string const OpenMD::GBtypeID = "GB"

Definition at line 54 of file GayBerneAdapter.hpp.

◆ INVERSEPOWERSERIES_INTERACTION

const int OpenMD::INVERSEPOWERSERIES_INTERACTION = (1 << 11)
static

Definition at line 92 of file NonBondedInteraction.hpp.

◆ LJ_INTERACTION

const int OpenMD::LJ_INTERACTION = (1 << 1)
static

Definition at line 82 of file NonBondedInteraction.hpp.

◆ LJtypeID

string const OpenMD::LJtypeID = "LJ"

Definition at line 54 of file LennardJonesAdapter.hpp.

◆ MAW_INTERACTION

const int OpenMD::MAW_INTERACTION = (1 << 8)
static

Definition at line 89 of file NonBondedInteraction.hpp.

◆ MAX_SCRATCH_ARRAY_SIZE

int OpenMD::MAX_SCRATCH_ARRAY_SIZE = 10
constexpr

Definition at line 88 of file LU.hpp.

◆ MIE_INTERACTION

const int OpenMD::MIE_INTERACTION = (1 << 9)
static

Definition at line 90 of file NonBondedInteraction.hpp.

◆ MORSE_INTERACTION

const int OpenMD::MORSE_INTERACTION = (1 << 6)
static

Definition at line 87 of file NonBondedInteraction.hpp.

◆ MultipoleTypeID

string const OpenMD::MultipoleTypeID = "Multipole"

Definition at line 55 of file MultipoleAdapter.hpp.

◆ PolTypeID

string const OpenMD::PolTypeID = "Polarizable"

Definition at line 54 of file PolarizableAdapter.hpp.

◆ progressSpinner_

const char* OpenMD::progressSpinner_ = "|/-\\"

Definition at line 72 of file ProgressBar.cpp.

◆ REPULSIVEPOWER_INTERACTION

const int OpenMD::REPULSIVEPOWER_INTERACTION = (1 << 7)
static

Definition at line 88 of file NonBondedInteraction.hpp.

◆ SC_INTERACTION

const int OpenMD::SC_INTERACTION = (1 << 3)
static

Definition at line 84 of file NonBondedInteraction.hpp.

◆ SCtypeID

string const OpenMD::SCtypeID = "SC"

Definition at line 54 of file SuttonChenAdapter.hpp.

◆ SMALL_NUMBER

double OpenMD::SMALL_NUMBER = 1.0e-12
constexpr

Definition at line 87 of file LU.hpp.

◆ STICKY_INTERACTION

const int OpenMD::STICKY_INTERACTION = (1 << 4)
static

Definition at line 85 of file NonBondedInteraction.hpp.

◆ StickyTypeID

string const OpenMD::StickyTypeID = "Sticky"

Definition at line 54 of file StickyAdapter.hpp.

◆ UFFtypeID

string const OpenMD::UFFtypeID = "UFF"

Definition at line 54 of file UFFAdapter.hpp.

◆ ZhouRoseTypeID

string const OpenMD::ZhouRoseTypeID = "ZHOUROSE"

Definition at line 59 of file EAMAdapter.hpp.

◆ ZhouTypeID

string const OpenMD::ZhouTypeID = "ZHOU"

Definition at line 58 of file EAMAdapter.hpp.