- it now can generate and install the API documentation ('make install-html')
- the information of the dune.module file is now used much more extensively
- presence of the valgrind headers is tested
- tests which cannot be run for a configuration will now appear as
'skipped' in CDash
- adding tests does not require modifying the toplevel CMakeList.txt anymore
- introduction of the 'EwomsAddTest' cmake macro which removes quite a bit of the
copy-and-paste from the CMakeLists.txt.
- various small loose ends have been fixed
this is somewhat similar to what is currently done in the 'implicit'
branch of dumux, but it takes things further:
- ewoms/boxmodels/common -> ewoms/disc/vcfv
(vcfv == vertex centered finite volumes)
- ewoms/boxmodels/vtk -> ewoms/vtk
(possibly this will move to ewoms/io/vtk, TBD)
- ewoms/boxmodels -> ewoms/models
- test/boxmodels -> test/implicit
- the files for the common VCFV code have been renamed from "box*" to
"vcfv\1" and the classes they contain have been renamed accordingly.
The rationale is to reflect the fact that multiple discretizations may
be chosen for any physical model. (Once these discretizations are
implemented, obviously.) All tests still compile for the autotools and
cmake build systems
instead of typing 'make test/common/propertysystem/test_propertysystem'
in the toplevel build directory, one can now just type
'make test_propertysystem'
eWoms hereby declares full independence. Humor aside, the main
technical advantage of this is, that it is now possible to easily
install both, Dumux and eWoms on a system using a package management
system without bad tricks.
in addition to last time, don't add authors that are responsible than
5 lines in a file. This mainly makes a difference for very short files
like the .cc files...
finally, the documentation builds without any warnings from
doxygen. This does not mean that the documentation is correct, though:
Quite a bit of prose is still required for the model and problem
descriptions...
"runtime" parameters are gone now, as are groups. both where flawed
concepts: parameters can be overwritten at runtime by definition, and
a parameter that has no compile-time fallback just degrades
performance and is a hassle to deal with because it has to be
specified in a parameter file. The other killed feature, parameter
groups, just made it harder to figure out what the correct command
line argument was to change the parameter (was it
--linear.solver-tolerance, --linear-solver.tolerance or
--linear-solver-tolerance?) and did not provide much value otherwise.
as a consequence all parameters now have compile-time defaults which
allows us to remove the auto-loading of a parameter file at
startup. (These files became quite obnoxious in eWoms when problems
declared their independence from models.)
Finally all parameters must now be registered before they can be used
which allows to properly include them in the usage message.
this time we ignore the commits 024955b5, f34d3482, 292c0084,
153374e8, 54c9450f, 6bc12abc, ee0eb46b, a1f3edc6, 5858986f and
0c4b9162 because these are huge commits that either dealt with white
space clean ups or just moved some files around. Also for the total
lines in a source file we only account for the non-ignored lines.
This time hopfully for good. There were a few bugs in the script to
update them, and the metric was slightly chanted: Now, only authors
that contributed more than 5% of the lines of a file are listed. We
now also properly ignore the copyright headers and the changes made in
commit 024955b5 as the latter just moved a lot of files around.
while the git history might be not entirely accurate, it is certainly
much better what is currently there. the authors are sorted by the
number of lines changed in the file.
- the prefix "simple" should only be used if a more complex version of
the same component is available
- deprecated Oil and SimpleDNAPL
approved by coffee break
Dumux-Svn-Revison: 8943
Ported-By: Andreas Lauser <andreas.lauser@iws.uni-stuttgart.de>
this hopefully reduces confusion about what which parameter means. the
Domain* parameters specify the physical size of the simulated domain,
the Cells* specify how many cells the grid has into the direction of
each axis.
the immiscible(ni) model is a model that is independent on the number
of phases and assumes immiscibility. this change is along the lines of
the previous commit for the compositional primary variable switching
model.
to make them self-descriptive and consistent with the other parameters
and properties "TEnd" is renamed to "EndTime" and "DtInitial" to
"InitialTimeStepSize".
Tensor -> DimMatrix
refElem -> refElement
gv -> gridView
remove "AtIP" suffix
*Index -> *Idx for variables
remove ${MODEL_NAME}Index property
consistent argument names for compute(Storage|Flux|Source) in the local residuals
also remove the "MassUpwindWeight" and "UpwindWeight" properties as
they were not really useful.
I also removed the deprecation stuff, as IMO it is more confusing than
helpful. (Ever tried to set the
SpatialParameters instead of SpatialParams in your problem?)
Also move the decoupled spatial parameters from dumux/material to
dumux/decoupled because they are specific to the decoupled models.
most includes are now sorted by abstraction levels, with the most
abstract header first. also some system headers like <string> are now
explicitly included in every file where some of their classes are
used.
the switches are the introduction of "smart primary variables", rate
vectors, and changing the capillary pressure API for the multi-phase
models to the one previously used by the MpNc model.
- this renames historyIdx to timeIdx (I think it expresses what it is meant for better)
- rename localIdx to "spaceIdx" in the problems/spatial parameters
- add a "timeIdx" argument to the problem's methods