25 #ifndef _chemistry_qc_lmp2_util_h
26 #define _chemistry_qc_lmp2_util_h
36 template <
class T1,
class T2,
class T3>
47 triplet(
const T1&a_,
const T2&b_,
const T3&c_):
a(a_),
b(b_),
c(c_) {}
48 bool operator == (
const sma2::triplet<T1, T2, T3> &t)
const {
49 return a==t.a &&
b==t.b &&
c=t.c;
51 bool operator < (
const sma2::triplet<T1, T2, T3> &t)
const {
52 if (
a<t.a)
return true;
53 else if (
a>t.a)
return false;
54 if (
b<t.b)
return true;
55 else if (
b>t.b)
return false;
56 if (
c<t.c)
return true;
62 template <
class T1,
class T2,
class T3>
63 sma2::triplet<T1, T2, T3> make_triplet(
const T1&a,
const T2&b,
const T3&c)
65 return triplet<T1, T2, T3>(a,b,c);