What does this MR do?
This MR proposes to modify the current
Trait system for one that can manage more than one model as is wanted in #73 (closed). In many regards, this MR is very similar to the changes done and discussed in !30 (closed) with respect
Particularly, everything specialized trait still depends on the
BaseTraits class. However, now each model has its own traits that define all the needed types for the simulation.
Since models can have differences regarding the orders of polynomials of the FEM, the argument
orderwas removed from
BaseTraitsand delegated to the specific model
Traits, in this case, that is done in
RichardsSimulationTraits. (To be consistent, it was also added as an argument for the
AdaptativeHandlerand its factory).
It was removed the template template parameter from the
BaseTraits, and the template
dimensionargument. Reason: every dune-grid exports the dimension. Therefore, there is no need for templates deduction.
Since this is done to support several models, this MR already renames the
RichardsSimulationand its respective files from
Is there something that needs to be double checked?
The pipeline is failing because of conservation of mass test. This MR shouldn't modify anything there that doesn't fail at compile time, then, I am beginning to think this is due to some problem with the CI itself.
Changes in traits should not change anything for the user and a passing pipeline (i.e. successful compilation) must suffice as a test.
Can this MR be accepted?
- Pipeline passing
Added entry to