MaMMoS documentation#

About#

MaMMoS provides software suite for magnetic multiscale modeling. It consists of several software components. The following table provides a short overview and contains links to example and API reference for the individual packages. The binder badges allow running the examples for the individual packages interactively in the cloud.

To conveniently download all example notebooks use the mammos-fetch-examples script, which is installed as part of the mammos package (further details).

Installation#

The MaMMoS software suite consists of a collection of packages for different steps of the simulation workflows. The metapackage mammos can be used to install a consistent set of sub-packages.

Requirements: pixi (https://pixi.sh/)

Pixi will install Python and mammos.

To conveniently work with the notebook tutorials we install jupyterlab. (packaging needs to be pinned due to a limitation of pixi/PyPI.):

Some examples also require esys-escript. On linux we can install it from conda-forge. On Mac or Windows refer to the esys-escript installation instructions:

  • Linux:

    pixi init
    pixi add python jupyterlab "packaging<25" "pandas<2.3" esys-escript
    pixi add mammos --pypi
    
  • Mac/Windows:

    pixi init
    pixi add python jupyterlab "packaging<25" "pandas<2.3"
    pixi add mammos --pypi
    

Finally start a shell where the installed packages are available:

pixi shell

Requirements: conda (https://conda-forge.org/download/)

Use conda in combination with pip to get packages from conda-forge and PyPI.

To conveniently work with the notebook tutorials we install jupyterlab. (packaging needs to be pinned due to a dependency issue in mammos-entity.)

Some examples also require esys-escript. On linux we can install it from conda-forge. On Mac or Windows refer to the esys-escript installation instructions.

conda create -n mammos-environment python pip jupyterlab "packaging<25" "pandas<2.3" esys-escript
conda activate mammos-environment
pip install mammos

Requirements: python>=3.11 and pip

When using pip we recommend creating a virtual environment to isolate the MaMMoS installation.

First, create a new virtual environment. Here, we choose the name mammos-venv.

python3 -m venv mammos-venv

To activate it, run

  • on MacOS/Linux

    . mammos-venv/bin/activate
    pip install mammos
    
  • on Windows

    mammos-venv/bin/activate.sh
    

Finally install mammos from PyPI:

pip install mammos

Some examples also require esys-escript, which must be installed separately. Please refer to the documentation of esys-escript for installation instructions.

Acknowledgement#

This software has been supported by the European Union’s Horizon Europe research and innovation programme under grant agreement No 101135546 MaMMoS.