0_dumux-handbook.tex 5.41 KB
Newer Older
1
\documentclass[11pt,a4paper,headinclude,footinclude,DIV16]{scrreprt}
Thomas Fetzer's avatar
Thomas Fetzer committed
2
\usepackage[usenames,dvipsnames,table]{xcolor} % include at beginning because of compitibility issues
3
\usepackage[english]{babel}
Thomas Fetzer's avatar
Thomas Fetzer committed
4
\usepackage[utf8]{inputenc}
5
\usepackage[automark]{scrlayer-scrpage}
Thomas Fetzer's avatar
Thomas Fetzer committed
6
\usepackage[normalem]{ulem}
Bernd Flemisch's avatar
Bernd Flemisch committed
7
8
\usepackage{amsmath}
\usepackage{amsfonts}
9
\usepackage{amssymb}
10
\usepackage{booktabs}
Thomas Fetzer's avatar
Thomas Fetzer committed
11
12
\usepackage{enumerate}
\usepackage{hyperref}
Bernd Flemisch's avatar
Bernd Flemisch committed
13
\usepackage{graphicx}
14
\usepackage{mhchem}
15

Thomas Fetzer's avatar
Thomas Fetzer committed
16
\usepackage{listings}
17
\usepackage[square,numbers]{natbib}
18
19
\usepackage{pdflscape}
\usepackage{rotating}
Thomas Fetzer's avatar
Thomas Fetzer committed
20
\usepackage{subfig}
21
\usepackage{tabularx}
Thomas Fetzer's avatar
Thomas Fetzer committed
22
23
\usepackage{theorem}
\usepackage{tikz}
Thomas Fetzer's avatar
Thomas Fetzer committed
24
\usepackage{tikz-qtree}
Thomas Fetzer's avatar
Thomas Fetzer committed
25
26
27
\usepackage{units}
\usepackage{url}
\usepackage{xspace}
28
\usepackage{accsupp}
Thomas Fetzer's avatar
Thomas Fetzer committed
29
\hypersetup{bookmarksdepth=3}
Thomas Fetzer's avatar
Thomas Fetzer committed
30
31
32
33
34
35
36
37
\usetikzlibrary{arrows}
\usetikzlibrary{backgrounds}
\usetikzlibrary{decorations.pathmorphing}
\usetikzlibrary{fit}
\usetikzlibrary{patterns}
\usetikzlibrary{positioning}
\usetikzlibrary{shapes}
\usetikzlibrary{trees}
Thomas Fetzer's avatar
Thomas Fetzer committed
38
\include{0_listingstyle}
Thomas Fetzer's avatar
Thomas Fetzer committed
39
40
41

\DeclareGraphicsExtensions{.pdf, .jpg}

Thomas Fetzer's avatar
Thomas Fetzer committed
42
% Dune and Dumux logo
Thomas Fetzer's avatar
Thomas Fetzer committed
43
44
\newcommand{\Dune}{{DUNE}\xspace}
\newcommand{\Dumux}{\texorpdfstring{Du\-Mu$^\text{x}$\xspace}{DuMuX\xspace}}
45
46
\newcommand{\DumuxVersion}{3.4}
\newcommand{\DumuxOldVersion}{3.3}
Thomas Fetzer's avatar
Thomas Fetzer committed
47
48
\definecolor{dumuxYellow}{HTML}{E19417}
\definecolor{dumuxBlue}{HTML}{0C73CF}
Thomas Fetzer's avatar
Thomas Fetzer committed
49

Thomas Fetzer's avatar
Thomas Fetzer committed
50
% sytles
Thomas Fetzer's avatar
Thomas Fetzer committed
51
\newcommand{\nextline}{\par\phantom{a}\vspace*{0.1\textwidth}}
Thomas Fetzer's avatar
Thomas Fetzer committed
52
\newcommand{\snakeline}{\uwave{\mbox{}}}
53
\DeclareRobustCommand\Cplusplus{\texorpdfstring{C\nolinebreak[4]\hspace{-.05em}\raisebox{.4ex}{\tiny\bfseries ++}\xspace}{C++}}
Thomas Fetzer's avatar
Thomas Fetzer committed
54

Thomas Fetzer's avatar
Thomas Fetzer committed
55
% notation
56
57
58
\newcommand{\porosity}{\phi}
\newcommand{\saturation}{S}

Thomas Fetzer's avatar
Thomas Fetzer committed
59
% a new counter you can give a label to it and thus reference it
60
% syntax: \numberThis{printedTextToBeLabeled}{label}
Bernd Flemisch's avatar
Bernd Flemisch committed
61
62
63
64
65
66
67
68
69
70
71
72
73
% if you wanted a \newline after a numbered thing, you could just add a empty line after ``\label{#2}''
\newcounter{thingCounter}
\renewcommand{\thethingCounter}{\arabic{thingCounter}}
\newcommand{\numberThis}[2]{%
        \refstepcounter{thingCounter}%
        \thethingCounter.\ #1 \label{#2}
}

%The theorems
\theorembodyfont{\upshape}
\theoremheaderfont{\sffamily\bfseries}
\newtheorem{lst}{Listing}

74
\DeclareMathOperator{\grad}{\mathbf{grad}}
Bernd Flemisch's avatar
Bernd Flemisch committed
75
76
\DeclareMathOperator{\curl}{curl}
\DeclareMathOperator{\Div}{div}
77
\newcommand{\meas}[1]{\lvert{#1}\rvert}
Bernd Flemisch's avatar
Bernd Flemisch committed
78
79
80
81
82

\pagestyle{scrheadings}

\title{
\begin{center}
83
\includegraphics[width=0.7\textwidth]{../logo/dumux_logo_hires_whitebg.png}
Bernd Flemisch's avatar
Bernd Flemisch committed
84
85
86
87
88
89
90
\\[3cm]
{\Huge Handbook}
\end{center}
}

\author{}

91
92
\date{Version \DumuxVersion, \\
Handbook version from \today}
Bernd Flemisch's avatar
Bernd Flemisch committed
93
94
95
96
97
98
99

\publishers{%
\vspace{10mm}
{\normalsize Lehrstuhl f\"ur Hydromechanik und Hydrosystemmodellierung, \\
Universit\"at Stuttgart, Paffenwaldring 61, D-70569 Stuttgart, Germany}\\
%
\bigskip
Bernd Flemisch's avatar
Bernd Flemisch committed
100
{\normalsize \texttt{\url{http://dumux.org}}}\\
Bernd Flemisch's avatar
Bernd Flemisch committed
101
102
103
104
105
106
}

\begin{document}

\maketitle

Thomas Fetzer's avatar
Thomas Fetzer committed
107
\setcounter{tocdepth}{1}
Bernd Flemisch's avatar
Bernd Flemisch committed
108
\tableofcontents
Thomas Fetzer's avatar
Thomas Fetzer committed
109
\newpage
Thomas Fetzer's avatar
Thomas Fetzer committed
110
111

\chapter{Introduction}
Thomas Fetzer's avatar
Thomas Fetzer committed
112
\input{1_introduction}
Thomas Fetzer's avatar
Thomas Fetzer committed
113

114
\chapter{Quick Start}\label{quick-install}
115
In this chapter, we provide a quick start guide to
116
117
your first \Dumux experience, including an install script with all necessary instructions
on how to very quickly install the latest release version of \Dumux.
118
119
You should have a recent working Linux environment.
If you need more information, please have a look at the detailed installation
120
instructions in chapter \ref{detailed-install}.
Thomas Fetzer's avatar
Thomas Fetzer committed
121
\input{2_quickinstall}
122
123
124
125
126

\chapter{Detailed Installation, Documentation, and Externals}\label{detailed-install}
In this chapter, we provide more detailed information on how to obtain source code, build and test \Dune and \Dumux.
It further contains information on
how to build the documentation and about external libraries and modules.
Beatrix Becker's avatar
Beatrix Becker committed
127
\input{3_detailedinstall}
Thomas Fetzer's avatar
Thomas Fetzer committed
128

129
\chapter{Learning to use \Dumux}\label{chp:tutorial}
130
131
132
133
134
135
136
137
So, you've downloaded your very own copy of \Dumux and its dependencies.
You've run dunecontrol, and your example ``test$\_$dumux" not only compiles,
but it even shows a nice simulation in ParaView.
Maybe you've read through parts of the handbook, and even started looking
through the Doxygen documentation.
Well done. What now? \par
%
\textit{``How on earth is this going to help me solve my multi-(phase, component,
138
  scale, physics) flow and transport problems in porous media systems?''}, you begin to wonder.
139
140
Don't panic! In order to best ease our prospective users and developers into the
wonderful \Dumux simulation environment, we've prepared a \Dumux course and extensively-documented examples.
Beatrix Becker's avatar
Beatrix Becker committed
141
\input{4_course}
142
\input{4_examples}
Beatrix Becker's avatar
Beatrix Becker committed
143
\input{4_furtherpractice}
Thomas Fetzer's avatar
Thomas Fetzer committed
144
145

\chapter{Overview and Infrastructure}
146
This chapter provides an overview of the general structure in \Dumux (\ref{sc_structure})
Thomas Fetzer's avatar
Thomas Fetzer committed
147
and gives help for basic work with \Dumux
148
(\ref{sc_newfoldersetup}-\ref{sc_developingdumux}).
149
Further, it presents useful external tools (\ref{sc_externaltools}) and basic
150
concepts (\ref{sc_linearsystem}).
Beatrix Becker's avatar
Beatrix Becker committed
151
152
153
154
155
156
\input{5_structure}
\input{5_newfoldersetup}
\input{5_parameterfiles}
\input{5_restartsimulations}
\input{5_developingdumux}
\input{5_externaltools}
157
\input{5_scripts}
Beatrix Becker's avatar
Beatrix Becker committed
158
\input{5_assemblinglinearsystem}
Thomas Fetzer's avatar
Thomas Fetzer committed
159
160
161
162

\chapter{Advanced \Dumux\ -- Detailed Instructions}
This chapter contains detailed information for those who are interested
in deeper modifications of underlying \Dumux models, classes, functions, etc.
Beatrix Becker's avatar
Beatrix Becker committed
163
164
165
166
167
168
169
\input{6_basics}
\input{6_temporaldiscretizations}
\input{6_spatialdiscretizations}
\input{6_stepsofasimulation}
\input{6_propertysystem}
\input{6_inputoutput}
\input{6_parallel}
Bernd Flemisch's avatar
Bernd Flemisch committed
170

171
\bibliographystyle{plainnat}
Bernd Flemisch's avatar
Bernd Flemisch committed
172
173
\bibliography{dumux-handbook}
\end{document}