Feature/cfs bc enforce values
Issue/feature addressed
In subsonic compressible flows, it is not easy to enforce desired quantities at the boundaries, particularily at the inflow. Examples for the quantities are velocity/angle of attack for a turbine blade, pressure distribution for a airfoil(2D/3D).
Proposed solution
Implemented three subsonic inflow conditions for subsonic cfs solver. When with a supersonic inflow conditions all of the quantities from the upstream will automatically be enforced.
Implementation
- Add three subsonic inflow conditions enforcing two quaitities in the normal direction to the boundary: Entropy-pressure (RhoP), Entropy-total enthalpy (SH), Entropy-normal velocity (SU).*
Tests
Notes
The mathemathcal deductions for these conditions will be included in Ganlin's final PhD thesis.
TODO
- Change the keys (EnforceRhoP, EnforceSU, EnforceSH -> EnforceEntropyPressure, etc.???)
- Change the default outflow condition to be the standard invariant compatible format (directly enforce the ghost state value to be the specified ones) (in case it becomes an outflow)
- Remove comments
- Add tests
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).
Warning
On the 19.07 the code formatting (code style) was standardised using clang-format, over the whole Nektar++ code. This means changes in your branch will conflict with formatting changes on the master
branch. To resolve these conflicts , see
#295 (closed)