Scine::Sparrow  5.0.0
Library for fast and agile quantum chemical calculations with semiempirical methods.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
SlaterCondonParameters.h
Go to the documentation of this file.
1 
8 #ifndef SPARROW_SLATERCONDONPARAMETERS_H
9 #define SPARROW_SLATERCONDONPARAMETERS_H
10 
13 #include <vector>
14 
15 namespace Scine {
16 namespace Sparrow {
17 
18 namespace nddo {
19 
20 enum sc_t {
21  F0ss,
22  F0pp,
23  F0dd,
24  F0sp,
25  F0sd,
26  F0pd,
27  F2pp,
28  F2dd,
29  F2pd,
30  F4dd,
31  G1sp,
32  G1pd,
33  G2sd,
34  G3pd,
35  R1sppd,
36  R2sdpp,
37  R2sddd
38 };
39 
44  public:
46  void setElement(Utils::ElementType element);
47  void setExponents(double es, double ep = 1.0, double ed = 1.0); // Default value in case atom doesn't have those
48  // orbitals
49  void set(sc_t type, double value);
50  double get(sc_t type) const;
51  void calculate();
52 
53  private:
54  unsigned int getIndex(sc_t type) const {
55  return static_cast<unsigned int>(type);
56  }
57  double getUlValue(unsigned int l, unsigned int a, unsigned int b, unsigned int c, unsigned int d);
58 
59  Utils::ElementType element_;
60  unsigned int n_[3];
61  double exp_[3];
62  std::vector<double> parameters_;
63  std::vector<bool> alreadyGiven_;
65 };
66 
67 } // namespace nddo
68 
69 } // namespace Sparrow
70 } // namespace Scine
71 #endif // SPARROW_SLATERCONDONPARAMETERS_H
Definition: SlaterCondonParameters.h:43
Definition: oneCenterSlaterIntegral.h:28