Spin-Wave Dispersion

27 views
Skip to first unread message

Nikita Lobanov

unread,
Nov 1, 2024, 11:21:23 AM11/1/24
to Boris Computational Spintronics
Hi Serban, 
Thanks for helping me with the FMR. I hope you can help me also with my problems with spin wave dispersion and again with the mesh. 
1) What is the limit for magnetic meshes? If we set for example ns.Ferromagnet(...), in the attached files I tried to build change in length from 3500 nm/512 to 3500 nm/1024 and got something strange. 
2) I tried for the version of the code without creating Ferromagnet class object (SSW_3.4) to read the structure in microns, but it worked only when I set the grid size to microns in Boris and created a simulation. If I create objects, can I avoid this problem? 
3) I also noticed that there is some difference in results if I load simulation(def.bsm) without Ferromagnet object (SSW_3.4, Fig with title 3.4) and in case with Ferromagnet object (same with and without simulation) (SSW_3.8, Fig with title 3.4). By the way without simulation without Ferromagnet object something incomprehensible turns out and if you watch Mz in Boris, the dynamics in time is not similar to the cases above. 
4) Tried to run from the examples to version 3.8 Boris dispersion for surface spin waves, but nothing worked, apparently the problem is in the function custom_data_save to save the magnetisation profile and in Hequation, in which this function is prescribed. Can you explain how it should be set correctly?
SSW_3.8.py
def.bsm
3.8.png
SSW_3.4.py
3.4.png

Serban Lepadatu

unread,
Nov 2, 2024, 6:21:35 AM11/2/24
to Boris Computational Spintronics
Hi,

I think the main problem is the cellsize and time-step are too large.

For example in SSW_3.4.py script you have a cellsize of (6.83594 nm, 15.625 nm, 10 nm) which may be too large (the formula lex = sqrt(2A/mu0Ms^2) gives ~17 nm, but I would try a smaller cubic cellsize, e.g. 5 nm side.
Also you need to adjust the integration time-step when you reduce the cellsize (e.g. as in your point 1), which may be your main problem. The current value of 2 ps may be too large, try lower values and see if the results become consistent, e.g. 100 fs.

You can use the current approach with loading pre-configured simulation files, but I would just build the simulation with mesh objects in the script etc. I'm not sure what you mean in point 4.

Regards,
Serban
Reply all
Reply to author
Forward
0 new messages