pomerol  2.1
Functions
Factory functions for terms with bosonic degrees of freedom
Collaboration diagram for Factory functions for terms with bosonic degrees of freedom:

Functions

RealExpr Pomerol::LatticePresets::BosonLevel (std::string const &Label, RealType Eps, unsigned short ExtraIndex)
 
ComplexExpr Pomerol::LatticePresets::BosonLevel (std::string const &Label, ComplexType Eps, unsigned short ExtraIndex)
 
RealExpr Pomerol::LatticePresets::BosonInteraction (std::string const &Label, RealType U, unsigned short ExtraIndex)
 
ComplexExpr Pomerol::LatticePresets::BosonInteraction (std::string const &Label, ComplexType U, unsigned short ExtraIndex)
 
RealExpr Pomerol::LatticePresets::HolsteinInteraction (std::string const &Label, RealType Lambda, unsigned short Orbital, unsigned short BosonExtraIndex)
 
ComplexExpr Pomerol::LatticePresets::HolsteinInteraction (std::string const &Label, ComplexType Lambda, unsigned short Orbital, unsigned short BosonExtraIndex)
 

Detailed Description

Function Documentation

◆ BosonInteraction() [1/2]

ComplexExpr Pomerol::LatticePresets::BosonInteraction ( std::string const &  Label,
ComplexType  U,
unsigned short  ExtraIndex 
)

Make a bosonic interaction term \(\frac{U}{2}a^{\dagger}_{i\alpha} a_{i\alpha} (a^{\dagger}_{i\alpha} a_{i\alpha} - 1)\) with a complex interaction strength \(U\).

Parameters
[in]LabelSite label \(i\).
[in]UInteraction constant \(U\).
[in]ExtraIndexAdditional index \(\alpha\).

◆ BosonInteraction() [2/2]

RealExpr Pomerol::LatticePresets::BosonInteraction ( std::string const &  Label,
RealType  U,
unsigned short  ExtraIndex 
)

Make a bosonic interaction term \(\frac{U}{2}a^{\dagger}_{i\alpha} a_{i\alpha} (a^{\dagger}_{i\alpha} a_{i\alpha} - 1)\) with a real interaction strength \(U\).

Parameters
[in]LabelSite label \(i\).
[in]UInteraction constant \(U\).
[in]ExtraIndexAdditional index \(\alpha\).

◆ BosonLevel() [1/2]

ComplexExpr Pomerol::LatticePresets::BosonLevel ( std::string const &  Label,
ComplexType  Eps,
unsigned short  ExtraIndex 
)

Make a single energy level term \(\varepsilon a^{\dagger}_{i\alpha} a_{i\alpha}\) for a boson on a given site with a given additional index.

Parameters
[in]LabelSite label \(i\).
[in]EpsComplex energy level \(\varepsilon\).
[in]ExtraIndexAdditional index \(\alpha\).

◆ BosonLevel() [2/2]

RealExpr Pomerol::LatticePresets::BosonLevel ( std::string const &  Label,
RealType  Eps,
unsigned short  ExtraIndex 
)

Make a single energy level term \(\varepsilon a^{\dagger}_{i\alpha} a_{i\alpha}\) for a boson on a given site with a given additional index.

Parameters
[in]LabelSite label \(i\).
[in]EpsReal energy level \(\varepsilon\).
[in]ExtraIndexAdditional index \(\alpha\).

◆ HolsteinInteraction() [1/2]

ComplexExpr Pomerol::LatticePresets::HolsteinInteraction ( std::string const &  Label,
ComplexType  Lambda,
unsigned short  Orbital,
unsigned short  BosonExtraIndex 
)

Make a Holstein fermion-boson coupling term of the following form,

\[ \lambda (n_{i\alpha\uparrow} + n_{i\alpha\downarrow}) (a^\dagger_{i\beta} + a_{i\beta}) \]

with a complex coupling constant \(\lambda\).

Parameters
[in]LabelSite label \(i\).
[in]LambdaCoupling constant \(\lambda\).
[in]OrbitalOrbital index \(\alpha\).
[in]BosonExtraIndexAdditional bosonic index \(\beta\).

◆ HolsteinInteraction() [2/2]

RealExpr Pomerol::LatticePresets::HolsteinInteraction ( std::string const &  Label,
RealType  Lambda,
unsigned short  Orbital,
unsigned short  BosonExtraIndex 
)

Make a Holstein fermion-boson coupling term of the following form,

\[ \lambda (n_{i\alpha\uparrow} + n_{i\alpha\downarrow}) (a^\dagger_{i\beta} + a_{i\beta}) \]

with a real coupling constant \(\lambda\).

Parameters
[in]LabelSite label \(i\).
[in]LambdaCoupling constant \(\lambda\).
[in]OrbitalOrbital index \(\alpha\).
[in]BosonExtraIndexAdditional bosonic index \(\beta\).