Logiciel pour la diagonalisation exacte des hamiltoniens de spin quantique en 1D et 2D

Dec 16 2020

Je recherche un logiciel (qui peut également fonctionner en parallèle) pour la diagonalisation exacte des hamiltoniens de spin quantique en 1D et 2D (par exemple le modèle de Heisenberg) constitué d'un grand nombre de sites de spin.

Il existe de tels packages (par exemple QuSpin, ALPS, SpinPack, Hphi, etc.)!

Cependant, s'il peut être répertorié, quels sont les avantages et les inconvénients de chaque package, et quel package convient le mieux à quel type de calculs?

De nombreux débutants bénéficieront des réponses, et toute aide dans ce sens sera appréciée.

Des réponses sous la forme de ces exemples seraient appréciées:

  • Existe-t-il un package gratuit avec une fonctionnalité CASSCF robuste?
  • Comment "me mouiller les pieds" dans la théorie fonctionnelle de la densité en simulant une molécule d'eau à l'aide de Python
  • Logiciel de simulation de dynamique moléculaire pour Windows
  • Quelles sont les alternatives DFT tout électrons open source à Wien2K?
  • Suggestions pour un bon flux de travail de visualisation de la structure cristalline
  • Codes pour le post-traitement des fichiers de cube gaussien?
  • Quel logiciel peut être utilisé pour faire une analyse QTAIM?
  • Outils pour les calculs électroniques de transport

Réponses

9 Anyon Dec 16 2020 at 23:15

QuSpin

QuSpin est un code Python open-source qui peut effectuer une diagonalisation exacte des systèmes de spin, fermion et boson. Il a un large support pour l'utilisation des symétries, des espaces de Hilbert contraints, de divers modèles et de l'évolution du temps. La combinaison d'une syntaxe Python assez simple et d'un grand nombre de didacticiels en fait un excellent choix pour les débutants, pour l'expérimentation à petite échelle et les problèmes d'évolution temporelle dans les systèmes à plusieurs corps. Cependant, les options de parallélisation sont limitées. Pour autant que je sache, à partir de la version 0.3.4, QuSpin ne prend en charge que la parallélisation sur nœud via OpenMP et MKL. Ainsi, QuSpin n'est généralement pas le meilleur choix si vous souhaitez atteindre les plus grands systèmes. De plus, QuSpin semble actuellement manquer de support intégré pour les fonctions de corrélation dynamique, ce qui est intéressant pour la modélisation d'expériences inélastiques.

Les références

  1. Projet sur GitHub: https://weinbe58.github.io/QuSpin/
  2. Présentation de l'article: Phillip Weinberg et Marin Bukov, QuSpin: un package Python pour la dynamique et la diagonalisation exacte de nombreux systèmes corporels quantiques, partie I: chaînes de spin , SciPost Phys. 2 , 003 (2017) .
  3. Document de suivi: Phillip Weinberg et Marin Bukov, QuSpin: un package Python pour la dynamique et la diagonalisation exacte de nombreux systèmes corporels quantiques. Partie II: bosons, fermions et spins supérieurs , SciPost Phys. 7 , 020 (2019) .