All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Added major new feature, multiscale (muASD) functionalities. [Nikolaos Ntallis, Manuel Pereiro]
- Introduced major new feature, 3 Temperature model [Anastasiia A. Pervishko, Anders Bergman]:
- Added electron-only mode for 3TM. [Anders Bergman]
- Added variable specific heats for 3TM. [Anders Bergman]
- Added 3TM example:
./SLDexamples/bccFe3TM
. [Anders Bergman]
- Added weights to cumulants to improve convergence. [Anders Bergman]
- Added new function for real-space and time correlations. [Anders Bergman]
- Added triangulation routine for skyrmion number calculation.
skyno T
. [Anders Bergman] - Added JSON output for cumulant data (for aiida-uppasd parsing). [Anders Bergman]
- Added ASD functionality to ip_mode SX. [Anders Bergman]
- Added minimal driver routines for ASD and MC for external use. [Anders Bergman]
- Added support for (C)ycloidal and (H)elical spirals in qminimizer. [Anders Bergman]
- Added topological center of mass as a measurement. [Anders Bergman]
- Added symmetric anisotropic exchange as individual interaction. [Anders Bergman]
- Added pypi installation support for ASD_GUI. [Anders Bergman]
- Added support for angular frequency printing for S(q,w) outputs. [Anders Bergman]
- Added test functionality to Cmake compilation (ctest). [Anders Bergman]
- Added Quantum Heath Bath Method [Anders Bergman, Lars Bergqvist]
- Added gradient of temperature rescaling parameter required for Cv in QHB. [Lars Bergqvist]
- Addition of a changelog. [Jonathan Chico, Anders Bergman]
- Added more general tensor J support to sparse routines. [Anders Bergman]
- Added spin spiral and skyrmion examples. [Anders Bergman]
- Added python interface for UppASD [Anders Bergman]
- Added temperature dependent specific heat treatment for SLD. [Anders Bergman]
- Added cross-correlations: spin-displacement and displacement-velocity. [Anders Bergman]
- Added metatype concept for projected correlations. [Anders Bergman]
- Added velocity correlations. [Anders Bergman]
- Added python scripts for BLS and S(q,w) plotting. [Anders Bergman]
- Reading of site specific symmetry elements for inpsd.dat flag value 'sym 5'. [Johan Hellsvik]
- Added support for simultaneous C(q) and S(q,w) with
do_sc Y
. [Anders Bergman] - Cleanup and added new S(q,w) printout feature. [Anders Bergman]
- Added custom type for Hamiltonian input data. [Anders Bergman]
- Added local angular momentum measurable for atoms (local frame). [Anders Bergman]
- Added temperature control to LSWT correlation functions. [Anders Bergman]
- Added Polesya's original formulation for induced moments. [Anders Bergman]
- Added Four-site ring exchange routines. [Natalya S. Fedorova, Anders Bergman, Johan Hellsvik]
- Added Magnon DOS printout for NC-AMS. [Anders Bergman]
- Introduced 3 Temperature model [Anastasiia A. Pervishko, Anders Bergman]:
- Added electron-only mode for 3TM. [Anders Bergman]
- Added 3TM example:
./SLDexamples/bccFe3TM
. [Anders Bergman]
- Introduced two-time autocorrelation into
mc_driver
. [Anders Bergman] - Added Edwards-Anderson model capability. [Anders Bergman]
- Implemented 1q and 3q spin-spiral minimizer. [Anders Bergman]
- Added J-tensor support to Metropolis MC. [Anders Bergman]
- Fixes for tensor exchange simulations and LSWT. [Anders Bergman]
- Added frequency convolution for S(q,w) (earlier only for DOS). [Anders Bergman]
- Added support for averaging of S(q,w) and updated regression checking routines/references. [Anders Bergman]
- Added cmake support. [Anders Bergman]
- Added QHB example, reworked fccCo example. [Anders Bergman]
- Added PGI/NVIDIA fortran to
make probe
. [Anders Bergman] - Introduced ELK/RSPt compatible input/output. [Johan Hellsvik]
Maptype 3
for RPS Jij input files. [Johan Hellsvik]
- Added a series of scripts that Parse SPRKKR data into ASD format [Jonathan Chico]:
-The script also allows one to plot the Jij's as a function of distance, as well as some optional files.
- If one has a
.sys
file and a_SCF.out
the program will also generate momfiles and posfiles. - It is possible to write an exclusion list where one can write the atomic symbols of the atoms that one does not want to plot and which should be excluded from the ASD files
- If one has a
- Variant of induced moment treatment implemented. [Anders Bergman]
- Calculation of the scalar S(q,w) scattering intensity. [Johan Hellsvik]
- Added
qpoints=='G'
to read old q-points on theqpoints.out
format. [Johan Hellsvik] - Added
postQ.py
for plotting AMS according topreQ.py
structure. [Anders Bergman] - SLD regressions tests added. [Johan Hellsvik]
- Rudimentary Parallel Tempering algorithm added. [Anders Bergman]
- Added
do_bls_local_axis B
for correlations perpendicular to the local B-field. [Anders Bergman] - Added support for
do_reduced Y
to NC-AMS. [Anders Bergman] - Added makefile for win64 (cross-platform build). [Anders Bergman]
- Added support for sparse linear algebra for the evaluation of the effective field. Only for Jij and Dij and currently hardcoded to MKL. [Anders Bergman]
- Added dipole-dipole interaction via the macro-cell model. [Jonathan Chico]
- Added the capability of reading and writing the dipole-dipole tensor for both the macro dipole and brute force dipole interactions, which could be used to improve the speed of some calculations.
- Added the capacity to write the dipolar fields in certain cells produced by all the other cells. This should allow for a multi-scale approach, where the region of interest is studied with the full dipole-dipole interaction plus the far field contribution.
- Introduced the calculation of the dipole-dipole interaction using the FFT method. [Jonathan Chico]
- Implementations for both the FFT MKL and FFTW libraries.
- Added capabilities to treat open boundaries conditions.
- Added capability for induced moment calculation is SD mode. [Jonathan Chico]
- The calculation is based on the approach by Polseya and it treats the induced magnetic moments motion as being slaved by the motion of the nearest neighbour fixed moments.
- Introduced a new array which contains whether a moment is induced or not while taking into account the chemical nature of the system.
- Currently this type of dynamics is only taken into account in the Depondt solver.
- Added the capability of having fixed moments and induced moments at the same time.
- The selective Depondt solver will only update spins that 1) Are not induced 2) Are not fixed.
- The magnitude and direction of the induced moments depends on the neighbouring fixed moments. This might cause problems at high temperatures.
- Added the generalized form for the SOT. [Jonathan Chico]
- There are parameters controlling the damping-like torque and the field-like torque.
- The sign of the parameters might still be in question.
- There is also possibility for site dependent spin polarizations.
- Added eta-functionality for DM-stiffness. [Anders Bergman]
- Enabled the spin-ice loop algorithm for the initial phase. [Anders Bergman]
- Implementation of AMS in random alloys. [Lars Bergqvist]
- Chemically resolved AMS for random systems added.
- Added new S(q,w) sampling option. [Anders Bergman]
- Added qpoints weights in AMS-MDOS calc if symmetry is used. [Lars Bergqvist]
- Added random stiffy, i.e. supercell averaged for random alloys. [Lars Bergqvist]
- Accounting for PBC in
printhamiltonian
. Works for orthogonal systems, but needs verification for general lattices. [Johan Hellsvik] - Introduction of a timing routine for the dipole-dipole calculations. Added wrapper routines to handle the calculation of the dipole-dipole field and energy for the different methods implemented. [Jonathan Chico]
- Addition of the
Third_party
folder to include software from other sources. Included the OVF reader capability developed by Gideon Muller. Started to develop the I/O for the ovf format. [Jonathan Chico] - Implemented three-site (mi * (mj x mk)) interaction. [Anders Bergman]
- Added possibility of removing parallel components of B_eff. [Anders Bergman]
- Added the possibility of removing the parallel component of the effective field with keyword
perp Y
- Added the possibility of removing the parallel component of the effective field with keyword
- Added STT capability for the midpoint solver. [Jonathan Chico]
- Wang-Landau implementation introduced. [Anders Bergman]
- Local Spin Fluctuations (LSF) introduced. [Lars Bergqvist]
- Made AMS working for reduced Hamiltonian. [Anders Bergman]
- Added average energy in output file. [Lars Bergqvist]
- Added new coordinate wrapping routines for stiffy and AMS. Works ok for ra_AMS. [Anders Bergman]
- Improved m=z handling for MC HB. [Anders Bergman]
- Improved support for non-tensor interactions (anisotropy+SA) in nc-AMS. [Anders Bergman]
- Changed logfile format from YAML to json. [Anders Bergman]
- Cmake now builds library and executable. [Anders Bergman]
- Unified I/O for magnetic configurations. Now all magnetic configurations (moments, restartfile) have the same structure. [Jonathan Chico]
- Renaming the examples and tests folders so that they follow the current standards. [Jonathan Chico]
- Removed symmetrization of K in NC-LSWT routines. [Anders Bergman]
- Reimplemented G(k,t). Accessible with
do_sc T
. [Anders Bergman] - Revision of SLDexamples. [Johan Hellsvik]
- Made the memory profiling file
meminfo
optional (do_meminfo 0/1
). [Anders Bergman] - Improved (uniaxial) MAE support for LSWT. [Anders Bergman]
- Changed Verlet method for zero lattice damping. [Anders Bergman]
- Changes to S(q,w) tensor calculations. Changed real transform in S(q) to complex transform. Updated regression references accordingly. [Anders Bergman]
- Reactivation of point group symmetry in
setup_nm_nelem
. [Johan Hellsvik] - Added conditional compilation of OVF support. Off by default. [Anders Bergman]
- Changed back so that
posfiletype
only affectsposfile
, notjfile
. [Anders Bergman] - Updated default CUDA compute capability to 3.0. [Anders Bergman]
- Increased sanity checks for
inputhandler
. [Anders Bergman] read_elk_geometry
setsdo_ams='N'
if system is noncollinear. [Johan Hellsvik]- Changes to
read_llphonopydata
. [Johan Hellsvik] - Updated the convention for direct q-vectors. [Anders Bergman]
- Change of
qpoints==H
functionality. [Anders Bergman] - Auxiliary STT fields now allocated according to different values of the
ipSDEalgh
flag. [Johan Hellsvik] - For
qpoints=='C'
, writes q points in direct coordinates. [Johan Hellsvik] - Added wrapper routine for the calculation of the geometry of the cluster. [Jonathan Chico] -This routine should allow for the capacity of having atoms in the cluster that are not in the magnetic layers, without the need of inserting vacuum layers. Thus this requires the modification of the number of atoms in the system. -Fixed an issue which would cause deposited atoms in the cluster method to not properly work with the midpoint solver.
- Change to have mRyd as the fundamental unit for energy in LD and SLD subroutines. [Johan Hellsvik]
- Changed the
abs(w)
usage inams()
. Removedtaniso==3
(CMA) from the obsolete fileapplyhamiltonian.f90
. [Anders Bergman] - Re-instated the first generation temperature gradient routines. So far confirmed stable only for 1d gradients. Also updated the default
sc_local_axis_mix
to zero. [Anders Bergman] - Updated
examples/SLDexamples/bccFeSLD66/
to use Jij with 6 lattice constants cutoff for r_ij. [Johan Hellsvik] - Format change from text to aml for
inp.simid.out
. [Anders Bergman] - Improvements and generalization to AF-DLM in the renormalization exchange method. [Lars Bergqvist]
- Started using
effective_field()
for HeatBath MC. [Anders Bergman] - Updated python-scripts to python3 compatibility. [Anders Bergman]
- Restored type resolved AMS using super-VCA of random alloys. [Lars Bergqvist]
- Export of geometry to POSCAR format. [Johan Hellsvik]
- Added flag
do_prn_poscar
.
- Added flag
- Changed the format of the neighbour list to be better suited for large systems. [Jonathan Chico]
- Changes to the dmdata file so that it now has the same structure as the structfile.
- This file contains the bonding vectors, atom types, atom number and interaction strength in mRy
- Changed format for site-fields when using
locfield
. [Anders Bergman] - Fixed missing 1/(1+a^2) in the Heun_proper solver. Added STT terms to the Heun solver. [Jonathan Chico]
- Refactoring of the GNEB routines [Jonathan Chico]:
- Added a wrapper for the calculation of the Hessian in GNEB
- Added test suite for the GNEB functionality via the
make tests-gneb
command. This functionality will test the VPO minimizer, the calculation of eignevalues, the prefactors obtained from the Hessians as well as parameters comming from the energy barrier calculation. -Have also modified the output from the GNEB routines to be more UppASD and testing compliant, as well as modified the names of several of the output files so that they follow the UppASD convention.
- Moved out step size in Gaussian rotation trial move in order to prepare for adaptive sampling. [Lars Bergqvist]
- Adjusted cutoff energy in MDOS calc. [Lars Bergqvist]
- Changed the way in which the energy is being calculated so that it is consistent with the effective field calculation. [Jonathan Chico]
- Changed datatype for
do_reduced
to character (Y/N) Preprocessed sparse mkl-calls. Addeddo_reduced Y
to the kagome test. [Anders Bergman] - Introduced the Hamiltonian type. [Anders Bergman]
- Fixed issue with short simid strings. [Anders Bergman]
- Fixed CUDA compilation for now. [Anders Bergman]
- Fixed topological charge calculation. [Anders Bergman]
- Fixed a bug in initializing initial and final states for GNEB calculations; made calculations of hessians more efficient. [Pavel Bessarab]
- Revision to
read_llphonopydata
. [Johan Hellsvik] - Fixed bounds in magnon dos routine. [Anders Bergman]
- Fixed sqw for shorter simulation than sampling times. [Anders Bergman]
- Introduced lvec for lattice L. [Anders Bergman]
- Changed G(k) routine. [Anders Bergman]
- Fixed issue with PGF90 compilers. [Anders Bergman]
- Fixed q-point array limits in nc-s(q,w) subroutine. [Anders Bergman]
- Optimized SLD for diagonal Aijk cases (mml_diag T). [Anders Bergman]
- Corrected the use of
dm_scale
for rescaling DM interactions. [Anders Bergman] - Fixed lattice temperature for SLD initial phase. [Anders Bergman]
- Fixed for NC-ams for large supercells. [Anders Bergman]
- Fixed bug for reading of harmonic lattice potential on phonopy format. [Johan Hellsvik]
- Inactivation of
timesym
andinvsym
inget_fullnnlist_nelem
. [Johan Hellsvik] - Lattice measurements; correction of garlic NaN for T=0 K. [Johan Hellsvik]
- Correction of bug in calculate_ams after bug being reported by Roberto Díaz Pérez. For systems without inversion symmetry, the elements of the A matrix can take complex values. The matrix diagonalization is now performed for the complex matrix, and not for its real part. [Johan Hellsvik]
- Fixed special q-point cases for qminimizer. [Anders Bergman]
- Corrected MAJOR bug in
magnetizationinit
for random alloys andinitmag 1
. [Lars Bergqvist] - OMP fix in random_ams causing random segfaults. [Lars Bergqvist]
- Corrected Tc MFA and RPA for random alloys. [Lars Bergqvist]
- Fixed a bug with
the_path
subroutine. [Pavel Bessarab] - Corrected Tc-MFA estimate for random alloys. [Lars Bergqvist]
- Corrected printout of J(q) in AMS. [Lars Bergqvist]
- Correction to the parameters to ensure that the dipole-dipole interaction has the proper magnitude. [Jonathan Chico]
- Corrected scaling of the lattice vectors for POSCAR export. [Johan Hellsvik]
- Corrected MC implementation for chiral term. [Anders Bergman]
- Corrected possible bug in Heat bath. [Lars Bergqvist]
- Fixed call to temperature gradient routines. [Anders Bergman]
- Temperature models for SLD. [Anders Bergman]
- General four-spin interaction term. [Anders Bergman]
- Re-formulation of induced moment functionalities. [Anders Bergman]
- Removed default resetting of u and p in sld_driver. [Anders Bergman]
- Removed old (
UppASD < 5.0
) neighbour list output format. [Jonathan Chico] - Removed quasibls functionality and test. [Anders Bergman]
To check all the features available in UppASD
please visit the README.md
where they are presented. All features not listed here are also described in the documentation.