Skip to content

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 OutputWriter writer 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 OutputWriter and 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.

  • This implementation also goes along the way of the issues #73 (closed) and #70 (closed).

  • 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_test is 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?

  • Implemented
  • Pipeline passing
  • Added entry to CHANGELOG.md

Related issues

!63 (merged), #73 (closed), #70 (closed)

Edited by Lukas Riedel

Merge request reports