Fixed L2norm for FilterError
Issue/feature addressed
The current implementation of the error filter computes the L2norm (of a 3DH1D expansion) in phys-wave space, which is mathematically incorrect.
Proposed solution
The L2norm should be computed in phys-phys space.
Implementation
If 3DH1D expansion is in phys-wave space (EquationSystem.cpp:809
), converts the expansion into phys-phys space using HomogeneousBwdTrans
in EquationSystem.cpp:812
before computing L2norms (EquationSystem.cpp:818-844
).
Reverts the expansion into phys-wave space by performing a HomogeneousFwdTrans
in EquationSystem.cpp:849
.
Tests
I have added a test case that checks the output from FilterError in IncNavierStokesSolver_3DH1D_L2ErrorFilter
using a series of regex commands.
Suggested reviewers
Jacques, Spencer, Henrik
Notes
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 Chi Hin Chan