The spinw object properties store all the information necessary for the spin wave calculation. It has 8 fields with several subfields, see below.

lattice

stores the unit cell parameters

Sub fields

  • lat_const : Lattice constants in a $[1\times 3]$ vector in units defined in [spinw.unit] (default value is \ang).

  • angle : [\\alpha,\\beta,\\gamma] angles in a $[1\times 3]$ vector in radian units.

  • sym : Symmetry operators stored in matrix with dimensions of $[3\times 4 \times n_{op}]$.

  • origin : Origin of the cell in lattice units.

  • label : Label of the space group.

unit_cell

Stores the atoms in the crystallographic unit cell

Sub fields

  • r : Positions of the atoms in the unit cell, stored in a matrix with dimensions of $[3\times n_{atom}]$, values are in lattice units.

  • S : Spin quantum number of the atoms, stored in a row vector with $n_{atom}$ number of elements, non-magnetic atoms have S=0.

  • label : Label of the atom, strings stored in a $[1\times n_{atom}]$ cell.

  • color : Color of the atom stored in a matrix with dimensions of $[3\times n_{atom}]$, where every column defines an RGB color with values between 0 and 255.

  • ox : Oxidation number of the atom, stored in a $[1\times n_{atom}]$ matrix.

  • occ : Site occupancy in a $[1\times n_{atom}]$ matrix.

  • b : Scattering length of the atoms for neutron and x-ray stored in a $[2\times n_{atom}]$ matrix, first row is neutron, second row is for x-ray.

  • ff : Form factor of the site stored in a $[2\times 9\times n_{atom}]$ matrix, first row is the magnetic form factor for neutrons, the second row is the charge form factor for x-ray cross section.

  • Z : Atomic number in a row vector.

  • A : Atomic mass (N+Z) for isotopes and -1 for natural distribution of isotopes stored in a row vector.

  • biso : Isotropic displacement factors in units of \ang$^2$. Definition is the same as in FullProf, defining the Debye-Waller factor as $W(d) = 1/8*b_{iso}/d^2$ which is included in the structure factor as $\exp(-2W(d))$.

twin

stores the crystal twin parameters

Sub fields

  • rotc : Rotation matrices in the $xyz$ coordinate system for every twin, stored in a matrix with dimensions of $[3\times 3\times n_{twin}]$.

  • vol : Volume ratio of the different twins, stored in a row vector with $n_{twin}$ elements.

matrix

stores 3x3 matrices for using them in the Hamiltonian

Sub fields

  • mat : Stores the actual values of 3x3 matrices, in a matrix with dimensions of $[3\times 3\times n_{matrix}]$, if assigned for a bond, the unit of energy is stored in [spinw.unit] (default value is meV).

  • color : Color assigned for every matrix, stored in a matrix with dimensions of $[3\times n_{matrix}]$, with each column defining an RGB value.

  • label : Label for every matrix, stored as string in a cell with dimensions of $[1\times n_{matrix}]$.

single_ion

stores single ion terms of the Hamiltonian

Sub fields

  • aniso : Row vector that contains $n_{magatom}$ integers, each integer assignes one of the matrices from the [spinw.matrix] property to a magnetic atom in the generated [spinw.matom] list as a single ion anisotropy. Zero value of aniso means no single ion anisotropy for the corresponding magnetic atom.
  • g : Row vector with $n_{magatom}$ integers, each integer assignes one of the matrices from the [spinw.matrix] property to a magnetic atom in the spinw.matom list as a g-tensor. Zero value of g means a default g-value of 2 for the corresponding atoms.

  • field : External magnetic field stored in a row vector with 3 elements, unit is defined in [spinw.unit] (default unit is Tesla).

  • T : Temperature, scalar, unit is defined in [spinw.unit] (default unit is Kelvin).

coupling

stores the list of bonds

Sub fields

  • dl : Distance between the unit cells of two interacting spins, stored in a $[3\times n_{coupling}]$ matrix.

  • atom1 : First magnetic atom, pointing to the list of magnetic atoms in the list generated by spinw.matom, stored in a row vector with $n_{coupling}$ element.

  • atom2 : Second magnetic atom, same as atom1.

  • mat_idx : Stores pointers to matrices for every coupling in a $[3\times n_{coupling}]$ matrix, maximum three matrix per coupling (zeros for no coupling) is allowed.

  • idx : Neighbor index, increasing indices for the equivalent couplings, starting with 1,2,… which means first and second neighbor bonds, respectively.

  • type : Type of coupling corresponding to mat_idx matrices. Default is 0 for quadratic exchange, type = 1 for biquadratic exchange.

  • sym : If true the bond symmetry operators will be applied on the assigned matrix.

  • rdip : Maximum distance until the dipolar interaction is calculated. Zero value means no dipolar interactions are considered.

  • nsym : The largest bond idx value that is generated using the space group operators. Typically very long bonds for dipolar interactions won’t be calculated using space group symmetry.

mag_str

stores the magnetic structure

Sub fields

  • F : Complex magnetization (strictly speaking complex spin expectation value) for every spin in the magnetic cell, represented by a matrix with dimensions of $[3\times n_{magext}\times n_k]$, where nMagExt = nMagAtom*prod(N_ext) and $n_k$ is the number of the magnetic propagation vectors.

  • k : Magnetic propagation vectors stored in a matrix with dimensions of $[3\times n_k]$.

  • N_ext : Size of the magnetic supercell in lattice units, default value is [1 1 1] emaning that the magnetic cell is identical to the crystallographic cell. The $[1\times 3]$ vector extends the cell along the $a$, $b$ and $c$ axes.

unit

stores the physical units for the Hamiltonian

Default values are meV, T, $\unicode{x212B}$ and K for energy, magnetic field, length and temperature, respectively.

Sub fields

  • kB : Boltzmann constant, default value is 0.0862 meV/K.

  • muB : Bohr magneton, default values is 0.0579 meV/T.

  • mu0 : Vacuum permeability, default value is 201.335431 T$^2\unicode{x212B}^3$/meV.

  • label : Labels for distance, energy, magnetic field and temperature stored in a cell with dimensions $[1\times 4]$.

  • nformula : Number of formula units in the unit cell.

  • qmat : Transformation matrix that converts the given $Q$ values into the internal reciprocal lattice. The matrix has dimensions of $[3\times 3]$.

cache

stores temporary values

This property should be only used to check consistency of the code.

Sub fields

  • matom : Generated data of the magnetic unit cell.

  • symop : Generated symmetry operators for each bond.