Commit db599111 authored by Timo Koch's avatar Timo Koch

Merge branch 'feature/handbool-spellchecl' into 'master'

Feature/handbool spellchecl

See merge request !1452
parents 522483f2 0b335e01
......@@ -5,7 +5,7 @@ Installing \Dumux means that you first unpack \Dune and \Dumux in a root directo
(section \ref{sc:ObtainingSourceCode}).
In a second step of the installation, all modules are configured with CMake
(section \ref{buildIt}).
After successfull installation of \Dumux we guide you to start a test application,
After successful installation of \Dumux we guide you to start a test application,
described in section \ref{quick-start-guide}.
In section \ref{sec:build-doxy-doc} we explain how to build the \Dumux documentation.
Lastly, section \ref{sec:external-modules-libraries} provides details on optional libraries and modules.
......@@ -23,8 +23,8 @@ dune-istl and dune-localfunctions. For working with \Dumux, these modules are re
All \Dune modules, including the \Dumux module, get extracted into a common root directory, as it
is done in an ordinary \Dune installation.
We usually name our root directory \texttt{DUMUX} but an arbitrary name can be chosen.
Source code files for each \Dune module are contained in their own subdirectory within the root directory.
The subdirectories for the modules are named after the module names (depending on how
Source code files for each \Dune module are contained in their own sub-directory within the root directory.
The sub-directories for the modules are named after the module names (depending on how
the modules were obtained a version number is added to the module name).
The name of each \Dune module is defined in the file \texttt{dune.module}, which is
in the root directory of the respective module. This should not be changed by the user.
......@@ -142,7 +142,7 @@ on the Dune grid interface, act similar.
\label{buildIt}
Configuring \Dune and \Dumux is done by the shell-command \texttt{dunecontrol} which is part of the \Dune build system.
If you are interested in more details about the build system that is used,
they can be found in the \Dune buildsystem documentation\footnote{\url{https://www.dune-project.org/buildsystem/}} and
they can be found in the \Dune build system documentation\footnote{\url{https://www.dune-project.org/buildsystem/}} and
CMake's documentation\footnote{\url{https://cmake.org/documentation/}}.
If something fails during the execution of \texttt{dunecontrol} feel free to report it to the \Dune or \Dumux developer mailing list,
but please include error details.
......@@ -181,7 +181,7 @@ to avoid confusing it with the option files which came out of the distribution.
The previous section showed how to install and compile \Dumux. This section
shall give a very brief introduction how to run a first test application and how
to visualize the first output files.\par
All executables are compiled in the \texttt{build} subdirectories of \Dumux.
All executables are compiled in the \texttt{build} sub-directories of \Dumux.
If not specified differently in the options file, this is \texttt{build-cmake} as default.
\begin{enumerate}
......@@ -193,7 +193,7 @@ If not specified differently in the options file, this is \texttt{build-cmake} a
type \texttt{./test{\_}2p{\_}incompressible{\_}tpfa params.input}
into the console.
The added \texttt{params.input} specifies that all
important run-time parameters (like first timestep size, end of simulation and location
important run-time parameters (like first time step size, end of simulation and location
of the grid file) can be found in a text file in the same directory with the
name \texttt{params.input}.
\item The simulation starts and produces some .vtu output files and also a .pvd
......@@ -266,16 +266,16 @@ and some more libraries and tools which are prerequisites for their use.
of choice for simulating structures such as foams, discrete fracture networks,
or network flow problems.
Download: \url{https://gitlab.dune-project.org/extensions/dune-foamgrid}
\item \textbf{opm-grid}: opm-grid is a DUNE module supporting grids in a corner-point format.
Download: \url{https://github.com/OPM/opm-grid.git}
\item \textbf{dune-subgrid}: The dune-subgrid module is a meta-grid implementation that allows
\item \textbf{dune-subgrid}: The dune-subgrid module is a meta-grid implementation that allows
to mark elements of another hierarchical dune grid and use this sub-grid just like a regular grid.
The set of marked elements can then be accessed as a hierarchical dune grid in its own right.
Dune-Subgrid provides the full grid interface including adaptive mesh refinement.
Download: \url{https://git.imp.fu-berlin.de/agnumpde/dune-subgrid.git}
\item \textbf{dune-spgrid}: The DUNE module dune-spgrid provides a structured, parallel grid
and supports periodic boundary conditions.
Download: \url{https://gitlab.dune-project.org/extensions/dune-spgrid.git}
......@@ -284,7 +284,7 @@ and supports periodic boundary conditions.
library for the direct solution of large, sparse, non-symmetric systems of linear equations.
Download: \url{http://crd.lbl.gov/~xiaoye/SuperLU}
\item \textbf{UMFPack}: External library for solving linear equeations. It is part of SuiteSparse.
\item \textbf{UMFPack}: External library for solving linear equations. It is part of SuiteSparse.
\item \textbf{dune-UG}: External library for use as grid. UG is a toolbox for unstructured grids, released under GPL.
To build UG the tools \texttt{lex}/\texttt{yacc} or the GNU variants of \texttt{flex}/\texttt{bison} must be provided.
......
......@@ -33,7 +33,7 @@ More details about the build-system can be found in section \ref{buildIt}.
\subsection{A first test run of \Dumux}
When the \texttt{installDumux.sh} script from the subsection above has run successfully, you can execute a second script that
will compile and run a simple one-phase ground water flow example and will visualize the result using paraview.
will compile and run a simple one-phase ground water flow example and will visualize the result using ParaView.
The test script can be obtained by copying the following lines into a text-file named \texttt{test\_dumux.sh}
that has to be located in the same directory as the installation script.
\begin{lstlisting}[style=DumuxCode]
......@@ -43,4 +43,4 @@ make -B test_1pcctpfa
paraview *pvd
\end{lstlisting}
The script \texttt{test\_dumux.sh} can be executed by typing into the terminal: \texttt{./test\_dumux.sh}.
If everything works fine, a paraview window with the result should open automatically.
If everything works fine, a ParaView window with the result should open automatically.
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.
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,
\textit{``How on earth is this going to help me solve my multi-(phase, component,
scale, physics) flow and transport problems in porous media systems?''}, you begin to wonder.
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.
wonderful \Dumux simulation environment, we've prepared a \Dumux course.
This course is offered once a year over a period of 3 days at the University of Stuttgart.
If you're looking for information on attending, subscribe to the \Dumux mailing list
If you're looking for information on attending, subscribe to the \Dumux mailing list
and stay tuned for updates:
\url{https://listserv.uni-stuttgart.de/mailman/listinfo/dumux}. \par
%
\textit{``But the course won't take place for another 6 months!"} and,
\textit{``I want to start developing a numerical model of my challenging and
interesting process now!"}, you think.
Not a problem. The course materials are all shared online in their own
git repository. A series of beginner-level exercises are explained
\textit{``But the course won't take place for another 6 months!"} and,
\textit{``I want to start developing a numerical model of my challenging and
interesting process now!"}, you think.
Not a problem. The course materials are all shared online in their own
git repository. A series of beginner-level exercises are explained
such that you can see how a model is developed in \Dumux. As a teaser, we've
also included a suite of examples from hot topics we're working on. Models
exploring ``Coupling free flow and porous-media flow", ``Flow in fractured
porous media" and ``Fluid-solid phase change" are all introduced. \par
%
%
\textit{``Sounds great, but where is this material? I can't find it within
what I've downloaded."}, you question.
what I've downloaded."}, you question.
The \Dumux course material is available online:
\url{https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-course}. \par
In order to download this repository, which acts as an additional module to
In order to download this repository, which acts as an additional module to
the \Dumux base, you can download an installation script with the following command:
\begin{lstlisting}[style=Bash]
$ wget https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-course/raw/releases/3.0/scripts/install.sh
\end{lstlisting}
This script will install \texttt{dumux}, it's Dune dependencies, and the \texttt{dumux-course}
repository. Within the directory \texttt{dumux-course} there are a series of exercises
This script will install \texttt{dumux}, it's Dune dependencies, and the \texttt{dumux-course}
repository. Within the directory \texttt{dumux-course} there are a series of exercises
and slides describing the previously described examples. \par
%
The \Dumux course will be updated with each \Dumux release.
......
......@@ -8,7 +8,7 @@ cases can be found in the class documentation \url{http://www.dumux.org/document
% There you also find a \emph{feature-list} for the individual tests.%TODO
Another possibility to gain more experience with \Dumux is the \texttt{dumux-lecture} module
that contains different application examples that are used in the lectures at the
that contains different application examples that are used in the lectures at the
Department of Hydromechanics and Modelling of Hydrosystems in Stuttgart.
The \texttt{dumux-lecture} module can be obtained as follows:
\begin{lstlisting}[style=Bash]
......@@ -17,29 +17,29 @@ $ git clone https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-lecture.gi
% TODO: remove again as soon as invalid:
Note that \texttt{dumux-lecture} is currently only compatible with the \Dumux release 2.12.
The module is structured based on the different lectures:
The module is structured based on the different lectures:
\begin{itemize}
\item mm: Multiphase Modelling,
\item efm: Environmental Fluid Mechanics,
\item mhs: Modelling of Hydrosystems.
\end{itemize}
The majority of applications is covered in the course Multiphase Modelling (mm),
The majority of applications is covered in the course Multiphase Modelling (mm),
while there are also some basic examples from the
courses Environmental Fluid Mechanics (efm) and Modelling of Hydrosystems (mhs).
courses Environmental Fluid Mechanics (efm) and Modelling of Hydrosystems (mhs).
These applications are primarily designed to enhance the understanding of conceptualizing the
governing physical processes and their implementation in a numerical simulator.
Different aspects of modelling multi-phase multi-component flow and transport processes are shown.
The lectures focus on questions like, e. g., the assignment of boundary conditions, the choice of the
governing physical processes and their implementation in a numerical simulator.
Different aspects of modeling multi-phase multi-component flow and transport processes are shown.
The lectures focus on questions like, e. g., the assignment of boundary conditions, the choice of the
appropriate physics for a given problem (which phases, which components), discretization issues,
time stepping. You can find, e. g., a comparison of different two-phase flow problems: The
more simple approach considers two immiscible fluids while components in both phases with interphase
more simple approach considers two immiscible fluids while components in both phases with inter-phase
mass transfer are considered in the more complex approach.
All scenarios and their physical background are explained in additional .tex-files,
which are provided in sub-directories named \texttt{description}. The following test cases are
which are provided in sub-directories named \texttt{description}. The following test cases are
contained in the \texttt{dumux-lecture} module:
\begin{itemize}
\item \texttt{buckleyleverett}: The Buckley-Leverett Problem is a classical porous media flow show case
\item \texttt{co2plume}: Analysis of the influence of the gravitational number on the $\text{CO}_2$ plume
\item \texttt{co2plume}: Analysis of the influence of the gravitational number on the $\text{CO}_2$ plume
\item \texttt{columnxylene}: A VEGAS experiment
\item \texttt{convectivemixing}: A test case related to CO$_2$ storage
\item \texttt{fuelcell}%TODO
......
......@@ -5,7 +5,7 @@
\paragraph{Issues and Bug Tracking}
The bug-tracking system \emph{GitLab Issues} offers the possibility to report bugs or discuss new development requests.
Feel free to register (if you don't have a \emph{Git} account already) and to constribute
Feel free to register (if you don't have a \emph{Git} account already) and to contribute
at \url{https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/issues}.
\paragraph{Commits, Merges, etc.}
......
......@@ -23,5 +23,5 @@ dune_add_test(NAME my_test
\end{lstlisting}
Here, we create an executable called \texttt{my\_test} from a source file \texttt{mainfile.cc}.
The name of the test will also be \texttt{my\_test} (has to be unique). The last argument specifies a command - here, we just run the executbable \texttt{my\_test} with an input file \texttt{params.input}. For more advanced uses of
The name of the test will also be \texttt{my\_test} (has to be unique). The last argument specifies a command - here, we just run the executable \texttt{my\_test} with an input file \texttt{params.input}. For more advanced uses of
the \texttt{add\_dune\_test} macro, have a look at the \texttt{test} directory. A complete documentation is given under \url{https://www.dune-project.org/sphinx/core-2.5/}.
......@@ -3,14 +3,14 @@
\Dumux has the following folder structure, which is similar to other \Dune modules.
\begin{itemize}
\item \texttt{bin}: binaries, e.g. used for the automatic testing, postprocessing, installation
\item \texttt{bin}: binaries, e.g. used for the automatic testing, post-processing, installation
\item \texttt{cmake}: the configuration options for building \Dumux
\item \texttt{doc}: files necessary for the Doxygen documentation and this handbook, and various logos
\item \texttt{dumux}: the main folder, containing the source files. see \ref{fig:dumux-structure}
for a visualized structure. For more information on the models have a look at the
Doxygen documentation.
\item \texttt{test}: tests for each numerical model and some functionality.
The structure is equivalent to the dumux folder, the \texttt{references} folder
The structure is equivalent to the \texttt{dumux} folder, the \texttt{references} folder
contains solutions for the automatic testing. Each test program consist of source
\texttt{*.cc}, the problem definition \texttt{*problem.hh}, and an input file \texttt{*.input}.
If necessary, spatially dependent parameters are defined in \texttt{*spatialparameters.hh}.
......@@ -106,7 +106,7 @@
needed for the constitutive relationships (e.g. Henry coefficient)};
]
[.\node[SecondLevel] {chemistry};
\node[ThirdLevel] {Files needed to account for, e.g. electrochemical processes as in a fuel cell.};
\node[ThirdLevel] {Files needed to account for, e.g. electro-chemical processes as in a fuel cell.};
]
[.\node[SecondLevel] {components};
\node[ThirdLevel] {Properties of a pure chemical substance (e.g. water)
......
......@@ -25,17 +25,17 @@ Gmsh is an open-source flexible grid generator for unstructured finite-element m
the provided GUI, we refer to the Gmsh documentation (\url{http://geuz.org/gmsh/doc/texinfo/gmsh.html}).
The MSH format can contain element and boundary markers defined on the grid. Thus, boundaries can be easily marked as, e.g., inflow boundaries
using Gmsh. Further, the format supports higher order elements. They can be used to create boundary parameterization supported by, e.g., the grid
using Gmsh. Further, the format supports higher order elements. They can be used to create boundary parametrization supported by, e.g., the grid
manager \texttt{UGGrid}.
An example can be found in \texttt{dumux/test\allowbreak/io/gridmanager}.
\subsubsection{Eclipse Grid Format}
The Eclipse Grid Format (GRDECL) is commonly used for corner-point grids.
The Eclipse Grid Format (GRDECL) is commonly used for corner-point grids.
Such grids consist of hexahedra, which are described by eight points on so-called pillars. A special feature of corner-point geometries is that points on pillars can degenerate, meaning that two neighboring points on a pillar can coincide. Furthermore, faces are, in general, bi-linear and cells can be non-convex. This allows for the accurate description of faults, layers, or wells, occurring in geological environments.
Furthermore, petrophysical properties can be defined (for each cell), by using eclipse-specific keywords, e.g. \texttt{PORO}, \texttt{PERMX}, \texttt{PERMY}.
Furthermore, petrophysical properties can be defined (for each cell), by using eclipse-specific keywords, e.g. \texttt{PORO}, \texttt{PERMX}, \texttt{PERMY}.
\Dumux supports the Eclipse Grid Format by using the \texttt{opm-grid} module (see (\url{https://opm-project.org}).
\Dumux supports the Eclipse Grid Format by using the \texttt{opm-grid} module (see (\url{https://opm-project.org}).
An example can be found in \texttt{dumux/test\allowbreak/porousmediumflow/2p/implicit/cornerpoint}.
\subsubsection{Other Grid Formats}
......
\section{Models}
Here the basic definitions, the general models concept, and a list of
models available in \Dumux are given. The actual differential equations
can be found in the localresiduals (see doxygen documentation of the
can be found in the local residuals (see Doxygen documentation of the
model's \texttt{LocalResidual} class).
\subsection{Basic Definitions and Assumptions}
The basic definitions and assumptions are made, using the example
of a three-phase three-component system water-NAPL-gas
\cite{A3:class:2002a}. The modification for other multicomponent
\cite{A3:class:2002a}. The modification for other multi-component
systems is straightforward and can be found, e.\ g., in
\cite{A3:bielinski:2006,A3:acosta:2006}.
......@@ -139,10 +139,10 @@ Here $p_i$ refers to the partial pressure of component i.
As an example, if two equal volumes of gas A and gas B are mixed, the volume of the mixture stays the same but the pressures add up (see Figure \ref{fig:dalton1}).
%
\begin{figure}[ht]
\centering
\includegraphics[width=0.7\textwidth]{png/dalton1.png}
\caption{Dalton's law visualized}
\label{fig:dalton1}
\centering
\includegraphics[width=0.7\textwidth]{png/dalton1.png}
\caption{Dalton's law visualized}
\label{fig:dalton1}
\end{figure}
%
The density of the mixture, $\varrho$, can be calculated as follows:
......@@ -165,10 +165,10 @@ V = \sum_{i}^{}V_i.
As an example, if two volumes of gas A and B at equal pressure are mixed, the pressure of the mixture stays the same, but the volumes add up (see Figure \ref{fig:dalton2}).
%
\begin{figure}[ht]
\centering
\includegraphics[width=0.7\textwidth]{png/dalton2.png}
\caption{Amagat's law visualized}
\label{fig:dalton2}
\centering
\includegraphics[width=0.7\textwidth]{png/dalton2.png}
\caption{Amagat's law visualized}
\label{fig:dalton2}
\end{figure}
%
The density of the mixture, $\varrho$, can be calculated as follows:
......@@ -257,7 +257,7 @@ fluid system. The new set of equations is considered as decoupled (or weakly cou
and can thus be solved sequentially. The most popular sequential model is the
fractional flow formulation for two-phase flow which is usually implemented applying
an IMplicit Pressure Explicit Saturation algorithm (IMPES).
In comparison to solving the equations monolothically, the sequential structure allows the use of
In comparison to solving the equations monolithically, the sequential structure allows the use of
different discretization methods for the different equations. The standard method
used in the sequential algorithm is a cell-centered finite volume method. Further schemes,
so far only available for the two-phase pressure equation, are cell-centered finite
......
This diff is collapsed.
......@@ -59,6 +59,6 @@ solution scheme is illustrated down to the element level.
\end{figure}
\subsection{Structure -- by Implementation}
A possible starting point to understand how the abovementioned algorithm is implemented within \Dumux,
A possible starting point to understand how the above mentioned algorithm is implemented within \Dumux,
is the example main file
\url{https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-course/releases/3.0/exercises/exercise-mainfile/exercise_1p_a.cc}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment