User profile picture

UppASD team

@UppASD
  • UppASD
  • README.md

UppASD

Uppsala Atomistic Spin Dynamics software

build status

The UppASD software package is a simulation suite to study magnetization dynamics by means of the atomistic version of the Landau-Lifshitz-Gilbert (LLG) equation.

Applications:

  • Critical temperature determination
  • Magnon spectra simulations
  • Micromagnetic exchange and DMI stiffness calculations
  • Current, field, and temperature-driven dynamics

Features:

  • LLG, Metropolis, and Heat-bath algorithms
  • Generalized Hamiltonian including
    • bilinear and biquadratic Heisenberg exchange
    • Dzyaloshinskii-Moriya exchange
    • magnetocrystalline anisotropies.
  • Support for arbitrary crystal structures and random alloys
  • Spin-transfer and spin-orbit torques
  • Temperature gradients
  • Quantum statistics

Detailed information about the method can be found in
Atomistic Spin Dynamics: Foundations and Applications
O. Eriksson et. al, Oxford University Press 2017


Quick-start:

./setup_UppASD.sh   
make <profile>

Where <profile> is a suitable compiler profile, i.e. ifort, gfortran, gfortran-osx and so on.

The binary is compiled as ./source/sd

Examples are provided in ./examples/

The manual is found at ./docs/UppASDmanual.pdf

Developers please look at the development guidelines in the CONTRIBUTING.md file, about how to make your contributions to UppASD.


User Graphic Interface


A python based QT GUI for the code is also available at ./ASD_GUI/ASD_GUI.py. This allows for:

  • Visualization of outputs via VTK.
  • Plotting of several quantities via integrated matplotlib functionalities.
  • Automatic generation of input files for UppASD.

Requirements

  • Qt5.
  • python2.7 or higher.
    • pandas
    • numpy
    • PYYaml
    • matplotlib
    • Enum
  • VTK7.0 or higher.

Installation Guide (anaconda)

One simplified way to install the prerequisites for the ASD_GUI can be done via the anaconda framework and its environments.

After installing anaconda one can create virtual environment where to host the ASD_GUI. This can be done in the following way:

conda create --name ASD_GUI_env python=3.6 vtk=8.1.0 numpy scipy matplotlib yaml pyyaml pandas
source activate ASD_GUI_env
conda install -c menpo enum 
conda install -c qt5 pyqt5

This will generate a virtual environment named ASD_GUI_env which can be activated or deactivated to run the GUI.

Installation Guide (pip)

Another way to install the prerequisites for the ASD_GUI can be done via pip and virtualenv environments.

After installing virtualenv one can create virtual environment where to host the ASD_GUI. This can be done in the following way:

pip install virtualenv
virtualenv ASD_GUI_env --python=python3.8
source ASD_GUI_env/bin/activate
pip install numpy scipy matplotlib pandas pyqt5 vtk

This will generate a virtual environment named ASD_GUI_env which can be activated or deactivated to run the GUI.


(C) 2008-2020 UppASD group

Activity

View all
Loading
There was an error loading users activity calendar.
  • Loading

Personal projects

View all
  • Loading
Loading

Info

9:25 PM
Member since January 15, 2018