Skip to content

New method for calculating vorticity diagnostic#734

Open
tommbendall wants to merge 4 commits into
mainfrom
TBendall/NewVorticity
Open

New method for calculating vorticity diagnostic#734
tommbendall wants to merge 4 commits into
mainfrom
TBendall/NewVorticity

Conversation

@tommbendall
Copy link
Copy Markdown
Contributor

This implements a new method for calculating vorticity diagnostics for shallow-water equations.

We currently solve a linear variational problem to evaluate the vorticity in H1 from the velocity in HDiv, which is equivalent to the "weak curl". I am wondering if this can give very noisy results on the cubed-sphere...

... so this PR implements a different method, which first projects the velocity into HCurl, and then interpolates the "strong curl" of that velocity into a DG space.

@tommbendall tommbendall added the enhancement Involves adding a new capability label May 1, 2026
if self.space is None or not is_cg(self.space):
# Using DG, calculate u in HCurl space as intermediary
self.hcurl_intermediary = True
assert self.method != 'solve', (
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This assertion is causing test failures... I'm not quite sure what you intend here...

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Interesting... I wonder if that actually might explain a real problem with the vorticity diagnosics!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement Involves adding a new capability

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants