Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,062 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sunny.jl
Documentation Build Status Citation

Overview

Sunny is a Julia package for simulating magnetism. It emphasizes symmetry-aware spin Hamiltonians, efficient methods for capturing quantum effects, and comparison with scattering data. Sunny is extensively documented, supports interactive visualization, and facilitates model fitting.

Try it out

Browse the Tutorials. For traditional spin wave theory, jump to the SpinW ports.

Julia setup is described in the Getting Started guide.

Key features

  • Symmetry-guided modeling. Load CIF or mCIF files, enumerate symmetry-allowed couplings, and propagate interactions by symmetry equivalence.
  • General operator couplings. Specify single-ion anisotropy in Stevens operators or spin polynomials. Arbitrary multipolar coupling on a bond is also supported.
  • Spin-wave theory for quantum spin excitations. The usual dipole formalism (CoRh₂O₄ bands) generalizes to multipoles via multi-flavor bosons (FeI₂ bands). Special calculators are available for incommensurate spiral order (Ba₃NbFe₃Si₂O₁₄ spiral) and for linear-scaling on very large systems (KPM solver).
  • Finite-temperature dynamics. The usual Landau-Lifshitz dipole dynamics (CoRh₂O₄ dynamics) generalizes to multipoles via SU(N) coherent states (FeI₂ dynamics). Use with parallel tempering to accelerate equilibrium sampling (Advanced MC).
  • Self-consistent Gaussian approximation (SCGA) for static observables in the paramagnetic-phase, e.g., susceptibility and diffuse scattering.
  • Long-range dipole-dipole interactions with Ewald summation and customizable demagnetization tensor (Pyrochlore Ewald).
  • Quenched disorder to model chemical impurities (Disordered intensities).
  • Model fitting tools. Examples include fitting to magnon bands (LuVO₃ fitting), inelastic powder data (β-Na₂PrO₃ fitting), and diffuse scattering data (MgCr₂O₄ fitting).
  • Entangled units to capture the local entanglement between strongly-coupled groups of spins (Ba₃Mn₂O₈ fitting).

See Release Notes for new features and breaking changes.

Related packages include SpinW (symmetry-guided spin wave theory), McPhase (accurate treatment of spin multipoles), Spinteract (SCGA solvers and fitting), and Vampire (large-scale spin dynamics).

Join our community

Say hello on our Slack workspace. Ask questions on the #helpdesk channel.

Citation

Please cite the main JOSS paper and any relevant methodology papers to help sustain Sunny development.


LANL    UTK    GATech   ORNL    LSU

About

Quantum spin dynamics for modeling magnetic materials

Resources

Contributing

Stars

144 stars

Watchers

11 watching

Forks

Releases

Used by

Contributors

Languages