OOMMF MIF 2.0 Upgrade Guide, OOMMF 1.2a0 to 1.2a1


As part of the alpha development of the OOMMF 1.2 Oxs program, changes have been made that render 1.2a0 MIF 2.0 files invalid in 1.2a1. While the overall structure of the MIF 2.0 format (i.e., a Tcl script with a collection of Specify blocks) is unchanged, some of the Oxs_Ext classes (and their corresponding Specify blocks) have been renamed or removed, and the Specify block internal structure has changed for others. The most significant changes are highlighted below. The reader should refer to the "Standard Oxs_Ext Child Classes" section of the Oxsii documentation in the OOMMF User's Guide for further details.

  1. Most notably, the Oxs_Region and Oxs_RectangularRegion classes have been renamed Oxs_Section and Oxs_RectangularSection, and their role as descriptions for the overall problem geometry is now served by the new Oxs_Atlas/Oxs_SectionAtlas classes. In particular, the Oxs_RectangularMesh class now takes a reference to an Oxs_Atlas rather than to an Oxs_Region. For example, in the 1.2a0 release a MIF segment like this:
    	-----------------------------------------------
    	 OLD  1.2a0  OLD  1.2a0  OLD  1.2a0  OLD  1.2a0
    	-----------------------------------------------
    	 Specify Oxs_RectangularRegion:World {
    	   xrange {0 310e-9}
    	   yrange {0 310e-9}
    	   zrange {0 40e-9}
    	 }
    
    	 Specify Oxs_RectangularMesh:mesh {
    	   cellsize {10e-9 10e-9 10e-9}
    	   region Oxs_RectangularRegion:World
    	 }
    	-----------------------------------------------
    	1.2a0  OLD  1.2a0  OLD  1.2a0  OLD  1.2a0  OLD
    	-----------------------------------------------
    is changed in the 1.2a1 release to:
    	-----------------------------------------------
    	 NEW  1.2a1  NEW  1.2a1  NEW  1.2a1  NEW  1.2a1
    	-----------------------------------------------
    	 Specify Oxs_SectionAtlas:atlas {
    	    world { Oxs_RectangularSection {
    	      xrange {0 310e-9}
    	      yrange {0 310e-9}
    	      zrange {0 40e-9}
    	    }   }
    	 }
    
    	 Specify Oxs_RectangularMesh:mesh {
    	   cellsize {10e-9 10e-9 10e-9}
    	   atlas Oxs_SectionAtlas:atlas
    	 }
    	-----------------------------------------------
    	1.2a1  NEW  1.2a1  NEW  1.2a1  NEW  1.2a1  NEW
    	-----------------------------------------------
    The immediate benefits of the introduction of the Oxs_Atlas class are new atlas-based scalar and vector field initializers. See the User's guide for details.

  2. Several of 1.2a0 the Oxs_Energy terms required an Oxs_Mesh reference in their Specify blocks: Oxs_SimpleDemag, Oxs_Demag, Oxs_Exchange6Ngbr. This is no longer true. The only 1.2a1 Specify block that requires (or allows) a mesh reference is the Oxs_StandardDriver block.

  3. The 1.2a0 Oxs_Exchange6Ngbr class has been renamed Oxs_UniformExchange in 1.2a1. There is now a new Oxs_Exchange6Ngbr class in 1.2a1 that has a completely different Specify block that supports spatially varying exchange coefficient A.

  4. The units on the dm/dt stopping criterion in the Oxs_StandardDriver Specify block have been changed from radians/second to degrees/nanosecond.


MIF Changes: OOMMF 1.2a2 to 1.2a3
Back to OOMMF 1.2 software page or OOMMF project at NIST


The National Institute of Standards and Technology (NIST) is an agency of the U.S. Commerce Department.

Privacy policy / security notice / accessibility statement / Disclaimer / Freedom of Information Act (FOIA) /
No Fear Act Policy / ExpectMore.gov (performance of federal programs) / NIST Information Quality Standards /
Environmental Policy Statement

Date created: January 23, 2001 | Last updated: April 27, 2011    Contact: Webmaster