NAMD
|
Alchemical datastructure that holds the lambda-relevant paramenters for FEP/TI. More...
#include <CudaComputeNonbondedKernel.h>
Public Attributes | |
float | scaling |
float | switchdist2 |
float | cutoff2 |
float | switchfactor |
float | alchVdwShiftCoeff |
float | lambdaUp |
float | lambdaDown |
float | elecLambdaUp |
float | elecLambdaDown |
float | vdwLambdaUp |
float | vdwLambdaDown |
float | lambda2Up |
float | lambda2Down |
float | elecLambda2Up |
float | elecLambda2Down |
float | vdwLambda2Up |
float | vdwLambda2Down |
float | vdwShiftUp |
float | vdwShift2Up |
float | vdwShiftDown |
float | vdwShift2Down |
bool | alchDecouple |
Alchemical datastructure that holds the lambda-relevant paramenters for FEP/TI.
JM: For every force evaluation, we copy the alchemical parameters in SimParameters onto the following data structure, which then gets copied to the constant memory. This whole thing could be done only once per lambda-window. For the elec* and vdw* parameters, we should use the getter functions on SimParams to calculate the current lambdas. Haochuan (Updated on 2022-10-31): Some alchemical parameters could depends on the simulation step. For example, lambda2Up could be changed every step if IDWS is on and alchIDWSFreq is set to 1 (see SimParameters::getCurrentLambda2 in SimParameters.C for more information). To solve this issue without sacrificing the performance, we need to compute the parameters every step on CPU, compare them to the previous cached results, and copy them to GPU memory if they are changed.
Definition at line 24 of file CudaComputeNonbondedKernel.h.
bool AlchData::alchDecouple |
Definition at line 49 of file CudaComputeNonbondedKernel.h.
float AlchData::alchVdwShiftCoeff |
Definition at line 29 of file CudaComputeNonbondedKernel.h.
float AlchData::cutoff2 |
Definition at line 27 of file CudaComputeNonbondedKernel.h.
float AlchData::elecLambda2Down |
Definition at line 41 of file CudaComputeNonbondedKernel.h.
float AlchData::elecLambda2Up |
Definition at line 40 of file CudaComputeNonbondedKernel.h.
float AlchData::elecLambdaDown |
Definition at line 34 of file CudaComputeNonbondedKernel.h.
float AlchData::elecLambdaUp |
Definition at line 33 of file CudaComputeNonbondedKernel.h.
float AlchData::lambda2Down |
Definition at line 39 of file CudaComputeNonbondedKernel.h.
float AlchData::lambda2Up |
Definition at line 38 of file CudaComputeNonbondedKernel.h.
float AlchData::lambdaDown |
Definition at line 32 of file CudaComputeNonbondedKernel.h.
float AlchData::lambdaUp |
Definition at line 31 of file CudaComputeNonbondedKernel.h.
float AlchData::scaling |
Definition at line 25 of file CudaComputeNonbondedKernel.h.
float AlchData::switchdist2 |
Definition at line 26 of file CudaComputeNonbondedKernel.h.
float AlchData::switchfactor |
Definition at line 28 of file CudaComputeNonbondedKernel.h.
float AlchData::vdwLambda2Down |
Definition at line 43 of file CudaComputeNonbondedKernel.h.
float AlchData::vdwLambda2Up |
Definition at line 42 of file CudaComputeNonbondedKernel.h.
float AlchData::vdwLambdaDown |
Definition at line 36 of file CudaComputeNonbondedKernel.h.
float AlchData::vdwLambdaUp |
Definition at line 35 of file CudaComputeNonbondedKernel.h.
float AlchData::vdwShift2Down |
Definition at line 48 of file CudaComputeNonbondedKernel.h.
float AlchData::vdwShift2Up |
Definition at line 46 of file CudaComputeNonbondedKernel.h.
float AlchData::vdwShiftDown |
Definition at line 47 of file CudaComputeNonbondedKernel.h.
float AlchData::vdwShiftUp |
Definition at line 45 of file CudaComputeNonbondedKernel.h.