NanoStructures  1.0
DMFT solver for layered, strongly correlated nanostructures
hybridizationprovider.h
1 #ifndef HYBRIDIZATIONPROVIDER_H
2 #define HYBRIDIZATIONPROVIDER_H
3 
4 #include "../chainprovider.h"
5 #include "../../math/pfunction.h"
6 #include "../../err/exception.h"
7 
8 namespace math {
9 class CFunction;
10 }
11 
12 namespace nrg {
13 namespace chain {
15 {
16 public:
18  void setHybridization(const math::CFunction& hUp, const math::CFunction& hDown);
19  void setHybridization(const math::CFunction& hUp);
20  math::PFunction getHybridizationUp() { return m_hybridizationUp; }
21  math::PFunction getHybridizationDown() { return m_hybridizationDown; }
22  virtual void buildChain();
23  virtual ~HybridizationProvider();
24 protected:
25  tWilsonChain buildChain(math::PFunction &h);
27 
28  math::PFunction m_hybridizationUp;
29  math::PFunction m_hybridizationDown;
30 };
31 
33 {
34 public:
35  HybridizationException(std::string msg) : error::Exception(msg) {}
36  virtual ~HybridizationException() throw() {}
37 };
38 }
39 }
40 #endif // HYBRIDIZATIONPROVIDER_H
Definition: mpreal.h:52
Definition: chainprovider.h:19
Definition: hybridizationprovider.h:14
Definition: hybridizationprovider.h:32
Definition: pfunction.h:8
Discretized complex-valued function for real arguments.
Definition: cfunction.h:34
Definition: exception.h:10