OpenMD 3.2
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  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  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  CountDifference
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 with contiguous flat storage. 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...
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  FluxOut
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  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  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  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  LHDForceModifier
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  MoleculeStampCompare
class  MoLocator
class  MomAngMomCorrFunc
struct  MomentData
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  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  MultipoleAdapter
class  MultipoleAtomTypesSectionParser
struct  MultipoleAtypeParameters
class  MultipoleSum
class  NameFinder
class  NanoLength
class  NanoVolume
struct  NegativeConstraint
class  NEP
struct  NEPAtoms
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  OHFrequencyMap
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  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  Qsurf
 Tetrahedral order parameter Q field, output frame-by-frame as OpenDX volumetric data files. 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  RPYMobility
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  SDVelocityField
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  SFG
 Computes the vibrational SFG susceptibility spectrum Im χ²(ω) in the OH-stretch region using the exciton Hamiltonian approach with an ADIABATIC quantum propagator. More...
class  SFGTimeAvg
 Computes vibrational SFG spectra in the OH-stretch region using the TIME-AVERAGING APPROXIMATION (TAA) of Auer & Skinner, rather than the dynamical adiabatic-propagator method implemented in the SFG dynamic property. 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
 Storage specific to the SPF-RNEMD method that allows for a new simulation to pick up where an old one left off. More...
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  TetrahedralityParamRAngle
 Tetrahedrality ParameterRAngle. 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
 A linear (homogeneous) ambient velocity field, v(r) = v0 + K . r. More...
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 MoleculeStampSet = std::set<MoleculeStamp*, MoleculeStampCompare>
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 }

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 matrices (m1 + m2).
template<typename Real>
DynamicRectMatrix< Real > operator- (const DynamicRectMatrix< Real > &m1, const DynamicRectMatrix< Real > &m2)
 Return the difference of two matrices (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 matrices (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 stripComments (const std::string &S)
 Strip comments from a string.
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)
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
bool replaceWithWildCardSkippingFirstElement (std::vector< std::vector< std::string >::iterator > &cont, std::vector< std::string > &sequence, std::vector< std::string > &result, const std::string &wildCard)
RealType roundMe (const RealType &x)

Variables

static constexpr double HBAR_CM_PS = 5.3088373
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)
static const TokenEntry tokenTable []
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
template<class Object, typename IdentType, typename Creator>
GenericFactory< Object, IdentType, Creator > * GenericFactory< Object, IdentType, Creator >::instance_
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 171 of file AtomType.hpp.

◆ BoolGenericData

BoolGenericData is a generic data type contains a bool variable.

Definition at line 150 of file GenericData.hpp.

◆ CubicSplinePtr

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

Definition at line 89 of file CubicSpline.hpp.

◆ DataStoragePointer

typedef DataStorageSnapshot::* OpenMD::DataStoragePointer

Definition at line 375 of file Snapshot.hpp.

◆ DirectionalAtypeData

using OpenMD::DirectionalAtypeData = SimpleTypeData<DirectionalAtypeParameters>

Definition at line 63 of file DirectionalAdapter.hpp.

◆ DoubleGenericData

DoubleGenericData is a generic data type contains a RealType variable.

Definition at line 159 of file GenericData.hpp.

◆ DoublePolynomial

using OpenMD::DoublePolynomial = Polynomial<RealType>

Definition at line 628 of file Polynomial.hpp.

◆ DoubleVectorGenericData

using OpenMD::DoubleVectorGenericData = VectorTypeData<RealType>

Definition at line 227 of file GenericData.hpp.

◆ EAMData

using OpenMD::EAMData = SimpleTypeData<EAMParameters>

Definition at line 131 of file EAMAdapter.hpp.

◆ FixedChargeAtypeData

using OpenMD::FixedChargeAtypeData = SimpleTypeData<FixedChargeAtypeParameters>

Definition at line 62 of file FixedChargeAdapter.hpp.

◆ FloatGenericData

FloatGenericData is a generic data type contains a float variable.

Definition at line 156 of file GenericData.hpp.

◆ FloatVectorGenericData

using OpenMD::FloatVectorGenericData = VectorTypeData<float>

Definition at line 221 of file GenericData.hpp.

◆ FluctuatingAtypeData

using OpenMD::FluctuatingAtypeData = SimpleTypeData<FluctuatingAtypeParameters>

Definition at line 72 of file FluctuatingChargeAdapter.hpp.

◆ FuncflData

using OpenMD::FuncflData = SimpleTypeData<FuncflParameters>

Definition at line 132 of file EAMAdapter.hpp.

◆ GBAtypeData

using OpenMD::GBAtypeData = SimpleTypeData<GBAtypeParameters>

Definition at line 67 of file GayBerneAdapter.hpp.

◆ IntGenericData

IntGenericData is a generic data type contains an integer variable.

Definition at line 153 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 215 of file GenericData.hpp.

◆ LJAtypeData

using OpenMD::LJAtypeData = SimpleTypeData<LJAtypeParameters>

Definition at line 67 of file LennardJonesAdapter.hpp.

◆ Mat3x3d

using OpenMD::Mat3x3d = SquareMatrix3<RealType>

Definition at line 647 of file SquareMatrix3.hpp.

◆ Mat6x6d

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

Definition at line 461 of file SquareMatrix.hpp.

◆ MoleculeStampSet

using OpenMD::MoleculeStampSet = std::set<MoleculeStamp*, MoleculeStampCompare>

Definition at line 185 of file MoleculeStamp.hpp.

◆ MultipoleAtypeData

using OpenMD::MultipoleAtypeData = SimpleTypeData<MultipoleAtypeParameters>

Definition at line 66 of file MultipoleAdapter.hpp.

◆ NonBondedInteractionPtr

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

Definition at line 212 of file NonBondedInteraction.hpp.

◆ PolarizableAtypeData

using OpenMD::PolarizableAtypeData = SimpleTypeData<PolarizableAtypeParameters>

Definition at line 63 of file PolarizableAdapter.hpp.

◆ potVec

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

Definition at line 97 of file NonBondedInteraction.hpp.

◆ ProgressBarPtr

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

Definition at line 73 of file ProgressBar.hpp.

◆ Quat4d

using OpenMD::Quat4d = Quaternion<RealType>

Definition at line 630 of file Quaternion.hpp.

◆ RestraintData

using OpenMD::RestraintData = SimpleTypeData<Restraint*>

Definition at line 219 of file Restraint.hpp.

◆ RotMat3x3d

using OpenMD::RotMat3x3d = SquareMatrix3<RealType>

Definition at line 648 of file SquareMatrix3.hpp.

◆ SCAtypeData

using OpenMD::SCAtypeData = SimpleTypeData<SCAtypeParameters>

Definition at line 67 of file SuttonChenAdapter.hpp.

◆ ShapeAtypeData

using OpenMD::ShapeAtypeData = SimpleTypeData<ShapeAtomType*>

Definition at line 119 of file ShapeAtomType.hpp.

◆ SnapshotBlock

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

Definition at line 60 of file BlockSnapshotManager.hpp.

◆ StickyAtypeData

using OpenMD::StickyAtypeData = SimpleTypeData<StickyAtypeParameters>

Definition at line 70 of file StickyAdapter.hpp.

◆ 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.
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 182 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 256 of file GenericData.hpp.

◆ TeeBuf

using OpenMD::TeeBuf = basic_teebuf<char>

Definition at line 119 of file basic_teebuf.hpp.

◆ TreeNodePtr

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

Definition at line 68 of file NameFinder.hpp.

◆ UFFAtypeData

using OpenMD::UFFAtypeData = SimpleTypeData<UFFAtypeParameters>

Definition at line 73 of file UFFAdapter.hpp.

◆ Vector2d

typedef Vector2<RealType> OpenMD::Vector2d

Definition at line 121 of file Vector2.hpp.

◆ Vector2i

typedef Vector2<int> OpenMD::Vector2i

Definition at line 119 of file Vector2.hpp.

◆ Vector3d

using OpenMD::Vector3d = Vector3<RealType>

Definition at line 163 of file Vector3.hpp.

◆ Vector3i

using OpenMD::Vector3i = Vector3<int>

Definition at line 161 of file Vector3.hpp.

◆ VisitorIterator

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

Definition at line 58 of file CompositeVisitor.hpp.

◆ ZhouData

using OpenMD::ZhouData = SimpleTypeData<ZhouParameters>

Definition at line 133 of file EAMAdapter.hpp.

Enumeration Type Documentation

◆ BuckinghamType

enum OpenMD::BuckinghamType

Definition at line 75 of file BuckinghamInteractionType.hpp.

◆ communicatorType

enum OpenMD::communicatorType

Definition at line 61 of file Communicator.hpp.

◆ CutoffMethod

enum OpenMD::CutoffMethod

Definition at line 53 of file Cutoffs.hpp.

◆ EAMiType

enum OpenMD::EAMiType

Definition at line 68 of file EAMInteractionType.hpp.

◆ EAMMixingMethod

enum OpenMD::EAMMixingMethod

Definition at line 85 of file EAM.hpp.

◆ EAMType

enum OpenMD::EAMType

Definition at line 64 of file EAMAdapter.hpp.

◆ ElectrostaticScreeningMethod

enum OpenMD::ElectrostaticScreeningMethod

Definition at line 89 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 77 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 65 of file NonBondedInteraction.hpp.

◆ InversionKey

enum OpenMD::InversionKey

Definition at line 62 of file InversionType.hpp.

◆ MorseType

enum OpenMD::MorseType

Definition at line 68 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 63 of file SelectionSet.hpp.

◆ SwitchingFunctionType

enum OpenMD::SwitchingFunctionType

Definition at line 56 of file SwitchingFunction.hpp.

Function Documentation

◆ CaseInsensitiveEquals()

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

Definition at line 225 of file StringUtils.cpp.

◆ CaseInsensitiveFind()

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

Definition at line 229 of file StringUtils.cpp.

◆ CholeskyDecomposition()

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

Definition at line 57 of file CholeskyDecomposition.hpp.

◆ containerToString()

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

Definition at line 138 of file StringUtils.hpp.

◆ cross()

◆ 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 470 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 547 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 483 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 560 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 509 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 529 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 605 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 614 of file Polynomial.hpp.

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

◆ equal() [2/2]

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

Definition at line 69 of file Vector.hpp.

◆ fastpow()

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

Definition at line 71 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 109 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 590 of file Polynomial.hpp.

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

◆ getGlobalCountOfType()

int OpenMD::getGlobalCountOfType ( AtomType * )

Definition at line 789 of file SimInfo.cpp.

◆ getPrefix()

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

Definition at line 207 of file StringUtils.cpp.

Referenced by OpenMD::PotDiff::PotDiff().

◆ hasDuplicateElement()

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

Definition at line 62 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 101 of file LU.hpp.

References invertMatrix().

Referenced by OpenMD::SquareMatrix< RealType, 6 >::inverse(), invertMatrix(), and OpenMD::RPYMobility::update().

◆ 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 138 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 160 of file StringUtils.cpp.

◆ isEqual()

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

Definition at line 369 of file ParamConstraint.hpp.

◆ isEqualIgnoreCase()

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

Definition at line 67 of file ParamConstraint.cpp.

◆ isEven()

EvenConstraint OpenMD::isEven ( )

Definition at line 71 of file ParamConstraint.cpp.

◆ isGreaterThan()

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

Definition at line 374 of file ParamConstraint.hpp.

◆ isGreaterThanOrEqualTo()

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

Definition at line 379 of file ParamConstraint.hpp.

◆ isInteger()

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

Definition at line 211 of file StringUtils.cpp.

◆ isLessThan()

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

Definition at line 359 of file ParamConstraint.hpp.

◆ isLessThanOrEqualTo()

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

Definition at line 364 of file ParamConstraint.hpp.

◆ isNegative()

NegativeConstraint OpenMD::isNegative ( )

Definition at line 63 of file ParamConstraint.cpp.

◆ isNonNegative()

NonNegativeConstraint OpenMD::isNonNegative ( )

Definition at line 65 of file ParamConstraint.cpp.

◆ isNonPositive()

NonPositiveConstraint OpenMD::isNonPositive ( )

Definition at line 61 of file ParamConstraint.cpp.

◆ isNonZero()

ParamConstraintFacade< NonZeroConstraint > OpenMD::isNonZero ( )

Definition at line 55 of file ParamConstraint.cpp.

◆ isNotEmpty()

NotEmptyConstraint OpenMD::isNotEmpty ( )

Definition at line 51 of file ParamConstraint.cpp.

◆ isPositive()

PositiveConstraint OpenMD::isPositive ( )

Definition at line 59 of file ParamConstraint.cpp.

◆ isType()

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

Definition at line 122 of file StringUtils.hpp.

◆ isZero()

ZeroConstraint OpenMD::isZero ( )

Definition at line 53 of file ParamConstraint.cpp.

◆ lexi_cast()

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

Definition at line 114 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 184 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 274 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 639 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 94 of file next_combination.hpp.

Referenced by replaceWithWildCard().

◆ OpenMD_itoa()

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

Definition at line 179 of file StringUtils.cpp.

◆ operator!()

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

Definition at line 341 of file ParamConstraint.hpp.

◆ operator&() [1/3]

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

Definition at line 188 of file OpenMDBitSet.cpp.

◆ operator&() [2/3]

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

Definition at line 752 of file SelectionManager.cpp.

◆ operator&() [3/3]

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

Definition at line 200 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 323 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).

Parameters
mthe matrix
vthe vector

Definition at line 501 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).

Parameters
mthe matrix
sthe scalar

Definition at line 455 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 matrices (m1 * m2).

Parameters
m1the first matrix
m2the second matrix

Definition at line 481 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 413 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 523 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 507 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 564 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 590 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 577 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 535 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 548 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 495 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 528 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 621 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 470 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 566 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).

Parameters
sthe scalar
mthe matrix

Definition at line 468 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 426 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 511 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 483 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 matrices (m1 + m2).

Parameters
m1the first matrix
m2the second matrix

Definition at line 429 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 383 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 206 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 552 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 461 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 441 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 417 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 matrices (m1 - m2).

Parameters
m1the first matrix
m2the second matrix

Definition at line 442 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 370 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 398 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 204 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 572 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 445 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 478 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 766 of file SelectionManager.cpp.

◆ operator-() [10/12]

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

Definition at line 214 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 428 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 456 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).

Parameters
mthe matrix
sthe scalar

Definition at line 519 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 439 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 617 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 584 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 496 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 604 of file Quaternion.hpp.

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

◆ operator<<() [1/21]

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

Definition at line 1029 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 530 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 659 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 570 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 235 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 98 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 91 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 88 of file LatticeFactory.cpp.

References OpenMD::LatticeFactory::getIdents().

◆ operator<<() [9/21]

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

Definition at line 442 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 91 of file OptimizationFactory.cpp.

References OpenMD::OptimizationFactory::getIdents().

◆ operator<<() [11/21]

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

Definition at line 157 of file PairList.cpp.

◆ operator<<() [12/21]

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

Definition at line 88 of file AmberImproperTorsionType.hpp.

◆ operator<<() [13/21]

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

Definition at line 251 of file OpenMDBitSet.cpp.

◆ operator<<() [14/21]

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

Definition at line 243 of file SelectionSet.cpp.

◆ operator<<() [15/21]

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

Definition at line 89 of file HarmonicInversionType.hpp.

◆ operator<<() [16/21]

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

Definition at line 108 of file HarmonicTorsionType.hpp.

◆ operator<<() [17/21]

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

Definition at line 114 of file OplsTorsionType.hpp.

◆ operator<<() [18/21]

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

Definition at line 94 of file PolynomialBendType.hpp.

◆ operator<<() [19/21]

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

Definition at line 92 of file PolynomialBondType.hpp.

◆ operator<<() [20/21]

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

Definition at line 125 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 493 of file DynamicVector.hpp.

◆ operator==() [1/3]

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

Definition at line 212 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 625 of file Quaternion.hpp.

◆ operator==() [3/3]

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

Definition at line 221 of file SelectionSet.cpp.

◆ operator^() [1/3]

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

Definition at line 196 of file OpenMDBitSet.cpp.

◆ operator^() [2/3]

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

Definition at line 759 of file SelectionManager.cpp.

◆ operator^() [3/3]

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

Definition at line 207 of file SelectionSet.cpp.

◆ operator|() [1/3]

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

Definition at line 180 of file OpenMDBitSet.cpp.

◆ operator|() [2/3]

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

Definition at line 745 of file SelectionManager.cpp.

◆ operator|() [3/3]

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

Definition at line 193 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 332 of file ParamConstraint.hpp.

◆ outProduct()

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

Definition at line 634 of file SquareMatrix3.hpp.

◆ pairCompare()

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

Definition at line 60 of file Cuboctahedron.cpp.

◆ registerAll()

void OpenMD::registerAll ( )

register force fields, integrators and optimizers

Definition at line 143 of file Register.cpp.

References registerIntegrators(), and registerOptimizers().

◆ registerIntegrators()

void OpenMD::registerIntegrators ( )

Register all integrators.

Definition at line 80 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 134 of file Register.cpp.

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

◆ registerOptimizers()

void OpenMD::registerOptimizers ( )

Register all optimizers.

Definition at line 125 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:58

Definition at line 58 of file Utility.cpp.

References next_combination().

Referenced by OpenMD::TypeContainer< AtomType, 1 >::find().

◆ replaceWithWildCardSkippingFirstElement()

bool OpenMD::replaceWithWildCardSkippingFirstElement ( std::vector< std::vector< std::string >::iterator > & cont,
std::vector< std::string > & sequence,
std::vector< std::string > & result,
const std::string & wildCard )

Definition at line 81 of file Utility.cpp.

◆ roundMe()

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

Definition at line 58 of file Utility.hpp.

◆ stripComments()

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

Strip comments from a string.

Parameters
S

Definition at line 64 of file StringUtils.cpp.

◆ swap_if()

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

Definition at line 74 of file CompositeShape.cpp.

◆ toLower()

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

Definition at line 58 of file CaseConversion.hpp.

◆ toLowerCopy()

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

Definition at line 64 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 107 of file StringUtils.hpp.

◆ toUpper()

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

Definition at line 73 of file CaseConversion.hpp.

◆ toUpperCopy()

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

Definition at line 79 of file CaseConversion.hpp.

◆ UpperCase()

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

Converts a string to UPPER CASE.

Parameters
S

Definition at line 99 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 114 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 157 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 94 of file NonBondedInteraction.hpp.

◆ DirectionalTypeID

string const OpenMD::DirectionalTypeID = "Directional"

Definition at line 58 of file DirectionalAdapter.hpp.

◆ EAM_INTERACTION

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

Definition at line 86 of file NonBondedInteraction.hpp.

◆ EAMtypeID

string const OpenMD::EAMtypeID = "EAM"

Definition at line 59 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 84 of file NonBondedInteraction.hpp.

◆ epsilon

RealType OpenMD::epsilon = 0.000001
staticconstexpr

Definition at line 66 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 57 of file FixedChargeAdapter.hpp.

◆ FQtypeID

string const OpenMD::FQtypeID = "FlucQ"

Definition at line 58 of file FluctuatingChargeAdapter.hpp.

◆ FuncflTypeID

string const OpenMD::FuncflTypeID = "FUNCFL"

Definition at line 60 of file EAMAdapter.hpp.

◆ GB_INTERACTION

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

Definition at line 89 of file NonBondedInteraction.hpp.

◆ GBtypeID

string const OpenMD::GBtypeID = "GB"

Definition at line 57 of file GayBerneAdapter.hpp.

◆ GenericFactory< Object, IdentType, Creator >::instance_

template<class Object, typename IdentType, typename Creator>
GenericFactory<Object, IdentType, Creator>* OpenMD::GenericFactory< Object, IdentType, Creator >::instance_

Definition at line 252 of file GenericFactory.hpp.

◆ HBAR_CM_PS

double OpenMD::HBAR_CM_PS = 5.3088373
staticconstexpr

Definition at line 78 of file SFG.cpp.

◆ INVERSEPOWERSERIES_INTERACTION

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

Definition at line 95 of file NonBondedInteraction.hpp.

◆ LJ_INTERACTION

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

Definition at line 85 of file NonBondedInteraction.hpp.

◆ LJtypeID

string const OpenMD::LJtypeID = "LJ"

Definition at line 57 of file LennardJonesAdapter.hpp.

◆ MAW_INTERACTION

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

Definition at line 92 of file NonBondedInteraction.hpp.

◆ MAX_SCRATCH_ARRAY_SIZE

int OpenMD::MAX_SCRATCH_ARRAY_SIZE = 10
constexpr

Definition at line 91 of file LU.hpp.

◆ MIE_INTERACTION

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

Definition at line 93 of file NonBondedInteraction.hpp.

◆ MORSE_INTERACTION

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

Definition at line 90 of file NonBondedInteraction.hpp.

◆ MultipoleTypeID

string const OpenMD::MultipoleTypeID = "Multipole"

Definition at line 58 of file MultipoleAdapter.hpp.

◆ PolTypeID

string const OpenMD::PolTypeID = "Polarizable"

Definition at line 57 of file PolarizableAdapter.hpp.

◆ progressSpinner_

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

Definition at line 76 of file ProgressBar.cpp.

◆ REPULSIVEPOWER_INTERACTION

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

Definition at line 91 of file NonBondedInteraction.hpp.

◆ SC_INTERACTION

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

Definition at line 87 of file NonBondedInteraction.hpp.

◆ SCtypeID

string const OpenMD::SCtypeID = "SC"

Definition at line 57 of file SuttonChenAdapter.hpp.

◆ SMALL_NUMBER

double OpenMD::SMALL_NUMBER = 1.0e-12
constexpr

Definition at line 90 of file LU.hpp.

◆ STICKY_INTERACTION

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

Definition at line 88 of file NonBondedInteraction.hpp.

◆ StickyTypeID

string const OpenMD::StickyTypeID = "Sticky"

Definition at line 57 of file StickyAdapter.hpp.

◆ tokenTable

const TokenEntry OpenMD::tokenTable[]
static

Definition at line 60 of file TokenMap.cpp.

◆ UFFtypeID

string const OpenMD::UFFtypeID = "UFF"

Definition at line 57 of file UFFAdapter.hpp.

◆ ZhouRoseTypeID

string const OpenMD::ZhouRoseTypeID = "ZHOUROSE"

Definition at line 62 of file EAMAdapter.hpp.

◆ ZhouTypeID

string const OpenMD::ZhouTypeID = "ZHOU"

Definition at line 61 of file EAMAdapter.hpp.