gm_spherical3d#
Syntax#
[m, k, n, name, pname, limit] = gm_spherical3d(S0, x)
Description#
[m, k, n, name, pname, limit] = gm_spherical3d(S0, x) generates
magnetic structure from given parameters while constraining the length of
the spin on each atom. The parametrization of the magnetic structure
consists of 2 spherical coordinates \((\theta,\varphi)\) angles per
magnetic atom. All angles are in radian.
Input Arguments#
xInput parameters in the following order: \([\theta_1, \varphi_1, ... , k_x, k_y, k_z, n_\theta, n_\varphi]\).
S0Spin quantum number in a row vector \((S_1, S_2, ...)\) or scalar if all spins are equal.
Output Arguments#
SMatrix, containing the spin orientations with dimensions of \([3\times n_{magExt}]\). Every column contains the \((S_x S_y S_z)\) spin components of a magnetic atom in the \(xyz\) coordinate system.
kMagnetic ordering wavevector in rlu units in a row vector.
nNormal vector around which the spins are rotating for non-zero propagation vector in a row vector.
nameString, storing the name of the function.
pnameName of the input parameters in a cell:
{'Phi1_rad', ...}.limitLimits on the input parameters in a matrix with dimensions of \([2\times n_{param}]\). Every column contains a lower and upper limit on the corresponding parameter.