Diagonalisation of Heisenberg Hamiltonian for AFM systems

39 views
Skip to first unread message

BO PENG

unread,
Sep 9, 2024, 6:24:39 AM9/9/24
to RAD-tools
Dear developers,

I hope this email finds you well!

I am using rad-tools from TB2J output for AFM magnons, as TB2J could not deal with AFM magnons. However, I could not understand how the Heisenberg Hamiltonian for AFM is diagonalised. I tried to search the Oxford textbook and the references provided in the magnon page, but could not find any details about the exact formula for AFM. Could you please enlighten me this? Thank you in advance!

Best wishes,
Bo

Andrey Rybakov

unread,
Sep 9, 2024, 6:41:48 AM9/9/24
to RAD-tools
Dear Bo,

Thank you for the interest in the code!

The diagonalization of the AFM Hamiltonian (i.e. of the matrix h(k) from here) is performed numerically in accordance with the method developed by Colpa (see https://doi.org/10.1016/0378-4371(78)90160-7). The diagonalization is implemented in the separate function (see https://rad-tools.org/en/stable/api/magnons/generated/radtools.solve_via_colpa.html#radtools.solve_via_colpa).


For the small amount of atoms in the unit cell it can be done analytically with the same method (see White et al as an example).

P. S. Please be advised as the AFM magnons are treated correctly (to the best of my knowledge) if the magnetic unit cell is used (i.e. if no spiral is used, but rather the AFM order is realised inside the magnetic unit cell of the material. The magnetic unit cell might coincide with the unit cell of the crystal or be a finite number of its repetitions, depending on the material)

Best,
Andrey

BO PENG

unread,
Sep 10, 2024, 9:37:03 PM9/10/24
to RAD-tools
Dear Andrey,

Thank you for the swift response! I have a follow-up question, on whether it would be possible to output the matrix for the magnon Hamiltonian for AFM systems. I would like to check the digaonalisation processes by analysing the eigenvalue and eigenvectors of the magnon Hamiltonian. I asked this because I want to explore physics of AFM magnons which require the magnon Hamiltonian. Thanks once again!

Best wishes,
Bo
Message has been deleted

Andrey Rybakov

unread,
Sep 11, 2024, 6:43:04 AM9/11/24
to RAD-tools
Dear Bo,

Yes, it is possible, but will require some knowledge of python. The function that will return you both full matrix and the transformation matrix to the new bosonic operators is solve_via_colpa.

A good place to start will be to take a look at the ".omega()" method of the MagnonDispersion class (https://github.com/adrybakov/rad-tools/blob/stable/src/radtools/magnons/dispersion.py) that will return the transformation matrix if the keyword "return_G=True" is passed to it.

Alternatively you can access matrix h, and its elements A, B, C with the corresponding methods of the MagnonDispersion class (https://rad-tools.org/en/stable/api/magnons/dispersion.html#hamiltonian-and-parts). Then you can call solve_via_colpa on h and obtain the diagonalised matrix as well as the transformation matrix.

P.S. The manager function that plots the magnon dispersion might give you a hint on how to read and pre-process the Hamiltonian based on TB2J file (https://github.com/adrybakov/rad-tools/blob/stable/src/radtools/score/plot_tb2j_magnons.py). Also those pages of the user guide might be helpful: 1 and 2.

Best,
Andrey
Reply all
Reply to author
Forward
0 new messages