TBTK
Susceptibility.h
1 /* Copyright 2018 Kristofer Bj√∂rnson
2  *
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  * http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
23 #ifndef COM_DAFER45_TBTK_PROPERTY_SUSCEPTIBILITY
24 #define COM_DAFER45_TBTK_PROPERTY_SUSCEPTIBILITY
25 
27 #include "TBTK/TBTKMacros.h"
28 
29 #include <complex>
30 #include <vector>
31 
32 namespace TBTK{
33 namespace Property{
34 
36 class Susceptibility : public EnergyResolvedProperty<std::complex<double>>{
37 public:
40 
52  const IndexTree &indexTree,
53  double lowerBound,
54  double upperBound,
55  unsigned int resolution
56  );
57 
70  const IndexTree &indexTree,
71  double lowerBound,
72  double upperBound,
73  unsigned int resolution,
74  const std::complex<double> *data
75  );
76 
88  const IndexTree &indexTree,
89  int lowerMatsubaraEnergyIndex,
90  int upperMatsubaraEnergyIndex,
91  double fundamentalMatsubaraEnergy
92  );
93 
107  const IndexTree &indexTree,
108  int lowerMatsubaraEnergyIndex,
109  int upperMatsubaraEnergyIndex,
110  double fundamentalMatsubaraEnergy,
111  const std::complex<double> *data
112  );
113 
121  Susceptibility(const std::string &serialization, Mode mode);
122 
124  std::string serialize(Mode mode) const;
125 private:
126 };
127 
128 }; //End namespace Property
129 }; //End namespace TBTK
130 
131 #endif
std::string serialize(Mode mode) const
Precompiler macros.
Base class for energy resolved Properties.
Definition: EnergyResolvedProperty.h:37
Data structure for mapping physical indices to linear indices.
Definition: IndexTree.h:34
Base class for energy resolved Properties.
Definition: ModelFactory.h:35
Mode
Definition: Serializable.h:44
Property container for the Susceptibility.
Definition: Susceptibility.h:36