summaryrefslogtreecommitdiff
path: root/macros/latex/contrib
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2024-12-12 03:03:28 +0000
committerNorbert Preining <norbert@preining.info>2024-12-12 03:03:28 +0000
commitfe5c519618513f27a0f339adddc3876f62aacbdf (patch)
tree3642fc1665e46219c47a28d5b77dbe55c3a7253a /macros/latex/contrib
parentcdc6e712c35005727bb3f617f6ee88ddfdc07123 (diff)
CTAN sync 202412120303
Diffstat (limited to 'macros/latex/contrib')
-rw-r--r--macros/latex/contrib/cora-macs/README.md65
-rw-r--r--macros/latex/contrib/cora-macs/cora-macs-doc.pdfbin183263 -> 359564 bytes
-rw-r--r--macros/latex/contrib/cora-macs/cora-macs-doc.tex466
-rw-r--r--macros/latex/contrib/cora-macs/cora-macs.sty211
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-1.pdfbin0 -> 25137 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-2.pdfbin0 -> 25141 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-3.pdfbin0 -> 25138 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-4.pdfbin0 -> 25094 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-1.pdfbin0 -> 20485 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-2.pdfbin0 -> 20491 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-3.pdfbin0 -> 25017 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-4.pdfbin0 -> 25040 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-5.pdfbin0 -> 25021 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-1.pdfbin0 -> 12240 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-2.pdfbin0 -> 12271 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-3.pdfbin0 -> 12279 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-4.pdfbin0 -> 12231 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/mymatlabfigure_animated.tikz544
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated.tikz34
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated_11.tikz9
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated_12.tikz505
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated_13.tikz11
-rw-r--r--macros/latex/contrib/cora-macs/examples/figures/neural-network_animated.tikz21
-rw-r--r--macros/latex/contrib/cora-macs/examples/presentation.pdfbin0 -> 180236 bytes
-rw-r--r--macros/latex/contrib/cora-macs/examples/presentation.tex78
-rw-r--r--macros/latex/contrib/cora-macs/figures/coraLogo.eps343
-rw-r--r--macros/latex/contrib/cora-macs/figures/externalize/figures/mymatlabfigure.pdfbin0 -> 24125 bytes
-rw-r--r--macros/latex/contrib/cora-macs/figures/externalize/figures/mymatlabgroupfigure.pdfbin0 -> 24159 bytes
-rw-r--r--macros/latex/contrib/cora-macs/figures/externalize/figures/mytikzfigure.pdfbin0 -> 1551 bytes
-rw-r--r--macros/latex/contrib/cora-macs/figures/externalize/figures/neural-network.pdfbin0 -> 10775 bytes
-rw-r--r--macros/latex/contrib/cora-macs/figures/mymatlabfigure.tikz544
-rw-r--r--macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure.tikz34
-rw-r--r--macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure_11.tikz8
-rw-r--r--macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure_12.tikz504
-rw-r--r--macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure_13.tikz10
-rw-r--r--macros/latex/contrib/cora-macs/figures/mytikzfigure.tikz5
-rw-r--r--macros/latex/contrib/cora-macs/figures/neural-network.tikz7
-rw-r--r--macros/latex/contrib/gratzer-color-scheme/Gratzer-Color-Scheme.sty55
-rw-r--r--macros/latex/contrib/gratzer-color-scheme/README.txt11
-rw-r--r--macros/latex/contrib/gratzer-color-scheme/example.pdfbin0 -> 79281 bytes
-rw-r--r--macros/latex/contrib/gratzer-color-scheme/example.tex51
41 files changed, 3389 insertions, 127 deletions
diff --git a/macros/latex/contrib/cora-macs/README.md b/macros/latex/contrib/cora-macs/README.md
index 7cf36ee8af..33498c7df4 100644
--- a/macros/latex/contrib/cora-macs/README.md
+++ b/macros/latex/contrib/cora-macs/README.md
@@ -2,23 +2,11 @@
## Overview
-The `cora-macs` package is a LaTeX package designed to assist in the representation and manipulation of continuous sets, operations, neural networks, and color schemes tailored for use in the context of cyber-physical systems. It provides a comprehensive set of macros that streamline the process of documenting complex mathematical objects and operations.
+The `cora-macs` package provides specialized LaTeX tools for researchers in cyber-physical systems.
+It offers comprehensive commands for mathematical set notation, operations, and other definitions.
+Designed to accompany the CORA toolbox, the package also facilitates beautiful visualizations through TikZ figures exported from Matlab and a custom color palette.
-## Authors
-
-- **Tobias Ladner**
-- **Lukas Koller**
-
-TUM - Cyber-Physical Systems Group
-
-Visit our website: [TUM CPS Group](https://www.ce.cit.tum.de/cps)
-
-## Features
-
-- **Continuous Sets**: Macros for defining and working with intervals, zonotopes, polynomial zonotopes, and other set-based representations.
-- **Operations**: A collection of macros for common mathematical operations used in cyber-physical systems analysis.
-- **Neural Networks**: Notations for layers, activations, set propagation, and more.
-- **Color Schemes**: Predefined color palettes including TUM-specific colors and custom `cora-macs` colors.
+CORA: https://cora.in.tum.de
## Installation
@@ -30,55 +18,26 @@ To use the `cora-macs` package in your LaTeX documents, follow these steps:
```latex
\usepackage[options]{cora-macs}
```
- Replace `[options]` with the desired options (e.g., `sets`, `operations`, `nn`, `colors`, `tumcolors`).
-
-## Usage
-
-### Basic Example
-
-Here’s a simple example of how to use some of the features provided by the `cora-macs` package:
-
-```latex
-\documentclass{article}
-\usepackage[sets, operations]{cora-macs}
-
-\begin{document}
-
-% Define a set
-\contSet{X} = \shortContSet{a}{b}{X}
-
-% Use an operation
-\diag{A} = \operator{diag}{A}
-
-\end{document}
-```
+
### Options
-- **`sets`**: Enables macros for working with continuous sets.
-- **`operations`**: Enables macros for common operations in mathematical analysis.
-- **`nn`**: Enables macros related to neural networks.
-- **`colors`**: Defines a set of colors specific to the `cora-macs` package.
-- **`tumcolors`**: Defines TUM-specific colors.
+- `sets`: Enables macros for working with continuous sets.
+- `operations`: Enables macros for common operations in set-based computing.
+- `nn`: Enables macros related to neural networks.
+- `colors`: Defines a set of colors specific to the `cora-macs` package.
+- `tikz`: Include your Matlab figures in LaTeX for beautiful visualizations.
You can combine these options as needed when including the package.
## Documentation
-For detailed documentation, including a complete list of commands and options, please refer to the [documentation](./documentation.pdf).
+For detailed documentation, including a complete list of commands and options, please refer to the [documentation](./cora-macs-doc.pdf).
## License
This project is licensed under the MIT License - see the [LICENSE](./LICENSE) file for details.
-## Acknowledgments
-
-This package was developed as part of the work done by the Cyber-Physical Systems Group at TUM. We would like to thank the contributors and users who provided valuable feedback.
-
-## Contributing
-
-If you wish to contribute to the `cora-macs` package, feel free to submit a pull request or open an issue on the repository.
-
## Contact
For questions, issues, or suggestions, please contact:
@@ -88,4 +47,4 @@ For questions, issues, or suggestions, please contact:
---
-Developed at TUM - Cyber-Physical Systems Group \ No newline at end of file
+Developed at TUM - [Cyber-Physical Systems Group](https://www.ce.cit.tum.de/cps) \ No newline at end of file
diff --git a/macros/latex/contrib/cora-macs/cora-macs-doc.pdf b/macros/latex/contrib/cora-macs/cora-macs-doc.pdf
index 4da722f6c4..0bb8968db0 100644
--- a/macros/latex/contrib/cora-macs/cora-macs-doc.pdf
+++ b/macros/latex/contrib/cora-macs/cora-macs-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/cora-macs-doc.tex b/macros/latex/contrib/cora-macs/cora-macs-doc.tex
index 825fe50836..79e33e5844 100644
--- a/macros/latex/contrib/cora-macs/cora-macs-doc.tex
+++ b/macros/latex/contrib/cora-macs/cora-macs-doc.tex
@@ -1,119 +1,487 @@
\documentclass{article}
+
+
+\usepackage[a4paper,landscape]{geometry}
+
+% preamble
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{hyperref}
-\usepackage[sets,operations,nn,colors]{cora-macs}
+\usepackage[sets,operations,nn,colors,tikz]{cora-macs}
\title{The \texttt{cora-macs} Package}
\author{Tobias Ladner, Lukas Koller\\
TUM - Cyber-Physical Systems Group\\
\texttt{\small tobias.ladner@tum.de, lukas.koller@tum.de}}
-\date{2024-10-25}
+\date{2024-12-11} % Should match the version on CTAN.
+
+% update quote and verbatim environment for uniform display
+
+\AtBeginEnvironment{verbatim}{\begin{quote}\small}
+\AtEndEnvironment{verbatim}{\end{quote} \vspace{\baselineskip}\noindent}
+
+% show color
+\newcommand{\showColor}[1]{{\color{#1}$\blacksquare$}}
+% cleverref
+\usepackage{cleveref}
+\newcommand{\updatecrefname}[2]{\crefname{#1}{#2}{#2}\Crefname{#1}{#2}{#2}}
+\updatecrefname{section}{Sec.}
+\updatecrefname{subsection}{Sec.}
+\updatecrefname{figure}{Fig.}
+\updatecrefname{table}{Tab.}
+
+
+% begin document ---
\begin{document}
+
+% cover page ---
+
\maketitle
-\begin{abstract}
-The \texttt{cora-macs} package provides tools for working with continuous sets, operations, neural networks, and color schemes tailored for use in the context of cyber-physical systems. This document serves as the official documentation for the package, detailing the available commands and options.
-\end{abstract}
+% \vspace{1cm}
+\begin{center}
+ \includegraphics[width=0.5\columnwidth]{./figures/coraLogo}
+\end{center}
+\vspace{1cm}
+
+\begin{center}
+ \begin{minipage}{0.5\textwidth}
+ \begin{abstract}
+ The \texttt{cora-macs} package provides specialized \LaTeX\ tools for researchers in cyber-physical systems.
+ It offers comprehensive commands for mathematical set notation, operations, and other definitions.
+ Designed to accompany the \CORA\ toolbox, the package also facilitates beautiful visualizations through TikZ figures exported from Matlab and a custom color palette.
+ \end{abstract}
+ \end{minipage}
+\end{center}
+\newpage
+
+% table of contents ---
\tableofcontents
+\newpage
+
+% introduction ---
+
\section{Introduction}
-The \texttt{cora-macs} package is designed to assist in the representation and manipulation of various mathematical objects such as sets, intervals, zonotopes, and operations often encountered in cyber-physical systems analysis. It also includes predefined color schemes based on the TUM corporate design and other custom colors.
+The \texttt{cora-macs} package is written to accompany our toolbox \CORA\footnote{\CORA: \url{https://cora.in.tum.de/}} for continuous reachability analysis.
+It is designed to assist with the notation of various set representation and operations often encountered in cyber-physical systems analysis.
+It also includes predefined color schemes and and an option to export your figures from \CORA\ to \LaTeX.
\section{Installation}
To install the \texttt{cora-macs} package, follow these steps:
\begin{enumerate}
- \item Place the \texttt{cora.sty} file in your working directory or in a directory where LaTeX can find it (e.g., in the local \texttt{texmf} tree).
- \item Include the package in your LaTeX document with the command:
- \begin{verbatim}
- \usepackage{cora}
- \end{verbatim}
+ \item Place the \texttt{cora.sty} file in your working directory or in a directory where \LaTeX\ can find it (e.g., in the local \texttt{texmf} tree).
+ \item Include the package in your \LaTeX\ document preamble with the command:
+ \begin{verbatim}
+\usepackage[options]{cora-macs}
+\end{verbatim}
\end{enumerate}
-
-\section{Package Options}
+\vspace{-\baselineskip}
The \texttt{cora-macs} package provides several options that can be passed when loading the package. These options control the inclusion of different sets of commands.
\begin{itemize}
- \item \texttt{sets}: Includes commands for continuous set notation and operations.
- \item \texttt{operations}: Includes commands for various mathematical operations.
- \item \texttt{nn}: Includes commands for working with neural networks.
- \item \texttt{colors}: Defines a set of colors specific to the \texttt{cora-macs} package.
- \item \texttt{tumcolors}: Defines TUM-specific colors.
+ \item \texttt{sets}: Enables macros for working with continuous sets (\cref{sec:sets}).
+ \item \texttt{operations}: Enables macros for common operations in set-based computing (\cref{sec:operations}).
+ \item \texttt{nn}: Enables macros related to neural networks (\cref{sec:nn}).
+ \item \texttt{colors}: Defines a set of colors specific to the \texttt{cora-macs} package (\cref{sec:colors}).
+ \item \texttt{tikz}: Include your Matlab figures in \LaTeX\ for beautiful visualizations (\cref{sec:tikz}).
\end{itemize}
+\noindent
Example usage:
\begin{verbatim}
-\usepackage[sets, operations]{cora}
+\usepackage[sets, operations]{cora-macs}
\end{verbatim}
+
\section{Commands and Environments}
-\subsection{Sets (\texttt{sets} option)}
+\subsection{Continuous Sets (\texttt{sets} option)} \label{sec:sets}
When the \texttt{sets} option is enabled, the package provides several commands for defining and manipulating continuous sets.
\begin{itemize}
- \item \texttt{\textbackslash contSet\{name\}}: Defines a set in calligraphic font, e.g., $\contSet{A}$.
- \item \texttt{\textbackslash shortContSet[abbr]\{content\}\{set\}}: Defines a short-hand notation for continuous sets with optional abbreviation.
- \item \texttt{\textbackslash defContSet\{elements\}\{conditions\}}: Defines a set using the format $\{x \mid \text{conditions}\}$.
- \item \texttt{\textbackslash defContSetSplit\{elements\}\{conditions\}}: Defines a set with split conditions for better formatting in large equations.
- \item \texttt{\textbackslash shortI\{a\}\{b\}}: Defines a closed interval $[a, b]$.
- \item \texttt{\textbackslash defZ}: Defines a zonotope.
- \item \texttt{\textbackslash defPZ}: Defines a polynomial zonotope.
+ \item \verb|\contSet{name}|: Defines a set in calligraphic font, e.g., $\contSet{S}$.
+ \item \verb|\shortI{a}{b}|: Defines a closed interval $\shortI{a}{b}$. For example, the command \verb|$\contSet{I}=\shortI{1}{2}$| results in $\contSet{I}=\shortI{1}{2}$.
+ \item \verb|\defZ|: States the definition of a zonotope. For example,
+ \begin{verbatim}
+\begin{equation}
+ \contSet{Z}=\shortZ{c}{G}=\defZ
+\end{equation}
+\end{verbatim}
+ \vspace{-2\baselineskip}
+ results in
+ \begin{quote}
+ \begin{equation}
+ \contSet{Z}=\shortZ{c}{G}=\defZ
+ \end{equation}
+ \end{quote}
\end{itemize}
-\subsection{Operations (\texttt{operations} option)}
+Similar commands also exist for other set representations, which are accessible with its respective abbreviation.
+Please use the abbreviation
+\texttt{I} for intervals,
+\texttt{Z} for zonotopes, and
+\texttt{PZ} for polynomial zonotopes.
+
+\subsection{Operations (\texttt{operations} option)} \label{sec:operations}
Enabling the \texttt{operations} option introduces a variety of operations that are useful in mathematical and cyber-physical systems contexts.
\begin{itemize}
- \item \texttt{\textbackslash operator\{name\}\{args\}}: Defines a custom operator with the given name and arguments.
- \item \texttt{\textbackslash opEnclose\{set1\}\{set2\}}: Encapsulates a set within another.
- \item \texttt{\textbackslash opIntervalEnclosure\{interval\}}: Specifies an interval enclosure.
- \item \texttt{\textbackslash opProject\{dimension\}}: Projects a set onto a given dimension.
- \item \texttt{\textbackslash diag\{matrix\}}: Produces the diagonal matrix of the given input.
+ \item \verb|\operator{name}{args}|: Defines a custom operator with the given name and arguments.
+\end{itemize}
+Some operations are already defined within the CORA package for reference. For example,
+\begin{itemize}
+ \item \verb|\opEnclose{S1}{S2}|: Computes the enclosure of two sets.
+ \item \verb|\opIntervalEnclosure{S}|: Specifies an interval enclosure.
+ \item \verb|\opProject{S}|: Projects a set onto a given dimension.
+ \item \verb|\diag{matrix}|: Results the diagonal matrix of the given input.
\end{itemize}
-\subsection{Neural Networks (\texttt{nn} option)}
+The commands ensure that the surrounding parenthesis are large enough to capture the content.
+As this can look weird when used inline within text, one can use the option \texttt{inline} to disable the automatic scaling of the parenthesis.
+For example,
+\begin{verbatim}
+Given two sets $\contSet{S}$ and $\widetilde{\contSet{S}}$,
+the enclosure is computed using $\opEnclose{\contSet{S}}{\widetilde{\contSet{S}}}$.
+As this does not look very nice,
+let us try the \texttt{inline} option instead: $\opEnclose[inline]{\contSet{S}}{\widetilde{\contSet{S}}}$.
+\end{verbatim}
+results in
+\begin{quote}
+ Given two sets $\contSet{S}$ and $\widetilde{\contSet{S}}$,
+ the enclosure is computed using $\opEnclose{\contSet{S}}{\widetilde{\contSet{S}}}$.
+ As this does not look very nice,
+ let us try the \texttt{inline} option instead: $\opEnclose[inline]{\contSet{S}}{\widetilde{\contSet{S}}}$.
+\end{quote}
+
+\subsection{Neural Networks (\texttt{nn} option)} \label{sec:nn}
The \texttt{nn} option introduces commands related to neural networks, including notation for layers, inputs, outputs, and propagations.
\begin{itemize}
- \item \texttt{\textbackslash NN}: Represents the symbol for a neural network $\NN$.
- \item \texttt{\textbackslash nnLayer\{layer\}\{input\}}: Represents a neural network layer with a specified input.
- \item \texttt{\textbackslash nnInput}, \texttt{\textbackslash nnOutput}: Notation for input and output points in a neural network.
+ \item \verb|\NN|: Represents the symbol for a neural network $\NN$.
+ \item \verb|\nnLayer[name]{index}{input}|: Represents a neural network layer with a specified input. Thus \verb|$\nnLayer[LIN]{k}{x}$| results in $\nnLayer[LIN]{k}{x}$. Use \verb|\nnLayerName[name]{index}| to display the layer without explicit input.
\end{itemize}
+One also often wants to state the propagation of an input vector or a set through the network.
+For example,
+\begin{verbatim}
+Given an input $\nnInput\in\R^{\numNeurons_0}$ and a neural network $\NN$,
+the output $\nnOutput=\NN(\nnInput)\in\R^{\numNeurons_\numLayers}$ is computed by:
+\begin{align}
+ \begin{split}
+ \nnHidden_0 &= \nnInput, \\
+ \nnHidden_k &= \nnLayer{k}{\nnHidden_{k-1}}, \quad k\in[\numLayers], \\
+ \nnOutput &= \nnHidden_\numLayers.
+ \end{split}
+\end{align}
+\end{verbatim}
+results in
+\begin{quote}
+ Given an input $\nnInput\in\R^{\numNeurons_0}$ and a neural network $\NN$,
+ the output $\nnOutput=\NN(\nnInput)\in\R^{\numNeurons_\numLayers}$ is computed by:
+ \begin{align}
+ \begin{split}
+ \nnHidden_0 &= \nnInput, \\
+ \nnHidden_k &= \nnLayer{k}{\nnHidden_{k-1}}, \quad k\in[\numLayers], \\
+ \nnOutput &= \nnHidden_\numLayers.
+ \end{split}
+ \end{align}
+\end{quote}
+
+Similarly, the corresponding set commands \verb|\nnInputSet|, \verb|\nnHiddenSet|, and \verb|\nnOutputSet| can be used to describe the set propagation of the input:
-\subsection{Colors (\texttt{colors} and \texttt{tumcolors} options)}
-The \texttt{colors} and \texttt{tumcolors} options define a variety of colors that can be used in your documents.
+\begin{quote}
+ Given an input set $\nnInputSet\subset\R^{\numNeurons_0}$ and a neural network $\NN$,
+ the output $\nnOutputSet=\NN(\nnInputSet)\subset\R^{\numNeurons_\numLayers}$ is computed by:
+ \begin{align}
+ \begin{split}
+ \nnHiddenSet_0 &= \nnInputSet, \\
+ \nnHiddenSet_k &= \nnLayer{k}{\nnHiddenSet_{k-1}}, \quad k\in[\numLayers], \\
+ \nnOutputSet &= \nnHiddenSet_\numLayers.
+ \end{split}
+ \end{align}
+\end{quote}
+
+\subsection{Colors (\texttt{colors} option)} \label{sec:colors}
+The option \texttt{colors} define a variety of colors that can be used in your documents
+and is especially useful in combination with the \texttt{tikz} option (\cref{sec:tikz}).
+For example, these colors are available:
\begin{itemize}
- \item \texttt{\textbackslash definecolor\{CORAcolorReachSet\}}: A predefined color for reachability sets (blue).
- \item \texttt{\textbackslash definecolor\{TUMblue\}}: TUM corporate blue color.
+ \item \texttt{CORAcolor1}-\texttt{CORAcolor7}: Cycles through the default colors of CORA
+ (\showColor{CORAcolor1}\showColor{CORAcolor2}\showColor{CORAcolor3}\showColor{CORAcolor4}\showColor{CORAcolor5}\showColor{CORAcolor6}\showColor{CORAcolor7}).
+ \item \texttt{CORAcolorBlue}, \texttt{CORAcolorRed}, \ldots: Specifies default color values used in CORA
+ (\showColor{CORAcolorBlue}\showColor{CORAcolorRed}\showColor{CORAcolorYellow}\showColor{CORAcolorPurple}\showColor{CORAcolorGreen}\showColor{CORAcolorLightBlue}\showColor{CORAcolorDarkRed}).
+ \item \texttt{CORAcolorReachSet}: A predefined color for reachable sets (\showColor{CORAcolorReachSet}).
+ If two reachable sets are compared in one plot, one case use \texttt{CORAcolorReachSet2} (\showColor{CORAcolorReachSet2}).
+ The initial set and simulations can be plotted with \texttt{CORAcolorInitialSet} (\showColor{CORAcolorInitialSet}) and \texttt{CORAcolorSimulations} (\showColor{CORAcolorSimulations}), respectively.
+ \item \texttt{CORAcolorSafe}: A predefined color for safe sets (\showColor{CORAcolorSafe}).
+ \item \texttt{CORAcolorUnsafe}: A predefined color for unsafe sets (\showColor{CORAcolorUnsafe}).
+ As this color can be intimidating when used at large scale, there is also the \texttt{CORAcolorUnsafeLight} color (\showColor{CORAcolorUnsafeLight}).
+
+ \item \texttt{TUMblue}: TUM corporate blue color (\showColor{TUMblue}).
\end{itemize}
+\subsection{Tikz Figures (\texttt{tikz} option)}\label{sec:tikz}
+
+Visualizations are a crucial part in communicating your scientific findings.
+We found that the best option to do so is using tikz\footnote{Manual: \url{http://mirrors.ctan.org/graphics/pgf/base/doc/pgfmanual.pdf}}\footnote{Example: \url{https://www.overleaf.com/learn/latex/TikZ_package}} figures.
+The \texttt{tikz} option provides you with a wide variety of useful functionality.
+
+\subsubsection{Introduction}
+
+Let us create a small TikZ graphic in a file \texttt{./figures/mytikzfigure.tikz}:
+
+\begin{verbatim}
+\begin{tikzpicture}
+ \draw[CORAcolorBlue] (-6,0) rectangle (-4,2);
+ \draw[CORAcolorRed] (-2,1) circle (1cm);
+ \draw[CORAcolorYellow] (0,0) -- (0,1) -- (1,2) -- (2,2) -- (2,1) -- (1,0) -- (0,0);
+\end{tikzpicture}
+\end{verbatim}
+
+To include the figure in the main document, please use the following commands:
+\begin{verbatim}
+\begin{figure}
+ \centering
+ \includetikz{./figures/mytikzfigure}
+ \caption{My first TikZ figure.}
+ \label{fig:mytikzfigure}
+\end{figure}
+\end{verbatim}
+
+To compile the document, you need to enable shell-escape\footnote{Shell-escape: \url{https://tex.stackexchange.com/questions/598818/how-can-i-enable-shell-escape}}.
+Usually, this is achieved by adding the compiler argument \texttt{--shell-escape} when compiling the document.
+For example, run \texttt{pdflatex --shell-escape main.tex}.
+The code above then results in \cref{fig:mytikzfigure} within your document.
+\begin{figure}[h!]
+ \centering
+ \includetikz{./figures/mytikzfigure}
+ \caption{My first TikZ figure.}
+ \label{fig:mytikzfigure}
+\end{figure}
+
+Shell-escape allows \LaTeX\ to \emph{externalize} the tikz figures,
+i.e., creating a stand-alone PDF file which it can use in future compilations to speed up the compilation.
+The PDF file is located at \texttt{./figures/externalize/figures/mytikzfigure.pdf},
+which you can also use outside of your \LaTeX\ document.
+In case something is wrong with your tikz figures, you can also find a log file within the same directory.
+
+If you do not want to externalize your tikz image, you can use the \texttt{noexport} option:
+\begin{verbatim}
+\begin{figure}
+ \centering
+ \includetikz[noexport]{./figures/mytikzfigure}
+ \caption{My first TikZ figure.}
+\end{figure}
+\end{verbatim}
+
+If you cannot enable shell-escape but have access to the externalized PDF files,
+you can use \verb|\CORAexternalizeusepdf| to directly use the PDF files instead of the TikZ files.
+
+\subsubsection{Exporting Figures from Matlab/\CORA}
+As this package is designed to assist you with our toolbox \CORA\footnote{\CORA: \url{https://cora.in.tum.de/}},
+we also provide an option to export your Matlab figures to \LaTeX\ named \texttt{matlab2tikz}\footnote{matlab2tikz: \url{https://gitlab.lrz.de/cora/matlab2tikz}, fork from: \url{https://github.com/matlab2tikz/matlab2tikz}}.
+The resulting figures are then in TikZ/PGF\footnote{TikZ/PGF Manual: \url{http://mirrors.ctan.org/graphics/pgf/base/doc/pgfmanual.pdf}} format.
+Please ask for access if you want to use this option.
+
+After clone the repository and adding it to the Matlab path,
+you can convert your current open figure with
+\begin{verbatim}
+path = 'mymatlabfigure.fig';
+savefig(path);
+autoConvertToTikz(path);
+\end{verbatim}
+which makes use of the underlying \texttt{matlab2tikz} function by setting some optimization options. Type
+\begin{verbatim}
+open autoConvertToTikz
+\end{verbatim}
+for details.
+After successful conversion, you should find a file \texttt{mymatlabfigure.tikz} in the current directory.
+This figure can then be moved to your \LaTeX\ project and added to your document as above:
+\begin{verbatim}
+\begin{figure}
+ \centering
+ \includetikz{./figures/mymatlabfigure}
+ \caption{My first Matlab figure.}
+ \label{fig:mymatlabfigure}
+\end{figure}
+\end{verbatim}
+which results in \cref{fig:mymatlabfigure}.
+\begin{figure}[h!]
+ \centering
+ \includetikz{./figures/mymatlabfigure}
+ \caption{My first Matlab figure.}
+ \label{fig:mymatlabfigure}
+\end{figure}
+
+If you have a figure with multiple subplots, \texttt{matlab2tikz} creates multiple TikZ files:
+The main TikZ file contains all settings and plotting options of your figure,
+the content of each subplot is exported in a separate file,
+and an additional file for the legend of your figure is generated.
+Such a figure can be added as above but you have to specify the path to the TikZ files within the main TikZ file, e.g.,
+\begin{verbatim}
+\def\basepath{./figures/}
+\end{verbatim}
+An example figure is visible in \cref{fig:mymatlabgroupfigure}.
+
+Your figures can then be customized as required, e.g., adapting the color (also see \cref{sec:colors}), adding labels of the x- and y-axis, and adapt the legend entries.
+Please visit the TikZ/PGF manual\footnote{TikZ/PGF Manual: \url{http://mirrors.ctan.org/graphics/pgf/base/doc/pgfmanual.pdf}} for details.
+We have also found that large language models like ChatGPT work surprisingly well with TikZ,
+so you might want to consult them about specific requests.
+
+\begin{figure}[h!]
+ \centering
+ \includetikz{./figures/mymatlabgroupfigure}
+ \caption{My first Matlab figure with multiple subplots.}
+ \label{fig:mymatlabgroupfigure}
+\end{figure}
+
+\subsubsection{TikZ, Git, and Overleaf}
+If you synchronize your \LaTeX\ document with git,
+we recommend you to also synchronize the externalized PDF files.
+You can add \texttt{*.log}, \texttt{*.dpth}, and \texttt{*.md5} to your \texttt{.gitignore} and only need to synchronize the PDF itself.
+
+If you want to use this TikZ figures in Overleaf\footnote{Overleaf: \url{https://overleaf.com/}},
+we recommend you to build the figures locally and upload the PDF files into the correct folder.
+While you can also externalize the figures directly in Overleaf\footnote{Overleaf and TikZ: \url{https://tex.stackexchange.com/questions/596557/overleaf-cache-not-working-properly-with-tikzexternalize-and-include}},
+this has several disadvantages, e.g., having to rebuild all figures when re-opening the document after some time.
+Note: TUM students can also use the TUM instance of Overleaf, which is called ShareLaTeX\footnote{ShareLaTeX: \url{https://sharelatex.tum.de/}}.
+There, they can create a git repository out of the project (Menu $\textrangle$ Git) and clone the repository to interact with the project locally.
+
+\subsubsection{Animated Tikz Figures in Presentations}
+Generally, you can use the same commands as above to include your TikZ figures in presentations\footnote{Document class \texttt{beamer}: \url{https://www.overleaf.com/learn/latex/Beamer}}.
+However, this package also provides some nice commands to animate your figures.
+We provide an example presentation showcasing these options along with the respective animated TikZ figures in \texttt{./examples/presentation.tex}.
+
+To enable animations, please specify the number of overlays of the current frame and add the \texttt{animate} option when including a TikZ figure:
+\begin{verbatim}
+\begin{frame}<1-4>{Introduction to \CORA}
+ \CORA provides you with a wide range of plotting capabilities:
+ \begin{figure}
+ \includetikz[animate]{./figures/mymatlabfigure}
+ \end{figure}
+\end{frame}
+\end{verbatim}
+You can then animate a plot using the \texttt{visible on}/\texttt{invisible on} options. For example,
+\begin{verbatim}
+\addplot [color=CORAcolor1, visible on=<2->]
+\end{verbatim}
+only shows the respective plot from the second overlay onwards.
+You can also use \verb|\only<>{}| to display certain text only on certain slides.
+For example
+\begin{verbatim}
+\only<1|handout:0>{My secret message.}
+\end{verbatim}
+only shows this text on the first overlay of the current frame but not if the document is set to \texttt{handout} mode\footnote{Beamer \texttt{handout} mode: \url{https://tex.stackexchange.com/questions/473485/latex-beamer-handout-beamer-mode-with-overlays}}.
+This option can also be used inside TikZ figures, e.g., to specify node labels depending on the current overlay.
+
+Mode advances animations can be achieved using the \texttt{alt} option,
+which allows to alter the plot style depending on the current overlay (if-then-else).
+For example,
+\begin{verbatim}
+\nextgroupplot[..., plotstyle1/.append style={alt=<1>{fill=CORAcolor1}{fill=none}}]
+\end{verbatim}
+fills all objects with \texttt{plotstyle1} in the first overlay but not in subsequent overlays.
+This changes the style for each subplot. Alternatively, the style can also be animated across all subplots.
+\begin{verbatim}
+ \pgfplotsset{
+ plotstyle1/.style={...,alt=<2->{}{draw=none},alt=<2|handout:0>{fill=CORAcolor1!20}{}}
+ }
+\end{verbatim}
+
+\subsubsection{Drawing Neural Networks}
+
+This package also provides an option to draw neural networks:
+\begin{verbatim}
+\begin{tikzpicture}
+ % draw network
+ \pic[] at (0,0) { nn={3}{2,5,5,2}{0.15cm}{0.02cm} };
+
+ % label the third node in the second layer with a '#'
+ \node also [neuron label={\#}] (l2-3);
+\end{tikzpicture}
+\end{verbatim}
+which results in \cref{fig:neural-network}.
+
+\begin{figure}[h!]
+ \centering
+ \includetikz{./figures/neural-network}
+ \caption{Example neural network with a neuron label.}
+ \label{fig:neural-network}
+\end{figure}
+
\section{Examples}
Here are some examples demonstrating how to use the commands from the \texttt{cora-macs} package.
+We recommend to define \LaTeX\ commands for each variable you use in your document.
\subsection{Set Notation}
+For example, to denote the initial set, you can define
+\newcommand{\initialSet}{\contSet{X}_0}
\begin{verbatim}
-\contSet{X} = \shortContSet{a}{b}{X}
+\newcommand{\initialSet}{\contSet{X}_0}
\end{verbatim}
-This code will produce $\contSet{X} = \left<a, b\right>_X$.
+within your preamble and then use it within your document as follows:
+\begin{verbatim}
+\begin{equation}
+ \initialSet = \shortZ{c}{G}.
+\end{equation}
+\end{verbatim}
+which results in
+\begin{quote}
+ \begin{equation}
+ \initialSet = \shortZ{c}{G}.
+ \end{equation}
+\end{quote}
\subsection{Operations}
+To define a new operation, simply add
+\newcommand{\opLinComb}[3][]{\operatortt[#1]{linComb}{#2,#3}}
\begin{verbatim}
-\diag{A} = \operator{diag}{A}
+\newcommand{\opLinComb}[3][]{\operatortt[#1]{linComb}{#2,#3}}
\end{verbatim}
-This code will produce $\diag{A} = \text{\normalfont\small diag}(A)$.
+to your preamble and then use it within your document as follows:
+\begin{verbatim}
+Given two sets $\contSet{S}_1,\contSet{S}_2\subset\R^n$, their linear combination is defined as
+\begin{equation}
+ \opLinComb{\contSet{S}_1}{\contSet{S}_2} \coloneqq
+ \left\{ \lambda s_1 + (1-\lambda s_2)\ \middle|\
+ s_1\in\contSet{S}_1,\,s_2\in\contSet{S}_2,\,\lambda \in[0,1] \right\}.
+\end{equation}
+\end{verbatim}
+which results in
+\begin{quote}
+ Given two sets $\contSet{S}_1,\contSet{S}_2\subset\R^n$, the linear combination is defined as
+ \begin{equation}
+ \opLinComb{\contSet{S}_1}{\contSet{S}_2} \coloneqq
+ \left\{ \lambda s_1 + (1-\lambda s_2)\ \middle|\
+ s_1\in\contSet{S}_1,\,s_2\in\contSet{S}_2,\,\lambda \in[0,1] \right\}.
+ \end{equation}
+\end{quote}
\subsection{Neural Networks}
+To specify a specific network layer, one can write
\begin{verbatim}
-\NN(\nnInput) = \nnLayer{1}{\nnInput}
+A linear layer is defined as
+\begin{equation}
+ \nnLayer[LIN]{k}{\nnHidden_{k-1}} \coloneqq W\nnHidden_{k-1} + b,
+ \quad W\in\R^{\numNeurons_{k}\times\numNeurons_{k-1}},\, b\in\R^{\numNeurons_k}.
+\end{equation}
\end{verbatim}
-This code will produce $\NN(\nnInput) = L_1(\nnInput)$.
+which results in
+\begin{quote}
+ A linear layer is defined as
+ \begin{equation}
+ \nnLayer[LIN]{k}{\nnHidden_{k-1}} \coloneqq W\nnHidden_{k-1} + b,
+ \quad W\in\R^{\numNeurons_{k}\times\numNeurons_{k-1}},\, b\in\R^{\numNeurons_k}.
+ \end{equation}
+\end{quote}
\section{Concluding Remarks}
-The \texttt{cora-macs} package offers a comprehensive set of tools for researchers working in cyber-physical systems. By providing a consistent notation and color scheme, this package simplifies the process of documenting complex mathematical objects and operations.
-
+The \texttt{cora-macs} package offers a comprehensive set of tools for researchers working in cyber-physical systems.
+By providing a consistent notation and color scheme, this package simplifies the process of documenting complex mathematical objects and operations.
+We very much encourage you to extend the functionality of this package and define your own commands for everything you need to improve the consistency throughout your \LaTeX\ document.
+If you have suggestions to include certain commands in this package, please contact us and we are happy to discuss them!
For more information, visit the \href{https://www.ce.cit.tum.de/cps}{TUM CPS Group website}.
\end{document}
diff --git a/macros/latex/contrib/cora-macs/cora-macs.sty b/macros/latex/contrib/cora-macs/cora-macs.sty
index 3fcee03d45..6dbb64a33e 100644
--- a/macros/latex/contrib/cora-macs/cora-macs.sty
+++ b/macros/latex/contrib/cora-macs/cora-macs.sty
@@ -2,7 +2,7 @@
% package information --------------------------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{cora-macs}[2024-10-25]
+\ProvidesPackage{cora-macs}[2024-12-11] % Should match the version on CTAN.
% Authors: Tobias Ladner, Lukas Koller
% TUM - Cyber-Physical Systems Group
@@ -12,17 +12,29 @@
% required packages ----------------------------------------------------------------------------------------------------
+% general packages
\RequirePackage{xifthen}
\RequirePackage{xstring}
\RequirePackage{amsfonts}
+\RequirePackage{keyval}
+
+% color
\RequirePackage{xcolor}
+% tikz
+\RequirePackage{tikzscale}
+\RequirePackage{pgfplots}
+\RequirePackage{mathtools}
+\RequirePackage{graphics}
+\usepgfplotslibrary{external}
+
+
% pre-processing -------------------------------------------------------------------------------------------------------
% for better logging
\newcommand{\DeclareCORAOption}[2]{
\DeclareOption{#1}{
- % display information
+ % display information
\PackageInfo{cora-macs}{Loading '#1' option..}
% content
#2
@@ -36,21 +48,24 @@
% all sets should be written in mathcal
\newcommand{\contSet}[1]{\ensuremath{\mathcal{#1}}}
-% process options ------------------------------------------------------------------------------------------------------
+% CORA macro
+\providecommand{\CORA}[0]{{\color{black}C\color{red!90!black}O\color{black}RA}}
+
+% declare options ------------------------------------------------------------------------------------------------------
\DeclareCORAOption{sets}{ % --- continuous sets
- % contSet ---
+% contSet ---
- % formatting
+% formatting
\newcommand{\neghphantom}[1]{\settowidth{\dimen0}{#1}\hspace*{-\dimen0}}
% short-hand notation (including nice punctuation for large sets)
\newcommand{\shortContSet}[3][]{\ensuremath{% \defContSet[punctuation]{abbreviation}{cs parameters of set}
- \left<#2\right>_{#3\,}%
- \ifthenelse{\isempty{#1}}% add abbreviation
- {} % none given
- {\neghphantom{\scriptsize #3}#1\neghphantom{#1}\hphantom{\scriptsize #3}}
- }}
+ \left<#2\right>_{#3\,}%
+ \ifthenelse{\isempty{#1}}% add abbreviation
+ {} % none given
+ {\neghphantom{\scriptsize #3}#1\neghphantom{#1}\hphantom{\scriptsize #3}}
+ }}
\newcommand{\defContSet}[2]{\left\{ #1 \ \middle|\ #2 \right\}}
\newcommand{\defContSetSplit}[2]{\left\{ #1 \vphantom{#2} \ \right| \\ &\qquad \left. \vphantom{#1} #2 \right\}}
@@ -75,7 +90,7 @@
\DeclareCORAOption{operations}{ % --- operations
- % define monospace operator including inline operator
+% define monospace operator including inline operator
\newcommand{\operator}[3][]{%
\text{\normalfont\small#2}%
\IfSubStr{#1}{inline}% if inline
@@ -98,7 +113,7 @@
\newcommand{\opProject}[2][]{\operatortt{project}{#2}}
% operations that should be stantard latex operations
- \newcommand{\diag}[2][]{\operator[#1]{diag}{#2}}
+ \providecommand{\diag}[2][]{\operator[#1]{diag}{#2}}
\providecommand{\Diag}[2][]{\operator[#1]{Diag}{#2}}
\providecommand{\mod}[3][]{\operator[#1]{mod}{#2,#3}}
\newcommand{\dia}[2][]{\operator[#1]{dia}{#2}}
@@ -106,16 +121,16 @@
}
-\DeclareCORAOption{nn}{ % ------ neural networks
+\DeclareCORAOption{nn}{ % --- neural networks
- % neural network
+% neural network
\newcommand{\NN}[0]{\ensuremath{\Phi}}
\newcommand{\numLayers}[0]{\ensuremath{\kappa}}
\newcommand{\numNeurons}[0]{\ensuremath{n}}
% layers
- \newcommand{\nnLayerName}[2]{\ensuremath{L_{#1}^\text{#2}}}
- \newcommand{\nnLayer}[3]{\ensuremath{\nnLayerName{#1}{#2}\left(#3\right)}}
+ \newcommand{\nnLayerName}[2][]{\ensuremath{L_{#2}^\text{#1}}}
+ \newcommand{\nnLayer}[3][]{\ensuremath{\nnLayerName[#1]{#2}\left(#3\right)}}
\newcommand{\nnActFun}{\ensuremath{\phi}}
\newcommand{\actfun}{\nnActFun} % remove?
@@ -135,6 +150,10 @@
% set-based training
\newcommand{\nnTarget}{\ensuremath{t}}
+ \newcommand{\regrSub}{MSE}
+ \newcommand{\ceSub}{CE}
+ \newcommand{\pointLoss}{\ensuremath{E}}
+ \newcommand{\setLoss}{\ensuremath{\widetilde{E}}}
% other
\newcommand{\nnPertRadius}{\epsilon}
@@ -144,19 +163,20 @@
}
-% --- colors
+%
-\DeclareCORAOption{colors}{ % --- cora colors
+\DeclareCORAOption{colors}{% --- colors
- % cora colors (see CORAcolor in cora)
+% cora colors (see CORAcolor in cora) --- cora colors
\definecolor{CORAcolorReachSet}{rgb}{0.2706, 0.5882, 1.0000} % blue
\definecolor{CORAcolorReachSet2}{rgb}{0.6902, 0.8235, 1.0000} % light-blue
- \definecolor{CORAcolorOnitialSet}{rgb}{1, 1, 1} % white
+ \definecolor{CORAcolorInitialSet}{rgb}{1, 1, 1} % white
\definecolor{CORAcolorFinalSet}{rgb}{0.9000, 0.9000, 0.9000} % light-gray
- \definecolor{CORAcolorSimulations}{rgb}{0.9000, 0.9000, 0.9000} % black
+ \definecolor{CORAcolorSimulations}{rgb}{0.0000, 0.0000, 0.0000} % black
\definecolor{CORAcolorUnsafe}{rgb}{0.9451, 0.5529, 0.5686} % red
\definecolor{CORAcolorUnsafeLight}{rgb}{0.9059, 0.7373, 0.7373} % light red
\definecolor{CORAcolorSafe}{rgb}{0.4706, 0.7725, 0.4980} % light green
+ \definecolor{CORAcolorUnknown}{rgb}{0.9290, 0.6940, 0.1250} % yellow
\colorlet{CORAcolorInvariant}{CORAcolorSafe} % light green
% default colors (also default matlab colors)
@@ -179,10 +199,8 @@
\definecolor{CORAcolorHighlight1}{rgb}{1.0000,0.6824,0.2980} % 'CORA:highlight1 (orange)'
\definecolor{CORAcolorHighlight2}{rgb}{0.3804,0.6275,1.0000} % 'CORA:highlight2 (lightblue)'
-}
-
-\DeclareCORAOption{tumcolors}{ % ---- tum colors
+ % --- TUM colors
\definecolor{TUMblue}{rgb}{0.00, 0.40, 0.74}
\definecolor{TUMgray}{rgb}{0.85, 0.85, 0.86}
\definecolor{TUMpantone285C}{rgb}{0.00, 0.45, 0.81}
@@ -192,7 +210,150 @@
}
-% process all options
+\DeclareCORAOption{tikz}{ % --- tikz
+
+% groupplots
+ \usepgfplotslibrary{groupplots}
+ \usetikzlibrary{pgfplots.groupplots}
+ \usetikzlibrary{matrix}
+ \usetikzlibrary{patterns}
+ \usetikzlibrary{arrows,arrows.meta}
+
+ % main packages
+ \pgfplotsset{compat=1.18}
+
+ % tikz externalize
+ \providecommand{\includetikzinternalpath}{./figures/externalize}
+ \providecommand{\includetikzupdatepath}[1]{\renewcommand{\includetikzinternalpath}[1]{##1}}
+ \tikzexternalize[prefix=\includetikzinternalpath/]
+ % include tikz
+ \providecommand{\includetikzinternalusetikz}[1]{%
+ \tikzset{external/export next=\CORAtikzexternalize}
+ \tikzsetnextfilename{\CORAtikzname{#1}}%
+ \input{#1.tikz}%
+ }
+ % reuse externalized pdf
+ \providecommand{\includetikzinternalusepdf}[1]{%
+ \IfSubStr{\CORAtikzexternalize}{true}{
+ % include pdf if exists
+ \IfFileExists{{\includetikzinternalpath/\CORAtikzname{#1}.pdf}}{
+ % include pdf
+ \includegraphics{\includetikzinternalpath/\CORAtikzname{#1}.pdf}
+ }{
+ % show error message
+ \texttt{
+ \tiny \sloppy
+ The file ''\expandafter\detokenize\expandafter{\includetikzinternalpath}/\expandafter\detokenize\expandafter{\CORAtikzname{#1}}.pdf`` does not exist and has to be exported first.
+ Please re-compile with tikz externalize and shell escape enabled.
+ Check the documentation for details.
+ }
+ }
+ }{
+ % call tikz
+ \includetikzinternalusetikz{#1}
+ }
+ }
+ % set up commands for tikz options (default: false)
+ \providecommand{\CORAtikzname}[1]{#1}
+ \providecommand{\CORAtikzexternalize}{true}
+ \providecommand{\CORAtikzsetupoptions}[1]{
+ % option 'animate': externalize with overlaynumber
+ \IfSubStr{#1}{animate}{
+ % have overlay number in name to have each overlay as separate pdf
+ \renewcommand{\CORAtikzname}[1]{##1-animate-\overlaynumber}
+ \mode<handout>{
+ % additionally have one pdf for handout mode
+ \renewcommand{\CORAtikzname}[1]{##1-animate-handout}
+ }
+ }{
+ \renewcommand{\CORAtikzname}[1]{##1}
+ }
+ % option 'noexternalize'/'noexport': whether figure should be externalized
+ \IfSubStr{#1}{noexternalize}{
+ \renewcommand{\CORAtikzexternalize}{false}
+ }{
+ \IfSubStr{#1}{noexport}{
+ \renewcommand{\CORAtikzexternalize}{false}
+ }{
+ \renewcommand{\CORAtikzexternalize}{true}
+ }
+ }
+ }
+ % main command to include tikz
+ \providecommand{\includetikz}[2][]{\texttt{Not yet initialized}}
+ % make tikz/pdf selectable
+ \providecommand{\CORAexternalizeusetikz}{\renewcommand{\includetikz}[2][]{\CORAtikzsetupoptions{##1}\includetikzinternalusetikz{##2}}}
+ \providecommand{\CORAexternalizeusepdf}{\renewcommand{\includetikz}[2][]{\CORAtikzsetupoptions{##1}\includetikzinternalusepdf{##2}}}
+ \CORAexternalizeusetikz
+
+ \tikzset {external/optimize=true}
+ % ensure
+ \makeatletter
+ \providecommand*{\overlaynumber}{\number\beamer@slideinframe}
+ \makeatother
+
+ % styling
+ \pgfplotsset{every axis/.append style={
+ ylabel near ticks,
+ xlabel near ticks,
+ }}
+ \tikzset{
+ >={Stealth[length=1mm]},
+ }
+
+ % frame animations - in-/visible on for tikz objects
+ \tikzset{
+ alt/.code args={<#1>#2#3}{%
+ \alt<#1>{\pgfkeysalso{#2}}{\pgfkeysalso{#3}} % \pgfkeysalso doesn't change the path
+ },
+ invisible/.style={opacity=0},
+ visible on/.style={alt={#1{}{invisible}}},
+ invisible on/.style={alt={#1{invisible}{}}},
+}
+
+% tikz neural networks
+\tikzset{
+ pics/nn/.style n args={4}{code={ % args: number of layers, list of hidden neurons, size of neuron, distance between neurons
+ \pgfmathsetmacro{\d}{#4};
+ \pgfmathsetmacro{\hn}{#1};
+ \foreach[count=\i] \h in {#2} { % draw network
+ \foreach \ii in {1,...,\h} { % draw layer
+ \node[circle,fill=CORAcolorBlue!75,draw=CORAcolorBlue,thick,inner sep={#3}] (l\i-\ii) at ({1.0cm*(\i-1-0.5*(\hn-1))},{\d*(\ii-0.5*(\h+1))}) {}; % \d*(\ii-1+0.5*Mod(\h,2))
+ };
+ };
+ % connect neurons
+ \foreach[count=\i] \hi in {#2} { %
+ \foreach[count=\j] \hj in {#2} { %
+ \pgfmathtruncatemacro{\dji}{\j-\i};
+ \ifnum\dji=1
+ \foreach \ii in {1,...,\hi} { %
+ \foreach \jj in {1,...,\hj} { %
+ \draw (l\i-\ii.east) -- (l\j-\jj.west); %
+ };
+ };
+ \fi
+ };
+ };
+ },
+ },
+ neuron label/.style n args={1}{label={[font=\footnotesize,text=white]center:#1}},
+ pics/zono3/.style n args={2}{code={\filldraw (0,-{#1}) -- (-{#2},-{#1}) -- (-{#2},0) -- (0,{#1}) -- ({#2},{#1}) -- ({#2},0) -- cycle;}},
+ pics/lossArrows3/.style n args={2}{code={\draw (0,0) -- ({0.5*#2},{0.5*#1}) -- ({0.5*#2},{#1}) -- ({#2},{#1});}},
+}
+
+\pgfplotsset{
+ enclosurefunction/.style={color=black, forget plot},
+ enclosureset/.style={color=CORAcolorGreen, forget plot},
+ enclosuresetbounds/.style={color=CORAcolorGreen, dashed, forget plot},
+ enclosureinputbounds/.style={color=TUMgray, dashed, forget plot},
+ enclosurepolynomial/.style={color=CORAcolorBlue, forget plot},
+ enclosureerror/.style={color=CORAcolorRed, forget plot},
+}
+
+}
+
+% process options ------------------------------------------------------------------------------------------------------
+
\ProcessOptions\relax
% post-processing ------------------------------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-1.pdf b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-1.pdf
new file mode 100644
index 0000000000..8b328029b0
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-1.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-2.pdf b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-2.pdf
new file mode 100644
index 0000000000..8eebcaffe3
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-2.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-3.pdf b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-3.pdf
new file mode 100644
index 0000000000..75bb1857d3
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-3.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-4.pdf b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-4.pdf
new file mode 100644
index 0000000000..641c5a705b
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabfigure_animated-animate-4.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-1.pdf b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-1.pdf
new file mode 100644
index 0000000000..95b37cabf7
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-1.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-2.pdf b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-2.pdf
new file mode 100644
index 0000000000..09ab09ff8d
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-2.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-3.pdf b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-3.pdf
new file mode 100644
index 0000000000..ca7c70d37f
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-3.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-4.pdf b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-4.pdf
new file mode 100644
index 0000000000..6897f98dbc
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-4.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-5.pdf b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-5.pdf
new file mode 100644
index 0000000000..585e2b44f1
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/mymatlabgroupfigure_animated-animate-5.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-1.pdf b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-1.pdf
new file mode 100644
index 0000000000..7ae83fa060
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-1.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-2.pdf b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-2.pdf
new file mode 100644
index 0000000000..92163274b0
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-2.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-3.pdf b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-3.pdf
new file mode 100644
index 0000000000..a0d6eb83ee
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-3.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-4.pdf b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-4.pdf
new file mode 100644
index 0000000000..0d59858239
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/externalize/figures/neural-network_animated-animate-4.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/figures/mymatlabfigure_animated.tikz b/macros/latex/contrib/cora-macs/examples/figures/mymatlabfigure_animated.tikz
new file mode 100644
index 0000000000..150fd5b406
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/mymatlabfigure_animated.tikz
@@ -0,0 +1,544 @@
+% This file was created by matlab2tikz.
+%
+\definecolor{mycolor1}{rgb}{0.00000,0.44700,0.74100}%
+\definecolor{mycolor2}{rgb}{0.85000,0.32500,0.09800}%
+\definecolor{mycolor3}{rgb}{0.92900,0.69400,0.12500}%
+%
+\begin{tikzpicture}
+\footnotesize
+
+\begin{axis}[%
+width=0.8\textwidth,
+height=4cm,
+at={(0in,0in)},
+scale only axis,
+xmin=-6.8,
+xmax=2.8,
+ymin=-0.2,
+ymax=2.2,
+axis background/.style={fill=white}
+]
+\addplot [color=mycolor1, forget plot, visible on=<2->]
+ table[row sep=crcr]{%
+-6 0\\
+-6 2\\
+-4 2\\
+-4 0\\
+-6 0\\
+};
+\addplot [color=mycolor2, forget plot, visible on=<3->]
+ table[row sep=crcr]{%
+-1 1.0031\\
+-1 0.9906\\
+-1.0002 0.978\\
+-1.0006 0.9654\\
+-1.0011 0.9529\\
+-1.0018 0.9403\\
+-1.0026 0.9278\\
+-1.0036 0.9153\\
+-1.0047 0.9028\\
+-1.006 0.8903\\
+-1.0075 0.8778\\
+-1.0091 0.8653\\
+-1.0109 0.8529\\
+-1.0128 0.8405\\
+-1.0149 0.8281\\
+-1.0171 0.8157\\
+-1.0195 0.8034\\
+-1.0221 0.7911\\
+-1.0248 0.7788\\
+-1.0276 0.7666\\
+-1.0306 0.7544\\
+-1.0338 0.7422\\
+-1.0371 0.7301\\
+-1.0406 0.718\\
+-1.0442 0.706\\
+-1.048 0.694\\
+-1.0519 0.682\\
+-1.056 0.6701\\
+-1.0602 0.6583\\
+-1.0646 0.6465\\
+-1.0691 0.6348\\
+-1.0737 0.6231\\
+-1.0785 0.6115\\
+-1.0835 0.6\\
+-1.0886 0.5885\\
+-1.0938 0.5771\\
+-1.0992 0.5657\\
+-1.1048 0.5544\\
+-1.1104 0.5432\\
+-1.1162 0.5321\\
+-1.1222 0.521\\
+-1.1283 0.51\\
+-1.1345 0.4991\\
+-1.1409 0.4883\\
+-1.1474 0.4775\\
+-1.154 0.4668\\
+-1.1608 0.4562\\
+-1.1677 0.4457\\
+-1.1747 0.4353\\
+-1.1819 0.425\\
+-1.1891 0.4148\\
+-1.1966 0.4046\\
+-1.2041 0.3946\\
+-1.2118 0.3846\\
+-1.2196 0.3748\\
+-1.2275 0.365\\
+-1.2355 0.3553\\
+-1.2437 0.3458\\
+-1.252 0.3363\\
+-1.2604 0.327\\
+-1.2689 0.3177\\
+-1.2775 0.3086\\
+-1.2863 0.2996\\
+-1.2951 0.2907\\
+-1.3041 0.2819\\
+-1.3132 0.2732\\
+-1.3224 0.2646\\
+-1.3316 0.2562\\
+-1.341 0.2478\\
+-1.3506 0.2396\\
+-1.3602 0.2315\\
+-1.3699 0.2235\\
+-1.3797 0.2157\\
+-1.3896 0.2079\\
+-1.3996 0.2003\\
+-1.4097 0.1928\\
+-1.4199 0.1855\\
+-1.4301 0.1783\\
+-1.4405 0.1712\\
+-1.451 0.1642\\
+-1.4615 0.1574\\
+-1.4722 0.1507\\
+-1.4829 0.1441\\
+-1.4937 0.1377\\
+-1.5045 0.1314\\
+-1.5155 0.1252\\
+-1.5265 0.1192\\
+-1.5376 0.1133\\
+-1.5488 0.1076\\
+-1.5601 0.102\\
+-1.5714 0.0965\\
+-1.5828 0.0912\\
+-1.5942 0.086\\
+-1.6057 0.081\\
+-1.6173 0.0761\\
+-1.629 0.0714\\
+-1.6407 0.0668\\
+-1.6524 0.0624\\
+-1.6642 0.0581\\
+-1.6761 0.0539\\
+-1.688 0.0499\\
+-1.7 0.0461\\
+-1.712 0.0424\\
+-1.724 0.0388\\
+-1.7361 0.0354\\
+-1.7483 0.0322\\
+-1.7604 0.0291\\
+-1.7727 0.0262\\
+-1.7849 0.0234\\
+-1.7972 0.0208\\
+-1.8095 0.0183\\
+-1.8219 0.016\\
+-1.8343 0.0138\\
+-1.8467 0.0118\\
+-1.8591 0.01\\
+-1.8716 0.0083\\
+-1.884 0.0067\\
+-1.8965 0.0054\\
+-1.909 0.0041\\
+-1.9215 0.0031\\
+-1.9341 0.0022\\
+-1.9466 0.0014\\
+-1.9592 0.0008\\
+-1.9717 0.0004\\
+-1.9843 0.0001\\
+-1.9969 0\\
+-2.0094 0\\
+-2.022 0.0002\\
+-2.0346 0.0006\\
+-2.0471 0.0011\\
+-2.0597 0.0018\\
+-2.0722 0.0026\\
+-2.0847 0.0036\\
+-2.0972 0.0047\\
+-2.1097 0.006\\
+-2.1222 0.0075\\
+-2.1347 0.0091\\
+-2.1471 0.0109\\
+-2.1595 0.0128\\
+-2.1719 0.0149\\
+-2.1843 0.0171\\
+-2.1966 0.0195\\
+-2.2089 0.0221\\
+-2.2212 0.0248\\
+-2.2334 0.0276\\
+-2.2456 0.0306\\
+-2.2578 0.0338\\
+-2.2699 0.0371\\
+-2.282 0.0406\\
+-2.294 0.0442\\
+-2.306 0.048\\
+-2.318 0.0519\\
+-2.3299 0.056\\
+-2.3417 0.0602\\
+-2.3535 0.0646\\
+-2.3652 0.0691\\
+-2.3769 0.0737\\
+-2.3885 0.0785\\
+-2.4 0.0835\\
+-2.4115 0.0886\\
+-2.4229 0.0938\\
+-2.4343 0.0992\\
+-2.4456 0.1048\\
+-2.4568 0.1104\\
+-2.4679 0.1162\\
+-2.479 0.1222\\
+-2.49 0.1283\\
+-2.5009 0.1345\\
+-2.5117 0.1409\\
+-2.5225 0.1474\\
+-2.5332 0.154\\
+-2.5438 0.1608\\
+-2.5543 0.1677\\
+-2.5647 0.1747\\
+-2.575 0.1819\\
+-2.5852 0.1891\\
+-2.5954 0.1966\\
+-2.6054 0.2041\\
+-2.6154 0.2118\\
+-2.6252 0.2196\\
+-2.635 0.2275\\
+-2.6447 0.2355\\
+-2.6542 0.2437\\
+-2.6637 0.252\\
+-2.673 0.2604\\
+-2.6823 0.2689\\
+-2.6914 0.2775\\
+-2.7004 0.2863\\
+-2.7093 0.2951\\
+-2.7181 0.3041\\
+-2.7268 0.3132\\
+-2.7354 0.3224\\
+-2.7438 0.3316\\
+-2.7522 0.341\\
+-2.7604 0.3506\\
+-2.7685 0.3602\\
+-2.7765 0.3699\\
+-2.7843 0.3797\\
+-2.7921 0.3896\\
+-2.7997 0.3996\\
+-2.8072 0.4097\\
+-2.8145 0.4199\\
+-2.8217 0.4301\\
+-2.8288 0.4405\\
+-2.8358 0.451\\
+-2.8426 0.4615\\
+-2.8493 0.4722\\
+-2.8559 0.4829\\
+-2.8623 0.4937\\
+-2.8686 0.5045\\
+-2.8748 0.5155\\
+-2.8808 0.5265\\
+-2.8867 0.5376\\
+-2.8924 0.5488\\
+-2.898 0.5601\\
+-2.9035 0.5714\\
+-2.9088 0.5828\\
+-2.914 0.5942\\
+-2.919 0.6057\\
+-2.9239 0.6173\\
+-2.9286 0.629\\
+-2.9332 0.6407\\
+-2.9376 0.6524\\
+-2.9419 0.6642\\
+-2.9461 0.6761\\
+-2.9501 0.688\\
+-2.9539 0.7\\
+-2.9576 0.712\\
+-2.9612 0.724\\
+-2.9646 0.7361\\
+-2.9678 0.7483\\
+-2.9709 0.7604\\
+-2.9738 0.7727\\
+-2.9766 0.7849\\
+-2.9792 0.7972\\
+-2.9817 0.8095\\
+-2.984 0.8219\\
+-2.9862 0.8343\\
+-2.9882 0.8467\\
+-2.99 0.8591\\
+-2.9917 0.8716\\
+-2.9933 0.884\\
+-2.9946 0.8965\\
+-2.9959 0.909\\
+-2.9969 0.9215\\
+-2.9978 0.9341\\
+-2.9986 0.9466\\
+-2.9992 0.9592\\
+-2.9996 0.9717\\
+-2.9999 0.9843\\
+-3 0.9969\\
+-3 1.0094\\
+-2.9998 1.022\\
+-2.9994 1.0346\\
+-2.9989 1.0471\\
+-2.9982 1.0597\\
+-2.9974 1.0722\\
+-2.9964 1.0847\\
+-2.9953 1.0972\\
+-2.994 1.1097\\
+-2.9925 1.1222\\
+-2.9909 1.1347\\
+-2.9891 1.1471\\
+-2.9872 1.1595\\
+-2.9851 1.1719\\
+-2.9829 1.1843\\
+-2.9805 1.1966\\
+-2.9779 1.2089\\
+-2.9752 1.2212\\
+-2.9724 1.2334\\
+-2.9694 1.2456\\
+-2.9662 1.2578\\
+-2.9629 1.2699\\
+-2.9594 1.282\\
+-2.9558 1.294\\
+-2.952 1.306\\
+-2.9481 1.318\\
+-2.944 1.3299\\
+-2.9398 1.3417\\
+-2.9354 1.3535\\
+-2.9309 1.3652\\
+-2.9263 1.3769\\
+-2.9215 1.3885\\
+-2.9165 1.4\\
+-2.9114 1.4115\\
+-2.9062 1.4229\\
+-2.9008 1.4343\\
+-2.8952 1.4456\\
+-2.8896 1.4568\\
+-2.8838 1.4679\\
+-2.8778 1.479\\
+-2.8717 1.49\\
+-2.8655 1.5009\\
+-2.8591 1.5117\\
+-2.8526 1.5225\\
+-2.846 1.5332\\
+-2.8392 1.5438\\
+-2.8323 1.5543\\
+-2.8253 1.5647\\
+-2.8181 1.575\\
+-2.8109 1.5852\\
+-2.8034 1.5954\\
+-2.7959 1.6054\\
+-2.7882 1.6154\\
+-2.7804 1.6252\\
+-2.7725 1.635\\
+-2.7645 1.6447\\
+-2.7563 1.6542\\
+-2.748 1.6637\\
+-2.7396 1.673\\
+-2.7311 1.6823\\
+-2.7225 1.6914\\
+-2.7137 1.7004\\
+-2.7049 1.7093\\
+-2.6959 1.7181\\
+-2.6868 1.7268\\
+-2.6776 1.7354\\
+-2.6684 1.7438\\
+-2.659 1.7522\\
+-2.6494 1.7604\\
+-2.6398 1.7685\\
+-2.6301 1.7765\\
+-2.6203 1.7843\\
+-2.6104 1.7921\\
+-2.6004 1.7997\\
+-2.5903 1.8072\\
+-2.5801 1.8145\\
+-2.5699 1.8217\\
+-2.5595 1.8288\\
+-2.549 1.8358\\
+-2.5385 1.8426\\
+-2.5278 1.8493\\
+-2.5171 1.8559\\
+-2.5063 1.8623\\
+-2.4955 1.8686\\
+-2.4845 1.8748\\
+-2.4735 1.8808\\
+-2.4624 1.8867\\
+-2.4512 1.8924\\
+-2.4399 1.898\\
+-2.4286 1.9035\\
+-2.4172 1.9088\\
+-2.4058 1.914\\
+-2.3943 1.919\\
+-2.3827 1.9239\\
+-2.371 1.9286\\
+-2.3593 1.9332\\
+-2.3476 1.9376\\
+-2.3358 1.9419\\
+-2.3239 1.9461\\
+-2.312 1.9501\\
+-2.3 1.9539\\
+-2.288 1.9576\\
+-2.276 1.9612\\
+-2.2639 1.9646\\
+-2.2517 1.9678\\
+-2.2396 1.9709\\
+-2.2273 1.9738\\
+-2.2151 1.9766\\
+-2.2028 1.9792\\
+-2.1905 1.9817\\
+-2.1781 1.984\\
+-2.1657 1.9862\\
+-2.1533 1.9882\\
+-2.1409 1.99\\
+-2.1284 1.9917\\
+-2.116 1.9933\\
+-2.1035 1.9946\\
+-2.091 1.9959\\
+-2.0785 1.9969\\
+-2.0659 1.9978\\
+-2.0534 1.9986\\
+-2.0408 1.9992\\
+-2.0283 1.9996\\
+-2.0157 1.9999\\
+-2.0031 2\\
+-1.9906 2\\
+-1.978 1.9998\\
+-1.9654 1.9994\\
+-1.9529 1.9989\\
+-1.9403 1.9982\\
+-1.9278 1.9974\\
+-1.9153 1.9964\\
+-1.9028 1.9953\\
+-1.8903 1.994\\
+-1.8778 1.9925\\
+-1.8653 1.9909\\
+-1.8529 1.9891\\
+-1.8405 1.9872\\
+-1.8281 1.9851\\
+-1.8157 1.9829\\
+-1.8034 1.9805\\
+-1.7911 1.9779\\
+-1.7788 1.9752\\
+-1.7666 1.9724\\
+-1.7544 1.9694\\
+-1.7422 1.9662\\
+-1.7301 1.9629\\
+-1.718 1.9594\\
+-1.706 1.9558\\
+-1.694 1.952\\
+-1.682 1.9481\\
+-1.6701 1.944\\
+-1.6583 1.9398\\
+-1.6465 1.9354\\
+-1.6348 1.9309\\
+-1.6231 1.9263\\
+-1.6115 1.9215\\
+-1.6 1.9165\\
+-1.5885 1.9114\\
+-1.5771 1.9062\\
+-1.5657 1.9008\\
+-1.5544 1.8952\\
+-1.5432 1.8896\\
+-1.5321 1.8838\\
+-1.521 1.8778\\
+-1.51 1.8717\\
+-1.4991 1.8655\\
+-1.4883 1.8591\\
+-1.4775 1.8526\\
+-1.4668 1.846\\
+-1.4562 1.8392\\
+-1.4457 1.8323\\
+-1.4353 1.8253\\
+-1.425 1.8181\\
+-1.4148 1.8109\\
+-1.4046 1.8034\\
+-1.3946 1.7959\\
+-1.3846 1.7882\\
+-1.3748 1.7804\\
+-1.365 1.7725\\
+-1.3553 1.7645\\
+-1.3458 1.7563\\
+-1.3363 1.748\\
+-1.327 1.7396\\
+-1.3177 1.7311\\
+-1.3086 1.7225\\
+-1.2996 1.7137\\
+-1.2907 1.7049\\
+-1.2819 1.6959\\
+-1.2732 1.6868\\
+-1.2646 1.6776\\
+-1.2562 1.6684\\
+-1.2478 1.659\\
+-1.2396 1.6494\\
+-1.2315 1.6398\\
+-1.2235 1.6301\\
+-1.2157 1.6203\\
+-1.2079 1.6104\\
+-1.2003 1.6004\\
+-1.1928 1.5903\\
+-1.1855 1.5801\\
+-1.1783 1.5699\\
+-1.1712 1.5595\\
+-1.1642 1.549\\
+-1.1574 1.5385\\
+-1.1507 1.5278\\
+-1.1441 1.5171\\
+-1.1377 1.5063\\
+-1.1314 1.4955\\
+-1.1252 1.4845\\
+-1.1192 1.4735\\
+-1.1133 1.4624\\
+-1.1076 1.4512\\
+-1.102 1.4399\\
+-1.0965 1.4286\\
+-1.0912 1.4172\\
+-1.086 1.4058\\
+-1.081 1.3943\\
+-1.0761 1.3827\\
+-1.0714 1.371\\
+-1.0668 1.3593\\
+-1.0624 1.3476\\
+-1.0581 1.3358\\
+-1.0539 1.3239\\
+-1.0499 1.312\\
+-1.0461 1.3\\
+-1.0424 1.288\\
+-1.0388 1.276\\
+-1.0354 1.2639\\
+-1.0322 1.2517\\
+-1.0291 1.2396\\
+-1.0262 1.2273\\
+-1.0234 1.2151\\
+-1.0208 1.2028\\
+-1.0183 1.1905\\
+-1.016 1.1781\\
+-1.0138 1.1657\\
+-1.0118 1.1533\\
+-1.01 1.1409\\
+-1.0083 1.1284\\
+-1.0067 1.116\\
+-1.0054 1.1035\\
+-1.0041 1.091\\
+-1.0031 1.0785\\
+-1.0022 1.0659\\
+-1.0014 1.0534\\
+-1.0008 1.0408\\
+-1.0004 1.0283\\
+-1.0001 1.0157\\
+-1 1.0031\\
+};
+\addplot [color=mycolor3, forget plot, visible on=<4->]
+ table[row sep=crcr]{%
+0 0\\
+0 1\\
+1 2\\
+2 2\\
+2 1\\
+1 0\\
+0 0\\
+};
+\end{axis}
+\end{tikzpicture}% \ No newline at end of file
diff --git a/macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated.tikz b/macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated.tikz
new file mode 100644
index 0000000000..302d309e7f
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated.tikz
@@ -0,0 +1,34 @@
+\definecolor{mycolor1}{rgb}{0.00000,0.44700,0.74100}%
+\definecolor{mycolor2}{rgb}{0.85000,0.32500,0.09800}%
+\definecolor{mycolor3}{rgb}{0.92900,0.69400,0.12500}%
+%
+\begin{tikzpicture}
+ \footnotesize
+ \pgfplotsset{
+ plotstyle1/.style={color=mycolor1, forget plot,alt=<2->{}{draw=none},alt=<2|handout:0>{fill=mycolor1!20}{}},
+ plotstyle2/.style={color=mycolor2, forget plot,alt=<3->{}{draw=none},alt=<3|handout:0>{fill=mycolor2!20}{}},
+ plotstyle3/.style={color=mycolor3, forget plot,alt=<4->{}{draw=none},alt=<4|handout:0>{fill=mycolor3!20}{}}
+ }
+ \def\rows{1}
+ \def\cols{3}
+ \def\horzsep{1cm}
+ \def\basepath{./figures/}
+
+ \begin{groupplot}[%
+ group style={rows = \rows, columns = \cols, horizontal sep = \horzsep},
+ scale only axis,
+ width=1/\cols*\textwidth -\horzsep,
+ legend style={legend columns=2,legend to name=legendname, legend cell align=left,/tikz/every even column/.append style={column sep=0.5cm}}
+ ]
+ \nextgroupplot[xmin=-6.2,xmax=-3.8,ymin=-0.2,ymax=2.2]
+ \input{\basepath mymatlabgroupfigure_animated_11.tikz}
+ \coordinate (top) at (rel axis cs:0,1);
+ \nextgroupplot[xmin=-3.2,xmax=-0.8,ymin=-0.2,ymax=2.2]
+ \input{\basepath mymatlabgroupfigure_animated_12.tikz}
+ \nextgroupplot[xmin=-0.2,xmax=2.2,ymin=-0.2,ymax=2.2]
+ \input{\basepath mymatlabgroupfigure_animated_13.tikz}
+ \coordinate (bot) at (rel axis cs:1,0);
+ \end{groupplot}
+ \path (top|-current bounding box.south)--coordinate(legendpos)(bot|-current bounding box.south);
+
+\end{tikzpicture}% \ No newline at end of file
diff --git a/macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated_11.tikz b/macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated_11.tikz
new file mode 100644
index 0000000000..0650ffa485
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated_11.tikz
@@ -0,0 +1,9 @@
+% no need to adapt this file for the animation, see mymatlabgroupfigure.tikz
+\addplot [plotstyle1]
+ table[row sep=crcr]{%
+-6 0\\
+-6 2\\
+-4 2\\
+-4 0\\
+-6 0\\
+};
diff --git a/macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated_12.tikz b/macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated_12.tikz
new file mode 100644
index 0000000000..b06967ca2e
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated_12.tikz
@@ -0,0 +1,505 @@
+% no need to adapt this file for the animation, see mymatlabgroupfigure.tikz
+\addplot [plotstyle2]
+ table[row sep=crcr]{%
+-1 1.0031\\
+-1 0.9906\\
+-1.0002 0.978\\
+-1.0006 0.9654\\
+-1.0011 0.9529\\
+-1.0018 0.9403\\
+-1.0026 0.9278\\
+-1.0036 0.9153\\
+-1.0047 0.9028\\
+-1.006 0.8903\\
+-1.0075 0.8778\\
+-1.0091 0.8653\\
+-1.0109 0.8529\\
+-1.0128 0.8405\\
+-1.0149 0.8281\\
+-1.0171 0.8157\\
+-1.0195 0.8034\\
+-1.0221 0.7911\\
+-1.0248 0.7788\\
+-1.0276 0.7666\\
+-1.0306 0.7544\\
+-1.0338 0.7422\\
+-1.0371 0.7301\\
+-1.0406 0.718\\
+-1.0442 0.706\\
+-1.048 0.694\\
+-1.0519 0.682\\
+-1.056 0.6701\\
+-1.0602 0.6583\\
+-1.0646 0.6465\\
+-1.0691 0.6348\\
+-1.0737 0.6231\\
+-1.0785 0.6115\\
+-1.0835 0.6\\
+-1.0886 0.5885\\
+-1.0938 0.5771\\
+-1.0992 0.5657\\
+-1.1048 0.5544\\
+-1.1104 0.5432\\
+-1.1162 0.5321\\
+-1.1222 0.521\\
+-1.1283 0.51\\
+-1.1345 0.4991\\
+-1.1409 0.4883\\
+-1.1474 0.4775\\
+-1.154 0.4668\\
+-1.1608 0.4562\\
+-1.1677 0.4457\\
+-1.1747 0.4353\\
+-1.1819 0.425\\
+-1.1891 0.4148\\
+-1.1966 0.4046\\
+-1.2041 0.3946\\
+-1.2118 0.3846\\
+-1.2196 0.3748\\
+-1.2275 0.365\\
+-1.2355 0.3553\\
+-1.2437 0.3458\\
+-1.252 0.3363\\
+-1.2604 0.327\\
+-1.2689 0.3177\\
+-1.2775 0.3086\\
+-1.2863 0.2996\\
+-1.2951 0.2907\\
+-1.3041 0.2819\\
+-1.3132 0.2732\\
+-1.3224 0.2646\\
+-1.3316 0.2562\\
+-1.341 0.2478\\
+-1.3506 0.2396\\
+-1.3602 0.2315\\
+-1.3699 0.2235\\
+-1.3797 0.2157\\
+-1.3896 0.2079\\
+-1.3996 0.2003\\
+-1.4097 0.1928\\
+-1.4199 0.1855\\
+-1.4301 0.1783\\
+-1.4405 0.1712\\
+-1.451 0.1642\\
+-1.4615 0.1574\\
+-1.4722 0.1507\\
+-1.4829 0.1441\\
+-1.4937 0.1377\\
+-1.5045 0.1314\\
+-1.5155 0.1252\\
+-1.5265 0.1192\\
+-1.5376 0.1133\\
+-1.5488 0.1076\\
+-1.5601 0.102\\
+-1.5714 0.0965\\
+-1.5828 0.0912\\
+-1.5942 0.086\\
+-1.6057 0.081\\
+-1.6173 0.0761\\
+-1.629 0.0714\\
+-1.6407 0.0668\\
+-1.6524 0.0624\\
+-1.6642 0.0581\\
+-1.6761 0.0539\\
+-1.688 0.0499\\
+-1.7 0.0461\\
+-1.712 0.0424\\
+-1.724 0.0388\\
+-1.7361 0.0354\\
+-1.7483 0.0322\\
+-1.7604 0.0291\\
+-1.7727 0.0262\\
+-1.7849 0.0234\\
+-1.7972 0.0208\\
+-1.8095 0.0183\\
+-1.8219 0.016\\
+-1.8343 0.0138\\
+-1.8467 0.0118\\
+-1.8591 0.01\\
+-1.8716 0.0083\\
+-1.884 0.0067\\
+-1.8965 0.0054\\
+-1.909 0.0041\\
+-1.9215 0.0031\\
+-1.9341 0.0022\\
+-1.9466 0.0014\\
+-1.9592 0.0008\\
+-1.9717 0.0004\\
+-1.9843 0.0001\\
+-1.9969 0\\
+-2.0094 0\\
+-2.022 0.0002\\
+-2.0346 0.0006\\
+-2.0471 0.0011\\
+-2.0597 0.0018\\
+-2.0722 0.0026\\
+-2.0847 0.0036\\
+-2.0972 0.0047\\
+-2.1097 0.006\\
+-2.1222 0.0075\\
+-2.1347 0.0091\\
+-2.1471 0.0109\\
+-2.1595 0.0128\\
+-2.1719 0.0149\\
+-2.1843 0.0171\\
+-2.1966 0.0195\\
+-2.2089 0.0221\\
+-2.2212 0.0248\\
+-2.2334 0.0276\\
+-2.2456 0.0306\\
+-2.2578 0.0338\\
+-2.2699 0.0371\\
+-2.282 0.0406\\
+-2.294 0.0442\\
+-2.306 0.048\\
+-2.318 0.0519\\
+-2.3299 0.056\\
+-2.3417 0.0602\\
+-2.3535 0.0646\\
+-2.3652 0.0691\\
+-2.3769 0.0737\\
+-2.3885 0.0785\\
+-2.4 0.0835\\
+-2.4115 0.0886\\
+-2.4229 0.0938\\
+-2.4343 0.0992\\
+-2.4456 0.1048\\
+-2.4568 0.1104\\
+-2.4679 0.1162\\
+-2.479 0.1222\\
+-2.49 0.1283\\
+-2.5009 0.1345\\
+-2.5117 0.1409\\
+-2.5225 0.1474\\
+-2.5332 0.154\\
+-2.5438 0.1608\\
+-2.5543 0.1677\\
+-2.5647 0.1747\\
+-2.575 0.1819\\
+-2.5852 0.1891\\
+-2.5954 0.1966\\
+-2.6054 0.2041\\
+-2.6154 0.2118\\
+-2.6252 0.2196\\
+-2.635 0.2275\\
+-2.6447 0.2355\\
+-2.6542 0.2437\\
+-2.6637 0.252\\
+-2.673 0.2604\\
+-2.6823 0.2689\\
+-2.6914 0.2775\\
+-2.7004 0.2863\\
+-2.7093 0.2951\\
+-2.7181 0.3041\\
+-2.7268 0.3132\\
+-2.7354 0.3224\\
+-2.7438 0.3316\\
+-2.7522 0.341\\
+-2.7604 0.3506\\
+-2.7685 0.3602\\
+-2.7765 0.3699\\
+-2.7843 0.3797\\
+-2.7921 0.3896\\
+-2.7997 0.3996\\
+-2.8072 0.4097\\
+-2.8145 0.4199\\
+-2.8217 0.4301\\
+-2.8288 0.4405\\
+-2.8358 0.451\\
+-2.8426 0.4615\\
+-2.8493 0.4722\\
+-2.8559 0.4829\\
+-2.8623 0.4937\\
+-2.8686 0.5045\\
+-2.8748 0.5155\\
+-2.8808 0.5265\\
+-2.8867 0.5376\\
+-2.8924 0.5488\\
+-2.898 0.5601\\
+-2.9035 0.5714\\
+-2.9088 0.5828\\
+-2.914 0.5942\\
+-2.919 0.6057\\
+-2.9239 0.6173\\
+-2.9286 0.629\\
+-2.9332 0.6407\\
+-2.9376 0.6524\\
+-2.9419 0.6642\\
+-2.9461 0.6761\\
+-2.9501 0.688\\
+-2.9539 0.7\\
+-2.9576 0.712\\
+-2.9612 0.724\\
+-2.9646 0.7361\\
+-2.9678 0.7483\\
+-2.9709 0.7604\\
+-2.9738 0.7727\\
+-2.9766 0.7849\\
+-2.9792 0.7972\\
+-2.9817 0.8095\\
+-2.984 0.8219\\
+-2.9862 0.8343\\
+-2.9882 0.8467\\
+-2.99 0.8591\\
+-2.9917 0.8716\\
+-2.9933 0.884\\
+-2.9946 0.8965\\
+-2.9959 0.909\\
+-2.9969 0.9215\\
+-2.9978 0.9341\\
+-2.9986 0.9466\\
+-2.9992 0.9592\\
+-2.9996 0.9717\\
+-2.9999 0.9843\\
+-3 0.9969\\
+-3 1.0094\\
+-2.9998 1.022\\
+-2.9994 1.0346\\
+-2.9989 1.0471\\
+-2.9982 1.0597\\
+-2.9974 1.0722\\
+-2.9964 1.0847\\
+-2.9953 1.0972\\
+-2.994 1.1097\\
+-2.9925 1.1222\\
+-2.9909 1.1347\\
+-2.9891 1.1471\\
+-2.9872 1.1595\\
+-2.9851 1.1719\\
+-2.9829 1.1843\\
+-2.9805 1.1966\\
+-2.9779 1.2089\\
+-2.9752 1.2212\\
+-2.9724 1.2334\\
+-2.9694 1.2456\\
+-2.9662 1.2578\\
+-2.9629 1.2699\\
+-2.9594 1.282\\
+-2.9558 1.294\\
+-2.952 1.306\\
+-2.9481 1.318\\
+-2.944 1.3299\\
+-2.9398 1.3417\\
+-2.9354 1.3535\\
+-2.9309 1.3652\\
+-2.9263 1.3769\\
+-2.9215 1.3885\\
+-2.9165 1.4\\
+-2.9114 1.4115\\
+-2.9062 1.4229\\
+-2.9008 1.4343\\
+-2.8952 1.4456\\
+-2.8896 1.4568\\
+-2.8838 1.4679\\
+-2.8778 1.479\\
+-2.8717 1.49\\
+-2.8655 1.5009\\
+-2.8591 1.5117\\
+-2.8526 1.5225\\
+-2.846 1.5332\\
+-2.8392 1.5438\\
+-2.8323 1.5543\\
+-2.8253 1.5647\\
+-2.8181 1.575\\
+-2.8109 1.5852\\
+-2.8034 1.5954\\
+-2.7959 1.6054\\
+-2.7882 1.6154\\
+-2.7804 1.6252\\
+-2.7725 1.635\\
+-2.7645 1.6447\\
+-2.7563 1.6542\\
+-2.748 1.6637\\
+-2.7396 1.673\\
+-2.7311 1.6823\\
+-2.7225 1.6914\\
+-2.7137 1.7004\\
+-2.7049 1.7093\\
+-2.6959 1.7181\\
+-2.6868 1.7268\\
+-2.6776 1.7354\\
+-2.6684 1.7438\\
+-2.659 1.7522\\
+-2.6494 1.7604\\
+-2.6398 1.7685\\
+-2.6301 1.7765\\
+-2.6203 1.7843\\
+-2.6104 1.7921\\
+-2.6004 1.7997\\
+-2.5903 1.8072\\
+-2.5801 1.8145\\
+-2.5699 1.8217\\
+-2.5595 1.8288\\
+-2.549 1.8358\\
+-2.5385 1.8426\\
+-2.5278 1.8493\\
+-2.5171 1.8559\\
+-2.5063 1.8623\\
+-2.4955 1.8686\\
+-2.4845 1.8748\\
+-2.4735 1.8808\\
+-2.4624 1.8867\\
+-2.4512 1.8924\\
+-2.4399 1.898\\
+-2.4286 1.9035\\
+-2.4172 1.9088\\
+-2.4058 1.914\\
+-2.3943 1.919\\
+-2.3827 1.9239\\
+-2.371 1.9286\\
+-2.3593 1.9332\\
+-2.3476 1.9376\\
+-2.3358 1.9419\\
+-2.3239 1.9461\\
+-2.312 1.9501\\
+-2.3 1.9539\\
+-2.288 1.9576\\
+-2.276 1.9612\\
+-2.2639 1.9646\\
+-2.2517 1.9678\\
+-2.2396 1.9709\\
+-2.2273 1.9738\\
+-2.2151 1.9766\\
+-2.2028 1.9792\\
+-2.1905 1.9817\\
+-2.1781 1.984\\
+-2.1657 1.9862\\
+-2.1533 1.9882\\
+-2.1409 1.99\\
+-2.1284 1.9917\\
+-2.116 1.9933\\
+-2.1035 1.9946\\
+-2.091 1.9959\\
+-2.0785 1.9969\\
+-2.0659 1.9978\\
+-2.0534 1.9986\\
+-2.0408 1.9992\\
+-2.0283 1.9996\\
+-2.0157 1.9999\\
+-2.0031 2\\
+-1.9906 2\\
+-1.978 1.9998\\
+-1.9654 1.9994\\
+-1.9529 1.9989\\
+-1.9403 1.9982\\
+-1.9278 1.9974\\
+-1.9153 1.9964\\
+-1.9028 1.9953\\
+-1.8903 1.994\\
+-1.8778 1.9925\\
+-1.8653 1.9909\\
+-1.8529 1.9891\\
+-1.8405 1.9872\\
+-1.8281 1.9851\\
+-1.8157 1.9829\\
+-1.8034 1.9805\\
+-1.7911 1.9779\\
+-1.7788 1.9752\\
+-1.7666 1.9724\\
+-1.7544 1.9694\\
+-1.7422 1.9662\\
+-1.7301 1.9629\\
+-1.718 1.9594\\
+-1.706 1.9558\\
+-1.694 1.952\\
+-1.682 1.9481\\
+-1.6701 1.944\\
+-1.6583 1.9398\\
+-1.6465 1.9354\\
+-1.6348 1.9309\\
+-1.6231 1.9263\\
+-1.6115 1.9215\\
+-1.6 1.9165\\
+-1.5885 1.9114\\
+-1.5771 1.9062\\
+-1.5657 1.9008\\
+-1.5544 1.8952\\
+-1.5432 1.8896\\
+-1.5321 1.8838\\
+-1.521 1.8778\\
+-1.51 1.8717\\
+-1.4991 1.8655\\
+-1.4883 1.8591\\
+-1.4775 1.8526\\
+-1.4668 1.846\\
+-1.4562 1.8392\\
+-1.4457 1.8323\\
+-1.4353 1.8253\\
+-1.425 1.8181\\
+-1.4148 1.8109\\
+-1.4046 1.8034\\
+-1.3946 1.7959\\
+-1.3846 1.7882\\
+-1.3748 1.7804\\
+-1.365 1.7725\\
+-1.3553 1.7645\\
+-1.3458 1.7563\\
+-1.3363 1.748\\
+-1.327 1.7396\\
+-1.3177 1.7311\\
+-1.3086 1.7225\\
+-1.2996 1.7137\\
+-1.2907 1.7049\\
+-1.2819 1.6959\\
+-1.2732 1.6868\\
+-1.2646 1.6776\\
+-1.2562 1.6684\\
+-1.2478 1.659\\
+-1.2396 1.6494\\
+-1.2315 1.6398\\
+-1.2235 1.6301\\
+-1.2157 1.6203\\
+-1.2079 1.6104\\
+-1.2003 1.6004\\
+-1.1928 1.5903\\
+-1.1855 1.5801\\
+-1.1783 1.5699\\
+-1.1712 1.5595\\
+-1.1642 1.549\\
+-1.1574 1.5385\\
+-1.1507 1.5278\\
+-1.1441 1.5171\\
+-1.1377 1.5063\\
+-1.1314 1.4955\\
+-1.1252 1.4845\\
+-1.1192 1.4735\\
+-1.1133 1.4624\\
+-1.1076 1.4512\\
+-1.102 1.4399\\
+-1.0965 1.4286\\
+-1.0912 1.4172\\
+-1.086 1.4058\\
+-1.081 1.3943\\
+-1.0761 1.3827\\
+-1.0714 1.371\\
+-1.0668 1.3593\\
+-1.0624 1.3476\\
+-1.0581 1.3358\\
+-1.0539 1.3239\\
+-1.0499 1.312\\
+-1.0461 1.3\\
+-1.0424 1.288\\
+-1.0388 1.276\\
+-1.0354 1.2639\\
+-1.0322 1.2517\\
+-1.0291 1.2396\\
+-1.0262 1.2273\\
+-1.0234 1.2151\\
+-1.0208 1.2028\\
+-1.0183 1.1905\\
+-1.016 1.1781\\
+-1.0138 1.1657\\
+-1.0118 1.1533\\
+-1.01 1.1409\\
+-1.0083 1.1284\\
+-1.0067 1.116\\
+-1.0054 1.1035\\
+-1.0041 1.091\\
+-1.0031 1.0785\\
+-1.0022 1.0659\\
+-1.0014 1.0534\\
+-1.0008 1.0408\\
+-1.0004 1.0283\\
+-1.0001 1.0157\\
+-1 1.0031\\
+};
diff --git a/macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated_13.tikz b/macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated_13.tikz
new file mode 100644
index 0000000000..3d7dfe10fe
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/mymatlabgroupfigure_animated_13.tikz
@@ -0,0 +1,11 @@
+% no need to adapt this file for the animation, see mymatlabgroupfigure.tikz
+\addplot [plotstyle3]
+ table[row sep=crcr]{%
+0 0\\
+0 1\\
+1 2\\
+2 2\\
+2 1\\
+1 0\\
+0 0\\
+};
diff --git a/macros/latex/contrib/cora-macs/examples/figures/neural-network_animated.tikz b/macros/latex/contrib/cora-macs/examples/figures/neural-network_animated.tikz
new file mode 100644
index 0000000000..1b71029a66
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/figures/neural-network_animated.tikz
@@ -0,0 +1,21 @@
+\begin{tikzpicture}
+ \pic[] at (0,0) { nn={3}{2,5,5,2}{0.15cm}{0.02cm} };
+
+ \node also [neuron label={\only<1|handout:0>{\#}}] (l1-1);
+ \node also [neuron label={\only<1|handout:0>{\#}}] (l1-2);
+
+ \node also [neuron label={\only<2|handout:0>{\#}}] (l2-1);
+ \node also [neuron label={\only<2|handout:0>{\#}}] (l2-2);
+ \node also [neuron label={\only<2|handout:0>{\#}}] (l2-3);
+ \node also [neuron label={\only<2|handout:0>{\#}}] (l2-4);
+ \node also [neuron label={\only<2|handout:0>{\#}}] (l2-5);
+
+ \node also [neuron label={\only<3|handout:0>{\#}}] (l3-1);
+ \node also [neuron label={\only<3|handout:0>{\#}}] (l3-2);
+ \node also [neuron label={\only<3|handout:0>{\#}}] (l3-3);
+ \node also [neuron label={\only<3|handout:0>{\#}}] (l3-4);
+ \node also [neuron label={\only<3|handout:0>{\#}}] (l3-5);
+
+ \node also [neuron label={\only<4-|handout:0>{\#}}] (l4-1);
+ \node also [neuron label={\only<4-|handout:0>{\#}}] (l4-2);
+\end{tikzpicture} \ No newline at end of file
diff --git a/macros/latex/contrib/cora-macs/examples/presentation.pdf b/macros/latex/contrib/cora-macs/examples/presentation.pdf
new file mode 100644
index 0000000000..c7603872c4
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/presentation.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/examples/presentation.tex b/macros/latex/contrib/cora-macs/examples/presentation.tex
new file mode 100644
index 0000000000..7f034a1633
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/examples/presentation.tex
@@ -0,0 +1,78 @@
+\documentclass[t]{beamer}
+% \documentclass[handout]{beamer}
+
+
+% preamble
+\usepackage{amsmath}
+\usepackage{amssymb}
+\usepackage{hyperref}
+\usepackage[sets,operations,nn,colors,tikz]{../cora-macs}
+
+\title{The \texttt{cora-macs} Package}
+\author{Tobias Ladner, Lukas Koller\\
+ TUM - Cyber-Physical Systems Group\\
+ \texttt{\small tobias.ladner@tum.de, lukas.koller@tum.de}}
+\date{2024-12-11} % Should match the version on CTAN.
+
+
+% begin document ---
+\begin{document}
+
+% cover page ---
+
+\begin{frame}
+ \titlepage
+ \vspace{-1cm}
+ \begin{center}
+ \includegraphics[width=0.5\columnwidth]{../figures/coraLogo}
+ \end{center}
+\end{frame}
+
+\begin{frame}<1-4>{Introduction to \CORA}
+ \CORA\ provides you with a wide range of plotting capabilities:
+ \bigskip
+ \begin{figure}
+ \includetikz[animate]{./figures/mymatlabfigure_animated}
+ \end{figure}
+ \pause
+
+ We can plot intervals, \pause
+ ellipsoids, \pause
+ and zonotopes!
+\end{frame}
+
+\begin{frame}<1-5>{Figures with Multiple Subplots}
+ These animations also work for figures with multiple subplots and one can even get more advanced using the \texttt{alt} option:
+ \bigskip
+ \begin{figure}
+ \includetikz[animate]{./figures/mymatlabgroupfigure_animated}
+ \end{figure}
+ \pause
+
+ We can plot intervals, \pause
+ ellipsoids, \pause
+ and zonotopes!
+\end{frame}
+
+\begin{frame}<1-4>{Show Information on Specific Overlays}
+ Use \texttt{\textbackslash only} to show text on specific overlays.
+ \bigskip
+
+ \emph{Example:}\\
+ An input is propagated layer by layer through a neural network to compute its output.
+ \vfill
+ \begin{figure}
+ \includetikz[animate]{./figures/neural-network_animated}
+ \end{figure}
+ \vfill
+\end{frame}
+
+\begin{frame}{Conclusion}
+ We hope this short presentation gave a good overview about the capabilities of the \texttt{cora-macs} package to visualize and animate your TikZ figures.
+ \bigskip
+
+ If you have any questions, don't hesitate to contact us.
+\end{frame}
+
+\end{document}
+
diff --git a/macros/latex/contrib/cora-macs/figures/coraLogo.eps b/macros/latex/contrib/cora-macs/figures/coraLogo.eps
new file mode 100644
index 0000000000..2120107cb3
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/figures/coraLogo.eps
@@ -0,0 +1,343 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%Creator: cairo 1.17.4 (https://cairographics.org)
+%%CreationDate: Tue Sep 26 09:52:14 2023
+%%Pages: 1
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 2
+%%BoundingBox: 0 2 167 53
+%%EndComments
+%%BeginProlog
+50 dict begin
+/q { gsave } bind def
+/Q { grestore } bind def
+/cm { 6 array astore concat } bind def
+/w { setlinewidth } bind def
+/J { setlinecap } bind def
+/j { setlinejoin } bind def
+/M { setmiterlimit } bind def
+/d { setdash } bind def
+/m { moveto } bind def
+/l { lineto } bind def
+/c { curveto } bind def
+/h { closepath } bind def
+/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto
+ 0 exch rlineto 0 rlineto closepath } bind def
+/S { stroke } bind def
+/f { fill } bind def
+/f* { eofill } bind def
+/n { newpath } bind def
+/W { clip } bind def
+/W* { eoclip } bind def
+/BT { } bind def
+/ET { } bind def
+/BDC { mark 3 1 roll /BDC pdfmark } bind def
+/EMC { mark /EMC pdfmark } bind def
+/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def
+/Tj { show currentpoint cairo_store_point } bind def
+/TJ {
+ {
+ dup
+ type /stringtype eq
+ { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse
+ } forall
+ currentpoint cairo_store_point
+} bind def
+/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore
+ cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def
+/Tf { pop /cairo_font exch def /cairo_font_matrix where
+ { pop cairo_selectfont } if } bind def
+/Td { matrix translate cairo_font_matrix matrix concatmatrix dup
+ /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point
+ /cairo_font where { pop cairo_selectfont } if } bind def
+/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def
+ cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def
+/g { setgray } bind def
+/rg { setrgbcolor } bind def
+/d1 { setcachedevice } bind def
+/cairo_data_source {
+ CairoDataIndex CairoData length lt
+ { CairoData CairoDataIndex get /CairoDataIndex CairoDataIndex 1 add def }
+ { () } ifelse
+} def
+/cairo_flush_ascii85_file { cairo_ascii85_file status { cairo_ascii85_file flushfile } if } def
+/cairo_image { image cairo_flush_ascii85_file } def
+/cairo_imagemask { imagemask cairo_flush_ascii85_file } def
+%%EndProlog
+%%BeginSetup
+%%EndSetup
+%%Page: 1 1
+%%BeginPageSetup
+%%PageBoundingBox: 0 2 167 53
+%%EndPageSetup
+q 0 2 167 51 rectclip
+1 0 0 -1 0 53 cm q
+0 g
+1.2 w
+0 J
+0 j
+[] 0.0 d
+4 M q 1 0 0 -1 0 0 cm
+32.41 -37.172 m 32.793 -37.172 33.148 -37.242 33.473 -37.391 c 33.805 -37.535
+ 34.098 -37.73 34.348 -37.969 c 34.598 -38.211 34.793 -38.496 34.941 -38.844
+ c 35.086 -39.18 35.16 -39.531 35.16 -39.906 c 35.16 -40.637 34.871 -41.289
+ 34.301 -41.871 c 30.457 -44.949 26.117 -46.484 21.285 -46.484 c 15.555
+-46.484 10.676 -44.465 6.645 -40.422 c 2.602 -36.391 0.582 -31.512 0.582
+ -25.781 c 0.582 -20.074 2.602 -15.199 6.645 -11.156 c 10.695 -7.105 15.574
+ -5.078 21.285 -5.078 c 26.191 -5.078 30.617 -6.695 34.566 -9.922 c 35.043
+ -10.383 35.285 -11.012 35.285 -11.812 c 35.285 -12.211 35.215 -12.574 35.082
+ -12.906 c 34.945 -13.23 34.754 -13.516 34.504 -13.766 c 34.254 -14.016
+33.957 -14.211 33.613 -14.344 c 33.277 -14.48 32.926 -14.547 32.551 -14.547
+ c 31.871 -14.547 31.242 -14.285 30.66 -13.766 c 29.348 -12.734 27.898 -11.945
+ 26.316 -11.391 c 24.742 -10.84 23.066 -10.562 21.285 -10.562 c 17.074 -10.562
+ 13.48 -12.059 10.504 -15.047 c 7.543 -17.992 6.066 -21.574 6.066 -25.781
+ c 6.066 -30.012 7.543 -33.602 10.504 -36.547 c 13.461 -39.516 17.055 -40.996
+ 21.285 -40.996 c 24.887 -40.996 28.066 -39.887 30.816 -37.656 c 31.262
+-37.344 31.793 -37.184 32.41 -37.172 c h
+32.41 -37.172 m S Q
+q 1 0 0 -1 0 0 cm
+107.105 -10.562 m 107.105 -25.031 l 114.355 -25.031 l 115.355 -25.031 116.293
+ -24.844 117.168 -24.469 c 118.051 -24.086 118.816 -23.562 119.465 -22.906
+ c 120.109 -22.238 120.621 -21.469 120.996 -20.594 c 121.379 -19.719 121.574
+ -18.789 121.574 -17.812 c 121.574 -16.812 121.379 -15.871 120.996 -14.996
+ c 120.621 -14.113 120.105 -13.344 119.449 -12.688 c 118.793 -12.031 118.027
+ -11.516 117.152 -11.141 c 116.277 -10.758 115.344 -10.562 114.355 -10.562
+ c h
+101.621 -43.734 m 101.621 -7.828 l 101.621 -7.445 101.688 -7.086 101.824
+ -6.746 c 101.969 -6.414 102.168 -6.121 102.418 -5.871 c 102.668 -5.613
+102.953 -5.414 103.277 -5.281 c 103.609 -5.148 103.973 -5.078 104.371 -5.078
+ c 114.355 -5.078 l 116.094 -5.078 117.734 -5.414 119.277 -6.094 c 120.828
+ -6.762 122.176 -7.672 123.324 -8.828 c 124.469 -9.984 125.375 -11.34 126.043
+ -12.891 c 126.719 -14.434 127.059 -16.074 127.059 -17.812 c 127.059 -18.949
+ 126.918 -20.059 126.637 -21.141 c 126.355 -22.215 125.934 -23.23 125.371
+ -24.188 c 124.809 -25.148 124.105 -26.035 123.262 -26.855 c 122.426 -27.672
+ 121.457 -28.391 120.355 -29.016 c 128.621 -42.234 l 128.91 -42.727 129.059
+ -43.227 129.059 -43.734 c 129.059 -44.141 128.984 -44.508 128.84 -44.824
+ c 128.703 -45.148 128.512 -45.438 128.262 -45.688 c 128.012 -45.938 127.719
+ -46.137 127.387 -46.281 c 127.051 -46.418 126.691 -46.484 126.309 -46.484
+ c 125.348 -46.484 124.566 -46.039 123.965 -45.141 c 114.824 -30.516 l 107.105
+ -30.516 l 107.105 -43.734 l 107.105 -44.492 106.84 -45.148 106.309 -45.688
+ c 105.777 -46.219 105.129 -46.484 104.371 -46.484 c 103.609 -46.484 102.957
+ -46.219 102.418 -45.688 c 101.887 -45.148 101.621 -44.492 101.621 -43.734
+ c h
+101.621 -43.734 m S Q
+q 1 0 0 -1 0 0 cm
+154.172 -27.016 m 149.656 -15.406 l 145.156 -27.016 l h
+133.234 -42.5 m 147.047 -6.938 l 147.598 -5.699 148.469 -5.078 149.656
+-5.078 c 150.883 -5.078 151.758 -5.699 152.281 -6.938 c 166.156 -42.625
+l 166.289 -42.969 166.359 -43.34 166.359 -43.734 c 166.359 -44.492 166.086
+ -45.148 165.547 -45.688 c 165.016 -46.219 164.367 -46.484 163.609 -46.484
+ c 162.848 -46.484 162.211 -46.219 161.703 -45.688 c 161.422 -45.406 161.211
+ -45.105 161.078 -44.797 c 156.281 -32.516 l 143.031 -32.516 l 138.219 -44.797
+ l 138.082 -45.105 137.879 -45.406 137.609 -45.688 c 137.066 -46.219 136.414
+ -46.484 135.656 -46.484 c 134.906 -46.484 134.266 -46.219 133.734 -45.688
+ c 133.211 -45.148 132.953 -44.492 132.953 -43.734 c 132.953 -43.324 133.047
+ -42.918 133.234 -42.5 c h
+133.234 -42.5 m S Q
+1 0.2 0 rg
+86.176 29.102 m 87.559 28.531 l 90.891 27.152 l 91.027 27.09 l 91.027 26.148
+ l 90.453 24.77 l 89.074 21.438 l 83.355 7.633 l 83.297 7.492 l 81.395 7.492
+ l 80.016 8.07 l 76.684 9.449 l 76.547 9.512 l 76.547 10.453 l 77.117 11.832
+ l 78.5 15.16 l 84.215 28.969 l 84.277 29.102 l h
+86.176 29.102 m f
+84.277 29.102 m 86.176 29.102 l 87.559 28.531 l 90.891 27.152 l 91.027
+27.09 l 91.027 26.148 l 90.453 24.77 l 89.074 21.438 l 83.355 7.633 l 83.297
+ 7.492 l 81.395 7.492 l 80.016 8.07 l 76.684 9.449 l 76.547 9.512 l 76.547
+ 10.453 l 77.117 11.832 l 78.5 15.16 l 84.215 28.969 l 84.277 29.102 l f*
+0 g
+2 J
+10 M q 1 0 0 -1 0 0 cm
+84.277 -29.102 m 86.176 -29.102 l 87.559 -28.531 l 90.891 -27.148 l 91.027
+ -27.09 l 91.027 -26.148 l 90.453 -24.77 l 89.074 -21.438 l 83.355 -7.633
+ l 83.297 -7.492 l 81.395 -7.492 l 80.016 -8.07 l 76.684 -9.449 l 76.547
+ -9.512 l 76.547 -10.453 l 77.117 -11.832 l 78.5 -15.16 l 84.215 -28.969
+ l 84.277 -29.102 l S Q
+1 0.2 0 rg
+82.941 14.098 m 83.516 12.719 l 84.895 9.383 l 84.949 9.242 l 84.281 8.578
+ l 80.949 7.199 l 67.148 1.48 l 65.766 0.906 l 65.629 0.855 l 64.285 2.203
+ l 63.711 3.582 l 62.332 6.91 l 62.277 7.055 l 62.945 7.719 l 66.277 9.098
+ l 80.078 14.816 l 81.461 15.387 l 81.598 15.441 l h
+82.941 14.098 m f
+81.598 15.441 m 82.941 14.098 l 83.516 12.719 l 84.895 9.383 l 84.949 9.242
+ l 84.281 8.578 l 80.949 7.199 l 67.148 1.48 l 65.766 0.906 l 65.629 0.855
+ l 64.285 2.203 l 63.711 3.582 l 62.332 6.91 l 62.277 7.055 l 62.945 7.719
+ l 66.277 9.098 l 80.078 14.816 l 81.461 15.387 l 81.598 15.441 l f*
+0 g
+q 1 0 0 -1 0 0 cm
+81.598 -15.441 m 82.941 -14.098 l 83.516 -12.719 l 84.895 -9.383 l 84.949
+ -9.242 l 84.281 -8.578 l 80.949 -7.199 l 67.148 -1.48 l 65.766 -0.906 l
+ 65.629 -0.855 l 64.285 -2.203 l 63.711 -3.582 l 62.332 -6.91 l 62.277 -7.055
+ l 62.945 -7.719 l 66.277 -9.098 l 80.078 -14.816 l 81.461 -15.387 l 81.598
+ -15.441 l S Q
+1 0.2 0 rg
+66.574 9.117 m 69.906 7.734 l 70.043 7.672 l 70.043 5.773 l 69.473 4.395
+ l 68.094 1.062 l 68.031 0.922 l 67.09 0.922 l 53.285 6.641 l 51.906 7.215
+ l 48.574 8.594 l 48.438 8.656 l 48.438 10.555 l 49.012 11.938 l 50.391
+15.27 l 50.449 15.406 l 51.395 15.406 l 65.195 9.688 l h
+66.574 9.117 m f
+51.395 15.406 m 65.195 9.688 l 66.574 9.117 l 69.906 7.734 l 70.043 7.672
+ l 70.043 5.773 l 69.473 4.395 l 68.094 1.062 l 68.031 0.922 l 67.09 0.922
+ l 53.285 6.641 l 51.906 7.215 l 48.574 8.594 l 48.438 8.656 l 48.438 10.555
+ l 49.012 11.938 l 50.391 15.27 l 50.449 15.406 l 51.395 15.406 l f*
+0 g
+q 1 0 0 -1 0 0 cm
+51.395 -15.406 m 65.195 -9.688 l 66.574 -9.113 l 69.906 -7.734 l 70.043
+ -7.676 l 70.043 -5.773 l 69.473 -4.395 l 68.094 -1.062 l 68.031 -0.926
+l 67.09 -0.926 l 53.285 -6.641 l 51.906 -7.215 l 48.574 -8.594 l 48.438
+-8.656 l 48.438 -10.555 l 49.012 -11.938 l 50.391 -15.27 l 50.449 -15.406
+ l 51.395 -15.406 l S Q
+1 0.2 0 rg
+50.324 7.055 m 50.188 7.004 l 49.52 7.664 l 43.805 21.473 l 43.23 22.852
+ l 41.852 26.184 l 41.797 26.324 l 43.141 27.664 l 44.523 28.238 l 47.855
+ 29.617 l 47.992 29.668 l 48.66 29.008 l 54.375 15.203 l 54.949 13.824 l
+ 56.328 10.492 l 56.383 10.352 l 55.039 9.008 l 53.656 8.438 l h
+50.324 7.055 m f
+47.992 29.668 m 48.66 29.008 l 54.375 15.203 l 54.949 13.824 l 56.328 10.492
+ l 56.383 10.352 l 55.039 9.008 l 53.656 8.438 l 50.324 7.055 l 50.188 7.004
+ l 49.52 7.664 l 43.805 21.473 l 43.23 22.852 l 41.852 26.184 l 41.797 26.324
+ l 43.141 27.664 l 44.523 28.238 l 47.855 29.617 l 47.992 29.668 l f*
+0 g
+q 1 0 0 -1 0 0 cm
+47.992 -29.672 m 48.66 -29.008 l 54.375 -15.203 l 54.949 -13.824 l 56.328
+ -10.488 l 56.383 -10.352 l 55.039 -9.008 l 53.656 -8.438 l 50.324 -7.055
+ l 50.188 -7.004 l 49.52 -7.664 l 43.805 -21.473 l 43.23 -22.852 l 41.852
+ -26.184 l 41.797 -26.324 l 43.141 -27.664 l 44.523 -28.234 l 47.855 -29.617
+ l 47.992 -29.672 l S Q
+1 0.2 0 rg
+56.344 41.496 m 56.344 40.559 l 54.965 37.227 l 49.246 23.418 l 48.676
+22.039 l 48.617 21.906 l 46.715 21.906 l 45.332 22.48 l 42 23.859 l 41.867
+ 23.914 l 41.867 24.863 l 43.246 28.195 l 48.965 41.992 l 49.535 43.375
+l 49.594 43.512 l 51.496 43.512 l 52.875 42.941 l 56.211 41.559 l h
+56.344 41.496 m f
+51.496 43.512 m 52.875 42.941 l 56.211 41.559 l 56.344 41.496 l 56.344
+40.559 l 54.965 37.227 l 49.246 23.418 l 48.676 22.039 l 48.617 21.906 l
+ 46.715 21.906 l 45.332 22.48 l 42 23.859 l 41.867 23.914 l 41.867 24.863
+ l 43.246 28.195 l 48.965 41.992 l 49.535 43.375 l 49.594 43.512 l 51.496
+ 43.512 l f*
+0 g
+q 1 0 0 -1 0 0 cm
+51.496 -43.512 m 52.875 -42.941 l 56.211 -41.559 l 56.344 -41.496 l 56.344
+ -40.559 l 54.965 -37.227 l 49.246 -23.422 l 48.676 -22.039 l 48.617 -21.906
+ l 46.715 -21.906 l 45.332 -22.48 l 42 -23.855 l 41.867 -23.914 l 41.867
+ -24.859 l 43.246 -28.195 l 48.965 -41.992 l 49.535 -43.375 l 49.594 -43.512
+ l 51.496 -43.512 l S Q
+1 0.2 0 rg
+69.988 45.477 m 70.559 44.098 l 70.613 43.957 l 69.945 43.293 l 66.613
+41.906 l 52.812 36.195 l 51.434 35.617 l 51.293 35.57 l 49.949 36.91 l 48.57
+ 40.242 l 47.996 41.621 l 47.945 41.766 l 48.609 42.43 l 51.941 43.812 l
+ 65.746 49.527 l 67.125 50.102 l 67.266 50.152 l 68.609 48.809 l h
+69.988 45.477 m f
+67.266 50.152 m 68.609 48.809 l 69.988 45.477 l 70.559 44.098 l 70.613
+43.957 l 69.945 43.293 l 66.613 41.906 l 52.812 36.195 l 51.434 35.617 l
+ 51.293 35.57 l 49.949 36.91 l 48.57 40.242 l 47.996 41.621 l 47.945 41.766
+ l 48.609 42.43 l 51.941 43.812 l 65.746 49.527 l 67.125 50.102 l 67.266
+ 50.152 l f*
+0 g
+q 1 0 0 -1 0 0 cm
+67.266 -50.148 m 68.609 -48.809 l 69.988 -45.477 l 70.559 -44.098 l 70.613
+ -43.957 l 69.945 -43.293 l 66.613 -41.906 l 52.812 -36.195 l 51.434 -35.617
+ l 51.293 -35.57 l 49.949 -36.91 l 48.57 -40.242 l 47.996 -41.621 l 47.945
+ -41.766 l 48.609 -42.43 l 51.941 -43.812 l 65.746 -49.523 l 67.125 -50.102
+ l 67.266 -50.148 l S Q
+1 0.2 0 rg
+82.938 42.988 m 84.316 42.418 l 84.453 42.355 l 84.453 40.453 l 83.074
+37.117 l 82.5 35.742 l 82.441 35.605 l 81.5 35.605 l 67.695 41.324 l 64.363
+ 42.699 l 62.984 43.273 l 62.848 43.332 l 62.848 45.238 l 64.227 48.57 l
+ 64.801 49.949 l 64.859 50.082 l 65.801 50.082 l 79.605 44.367 l h
+82.938 42.988 m f
+65.801 50.082 m 79.605 44.367 l 82.938 42.988 l 84.316 42.418 l 84.453
+42.355 l 84.453 40.453 l 83.074 37.117 l 82.5 35.742 l 82.441 35.605 l 81.5
+ 35.605 l 67.695 41.324 l 64.363 42.699 l 62.984 43.273 l 62.848 43.332
+l 62.848 45.238 l 64.227 48.57 l 64.801 49.949 l 64.859 50.082 l 65.801
+50.082 l f*
+0 g
+q 1 0 0 -1 0 0 cm
+65.801 -50.086 m 79.605 -44.363 l 82.938 -42.988 l 84.316 -42.418 l 84.453
+ -42.355 l 84.453 -40.453 l 83.074 -37.117 l 82.5 -35.738 l 82.441 -35.605
+ l 81.5 -35.605 l 67.695 -41.324 l 64.363 -42.699 l 62.984 -43.273 l 62.848
+ -43.336 l 62.848 -45.238 l 64.227 -48.57 l 64.801 -49.949 l 64.859 -50.086
+ l 65.801 -50.086 l S Q
+1 0.2 0 rg
+77.855 41.996 m 79.234 42.574 l 82.566 43.949 l 82.707 44.008 l 83.371
+43.336 l 84.75 40.008 l 90.469 26.207 l 91.039 24.824 l 91.094 24.688 l
+89.75 23.344 l 88.371 22.77 l 85.035 21.391 l 84.898 21.336 l 84.23 22.004
+ l 82.852 25.336 l 77.133 39.137 l 76.562 40.52 l 76.508 40.656 l h
+77.855 41.996 m f
+82.707 44.008 m 83.371 43.336 l 84.75 40.008 l 90.469 26.207 l 91.039 24.824
+ l 91.094 24.688 l 89.75 23.344 l 88.371 22.77 l 85.035 21.391 l 84.898
+21.336 l 84.23 22.004 l 82.852 25.336 l 77.133 39.137 l 76.562 40.52 l 76.508
+ 40.656 l 77.855 41.996 l 79.234 42.574 l 82.566 43.949 l 82.707 44.008
+l f*
+0 g
+q 1 0 0 -1 0 0 cm
+82.707 -44.008 m 83.371 -43.34 l 84.75 -40.008 l 90.469 -26.207 l 91.039
+ -24.824 l 91.094 -24.688 l 89.75 -23.344 l 88.371 -22.77 l 85.035 -21.391
+ l 84.898 -21.336 l 84.23 -22.004 l 82.852 -25.336 l 77.133 -39.137 l 76.562
+ -40.52 l 76.508 -40.656 l 77.855 -41.996 l 79.234 -42.574 l 82.566 -43.949
+ l 82.707 -44.008 l S Q
+1 g
+19.414 45.766 m 14.566 45.293 10.598 43.418 7.137 39.957 c 3.344 36.164
+ 1.449 31.824 1.273 26.52 c 1.074 20.586 3.055 15.645 7.309 11.453 c 8.918
+ 9.867 10.488 8.738 12.488 7.738 c 16.988 5.48 22.574 5.105 27.508 6.727
+ c 30.129 7.586 33.91 9.855 34.461 10.898 c 34.684 11.324 34.664 12.289
+34.422 12.754 c 34.09 13.391 33.535 13.77 32.797 13.871 c 32.211 13.953
+31.797 13.781 30.801 13.055 c 29.027 11.762 27.234 10.906 25.238 10.406
+c 23.711 10.023 22.504 9.91 20.605 9.973 c 18.812 10.035 17.816 10.199 16.301
+ 10.684 c 11.785 12.121 7.758 16.086 6.262 20.57 c 5.148 23.891 5.156 27.824
+ 6.277 31.074 c 8.027 36.141 12.648 40.23 17.82 41.289 c 20.684 41.875 23.719
+ 41.711 26.383 40.832 c 28.012 40.293 29.219 39.637 31.188 38.223 c 32.223
+ 37.48 33.703 37.855 34.266 39.004 c 34.469 39.422 34.504 39.598 34.469
+40.051 c 34.418 40.766 34.141 41.176 33.258 41.84 c 30.605 43.836 27.387
+ 45.176 24.16 45.629 c 22.871 45.809 20.543 45.875 19.414 45.766 c h
+19.414 45.766 m f
+103.84 45.766 m 103.328 45.645 102.801 45.211 102.52 44.672 c 102.262 44.18
+ l 102.262 25.797 l 102.266 7.414 l 102.48 6.945 l 102.758 6.352 103.27
+5.93 103.867 5.797 c 104.195 5.727 106.09 5.707 110.137 5.73 c 116.492 5.773
+ 116.324 5.762 118.148 6.367 c 121.617 7.52 124.473 10.359 125.723 13.906
+ c 126.246 15.391 126.344 16.004 126.344 17.82 c 126.34 19.598 126.23 20.348
+ 125.77 21.73 c 124.887 24.363 122.914 26.73 120.305 28.273 c 119.832 28.555
+ 119.496 28.812 119.52 28.875 c 119.543 28.934 121.496 32.086 123.867 35.875
+ c 126.234 39.664 128.23 42.93 128.301 43.137 c 128.598 43.988 128.199 45.016
+ 127.371 45.527 c 126.602 46.004 125.594 45.891 124.91 45.25 c 124.781 45.129
+ 122.543 41.613 119.938 37.438 c 115.199 29.844 l 106.504 29.836 l 106.48
+ 37.043 l 106.453 43.863 106.441 44.266 106.281 44.57 c 105.984 45.129 105.48
+ 45.578 104.988 45.723 c 104.488 45.871 104.309 45.879 103.84 45.766 c h
+116.262 25.469 m 119.125 24.676 121.223 22.551 121.992 19.66 c 122.266
+18.633 122.258 16.926 121.98 15.887 c 121.191 12.938 118.852 10.684 115.965
+ 10.09 c 115.375 9.969 114.512 9.945 110.875 9.945 c 106.5 9.945 l 106.5
+ 25.703 l 111.082 25.668 l 115.133 25.637 115.73 25.613 116.262 25.469 c
+ h
+116.262 25.469 m f
+135.023 45.727 m 134.156 45.418 133.617 44.652 133.629 43.742 c 133.633
+ 43.297 134.48 41.055 140.652 25.188 c 144.512 15.258 147.773 6.961 147.898
+ 6.75 c 148.32 6.031 149.078 5.645 149.879 5.738 c 150.617 5.828 151.184
+ 6.23 151.535 6.914 c 151.629 7.098 154.836 15.305 158.668 25.148 c 164.309
+ 39.648 165.641 43.156 165.68 43.602 c 165.723 44.086 165.695 44.219 165.465
+ 44.664 c 164.785 45.953 163.227 46.219 162.211 45.223 c 161.816 44.84 161.711
+ 44.629 161.043 42.914 c 160.637 41.875 159.5 38.965 158.52 36.441 c 156.73
+ 31.863 l 149.652 31.887 l 142.57 31.906 l 140.113 38.172 l 138.762 41.613
+ 137.586 44.562 137.504 44.723 c 137.281 45.148 136.66 45.641 136.195 45.758
+ c 135.684 45.887 135.453 45.883 135.023 45.727 c h
+154.926 27.145 m 154.82 26.875 153.617 23.777 152.246 20.258 c 150.879
+16.738 149.738 13.824 149.711 13.777 c 149.684 13.734 149.629 13.754 149.59
+ 13.828 c 149.504 13.98 144.254 27.512 144.254 27.582 c 144.254 27.605 146.699
+ 27.625 149.688 27.625 c 155.117 27.625 l h
+154.926 27.145 m f
+19.414 45.766 m 14.555 45.293 10.547 43.391 7.09 39.918 c 3.953 36.762
+2.172 33.293 1.457 28.961 c 1.223 27.531 1.223 24.039 1.457 22.605 c 2.172
+ 18.27 3.98 14.77 7.141 11.609 c 8.809 9.941 10.43 8.766 12.488 7.734 c
+16.992 5.48 22.645 5.105 27.535 6.73 c 30.16 7.605 33.914 9.863 34.461 10.898
+ c 34.684 11.324 34.664 12.289 34.422 12.754 c 34.09 13.391 33.535 13.77
+ 32.797 13.871 c 32.211 13.953 31.793 13.781 30.816 13.062 c 27.945 10.957
+ 24.883 9.953 21.316 9.945 c 19.121 9.945 17.461 10.234 15.539 10.957 c
+11.988 12.297 8.766 15.273 6.941 18.898 c 5.258 22.25 4.965 27.047 6.215
+ 30.852 c 7.73 35.477 11.664 39.398 16.254 40.867 c 19.504 41.906 23.184
+ 41.891 26.383 40.828 c 27.969 40.301 29.316 39.57 31.188 38.223 c 32.223
+ 37.48 33.699 37.855 34.266 39.004 c 34.469 39.422 34.504 39.598 34.469
+40.051 c 34.418 40.773 34.141 41.176 33.23 41.863 c 30.609 43.836 27.379
+ 45.176 24.16 45.629 c 22.871 45.809 20.543 45.875 19.414 45.766 c h
+19.414 45.766 m f
+Q Q
+showpage
+%%Trailer
+end
+%%EOF
diff --git a/macros/latex/contrib/cora-macs/figures/externalize/figures/mymatlabfigure.pdf b/macros/latex/contrib/cora-macs/figures/externalize/figures/mymatlabfigure.pdf
new file mode 100644
index 0000000000..2b8fe88d19
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/figures/externalize/figures/mymatlabfigure.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/figures/externalize/figures/mymatlabgroupfigure.pdf b/macros/latex/contrib/cora-macs/figures/externalize/figures/mymatlabgroupfigure.pdf
new file mode 100644
index 0000000000..c27b749b43
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/figures/externalize/figures/mymatlabgroupfigure.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/figures/externalize/figures/mytikzfigure.pdf b/macros/latex/contrib/cora-macs/figures/externalize/figures/mytikzfigure.pdf
new file mode 100644
index 0000000000..8321bc761d
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/figures/externalize/figures/mytikzfigure.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/figures/externalize/figures/neural-network.pdf b/macros/latex/contrib/cora-macs/figures/externalize/figures/neural-network.pdf
new file mode 100644
index 0000000000..d4f6be8218
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/figures/externalize/figures/neural-network.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/figures/mymatlabfigure.tikz b/macros/latex/contrib/cora-macs/figures/mymatlabfigure.tikz
new file mode 100644
index 0000000000..e54a84aa50
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/figures/mymatlabfigure.tikz
@@ -0,0 +1,544 @@
+% This file was created by matlab2tikz.
+%
+\definecolor{mycolor1}{rgb}{0.00000,0.44700,0.74100}%
+\definecolor{mycolor2}{rgb}{0.85000,0.32500,0.09800}%
+\definecolor{mycolor3}{rgb}{0.92900,0.69400,0.12500}%
+%
+\begin{tikzpicture}
+\footnotesize
+
+\begin{axis}[%
+width=0.6\textwidth,
+height=4cm,
+at={(0in,0in)},
+scale only axis,
+xmin=-6.8,
+xmax=2.8,
+ymin=-0.2,
+ymax=2.2,
+axis background/.style={fill=white}
+]
+\addplot [color=mycolor1, forget plot]
+ table[row sep=crcr]{%
+-6 0\\
+-6 2\\
+-4 2\\
+-4 0\\
+-6 0\\
+};
+\addplot [color=mycolor2, forget plot]
+ table[row sep=crcr]{%
+-1 1.0031\\
+-1 0.9906\\
+-1.0002 0.978\\
+-1.0006 0.9654\\
+-1.0011 0.9529\\
+-1.0018 0.9403\\
+-1.0026 0.9278\\
+-1.0036 0.9153\\
+-1.0047 0.9028\\
+-1.006 0.8903\\
+-1.0075 0.8778\\
+-1.0091 0.8653\\
+-1.0109 0.8529\\
+-1.0128 0.8405\\
+-1.0149 0.8281\\
+-1.0171 0.8157\\
+-1.0195 0.8034\\
+-1.0221 0.7911\\
+-1.0248 0.7788\\
+-1.0276 0.7666\\
+-1.0306 0.7544\\
+-1.0338 0.7422\\
+-1.0371 0.7301\\
+-1.0406 0.718\\
+-1.0442 0.706\\
+-1.048 0.694\\
+-1.0519 0.682\\
+-1.056 0.6701\\
+-1.0602 0.6583\\
+-1.0646 0.6465\\
+-1.0691 0.6348\\
+-1.0737 0.6231\\
+-1.0785 0.6115\\
+-1.0835 0.6\\
+-1.0886 0.5885\\
+-1.0938 0.5771\\
+-1.0992 0.5657\\
+-1.1048 0.5544\\
+-1.1104 0.5432\\
+-1.1162 0.5321\\
+-1.1222 0.521\\
+-1.1283 0.51\\
+-1.1345 0.4991\\
+-1.1409 0.4883\\
+-1.1474 0.4775\\
+-1.154 0.4668\\
+-1.1608 0.4562\\
+-1.1677 0.4457\\
+-1.1747 0.4353\\
+-1.1819 0.425\\
+-1.1891 0.4148\\
+-1.1966 0.4046\\
+-1.2041 0.3946\\
+-1.2118 0.3846\\
+-1.2196 0.3748\\
+-1.2275 0.365\\
+-1.2355 0.3553\\
+-1.2437 0.3458\\
+-1.252 0.3363\\
+-1.2604 0.327\\
+-1.2689 0.3177\\
+-1.2775 0.3086\\
+-1.2863 0.2996\\
+-1.2951 0.2907\\
+-1.3041 0.2819\\
+-1.3132 0.2732\\
+-1.3224 0.2646\\
+-1.3316 0.2562\\
+-1.341 0.2478\\
+-1.3506 0.2396\\
+-1.3602 0.2315\\
+-1.3699 0.2235\\
+-1.3797 0.2157\\
+-1.3896 0.2079\\
+-1.3996 0.2003\\
+-1.4097 0.1928\\
+-1.4199 0.1855\\
+-1.4301 0.1783\\
+-1.4405 0.1712\\
+-1.451 0.1642\\
+-1.4615 0.1574\\
+-1.4722 0.1507\\
+-1.4829 0.1441\\
+-1.4937 0.1377\\
+-1.5045 0.1314\\
+-1.5155 0.1252\\
+-1.5265 0.1192\\
+-1.5376 0.1133\\
+-1.5488 0.1076\\
+-1.5601 0.102\\
+-1.5714 0.0965\\
+-1.5828 0.0912\\
+-1.5942 0.086\\
+-1.6057 0.081\\
+-1.6173 0.0761\\
+-1.629 0.0714\\
+-1.6407 0.0668\\
+-1.6524 0.0624\\
+-1.6642 0.0581\\
+-1.6761 0.0539\\
+-1.688 0.0499\\
+-1.7 0.0461\\
+-1.712 0.0424\\
+-1.724 0.0388\\
+-1.7361 0.0354\\
+-1.7483 0.0322\\
+-1.7604 0.0291\\
+-1.7727 0.0262\\
+-1.7849 0.0234\\
+-1.7972 0.0208\\
+-1.8095 0.0183\\
+-1.8219 0.016\\
+-1.8343 0.0138\\
+-1.8467 0.0118\\
+-1.8591 0.01\\
+-1.8716 0.0083\\
+-1.884 0.0067\\
+-1.8965 0.0054\\
+-1.909 0.0041\\
+-1.9215 0.0031\\
+-1.9341 0.0022\\
+-1.9466 0.0014\\
+-1.9592 0.0008\\
+-1.9717 0.0004\\
+-1.9843 0.0001\\
+-1.9969 0\\
+-2.0094 0\\
+-2.022 0.0002\\
+-2.0346 0.0006\\
+-2.0471 0.0011\\
+-2.0597 0.0018\\
+-2.0722 0.0026\\
+-2.0847 0.0036\\
+-2.0972 0.0047\\
+-2.1097 0.006\\
+-2.1222 0.0075\\
+-2.1347 0.0091\\
+-2.1471 0.0109\\
+-2.1595 0.0128\\
+-2.1719 0.0149\\
+-2.1843 0.0171\\
+-2.1966 0.0195\\
+-2.2089 0.0221\\
+-2.2212 0.0248\\
+-2.2334 0.0276\\
+-2.2456 0.0306\\
+-2.2578 0.0338\\
+-2.2699 0.0371\\
+-2.282 0.0406\\
+-2.294 0.0442\\
+-2.306 0.048\\
+-2.318 0.0519\\
+-2.3299 0.056\\
+-2.3417 0.0602\\
+-2.3535 0.0646\\
+-2.3652 0.0691\\
+-2.3769 0.0737\\
+-2.3885 0.0785\\
+-2.4 0.0835\\
+-2.4115 0.0886\\
+-2.4229 0.0938\\
+-2.4343 0.0992\\
+-2.4456 0.1048\\
+-2.4568 0.1104\\
+-2.4679 0.1162\\
+-2.479 0.1222\\
+-2.49 0.1283\\
+-2.5009 0.1345\\
+-2.5117 0.1409\\
+-2.5225 0.1474\\
+-2.5332 0.154\\
+-2.5438 0.1608\\
+-2.5543 0.1677\\
+-2.5647 0.1747\\
+-2.575 0.1819\\
+-2.5852 0.1891\\
+-2.5954 0.1966\\
+-2.6054 0.2041\\
+-2.6154 0.2118\\
+-2.6252 0.2196\\
+-2.635 0.2275\\
+-2.6447 0.2355\\
+-2.6542 0.2437\\
+-2.6637 0.252\\
+-2.673 0.2604\\
+-2.6823 0.2689\\
+-2.6914 0.2775\\
+-2.7004 0.2863\\
+-2.7093 0.2951\\
+-2.7181 0.3041\\
+-2.7268 0.3132\\
+-2.7354 0.3224\\
+-2.7438 0.3316\\
+-2.7522 0.341\\
+-2.7604 0.3506\\
+-2.7685 0.3602\\
+-2.7765 0.3699\\
+-2.7843 0.3797\\
+-2.7921 0.3896\\
+-2.7997 0.3996\\
+-2.8072 0.4097\\
+-2.8145 0.4199\\
+-2.8217 0.4301\\
+-2.8288 0.4405\\
+-2.8358 0.451\\
+-2.8426 0.4615\\
+-2.8493 0.4722\\
+-2.8559 0.4829\\
+-2.8623 0.4937\\
+-2.8686 0.5045\\
+-2.8748 0.5155\\
+-2.8808 0.5265\\
+-2.8867 0.5376\\
+-2.8924 0.5488\\
+-2.898 0.5601\\
+-2.9035 0.5714\\
+-2.9088 0.5828\\
+-2.914 0.5942\\
+-2.919 0.6057\\
+-2.9239 0.6173\\
+-2.9286 0.629\\
+-2.9332 0.6407\\
+-2.9376 0.6524\\
+-2.9419 0.6642\\
+-2.9461 0.6761\\
+-2.9501 0.688\\
+-2.9539 0.7\\
+-2.9576 0.712\\
+-2.9612 0.724\\
+-2.9646 0.7361\\
+-2.9678 0.7483\\
+-2.9709 0.7604\\
+-2.9738 0.7727\\
+-2.9766 0.7849\\
+-2.9792 0.7972\\
+-2.9817 0.8095\\
+-2.984 0.8219\\
+-2.9862 0.8343\\
+-2.9882 0.8467\\
+-2.99 0.8591\\
+-2.9917 0.8716\\
+-2.9933 0.884\\
+-2.9946 0.8965\\
+-2.9959 0.909\\
+-2.9969 0.9215\\
+-2.9978 0.9341\\
+-2.9986 0.9466\\
+-2.9992 0.9592\\
+-2.9996 0.9717\\
+-2.9999 0.9843\\
+-3 0.9969\\
+-3 1.0094\\
+-2.9998 1.022\\
+-2.9994 1.0346\\
+-2.9989 1.0471\\
+-2.9982 1.0597\\
+-2.9974 1.0722\\
+-2.9964 1.0847\\
+-2.9953 1.0972\\
+-2.994 1.1097\\
+-2.9925 1.1222\\
+-2.9909 1.1347\\
+-2.9891 1.1471\\
+-2.9872 1.1595\\
+-2.9851 1.1719\\
+-2.9829 1.1843\\
+-2.9805 1.1966\\
+-2.9779 1.2089\\
+-2.9752 1.2212\\
+-2.9724 1.2334\\
+-2.9694 1.2456\\
+-2.9662 1.2578\\
+-2.9629 1.2699\\
+-2.9594 1.282\\
+-2.9558 1.294\\
+-2.952 1.306\\
+-2.9481 1.318\\
+-2.944 1.3299\\
+-2.9398 1.3417\\
+-2.9354 1.3535\\
+-2.9309 1.3652\\
+-2.9263 1.3769\\
+-2.9215 1.3885\\
+-2.9165 1.4\\
+-2.9114 1.4115\\
+-2.9062 1.4229\\
+-2.9008 1.4343\\
+-2.8952 1.4456\\
+-2.8896 1.4568\\
+-2.8838 1.4679\\
+-2.8778 1.479\\
+-2.8717 1.49\\
+-2.8655 1.5009\\
+-2.8591 1.5117\\
+-2.8526 1.5225\\
+-2.846 1.5332\\
+-2.8392 1.5438\\
+-2.8323 1.5543\\
+-2.8253 1.5647\\
+-2.8181 1.575\\
+-2.8109 1.5852\\
+-2.8034 1.5954\\
+-2.7959 1.6054\\
+-2.7882 1.6154\\
+-2.7804 1.6252\\
+-2.7725 1.635\\
+-2.7645 1.6447\\
+-2.7563 1.6542\\
+-2.748 1.6637\\
+-2.7396 1.673\\
+-2.7311 1.6823\\
+-2.7225 1.6914\\
+-2.7137 1.7004\\
+-2.7049 1.7093\\
+-2.6959 1.7181\\
+-2.6868 1.7268\\
+-2.6776 1.7354\\
+-2.6684 1.7438\\
+-2.659 1.7522\\
+-2.6494 1.7604\\
+-2.6398 1.7685\\
+-2.6301 1.7765\\
+-2.6203 1.7843\\
+-2.6104 1.7921\\
+-2.6004 1.7997\\
+-2.5903 1.8072\\
+-2.5801 1.8145\\
+-2.5699 1.8217\\
+-2.5595 1.8288\\
+-2.549 1.8358\\
+-2.5385 1.8426\\
+-2.5278 1.8493\\
+-2.5171 1.8559\\
+-2.5063 1.8623\\
+-2.4955 1.8686\\
+-2.4845 1.8748\\
+-2.4735 1.8808\\
+-2.4624 1.8867\\
+-2.4512 1.8924\\
+-2.4399 1.898\\
+-2.4286 1.9035\\
+-2.4172 1.9088\\
+-2.4058 1.914\\
+-2.3943 1.919\\
+-2.3827 1.9239\\
+-2.371 1.9286\\
+-2.3593 1.9332\\
+-2.3476 1.9376\\
+-2.3358 1.9419\\
+-2.3239 1.9461\\
+-2.312 1.9501\\
+-2.3 1.9539\\
+-2.288 1.9576\\
+-2.276 1.9612\\
+-2.2639 1.9646\\
+-2.2517 1.9678\\
+-2.2396 1.9709\\
+-2.2273 1.9738\\
+-2.2151 1.9766\\
+-2.2028 1.9792\\
+-2.1905 1.9817\\
+-2.1781 1.984\\
+-2.1657 1.9862\\
+-2.1533 1.9882\\
+-2.1409 1.99\\
+-2.1284 1.9917\\
+-2.116 1.9933\\
+-2.1035 1.9946\\
+-2.091 1.9959\\
+-2.0785 1.9969\\
+-2.0659 1.9978\\
+-2.0534 1.9986\\
+-2.0408 1.9992\\
+-2.0283 1.9996\\
+-2.0157 1.9999\\
+-2.0031 2\\
+-1.9906 2\\
+-1.978 1.9998\\
+-1.9654 1.9994\\
+-1.9529 1.9989\\
+-1.9403 1.9982\\
+-1.9278 1.9974\\
+-1.9153 1.9964\\
+-1.9028 1.9953\\
+-1.8903 1.994\\
+-1.8778 1.9925\\
+-1.8653 1.9909\\
+-1.8529 1.9891\\
+-1.8405 1.9872\\
+-1.8281 1.9851\\
+-1.8157 1.9829\\
+-1.8034 1.9805\\
+-1.7911 1.9779\\
+-1.7788 1.9752\\
+-1.7666 1.9724\\
+-1.7544 1.9694\\
+-1.7422 1.9662\\
+-1.7301 1.9629\\
+-1.718 1.9594\\
+-1.706 1.9558\\
+-1.694 1.952\\
+-1.682 1.9481\\
+-1.6701 1.944\\
+-1.6583 1.9398\\
+-1.6465 1.9354\\
+-1.6348 1.9309\\
+-1.6231 1.9263\\
+-1.6115 1.9215\\
+-1.6 1.9165\\
+-1.5885 1.9114\\
+-1.5771 1.9062\\
+-1.5657 1.9008\\
+-1.5544 1.8952\\
+-1.5432 1.8896\\
+-1.5321 1.8838\\
+-1.521 1.8778\\
+-1.51 1.8717\\
+-1.4991 1.8655\\
+-1.4883 1.8591\\
+-1.4775 1.8526\\
+-1.4668 1.846\\
+-1.4562 1.8392\\
+-1.4457 1.8323\\
+-1.4353 1.8253\\
+-1.425 1.8181\\
+-1.4148 1.8109\\
+-1.4046 1.8034\\
+-1.3946 1.7959\\
+-1.3846 1.7882\\
+-1.3748 1.7804\\
+-1.365 1.7725\\
+-1.3553 1.7645\\
+-1.3458 1.7563\\
+-1.3363 1.748\\
+-1.327 1.7396\\
+-1.3177 1.7311\\
+-1.3086 1.7225\\
+-1.2996 1.7137\\
+-1.2907 1.7049\\
+-1.2819 1.6959\\
+-1.2732 1.6868\\
+-1.2646 1.6776\\
+-1.2562 1.6684\\
+-1.2478 1.659\\
+-1.2396 1.6494\\
+-1.2315 1.6398\\
+-1.2235 1.6301\\
+-1.2157 1.6203\\
+-1.2079 1.6104\\
+-1.2003 1.6004\\
+-1.1928 1.5903\\
+-1.1855 1.5801\\
+-1.1783 1.5699\\
+-1.1712 1.5595\\
+-1.1642 1.549\\
+-1.1574 1.5385\\
+-1.1507 1.5278\\
+-1.1441 1.5171\\
+-1.1377 1.5063\\
+-1.1314 1.4955\\
+-1.1252 1.4845\\
+-1.1192 1.4735\\
+-1.1133 1.4624\\
+-1.1076 1.4512\\
+-1.102 1.4399\\
+-1.0965 1.4286\\
+-1.0912 1.4172\\
+-1.086 1.4058\\
+-1.081 1.3943\\
+-1.0761 1.3827\\
+-1.0714 1.371\\
+-1.0668 1.3593\\
+-1.0624 1.3476\\
+-1.0581 1.3358\\
+-1.0539 1.3239\\
+-1.0499 1.312\\
+-1.0461 1.3\\
+-1.0424 1.288\\
+-1.0388 1.276\\
+-1.0354 1.2639\\
+-1.0322 1.2517\\
+-1.0291 1.2396\\
+-1.0262 1.2273\\
+-1.0234 1.2151\\
+-1.0208 1.2028\\
+-1.0183 1.1905\\
+-1.016 1.1781\\
+-1.0138 1.1657\\
+-1.0118 1.1533\\
+-1.01 1.1409\\
+-1.0083 1.1284\\
+-1.0067 1.116\\
+-1.0054 1.1035\\
+-1.0041 1.091\\
+-1.0031 1.0785\\
+-1.0022 1.0659\\
+-1.0014 1.0534\\
+-1.0008 1.0408\\
+-1.0004 1.0283\\
+-1.0001 1.0157\\
+-1 1.0031\\
+};
+\addplot [color=mycolor3, forget plot]
+ table[row sep=crcr]{%
+0 0\\
+0 1\\
+1 2\\
+2 2\\
+2 1\\
+1 0\\
+0 0\\
+};
+\end{axis}
+\end{tikzpicture}% \ No newline at end of file
diff --git a/macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure.tikz b/macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure.tikz
new file mode 100644
index 0000000000..1d0fa87f75
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure.tikz
@@ -0,0 +1,34 @@
+\definecolor{mycolor1}{rgb}{0.00000,0.44700,0.74100}%
+\definecolor{mycolor2}{rgb}{0.85000,0.32500,0.09800}%
+\definecolor{mycolor3}{rgb}{0.92900,0.69400,0.12500}%
+%
+\begin{tikzpicture}
+ \footnotesize
+ \pgfplotsset{
+ plotstyle1/.style={color=mycolor1, forget plot},
+ plotstyle2/.style={color=mycolor2, forget plot},
+ plotstyle3/.style={color=mycolor3, forget plot}
+ }
+ \def\rows{1}
+ \def\cols{3}
+ \def\horzsep{1cm}
+ \def\basepath{./figures/}
+
+ \begin{groupplot}[%
+ group style={rows = \rows, columns = \cols, horizontal sep = \horzsep},
+ scale only axis,
+ width=1/\cols*0.7\textwidth -\horzsep,
+ legend style={legend columns=2,legend to name=legendname, legend cell align=left,/tikz/every even column/.append style={column sep=0.5cm}}
+ ]
+ \nextgroupplot[xmin=-6.2,xmax=-3.8,ymin=-0.2,ymax=2.2]
+ \input{\basepath mymatlabgroupfigure_11.tikz}
+ \coordinate (top) at (rel axis cs:0,1);
+ \nextgroupplot[xmin=-3.2,xmax=-0.8,ymin=-0.2,ymax=2.2]
+ \input{\basepath mymatlabgroupfigure_12.tikz}
+ \nextgroupplot[xmin=-0.2,xmax=2.2,ymin=-0.2,ymax=2.2]
+ \input{\basepath mymatlabgroupfigure_13.tikz}
+ \coordinate (bot) at (rel axis cs:1,0);
+ \end{groupplot}
+ \path (top|-current bounding box.south)--coordinate(legendpos)(bot|-current bounding box.south);
+
+\end{tikzpicture}% \ No newline at end of file
diff --git a/macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure_11.tikz b/macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure_11.tikz
new file mode 100644
index 0000000000..c4ab0c5c61
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure_11.tikz
@@ -0,0 +1,8 @@
+\addplot [plotstyle1]
+ table[row sep=crcr]{%
+-6 0\\
+-6 2\\
+-4 2\\
+-4 0\\
+-6 0\\
+};
diff --git a/macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure_12.tikz b/macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure_12.tikz
new file mode 100644
index 0000000000..d910488946
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure_12.tikz
@@ -0,0 +1,504 @@
+\addplot [plotstyle2]
+ table[row sep=crcr]{%
+-1 1.0031\\
+-1 0.9906\\
+-1.0002 0.978\\
+-1.0006 0.9654\\
+-1.0011 0.9529\\
+-1.0018 0.9403\\
+-1.0026 0.9278\\
+-1.0036 0.9153\\
+-1.0047 0.9028\\
+-1.006 0.8903\\
+-1.0075 0.8778\\
+-1.0091 0.8653\\
+-1.0109 0.8529\\
+-1.0128 0.8405\\
+-1.0149 0.8281\\
+-1.0171 0.8157\\
+-1.0195 0.8034\\
+-1.0221 0.7911\\
+-1.0248 0.7788\\
+-1.0276 0.7666\\
+-1.0306 0.7544\\
+-1.0338 0.7422\\
+-1.0371 0.7301\\
+-1.0406 0.718\\
+-1.0442 0.706\\
+-1.048 0.694\\
+-1.0519 0.682\\
+-1.056 0.6701\\
+-1.0602 0.6583\\
+-1.0646 0.6465\\
+-1.0691 0.6348\\
+-1.0737 0.6231\\
+-1.0785 0.6115\\
+-1.0835 0.6\\
+-1.0886 0.5885\\
+-1.0938 0.5771\\
+-1.0992 0.5657\\
+-1.1048 0.5544\\
+-1.1104 0.5432\\
+-1.1162 0.5321\\
+-1.1222 0.521\\
+-1.1283 0.51\\
+-1.1345 0.4991\\
+-1.1409 0.4883\\
+-1.1474 0.4775\\
+-1.154 0.4668\\
+-1.1608 0.4562\\
+-1.1677 0.4457\\
+-1.1747 0.4353\\
+-1.1819 0.425\\
+-1.1891 0.4148\\
+-1.1966 0.4046\\
+-1.2041 0.3946\\
+-1.2118 0.3846\\
+-1.2196 0.3748\\
+-1.2275 0.365\\
+-1.2355 0.3553\\
+-1.2437 0.3458\\
+-1.252 0.3363\\
+-1.2604 0.327\\
+-1.2689 0.3177\\
+-1.2775 0.3086\\
+-1.2863 0.2996\\
+-1.2951 0.2907\\
+-1.3041 0.2819\\
+-1.3132 0.2732\\
+-1.3224 0.2646\\
+-1.3316 0.2562\\
+-1.341 0.2478\\
+-1.3506 0.2396\\
+-1.3602 0.2315\\
+-1.3699 0.2235\\
+-1.3797 0.2157\\
+-1.3896 0.2079\\
+-1.3996 0.2003\\
+-1.4097 0.1928\\
+-1.4199 0.1855\\
+-1.4301 0.1783\\
+-1.4405 0.1712\\
+-1.451 0.1642\\
+-1.4615 0.1574\\
+-1.4722 0.1507\\
+-1.4829 0.1441\\
+-1.4937 0.1377\\
+-1.5045 0.1314\\
+-1.5155 0.1252\\
+-1.5265 0.1192\\
+-1.5376 0.1133\\
+-1.5488 0.1076\\
+-1.5601 0.102\\
+-1.5714 0.0965\\
+-1.5828 0.0912\\
+-1.5942 0.086\\
+-1.6057 0.081\\
+-1.6173 0.0761\\
+-1.629 0.0714\\
+-1.6407 0.0668\\
+-1.6524 0.0624\\
+-1.6642 0.0581\\
+-1.6761 0.0539\\
+-1.688 0.0499\\
+-1.7 0.0461\\
+-1.712 0.0424\\
+-1.724 0.0388\\
+-1.7361 0.0354\\
+-1.7483 0.0322\\
+-1.7604 0.0291\\
+-1.7727 0.0262\\
+-1.7849 0.0234\\
+-1.7972 0.0208\\
+-1.8095 0.0183\\
+-1.8219 0.016\\
+-1.8343 0.0138\\
+-1.8467 0.0118\\
+-1.8591 0.01\\
+-1.8716 0.0083\\
+-1.884 0.0067\\
+-1.8965 0.0054\\
+-1.909 0.0041\\
+-1.9215 0.0031\\
+-1.9341 0.0022\\
+-1.9466 0.0014\\
+-1.9592 0.0008\\
+-1.9717 0.0004\\
+-1.9843 0.0001\\
+-1.9969 0\\
+-2.0094 0\\
+-2.022 0.0002\\
+-2.0346 0.0006\\
+-2.0471 0.0011\\
+-2.0597 0.0018\\
+-2.0722 0.0026\\
+-2.0847 0.0036\\
+-2.0972 0.0047\\
+-2.1097 0.006\\
+-2.1222 0.0075\\
+-2.1347 0.0091\\
+-2.1471 0.0109\\
+-2.1595 0.0128\\
+-2.1719 0.0149\\
+-2.1843 0.0171\\
+-2.1966 0.0195\\
+-2.2089 0.0221\\
+-2.2212 0.0248\\
+-2.2334 0.0276\\
+-2.2456 0.0306\\
+-2.2578 0.0338\\
+-2.2699 0.0371\\
+-2.282 0.0406\\
+-2.294 0.0442\\
+-2.306 0.048\\
+-2.318 0.0519\\
+-2.3299 0.056\\
+-2.3417 0.0602\\
+-2.3535 0.0646\\
+-2.3652 0.0691\\
+-2.3769 0.0737\\
+-2.3885 0.0785\\
+-2.4 0.0835\\
+-2.4115 0.0886\\
+-2.4229 0.0938\\
+-2.4343 0.0992\\
+-2.4456 0.1048\\
+-2.4568 0.1104\\
+-2.4679 0.1162\\
+-2.479 0.1222\\
+-2.49 0.1283\\
+-2.5009 0.1345\\
+-2.5117 0.1409\\
+-2.5225 0.1474\\
+-2.5332 0.154\\
+-2.5438 0.1608\\
+-2.5543 0.1677\\
+-2.5647 0.1747\\
+-2.575 0.1819\\
+-2.5852 0.1891\\
+-2.5954 0.1966\\
+-2.6054 0.2041\\
+-2.6154 0.2118\\
+-2.6252 0.2196\\
+-2.635 0.2275\\
+-2.6447 0.2355\\
+-2.6542 0.2437\\
+-2.6637 0.252\\
+-2.673 0.2604\\
+-2.6823 0.2689\\
+-2.6914 0.2775\\
+-2.7004 0.2863\\
+-2.7093 0.2951\\
+-2.7181 0.3041\\
+-2.7268 0.3132\\
+-2.7354 0.3224\\
+-2.7438 0.3316\\
+-2.7522 0.341\\
+-2.7604 0.3506\\
+-2.7685 0.3602\\
+-2.7765 0.3699\\
+-2.7843 0.3797\\
+-2.7921 0.3896\\
+-2.7997 0.3996\\
+-2.8072 0.4097\\
+-2.8145 0.4199\\
+-2.8217 0.4301\\
+-2.8288 0.4405\\
+-2.8358 0.451\\
+-2.8426 0.4615\\
+-2.8493 0.4722\\
+-2.8559 0.4829\\
+-2.8623 0.4937\\
+-2.8686 0.5045\\
+-2.8748 0.5155\\
+-2.8808 0.5265\\
+-2.8867 0.5376\\
+-2.8924 0.5488\\
+-2.898 0.5601\\
+-2.9035 0.5714\\
+-2.9088 0.5828\\
+-2.914 0.5942\\
+-2.919 0.6057\\
+-2.9239 0.6173\\
+-2.9286 0.629\\
+-2.9332 0.6407\\
+-2.9376 0.6524\\
+-2.9419 0.6642\\
+-2.9461 0.6761\\
+-2.9501 0.688\\
+-2.9539 0.7\\
+-2.9576 0.712\\
+-2.9612 0.724\\
+-2.9646 0.7361\\
+-2.9678 0.7483\\
+-2.9709 0.7604\\
+-2.9738 0.7727\\
+-2.9766 0.7849\\
+-2.9792 0.7972\\
+-2.9817 0.8095\\
+-2.984 0.8219\\
+-2.9862 0.8343\\
+-2.9882 0.8467\\
+-2.99 0.8591\\
+-2.9917 0.8716\\
+-2.9933 0.884\\
+-2.9946 0.8965\\
+-2.9959 0.909\\
+-2.9969 0.9215\\
+-2.9978 0.9341\\
+-2.9986 0.9466\\
+-2.9992 0.9592\\
+-2.9996 0.9717\\
+-2.9999 0.9843\\
+-3 0.9969\\
+-3 1.0094\\
+-2.9998 1.022\\
+-2.9994 1.0346\\
+-2.9989 1.0471\\
+-2.9982 1.0597\\
+-2.9974 1.0722\\
+-2.9964 1.0847\\
+-2.9953 1.0972\\
+-2.994 1.1097\\
+-2.9925 1.1222\\
+-2.9909 1.1347\\
+-2.9891 1.1471\\
+-2.9872 1.1595\\
+-2.9851 1.1719\\
+-2.9829 1.1843\\
+-2.9805 1.1966\\
+-2.9779 1.2089\\
+-2.9752 1.2212\\
+-2.9724 1.2334\\
+-2.9694 1.2456\\
+-2.9662 1.2578\\
+-2.9629 1.2699\\
+-2.9594 1.282\\
+-2.9558 1.294\\
+-2.952 1.306\\
+-2.9481 1.318\\
+-2.944 1.3299\\
+-2.9398 1.3417\\
+-2.9354 1.3535\\
+-2.9309 1.3652\\
+-2.9263 1.3769\\
+-2.9215 1.3885\\
+-2.9165 1.4\\
+-2.9114 1.4115\\
+-2.9062 1.4229\\
+-2.9008 1.4343\\
+-2.8952 1.4456\\
+-2.8896 1.4568\\
+-2.8838 1.4679\\
+-2.8778 1.479\\
+-2.8717 1.49\\
+-2.8655 1.5009\\
+-2.8591 1.5117\\
+-2.8526 1.5225\\
+-2.846 1.5332\\
+-2.8392 1.5438\\
+-2.8323 1.5543\\
+-2.8253 1.5647\\
+-2.8181 1.575\\
+-2.8109 1.5852\\
+-2.8034 1.5954\\
+-2.7959 1.6054\\
+-2.7882 1.6154\\
+-2.7804 1.6252\\
+-2.7725 1.635\\
+-2.7645 1.6447\\
+-2.7563 1.6542\\
+-2.748 1.6637\\
+-2.7396 1.673\\
+-2.7311 1.6823\\
+-2.7225 1.6914\\
+-2.7137 1.7004\\
+-2.7049 1.7093\\
+-2.6959 1.7181\\
+-2.6868 1.7268\\
+-2.6776 1.7354\\
+-2.6684 1.7438\\
+-2.659 1.7522\\
+-2.6494 1.7604\\
+-2.6398 1.7685\\
+-2.6301 1.7765\\
+-2.6203 1.7843\\
+-2.6104 1.7921\\
+-2.6004 1.7997\\
+-2.5903 1.8072\\
+-2.5801 1.8145\\
+-2.5699 1.8217\\
+-2.5595 1.8288\\
+-2.549 1.8358\\
+-2.5385 1.8426\\
+-2.5278 1.8493\\
+-2.5171 1.8559\\
+-2.5063 1.8623\\
+-2.4955 1.8686\\
+-2.4845 1.8748\\
+-2.4735 1.8808\\
+-2.4624 1.8867\\
+-2.4512 1.8924\\
+-2.4399 1.898\\
+-2.4286 1.9035\\
+-2.4172 1.9088\\
+-2.4058 1.914\\
+-2.3943 1.919\\
+-2.3827 1.9239\\
+-2.371 1.9286\\
+-2.3593 1.9332\\
+-2.3476 1.9376\\
+-2.3358 1.9419\\
+-2.3239 1.9461\\
+-2.312 1.9501\\
+-2.3 1.9539\\
+-2.288 1.9576\\
+-2.276 1.9612\\
+-2.2639 1.9646\\
+-2.2517 1.9678\\
+-2.2396 1.9709\\
+-2.2273 1.9738\\
+-2.2151 1.9766\\
+-2.2028 1.9792\\
+-2.1905 1.9817\\
+-2.1781 1.984\\
+-2.1657 1.9862\\
+-2.1533 1.9882\\
+-2.1409 1.99\\
+-2.1284 1.9917\\
+-2.116 1.9933\\
+-2.1035 1.9946\\
+-2.091 1.9959\\
+-2.0785 1.9969\\
+-2.0659 1.9978\\
+-2.0534 1.9986\\
+-2.0408 1.9992\\
+-2.0283 1.9996\\
+-2.0157 1.9999\\
+-2.0031 2\\
+-1.9906 2\\
+-1.978 1.9998\\
+-1.9654 1.9994\\
+-1.9529 1.9989\\
+-1.9403 1.9982\\
+-1.9278 1.9974\\
+-1.9153 1.9964\\
+-1.9028 1.9953\\
+-1.8903 1.994\\
+-1.8778 1.9925\\
+-1.8653 1.9909\\
+-1.8529 1.9891\\
+-1.8405 1.9872\\
+-1.8281 1.9851\\
+-1.8157 1.9829\\
+-1.8034 1.9805\\
+-1.7911 1.9779\\
+-1.7788 1.9752\\
+-1.7666 1.9724\\
+-1.7544 1.9694\\
+-1.7422 1.9662\\
+-1.7301 1.9629\\
+-1.718 1.9594\\
+-1.706 1.9558\\
+-1.694 1.952\\
+-1.682 1.9481\\
+-1.6701 1.944\\
+-1.6583 1.9398\\
+-1.6465 1.9354\\
+-1.6348 1.9309\\
+-1.6231 1.9263\\
+-1.6115 1.9215\\
+-1.6 1.9165\\
+-1.5885 1.9114\\
+-1.5771 1.9062\\
+-1.5657 1.9008\\
+-1.5544 1.8952\\
+-1.5432 1.8896\\
+-1.5321 1.8838\\
+-1.521 1.8778\\
+-1.51 1.8717\\
+-1.4991 1.8655\\
+-1.4883 1.8591\\
+-1.4775 1.8526\\
+-1.4668 1.846\\
+-1.4562 1.8392\\
+-1.4457 1.8323\\
+-1.4353 1.8253\\
+-1.425 1.8181\\
+-1.4148 1.8109\\
+-1.4046 1.8034\\
+-1.3946 1.7959\\
+-1.3846 1.7882\\
+-1.3748 1.7804\\
+-1.365 1.7725\\
+-1.3553 1.7645\\
+-1.3458 1.7563\\
+-1.3363 1.748\\
+-1.327 1.7396\\
+-1.3177 1.7311\\
+-1.3086 1.7225\\
+-1.2996 1.7137\\
+-1.2907 1.7049\\
+-1.2819 1.6959\\
+-1.2732 1.6868\\
+-1.2646 1.6776\\
+-1.2562 1.6684\\
+-1.2478 1.659\\
+-1.2396 1.6494\\
+-1.2315 1.6398\\
+-1.2235 1.6301\\
+-1.2157 1.6203\\
+-1.2079 1.6104\\
+-1.2003 1.6004\\
+-1.1928 1.5903\\
+-1.1855 1.5801\\
+-1.1783 1.5699\\
+-1.1712 1.5595\\
+-1.1642 1.549\\
+-1.1574 1.5385\\
+-1.1507 1.5278\\
+-1.1441 1.5171\\
+-1.1377 1.5063\\
+-1.1314 1.4955\\
+-1.1252 1.4845\\
+-1.1192 1.4735\\
+-1.1133 1.4624\\
+-1.1076 1.4512\\
+-1.102 1.4399\\
+-1.0965 1.4286\\
+-1.0912 1.4172\\
+-1.086 1.4058\\
+-1.081 1.3943\\
+-1.0761 1.3827\\
+-1.0714 1.371\\
+-1.0668 1.3593\\
+-1.0624 1.3476\\
+-1.0581 1.3358\\
+-1.0539 1.3239\\
+-1.0499 1.312\\
+-1.0461 1.3\\
+-1.0424 1.288\\
+-1.0388 1.276\\
+-1.0354 1.2639\\
+-1.0322 1.2517\\
+-1.0291 1.2396\\
+-1.0262 1.2273\\
+-1.0234 1.2151\\
+-1.0208 1.2028\\
+-1.0183 1.1905\\
+-1.016 1.1781\\
+-1.0138 1.1657\\
+-1.0118 1.1533\\
+-1.01 1.1409\\
+-1.0083 1.1284\\
+-1.0067 1.116\\
+-1.0054 1.1035\\
+-1.0041 1.091\\
+-1.0031 1.0785\\
+-1.0022 1.0659\\
+-1.0014 1.0534\\
+-1.0008 1.0408\\
+-1.0004 1.0283\\
+-1.0001 1.0157\\
+-1 1.0031\\
+};
diff --git a/macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure_13.tikz b/macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure_13.tikz
new file mode 100644
index 0000000000..4699ba6263
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/figures/mymatlabgroupfigure_13.tikz
@@ -0,0 +1,10 @@
+\addplot [plotstyle3]
+ table[row sep=crcr]{%
+0 0\\
+0 1\\
+1 2\\
+2 2\\
+2 1\\
+1 0\\
+0 0\\
+};
diff --git a/macros/latex/contrib/cora-macs/figures/mytikzfigure.tikz b/macros/latex/contrib/cora-macs/figures/mytikzfigure.tikz
new file mode 100644
index 0000000000..5364ec4542
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/figures/mytikzfigure.tikz
@@ -0,0 +1,5 @@
+\begin{tikzpicture}
+ \draw[CORAcolorBlue] (-6,0) rectangle (-4,2);
+ \draw[CORAcolorRed] (-2,1) circle (1cm);
+ \draw[CORAcolorYellow] (0,0) -- (0,1) -- (1,2) -- (2,2) -- (2,1) -- (1,0) -- (0,0);
+\end{tikzpicture} \ No newline at end of file
diff --git a/macros/latex/contrib/cora-macs/figures/neural-network.tikz b/macros/latex/contrib/cora-macs/figures/neural-network.tikz
new file mode 100644
index 0000000000..aa13942d13
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/figures/neural-network.tikz
@@ -0,0 +1,7 @@
+\begin{tikzpicture}
+ % draw network
+ \pic[] at (0,0) { nn={3}{2,5,5,2}{0.15cm}{0.02cm} };
+
+ % label the third node in the second layer with a '#'
+ \node also [neuron label={\#}] (l2-3);
+\end{tikzpicture} \ No newline at end of file
diff --git a/macros/latex/contrib/gratzer-color-scheme/Gratzer-Color-Scheme.sty b/macros/latex/contrib/gratzer-color-scheme/Gratzer-Color-Scheme.sty
new file mode 100644
index 0000000000..61708048be
--- /dev/null
+++ b/macros/latex/contrib/gratzer-color-scheme/Gratzer-Color-Scheme.sty
@@ -0,0 +1,55 @@
+% Gratzer-Color-Scheme.sty Version 1.0
+% Distributed under the LaTeX Project Public Licence 1.3c
+\ProvidesPackage{Gratzer-Color-Scheme}
+
+% Load necessary packages
+\RequirePackage{xcolor} % For coloring text
+\RequirePackage{amsthm} % For theorem environment customization
+
+% Define color styles for each environment
+\newtheoremstyle{redStyle} % name
+ {} % Space above
+ {} % Space below
+ {\color{red}} % Body font
+ {} % Indent amount
+ {\bfseries\color{red}} % Theorem head font
+ {.} % Punctuation after theorem head
+ { } % Space after theorem head
+ {} % Theorem head spec
+
+\newtheoremstyle{blueStyle}
+ {}
+ {}
+ {\color{blue}}
+ {}
+ {\bfseries\color{blue}}
+ {.}
+ { }
+ {}
+
+\newtheoremstyle{darkGreenStyle}
+ {}
+ {}
+ {\color{darkgreen}}
+ {}
+ {\bfseries\color{darkgreen}}
+ {.}
+ { }
+ {}
+
+% Define dark green color if not predefined
+\definecolor{darkgreen}{rgb}{0.0, 0.5, 0.0}
+
+% Apply styles to theorem-like environments
+\theoremstyle{redStyle}
+\newtheorem{theorem}{Theorem}
+\newtheorem{corollary}{Corollary}
+
+\theoremstyle{blueStyle}
+\newtheorem{lemma}{Lemma}
+\newtheorem{proposition}{Proposition}
+
+\theoremstyle{darkGreenStyle}
+\newtheorem{definition}{Definition}
+
+\endinput
diff --git a/macros/latex/contrib/gratzer-color-scheme/README.txt b/macros/latex/contrib/gratzer-color-scheme/README.txt
new file mode 100644
index 0000000000..8956c36fe1
--- /dev/null
+++ b/macros/latex/contrib/gratzer-color-scheme/README.txt
@@ -0,0 +1,11 @@
+Introduces the Grätzer-Color-Scheme, Version 1.0, for math publications.
+
+Invoke it with
+
+\usepackage{Gratzer-Color-Scheme}
+
+It colors theorems and corollaries red; lemmas, propositions blue; definitions green.
+See example.tex and example.pdf for an illustration.
+
+Author: George Grätzer.
+Distributed under the LaTeX Project Public Licence 1.3c \ No newline at end of file
diff --git a/macros/latex/contrib/gratzer-color-scheme/example.pdf b/macros/latex/contrib/gratzer-color-scheme/example.pdf
new file mode 100644
index 0000000000..986358895e
--- /dev/null
+++ b/macros/latex/contrib/gratzer-color-scheme/example.pdf
Binary files differ
diff --git a/macros/latex/contrib/gratzer-color-scheme/example.tex b/macros/latex/contrib/gratzer-color-scheme/example.tex
new file mode 100644
index 0000000000..7087e69387
--- /dev/null
+++ b/macros/latex/contrib/gratzer-color-scheme/example.tex
@@ -0,0 +1,51 @@
+\documentclass{amsart}
+\usepackage{amssymb,latexsym}
+\usepackage{amsmath}
+\usepackage{graphicx}
+\usepackage{enumerate}
+\usepackage{gensymb}
+\usepackage{Gratzer-Color-Scheme}
+
+
+\begin{document}
+\title{Example file for Gratzer-Color-Scheme}
+
+\author[G.\ Gr\"atzer]{George Gr\"atzer}
+
+\keywords{$\mathcal{C}_1$-diagrams, slim planar semimodular lattice}
+
+\maketitle
+
+\begin{definition}
+%Definition~\ref{D:well}
+A diagram of an SPS lattice $L$ is a
+\emph{${C}_1$-diagram} if the middle edge of any cover-preserving $7$ is steep
+and all other edges are normal.
+\end{definition}
+
+\begin{theorem}\label{T:well}
+%Theorem~\ref{T:well}
+Every slim, planar, semimodular lattice $L$ has a ${C}_1$-diagram.
+\end{theorem}
+
+\begin{corollary}
+The principal ideals are distributive.
+\end{corollary}
+
+\begin{proof}
+Let $K$ be represented.
+\end{proof}
+
+\begin{lemma}
+$K$ is a lattice.
+\end{lemma}
+
+\begin{proof}
+Obvious.
+\end{proof}
+
+\begin{proposition}
+$K$ is not a lattice.
+\end{proposition}
+
+\end{document}