Reimplementation of adapters with shared pointers
What does this MR do?
This MR has a re-implementation of the (before called) vtk adapters to self-sufficient grid functions. With self-sufficient, I mean that they don't rely on the existence of the coefficients or grid function spaces on the object
Simulation. It required that some of the objects are now managed by shared pointers instead of unique pointers.
One important thing is that variables transformed into grid functions do not live in the
OutputWriterwriter anymore but in
Simulation. This decision comes from the fact that I need to export some of them to the transport simulation, and it doesn't make too much sense to extract them from a writer object.
Since I also need a VTK writer for the transport variables I also deleted the old
OutputWriterand I wrote a much simpler one that directly modifies a grid function into a vtk function. The advantage is that this new writer can be used directly in the main function of
Simulation. A disadvantage is that now it's necessary to add data on each time step (because grid functions do not work with references anymore).
Another thing is that it implements the flux gradient adaptor in a much simpler way.
On the other hand, this branch has merged MR !63 (merged) because I depend on that branch to do not hang my computer every single compilation.
Is there something that needs to be double checked?
Yes. I have no clue what is doing
KnoFuInterface. So, it needs to be double checked by @lriedel.
I haven't seen any results from vtk files. Indeed, I would like to know whether a change of this nature can be caught by the test system. Because in principle, DORiE is producing the exact same results as before in the vtk files. Is that the reason why
mass_conservation_testis failing? If this is true, then this MR do not need a new test. Just a correction on the new flux gradient implementation.
Also would be good to double check the naming convention of the new files.
Can this MR be accepted?
- Pipeline passing
Added entry to