28 #include <util/ref/ref.h>
29 #include <math/distarray4/distarray4.h>
30 #include <chemistry/qc/basis/intparams.h>
32 #ifndef _chemistry_qc_basis_operator_h
33 #define _chemistry_qc_basis_operator_h
45 virtual unsigned int num_particles()
const =0;
48 virtual int perm_symm(
unsigned int p)
const =0;
50 virtual int perm_symm(
unsigned int i,
unsigned int j)
const =0;
63 int perm_symm(
unsigned int i,
unsigned int j)
const;
79 int perm_symm(
unsigned int i,
unsigned int j)
const;
197 static const int size = 1;
199 static std::string key;
202 static const int size = 1;
204 static std::string key;
207 static const int size = 1;
209 static std::string key;
212 static const int size = 1;
214 static std::string key;
217 static const int size = 3;
219 static std::string key;
222 static const int size = 6;
224 static std::string key;
227 static const int size = 1;
229 static std::string key;
232 static const int size = 1;
234 static std::string key;
237 static const int size = 1;
239 static std::string key;
242 static const int size = 3;
244 static std::string key;
247 static const int size = 6;
249 static std::string key;
256 int size()
const {
return size_; }
259 std::string key()
const {
return key_; }
264 size_(size), value_(value), key_(key) { }
370 static const int size = 1;
372 static std::string key;
375 static const int size = 4;
377 static std::string key;
380 static const int size = 6;
382 static std::string key;
385 static const int size = 5;
387 static std::string key;
390 static const int size = 1;
392 static std::string key;
395 static const int size = 1;
397 static std::string key;
400 static const int size = 1;
402 static std::string key;
405 static const int size = 1;
407 static std::string key;
410 static const int size = 1;
412 static std::string key;
424 int size()
const {
return size_; }
427 std::string key()
const {
return key_; }
431 const std::string& key);
static Ref< TwoBodyOperDescr > descr(TwoBodyOper::type t)
Returns a descriptor for integral type t.
{eri, r12_0_g12, r12_m1_g12, g12t1g12, anti_g12g12}
Definition: operator.h:348
(electronic) Coulomb
Definition: operator.h:108
electrostatic potential
Definition: operator.h:132
electric field along y, gradient along y
Definition: operator.h:139
Known two-body operator sets.
Definition: operator.h:343
h+J
Definition: operator.h:111
type
Types of one-body operators, includes various context-dependent "projectors", such as 1-RDM,...
Definition: operator.h:103
z component of $f \underline{\hat{p}} \cross V \underline{\hat{p}}
Definition: operator.h:124
Describes permutational properties (hermiticity, Bose/Fermi) of a two-body operator.
Definition: operator.h:70
identity kernel, i.e. overlap
Definition: operator.h:142
electric field along x, gradient along y
Definition: operator.h:137
electric field along x
Definition: operator.h:133
yy component of quadrupole moment
Definition: operator.h:118
Passes params to Integral::electron_repulsion() and other factory methods which do not need parameter...
Definition: intparams.h:107
zz component of quadrupole moment
Definition: operator.h:120
Describes one-body operators.
Definition: operator.h:98
Describes two-body operators.
Definition: operator.h:314
{mu_x, mu_y, mu_z}
Definition: operator.h:173
x component of negative imaginary part of angular momentum ( )
Definition: operator.h:129
type
Definition: operator.h:344
Definition: operator.h:330
A template class that maintains references counts.
Definition: ref.h:361
Describes sets of two-body operators (.
Definition: operator.h:195
electric field along z, gradient along z
Definition: operator.h:141
{pVp}
Definition: operator.h:178
(electronic) exchange
Definition: operator.h:109
static Ref< OneBodyOperDescr > descr(OneBodyOper::type t)
Returns a descriptor for integral type t.
y component of $f \underline{\hat{p}} \cross V \underline{\hat{p}}
Definition: operator.h:123
Describes sets of two-body operators (.
Definition: operator.h:368
electric field along z
Definition: operator.h:135
virtual int perm_symm(unsigned int p) const =0
Reports symmetry with respect to the permutation of function in bra with function in ket for particle...
x component of electric dipole moment
Definition: operator.h:112
{eri, r12, r12t1, r12t2}
Definition: operator.h:346
{r12_m1_g12}
Definition: operator.h:351
electric field along x, gradient along z
Definition: operator.h:138
{g12p4g12_m_g12t1g12t1}
Definition: operator.h:349
{S}
Definition: operator.h:169
Describes permutational properties (hermiticity) of one-body operators.
Definition: operator.h:54
int perm_symm(unsigned int i) const
Implementation of OperatorDescr::perm_symm()
Passes params to Integral::dipole() and other factory methods which need r information.
Definition: intparams.h:118
electric field along x, gradient along x
Definition: operator.h:136
Definition: operator.h:125
x component of Nabla operator ( )
Definition: operator.h:126
{g12t1g12}
Definition: operator.h:352
{ddphi_xx, ddphi_xy, ddphi_xz, ddphi_yy, ddphi_yz, ddphi_zz}
Definition: operator.h:177
which parameter set needed to specify the operator set?
Definition: operator.h:272
static type to_type(const std::string &key)
converts string representation to type
Definition: operator.h:325
nuclear (Coulomb) potential
Definition: operator.h:106
{V}
Definition: operator.h:171
{p4}
Definition: operator.h:179
static int max_ntypes
The max number of such types.
Definition: operator.h:333
int perm_symm(unsigned int i) const
Implementation of OperatorDescr::perm_symm()
unsigned int num_particles() const
Implementation of OperatorDescr::num_particles()
electric field along y
Definition: operator.h:134
static std::string to_string(type t)
converts type to string representation
Definition: operator.h:326
y component of Nabla operator ( )
Definition: operator.h:127
{delta}
Definition: operator.h:353
z component of negative imaginary part of angular momentum ( )
Definition: operator.h:131
{h}
Definition: operator.h:172
{T}
Definition: operator.h:170
xz component of quadrupole moment
Definition: operator.h:117
{eri}
Definition: operator.h:345
y component of electric dipole moment
Definition: operator.h:113
{dphi_x, dphi_y, dphi_z}
Definition: operator.h:176
1-body reduced density matrix
Definition: operator.h:104
two-body Coulomb
Definition: operator.h:319
x component of $f \underline{\hat{p}} \cross V \underline{\hat{p}}
Definition: operator.h:122
electric field along y, gradient along z
Definition: operator.h:140
xx component of quadrupole moment
Definition: operator.h:115
core Hamiltonian = T+V
Definition: operator.h:107
Fock operator.
Definition: operator.h:110
runtime version of OneBodyOperSetProperties
Definition: operator.h:253
Describes sets of two-body operator.
Definition: operator.h:421
which parameter set needed to specify the operator set?
Definition: operator.h:438
{r12_0_g12}
Definition: operator.h:350
Definition: operator.h:322
static std::string to_string(type t)
converts type to string representation
(nonrelativitic) kinetic energy
Definition: operator.h:105
Describes sets of one-body operator.
Definition: operator.h:164
type
types of known two-body operators
Definition: operator.h:318
unsigned int num_particles() const
Implementation of OperatorDescr::num_particles()
Used to pass params to Integral::g12().
Definition: intparams.h:144
{phi}
Definition: operator.h:175
Definition: operator.h:328
The base class for all reference counted objects.
Definition: ref.h:192
static int max_ntypes
The max number of such types.
Definition: operator.h:147
static type to_type(const std::string &key)
converts string representation to type
static type to_type(const std::string &key)
converts string representation to type
static std::string to_string(type t)
converts type to string representation
z component of electric dipole moment
Definition: operator.h:114
static type to_type(const std::string &key)
converts string representation to type
$f \underline{\hat{p}} \cdot V \underline{\hat{p}}
Definition: operator.h:121
For an operator (e.g.
Definition: operator.h:40
z component of Nabla operator ( )
Definition: operator.h:128
yz component of quadrupole moment
Definition: operator.h:119
Definition: operator.h:327
static std::string to_string(type t)
converts type to string
y component of negative imaginary part of angular momentum ( )
Definition: operator.h:130
xy component of quadrupole moment
Definition: operator.h:116
(contracted) Gaussian geminal over Coulomb,
Definition: operator.h:324
Contains all MPQC code up to version 3.
Definition: mpqcin.h:14
(contracted) Gaussian geminal,
Definition: operator.h:323
{q_xx, q_xy, q_xz, q_yy, q_yz, q_zz}
Definition: operator.h:174
interelectronic distance
Definition: operator.h:320
Definition: operator.h:321
type
one-body operator sets (
Definition: operator.h:168
anti_g12g12
Definition: operator.h:329
{eri, r12_0_g12, r12_m1_g12, t1g12, t2g12, g12t1g12}
Definition: operator.h:347
Generated at Sun Jan 26 2020 23:23:57 for MPQC
3.0.0-alpha using the documentation package Doxygen
1.8.16.