dumux merge requestshttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests2018-04-06T05:34:22Zhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/899Feature/component traits2018-04-06T05:34:22ZTimo Kochtimokoch@math.uio.noFeature/component traits3.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/875[maxwellstefan][rans] Make Maxwell-Stefan applicable for turbulence models an...2018-03-29T12:25:01ZThomas Fetzer[maxwellstefan][rans] Make Maxwell-Stefan applicable for turbulence models and simplify calculation3.0Katharina HeckKatharina Heckhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/831Feature/1d3d richards2c 1p2c test2018-03-05T10:21:37ZTimo Kochtimokoch@math.uio.noFeature/1d3d richards2c 1p2c test3.0https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/828[disc] Free box/cc elemsol from TypeTag2018-03-02T15:24:34ZTimo Kochtimokoch@math.uio.no[disc] Free box/cc elemsol from TypeTagI figured good template arguments would be the fv grid geometry that fixes discretization and knows grid connectivity, and the solutionvector which element solution is supposed to be a part of.
Only PrimaryVariables as argument wouldn't ...I figured good template arguments would be the fv grid geometry that fixes discretization and knows grid connectivity, and the solutionvector which element solution is supposed to be a part of.
Only PrimaryVariables as argument wouldn't allow for the overloads we currently offer for update.3.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/827[fluxvars] Free empty caches from TypeTag2018-03-01T19:26:24ZTimo Kochtimokoch@math.uio.no[fluxvars] Free empty caches from TypeTag3.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/826[disc] Free grid variables and staggered grid variables from TypeTag2018-03-01T19:19:18ZTimo Kochtimokoch@math.uio.no[disc] Free grid variables and staggered grid variables from TypeTag3.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/822[spatialparams] Free the base classes from TypeTag2018-04-27T12:23:59ZTimo Kochtimokoch@math.uio.no[spatialparams] Free the base classes from TypeTag* [x] Use the base classes in the tests, otherwise they don't compile anymore
* [x] Remove `MaterialLaw` property (is now extracted from spatial params)
* Decouple problem and spatial params by passing the fvGridGeometry instead of the...* [x] Use the base classes in the tests, otherwise they don't compile anymore
* [x] Remove `MaterialLaw` property (is now extracted from spatial params)
* Decouple problem and spatial params by passing the fvGridGeometry instead of the problem to the spatial params
see #448.3.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/821[compositional] Free switchable privars from typetag2018-03-01T08:26:57ZTimo Kochtimokoch@math.uio.no[compositional] Free switchable privars from typetagsee #448.see #448.3.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/820[disc][cc] Free element boundary types from TypeTag2018-03-01T06:00:43ZTimo Kochtimokoch@math.uio.no[disc][cc] Free element boundary types from TypeTagsee #448.see #448.3.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/819[2p][2p1c] Free vtk outputfields from TypeTag2018-03-01T05:56:18ZTimo Kochtimokoch@math.uio.no[2p][2p1c] Free vtk outputfields from TypeTagsee #448.see #448.3.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/818[navierstokes] Free indices from TypeTag2018-03-01T05:46:59ZTimo Kochtimokoch@math.uio.no[navierstokes] Free indices from TypeTagsee #448.see #448.3.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/816[newton] Reimplement timestep control2018-03-01T08:15:08ZTimo Kochtimokoch@math.uio.no[newton] Reimplement timestep controlThere are now two solve function overloads, on without timeLoop that does one newton run,
and one with a timeloop that decreases the time step and tries again.
This makes the main file shorter and the newtoncontroller doesn't need a tim...There are now two solve function overloads, on without timeLoop that does one newton run,
and one with a timeloop that decreases the time step and tries again.
This makes the main file shorter and the newtoncontroller doesn't need a timeloop in the constructor anymore.3.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/813[component] Split interface into solid, liquid, gas2018-02-28T20:22:42ZTimo Kochtimokoch@math.uio.no[component] Split interface into solid, liquid, gasFixes #452.Fixes #452.3.0Bernd FlemischBernd Flemischhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/807Feature/improve math functions2018-02-26T11:00:20ZTimo Kochtimokoch@math.uio.noFeature/improve math functionsRelates to #441.Relates to #441.3.0Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/806[discretization] Rename DiscretizationMethods to DiscretizationMethod with lo...2020-02-17T17:28:22ZTimo Kochtimokoch@math.uio.no[discretization] Rename DiscretizationMethods to DiscretizationMethod with lower-case fieldsFixes #444.Fixes #444.3.0Bernd FlemischBernd Flemischhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/805[material] Move all components to namespace Components2018-02-22T13:54:10ZTimo Kochtimokoch@math.uio.no[material] Move all components to namespace Componentsthe constant component is already in the `Components` namespace. It makes sense similar to the namespace `FluidSystems`, especially as there might be even nameclashes between classes in `Components` and `FluidSystems`, e.g. there might b...the constant component is already in the `Components` namespace. It makes sense similar to the namespace `FluidSystems`, especially as there might be even nameclashes between classes in `Components` and `FluidSystems`, e.g. there might be in the future a fluid system `Air` consisting of components N2, O2, CO2, Ar, conflicting with the (pseudo-)component `Air`.
Fixes #375.3.0Bernd FlemischBernd Flemischhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/798Feature/1d3d richards 1p test2018-02-16T15:52:14ZTimo Kochtimokoch@math.uio.noFeature/1d3d richards 1p test3.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 introspectio...2018-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 Weishaupthttps://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/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 Weishaupt