pomerol  2.1
Functions
Factory functions for spin coupling terms
Collaboration diagram for Factory functions for spin coupling terms:

Functions

RealExpr Pomerol::LatticePresets::SplusSminus (std::string const &Label1, std::string const &Label2, RealType J, unsigned short Orbital)
 
ComplexExpr Pomerol::LatticePresets::SplusSminus (std::string const &Label1, std::string const &Label2, ComplexType J, unsigned short Orbital)
 
RealExpr Pomerol::LatticePresets::SminusSplus (std::string const &Label1, std::string const &Label2, RealType J, unsigned short Orbital)
 
ComplexExpr Pomerol::LatticePresets::SminusSplus (std::string const &Label1, std::string const &Label2, ComplexType J, unsigned short Orbital)
 
RealExpr Pomerol::LatticePresets::SzSz (std::string const &Label1, std::string const &Label2, RealType J, unsigned short NOrbitals=1)
 
ComplexExpr Pomerol::LatticePresets::SzSz (std::string const &Label1, std::string const &Label2, ComplexType J, unsigned short NOrbitals=1)
 
RealExpr Pomerol::LatticePresets::SS (std::string const &Label1, std::string const &Label2, RealType J, unsigned short NOrbitals=1)
 
ComplexExpr Pomerol::LatticePresets::SS (std::string const &Label1, std::string const &Label2, ComplexType J, unsigned short NOrbitals=1)
 

Detailed Description

Function Documentation

◆ SminusSplus() [1/2]

ComplexExpr Pomerol::LatticePresets::SminusSplus ( std::string const &  Label1,
std::string const &  Label2,
ComplexType  J,
unsigned short  Orbital 
)

Make a fermionic \(S_- S_+\)-coupling term \(J S_{-,i\alpha} S_{+,j\alpha} = J c^\dagger_{i\alpha\downarrow} c_{i\alpha\uparrow} c^\dagger_{j\alpha\uparrow} c_{j\alpha\downarrow}\) with a complex exchange constant \(J\).

Parameters
[in]Label1The first lattice site \(i\).
[in]Label2The second lattice site \(j\).
[in]JExchange constant \(J\).
[in]OrbitalOrbital index \(\alpha\).

◆ SminusSplus() [2/2]

RealExpr Pomerol::LatticePresets::SminusSplus ( std::string const &  Label1,
std::string const &  Label2,
RealType  J,
unsigned short  Orbital 
)

Make a fermionic \(S_- S_+\)-coupling term \(J S_{-,i\alpha} S_{+,j\alpha} = J c^\dagger_{i\alpha\downarrow} c_{i\alpha\uparrow} c^\dagger_{j\alpha\uparrow} c_{j\alpha\downarrow}\) with a real exchange constant \(J\).

Parameters
[in]Label1The first lattice site \(i\).
[in]Label2The second lattice site \(j\).
[in]JExchange constant \(J\).
[in]OrbitalOrbital index \(\alpha\).

◆ SplusSminus() [1/2]

ComplexExpr Pomerol::LatticePresets::SplusSminus ( std::string const &  Label1,
std::string const &  Label2,
ComplexType  J,
unsigned short  Orbital 
)

Make a fermionic \(S_+ S_-\)-coupling term \(J S_{+,i\alpha} S_{-,j\alpha} = J c^\dagger_{i\alpha\uparrow} c_{i\alpha\downarrow} c^\dagger_{j\alpha\downarrow} c_{j\alpha\uparrow}\) with a complex exchange constant \(J\).

Parameters
[in]Label1The first lattice site \(i\).
[in]Label2The second lattice site \(j\).
[in]JExchange constant \(J\).
[in]OrbitalOrbital index \(\alpha\).

◆ SplusSminus() [2/2]

RealExpr Pomerol::LatticePresets::SplusSminus ( std::string const &  Label1,
std::string const &  Label2,
RealType  J,
unsigned short  Orbital 
)

Make a fermionic \(S_+ S_-\)-coupling term \(J S_{+,i\alpha} S_{-,j\alpha} = J c^\dagger_{i\alpha\uparrow} c_{i\alpha\downarrow} c^\dagger_{j\alpha\downarrow} c_{j\alpha\uparrow}\) with a real exchange constant \(J\).

Parameters
[in]Label1The first lattice site \(i\).
[in]Label2The second lattice site \(j\).
[in]JExchange constant \(J\).
[in]OrbitalOrbital index \(\alpha\).

◆ SS() [1/2]

ComplexExpr Pomerol::LatticePresets::SS ( std::string const &  Label1,
std::string const &  Label2,
ComplexType  J,
unsigned short  NOrbitals = 1 
)

Make a fermionic \(\mathbf{S S}\)-coupling term

\[ J \mathbf{S}_{i} \mathbf{S}_{j} = J \sum_\alpha \left[ S_{z,i\alpha} S_{z,j\alpha} + \frac{1}{2} S_{+,i\alpha} S_{-,j\alpha} + \frac{1}{2} S_{-,i\alpha} S_{+,j\alpha}\right] \]

with a complex exchange constant \(J\).

Parameters
[in]Label1The first lattice site \(i\).
[in]Label2The second lattice site \(j\).
[in]JExchange constant \(J\).
[in]NOrbitalsNumber of orbitals \(\alpha\) to sum over.

◆ SS() [2/2]

RealExpr Pomerol::LatticePresets::SS ( std::string const &  Label1,
std::string const &  Label2,
RealType  J,
unsigned short  NOrbitals = 1 
)

Make a fermionic \(\mathbf{S S}\)-coupling term

\[ J \mathbf{S}_{i} \mathbf{S}_{j} = J \sum_\alpha \left[ S_{z,i\alpha} S_{z,j\alpha} + \frac{1}{2} S_{+,i\alpha} S_{-,j\alpha} + \frac{1}{2} S_{-,i\alpha} S_{+,j\alpha}\right] \]

with a real exchange constant \(J\).

Parameters
[in]Label1The first lattice site \(i\).
[in]Label2The second lattice site \(j\).
[in]JExchange constant \(J\).
[in]NOrbitalsNumber of orbitals \(\alpha\) to sum over.

◆ SzSz() [1/2]

ComplexExpr Pomerol::LatticePresets::SzSz ( std::string const &  Label1,
std::string const &  Label2,
ComplexType  J,
unsigned short  NOrbitals = 1 
)

Make a fermionic \(S_z S_z\)-coupling term

\[ J S_{z,i} S_{z,j} = \frac{J}{4} \sum_\alpha (n_{i\alpha\uparrow} - n_{i\alpha\downarrow}) (n_{j\alpha\uparrow} - n_{j\alpha\downarrow}) \]

with a complex exchange constant \(J\).

Parameters
[in]Label1The first lattice site \(i\).
[in]Label2The second lattice site \(j\).
[in]JExchange constant \(J\).
[in]NOrbitalsNumber of orbitals \(\alpha\) to sum over.

◆ SzSz() [2/2]

RealExpr Pomerol::LatticePresets::SzSz ( std::string const &  Label1,
std::string const &  Label2,
RealType  J,
unsigned short  NOrbitals = 1 
)

Make a fermionic \(S_z S_z\)-coupling term

\[ J S_{z,i} S_{z,j} = \frac{J}{4} \sum_\alpha (n_{i\alpha\uparrow} - n_{i\alpha\downarrow}) (n_{j\alpha\uparrow} - n_{j\alpha\downarrow}) \]

with a real exchange constant \(J\).

Parameters
[in]Label1The first lattice site \(i\).
[in]Label2The second lattice site \(j\).
[in]JExchange constant \(J\).
[in]NOrbitalsNumber of orbitals \(\alpha\) to sum over.