Anisotropy tensor

302 views
Skip to first unread message

milton...@gmail.com

unread,
Feb 23, 2021, 9:43:45 AM2/23/21
to Vampire Users
Hello!

I would like to have both easy-plane anisotropy and easy-axis anisotropy with different anisotropy constants. Is this possible?

I saw that in vampire/scr/anisotropy/interface.cpp there is something called "uniaxial-anisotropy-tensor" and "cubic-anisotropy-tensor", but they are commented out. Would they solve my problem if I uncomment them? Are they perhaps available in the developer version? How does one obtain the developer version anyway?

Thanks in advance!
/Milton

Liza T

unread,
Jan 13, 2022, 2:07:53 PM1/13/22
to Vampire Users
Hello, just wondering, has this been resolved? Would appreciate some pointers on this as well.

Thank you!!

gabo...@gmail.com

unread,
Jan 14, 2022, 1:10:26 AM1/14/22
to Vampire Users
I would like to have both easy-plane anisotropy and easy-axis anisotropy with different anisotropy constants.

The above seems to saying what is wanted is something like:

material[1]:uniaxial-anisotropy-constant=2e-23
material[1]:uniaxial-anisotropy-direction=0,0,1
material[1]:uniaxial-anisotropy-constant=3e-23
material[1]:uniaxial-anisotropy-direction=0,1,1

First, I suppose you could give the above a try in your input file, but it might just error for example since material[1]:uniaxial-anisotropy-constant is defined twice or the program might just ignore one of the material[1]:uniaxial-anisotropy-constant instances.  If that is the case, it point towards that not being implemented in the VAMPIRE program such that you would have to do your own programming to make that possibly.  Second, I'm not sure if such a case exists in nature.  I think a magnetic region (grain) might be homogeneous having one anisotropy constant but you would have to go consult your magnetics textbooks on that.

Now, if you have two regions (e.g., bilayer), I think you could use:

material[1]:uniaxial-anisotropy-constant=2e-23
material[1]:uniaxial-anisotropy-direction=0,0,1
material[2]:uniaxial-anisotropy-constant=3e-23
material[2]:uniaxial-anisotropy-direction=0,1,1

On the other hand, if are wanting to have one anisotropy constant with two different directions, you could try cubic anisotropy.  I believe for that to work it would be something like:

material[1]:cubic-anisotropy-constant=2e-23
material[1]:cubic-anisotropy-direction-1=0,0,1
material[1]:cubic-anisotropy-direction-2=0,1,1

How does one obtain the developer version anyway?

2. Under Active branches, click on develop
Note: If it is not displayed, try searching for it with the keyword develop in the "Search branches..." box.

I'm thinking the develop branch is what the developer version is.

develop version.png

Kind Regards,
Gavin
VAMPIRE user
Message has been deleted

milton...@gmail.com

unread,
Jan 22, 2022, 5:17:45 PM1/22/22
to Vampire Users
Thank you Gavin!

It's in the developer version and can be done like this:

material[1]:second-order-triaxial-basis-vector-1 = 1,0,0 # for easy-axis
material[1]:second-order-triaxial-basis-vector-2 = 0,1,0 # personally don't use this one
material[1]:second-order-triaxial-basis-vector-3 = 0,0,1 # for easy-plane
material[1]:second-order-triaxial-basis-vector = 5.65e-25, 5.65e-25, -2.00e-23 # constants for the three directions, negative value for easy-plane

The easy-plane anisotropy was just for the shape anisotropy in thin films, because dipole fields are expensive and not always available. Maybe there is some better "demagnetisation field" feature now, I dunno.

milton...@gmail.com

unread,
Feb 3, 2022, 6:16:50 AM2/3/22
to Vampire Users
Sorry the last line should have "anisotropy" instead of "basis":
material[1]:second-order-triaxial-anisotropy-vector = ...
Reply all
Reply to author
Forward
0 new messages