-
-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathinstall-dune.sh
More file actions
executable file
·89 lines (69 loc) · 2.96 KB
/
install-dune.sh
File metadata and controls
executable file
·89 lines (69 loc) · 2.96 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#!/usr/bin/env bash
set -ex
# Make a folder to collect all DUNE-related code
mkdir -p dune-dumux && cd dune-dumux
# Modules used by DUNE and DuMux
# While the installdumux.py script clones these as well,
# we explicitly clone them to control the versions.
if [ ! -d "dune-common/" ]; then
git clone --depth 1 --branch v2.9.1 https://gitlab.dune-project.org/core/dune-common.git
fi
if [ ! -d "dune-istl/" ]; then
git clone --depth 1 --branch v2.9.1 https://gitlab.dune-project.org/core/dune-istl.git
fi
if [ ! -d "dune-localfunctions/" ]; then
git clone --depth 1 --branch v2.9.1 https://gitlab.dune-project.org/core/dune-localfunctions.git
fi
if [ ! -d "dune-grid/" ]; then
git clone --depth 1 --branch v2.9.1 https://gitlab.dune-project.org/core/dune-grid.git
fi
if [ ! -d "dune-geometry/" ]; then
git clone --depth 1 --branch v2.9.1 https://gitlab.dune-project.org/core/dune-geometry.git
fi
if [ ! -d "dune-foamgrid/" ]; then
# The missing v in the tag in this module originates from the project itself
git clone --depth 1 --branch 2.9.1 https://gitlab.dune-project.org/extensions/dune-foamgrid.git
fi
if [ ! -d "dune-functions/" ]; then
git clone --depth 1 --branch v2.9.1 https://gitlab.dune-project.org/staging/dune-functions.git
fi
if [ ! -d "dune-typetree/" ]; then
git clone --depth 1 --branch v2.9.1 https://gitlab.dune-project.org/staging/dune-typetree.git
fi
if [ ! -d "dune-uggrid/" ]; then
git clone --depth 1 --branch v2.9.1 https://gitlab.dune-project.org/staging/dune-uggrid.git
fi
# Get the dune-elastodynamics module (solid solver for the plain dune adapter)
if [ ! -d "dune-elastodynamics/" ]; then
git clone --depth 1 --branch master https://github.com/maxfirmbach/dune-elastodynamics.git
fi
(
cd dune-elastodynamics
git pull
)
# Get the plain DUNE-preCICE adapter
if [ ! -d "dune-adapter/" ]; then
git clone --depth 1 --branch main https://github.com/precice/dune-adapter.git
fi
(
cd dune-adapter/dune-precice
git pull
)
./dune-common/bin/dunecontrol all
# Get DuMux and the DuMux-preCICE adapter
if [ ! -d "dumux/" ]; then
git clone --depth 1 --branch releases/3.8 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git
fi
# Build DuMux
CMAKE_FLAGS="$CMAKE_FLAGS -DCMAKE_DISABLE_FIND_PACKAGE_Kokkos=TRUE" ./dune-common/bin/dunecontrol --only=dumux all
if [ ! -d "dumux-adapter/" ]; then
git clone --depth 1 --branch v2.0.0 https://github.com/precice/dumux-adapter.git
fi
# Build the DuMux-preCICE adapter
CMAKE_FLAGS="$CMAKE_FLAGS -DCMAKE_DISABLE_FIND_PACKAGE_Kokkos=TRUE" ./dune-common/bin/dunecontrol --only=dumux-precice all
# Set the DUNE_CONTROL_PATH (DUNE recursively finds modules in this directory)
echo "export DUNE_CONTROL_PATH=\"\${HOME}/dune-dumux\"" >> ~/.bashrc
# Copy the built example code to the tutorials
cp ~/dune-dumux/dune-adapter/dune-precice-howto/build-cmake/examples/dune-perpendicular-flap ~/tutorials/perpendicular-flap/solid-dune
# We are done with DUNE, let's do back home
cd ~