Update Icepack to #5999551 including snowbrinebugs#797
Conversation
Update advection description in document Update f_bound setting in ice_history.F90
|
Please review the changes to the documentation associated with #793. I tried to make an appropriate updates but I'm sure it's not quite right. |
|
Looking for a review, would be nice to merge before the weekend. Thanks. |
| Two transport schemes are available: upwind and the incremental | ||
| remapping scheme of :cite:`Dukowicz00` as modified for sea ice by | ||
| :cite:`Lipscomb04`. The upwind scheme is naturally suited for a C grid discretization. As such, the C grid velocity components (i.e. :math:`uvelE=u` at the E point and :math:`vvelN=v` at the N point) are directly passed to the upwind transport scheme. On the other hand, if the B grid is used, :math:`uvel` and :math:`vvel` (respectively :math:`u` and :math:`v` at the U point) are interpolated to the E and N points such that the upwind advection can be performed. Conversely, as the remapping scheme was originally developed for B grid applications, :math:`uvel` and :math:`vvel` are directly used for the advection. If the remapping scheme is used for the C grid, :math:`uvelE` and :math:`vvelN` are first interpolated to the U points before performing the advection. | ||
| :cite:`Lipscomb04`. The upwind scheme is naturally suited for a C grid discretization. As such, the C grid velocity components (i.e. :math:`uvelE=u` at the E point and :math:`vvelN=v` at the N point) are directly passed to the upwind transport scheme. On the other hand, if the B grid is used, :math:`uvelU` and :math:`vvelU` (respectively :math:`u` and :math:`v` at the U point) are interpolated to the E and N points such that the upwind advection can be performed. Conversely, as the remapping scheme was originally developed for B grid applications, :math:`uvelU` and :math:`vvelU` are directly used as departure points for the advection. If the remapping scheme is used for the C grid, :math:`uvelE` and :math:`vvelN` are first interpolated to the U points before performing the advection. |
There was a problem hiding this comment.
@JFLemieux73 @TillRasmussen: do you agree with this statement?
:cite:Lipscomb04. The upwind scheme is naturally suited for a C grid discretization. As such, the C grid velocity components (i.e. :math:uvelE=u at the E point and :math:vvelN=v at the N point) are directly passed to the upwind transport scheme. (Note however that the upwind scheme does not transport all potentially available tracers.) On the other hand, if the B grid is used, :math:uvelU and :math:vvelU (respectively :math:u and :math:v at the U point) are interpolated to the E and N points such that the upwind advection can be performed. Because the remapping scheme was originally developed for B grid applications, uvelU and vvelU are are interpolated to the E and N points internally in the advection code, when running on B grids. If the remapping scheme is used for the C grid, :math:uvelE and :math:vvelN are first interpolated to the U points before performing the advection when l_fixed_area (described below) is false.
There was a problem hiding this comment.
Starting from:
Because the remapping scheme was originally developed for B grid applications, uvelU and vvelU are are interpolated to the E and N points internally in the advection code, when running on B grids. If the remapping scheme is used for the C grid, :math:uvelE and :math:vvelN are first interpolated to the U points before performing the advection when l_fixed_area (described below) is false.
I would reformulate the above to
The remapping scheme was originally developed for B grid applications, which means that :math:uvelU and :math:vvelU are needed. If l_fixed_area is true (by default hardcoded to false) then :math:uvelE and :math:vvelN are needed, which requires interpotation. If the remapping scheme is used for the C grid, :math:uvelE and :math:vvelN are first interpolated to the U points before performing the advection when l_fixed_area (described below) is false.
"Not to be included"
The interpolation on B grid from uvelU and vvelN are not needed in the current setting, however it is done anyway.
|
I significantly updated the advection scheme descriptions after trying to understand all the iterations. Hopefully it's clearer and correct. If not, we should continue to iterate. |
PR checklist
Update Icepack to #5999551 including snowbrinebugs
apcraig
full suite run on cheyenne, all bit-for-bit except snwgrain cases, https://github.com/CICE-Consortium/Test-Results/wiki/cice_by_hash_forks#cb58257857d429c4c2dc4185d16c3f991e379271
Update advection description in document, closes #793
Update f_bound setting in ice_history.F90, closes #796