Container

Images for DAMASK containers are available on Docker Hub. Using containers requires to install Podman (Linux only) or Docker (Linux, MacOS, and Windows).

The following instructions assume that Docker is used on the command line. Since invocation of the DAMASK commands differs slightly when executing a program in a container, the required commands are also given here.

Grid Solver

The following command installs a container containing the grid solver:

docker pull eisenforschung/damask-grid:latest

The following commands execute DAMASK_grid with the given arguments in a container that has access to the current working directory. As usual, material.yaml needs to be present in the current working directory.

Unix-like operating systems

docker run --rm -ti -v $(pwd):/wd eisenforschung/damask-grid:latest \
             --env OMP_NUM_THREADS={n_threads} --load {load}.yaml --geom {geom}.vti

Windows PowerShell

docker run --rm -ti -v ${PWD}:/wd eisenforschung/damask-grid:latest `
           --env OMP_NUM_THREADS={n_threads} --load {load}.yaml --geom {geom}.vti

Mesh Solver

The following command installs a container containing the mesh solver:

docker pull eisenforschung/damask-mesh:latest

The following commands execute DAMASK_mesh with the given arguments in a container that has access to the current working directory. As usual, material.yaml needs to be present in the current working directory.

Unix-like operating systems

docker run --rm -ti -v $(pwd):/wd eisenforschung/damask-mesh:latest \
             --env OMP_NUM_THREADS={n_threads} --load {load}.load --geom {geom}.msh

Windows PowerShell

docker run --rm -ti -v ${PWD}:/wd eisenforschung/damask-mesh:latest `
           --env OMP_NUM_THREADS={n_threads} --load {load}.load --geom {geom}.msh

Processing Tools

The processing tools can be used within Ipython or JupyterLab.

IPython

The following command installs a container that provides the processing tools in Ipython:

docker pull eisenforschung/python-damask:latest

The following commands starts an interactive IPython shell with imported DAMASK processing library in a container that has access to the current working directory.

docker run --rm -ti -v ${PWD}:/wd eisenforschung/python-damask:latest

JupyterLab

The following command installs a container that provides the processing tools in JupyterLab:

docker pull eisenforschung/jupyter-damask:latest

The following command starts a JupyterLab instance with imported DAMASK processing library in a container that has access to the current working directory.

docker run --rm -ti -v ${PWD}:/wd -p 8888:8888 eisenforschung/jupyter-damask:latest