5 #ifndef __RD_FOURTHDIMCONTRIB_H__
6 #define __RD_FOURTHDIMCONTRIB_H__
29 : d_idx(idx), d_weight(weight) {
32 dp_forceField = owner;
39 "force field has wrong dimension");
41 unsigned int pid = d_idx * dp_forceField->dimension() + 3;
42 return d_weight * pos[pid] * pos[pid];
47 void getGrad(
double *pos,
double *grad)
const {
50 "force field has wrong dimension");
52 unsigned int pid = d_idx * dp_forceField->dimension() + 3;
53 grad[pid] += d_weight * pos[pid];