Version 0.7#
Date: 06 June 2023
Whats new?#
Major change: name of the package for pip installation is kept the same: "rad-tools". All imports in python code moved to "radtools".
New module, which affected other modules as well: Crystal.
Add print_2d_array()
.
Rename read_exchange_model()
to load_tb2j_model()
.
Major design change in the spinham
:
Renamed
ExchangeModel
toExchangeHamiltonian
Move from the concept (atom1, atom2, R) -> bond to the concept (atom1, atom2, R) -> J.
Made class
ExchangeParameter
from theBond
.Introduce new interface design for the
SpinHamiltonian
.Iteration over
SpinHamiltonian
returns (atom1, atom2, R, J) instead of (atom1, atom2, R).
0.7.1#
Write correct behaviour of SpinHamiltonian
with the SpinHamiltonian.double_counting
:
>>> import radtools as rad
>>> m = rad.SpinHamiltonian()
>>> m.add_atom("Cr", position=(0, 0, 0), spin=3/2)
>>> m.add_bond("Cr", "Cr", (1, 0, 0), iso=1)
>>> # First time - only setting interpretation, no modification of values
>>> m.notation = "standard"
>>> m["Cr", "Cr", (1, 0, 0)].iso
1.0
>>> m["Cr", "Cr", (-1, 0, 0)].iso
1.0
>>> m.double_counting
True
>>> m.double_counting = False
>>> m["Cr", "Cr", (1, 0, 0)].iso
2.0
>>> ("Cr", "Cr", (1, 0, 0)) in m
True
>>> ("Cr", "Cr", (-1, 0, 0)) in m
False
>>> m.double_counting = True
>>> m["Cr", "Cr", (1, 0, 0)].iso
1.0
>>> ("Cr", "Cr", (-1, 0, 0)) in m
True
Add attribute access to the atoms through atom names to the Crystal
:
>>> import radtools as rad
>>> c = rad.Crystal()
>>> c.add_atom(rad.Atom("Cr", index=1))
>>> c.Cr.fullname
'Cr__1'
>>> c.Cr__1.fullname
'Cr__1'
>>> c.add_atom(rad.Atom("Cr", index=2))
>>> c.Cr__1.fullname
'Cr__1'
>>> c.Cr__2.fullname
'Cr__2'
>>> c.Cr
Traceback (most recent call last):
...
AttributeError: 'Lattice' object has no attribute 'Cr'
0.7.2#
Add magnetic dipole-dipole energy calculator to the Crystal.
0.7.3#
Bugfix in convergence of magnetic dipole-dipole energy (Crystal.converge_mag_dipdip_energy
).
Energy difference between steps was not calculated correctly (overestimated).
0.7.4#
Bugfix in the rad-plot-dos.py: For spin-polarized PDOS :ref:rad-plot-dos_relative` Arguments was causing problems with overlapping colours. It is fixed.
0.7.5#
Add Custom plots and -cls, --colours to the rad-plot-dos.py.
0.7.6#
Add summing over atom types to the Custom plots.
0.7.7#
Add the option for removing background label to Custom plots.
0.7.8#
Add fontsize options to Custom plots.
0.7.9#
Bugfix in rad-plot-dos.py.
0.7.10#
Changes in rad-make-template.py. Now bonds are grouped by distances by default.
0.7.11#
Bugfix in print_2d_array()
. Refractor the whole module. Extend documentation.
Add shift
and borders
options to print_2d_array()
.
Bugfix in dos.py
.
0.7.12#
First version of magnons module, Add rad-plot-tb2j-magnons.py script.
0.7.13#
Bugfix, some scripts did not work before.
0.7.14#
Preliminary version of rad-plot-fatbands.py script.
0.7.15#
Bugfix if rad-plot-dos.py script. With custom plotting.