Simulation of phase transformation and micro-structure evolution in metallic systems.
265
| Tag | Version | Pull |
|---|---|---|
| latest | latest version | docker pull matcalctuw/matcalc:latest |
| 6.10 | stable 6.10 version | docker pull matcalctuw/matcalc:6.10 |
| 6.04 | stable 6.04 version | docker pull matcalctuw/matcalc:6.04 |
| 6.05.0015 | developer version | docker pull matcalctuw/matcalc:6.05.0015 |
MatCalc is a software package for computer simulation of phase transformation and microstructure evolution in metallic systems. The project of the software MatCalc was started in 1993 by Ernst Kozeschnik in the University of Graz. Development of MatCalc software is an ongoing and never ending project, which continues in the Vienna University of Technology. MatCalc is aimed at supporting you in the fields of materials development, simulation and optimization of materials processing and analysis and interpretation of metallurgical problems. MatCalc is already successfully utilized in teaching and research and it is used likewise by academia, research organizations and industry.
Since 2015, MatCalc Engineering GmbH is the Vienna University of Technology exclusive license agent for the MatCalc software package. It also handles all customer relations, user support, as well as training and workshop organization.
Features:
Typical applications:
Platforms and interfaces:
docker run --rm -it \
--volume /etc/machine-id:/etc/machine-id \
matcalctuw/matcalc:6.10
docker run --rm -it \
--volume /etc/machine-id:/etc/machine-id \
matcalctuw/matcalc:6.10 \
/opt/matcalc/bin/python3.10 -c "import matcalc; matcalc.get().init()"
docker run --rm -it \
--volume /etc/machine-id:/etc/machine-id \
--volume $HOME/.config/MatCalc:/root/.config/MatCalc \
--volume $HOME/Documents/MatCalcUserData:/root/Documents/MatCalcUserData \
--env DISPLAY \
--volume /tmp/.X11-unix:/tmp/.X11-unix \
--volume $HOME/.Xauthority:/root/.Xauthority \
matcalctuw/matcalc:6.10 /opt/matcalc/mcg
To keep your settings mount two folders into the container:
docker run --rm -it \
--volume /etc/machine-id:/etc/machine-id \
--volume $HOME/.config/MatCalc:/root/.config/MatCalc \
--volume $HOME/Documents/MatCalcUserData:/root/Documents/MatCalcUserData \
matcalctuw/matcalc:6.10
Make sure to activate the license within the container and that the machine-id and network subnet does not change inside the container for the activation to stay valid.
To get your hardware-id which is needed to create a license for you run following:
docker run --rm -it \
--volume /etc/machine-id:/etc/machine-id \
matcalctuw/matcalc:6.10 \
/opt/matcalc/mcc --id
docker build -t matcalc - < Dockerfile
You can choose a different distribution than the default of Ubuntu 22.04:
Make sure that:
docker build -t matcalc --build-arg="DISTRIBUTION=centos:7" - < Dockerfile
You can choose a different MatCalc Version than the default of MatCalc 6.04.1004:
docker build -t matcalc \
--build-arg="MATCALC_VERSION=6.05.0015" \
--build-arg="MATCALC_DATE=2023-09-09" \
- < Dockerfile
ARG DISTRIBUTION=ubuntu:22.04
FROM ubuntu:22.04 AS install
RUN export DEBIAN_FRONTEND=noninteractive \
&& apt update \
&& apt install -y \
dbus \
fontconfig \
libharfbuzz0b \
libsm6 \
libx11-xcb1 \
libxcb1 \
libxcb-cursor0 \
libxcb-keysyms1 \
libxcb-icccm4 \
libxcb-randr0 \
libxcb-shape0 \
libxcb-sync1 \
libxcb-xfixes0 \
libxkbcommon0 \
libxkbcommon-x11-0 \
xz-utils \
&& rm -rf /var/lib/apt/lists/*
ARG MATCALC_VERSION=6.10.1.002
ARG MATCALC_DATE=2025-09-29
ADD https://download.matcalc.at/installer/$MATCALC_VERSION/matcalc-$MATCALC_VERSION-$MATCALC_DATE-linux_x86_64.tar.gz /tmp
RUN cd /tmp \
&& tar xf matcalc-*.tar.gz \
&& ./matcalc-*/matcalc-* \
--platform minimal \
--accept-licenses \
--default-answer \
--confirm-command install at.ac.tuwien.matcalc \
--root /tmp/matcalc
FROM $DISTRIBUTION
COPY --from=install /tmp/matcalc /opt/matcalc
ARG LOCALE=en_US.UTF-8
ARG LANGUAGE=en_US:en
RUN echo "\nexport PATH=/opt/matcalc:$PATH" | tee -a /etc/bash.bashrc /etc/profile > /dev/null \
&& if [ -f /usr/bin/apt ]; then \
export DEBIAN_FRONTEND=noninteractive \
&& apt update -y \
&& apt install -yq \
ca-certificates \
fontconfig \
locales \
&& rm -rf /var/lib/apt/lists/* \
&& sed -i "/${LOCALE}/s/^# //g" /etc/locale.gen \
&& locale-gen \
; elif [ -f /usr/bin/yum ]; then \
yum install -y fontconfig \
&& yum clean all \
&& rm -rf /var/cache/yum \
; elif [ -f /usr/bin/dnf ]; then \
yum install -y fontconfig \
&& yum clean all \
&& rm -rf /var/cache/dnf \
; fi
ENV LANG=${LOCALE}
ENV LANGUAGE=${LANGUAGE}
ENV LC_ALL=${LOCALE}
CMD [ "/opt/matcalc/mcc" ]
ARG DISTRIBUTION=ubuntu:22.04
FROM ubuntu:22.04 AS install
RUN export DEBIAN_FRONTEND=noninteractive \
&& apt update \
&& apt install -y \
dbus \
fontconfig \
libharfbuzz0b \
libxcb1 \
libxkbcommon0 \
xz-utils \
&& rm -rf /var/lib/apt/lists/*
ARG MATCALC_VERSION=6.04.1004
ARG MATCALC_DATE=2023-06-28
ADD https://www.matcalc.at/images/stories/Download/MatCalc/Linux/MatCalc%2064-bit%20Linux%20$MATCALC_VERSION%20$MATCALC_DATE.tar.xz /tmp
RUN echo '\n\
function Controller() {\n\
installer.autoRejectMessageBoxes;\n\
installer.setMessageBoxAutomaticAnswer("OverwriteTargetDirectory", QMessageBox.Yes);\n\
installer.setMessageBoxAutomaticAnswer("stopProcessesForUpdates", QMessageBox.Ignore);\n\
}\n\
Controller.prototype.IntroductionPageCallback = function() { gui.clickButton( buttons.NextButton ); }\n\
Controller.prototype.LicenseAgreementPageCallback = function() {\n\
var widget = gui.currentPageWidget();\n\
if (widget != null) widget.AcceptLicenseRadioButton.click();\n\
gui.clickButton( buttons.NextButton );\n\
}\n\
Controller.prototype.StartMenuDirectoryPageCallback =\n\
Controller.prototype.TargetDirectoryPageCallback = function() { gui.clickButton( buttons.NextButton ); }\n\
Controller.prototype.ComponentSelectionPageCallback = function() {\n\
var widget = gui.currentPageWidget();\n\
if (widget != null) widget.selectDefault();\n\
gui.clickButton( buttons.NextButton );\n\
}\n\
Controller.prototype.ReadyForInstallationPageCallback = \n\
Controller.prototype.PerformInstallationPageCallback = function() { gui.clickButton( buttons.CommitButton ); }\n\
Controller.prototype.FinishedPageCallback = function() {\n\
var widget = gui.currentPageWidget();\n\
if (widget != null) widget.RunItCheckBox.click();\n\
gui.clickButton( buttons.FinishButton );\n\
}\n'\
> /tmp/silent.js \
&& cd /tmp \
&& tar xf MatCalc*.tar.xz \
&& ./Install* -platform minimal --script silent.js TargetDir=/tmp/matcalc
FROM $DISTRIBUTION
COPY --from=install /tmp/matcalc /opt/matcalc
RUN echo "\nexport PATH=/opt/matcalc:$PATH" | tee -a /etc/bash.bashrc /etc/profile > /dev/null \
&& if [ -f /usr/bin/apt ]; then \
apt update -y \
&& apt install -y \
ca-certificates \
fontconfig \
&& rm -rf /var/lib/apt/lists/* \
; elif [ -f /usr/bin/yum ]; then \
yum install -y fontconfig \
&& yum clean all \
&& rm -rf /var/cache/yum \
; elif [ -f /usr/bin/dnf ]; then \
dnf install -y fontconfig \
&& dnf clean all \
&& rm -rf /var/cache/dnf \
; fi
CMD /opt/matcalc/mcc
Content type
Image
Digest
sha256:8d530b129…
Size
382.5 MB
Last updated
5 months ago
docker pull matcalctuw/matcalc