-
Notifications
You must be signed in to change notification settings - Fork 9
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
Implement and test vertical mass borrowing limiters #2084
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. |
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. |
1278c47
to
bae0e8e
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
7082d56
to
e304c1a
Compare
This is a work in progress. This PR implements vertical mass borrowing limiters.
Closes #2083.
Todo:
q_min
be computed? I thinkq_min
is actually just prescribed.pdel
the correct interpretation? I think that this is justdz
ρq
?