Tinker9 70bd052 (Thu Nov 9 12:11:35 2023 -0800)
Loading...
Searching...
No Matches
egvop.h
1#pragma once
2#include "ff/precision.h"
3#include "tool/rcman.h"
4
5namespace tinker {
8
10void zeroEGV(int vers = rc_flag);
11
13void scaleGradient(double scale, grad_prec* g0x, grad_prec* g0y, grad_prec* g0z);
14
16void sumGradient(grad_prec* g0x, grad_prec* g0y, grad_prec* g0z, //
17 const grad_prec* g1x, const grad_prec* g1y, const grad_prec* g1z);
18
20void sumGradient(double scale, grad_prec* g0x, grad_prec* g0y, grad_prec* g0z, //
21 const grad_prec* g1x, const grad_prec* g1y, const grad_prec* g1z);
22
24void copyGradientSync(int vers, double* grdx, double* grdy, double* grdz, //
25 const grad_prec* gx_src, const grad_prec* gy_src, const grad_prec* gz_src, int queue);
26
28void copyGradient(int vers, double* grdx, double* grdy, double* grdz, //
29 const grad_prec* gx_src, const grad_prec* gy_src, const grad_prec* gz_src);
30
36void copyGradient(int vers, double* grdx, double* grdy, double* grdz);
37
41void copyEnergy(int vers, energy_prec* eng);
42
44}
void copyGradient(int vers, double *grdx, double *grdy, double *grdz, const grad_prec *gx_src, const grad_prec *gy_src, const grad_prec *gz_src)
Copies the energy gradients from device to host.
void sumGradient(grad_prec *g0x, grad_prec *g0y, grad_prec *g0z, const grad_prec *g1x, const grad_prec *g1y, const grad_prec *g1z)
g0 += g1.
void zeroEGV(int vers=rc_flag)
Zero out all of the counts, energies, gradients, and virials on device.
void copyEnergy(int vers, energy_prec *eng)
void copyGradientSync(int vers, double *grdx, double *grdy, double *grdz, const grad_prec *gx_src, const grad_prec *gy_src, const grad_prec *gz_src, int queue)
Copies the energy gradients from device to host.
void scaleGradient(double scale, grad_prec *g0x, grad_prec *g0y, grad_prec *g0z)
g0 *= scale.
fixed grad_prec
Definition: precision.h:103
mixed energy_prec
Floating-point type for total energies.
Definition: precision.h:97
int rc_flag
Global bitmask.
Definition: testrt.h:9