Skip to content

Introduction

MICRESS binary files store the time evolution of microstructures during a simulation. Each file contains a time series of three-dimensional fields, such as concentrations, phase fractions, or order parameters.

In MicPy, MICRESS binary files are read using the read() function from the micpy.bin module.

Reading an Entire File

To load all time steps from a MICRESS binary file, call read() with just the file name:

from micpy.bin import read

series = read("A001_Delta_Gamma.conc1")

This reads the complete file into a Series object — a 4D NumPy array containing all stored time steps.

Reading a Single Time Step

To read one specific time step, pass its zero-based index to read():

field = read("A001_Delta_Gamma.conc1", 10)

This returns a Field object — a 3D NumPy array of shape (z, y, x).

Reading Selected Time Steps

To load a subset of time steps, pass a list of indices:

series = read("A001_Delta_Gamma.conc1", [0, 5, 10])

The result is a Series object containing only the requested fields.

Working with the Data

Both Series and Field objects are subclasses of NumPy arrays, so you can use standard NumPy operations directly:

series.mean()
field.mean()

In addition, MicPy objects carry MICRESS-specific metadata, such as:

  • simulation time
  • grid spacing

Visualizing a Field

MicPy Field objects include a convenience plotting function:

fig, ax, cbar = field.plot()

This returns standard Matplotlib objects for further customization. For more details, see the Visualization section.

Next Steps

This section introduces the basic ways to read MICRESS binary files with MicPy. For more advanced workflows, continue with the remaining sections of the user guide.