Commit JT 111519

- modified documentation spin (compute and exchange)
- modified compute spin for Ts
This commit is contained in:
julient31
2019-11-15 09:27:02 -07:00
parent 93bd2f4ab0
commit cedcc6fc50
5 changed files with 18 additions and 14 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

View File

@ -1,11 +1,15 @@
\documentclass[preview]{standalone} \documentclass[preview]{standalone}
\usepackage{varwidth} \usepackage{varwidth}
\usepackage[utf8x]{inputenc} \usepackage[utf8x]{inputenc}
\usepackage{amsmath,amssymb,amsthm,bm} \usepackage{amsmath, amssymb, graphics, setspace}
\begin{document} \begin{document}
\begin{varwidth}{50in} \begin{varwidth}{50in}
\begin{equation} \begin{equation}
\bm{H}_{ex} ~=~ -\sum_{i,j,i\neq j}^{N} {J} \left(r_{ij} \right)\, \vec{s}_{i}\cdot \vec{s}_{j} \nonumber H_{ex} =
-\sum_{i,j}^N J_{ij} (r_{ij}) \,\vec{s}_i \cdot \vec{s}_j
%&{\rm ~if~}& \vec{m}_i^I \times \vec{m}_i^F
, \nonumber
\end{equation} \end{equation}
\end{varwidth} \end{varwidth}
\end{document} \end{document}

View File

@ -24,17 +24,15 @@ compute out_mag all spin :pre
Define a computation that calculates magnetic quantities for a system Define a computation that calculates magnetic quantities for a system
of atoms having spins. of atoms having spins.
This compute calculates 6 magnetic quantities. This compute calculates the following 6 magnetic quantities:
The three first quantities are the x,y and z coordinates of the total
magnetization.
The fourth quantity is the norm of the total magnetization.
The fifth quantity is the magnetic energy.
the three first quantities are the x,y and z coordinates of the total
magnetization, :ulb,l
the fourth quantity is the norm of the total magnetization, :l
The fifth quantity is the magnetic energy (in eV), :l
The sixth one is referred to as the spin temperature, according The sixth one is referred to as the spin temperature, according
to the work of "(Nurdin)"_#Nurdin1. to the work of "(Nurdin)"_#Nurdin1. :l
:ule
The simplest way to output the results of the compute spin calculation The simplest way to output the results of the compute spin calculation
is to define some of the quantities as variables, and to use the thermo and is to define some of the quantities as variables, and to use the thermo and

View File

@ -30,14 +30,15 @@ pairs of magnetic spins:
:c,image(Eqs/pair_spin_exchange_interaction.jpg) :c,image(Eqs/pair_spin_exchange_interaction.jpg)
where si and sj are two neighboring magnetic spins of two particles, where si and sj are two neighboring magnetic spins of two particles,
rij = ri - rj is the inter-atomic distance between the two particles, rij = |ri - rj| is the inter-atomic distance between the two particles,
and J(rij) is a function defining the intensity and the sign of the exchange and J(rij) is a function defining the intensity and the sign of the exchange
interaction for different neighboring shells. This function is defined as: interaction for different neighboring shells. This function is defined as:
:c,image(Eqs/pair_spin_exchange_function.jpg) :c,image(Eqs/pair_spin_exchange_function.jpg)
where a, b and d are the three constant coefficients defined in the associated where a, b and d are the three constant coefficients defined in the associated
"pair_coeff" command (see below for more explanations). "pair_coeff" command, and Rc is the radius cutoff associated to
the pair interaction (see below for more explanations).
The coefficients a, b, and d need to be fitted so that the function above matches with The coefficients a, b, and d need to be fitted so that the function above matches with
the value of the exchange interaction for the N neighbor shells taken into account. the value of the exchange interaction for the N neighbor shells taken into account.

View File

@ -129,7 +129,8 @@ void ComputeSpin::compute_vector()
magtot[2] *= scale; magtot[2] *= scale;
magtot[3] = sqrt((magtot[0]*magtot[0])+(magtot[1]*magtot[1])+(magtot[2]*magtot[2])); magtot[3] = sqrt((magtot[0]*magtot[0])+(magtot[1]*magtot[1])+(magtot[2]*magtot[2]));
spintemperature = hbar*tempnumtot; spintemperature = hbar*tempnumtot;
spintemperature /= (kb*tempdenomtot); // spintemperature /= (kb*tempdenomtot);
spintemperature /= (2.0*kb*tempdenomtot);
vector[0] = magtot[0]; vector[0] = magtot[0];
vector[1] = magtot[1]; vector[1] = magtot[1];