Skip to content

Conversation

@mark-petersen
Copy link
Contributor

@mark-petersen mark-petersen commented Jul 3, 2019

This PR does two things:

  • Add optional new weighting in ALE SSH thickness distribution
  • Add tapered weights options for z-star

The first is used for wetting/drying, to allow bottomDepth to be zero, which can easily occur on a beach. It changes the weighting for the z-star distribution from
vertCoordMovementWeights(k) * restingThickness(k, iCell)
to
vertCoordMovementWeights(k).
The first formulation can be seen in eqn 6 of Petersen et al 2015.

The new formulation stretches in proportion to the defined weights. The standard formulation stretched in proportion to the weights*restingThickness. That stretches deep layers more than shallow layers with surface gravity waves.

These changes are protected by flags, so are bfb in MPAS-Ocean and E3SM.

Fixes #316

@mark-petersen
Copy link
Contributor Author

@pwolfram Please test this on your wetting/drying case.

@xylar
Copy link
Collaborator

xylar commented Jul 3, 2019

@mark-petersen, could you make sure to test this with isomip_plus/2km/Ocean0 or another test case with an ice shelf cavity? I don't see any reason it won't work but this definitely could affect ice-shelf test cases.

Copy link
Contributor

@pwolfram pwolfram left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed by inspection-- will pull commits onto my branch for future testing.

@pwolfram
Copy link
Contributor

pwolfram commented Jul 3, 2019

@mark-petersen, this works with the drying slope case for sigma layers-- thank you!

image

Copy link
Contributor

@pwolfram pwolfram left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested via the drying slope test case.

@pwolfram
Copy link
Contributor

pwolfram commented Jul 3, 2019

@mark-petersen, this is great and I'm happy for a merge. Thanks!

@mark-petersen mark-petersen removed the request for review from vanroekel July 19, 2019 14:49
@mark-petersen
Copy link
Contributor Author

@vanroekel is out of town, removing him from reviewer list.

Copy link
Contributor Author

@mark-petersen mark-petersen Jul 19, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@pwolfram I realized that we don't want this alteration in general, so I am protecting it with this flag. In general in the ocean, we need to have the thickness vary in proportion to the weights*resting thickness (i.e. original distribution), not the weights only. You can run wetting/drying test cases with the
config_ALE_thickness_proportionality = weights_only
setting. But this breaks ice shelf cavities, as @xylar feared, because you need to 'squeeze the accordion' in proportion to the original thicknesses, especially for extreme compression, like we have under ice shelves.

This commit is now bit-for-bit with previous for MPAS-O and E3SM. We will need to think about this more carefully to put wetting/drying along coastlines and severe SSH alterations below ice shelves in the same domain.

@mark-petersen
Copy link
Contributor Author

BFB against ocean/develop for nightly test suite with gnu on grizzly. Also tested debug using gnu and intel.

In eqn 6 of Petersen et al 2015, remove h_k^{rest}. This allows the
resting thickness to be zero, which can occur with wetting/drying and
sigma coordinates.

For the initial condition, require that
sum (restingThickness ) = bottomDepth for each column.
This is always done for z-star global ICs, but should be done for sigma
as well.
@mark-petersen mark-petersen force-pushed the ocean/fix_ALE_weights branch from b2daa8c to 6975e0e Compare July 19, 2019 15:06
@mark-petersen
Copy link
Contributor Author

rebased.

@mark-petersen mark-petersen merged commit 6975e0e into MPAS-Dev:ocean/develop Jul 19, 2019
mark-petersen added a commit that referenced this pull request Jul 19, 2019
This PR does two things:

Add optional new weighting in ALE SSH thickness distribution
Add tapered weights options for z-star
The first is used for wetting/drying, to allow bottomDepth to be zero,
which can easily occur on a beach. It changes the weighting for the
z-star distribution from
vertCoordMovementWeights(k) * restingThickness(k, iCell)
to
vertCoordMovementWeights(k).
The first formulation can be seen in eqn 6 of Petersen et al 2015.

The new formulation stretches in proportion to the defined weights. The
standard formulation stretched in proportion to the
weights*restingThickness. That stretches deep layers more than shallow
layers with surface gravity waves.

These changes are protected by flags, so are bfb in MPAS-Ocean and E3SM.

Fixes #316
@mark-petersen mark-petersen deleted the ocean/fix_ALE_weights branch July 19, 2019 15:24
ashwathsv pushed a commit to ashwathsv/MPAS-Model that referenced this pull request Jul 21, 2020
This PR does two things:

Add optional new weighting in ALE SSH thickness distribution
Add tapered weights options for z-star
The first is used for wetting/drying, to allow bottomDepth to be zero,
which can easily occur on a beach. It changes the weighting for the
z-star distribution from
vertCoordMovementWeights(k) * restingThickness(k, iCell)
to
vertCoordMovementWeights(k).
The first formulation can be seen in eqn 6 of Petersen et al 2015.

The new formulation stretches in proportion to the defined weights. The
standard formulation stretched in proportion to the
weights*restingThickness. That stretches deep layers more than shallow
layers with surface gravity waves.

These changes are protected by flags, so are bfb in MPAS-Ocean and E3SM.

Fixes MPAS-Dev#316
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants