Skip to content
Snippets Groups Projects
Commit 1f6290ad authored by Thomas Fetzer's avatar Thomas Fetzer
Browse files

[install] Add install script and information

parent ec2a5717
No related branches found
No related tags found
No related merge requests found
@MastersThesis{Fetzer2012a,
author = {Thomas Fetzer},
title = {{Numerical analysis of the influence of turbulence on exchange processes between porous-medium and free flow}},
school = {University of Stuttgart},
year = {2012},
type = {Diploma Thesis},
abstract = {Flow and transport processes in domains composed of a porous medium and an adjacent free-flow region appear in a wide range of industrial, medical and environmental appli- cations. One fundamental example is the evaporation from unsaturated soil under the influence of atmospheric processes. In a preliminary work, Stokes flow and isothermal conditions have been applied to simulate these evaporation processes. However, there is a discrepancy between the simulated evaporation rates and rates which have been measured in laboratory experiments. The main goal of this thesis is to extend the given model to turbulent conditions. For this purpose averaged turbulence models, such as Reynolds-averaged Navier-Stokes are reviewed and discussed for their applicability and limitations. Suitable concepts are implemented in the existing DuMux framework. Infirst step the implemented models will be applied to a pipe flow test case. Then the ef- fects on the transport behavior of water vapor across the soil-atmosphere interface will be analyzed and discussed. Finally simulations will be compared to evaporation data measured in wind tunnel experiments in cooperation with the research unit MUSIS and the group of Dani Or at the Institute of terrestrial ecosystems, ETH Z ̈ urich.},
}
Summary
=======
This is the DuMuX module containing the code for producing the results
published in:
T. Fetzer<br>
Numerical analysis of the influence of turbulence on exchange processes between porous-medium and free flow<br>
Diploma Thesis, 2012<br>
Universität Stuttgart
You can use the .bib file provided [here](Fetzer2012a.bib).
Installation
============
**Pleas note:**
The script only retrieves the necessary code bases.
Compiling executables will not work due to issues in automake and SuperLU (tried on 2017-11-16).
The easiest way to install this module is to create a new folder and to execute the file
[installFetzer2012a.sh](https://git.iws.uni-stuttgart.de/dumux-pub/Fetzer2015a/raw/master/installFetzer2012a.sh)
in this folder.
```bash
mkdir -p Fetzer2012a && cd Fetzer2012a
wget -q https://git.iws.uni-stuttgart.de/dumux-pub/Fetzer2012a/raw/master/installFetzer2012a.sh
sh ./installFetzer2012a.sh
# path to external modules
EXTDIR=
GXX_WARNING_OPTS="\
-Wall \
-Wunused \
-Wmissing-include-dirs \
-Wno-cast-align \
-Wno-sign-compare \
-Wno-unused-parameter"
# additional -W flags for g++ which will lead to many warnings in
# other dune modules
# -Wextra \
# -Wfloat-equal \
# -Wstrict-overflow \
GXX_OPTS="\
-fno-strict-aliasing \
-fstrict-overflow \
-std=c++11 \
-g -O2"
# FLAGS FOR AUTOMAKE
CONFIGURE_FLAGS="\
CC=/usr/bin/gcc-4.8 \
CXX=/usr/bin/g++-4.8 \
CXXFLAGS=\"${GXX_WARNING_OPTS} ${GXX_OPTS}\" \
--with-ug=$EXTDIR/ug-3.11.0 \
--with-lopenblas \
--enable-parallel \
--disable-documentation \
--disable-mpiruntest"
#!/bin/sh
### Create a folder for the dune and dumux modules
### Go into the folder and execute this script
### Clone the necessary modules
git clone -b releases/2.3 https://gitlab.dune-project.org/core/dune-common.git
git clone -b releases/2.3 https://gitlab.dune-project.org/core/dune-geometry.git
git clone -b releases/2.3 https://gitlab.dune-project.org/core/dune-grid.git
git clone -b releases/2.3 https://gitlab.dune-project.org/core/dune-istl.git
git clone -b releases/2.3 https://gitlab.dune-project.org/core/dune-localfunctions.git
git clone -b releases/2.0 https://gitlab.dune-project.org/pdelab/dune-pdelab.git
git clone -b releases/2.3 https://gitlab.dune-project.org/staging/dune-typetree.git
git clone -b v3.12.1 https://gitlab.dune-project.org/staging/dune-uggrid.git external/ug-3.12.1
git clone -b releases/2.3 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git dumux
git clone git@git.iws.uni-stuttgart.de:dumux-repositories/dumux-devel-old.git dumux-devel
cd dumux-devel && git checkout 248d5967a1932dd4cf794e19fab213da148ef0b7 && cd ..
git clone https://git.iws.uni-stuttgart.de/dumux-pub/Fetzer2012a.git dumux-Fetzer2012a
### EXTERNAL MODULES: UG is required
cd external/ug-3.12.1
autoreconf -is
OPTIM_FLAGS="-O3 -DNDEBUG -march=native -finline-functions -funroll-loops"
# debug flags
if test "$ENABLE_DEBUG" == "y"; then
OPTIM_FLAGS="-O0 -g2"
fi
CFLAGS="$OPTIM_FLAGS"
CXXFLAGS="$OPTIM_FLAGS -std=c++0x -fno-strict-aliasing"
OPTS="--enable-dune --prefix=$PWD"
if test "$ENABLE_MPI" == "y"; then
OPTS="$OPTS --enable-parallel MPICC=$MPICXX"
else
OPTS="$OPTS --without-mpi"
fi
./configure \
CC=g++ \
CFLAGS="$CFLAGS" \
CXXFLAGS="$CXXFLAGS" \
$OPTS
make
make install
### run dunecontrol
pwd > temp.txt
sed -i 's/\//\\\//g' temp.txt
EXTPATH=`cat temp.txt`
/usr/bin/rm temp.txt
sed "s/EXTDIR=.*/EXTDIR=$EXTPATH\/external/" dumux-Fetzer2012a/automake.opts > dumux-Fetzer2012a/automake_used.opts
./dune-common/bin/dunecontrol --opts=dumux-Fetzer2012a/automake_used.opts all
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment