dumux merge requestshttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests2018-01-25T16:52:16Zhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/753Feature/2d3d intersection2018-01-25T16:52:16ZTimo Kochtimokoch@math.uio.noFeature/2d3d intersection3.0Dennis GläserDennis Gläserhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/754Feature/subgrid2018-01-25T15:45:47ZKilian WeishauptFeature/subgrid3.0Timo Kochtimokoch@math.uio.noTimo Kochtimokoch@math.uio.nohttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/755Feature/improve point source handling2018-01-25T17:34:08ZTimo Kochtimokoch@math.uio.noFeature/improve point source handlingIntroduces a getter for the point source map which is needed at least in the context of multidomain problems.Introduces a getter for the point source map which is needed at least in the context of multidomain problems.3.0Dennis GläserDennis Gläserhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/756Feature/small fixes newton2018-01-25T17:10:54ZTimo Kochtimokoch@math.uio.noFeature/small fixes newton3.0Dennis GläserDennis Gläserhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/757[assembly][analytic] Get source derivative per default from problem2018-01-25T17:37:35ZTimo Kochtimokoch@math.uio.no[assembly][analytic] Get source derivative per default from problem3.0Dennis GläserDennis Gläserhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/759[io][gridcreator] Make construction of tensorgrid more flexible2018-01-26T11:05:57ZKilian Weishaupt[io][gridcreator] Make construction of tensorgrid more flexible* Add a public method taking the positions, cells and the grading
vectors as arguments.
* The general makeGrid() method now extracts the necessary parameters from
the input file and calls the new method with them
* The new method can...* Add a public method taking the positions, cells and the grading
vectors as arguments.
* The general makeGrid() method now extracts the necessary parameters from
the input file and calls the new method with them
* The new method can be useful in cases where a tensorgrid should
be constructed not based on input file data, but on different ones,
e.g. evalutated by a user specified algorithm3.0Timo Kochtimokoch@math.uio.noTimo Kochtimokoch@math.uio.nohttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/761[geometry] Make backward compatible with dune 2.52018-01-29T11:51:54ZTimo Kochtimokoch@math.uio.no[geometry] Make backward compatible with dune 2.53.0https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/762Feature/unify newtoncontrollers2018-05-30T08:46:12ZKilian WeishauptFeature/unify newtoncontrollersAdds `NewtonSolver` class that replaces the existing `NewtonMethod` and `NewtonController` classes.
The old classes are still there for backward compatibility and are deprecated.
Tests can use the new Newton solver but still compil...Adds `NewtonSolver` class that replaces the existing `NewtonMethod` and `NewtonController` classes.
The old classes are still there for backward compatibility and are deprecated.
Tests can use the new Newton solver but still compile with the old one, yielding a deprecation warning.3.0Bernd FlemischBernd Flemischhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/771Rename Problem-TypeTags to end in TypeTag in folders test and tutorial.2018-02-07T17:38:32ZMelanie LippRename Problem-TypeTags to end in TypeTag in folders test and tutorial.closes #413 closes #413 3.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/773[impes] Remove grid singleton from problem2018-02-12T10:01:21ZKilian Weishaupt[impes] Remove grid singleton from problemsee #431. Prepares sequential model (using old style main files) for times without a grid singleton.
We pass a non-const reference to the grid to the problem. Now the `Grid` property is used less (it can be anywhere extracted from the G...see #431. Prepares sequential model (using old style main files) for times without a grid singleton.
We pass a non-const reference to the grid to the problem. Now the `Grid` property is used less (it can be anywhere extracted from the GridView type) and the Grid singleton is only accessed once in the main file, so it can be easily replaced.3.0Timo Kochtimokoch@math.uio.noTimo Kochtimokoch@math.uio.nohttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/775Feature/mixeddim box2018-02-09T10:22:47ZKilian WeishauptFeature/mixeddim box3.0Timo Kochtimokoch@math.uio.noTimo Kochtimokoch@math.uio.nohttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/777[linearSolver] Add version check to avoid deprecation warning2018-02-02T15:56:26ZKilian Weishaupt[linearSolver] Add version check to avoid deprecation warning* dune-istl has unified SeqILU0 and SeqILUn to SeqILU* dune-istl has unified SeqILU0 and SeqILUn to SeqILU3.0Dennis GläserDennis Gläserhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/781Feature/mpnc 2p2c comparison2018-02-05T12:22:55ZTimo Kochtimokoch@math.uio.noFeature/mpnc 2p2c comparison3.0Timo Kochtimokoch@math.uio.noTimo Kochtimokoch@math.uio.nohttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/787[doxygen][fluidsystems] Fix erroneous formula2018-02-09T09:21:13ZThomas Fetzer[doxygen][fluidsystems] Fix erroneous formula3.0Simon EmmertSimon Emmerthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/789Feature/mixed dim staggered2018-05-02T09:17:19ZKilian WeishauptFeature/mixed dim staggered3.0Timo Kochtimokoch@math.uio.noTimo Kochtimokoch@math.uio.nohttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/790[test][freeflowMaxwellStephan] Fix test2018-02-12T15:10:33ZKilian Weishaupt[test][freeflowMaxwellStephan] Fix test [test][freeflowMaxwellStefan] Fix test
* this is the only test that failed after the changes in momentum upwind, thus the use of inertia terms is disabled
* do some clean-up
depends on !745 [test][freeflowMaxwellStefan] Fix test
* this is the only test that failed after the changes in momentum upwind, thus the use of inertia terms is disabled
* do some clean-up
depends on !7453.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/791Feature/variable eps2018-02-14T10:15:29ZTimo Kochtimokoch@math.uio.noFeature/variable epsFor some problems, especially for linear problems and zero initial value problems, we want to be able to set a constant epsilon per primary variable for numeric differentiation.
This introduces a new epsilon class that reads two param...For some problems, especially for linear problems and zero initial value problems, we want to be able to set a constant epsilon per primary variable for numeric differentiation.
This introduces a new epsilon class that reads two parameters from the input file
* Assembly.NumericDifference.PriVarMagnitude
* Assembly.NumericDifference.BaseEps
the magnitude is a vector with the number of privars as size, base eps (optional) is a scalar (default 1e-10).
If nothing is set it default to the old behaviour (trying to estimate the magnitude from the primary variable at the d.o.f the residual is assembled at (which leads to different epsilons in different cells).
For multidomain problems those parameters can be set per TypeTag / ModelParameterGroup.3.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/794[nonlinear][NewtonSolver] Fix compilation with g++52018-02-13T15:19:33ZKilian Weishaupt[nonlinear][NewtonSolver] Fix compilation with g++5There seems to be a bug in g++5 which which prevents compilation when
defining the call to the implementation directly to Dune::Hybrid::forEach.
We therefore store this call in a lambda and pass it to the
for loop afterwards.
fixes #445There seems to be a bug in g++5 which which prevents compilation when
defining the call to the implementation directly to Dune::Hybrid::forEach.
We therefore store this call in a lambda and pass it to the
for loop afterwards.
fixes #4453.0Bernd FlemischBernd Flemischhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/796[assembly][newton] reimplement partial reassembly2018-02-20T10:33:17ZBernd Flemisch[assembly][newton] reimplement partial reassemblyTransfer the partial reassembly functionality to the current
structure.
On the topmost level, the `NewtonSolver` uses the functionality
in the methods `solve`, `newtonUpdate` and `assembleLinearSystem`
by calls to new methods `asse...Transfer the partial reassembly functionality to the current
structure.
On the topmost level, the `NewtonSolver` uses the functionality
in the methods `solve`, `newtonUpdate` and `assembleLinearSystem`
by calls to new methods `assemblerResetColors_`,
`assemblerNewtonUpdate_` and `assembleLinearSystem_`. In these
new methods, new member functions of the `FVAssembler` are called:
`resetColors`, `updateDistanceFromLastLinearization` and
`computeColors` as well as `assembleJacobianAndResidual` with a
second argument. Use SFINAE and `enable_if` such that not all
assemblers are required to implement the extended interface.
The `FVAssembler` forwards the work to a new class
`PartialReassembler`. This class also holds the required data.
After each Newton iteration, the `PartialReassembler` colors the
geometrical degrees of freedom depending on the shift of the
primary variables from the last time that the derivatives have been
calculated. For green-colored entities, the entries in the Jacobian
are kept, while for the other entities, they are recalculated.
Use an enum class `EntityColor` for the coloring, enable read
access to the color of an entity via the Assembler.
Implement the functionality for Box and TPFA. The correspnding
local assemblers have to be adapted such that no calculations are
performed for green elements.
Still missing (while also not present in Dumux 2.x):
- [x] Parametrize the thresholds in the `NewtonSolver`
- [x] Throw if called with mpfa
Fixes #379.3.0Timo Kochtimokoch@math.uio.noTimo Kochtimokoch@math.uio.nohttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/797[typetraits] Implement isValid function to generate class member introspection functors2018-02-14T15:29:25ZTimo Kochtimokoch@math.uio.no[typetraits] Implement isValid function to generate class member introspection functors* isValid can be used to generate a functor that can check whether an operation done with a type is valid
* this patch also provides examples in form of a test and documentation* isValid can be used to generate a functor that can check whether an operation done with a type is valid
* this patch also provides examples in form of a test and documentation3.0Kilian WeishauptKilian Weishaupt