UppASD
Uppsala Atomistic Spin Dynamics software
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
matplotlibfunctionalities. - Automatic generation of input files for
UppASD.
Requirements
-
Qt5. -
python2.7or higher.pandasnumpyPYYamlmatplotlibEnum
-
VTK7.0or 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
Personal projects
View all- Loading