WIP: ODE solution in c++
What does this MR do?
This MR creates another launcher for dorie, dorie run_richards_ode config.ini
. Specifically, this executable solves the stationary Richards equation in vertical tubes with the Runge-Kutta method of order 4 and maps the solution to the given grid in the inifile. Since solutions are solved in vertical tubes, they are only comparable to the DG solution if the medium is homogeneous or horizontally layered and if the DG solution has reached its equilibrium point.
- The grid does not take part in the computation of the ODE solution.
- Size of the tubes can be controlled with the keywords
[_ode.dx]
and[_ode.dy]
. - Vertical discretization can be controlled with the keyword
[_ode.dz]
. - THe default resolution
[dx,dy,dz]
isgrid.extension[i]/50
. - This launcher is done so that
dorie run
can be interchanged fordorie run_richards_ode
using the same inifile. - This MR is not important by itself since this job can be achieved by the current
ode.py
. However, it's important in order to test the transport solver !73 (closed) with a cheap and continuous solution. - The matric head and the fluxed are provided in form of a grid function so that they can mimic solutions of PDELab results.
- To test this MR, it is enough to compare the current ode mini files with respect to the current
ode.py
solver.
Is there something that needs to be double checked?
- The keyword
_test_command = run_richards_ode
in tests seems to be testingdorie run
instead ofdorie run_richards_ode
. I tried to replicate what I did in !73 (closed), but is not working and I have no clue why. - Where is a good place to document this feature, and following which style?
Can this MR be accepted?
-
Implemented -
Added test -
Pipeline passing -
Documented -
Added entry to CHANGELOG.md
Related issues
Edited by Santiago Ospina De Los Ríos