Home > Applications > SpinW > m_files > @sw > moment.m

iFit/moment

PURPOSE ^

calculates the size of the reduced moment due to quantum and thermal fluctuations

SYNOPSIS ^

function M = moment(obj, varargin)

DESCRIPTION ^

 calculates the size of the reduced moment due to quantum and thermal fluctuations

 M = MOMENT(obj, 'option1', value1 ...)

 To calculate the reduced moment due to quantum and thermal fluctuations
 the magnon poulation is calculated at temperature T over the full
 Brillouin zone. To integrate numerically over the Brillouin zone random Q
 points are generated and the magnon populations are summed over these
 random Q points.

 Input:

 obj           Input structure, sw class object.

 Options:

 nRand         The number of random Q points in the Brillouin-zone,
               default is 1000.
 T             Temperature, default is taken from obj.single_ion.T.
 tol           Tolerance of the incommensurability of the magnetic
               ordering wavevector. Deviations from integer values of the
               ordering wavevector smaller than the tolerance are
               considered to be commensurate. Default value is 1e-4.
 omega_tol     Tolerance on the energy difference of degenerate modes when
               diagonalising the quadratic form, default is 1e-5.

 Output:

 'M' is a structure, with the following fields:
 moment        Size of the reduced moments, dimensions are [1 nMagExt].
 T               Temperature.
 nRand         Number of random Q points.
 obj           The copy of the input obj.

 Example 1:

 tri = sw_model('triAF',1);
 M = tri.moment('nRand',1e7);

 The example calculates the moment expectation value at zero temperature
 on the triangular lattice Heisenberg antiferromagnet. The function gives
 the reduced moment (M=0.7385 for S=1 after nRand = 1e7, the reduction is
 0.2615). The result can be compared with the following calculations:

 [1] A. V Chubukov, S. Sachdev, and T. Senthil, J. Phys. Condens. Matter 6, 8891 (1994).
 M = S - 0.261
 [2] S. J. Miyake, J. Phys. Soc. Japan 61, 983 (1992).
 M = S - 0.2613 + 0.0055/S (1/S is a higher order term neglected here)

 Example 2:

 sq = sw_model('squareAF',1);
 M = sq.moment('nRand',1e7);

 The reduced moment of the Heisenberg square lattice antiferromagnet at
 zero temperature can be compared to the following published result:

 [1] D. A. Huse, Phys. Rev. B 37, 2380 (1988).
 M = S - 0.197

 See also SW, SW.SPINWAVE, SW.GENMAGSTR, SW.TEMPERATURE.

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:
Generated on Mon 26-Nov-2018 15:08:42 by m2html © 2005. iFit (c) E.Farhi/ILL EUPL 1.1