Submission Guidelines muMag Standard Problem #1

Problem Specification

  1. The problem is to calculate complete hysteresis loops for a 1x2 micron permalloy rectangle (20 nm thick), where the applied field is stepped from +50 mT (+500 Oe) to -50 mT (-500 Oe), and back to +50 mT (+500 Oe). You may choose any cell size and geometry, and may step the field as desired, although a remanent (0 field) state is required. This is to be done twice, once with the applied field parallel to the long (y-) axis of the rectangle, and once with the applied field parallel to the short (x-) axis. Due to the presence of meta-stable symmetric states, the applied fields should be rotated 1 degree counterclockwise off the nominal axis, if possible. The initial state at +50 mT is not specified, but should resemble a saturated state. If you want, you may begin at a higher field and step down to +50 mT. Our reports will be restricted to the data between +50 mT and -50 mT, however.
  2. The material and geometry parameters can be found at
  3. The coordinate system to be used is:
                    --------  -
                    |      |  ^
                    |<-1-->|  |
                    |micron|  |
                    |      |  |
                    |      |  |
                    |      |  2 microns
                    |      |  |
                    |      |  |
                    |      |  |
                    |      |  |
                    ----------------> x-axis
    and z-axis pointing out of the plane (right hand system). The entire sample lies in the first octant, i.e., 0<=x<=1, 0<=y<=2, and 0<=z<=0.020 (units are microns).
  4. You agree to allow us to report/publish your submission in conjunction with other submissions as we deem fit. We will take reasonable steps to keep submissions anonymous. You will be assigned a submission code that will be used to tag your results in all reports. This will make it easy for you to see how your results compare with others, and will be a bookkeeping aid for us. To request a submission code send email to


    Subject: Submission code request

  5. Updates, corrections and additions to submissions will be accepted. Email to for more information.

Report Specification

Your report should consist of the following 4 types of data files. Each filename is prefixed by your 5 digit submission code, indicated below by XXXXX:
  1. XXXXXdsc.txt
    Description of your solution technique, details below in Appendix A.
  2. XXXXXhyx.dat, XXXXXhyy.dat
    m vs. H data for field applied approx. along the x (short), resp. y (long) axis, format defined in Appendix B, below.
  3. XXXXXrx1.dat, XXXXXrx2.dat, XXXXXry1.dat, XXXXXry2.dat
    Raw ASCII data; Magnetization m as a function of position at remanence. See Appendix C. For 3D grids, this should be a slice through the center of the rectangle, parallel to the x-y plane. The rx files are for remanent states resulting from application of the field parallel to the short (x) axis, with rx1 coming down from +50 mT, and rx2 coming up from -50 mT. The second file, rx2, is optional, and should only be included if you feel it shows significant difference from rx1. The ry files are for the corresponding remanent states resulting from field application along the long (y) axis.
    Vector (arrow or cone) plots of magnetization at remanent (0 field) state, as a PostScript file, corresponding to the states depicted by the raw data files rx1, rx2, ry1 and ry2, respectively. The submission of these vector plots is encouraged but optional, because some have expressed concern that idiosyncrasies of arrow style may reveal the identity of the submitter. If you prefer, you may submit raw ASCII data in the same format as for the XXXXXrx1.dat file, and we will produce a standardized PostScript vector plot using all the data in this file. File names in this case should be XXXXXvx1.dat, etc. Alternately we will use the information from (for example) the XXXXXrx1.dat file directly, but for dense meshes the arrows might not be very distinguishable.
ALL magnetizations should be reported as "reduced magnetizations," i.e., M/M_s. PostScript file type 4 submissions (XXXXXv??.ps) may take any form you desire.

The above files should be collected into either a gzipped-tar or a zip archive, with your submission code as the base name (e.g., Transmit your results either by email (after uuencode'ing, mpack'ing or adding as an attachment - please, no binhex) to


Subject: XXXXX results-email

where XXXXX is your submission code. To protect anonymity, be sure the only identifying notation in these files is your submission code.

APPENDIX A: Technique solution description file format

Copy the following form, filled out as completely as possible; We realized that too much detail may compromise anonymity, so please use your own judgment in this regard. The term "x-loop" (resp. "y-loop") below refers to the complete hysteresis loop (from +50 mT to -50 mT back to +50 mT) with the field applied approximately parallel to the "x" (short) (resp. "y" (long)) sample axis.
Submission code:
Units (SI or Gaussian):
Dimensionality of magnetizations (2D or 3D):
Dimensionality of grid (2D or 3D):
Average cell dimensions (length x width x height, in nm):
Total number of cells:
Initial state (uniform/random/other):
Number of field states calculated (inc. +/-50 mT) for x-loop/y-loop:
Canting angle of applied field from nominal axis (degrees):
Demag calculation technique:
Solver method (e.g., LLG/Runge-Kutta, Energy min./Conj. grad.):
Solver stopping criteria:
Hardware: processor type/speed (MHz):
          main memory size (MB):
          L1/L2 cache size (KB/KB):
Execution time (minutes) x-loop/y-loop:
Remanent magnetization (m_x,m_y,m_z) (reduced units), x-loop:
Coercive field H_c (mT or Oe), x-loop/y-loop:
Special conditions:
Other comments:

APPENDIX B: Hysteresis data file format
(XXXXXhyx.dat & XXXXXhyy.dat)

The file is to consist of lines of ASCII text describing the applied field and the resulting reduced magnetization. Each line is to contain 7 fields, separated by spaces or tabs, as follows:
     Step_no   H_x   H_y   H_z   m_x   m_y   m_z
You may provide as many sig. figs. as you desire. 2D (and possibly other) models will have m_z identically 0.0. File hyx.dat should have the H_y column close to 0.0 (exactly 0.0 if the applied field is not canted with respect to the coordinate axis), whereas the hyy.dat file should have the H_x column close to 0.0. At the present time the H_z column should be identically 0.

In addition, comment lines are allowed. These are denoted by a # in the first column. The first line should be a comment line containing the file name (with your embedded submission code), and the second should be a comment line indicating your choice of units for the applied field. Valid units include: kA/m, A/m, T, mT, kOe, Oe, G, kG.

A (short) sample hyy.dat file follows:

# File: aa96ahyy
# Units: T
# Sample hyy.dat file, 2-Feb-96.  The first 8 lines illustrate the
# use of comments.  The first two comment lines are required.  The
# Unit field should be one of kA/m, A/m, T, mT, kOe, Oe, G, or kG.
# Note: This is an entirely *fictional* example.
# Step  B_x(T)     B_y(T)   B_z(T)  m_x       m_y       m_z
   1     0          .0500    0.0    0.000     0.986     0.000
   2     0          .0100    0.0    0.000     0.953     0.000
   3     0          .0050    0.0    0.100     0.905     0.000
# Notice that the field steps don't have to be regular
   4     0            0      0.0  0.000     0.623     0.000
   5     0         -.0500      0.0  0.000    -0.972     0.000
   6     0          0     0.0    0.003    -0.605      0.000
   7     0          .0500    0.0    0.0         0.975  0
# It is not required for the columns to line up, as long as
# there is at least 1 space character between successive columns.

APPENDIX C: Magnetization data file (XXXXXr??.dat) format

The XXXXXr??.dat (remanent magnetization data) files will be used to produce greyscale magnetization images, e.g., m_x, m_y, m_z, divergence of m, etc.. These pictures are to be directly comparable (unlike the PostScript vector plots), so we will sample this data onto a common grid. The data file should consist of 6-tuples of reals, describing the sample-node position (x, y and z) and the 3 reduced magnetization components (m_x, m_y, and m_z). The position should be measured in microns, using the coordinate system described previously. Thus, the x-components of the position should range between 0.0 and 1.0, while the y position components should range between 0.0 and 2.0. The z components are ignored, but should be 0.010; in particular, if your model uses a 3D mesh, please submit only one slice: through the middle of the specimen and parallel to the xy-plane.

At some time in the future, submissions will be accepted in HDF (Hierarchical Data Format), but at the present time we are requesting ascii files, with one 6-tuple per line, entries separated by space characters, like this:

# File: aa96arx1
# x(microns)  y(microns)  z(microns)   m_x    m_y    m_z
  0.005       0.005       0.010       -0.3    0.95    0
  0.015       0.005       0.010       -0.27   0.96    0
  0.025       0.005       0.010       -0.27   0.96    0
   :           :          :              :     :      :
   :           :          :              :     :      :
  0.995       0.005       0.010          0    1.0     0
  0.005       0.015       0.010          0    1.0     0
  0.015       0.015       0.010          0    1.0     0
  0.025       0.015       0.010          0    1.0     0
   :           :          :              :     :      :
   :           :          :              :     :      :
  0.995       1.995       0.010        0.3    0.91    0
Lines beginning with # are taken as comments and are ignored. Please include the file name (with embedded submission code) as a comment on the first line.

Your data 6-tuples may be in any order and do *not* have to lie on a regular grid. We will sample your data onto a 100x200 grid (the actual sample point coordinates are those used in the preceding data file example) by using the magnetization at the closest point (i.e., a 1-point fit). For example, to fill in a value for location (x,y)=(0.025,0.015), we will scan through your data and find the (x,y) coordinate closest to (0.025,0.015), and just use the associated (m_x,m_y,m_z). If you want a more sophisticated interpolation scheme, you are free to interpolate the data yourself and submit XXXXXr??.dat files with exactly the sample points in the above example.

You may peruse the first standard problem submission reports, or return to the
muMag Site Directory.

Please direct communications to:
(Michael J. Donahue, 19-Nov-96, updated 06-OCT-2000 by rdm)