IM-SRG++  0
Generator.hh
1 
2 #ifndef Generator_hh
3 #define Generator_hh 1
4 
5 #include "ModelSpace.hh"
6 #include "Operator.hh"
7 
8 
9 class Generator
10 {
11  public:
12 
13  string generator_type;
14  Operator * H;
15  Operator * Eta;
16  ModelSpace* modelspace;
17  double denominator_cutoff;
18  double denominator_delta;
19  int denominator_delta_index;
20 
21  Generator();
22  void SetType(string g){generator_type = g;};
23  string GetType(){return generator_type;};
24  void Update(Operator* H, Operator* Eta);
25  void AddToEta(Operator* H, Operator* Eta);
26  void SetDenominatorCutoff(double c){denominator_cutoff=c;};
27  void SetDenominatorDelta(double d){denominator_delta=d;};
28  void SetDenominatorDeltaIndex(int i){denominator_delta_index=i;};
29  void SetDenominatorDeltaOrbit(string orb);
30 
31 // private:
32  void ConstructGenerator_Wegner();
33  void ConstructGenerator_White();
34  void ConstructGenerator_Atan();
36  void ConstructGenerator_ShellModel();
37  void ConstructGenerator_ShellModel_Atan();
38  void ConstructGenerator_ShellModel_ImaginaryTime();
39  void ConstructGenerator_HartreeFock();
40  double Get1bDenominator(int i, int j);
41  double Get2bDenominator(int ch, int ibra, int iket);
42 
43 };
44 
45 #endif
Definition: Operator.hh:21
void ConstructGenerator_ImaginaryTime()
Imaginary time generator.
Definition: Generator.cc:208
Definition: ModelSpace.hh:157
Definition: Generator.hh:9