12 gmat(g), pmat(p), a0(a) {}
15 void set_bound(
double,
double) {}
17 inline void cont1(
int ij,
int kl,
double val) {
18 gmat[ij] += val*pmat[kl];
19 gmat[kl] += val*pmat[ij];
22 inline void cont2(
int ij,
int kl,
double val) {
24 gmat[ij] += val*pmat[kl];
25 gmat[kl] += val*pmat[ij];
28 inline void cont3(
int ij,
int kl,
double val) {
30 gmat[ij] += val*pmat[kl];
31 gmat[kl] += val*pmat[ij];
34 inline void cont4(
int ij,
int kl,
double val) {
36 gmat[ij] += val*pmat[kl];
37 gmat[kl] += val*pmat[ij];
40 inline void cont5(
int ij,
int kl,
double val) {
42 gmat[ij] += val*pmat[kl];
43 gmat[kl] += val*pmat[ij];
61 void set_bound(
double,
double) {}
63 inline void cont1(
int ij,
int kl,
double val) {
64 ec += val*pmat[ij]*pmat[kl];
67 inline void cont2(
int ij,
int kl,
double val) {
68 ex -= a0*0.25*val*pmat[ij]*pmat[kl];
71 inline void cont3(
int ij,
int kl,
double val) {
72 ex -= a0*0.5*val*pmat[ij]*pmat[kl];
75 inline void cont4(
int ij,
int kl,
double val) {
76 ec += val*pmat[ij]*pmat[kl];
77 ex -= a0*0.25*val*pmat[ij]*pmat[kl];
80 inline void cont5(
int ij,
int kl,
double val) {
81 ec += val*pmat[ij]*pmat[kl];
82 ex -= a0*0.5*val*pmat[ij]*pmat[kl];