NAMD
Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
ComputePmeUtil Class Reference

#include <ComputePme.h>

Inheritance diagram for ComputePmeUtil:
ComputePme ComputePmeMgr

Public Member Functions

 ComputePmeUtil ()
 
 ~ComputePmeUtil ()
 

Static Public Member Functions

static void select (void)
 

Static Public Attributes

static int numGrids
 
static Bool alchOn
 
static Bool alchFepOn
 
static Bool alchThermIntOn
 
static Bool alchDecouple
 
static BigReal alchElecLambdaStart
 
static Bool lesOn
 
static int lesFactor
 
static Bool pairOn
 
static Bool selfOn
 
static Bool LJPMEOn
 

Detailed Description

Definition at line 24 of file ComputePme.h.

Constructor & Destructor Documentation

◆ ComputePmeUtil()

ComputePmeUtil::ComputePmeUtil ( )
inline

Definition at line 28 of file ComputePme.h.

28 {};

◆ ~ComputePmeUtil()

ComputePmeUtil::~ComputePmeUtil ( )
inline

Definition at line 29 of file ComputePme.h.

29 {}

Member Function Documentation

◆ select()

void ComputePmeUtil::select ( void  )
static

Definition at line 6448 of file ComputePme.C.

References alchDecouple, alchElecLambdaStart, alchFepOn, alchOn, alchThermIntOn, lesFactor, lesOn, LJPMEOn, numGrids, Node::Object(), pairOn, selfOn, Node::simParameters, and simParams.

Referenced by SimParameters::pme_select(), and SimParameters::scriptSet().

6449 {
6450  if ( CkMyRank() ) return;
6451 
6453 
6454  alchOn = simParams->alchOn;
6455  alchFepOn = simParams->alchFepOn;
6456  alchThermIntOn = simParams->alchThermIntOn;
6457  alchDecouple = alchOn && simParams->alchDecouple;
6458  alchElecLambdaStart = alchOn ? simParams->alchElecLambdaStart : 0;
6459  lesOn = simParams->lesOn;
6460  lesFactor = simParams->lesFactor;
6461  pairOn = simParams->pairInteractionOn;
6462  selfOn = simParams->pairInteractionSelf;
6463 
6464  LJPMEOn = (simParams->LJPMEOn && ! simParams->LJPMESerialOn);
6465 
6466  if ( alchOn ) {
6467  numGrids = 2;
6468  if (alchDecouple) numGrids += 2;
6470  } else if ( lesOn ) {
6471  numGrids = lesFactor;
6472  } else if ( pairOn ) {
6473  if ( selfOn ) pairOn = 0; // make pairOn and selfOn exclusive
6474  numGrids = (selfOn ? 1 : 3);
6475  } else {
6476  numGrids = 1;
6477  }
6478 
6479  if ( LJPMEOn ) {
6480  numGrids *= 2;
6481  }
6482 
6483 }
static Node * Object()
Definition: Node.h:86
SimParameters * simParameters
Definition: Node.h:181
static int numGrids
Definition: ComputePme.h:32
static Bool alchOn
Definition: ComputePme.h:33
static BigReal alchElecLambdaStart
Definition: ComputePme.h:37
static Bool LJPMEOn
Definition: ComputePme.h:43
static Bool alchDecouple
Definition: ComputePme.h:36
static int lesFactor
Definition: ComputePme.h:39
#define simParams
Definition: Output.C:131
static Bool pairOn
Definition: ComputePme.h:40
static Bool lesOn
Definition: ComputePme.h:38
static Bool selfOn
Definition: ComputePme.h:41
static Bool alchFepOn
Definition: ComputePme.h:34
static Bool alchThermIntOn
Definition: ComputePme.h:35

Member Data Documentation

◆ alchDecouple

Bool ComputePmeUtil::alchDecouple
static

◆ alchElecLambdaStart

BigReal ComputePmeUtil::alchElecLambdaStart
static

Definition at line 37 of file ComputePme.h.

Referenced by select().

◆ alchFepOn

Bool ComputePmeUtil::alchFepOn
static

Definition at line 34 of file ComputePme.h.

Referenced by select(), ComputePmeMgr::submitReductions(), and ComputePme::ungridForces().

◆ alchOn

Bool ComputePmeUtil::alchOn
static

◆ alchThermIntOn

Bool ComputePmeUtil::alchThermIntOn
static

Definition at line 35 of file ComputePme.h.

Referenced by select(), and ComputePmeMgr::submitReductions().

◆ lesFactor

int ComputePmeUtil::lesFactor
static

Definition at line 39 of file ComputePme.h.

Referenced by select(), ComputePmeMgr::submitReductions(), and ComputePme::ungridForces().

◆ lesOn

Bool ComputePmeUtil::lesOn
static

◆ LJPMEOn

Bool ComputePmeUtil::LJPMEOn
static

◆ numGrids

int ComputePmeUtil::numGrids
static

◆ pairOn

Bool ComputePmeUtil::pairOn
static

◆ selfOn

Bool ComputePmeUtil::selfOn
static

Definition at line 41 of file ComputePme.h.

Referenced by ComputePme::doWork(), select(), and ComputePme::ungridForces().


The documentation for this class was generated from the following files: