ProtoMol - an object-oriented component based framework for Molecular Dynamics simulations.

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth > Class Template Reference

#include <NonbondedMultiGridSystemForce.h>

Inheritance diagram for ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >:

ProtoMol::SystemForce ProtoMol::NonbondedMultiGridSystemForceBase ProtoMol::Force ProtoMol::Makeable List of all members.

Public Member Functions

 NonbondedMultiGridSystemForce ()
 NonbondedMultiGridSystemForce (unsigned int nx, unsigned int ny, unsigned int nz, unsigned int levels, Real s, unsigned int order, unsigned int ratio, Vector3D h, Vector3D origin)
virtual ~NonbondedMultiGridSystemForce ()
virtual void evaluate (const GenericTopology *, const Vector3DBlock *, Vector3DBlock *, ScalarStructure *)
virtual void parallelEvaluate (const GenericTopology *, const Vector3DBlock *, Vector3DBlock *, ScalarStructure *)
virtual unsigned int numberOfBlocks (const GenericTopology *, const Vector3DBlock *)
virtual std::string getKeyword () const
virtual void uncache ()
virtual std::string getIdNoAlias () const
virtual void getParameters (std::vector< Parameter > &parameters) const
virtual unsigned int getParameterSize () const

Private Types

typedef Topology< TBoundaryConditions,
TCellManager > 
RealTopologyType
typedef RealTopologyType::Enumerator EnumeratorType
typedef RealTopologyType::Enumerator::CellPair CellPairType

Private Member Functions

void initialize (const RealTopologyType *realTopo, const Vector3DBlock *positions)
void shortRangeTerm (const RealTopologyType *topo, const Vector3DBlock *positions, Vector3DBlock *forces, Real &shortRange, ScalarStructure *energies, unsigned int n)
void longRangeTerm (const RealTopologyType *realTopo, const Vector3DBlock *positions, Vector3DBlock *forces, Real &longRange, ScalarStructure *)
void correctionTerm (const RealTopologyType *realTopo, const Vector3DBlock *positions, Vector3DBlock *forces, Real &intraMolecularEnergy, ScalarStructure *energies, unsigned int from, unsigned int to)
virtual ForcedoMake (std::string &errMsg, std::vector< Value > values) const

Private Attributes

bool myCached
Real myV
int myLevels
Real myS
Real myS2
Real myRS
unsigned int myNX
unsigned int myNY
unsigned int myNZ
MultiGrid< TInterpolation,
TKernel, TBoundaryConditions::PERIODIC,
TBoundaryConditions::PERIODIC,
TBoundaryConditions::PERIODIC > 
myGrid
unsigned int myInterOrder
unsigned int myRatio
Vector3D myMin
Vector3D myMax
Vector3D myH
Vector3D myOrigin
Real myPointSelfEnergy
EnumeratorType enumerator

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
class ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >


Member Typedef Documentation

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
typedef RealTopologyType::Enumerator::CellPair ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::CellPairType [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
typedef RealTopologyType::Enumerator ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::EnumeratorType [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
typedef Topology<TBoundaryConditions, TCellManager> ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::RealTopologyType [private]
 


Constructor & Destructor Documentation

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::NonbondedMultiGridSystemForce  ) 
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::NonbondedMultiGridSystemForce unsigned int  nx,
unsigned int  ny,
unsigned int  nz,
unsigned int  levels,
Real  s,
unsigned int  order,
unsigned int  ratio,
Vector3D  h,
Vector3D  origin
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::~NonbondedMultiGridSystemForce  )  [virtual]
 


Member Function Documentation

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
void ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::correctionTerm const RealTopologyType realTopo,
const Vector3DBlock positions,
Vector3DBlock forces,
Real intraMolecularEnergy,
ScalarStructure energies,
unsigned int  from,
unsigned int  to
[private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
Force * ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::doMake std::string &  errMsg,
std::vector< Value values
const [private, virtual]
 

Implements ProtoMol::Force.

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
void ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::evaluate const GenericTopology ,
const Vector3DBlock ,
Vector3DBlock ,
ScalarStructure
[virtual]
 

Implements ProtoMol::SystemForce.

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
std::string ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::getIdNoAlias  )  const [virtual]
 

Implements ProtoMol::Makeable.

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
virtual std::string ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::getKeyword  )  const [inline, virtual]
 

Implements ProtoMol::Force.

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
void ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::getParameters std::vector< Parameter > &  parameters  )  const [virtual]
 

retrieve all parameters

Implements ProtoMol::Makeable.

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
virtual unsigned int ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::getParameterSize  )  const [inline, virtual]
 

number of parameters

Implements ProtoMol::Makeable.

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
void ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::initialize const RealTopologyType realTopo,
const Vector3DBlock positions
[private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
void ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::longRangeTerm const RealTopologyType realTopo,
const Vector3DBlock positions,
Vector3DBlock forces,
Real longRange,
ScalarStructure
[private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
unsigned int ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::numberOfBlocks const GenericTopology ,
const Vector3DBlock
[virtual]
 

Reimplemented from ProtoMol::Force.

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
void ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::parallelEvaluate const GenericTopology ,
const Vector3DBlock ,
Vector3DBlock ,
ScalarStructure
[virtual]
 

Reimplemented from ProtoMol::SystemForce.

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
void ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::shortRangeTerm const RealTopologyType topo,
const Vector3DBlock positions,
Vector3DBlock forces,
Real shortRange,
ScalarStructure energies,
unsigned int  n
[private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
virtual void ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::uncache  )  [inline, virtual]
 

Reimplemented from ProtoMol::Force.


Member Data Documentation

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
EnumeratorType ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::enumerator [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
bool ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myCached [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
MultiGrid<TInterpolation,TKernel,TBoundaryConditions::PERIODIC,TBoundaryConditions::PERIODIC,TBoundaryConditions::PERIODIC> ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myGrid [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
Vector3D ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myH [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
unsigned int ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myInterOrder [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
int ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myLevels [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
Vector3D ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myMax [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
Vector3D ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myMin [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
unsigned int ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myNX [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
unsigned int ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myNY [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
unsigned int ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myNZ [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
Vector3D ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myOrigin [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
Real ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myPointSelfEnergy [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
unsigned int ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myRatio [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
Real ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myRS [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
Real ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myS [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
Real ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myS2 [private]
 

template<class TBoundaryConditions, class TCellManager, class TInterpolation, class TKernel, bool direct, bool correction, bool smooth>
Real ProtoMol::NonbondedMultiGridSystemForce< TBoundaryConditions, TCellManager, TInterpolation, TKernel, direct, correction, smooth >::myV [private]
 


The documentation for this class was generated from the following file: Last update: . GNU GENERAL PUBLIC LICENSE, copyrighted by the University of Notre Dame and the University of Bergen, Norway.