Skip to content
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

Modify ocean z-star ALE coordinate for inactive top cells #5254

Merged

Conversation

cbegeman
Copy link
Contributor

This PR increases the generalizability of vertical coordinates by relaxing the assumption that restingThickness spans ssh=0 to bottomDepth. As such, it is tangentially related to inactive top cells. The change affects cases where config_ALE_thickness_proportionality='restingThickness_times_weights', which is the default.

[non-BFB]

@cbegeman
Copy link
Contributor Author

The results of the compass PR test suite on chrysalis with intel-mpi are:

Test Runtimes:
00:02 PASS ocean_baroclinic_channel_10km_default
00:04 PASS ocean_baroclinic_channel_10km_threads_test
00:04 FAIL ocean_baroclinic_channel_10km_decomp_test
00:04 PASS ocean_baroclinic_channel_10km_restart_test
02:27 PASS ocean_global_convergence_qu_cosine_bell
01:28 PASS ocean_global_ocean_QU240_mesh
00:37 PASS ocean_global_ocean_QU240_PHC_init
00:26 FAIL ocean_global_ocean_QU240_PHC_performance_test
00:52 FAIL ocean_global_ocean_QU240_PHC_restart_test
00:52 FAIL ocean_global_ocean_QU240_PHC_decomp_test
00:53 FAIL ocean_global_ocean_QU240_PHC_threads_test
00:38 FAIL ocean_global_ocean_QU240_PHC_analysis_test
00:59 FAIL ocean_global_ocean_QU240_PHC_dynamic_adjustment
01:31 PASS ocean_global_ocean_QU240_PHC_files_for_e3sm
00:32 PASS ocean_global_ocean_QU240_PHC_RK4_performance_test
00:54 PASS ocean_global_ocean_QU240_PHC_RK4_restart_test
00:52 PASS ocean_global_ocean_QU240_PHC_RK4_decomp_test
00:54 PASS ocean_global_ocean_QU240_PHC_RK4_threads_test
00:00 PASS ocean_global_ocean_QUwISC240_mesh
00:01 PASS ocean_global_ocean_QUwISC240_PHC_init
00:28 FAIL ocean_global_ocean_QUwISC240_PHC_performance_test
00:00 PASS ocean_global_ocean_EC30to60_mesh
00:02 PASS ocean_global_ocean_EC30to60_PHC_init
01:07 FAIL ocean_global_ocean_EC30to60_PHC_performance_test
00:00 PASS ocean_global_ocean_ECwISC30to60_mesh
00:02 PASS ocean_global_ocean_ECwISC30to60_PHC_init
01:14 FAIL ocean_global_ocean_ECwISC30to60_PHC_performance_test
00:10 PASS ocean_ice_shelf_2d_5km_z-star_restart_test
00:12 FAIL ocean_ice_shelf_2d_5km_z-level_restart_test
00:53 FAIL ocean_isomip_plus_2km_z-star_Ocean0
00:07 PASS ocean_ziso_20km_default
00:06 FAIL ocean_ziso_20km_with_frazil
Total runtime 18:36

Diffs are typically on the order of 1e-10, with an exception being `ocean_global_ocean_ECwISC30to60_PHC_performance_test` with tracer diffs 1e1. However, it appears that the `ALE_thickness` solution is still correct.

@cbegeman
Copy link
Contributor Author

This feature was pulled from #5246, since the other code changes related to inactive top cells were BFB within the compass PR test suite. This PR addresses @mark-petersen 's comments #5246 (comment) and #5246 (comment).

@cbegeman
Copy link
Contributor Author

This PR introduces an allocatable array restingThicknessSum of size nCells to achieve BFB results on a few more test cases in the compass PR suite. This commit cbegeman@81180c6 could be introduced to improve performance by reverting this back to a size 1 real with the following results:

Test Runtimes:
00:03 FAIL ocean_baroclinic_channel_10km_default
00:03 FAIL ocean_baroclinic_channel_10km_threads_test
00:04 FAIL ocean_baroclinic_channel_10km_decomp_test
00:03 PASS ocean_baroclinic_channel_10km_restart_test
01:40 PASS ocean_global_convergence_qu_cosine_bell
01:23 PASS ocean_global_ocean_QU240_mesh
00:34 PASS ocean_global_ocean_QU240_PHC_init
00:24 FAIL ocean_global_ocean_QU240_PHC_performance_test
00:49 FAIL ocean_global_ocean_QU240_PHC_restart_test
00:48 FAIL ocean_global_ocean_QU240_PHC_decomp_test
00:49 FAIL ocean_global_ocean_QU240_PHC_threads_test
00:33 FAIL ocean_global_ocean_QU240_PHC_analysis_test
00:54 FAIL ocean_global_ocean_QU240_PHC_dynamic_adjustment
01:27 PASS ocean_global_ocean_QU240_PHC_files_for_e3sm
00:31 FAIL ocean_global_ocean_QU240_PHC_RK4_performance_test
00:50 FAIL ocean_global_ocean_QU240_PHC_RK4_restart_test
00:48 FAIL ocean_global_ocean_QU240_PHC_RK4_decomp_test
00:48 FAIL ocean_global_ocean_QU240_PHC_RK4_threads_test
00:00 PASS ocean_global_ocean_QUwISC240_mesh
00:01 PASS ocean_global_ocean_QUwISC240_PHC_init
00:25 FAIL ocean_global_ocean_QUwISC240_PHC_performance_test
00:00 PASS ocean_global_ocean_EC30to60_mesh
00:02 PASS ocean_global_ocean_EC30to60_PHC_init
01:00 FAIL ocean_global_ocean_EC30to60_PHC_performance_test
00:00 PASS ocean_global_ocean_ECwISC30to60_mesh
00:02 PASS ocean_global_ocean_ECwISC30to60_PHC_init
01:09 FAIL ocean_global_ocean_ECwISC30to60_PHC_performance_test
00:08 FAIL ocean_ice_shelf_2d_5km_z-star_restart_test
00:09 FAIL ocean_ice_shelf_2d_5km_z-level_restart_test
00:36 FAIL ocean_isomip_plus_2km_z-star_Ocean0
00:06 FAIL ocean_ziso_20km_default
00:05 FAIL ocean_ziso_20km_with_frazil
Total runtime 16:18

@jonbob
Copy link
Contributor

jonbob commented Nov 2, 2022

@cbegeman -- any idea who should review this?

@cbegeman
Copy link
Contributor Author

cbegeman commented Nov 2, 2022

@mark-petersen and @xylar Would you like to review this PR since you were reviewers on #5246?

@jonbob jonbob requested review from mark-petersen and xylar November 2, 2022 16:38
@rljacob rljacob added the non-BFB PR makes roundoff changes to answers. label Nov 3, 2022
@cbegeman
Copy link
Contributor Author

cbegeman commented Nov 9, 2022

Per my conversation with @mark-petersen, and since this PR is non-BFB anyhow, I added 2 commits to improve code correctness (cf8c705) and performance (cf8c705), which introduce similar diffs as noted in #5254 (comment). These fails indicate differences from baseline, not execution failures or decomp failures.

Test Runtimes:
00:03 PASS ocean_baroclinic_channel_10km_default
00:03 PASS ocean_baroclinic_channel_10km_threads_test
00:03 FAIL ocean_baroclinic_channel_10km_decomp_test
00:04 PASS ocean_baroclinic_channel_10km_restart_test
01:44 PASS ocean_global_convergence_qu_cosine_bell
01:21 PASS ocean_global_ocean_QU240_mesh
00:33 PASS ocean_global_ocean_QU240_PHC_init
00:23 FAIL ocean_global_ocean_QU240_PHC_performance_test
00:47 FAIL ocean_global_ocean_QU240_PHC_restart_test
00:46 FAIL ocean_global_ocean_QU240_PHC_decomp_test
00:46 FAIL ocean_global_ocean_QU240_PHC_threads_test
00:33 FAIL ocean_global_ocean_QU240_PHC_analysis_test
00:52 FAIL ocean_global_ocean_QU240_PHC_dynamic_adjustment
01:44 PASS ocean_global_ocean_QU240_PHC_files_for_e3sm
00:29 FAIL ocean_global_ocean_QU240_PHC_RK4_performance_test
00:48 FAIL ocean_global_ocean_QU240_PHC_RK4_restart_test
00:45 FAIL ocean_global_ocean_QU240_PHC_RK4_decomp_test
00:46 FAIL ocean_global_ocean_QU240_PHC_RK4_threads_test
00:00 PASS ocean_global_ocean_QUwISC240_mesh
00:00 PASS ocean_global_ocean_QUwISC240_PHC_init
00:24 FAIL ocean_global_ocean_QUwISC240_PHC_performance_test
00:00 PASS ocean_global_ocean_EC30to60_mesh
00:02 PASS ocean_global_ocean_EC30to60_PHC_init
00:59 FAIL ocean_global_ocean_EC30to60_PHC_performance_test
00:00 PASS ocean_global_ocean_ECwISC30to60_mesh
00:02 PASS ocean_global_ocean_ECwISC30to60_PHC_init
01:03 FAIL ocean_global_ocean_ECwISC30to60_PHC_performance_test
00:08 PASS ocean_ice_shelf_2d_5km_z-star_restart_test
00:09 FAIL ocean_ice_shelf_2d_5km_z-level_restart_test
00:38 FAIL ocean_isomip_plus_2km_z-star_Ocean0
00:06 FAIL ocean_ziso_20km_default
00:05 FAIL ocean_ziso_20km_with_frazil

@rljacob
Copy link
Member

rljacob commented Nov 10, 2022

Is this non-BFB for any case with the ocean model?

@cbegeman
Copy link
Contributor Author

@rljacob Yes, it is non-BFB for most ocean cases.

@rljacob
Copy link
Member

rljacob commented Nov 10, 2022

Ok. This will have to wait until after the v2.1 tag probably next week.

@cbegeman
Copy link
Contributor Author

@xylar I made this bugfix 41fcf7c which affected several global test cases including ECwISC30to60_PHC_performance_test. I then verified that restingThicknessDiff was zero everywhere for the ECwISC30to60_PHC_performance_test (for some other test cases it comes in at around machine precision).

This is ready for your and @mark-petersen's review

@cbegeman
Copy link
Contributor Author

cbegeman commented Jan 3, 2023

@xylar and @mark-petersen, hope you both had a relaxing break! Just a reminder that this is awaiting your review.

@xylar
Copy link
Contributor

xylar commented Jan 3, 2023

@cbegeman, I'm definitely happy to look at this. My understanding was that it couldn't go in until after the v2.1 tag gets made so I was holding off a little.

@xylar
Copy link
Contributor

xylar commented Jan 17, 2023

@cbegeman, would it be easy to rebase this to make testing a little cleaner?

@cbegeman cbegeman force-pushed the ocn/modify-zstar-for-inactive-top-cells branch from 41fcf7c to 5ab5930 Compare January 17, 2023 15:46
@cbegeman
Copy link
Contributor Author

@xylar Done. I have not retested since the rebase but looked over the changes and there weren't any conflicts so I don't anticipate issues.

@mark-petersen
Copy link
Contributor

Comparing with ifort debug on chrsalis, between this PR and master, I get:

pwd
/lcrc/group/e3sm/ac.mpetersen/scratch/runs/n/ocean_model_230119_5ab5930c_ch_ifort_openmp_debug_pr_cbeg
...
00:03 FAIL ocean_baroclinic_channel_10km_default
00:03 FAIL ocean_baroclinic_channel_10km_threads_test
00:04 FAIL ocean_baroclinic_channel_10km_decomp_test
00:04 FAIL ocean_baroclinic_channel_10km_restart_test
00:54 PASS ocean_global_ocean_QU240_mesh
00:40 FAIL ocean_global_ocean_QU240_PHC_init
00:28 FAIL ocean_global_ocean_QU240_PHC_performance_test
00:56 FAIL ocean_global_ocean_QU240_PHC_restart_test
00:56 FAIL ocean_global_ocean_QU240_PHC_decomp_test
00:55 FAIL ocean_global_ocean_QU240_PHC_threads_test
00:36 FAIL ocean_global_ocean_QU240_PHC_analysis_test
00:28 FAIL ocean_global_ocean_QU240_PHC_RK4_performance_test
00:57 FAIL ocean_global_ocean_QU240_PHC_RK4_restart_test
00:55 FAIL ocean_global_ocean_QU240_PHC_RK4_decomp_test
00:56 FAIL ocean_global_ocean_QU240_PHC_RK4_threads_test
00:00 PASS ocean_global_ocean_QUwISC240_mesh
00:00 PASS ocean_global_ocean_QUwISC240_PHC_init
00:28 FAIL ocean_global_ocean_QUwISC240_PHC_performance_test
00:08 FAIL ocean_ice_shelf_2d_5km_z-star_restart_test
00:09 FAIL ocean_ice_shelf_2d_5km_z-level_restart_test
00:07 FAIL ocean_ziso_20km_default
00:06 FAIL ocean_ziso_20km_with_frazil

but max differences are all 1e-10 or less on the first timestep, except for one temperature measurement here

ocean_ziso_20km_with_frazil.log:1:  l1: 1.77984318079870e-07

I tested with intel optimized on chrysalis and see non-BFB behavior but at a similar or even smaller error:

output:

pwd
/lcrc/group/e3sm/ac.mpetersen/scratch/runs/n/ocean_model_230119_5ab5930c_ch_ifort_openmp_pr_cbeg/case_outputs
chrlogin1:case_outputs$ grep '1:  l1:' *log
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 2.41809014218247e-13  l2: 3.92715747600655e-14  linf: 1.68753899743024e-14
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 1.53121959556302e-12  l2: 1.33546124411144e-13  linf: 2.13162820728030e-14
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 1.33226762955019e-14  l2: 2.58946281965558e-15  linf: 8.88178419700125e-16
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 4.16161023319343e-13  l2: 4.35078838516904e-14  linf: 1.26704202685346e-14
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 8.46567658159739e-25  l2: 8.27407773302233e-25  linf: 8.27180612553028e-25
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 2.83491339534174e-20  l2: 1.60842412919921e-20  linf: 1.18584612615602e-20
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 4.82014686546900e-20  l2: 4.12255494193478e-20  linf: 4.06575814682064e-20
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 5.89805981832114e-17  l2: 3.55512521017773e-17  linf: 2.77555756156289e-17
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 5.29395592033938e-22  l2: 3.17637355220363e-22  linf: 2.11758236813575e-22
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 2.11758236813575e-22  l2: 2.11758236813575e-22  linf: 2.11758236813575e-22
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 2.41809014218247e-13  l2: 3.92715747600655e-14  linf: 1.68753899743024e-14
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 1.53121959556302e-12  l2: 1.33546124411144e-13  linf: 2.13162820728030e-14
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 1.33226762955019e-14  l2: 2.58946281965558e-15  linf: 8.88178419700125e-16
ocean_global_ocean_QU240_PHC_analysis_test.log:1:  l1: 4.16161023319343e-13  l2: 4.35078838516904e-14  linf: 1.26704202685346e-14
ocean_global_ocean_QU240_PHC_decomp_test.log:1:  l1: 2.41809014218247e-13  l2: 3.92715747600655e-14  linf: 1.68753899743024e-14
ocean_global_ocean_QU240_PHC_decomp_test.log:1:  l1: 1.53121959556302e-12  l2: 1.33546124411144e-13  linf: 2.13162820728030e-14
ocean_global_ocean_QU240_PHC_decomp_test.log:1:  l1: 1.33226762955019e-14  l2: 2.58946281965558e-15  linf: 8.88178419700125e-16
ocean_global_ocean_QU240_PHC_decomp_test.log:1:  l1: 4.16161023319343e-13  l2: 4.35078838516904e-14  linf: 1.26704202685346e-14
ocean_global_ocean_QU240_PHC_decomp_test.log:1:  l1: 2.41809014218247e-13  l2: 3.92715747600655e-14  linf: 1.68753899743024e-14
ocean_global_ocean_QU240_PHC_decomp_test.log:1:  l1: 1.53121959556302e-12  l2: 1.33546124411144e-13  linf: 2.13162820728030e-14
ocean_global_ocean_QU240_PHC_decomp_test.log:1:  l1: 1.33226762955019e-14  l2: 2.58946281965558e-15  linf: 8.88178419700125e-16
ocean_global_ocean_QU240_PHC_decomp_test.log:1:  l1: 4.16161023319343e-13  l2: 4.35078838516904e-14  linf: 1.26704202685346e-14
ocean_global_ocean_QU240_PHC_performance_test.log:1:  l1: 2.41809014218247e-13  l2: 3.92715747600655e-14  linf: 1.68753899743024e-14
ocean_global_ocean_QU240_PHC_performance_test.log:1:  l1: 1.53121959556302e-12  l2: 1.33546124411144e-13  linf: 2.13162820728030e-14
ocean_global_ocean_QU240_PHC_performance_test.log:1:  l1: 1.33226762955019e-14  l2: 2.58946281965558e-15  linf: 8.88178419700125e-16
ocean_global_ocean_QU240_PHC_performance_test.log:1:  l1: 4.16161023319343e-13  l2: 4.35078838516904e-14  linf: 1.26704202685346e-14
ocean_global_ocean_QU240_PHC_threads_test.log:1:  l1: 2.41809014218247e-13  l2: 3.92715747600655e-14  linf: 1.68753899743024e-14
ocean_global_ocean_QU240_PHC_threads_test.log:1:  l1: 1.53121959556302e-12  l2: 1.33546124411144e-13  linf: 2.13162820728030e-14
ocean_global_ocean_QU240_PHC_threads_test.log:1:  l1: 1.33226762955019e-14  l2: 2.58946281965558e-15  linf: 8.88178419700125e-16
ocean_global_ocean_QU240_PHC_threads_test.log:1:  l1: 4.16161023319343e-13  l2: 4.35078838516904e-14  linf: 1.26704202685346e-14
ocean_global_ocean_QU240_PHC_threads_test.log:1:  l1: 2.41809014218247e-13  l2: 3.92715747600655e-14  linf: 1.68753899743024e-14
ocean_global_ocean_QU240_PHC_threads_test.log:1:  l1: 1.53121959556302e-12  l2: 1.33546124411144e-13  linf: 2.13162820728030e-14
ocean_global_ocean_QU240_PHC_threads_test.log:1:  l1: 1.33226762955019e-14  l2: 2.58946281965558e-15  linf: 8.88178419700125e-16
ocean_global_ocean_QU240_PHC_threads_test.log:1:  l1: 4.16161023319343e-13  l2: 4.35078838516904e-14  linf: 1.26704202685346e-14
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 1.42926583572957e-10  l2: 2.37927696560893e-12  linf: 3.08197911635943e-13
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 1.27133858995876e-10  l2: 1.39852879689453e-12  linf: 6.39488462184090e-14
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 6.86917189796077e-12  l2: 6.18985808220676e-13  linf: 3.77475828372553e-13
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 9.38640683650718e-11  l2: 9.94416854543463e-13  linf: 5.56360513215282e-14
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 4.32320845789036e-12  l2: 6.83888587839228e-13  linf: 3.99680288865056e-13
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 5.09248893054703e-13  l2: 1.76971640224626e-14  linf: 1.90993054705046e-15
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 3.41571075826333e-14  l2: 7.67771011031871e-15  linf: 3.25260651745651e-15
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 1.13805449439286e-14  l2: 4.65077404703199e-15  linf: 2.71484223990370e-15
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 2.83925443919641e-18  l2: 1.54497323549323e-18  linf: 1.42301535138722e-18
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 1.21680443498917e-12  l2: 6.30116112611175e-13  linf: 5.75539615965681e-13
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 1.17961196366423e-14  l2: 6.37285181808429e-15  linf: 5.88418203051333e-15
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 2.60979404319989e-11  l2: 8.09107670219246e-13  linf: 1.53654866608122e-13
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 3.17683657158341e-11  l2: 7.52806531793378e-13  linf: 5.68434188608080e-14
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 5.60143565645627e-15  l2: 1.94667885256388e-16  linf: 2.10064170919066e-17
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 1.57872012412506e-16  l2: 5.48635964143543e-18  linf: 5.92076030130756e-19
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 3.77475828372553e-15  l2: 1.42177919158667e-15  linf: 8.88178419700125e-16
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 6.39488462184090e-14  l2: 2.30242161279927e-14  linf: 1.42108547152020e-14
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 2.00950367457153e-14  l2: 1.10749963796935e-14  linf: 1.02140518265514e-14
ocean_global_ocean_QUwISC240_PHC_performance_test.log:1:  l1: 8.48103809403256e-11  l2: 4.54707558752279e-11  linf: 4.18367562815547e-11

Copy link
Contributor

@mark-petersen mark-petersen left a comment

Choose a reason for hiding this comment

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

Given the small size of these differences, and that there are clearly small but sensible changes in the code (minimum on the denominator, change in order of operations), I am happy for this to be merged in.

@cbegeman
Copy link
Contributor Author

@mark-petersen Thank you for the review and testing!

Copy link
Contributor

@xylar xylar left a comment

Choose a reason for hiding this comment

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

@cbegeman, this looks really good to me. I'm approving based on your and @mark-petersen's through thorough testing.

Let's see how @jonbob's 10-year E3SM runs go as well, but I expect only tiny changes.

@cbegeman
Copy link
Contributor Author

@xylar Thanks for your review!

@jonbob Let me know if you would like any further help from me with testing. Thanks!

@rljacob
Copy link
Member

rljacob commented Feb 16, 2023

status: checking MPAS-Analysis output.

@rljacob
Copy link
Member

rljacob commented Mar 2, 2023

status: MPAS-Analysis failed. Was fixed. Need to rerun tests.

@jonbob
Copy link
Contributor

jonbob commented Mar 6, 2023

@xylar and @cbegeman -- I reran ten-year tests now that we've fixed the fill value mask issue. Comparison mpas-analysis output is at: 20230302.5254test.anvil

@cbegeman
Copy link
Contributor Author

cbegeman commented Mar 6, 2023

Thanks @jonbob! These results look acceptable to me.

@jonbob
Copy link
Contributor

jonbob commented Mar 6, 2023

Thanks @cbegeman -- please reach out to anyone else who might take a peek. @mark-petersen, you had reviewed this PR -- can you check and make sure these results look right to you?

@xylar
Copy link
Contributor

xylar commented Mar 7, 2023

@jonbob and @cbegeman, yes, I think the differences all look in the acceptable (non-climate-changing) range.

@xylar
Copy link
Contributor

xylar commented Mar 7, 2023

I agree, it would be good to have a look from @mark-petersen.

@mark-petersen
Copy link
Contributor

@jonbob The link for the analysis, 20230302.5254test.anvil, is not working. Can you check that? Thanks.

@jonbob
Copy link
Contributor

jonbob commented Mar 13, 2023

@mark-petersen -- lcrc is down for maintenance today

@mark-petersen
Copy link
Contributor

Thanks. Yes, the two simulations are similar and appear to differ by phase only, not mean or magnitude of the variability. See, for example, the heat and transport plots:
image
This looks fine to merge. Thanks @jonbob for the simulations.

jonbob added a commit that referenced this pull request Mar 14, 2023
…next (PR #5254)

Modify ocean z-star ALE coordinate for inactive top cells

This PR increases the generalizability of vertical coordinates by
relaxing the assumption that restingThickness spans ssh=0 to
bottomDepth. As such, it is tangentially related to inactive top cells.
The change affects cases where
  config_ALE_thickness_proportionality='restingThickness_times_weights'
which is the default.

[non-BFB]
@jonbob
Copy link
Contributor

jonbob commented Mar 14, 2023

Testing show expected baseline DIFFs, merged to next

@jonbob jonbob merged commit 8266141 into E3SM-Project:master Mar 15, 2023
@jonbob
Copy link
Contributor

jonbob commented Mar 15, 2023

merged to master and expected DIFFs blessed

@xylar
Copy link
Contributor

xylar commented Mar 15, 2023

Thanks, @cbegeman, for making these changes 6 months ago and seeing the process through. Thanks @jonbob for shepherding this through.

@cbegeman
Copy link
Contributor Author

Thanks @xylar, @mark-petersen, and @jonbob for your help with this PR! I'm looking forward to using the added flexibility in vertical coordinates for ice shelf cavities!

@cbegeman cbegeman deleted the ocn/modify-zstar-for-inactive-top-cells branch March 15, 2023 21:49
jonbob added a commit that referenced this pull request Mar 28, 2023
…s' (PR #5254)"

This reverts commit 8266141, reversing
changes made to 3a59081.
@jonbob jonbob mentioned this pull request Mar 28, 2023
jonbob added a commit that referenced this pull request Mar 28, 2023
Revert z-star PR

Reverts PR #5254, which modified ocean z-star ALE coordinate for
inactive top cells. More testing shows it causes problems for cryo
configurations with ice shelf cavities.

Fixes #5536

[non-BFB]
jonbob added a commit that referenced this pull request Mar 29, 2023
Revert z-star PR

Reverts PR #5254, which modified ocean z-star ALE coordinate for
inactive top cells. More testing shows it causes problems for cryo
configurations with ice shelf cavities.

Fixes #5536

[non-BFB]
xylar added a commit to xylar/compass that referenced this pull request Apr 2, 2023
This merge updates the E3SM-Project submodule from [c9201a4](https://github.com/E3SM-Project/E3SM/tree/c9201a4f44540bb74cb3650e32bcbe27fb762ab1) to [b4d5b10600](https://github.com/E3SM-Project/E3SM/tree/b4d5b10600).

This update includes the following MPAS-Ocean and MPAS-Frameworks PRs (check mark indicates bit-for-bit with previous PR in the list):
- [ ]  (ocn) E3SM-Project/E3SM#5254
- [ ]  (fwk) E3SM-Project/E3SM#5490
- [ ]  (ocn) E3SM-Project/E3SM#5541
- [ ]  (fwk) E3SM-Project/E3SM#5498
- [ ]  (ocn) E3SM-Project/E3SM#5564
- [ ]  (ocn) E3SM-Project/E3SM#5553
- [ ]  (ocn) E3SM-Project/E3SM#5519
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
mpas-ocean non-BFB PR makes roundoff changes to answers.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants