Skip to content

New method for calculating vorticity diagnostic#734

Merged
jshipton merged 4 commits into
mainfrom
TBendall/NewVorticity
Jun 3, 2026
Merged

New method for calculating vorticity diagnostic#734
jshipton merged 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!

@jshipton jshipton left a comment

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.

thanks @tommbendall !

@jshipton jshipton merged commit b8e0b9c into main Jun 3, 2026
5 checks passed
@jshipton jshipton deleted the TBendall/NewVorticity branch June 3, 2026 15:15
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