  Computer simulations are used widely across the engineering and science
disciplines, including in the research and development of magnetic devices
using computational micromagnetics. In this work, we identify and review
different approaches to configuring simulation runs: (i) the re-compilation of
source code, (ii) the use of configuration files, (iii) the graphical user
interface, and (iv) embedding the simulation specification in an existing
programming language to express the computational problem. We identify the
advantages and disadvantages of different approaches and discuss their
implications on effectiveness and reproducibility of computational studies and
results. Following on from this, we design and describe a domain specific
language for micromagnetics that is embedded in the Python language, and allows
users to define the micromagnetic simulations they want to carry out in a
flexible way. We have implemented this micromagnetic simulation description
language together with a computational backend that executes the simulation
task using the Object Oriented MicroMagnetic Framework (OOMMF). We illustrate
the use of this Python interface for OOMMF by solving the micromagnetic
standard problem 4. All the code is publicly available and is open source.
