- Feb 22, 2018
-
-
Timo Koch authored
Add constexpr (not for geometricMean which uses std::sqrt) and noexcept. Static assert the requirements on the input arguments, they have to be numbers.
-
Bernd Flemisch authored
[discretization] Rename DiscretizationMethods to DiscretizationMethod with lower-case fields Closes #444 See merge request !806
-
Timo Koch authored
-
Timo Koch authored
-
Timo Koch authored
-
Timo Koch authored
-
- Feb 20, 2018
-
-
-
Transfer the partial reassembly functionality to the current structure. The `NewtonSolver` is responsible for the partial reassembly. It owns a `unique_ptr` to an object of a new class `PartialReassembler` which is invoked in the constructor as well as in the methods `solve`, `newtonUpdate` and `assembleLinearSystem`. The `PartialReassembler` object is created only if the parameter `Newton.EnablePartialReassembly` is set to true. 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. This shift is updated by the function `updateDistanceFromLastLinearization_` of the `NewtonSolver` and passed to the function `computeColors` of the `PartialReassembler` for the actual coloring. 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 `PartialReassembler`. Pass a pointer to the `PartialReassembler` when calling the routine `assembleJacobianAndResidual` of the `Assembler`. Use SFINAE and `enable_if` so that only assemblers accepting the additional argument are invoked. The correspnding local assemblers have to be adapted such that no calculations are performed for green elements. Implement the functionality for Box, TPFA and MPFA; adapt the `FVAssembler` as well as the `Box`/`CCLocalAssembler` correspondingly. The `PartialReassembler` throws if constructed with a discretization method equal to None or Staggered. All `BoxLocalAssembler`s apart from the implicit numeric one throw if called with a non-nullptr to a `PartialReassembler`. Allow for a default `nullptr` parameter to the assembly functions that take a `PartialReassembler`. This requires a new class `DefaultPartialReassembler` to be passed as a default template parameter for these functions. This makes it possible to use the functions `assembleJacobianAndResidual` of the global and local assemblers as before without the additional argument. Allow to set the thresholds and the weight for the calculation of the effective reassembly threshold as parameters. Try to explain the corresponding formula in a comment. Use the functionality in the two-phase incompressible tests.
-
Christoph Grüninger authored
- Feb 16, 2018
-
-
Kilian Weishaupt authored
[staggered] export the discretization method from the FVGridGeometry See merge request !799
-
Bernd Flemisch authored
-
Bernd Flemisch authored
Increase consistency with the other FVGridGeometries.
-
- Feb 14, 2018
-
-
Kilian Weishaupt authored
[typetraits] Implement isValid function to generate class member introspection functors See merge request !797
-
Timo Koch authored
* 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
-
Kilian Weishaupt authored
Feature/variable eps See merge request !791
-
Kilian Weishaupt authored
[newton] use new NewtonSolver in incompressible 2p fv test See merge request !795
-
- Feb 13, 2018
-
-
Bernd Flemisch authored
-
Kilian Weishaupt authored
[newton] format output consistently See merge request !793
-
Kilian Weishaupt authored
[newton] fix for use with Dune 2.5 See merge request !792
-
Bernd Flemisch authored
[nonlinear][NewtonSolver] Fix compilation with g++5 Closes #445 See merge request !794
-
Kilian Weishaupt authored
There 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.
-
Bernd Flemisch authored
Use a uniform number of digits for the iteration count as well as a consistent format for the floating point values.
-
Bernd Flemisch authored
See !779.
-
Bernd Flemisch authored
Feature/unify newtoncontrollers See merge request !762
-
- Feb 12, 2018
-
-
Kilian Weishaupt authored
[test][freeflowMaxwellStephan] Fix test See merge request !790
-
Kilian Weishaupt authored
* this is the only test that failed after the changes in momentum upwind, thus the use of inertia terms is disabled * use fixed times to write output * do some clean-up
-
Timo Koch authored
-
Timo Koch authored
-
Thomas Fetzer authored
[navierstokes] Improve flux variables See merge request !745
-
Thomas Fetzer authored
Somehow the upwinding and changes in navierstokes led to an additional Newton step
-
Kilian Weishaupt authored
* rename old test for low Re testing
-
Kilian Weishaupt authored
* introduce upwind weight for momentum flux * use convenience function to calculate all momentum fluxes * rename computeNormalMomentumFlux to computeFrontalMomentumFlux * rename computeTangetialMomentumFlux to computeNormalMomentumFlux * move pressure term from local residual to fluxVars * use separate function to treat outflow boundaries * improve docu and clean-up
-
Kilian Weishaupt authored
* explicitly check for outflow BC * small clean-ups * improve docu
-
-
- Feb 09, 2018
-
-
Kilian Weishaupt authored
* NewtonMethod * NewtonController
-
Kilian Weishaupt authored
-
Kilian Weishaupt authored
-