Unit of "mean-anisotropy-energy"

95 views
Skip to first unread message

JIANG

unread,
Mar 1, 2024, 10:18:38 PM3/1/24
to Vampire Users
When I use the tag "output: mean-anisotropy-energy" in my input file, I get MAE values in the output card with correct changing trend by temperature, but their absolute values are wrong if I suppose their units are "J". (If I convert them into meV,  they will be about 10^3 times larger than expected values, say, about 0.** meV)

Here are my input and output file. What's the correct unit for "mean-anisotropy-energy"?

Best regards, 
Jiang
output
input

gabo...@gmail.com

unread,
Mar 2, 2024, 9:22:01 AM3/2/24
to Vampire Users
Hi,

In the VAMPIRE 6.0 source code file energy.cpp in the statistics folder [1], there is:

line 181 :    //---------------------------------------------------------------------------
line 182 :    // Calculate anisotropy energy (in Tesla)
line 183 :    //---------------------------------------------------------------------------
line 184 :    for( int atom = 0; atom < num_atoms; ++atom ){
line 185 :       const int mask_id = mask[atom]; // get mask id
line 186 :       anisotropy_energy[mask_id] += anisotropy::single_spin_energy(atom, mat[atom], sx[atom], sy[atom], sz[atom], temperature) * mm[atom];
line 187 :    }
...
line 433:    // output correct energy type (in Joules)
...
line 443:          case anisotropy :
line 444:              for(int mask_id=0; mask_id<mask_size; ++mask_id) result <<    anisotropy_energy[mask_id] * constants::muB;
line 445:              break;

With anisotropy_energy[mask_id] above having units of Telsa.  It looks like constants::muB [2] would need to be in units of Joules/Telsa.

Hope that can be helpful.


Kind Regards,
Gavin
VAMPIRE user

JIANG

unread,
Mar 3, 2024, 12:56:16 AM3/3/24
to Vampire Users
Dear Gavin,

Thanks a lot for your answer! Yet I still have a question, that why those results in the output file are so large? I expect that they should be around 600 μeV as 

calculated by VASP, but they turn out to be 46 eV.

As said in your last answer, I suppose the unit to be J, and then I multiplied them by 1.6*10^ (-19) to transfer them into eV.

Best Regard,
Jiang

gabo...@gmail.com

unread,
Mar 4, 2024, 5:47:27 AM3/4/24
to Vampire Users
The VASP webpage at [1] states:

 The Magnetocrystalline Anisotropy Energy is calculated by orientating the spins in different directions.

The article is for SIESTA, but in it at [2] it states for Magnetocrystalline Anisotropy Energy (MAE):

The MAE is defined as the difference in the total self-consistent energy between hard and easy magnetization directions.

With the MAE definitions being similar, section "IV. TEMPERATURE DEPENDENCE OF THE ANISOTROPY: ATOMISTIC MODEL CALCULATIONS" in [2] might be of interest to you.  There is one paragraph in particular that might be worth highlighting which has:

We finally consider the possibility of a combination of opposing single-ion and two-ion anisotropy as the origin of the large increase in anisotropy. We note that the [VAMPIRE] two-ion anisotropy is essentially an exchange anisotropy which is not accessible to our [SIESTA] DFT calculations.

JIANG

unread,
Mar 6, 2024, 3:12:10 AM3/6/24
to Vampire Users
Thanks a lot for your reply!
Reply all
Reply to author
Forward
0 new messages