Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ferromagnetic or Antiferromagnetic Hamiltonian #62

Open
lyf-ustc opened this issue Nov 25, 2024 · 4 comments
Open

Ferromagnetic or Antiferromagnetic Hamiltonian #62

lyf-ustc opened this issue Nov 25, 2024 · 4 comments

Comments

@lyf-ustc
Copy link

Hello,I found that in the examples given, it was mentioned that spin degrees of freedom can be introduced through field energy in matrix form, but I did not understand how to introduce spin degrees of freedom (ferromagnetism or antiferromagnetism) through this label. Can you give a detailed case to explain the construction of magnetic Hamiltonian

@BertJorissen
Copy link
Collaborator

what example?

@lululu315
Copy link

in the mult-orbital models section:
"The elements of the matrix term may correspond to different spins, electrons and holes, or any other degrees of freedom."
I don't understand how to build a magnetic hamiltonian by this multiorbital model, so can u put a simple case for it ?

@lululu315
Copy link

@BertJorissen
Copy link
Collaborator

The multiorbital approach allows yuo to have multiple orbitals on one site. In graphene the normal model only has one orbital per sublattice. Graphene has 2 sublattices, and the orbitals are the pz orbitals. In this model, you don't consider spin as graphene has a low SOC on the energy bands. However, if you want to look at systems with spins, you want to have two orbitals per sublattice, (A,up), (A,down), (B, up) and (B, down). There is a possiblity to have these mutliorbital structures in Pybinding, so that you can store them as matrices instead of doing every seperate hopping by hand.

A good example are TMDs. You can have a look at my paper about TMD TB models. TMDs have several orbitals per atomic position.

If you want to use pybinding, please use the latest version using pip install pybinding-dev, you can find the documentation at bertjorissen.github.io/pybinding/.

The implementation of the spin parts you will have to do by hand, as this is an implementation of a TB model. Pybinding allows you to construct larger TB Hamiltonians and solve them with the KPM method or diagonalize them and parse the outputs. You, as the user, should supply the pb.Lattice definition for your specific system.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants