-
Notifications
You must be signed in to change notification settings - Fork 17
Implement and test vertical mass borrowing limiters #2084
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
e75025f to
13f55b2
Compare
|
This does seem to work in that it removes negative tracer values, and seems to preserve mass (both of which are unit-tested cc @tapios): On a single column: @test 0 ≤ minimum(q)
@test isapprox(sum(q), sum_q_init; atol = 0.00000000001)
@test isapprox(sum(q), sum_q_init; rtol = 0.01)On a full cubed sphere: @test 0 ≤ minimum(q)
@test isapprox(sum(q), sum_q_init; atol = 0.013)
@test isapprox(sum(q), sum_q_init; rtol = 0.01)I think But, the transport/wavespeed doesn't look great:
I guess that's a bit orthogonal, though? |
21528d7 to
ec53007
Compare
|
pdel is a hydrostatic approximation of rho*dz, so we need to update this. Also, the mass conservation test at the end should be rho*q instead. |
tapios
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mass integral from rho dz, rather than dp
|
And let's visualize how this looks on the sphere. |
7082d56 to
e304c1a
Compare
Update src/Limiters/vertical_mass_borrowing_limiter.jl Co-authored-by: Tapio Schneider <[email protected]> Update src/Limiters/vertical_mass_borrowing_limiter.jl Co-authored-by: Tapio Schneider <[email protected]> Update src/Limiters/vertical_mass_borrowing_limiter.jl Co-authored-by: Tapio Schneider <[email protected]> Use density-dz for pressure thickness
e304c1a to
229ec32
Compare
229ec32 to
28f8e89
Compare

This is a work in progress. This PR implements vertical mass borrowing limiters.
Closes #2083.
Todo:
q_minbe computed? I thinkq_minis actually just prescribed.pdelthe correct interpretation? I think that this is justdzρq?