Closed glwagner closed 12 months ago
Attention: 144 lines
in your changes are missing coverage. Please review.
Comparison is base (
d9cc1da
) 26.81% compared to head (7986b0e
) 22.80%.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Here's a plot from an "ocean mixed layer" case in which clear sky radiative emission with no incoming radiation cools the ocean surface (and then the ice surface) during the first 40 days. Then we add a constant heat flux that overcomes the outgoing radiation, which melts the ice and warms the ocean once the ice is melted.
This model is relatively simple; since there are no horizontal heat fluxes in the ocean, there is no ice-ocean heat flux while the ocean is ice-covered. The ocean gets saltier when ice is forming, and that salt is returned to the ocean when the ice melts.
Here's a similar example as above, but replacing the slab ocean with a column model. Convection mixes the column to the bottom during the initial cooling, so the column behaves similarly as the slab. However, during the warming phase the heat and salinity melt are trapped at the surface, so the ocean surface warms much more.
https://github.com/CliMA/ClimaSeaIce.jl/assets/15271942/69d639ce-9a1b-471c-aedf-4ff1b7c31d93
The coupled cases required a substantial amount of code to implement a coupled model abstraction. I'm going to move the coupled model abstraction to ClimaOcean
, so when we merge this PR the example will depend on ClimaOcean. Possibly we want to have a simple coupled model implementation that is independent of ClimaOcean --- perhaps a slab freshwater ocean, so we can ignore salinity fluxes.
A few more examples...
https://github.com/CliMA/ClimaSeaIce.jl/assets/15271942/c0bff019-3c78-4e3c-a272-475e2356fa51
https://github.com/CliMA/ClimaSeaIce.jl/assets/15271942/302ad9ca-f133-446a-b6a1-c0ff73cf17a6
why these examples are not part of the docs? are they computationally intense?
why these examples are not part of the docs? are they computationally intense?
Yes, like 256^3 and running on GPU.
They also use IceOceanModel
which is not part of the source code. IceOceanModel
is prototyped here, but will be moved to ClimaOcean
. Its' not ready for docs.
This PR implements a few simple ice-ocean examples in the new directory
validation/ice_ocean_model/
. That directory also contains a prototype implementation ofIceOceanModel
, an abstraction for a coupled-ice-ocean model that contains an ocean simulation, ice simulation, and coupling parameterizations.The prototype
IceOceanModel
works on GPUs and implements the "ice bath" parameterization for ice-ocean heat fluxes.Closes #17