Skip to content

Refractor Shallow Water Equation solver to reduce duplication

Jacques Xing requested to merge CFD-Xing/nektar:refractor-swe-solver into master

Issue/feature addressed

ShallowWaterSystem has been refactored to reduce duplication. The motivation is to tidy-up the ShallowWaterSystem classes to implement time-implicit discretization for the Parareal work.

The following functions have been moved to the ShallowWaterSystem base class:

  • DoOdeProjection
  • SetBoundaryConditions
  • WallBoundary2D
  • WallBoundary
  • AddCoriolis

In addition:

  • Use default keyword for destructor
  • Clean-up implementation of ConservativeToPrimitive and PrimitiveToConservative and remove unnecessary virtual functions
  • Remove unused function declaration NumericalFlux1D and NumericalFlux2D
  • Remove using namespace std;
  • The NonlinearPeregrine has been refractored as a subclass of NonlinearSWE

Proposed solution

Implementation

Tests

Suggested reviewers

Please suggest any people who would be appropriate to review your code.

Notes

Please add any other information that could be useful for reviewers.

Checklist

  • Functions and classes, or changes to them, are documented.
  • [ ] User guide/documentation is updated.
  • Changelog is updated.
  • [ ] Suitable tests added for new functionality.
  • Contributed code is correctly formatted. (See the contributing guidelines).
  • [ ] License added to any new files.
  • No extraneous files have been added (e.g. compiler output or test data files).
Edited by Jacques Xing

Merge request reports