Skip to content

Update support/testing for overintegration#1082

Merged
MTCam merged 7 commits into
mainfrom
update-overintegration-testing
Nov 1, 2024
Merged

Update support/testing for overintegration#1082
MTCam merged 7 commits into
mainfrom
update-overintegration-testing

Conversation

@MTCam
Copy link
Copy Markdown
Member

@MTCam MTCam commented Oct 31, 2024

Meant to replace #1069. This change set adds tests from the Mengaldo paper on dealiasing to verify and exercise overintegration in mirgecom. The following are added or modified:

  • Examples

    • agitator.py: The variable coefficient advection setup from Mengaldo Sec. 4.1
    • flow-over-cylinder.py: The subsonic inviscid flow over cylinder from Mengaldo Sec. 4.3.1
  • Tests

    • test_operators.py: Quadrature verification with Chebyshev polynomials
    • test_overintegration.py: Variable coefficient overintegration verification from Mengaldo Sec. 4.1, Figure 7
    • overintegration (and tpe) versions added to most flow, and operator tests as appropriate
  • Support

    • discretization.py: Fixed up choosing the proper order argument to quadrature group based on element type
    • inviscid.py: Added central numerical flux for divergence of inviscid flux
  • Some support and fixes required (mostly upstream pkgs)

    • overintegration not properly used in WADG (illinois-ceesd/grudge@7c8eaec)
    • TPE normals not on quadrature domain when using overintegration in mirgecom (fixed upstream)
    • Revert TPE to use simplex operator chain; fixed TPE/overintegration failing operator/flow tests in mirgecom
    • grudge integration utility uses mass matrix instead of direct quadrature (illinois-ceesd/grudge@2e54482)
    • mirgecom discretization creation utility does not properly create quadrature domain of correct order for TPE (this PR)
    • transform chain breaks when setting quadrature order < 2p (illinois-ceesd/loopy@fc274fa)
    • lazy required for quantitative test from Mengaldo to run in pytest in reasonable time (this PR)
    • undo actx switch for TPEs in gradient testing (this PR)

Questions for the review:

  • Is the scope and purpose of the PR clear?
    • The PR should have a description.
    • The PR should have a guide if needed (e.g., an ordering).
  • Is every top-level method and class documented? Are things that should be documented actually so?
  • Is the interface understandable? (I.e. can someone figure out what stuff does?) Is it well-defined?
  • Does the implementation do what the docstring claims?
  • Is everything that is implemented covered by tests?
  • Do you see any immediate risks or performance disadvantages with the design? Example: what do interface normals attach to?

@MTCam MTCam requested a review from anderson2981 October 31, 2024 18:02
Copy link
Copy Markdown
Contributor

@anderson2981 anderson2981 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes!

@MTCam MTCam marked this pull request as ready for review November 1, 2024 01:57
@MTCam MTCam changed the title Add support/testing for overintegration Update support/testing for overintegration Nov 1, 2024
@MTCam MTCam merged commit 8fd7d31 into main Nov 1, 2024
@MTCam MTCam deleted the update-overintegration-testing branch November 1, 2024 16:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants