Skip to content

Commit

Permalink
Merge pull request #855 from xylar/fix-draft-deeper-than-bathy
Browse files Browse the repository at this point in the history
Fix ice thickness and pressure where above flotation
  • Loading branch information
xylar authored Aug 29, 2024
2 parents a0e3eee + 3ddbaa1 commit 4203ebc
Showing 1 changed file with 8 additions and 6 deletions.
14 changes: 8 additions & 6 deletions compass/ocean/mesh/remap_topography.py
Original file line number Diff line number Diff line change
Expand Up @@ -158,16 +158,18 @@ def run(self):
ds_out[var] = xr.where(valid, ds_out[var] / norm, 0.)

thickness = ds_out.landIceThkObserved
bed = ds_out.bed_elevation
flotation_thickness = - (ocean_density / ice_density) * bed
# not allowed to be thicker than the flotation thickness
thickness = np.minimum(thickness, flotation_thickness)
ds_out['landIceThkObserved'] = thickness

ds_out['landIcePressureObserved'] = ice_density * g * thickness

# compute the ice draft to be consistent with the land ice pressure
# and using E3SM's density of seawater
draft = - (ice_density / ocean_density) * thickness
bed = ds_out.bed_elevation

# can't be deeper than the bed
draft = xr.where(draft >= bed, draft, bed)

ds_out['landIceDraftObserved'] = draft
ds_out['landIceDraftObserved'] = \
- (ice_density / ocean_density) * thickness

write_netcdf(ds_out, 'topography_remapped.nc')

0 comments on commit 4203ebc

Please sign in to comment.