MPQC 3.0.0-alpha
Loading...
Searching...
No Matches
primpairs.h
1//
2// primpairs.h
3//
4// Copyright (C) 2001 Edward Valeev
5//
6// Author: Edward Valeev <evaleev@vt.edu>
7// Maintainer: EV
8//
9// This file is part of the SC Toolkit.
10//
11// The SC Toolkit is free software; you can redistribute it and/or modify
12// it under the terms of the GNU Library General Public License as published by
13// the Free Software Foundation; either version 2, or (at your option)
14// any later version.
15//
16// The SC Toolkit is distributed in the hope that it will be useful,
17// but WITHOUT ANY WARRANTY; without even the implied warranty of
18// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19// GNU Library General Public License for more details.
20//
21// You should have received a copy of the GNU Library General Public License
22// along with the SC Toolkit; see the file COPYING.LIB. If not, write to
23// the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
24//
25// The U.S. Government is granted a limited license as per AL 91-7.
26//
27
28#ifndef _chemistry_qc_libint2_primpairs_h
29#define _chemistry_qc_libint2_primpairs_h
30
31#include <util/ref/ref.h>
32#include <chemistry/qc/basis/basis.h>
33
34namespace sc {
35
36typedef struct {
37 double P[3];
38 double gamma;
39 double ovlp;
41
45class PrimPairsLibint2 : public RefCount {
46 friend class ShellPairLibint2;
49 unsigned int nprim1_;
50 unsigned int nprim2_;
51 prim_pair_t *prim_pair_;
52
53 std::vector<unsigned int> shell_to_prim1_;
54 std::vector<unsigned int> shell_to_prim2_;
55
56 public:
60
61 prim_pair_t* prim_pair(unsigned int p1, unsigned int p2) const { return prim_pair_ + p1*nprim2_ + p2; };
62 double P(unsigned int p1, unsigned int p2, unsigned int xyz) const { return prim_pair_[p1*nprim2_ + p2].P[xyz]; };
63 double gamma(unsigned int p1, unsigned int p2) const { return prim_pair_[p1*nprim2_ + p2].gamma; };
64 double ovlp(unsigned int p1, unsigned int p2) const { return prim_pair_[p1*nprim2_ + p2].ovlp; };
65
66};
67
68}
69
70#endif
71
72// Local Variables:
73// mode: c++
74// c-file-style: "CLJ"
75// End:
PrimPairsLibint2 contains primitive pair data.
Definition primpairs.h:45
The base class for all reference counted objects.
Definition ref.h:192
A template class that maintains references counts.
Definition ref.h:361
ShellPairLibint2 is an interface to PrimPairsLibint2.
Definition shellpairs.h:40
Contains all MPQC code up to version 3.
Definition mpqcin.h:14
Definition primpairs.h:36

Generated at Wed Sep 25 2024 02:45:29 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.12.0.