Request for assistance : Spin Alignment in Gd-Fe Multilayer System with Fe Anisotropy

Dear Community,

Hope you all are doing great. I’m simulating a Gd-Fe multilayer system using LAMMPS (August 2, 2023, version). The system exhibits antiferromagnetic coupling between Fe and Gd, with an alloy layer in between.

Issue:

I’ve added anisotropy in Fe along the +x direction using fix precession/spin anisotropy. However, after energy minimization (min_style spin/cg), the Fe spins align based on the initial spin configuration, seemingly unaffected by the anisotropy:

  • Biased Case (Initial Configuration - readdata-biased.dat): Fe and alloy spins align +x, Gd aligns −x.
  • Opposite-Biased Case (Initial Configuration - readdata-oppbiased.dat): Gd aligns +x, Fe and alloy align −x.

Questions:

  1. Why does the Fe anisotropy fail to affect the spin alignment?
  2. Is the exchange interaction dominating over the anisotropy energy?
  3. How can I enhance the effect of anisotropy in this system?

I have attached the sample input scripts (in1-biased.lmp and in1-oppbiased.lmp) and the initial configuration data files for your reference.
readdata-biased.dat (9.3 KB)
readdata-oppbiased.dat (9.3 KB)
in1-biased.lmp (2.4 KB)
in1-oppbiased.lmp (2.4 KB)

Any guidance would be greatly appreciated! Thank You.

Perhaps @julient, the author of the SPIN package can provide some insight.
You may need to contact him directly. Your questions are very specific to the package and I doubt if anybody else here can answer them.

Hello everyone,

Thanks for forwarding the question Axel!

It looks like the system is stuck in a metastable state. If I randomize one of the spins, for example by doing:
set atom 10 spin/atom/random 654321 1.26857142857143
The spins start precessing, and the energy converges towards a lower value. Note that you do not need to fully randomize it, you can just give it a small angle with respect to the (100) direction.

It looks like your anisotropy is rather small (few micro eVs). I doubt it will dominate over some of the exchange terms that I can see in your Hamiltonian. You can always increase its magnitude by changing the coefficient following ‘anisotropy’ in your fix precession/spin command.

Is it answering your questions? Let me know need to know something else!

All the best,
Julien.

1 Like

Dear @julient,

Thank you for your response and suggestions. I randomized the spins as you suggested, and here is the initial data file (readdata-random.dat) readdata.dat (9.0 KB).

After doing this, I could clearly observe the effect of the Fe anisotropy in the +x direction.

I also agree with your point that the exchange interaction dominates and effectively neglects the anisotropy.

However, my main concern remains:
Even with the applied anisotropy in Fe along the +x direction, I observed the same magnetic energy values in both previous cases (biased and opposite-biased). My energy tolerance factor is on the order of 1e-15.

Does this mean that the anisotropy energy has no contribution to the total magnetic energy in my system?

I would greatly appreciate your thoughts on this!

Dear @julient,
Thank you once again for your earlier response.
I have one more query regarding the behavior of the system.

Even though I randomized the spins, I expected the Fe and alloy spins to align along the +x direction, and the Gd spins to align along the −x direction, due to the applied Fe anisotropy in the +x-direction. However, from the generated dump file movie, the opposite behavior is observed:

  • Gd spins align along +x-direction, while Fe and alloy spins align along −x-direction.

To investigate further, I increased the anisotropy energy value by two orders of magnitude. This resulted in the system stabilizing in what appears to be a random state (from the movie, it seems the spins are canceling each other out).

I have attached the scripts in1-haniso.lmp (with high anisotropy energy value) & in1-laniso.lmp (with low anisotropy energy value) and the initial data file (readdata.dat) for your reference.

Could you help me understand why the system behaves this way, and why the increased anisotropy seems to destabilize the alignment?

Thank you again for your time and insights!

Regards,
Sourav.
in1-laniso.lmp (2.4 KB)
readdata.dat (9.4 KB)
in1-haniso.lmp (2.4 KB)

Dear @julient and everyone,
I hope this message finds you well. This is a gentle reminder to you of my query regarding the spin alignment behavior in the Gd-Fe multilayer system, particularly the unexpected alignment of spins despite the applied Fe anisotropy in the +x-direction (which should not happen).
It’s been few days and I understand you may be busy. I’ve provided the necessary details, including the updated script and data file, for reference.
I’d appreciate it if you or anyone else could provide feedback or guidance at your earliest convenience.

Thank you for your time.

Regards,
Sourav.

Hello Sourav,

My apologies for the late reply, and thank you for the reminder.

The ‘fix precession/spin anisotropy’ command sets an easy axis of magnetization. So in your case, the Fe spin will try to align along the x direction, whether it is +x or -x. Note that both -x and +x are perfectly equivalent energetically for this term.

If you would like your Fe spins to be aligned along +x (rather than -x), I think the easiest solution is to set them in an initial configuration that is not too far from +x. Then, they should relax towards this direction. Did you try this? If so, does it work better?

When you increase your anisotropy energy value, it is possible that your anisotropy starts to compete with some of your exchange interaction terms. Then, you can create frustrated systems that may stabilize into metastable configurations.

Hope this helps!

All the best,
Julien.

Dear Julien,

Thank you for your explanation and clarification regarding the behavior of the fix precession/spin anisotropy command.

I haven’t tried initializing the Fe spins closer to the +x-direction yet, but I will definitely give it a try and see if it leads to the expected alignment.

Best regards,
Sourav