BOUT-dev
BOUT-dev copied to clipboard
Port some Hermes-3 finite volume operators
Includes #3196
Ports the following from Hermes-3 fci-more-fixes-update-more:
FV::Div_par_modFV::Div_par_fvvDiv_par_K_Grad_par_mod(not strictly FV!)FV::Superbee
Plus adds MMS tests for these and the existing FV operators:
FV::Div_parFV::Div_par_K_Grad_par
with all the available slope limiters, as appropriate.
Because the slope limiters kind of necessarily introduce inaccuracies, I've reduced the expected order of the operators, with Upwind having order 1 and the rest 1.5. This feels like a bit of a fudge, but it's not clear to me how to treat this better.
The ported operators will obviously conflict with the Hermes-3 ones. So 2/3 things to do:
- Remove the ported ones from Hermes-3 when updating the bundled BOUT++
- Move all the operators here into
bout::FV::namespace - Move all the operators there into
hermes::FV::namespace