# Performance analysis of Surrogates for Non-Linear heat equation

## Project for class: Computational Foundations of Digital-Twin Technologies

## Installation

As a numerical solver, mainly FEniCSx was used and installed via conda.
All the calculations were performed on a Linux machine. FEniCSx offers some beta versions for Windows support, but it is recommended to use WSL2 instead. Some issues arose with a macOS and therefore an additional docker container was created. This was not tested and therefore cannot be guaranteed to work properly.

```
conda create --name IceMelting python=3.10 -y
conda activate IceMelting2
conda install -c conda-forge fenics-dolfinx=0.8.0 mpich=4.2.1 pyvista=0.43.10 -y
conda install -c conda-forge deepxde==1.12.2 -y
pip install tensorflow==2.18.0 tensorflow_probability==0.25.0 tf_keras==2.18.0
```

### Alternative installation

Use the "environment.yml" file to install all necessary environments

```
conda env create -f environment.yml
```

### macOS installation using Docker

```
docker compose build
docker compose run solver
```

## Contact

### Author

- Jan Habscheid
- <Jan.Habscheid@rwth-aachen.de>