magnopy.LSWT.G#

method

LSWT.G(k, relative=False)[source]#

Transformation matrix to the new bosonic operators.

\[b_{\alpha}(\boldsymbol{k}) = \sum_{\beta} (\mathcal{G})_{\alpha, \beta}(\boldsymbol{k}) \mathcal{A}_{\beta}(\boldsymbol{k})\]
Parameters:
k(3,) array-like

Reciprocal vector

relativebool, default False

If relative=True, then k is interpreted as given relative to the reciprocal unit cell. Otherwise it is interpreted as given in absolute coordinates.

Returns:
G(M, 2M) numpy.ndarray

Transformation matrix from the original boson operators.

Examples

>>> import magnopy
>>> spinham = magnopy.examples.cubic_ferro_nn()
>>> lswt = magnopy.LSWT(spinham=spinham, spin_directions=[[0, 0, 1]])
>>> lswt.G(k=[0, 0, 0.5], relative=True)
array([[1.+0.j, 0.+0.j]])