Oxs Extension Module: Southampton_CubicAnisotropy8
Description:
This is a generic Oxs extension object, derived from the Oxs_Energy class. It enhances the Oxs_CubicAnisotropy class as part of the standard OOMMF package by sixth and eighth order anisotropy energy terms. The energy density is computed by
- E =
- K1 [ (u1·m)2 (u2·m)2 + (u1·m)2 (u3·m)2 + (u2·m)2 (u3·m)2 ] +
- K2 [ (u1·m)2 (u2·m)2 (u3·m)2 ] +
- K3 [ (u1·m)4 (u2·m)4 + (u1·m)4 (u3·m)4 + (u2·m)4 (u3·m)4 ]
where m is the reduced (unit) magnetization, u1/u2/u3 are the first/second/third cubic anisotropy axes, and K1/K2/K3 are the fourth/sixth/eighth order phenomenological anisotropy constants.
The corresponding anisotropy field H is given by the relation
- - µ0MsH =
- 2 K1 [ { (u2·m)2 + (u3·m)2 } { (u1·m) u1} +
{ (u1·m)2 + (u3·m)2 } { (u2·m) u2} +
{ (u1·m)2 + (u2·m)2 } { (u3·m) u3} ] +- 2 K2 [ { (u2·m)2 (u3·m)2 } { (u1·m) u1} +
{ (u1·m)2 (u3·m)2 } { (u2·m) u2} +
{ (u1·m)2 (u2·m)2 } { (u3·m) u3} ] +- 4 K3 [ { (u2·m)4 + (u3·m)4 } { (u1·m)3 u1} +
{ (u1·m)4 + (u3·m)4 } { (u2·m)3 u2} +
{ (u1·m)4 + (u2·m)4 } { (u3·m)3 u3} ]
where Ms is the saturation magnetization.
Installation:
Download the header and source code files below, and follow the general Oxs extension installation instructions.
Usage:
MIF 2.x files written to use this class should include a Specify block of the form
Specify Southampton_CubicAnisotropy8:name{K1k1_valueK2k2_valueK3k3_valueaxis1anisotropy_axis_1axis2anisotropy_axis_2}
The values for the K1, K2, and K3 parameters should be
scalar field objects, and axis1 and axis2 should be vector field
objects. The only difference with respect to the stock
Oxs_CubicAnisotropy class is the inclusion of the K2 and K3 terms.
Details:
- Authors: Jürgen Zimmermann, Hans Fangohr
- Affiliation:School of Engineering Sciences, University of Southampton
- Oxs_Ext class: Southampton_CubicAnisotropy8
- OOMMF releases: 1.2a3
- External libraries: none
- License: Public Domain
- Release date: 10/04/2007
- Version: 1.0
Download:
- C++ header file: cubicanisotropy8.h
- C++ main source file: cubicanisotropy8.cc
- Example MIF input files:
- K2/K3 = 0% of real value: cubicEight_00pc.mif
- K2/K3 = 50% of real value: cubicEight_50pc.mif
- K2/K3 = 100% of real value: cubicEight_100pc.mif
- K2/K3 = 200% of real value: cubicEight_200pc.mif
Sample results:
Output from the four example MIF files, illustrating the effect of increasing K2/K3 relative to real value:
DISCLAIMER:
This software is free to use. However, the authors do not assume responsibility whatsoever for its use, and make no guarantees, expressed or implied, about its quality, reliability, or any other characteristic.