triqs.operators.util.observables.S_op
- triqs.operators.util.observables.S_op(component, spin_names, n_orb, off_diag=None, map_operator_structure=None, orb_names=None)[source]
Create a component of the spin vector operator.
\[\hat{S}_{x,y,z} = \frac{1}{2}\sum_{i\sigma\sigma'} \hat{c}^\dagger_{i\sigma} \mathbf{\tau}^{x,y,z}_{\sigma\sigma'} \hat{c}_{i\sigma'}, \quad\hat{S}_\pm = \hat{S}_x \pm i \hat{S}_y.\]- Parameters:
- componentstr
Component to be created, one of
'x','y','z','+'or'-'.- spin_nameslist of str
Names of the spins, e.g.
['up', 'down'].- n_orbint
Number of orbitals.
- off_diagbool, optional
If
True, operators and blocks are labelled by('spin', 'orbital'); otherwise by('spin_orbital', 0).- map_operator_structuredict, optional
Mapping of GF-block names from one convention to another, e.g.
{('up', 0): ('up_0', 0), ('down', 0): ('down_0', 0)}. If provided, the operators and blocks use the image of('spin', 'orbital')under this map.
- Returns:
- Operator
The requested component of the spin vector operator.