Tinker9 70bd052 (Thu Nov 9 12:11:35 2023 -0800)
|
Classes | |
struct | tinker::PME |
Particle mesh ewald girds and parameters. More... | |
Typedefs | |
using | tinker::PMEUnit = GenericUnit< PME, GenericUnitVersion::ENABLE_ON_DEVICE > |
Functions | |
void | tinker::pmeData (RcOp) |
void | tinker::fftData (RcOp) |
void | tinker::fftfront (PMEUnit) |
void | tinker::fftback (PMEUnit) |
template<int LEVEL, int bsorder> | |
__device__ void | tinker::bsplgen (real w, real *__restrict__ thetai, volatile real *__restrict__ bsbuild_) |
B-spline coefficients and derivatives for a single PME atomic site along a particular direction. See also subroutine bsplgen in pmestuf.f file. More... | |
struct tinker::PME |
Particle mesh ewald girds and parameters.
Public Member Functions | |
void | setParams (const Params &p) |
PME::Params | getParams () const |
bool | operator== (const Params &p) const |
~PME () | |
Public Attributes | |
real | aewald |
int | nfft1 |
int | nfft2 |
int | nfft3 |
int | bsorder |
real * | bsmod1 |
real * | bsmod2 |
real * | bsmod3 |
real * | qgrid |
int * | igrid |
real * | thetai1 |
real * | thetai2 |
real * | thetai3 |
tinker::PME::~PME | ( | ) |
PME::Params tinker::PME::getParams | ( | ) | const |
bool tinker::PME::operator== | ( | const Params & | p | ) | const |
void tinker::PME::setParams | ( | const Params & | p | ) |
real tinker::PME::aewald |
real* tinker::PME::bsmod1 |
real * tinker::PME::bsmod2 |
real * tinker::PME::bsmod3 |
int tinker::PME::bsorder |
int* tinker::PME::igrid |
int tinker::PME::nfft1 |
int tinker::PME::nfft2 |
int tinker::PME::nfft3 |
real* tinker::PME::qgrid |
real* tinker::PME::thetai1 |
real * tinker::PME::thetai2 |
real * tinker::PME::thetai3 |
using tinker::PMEUnit = typedef GenericUnit<PME, GenericUnitVersion::ENABLE_ON_DEVICE> |
__device__ void tinker::bsplgen | ( | real | w, |
real *__restrict__ | thetai, | ||
volatile real *__restrict__ | bsbuild_ | ||
) |
B-spline coefficients and derivatives for a single PME atomic site along a particular direction. See also subroutine bsplgen
in pmestuf.f
file.
bsorder | Desired B-spline order; MAX_BSORDER is hard-coded to 5. |
LEVEL | Flag to control the results in thetai , and must be:
|
w | Fractional distance to the reference PME grid point along a particular direction. |
thetai | Output array of size thetai[bsorder][MAX_BSORDER-1] in C or thetai(MAX_BSORDER-1,bsorder) in Fortran. Based on the value of LEVEL , the output is as follows,
|
bsbuild_ | A CUDA working array of size MAX_BSORDER*MAX_BSORDER . |
void tinker::bsplineFill | ( | PMEUnit | , |
int | level | ||
) |
void tinker::cuindToFuind | ( | PMEUnit | , |
const real(*) | cind[3], | ||
const real(*) | cinp[3], | ||
real(*) | fuind[3], | ||
real(*) | fuinp[3] | ||
) |
void tinker::fftback | ( | PMEUnit | ) |
void tinker::fftData | ( | RcOp | ) |
void tinker::fftfront | ( | PMEUnit | ) |
void tinker::fphiMpole | ( | PMEUnit | ) |
void tinker::fphiUind | ( | PMEUnit | , |
real(*) | fdip_phi1[10], | ||
real(*) | fdip_phi2[10], | ||
real(*) | fdip_sum_phi[20] | ||
) |
void tinker::pmeConv | ( | PMEUnit | ) |
void tinker::pmeConv | ( | PMEUnit | , |
EnergyBuffer | e | ||
) |
void tinker::pmeConv | ( | PMEUnit | , |
EnergyBuffer | e, | ||
VirialBuffer | v | ||
) |
void tinker::pmeConv | ( | PMEUnit | , |
VirialBuffer | v | ||
) |
void tinker::pmeData | ( | RcOp | ) |
void tinker::pmeStreamFinishRecord | ( | bool | usePmeStream | ) |
void tinker::pmeStreamFinishWait | ( | bool | usePmeStream | ) |
void tinker::pmeStreamStartRecord | ( | bool | usePmeStream | ) |
void tinker::pmeStreamStartWait | ( | bool | usePmeStream | ) |
void tinker::rpoleToCmp | ( | ) |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
CUDA stream for the OpenACC async PME queue.
|
constexpr |
|
constexpr |
|
extern |