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

Stop masking group 1 output where icec > icen #1019

Merged

Conversation

benoitp-cmc
Copy link
Contributor

@benoitp-cmc benoitp-cmc commented Jun 14, 2023

Pull Request Summary

Stop masking group 1 output where icec > icen (IC0) or where point is dry

Description

  • Stop masking group 1 output where icec > icen in gint, ounf and outf. For gint, remove active check for group 1. For ounf and outf, remove check on mapsta, redundant with check on UNDEF.
  • Add ICE output in mww3_test_01 to provide context for the test and to display the change in this pull request.
  • Reduce code duplication in ounf
  • Fix bug of CGE output in ounf where UNDEF got their unit changed. Probably was invisible before the removal of the mapsta check.

Please also include the following information:

  • Add any suggestions for a reviewer: @JessicaMeixner-NOAA @ukmo-ccbunney
  • Mention any labels that should be added: enhancement
  • Are answer changes expected from this PR? Yes. Regression test change (mww3_test_01), field output change (netcdf, outf and potentially ww3_grib through the gint change). Group 1 was previously getting masked in gint/ounf/outf, it no longer is.

Issue(s) addressed

Commit Message

Stop masking group 1 output where icec > icen

Check list

Testing

  • How were these changes tested? Regression tests. Local tests (for gint)
  • Are the changes covered by regression tests? Partially, mww3_test_01 was modified to test the ice aspect.
  • Have the matrix regression tests been run (if yes, please note HPC and compiler)? Yes, ECCC HPC, Intel compiler
  • Please indicate the expected changes in the regression test output, (Note the list of known non-identical tests.)
    • Expecting differences, unrelated to PR, to ww3_ts3, ww3_tp2.14, ww3_tp2.21, mww3_test_03
    • Differences related to PR: mww3_test_01, mww3_test_06, mww3_test_08, ww3_tp1.8, ww3_tp2.19, ww3_ts4
  • Please provide the summary output of matrix.comp (matrix.Diff.txt, matrixCompFull.txt and matrixCompSummary.txt):

matrixCompFull.txt
matrixCompSummary.txt
matrixDiff.txt

@benoitp-cmc
Copy link
Contributor Author

benoitp-cmc commented Jun 14, 2023

About the regression tests, all the differences I get are as expected.

  • Mapsta of 15 at end of canal where depth is barely positive. Group 1 is no longer masked there.
    • ww3_tp1.8/work_BJ_PR3_UQ
    • ww3_tp1.8/work_PR3_UQ
  • Looks like the same as above, unstructured
    • ww3_tp2.19/work_1[ABC]_a
    • ww3_ts4/work_ug_MPI
  • Mapsta of 8 where there is nested grid. Group 1 no longer masked there.
    • mww3_test_06/work_PR3_UNO_d
    • mww3_test_06/work_PR3_UQ_d
  • Mapsta of 63 in the middle. Group 1 no longer masked there.
    • mww3_test_08/work_ST4_PR3_UQ_MPI
  • In mww3_test_01 I added ice output. You'll see the ice as extra file/fields. I applied that change to my reference too so what I see is ice (group 1) is no longer masked where icec > 75%.
  • I was getting diferences in regression test with CGE in ww3_tp2.6/work_ST[04]. After adding the check on undef, those differences go away.

Some of those mapsta values look pretty exotic to me. I did not dig to see if they made sense as that was outside of the scope of this PR. The group 1 output should be defined anywhere except over land.

  • Mapsta 15 seems to be points that are active but happen to be dry
  • Mapsta 8 is about nested grid
  • Mapsta 63, no idea.

@benoitp-cmc
Copy link
Contributor Author

This will have to be put on hold. Things are fine with ounf and outf but not with gint. Removing the ACTIVE check on group1 is apparently not enough.

@MatthewMasarik-NOAA
Copy link
Collaborator

This will have to be put on hold. Things are fine with ounf and outf but not with gint. Removing the ACTIVE check on group1 is apparently not enough.

Hi @benoitp-cmc, I wanted to check with you to make sure we're on the same page. It sounds like you're still going to work on this more, so I should hold off on any testing or review for now?

@benoitp-cmc
Copy link
Contributor Author

@MatthewMasarik-NOAA I have a solution for the problem and I have pushed it (in the end, it's what I had done previously in #743). I am re-running the regression tests that use gint to see if there is any difference.

Basically, the first ACTIVE is defined to see if there are grids that can be used for interpolation. The second ACTIVE is used to bypass interpolation for group 2+ (and it included most of group 1 before this PR). Having the first ACTIVE stay active with ice or dry land allows group 1 to have the information it needs for interpolation. This change doesn't seem to noticeably impact performance in my test case.

@MatthewMasarik-NOAA
Copy link
Collaborator

@MatthewMasarik-NOAA I have a solution for the problem and I have pushed it (in the end, it's what I had done previously in #743). I am re-running the regression tests that use gint to see if there is any difference.

Basically, the first ACTIVE is defined to see if there are grids that can be used for interpolation. The second ACTIVE is used to bypass interpolation for group 2+ (and it included most of group 1 before this PR). Having the first ACTIVE stay active with ice or dry land allows group 1 to have the information it needs for interpolation. This change doesn't seem to noticeably impact performance in my test case.

Great, thank you for the update, @benoitp-cmc! I'll look forward to reviewing after your new regtests complete.

@benoitp-cmc
Copy link
Contributor Author

@MatthewMasarik-NOAA I would say this is ready. My local tests behave as expected. The latest regression tests did not change anything (as expected). I failed to run the ufs test cases. They are the only ones that will be worth checking to see the gint difference.

@MatthewMasarik-NOAA
Copy link
Collaborator

@MatthewMasarik-NOAA I would say this is ready. My local tests behave as expected. The latest regression tests did not change anything (as expected). I failed to run the ufs test cases. They are the only ones that will be worth checking to see the gint difference.

Awesome. Thanks, @benoitp-cmc. I'll start the tests now. Note, I'll be out starting tomorrow for the holiday weekend here, so it may be ~Tue next week when you can expect to hear back.

@MatthewMasarik-NOAA
Copy link
Collaborator

Hi @benoitp-cmc, I looked at the runs when I returned this morning and there were quite a few differences, so I re-ran to be safe. The eval is not yet complete but I can see there are still a number of non-b4b's. Some are maybe log files and such that are OK, so I need to go through them a little closer to see what is going on. I should be able to post a success, or the list of regtests that I'm unable to resolve, by tomorrow.

@MatthewMasarik-NOAA
Copy link
Collaborator

@benoitp-cmc I wanted to give a short update. The re-runs I did gave similar results with a large amount of non-identicals. I'm working through these to sort the tests you listed in the header as expecting to change, vs. the known non-b4b's. I'll post back when I've got that finished tomorrow or Friday.

@MatthewMasarik-NOAA
Copy link
Collaborator

@benoitp-cmc I have an update with some matrix.comp output. Comparing regtest results for current develop vs. your branch gives a lot of non-identical, as expected. When I compare your branch against itself we get only the known non-b4b. This will take a little longer to process than initially thought, just to be careful we are verifying and documenting the changes. This is a great PR and were looking forward to getting it approved.

matrix.comp - develop vs. fix

**********************************************************************                 
********************* non-identical cases ****************************                 
**********************************************************************                 
mww3_test_01/./work_PR2_UNO                     (2 files differ)                       
mww3_test_01/./work_PR1_MPI                     (2 files differ)                       
mww3_test_01/./work_PR3_UNO_MPI                     (2 files differ)                   
mww3_test_01/./work_PR3_UQ                     (2 files differ)                        
mww3_test_01/./work_PR3_UNO                     (2 files differ)                       
mww3_test_01/./work_PR1                     (2 files differ)                           
mww3_test_01/./work_PR2_UQ                     (2 files differ)                        
mww3_test_01/./work_PR2_UQ_MPI                     (2 files differ)                    
mww3_test_01/./work_PR3_UQ_MPI                     (2 files differ)                    
mww3_test_01/./work_PR2_UNO_MPI                     (2 files differ)                   
mww3_test_03/./work_PR1_MPI_e                     (1 files differ)                     
mww3_test_03/./work_PR1_c                     (1 files differ)                         
mww3_test_03/./work_PR2_UNO_c                     (1 files differ)                     
mww3_test_03/./work_PR3_UQ_MPI_e_c                     (1 files differ)                
mww3_test_03/./work_PR1_MPI_d                     (1 files differ)                     
mww3_test_03/./work_PR3_UNO_MPI_b_c                     (1 files differ)               
mww3_test_03/./work_PR3_UNO_c_c                     (1 files differ)                   
mww3_test_03/./work_PR3_UQ_MPI_c                     (1 files differ)                  
mww3_test_03/./work_PR2_UNO_MPI_d                     (1 files differ)                 
mww3_test_03/./work_PR2_UNO_d                     (1 files differ)                     
mww3_test_03/./work_PR3_UNO_MPI_d_c                     (1 files differ)               
mww3_test_03/./work_PR1_d                     (1 files differ)                         
mww3_test_03/./work_PR2_UQ_c                     (1 files differ)                      
mww3_test_03/./work_PR3_UQ_b                     (1 files differ)                      
mww3_test_03/./work_PR3_UNO_MPI_d                     (1 files differ)                 
mww3_test_03/./work_PR2_UNO_MPI_e                     (1 files differ)                 
mww3_test_03/./work_PR2_UQ_MPI_b                     (1 files differ)                  
mww3_test_03/./work_PR3_UNO_d                     (1 files differ)                     
mww3_test_03/./work_PR3_UNO_MPI_c_c                     (1 files differ)               
mww3_test_03/./work_PR2_UNO_MPI_d2                     (9 files differ)                
mww3_test_03/./work_PR3_UNO_MPI_b                     (1 files differ)                 
mww3_test_03/./work_PR3_UNO_b_c                     (1 files differ)                   
mww3_test_03/./work_PR1_b                     (1 files differ)                         
mww3_test_03/./work_PR2_UNO_b                     (1 files differ)                     
mww3_test_03/./work_PR3_UQ_MPI_c_c                     (1 files differ)                
mww3_test_03/./work_PR2_UQ_d                     (1 files differ)                      
mww3_test_03/./work_PR3_UQ_c                     (1 files differ)                      
mww3_test_03/./work_PR1_MPI_c                     (1 files differ)                     
mww3_test_03/./work_PR1_MPI_d2                     (14 files differ)                   
mww3_test_03/./work_PR3_UNO_b                     (1 files differ)                     
mww3_test_03/./work_PR3_UNO_MPI_d2_c                     (11 files differ)             
mww3_test_03/./work_PR1_MPI_b                     (1 files differ)                     
mww3_test_03/./work_PR3_UQ_MPI_d2_c                     (15 files differ)              
mww3_test_03/./work_PR3_UNO_MPI_d2                     (12 files differ)               
mww3_test_03/./work_PR3_UQ_MPI_b_c                     (1 files differ)                
mww3_test_03/./work_PR3_UQ_d_c                     (1 files differ)                    
mww3_test_03/./work_PR2_UQ_MPI_d2                     (15 files differ)                
mww3_test_03/./work_PR3_UQ_MPI_d_c                     (1 files differ)                
mww3_test_03/./work_PR3_UQ_MPI_d                     (1 files differ)                  
mww3_test_03/./work_PR3_UQ_d                     (1 files differ)                      
mww3_test_03/./work_PR3_UNO_d_c                     (1 files differ)                   
mww3_test_03/./work_PR3_UQ_c_c                     (1 files differ)                    
mww3_test_03/./work_PR3_UQ_MPI_e                     (1 files differ)                  
mww3_test_03/./work_PR2_UNO_MPI_b                     (1 files differ)                 
mww3_test_03/./work_PR3_UNO_MPI_c                     (1 files differ)                 
mww3_test_03/./work_PR2_UQ_b                     (1 files differ)                      
mww3_test_03/./work_PR3_UNO_c                     (1 files differ)                     
mww3_test_03/./work_PR2_UQ_MPI_d                     (1 files differ)                  
mww3_test_03/./work_PR3_UNO_MPI_e_c                     (1 files differ)               
mww3_test_03/./work_PR2_UQ_MPI_c                     (1 files differ)                  
mww3_test_03/./work_PR2_UNO_MPI_c                     (1 files differ)                 
mww3_test_03/./work_PR3_UQ_b_c                     (1 files differ)                    
mww3_test_03/./work_PR3_UQ_MPI_b                     (1 files differ)                  
mww3_test_03/./work_PR3_UQ_MPI_d2                     (15 files differ)                
mww3_test_06/./work_PR3_UNO_d                     (2 files differ)                     
mww3_test_06/./work_PR3_UQ_d                     (2 files differ)                      
mww3_test_08/./work_ST4_PR3_UQ_MPI                     (28 files differ)
ww3_tp1.8/./work_PR3_UQ                     (2 files differ)                           
ww3_tp1.8/./work_BJ_PR3_UQ                     (2 files differ)                        
ww3_tp2.10/./work_MPI_OMPH                     (7 files differ)                        
ww3_tp2.16/./work_MPI_OMPH                     (4 files differ)                        
ww3_tp2.19/./work_1B_a                     (3 files differ)                            
ww3_tp2.19/./work_1A_a                     (3 files differ)                            
ww3_tp2.19/./work_1C_a                     (3 files differ)                            
ww3_ts4/./work_ug_MPI                     (1 files differ)                             
ww3_ufs1.1/./work_unstr_b                     (1 files differ)                         
ww3_ufs1.1/./work_c_npl                     (1 files differ)                           
ww3_ufs1.1/./work_unstr_a                     (1 files differ)                         
ww3_ufs1.1/./work_unstr_c                     (1 files differ)                         
ww3_ufs1.1/./work_d                     (1 files differ)                               
ww3_ufs1.1/./work_c_nth                     (1 files differ)                           
ww3_ufs1.1/./work_c                     (1 files differ)                               
ww3_ufs1.2/./work_a                     (6 files differ)                               
ww3_ufs1.2/./work_l                     (1 files differ)                               
ww3_ufs1.2/./work_c                     (3 files differ)                               
ww3_ufs1.2/./work_b                     (6 files differ)                               
ww3_ufs1.3/./work_a                     (9 files differ)                               
                                                                                       
**********************************************************************                 
************************ identical cases *****************************                 
**********************************************************************

Full output: dev.fix.matrixCompSummary.txt

matrix.comp - fix vs. fix

**********************************************************************      
********************* non-identical cases ****************************      
**********************************************************************      
mww3_test_03/./work_PR1_MPI_e                     (1 files differ)          
mww3_test_03/./work_PR3_UNO_MPI_e                     (1 files differ)      
mww3_test_03/./work_PR2_UNO_MPI_d2                     (15 files differ)    
mww3_test_03/./work_PR1_MPI_d2                     (8 files differ)         
mww3_test_03/./work_PR3_UNO_MPI_d2_c                     (15 files differ)  
mww3_test_03/./work_PR3_UQ_MPI_d2_c                     (16 files differ)   
mww3_test_03/./work_PR3_UNO_MPI_d2                     (12 files differ)    
mww3_test_03/./work_PR2_UQ_MPI_d2                     (15 files differ)     
mww3_test_03/./work_PR3_UQ_MPI_d2                     (15 files differ)     
ww3_tp2.10/./work_MPI_OMPH                     (7 files differ)             
ww3_tp2.16/./work_MPI_OMPH                     (4 files differ)             
ww3_ufs1.3/./work_a                     (3 files differ)                    
                                                                            
**********************************************************************      
************************ identical cases *****************************      
**********************************************************************

Full output: fix.fix.matrixCompSummary.txt

@MatthewMasarik-NOAA
Copy link
Collaborator

@ukmo-ccbunney, I added you as a reviewer based on the PR containing some SMC related parts.

@benoitp-cmc
Copy link
Contributor Author

@MatthewMasarik-NOAA thanks for taking the time. The differences are in the right places. I'm looking forward to hear about the gint cases in ufs1.2 work_[ab] and ufs1.3.

@MatthewMasarik-NOAA
Copy link
Collaborator

@MatthewMasarik-NOAA thanks for taking the time. The differences are in the right places. I'm looking forward to hear about the gint cases in ufs1.2 work_[ab] and ufs1.3.

Sure thing, @benoitp-cmc. Thank you for the update on the differences.

@MatthewMasarik-NOAA
Copy link
Collaborator

@benoitp-cmc I wanted to give a status update. The review is going well. I'm just documenting each of the differences so we have it as part of the PR documentation. So far the differences in the ufs1.x tests are due to set values vs. uninitialized values, so I believe the type of differences we want to see. My review should be done earlier next week, and likely move towards approval after the long (US) holiday weekend.

@JessicaMeixner-NOAA
Copy link
Collaborator

@benoitp-cmc I hope you enjoyed your time off! I have run the regtests on this PR with the updated develop branches and am going through their differences using the notes Matt left me. I may or may not get finished going through this today (probalby not to be honest) and then will meet up with Matt when he returns on Monday to finish this up. I'll ping you if I run into any issues. I know you were interested in the ufs test results (they're many diffs, so they take a long time to process), but I'll try to see if I can get a few of those results shared today if not, early next week.

@JessicaMeixner-NOAA
Copy link
Collaborator

@benoitp-cmc I did not get time to complete this PR, since @MatthewMasarik-NOAA is back he's going to take this back over and will provide a full update on all PR tests in the next few days. (He has a very detailed list, but nothing unexpected so far and seeing the expected changes).

@MatthewMasarik-NOAA
Copy link
Collaborator

@benoitp-cmc thank you for your patience, I wanted to give a brief update. I appreciate @JessicaMeixner-NOAA working on this while I was away. Today our main HPC is not available, but I will start posting feedback tomorrow. I had planned initially to give all the feedback at the end, but I've been processing groups at a time, so I'll start posting the groups as I have them processed. As Jessica mentioned, so far there has been nothing unexpected, but there are a lot of differences, so for future reference I thought it would be useful to have all the changes documented. I will start by posting the ufs tests I have completed tomorrow.

@MatthewMasarik-NOAA
Copy link
Collaborator

MatthewMasarik-NOAA commented Jul 20, 2023

Update: @benoitp-cmc thank you for your patience. Our HPC returned last evening and I have the first group of regtest differences below.

I'll explain how I've documented the differences with the first line below to demonstrate. I've counted each occurrence where a variable has been altered (ucur:1778), then summed all these for a file (8890), and finally compared against the total changes found (8890/8890). In this case all the differences found are accounted for by variable initialization (compared with MissingValue = 9.96921e+36). This is also the case for the remaining files, so all differences found ww3_ufs1.1 are accounted for.

ww3_ufs1.1

matrix.comp
ww3_ufs1.1/./work_unstr_b                     (1 files differ)            
ww3_ufs1.1/./work_c_npl                     (1 files differ)              
ww3_ufs1.1/./work_unstr_a                     (1 files differ)            
ww3_ufs1.1/./work_unstr_c                     (1 files differ)            
ww3_ufs1.1/./work_d                     (1 files differ)                  
ww3_ufs1.1/./work_c_nth                     (1 files differ)              
ww3_ufs1.1/./work_c                     (1 files differ)
diff counts
regtest                                  variable:replace-missing-value-count                           |variable-count-sum/total 
-----------------------------------      -------------------------------------------------------------  |----------               
ww3_ufs1.1/work_unstr_b/ww3.2021.nc      ucur:147714  vcur:147714  uwnd:147714  vwnd:147714 ice:147714  | 738570/738570
ww3_ufs1.1/work_c_npl/ww3.202104.nc      ucur:1778    vcur:1778    uwnd:1778    vwnd:1778   ice:1778    | 8890/8890               
ww3_ufs1.1/work_unstr_a/ww3.2021.nc      ucur:147714  vcur:147714  uwnd:147714  vwnd:147714 ice:147714  | 738570/738570 
ww3_ufs1.1/work_unstr_c/ww3.2021.nc      ucur:147714  vcur:147714  uwnd:147714  vwnd:147714 ice:147714  | 738570/738570
ww3_ufs1.1/work_d/ww3.202104.nc          ucur:1778    vcur:1778    uwnd:1778    vwnd:1778   ice:1778    | 8890/8890
ww3_ufs1.1/work_c_nth/ww3.202104.nc      ucur:1778    vcur:1778    uwnd:1778    vwnd:1778   ice:1778    | 8890/8890               
ww3_ufs1.1/work_c/ww3.202104.nc          ucur:1778    vcur:1778    uwnd:1778    vwnd:1778   ice:1778    | 8890/8890      

@MatthewMasarik-NOAA
Copy link
Collaborator

MatthewMasarik-NOAA commented Jul 20, 2023

ww3_ufs1.2

For these regtests I've looked at all the *.nc files currently, and I'll follow up separately for the 2 out_grd.* binary files and 2 *.grb2 files. For the regtest files without an '*' in front all are accounted for by initialization of ucur,vcur,uwnd,vwnd, and ice. See the variables affected for the two '*' -cases below.

matrix.comp
ww3_ufs1.2/./work_a                     (6 files differ)                
ww3_ufs1.2/./work_l                     (1 files differ)                
ww3_ufs1.2/./work_c                     (3 files differ)                
ww3_ufs1.2/./work_b                     (6 files differ)
diff counts
 ww3_ufs1.2/work_a/glo_15mxt.grb2                       # grib2                                                                                             
 ww3_ufs1.2/work_a/out_grd.glo_15mxt                    # binary                                                                                            
                                                                                                                                                            
 ww3_ufs1.2/work_a/ww3_ounf_aoc_9km/ww3.202104.nc       ucur:1284925    vcur:1284925    uwnd:1284925    vwnd:1284925    ice:1284925 | 6424625/6424625       
*ww3_ufs1.2/work_a/ww3_ounf_glo_15mxt/ww3.202104.nc     ucur:924127     vcur:924127     uwnd:924127     vwnd:924127     ice:924127  | 4620635/4627280       
 ww3_ufs1.2/work_a/ww3_ounf_gnh_10m/ww3.202104.nc       ucur:163266     vcur:163266     uwnd:163266     vwnd:163266     ice:163266  | 816330/816330         
 ww3_ufs1.2/work_a/ww3_ounf_gsh_15m/ww3.202104.nc       ucur:171992     vcur:171992     uwnd:171992     vwnd:171992     ice:171992  | 859960/859960         
                                                                                                                                                            
 ww3_ufs1.2/work_l/ww3_ounf_hafsl/ww3.202104.nc         ucur:505        vcur:505        uwnd:505        vwnd:505        ice:505     | 2525/2525             
                                                                                                                                                            
 ww3_ufs1.2/work_c/ww3_ounf_aoc_9km/ww3.202104.nc       ucur:802821     vcur:802821     uwnd:802821     vwnd:802821     ice:802821  | 4014105/4014105       
 ww3_ufs1.2/work_c/ww3_ounf_gnh_10m/ww3.202104.nc       ucur:102190     vcur:102190     uwnd:102190     vwnd:102190     ice:102190  | 510950/510950         
 ww3_ufs1.2/work_c/ww3_ounf_gsh_15m/ww3.202104.nc       ucur:106560     vcur:106560     uwnd:106560     vwnd:106560     ice:106560  | 532800/532800         
                                                                                                                                                            
 ww3_ufs1.2/work_b/glo_15mxt.grb2                       # grib2                                                                                             
 ww3_ufs1.2/work_b/out_grd.glo_15mxt                    # binary                                                                                            
                                                                                                                                                            
 ww3_ufs1.2/work_b/ww3_ounf_aoc_9km/ww3.202104.nc       ucur:1284925    vcur:1284925    uwnd:1284925    vwnd:1284925    ice:1284925 | 6424625/6424625       
*ww3_ufs1.2/work_b/ww3_ounf_glo_15mxt/ww3.202104.nc     ucur:924127     vcur:924127     uwnd:924127     vwnd:924127     ice:924127  | 4620635/4627280       
 ww3_ufs1.2/work_b/ww3_ounf_gnh_10m/ww3.202104.nc       ucur:163266     vcur:163266     uwnd:163266     vwnd:163266     ice:163266  | 816330/816330         
 ww3_ufs1.2/work_b/ww3_ounf_gsh_15m/ww3.202104.nc       ucur:171992     vcur:171992     uwnd:171992     vwnd:171992     ice:171992  | 859960/859960
* =>  For these 2 cases the follow variables are impacted:   ucur, vcur, uwnd, vwnd, ice,
         MAPSTA, hs, t02, t01, fp, dir, dp, phs0, phs1, phs2, ptp0, ptp1, ptp2, pdir0. 

For these '*'-cases I have not confirmed yet that these are all due to expected inititalizations, but believe that's what I will find. I'll update when I have that.

@benoitp-cmc
Copy link
Contributor Author

Thanks @MatthewMasarik-NOAA

I'm surprised anything got affected outside of group 1 or MAPSTA. If you want me to have a look let me know.

@MatthewMasarik-NOAA
Copy link
Collaborator

ww3_ufs1.3

Again I'll cover the *.nc files currently, and follow up separately for the out_grd.* and *.grb2.
For the regtest files without an '*' in front all are accounted for by initialization of uwnd,vwnd, and ice. See the variables affected for the two '*' -cases below.

matrix.comp
ww3_ufs1.3/./work_a                            (9 files differ)     

# (3 files differ) known non-b4b
# ---------------------------------------
  - 20190830.030000.restart.ao_20m
  - 20190830.030000.restart.glo_15m
  - 20190830.030000.restart.so_20m

# (6 files differ) unknown
# ------------------------------
  - glo_15mxt.grb2
  - out_grd.glo_15mxt
  - ww3_ounf_ao_20m/ww3.201908.nc
  - ww3_ounf_glo_15m/ww3.201908.nc
  - ww3_ounf_glo_15mxt/ww3.201908.nc
  - ww3_ounf_so_20m/ww3.201908.nc
diff counts
 ww3_ufs1.3/work_a/glo_15mxt.grb2                                    # grib2
 ww3_ufs1.3/work_a/out_grd.glo_15mxt                                 # binary

 ww3_ufs1.3/work_a/ww3_ounf_ao_20m/ww3.201908.nc     uwnd:31572  vwnd:31572     ice:31572       |       94716/94716       
 ww3_ufs1.3/work_a/ww3_ounf_glo_15m/ww3.201908.nc    uwnd:94086  vwnd:94086     ice:94086       |       282258/282258     
*ww3_ufs1.3/work_a/ww3_ounf_glo_15mxt/ww3.201908.nc  uwnd:531693 vwnd:531693    ice:531693      |       1595079/1615746   
 ww3_ufs1.3/work_a/ww3_ounf_so_20m/ww3.201908.nc     uwnd:251451 vwnd:251451    ice:251451      |       754353/754353
* =>  For this case the follow variables are impacted:  uwnd,vwnd,ice,
              MAPSTA,hs,t02,t01,fp,dir,dp,phs0,phs1,phs2,ptp0,ptp1,ptp2,pdir0,pdir1.

@MatthewMasarik-NOAA
Copy link
Collaborator

Thanks @MatthewMasarik-NOAA

I'm surprised anything got affected outside of group 1 or MAPSTA. If you want me to have a look let me know.

You're welcome @benoitp-cmc

Thanks for the offer to look. I'm not initially concerned by what I see, so no need for you to look into anything at this point. I'm going to work through the rest of the groups of regtests, then once we have all the diff logs we can reassess if we need to look closer at a test.

@MatthewMasarik-NOAA
Copy link
Collaborator

MatthewMasarik-NOAA commented Jul 24, 2023

fyi @benoitp-cmc

mww3_test_03 (1/2)

For this group of regtests in each case 1 file differs, with 42 being for out_grd.cmpl, and 3 being for restart001.low0. I'll cover the out_grd's now and the 3 restart's later.

out_grd.cmpl
mww3_test_03/work_PR1_c/out_grd.cmpl               
mww3_test_03/work_PR2_UNO_c/out_grd.cmpl           
mww3_test_03/work_PR1_MPI_d/out_grd.cmpl           
mww3_test_03/work_PR3_UNO_MPI_b_c/out_grd.cmpl     
mww3_test_03/work_PR3_UNO_c_c/out_grd.cmpl         
mww3_test_03/work_PR3_UQ_MPI_c/out_grd.cmpl        
mww3_test_03/work_PR2_UNO_MPI_d/out_grd.cmpl       
mww3_test_03/work_PR2_UNO_d/out_grd.cmpl           
mww3_test_03/work_PR3_UNO_MPI_d_c/out_grd.cmpl     
mww3_test_03/work_PR1_d/out_grd.cmpl               
mww3_test_03/work_PR2_UQ_c/out_grd.cmpl            
mww3_test_03/work_PR3_UQ_b/out_grd.cmpl            
mww3_test_03/work_PR3_UNO_MPI_d/out_grd.cmpl       
mww3_test_03/work_PR2_UQ_MPI_b/out_grd.cmpl        
mww3_test_03/work_PR3_UNO_d/out_grd.cmpl           
mww3_test_03/work_PR3_UNO_MPI_c_c/out_grd.cmpl     
mww3_test_03/work_PR3_UNO_MPI_b/out_grd.cmpl       
mww3_test_03/work_PR3_UNO_b_c/out_grd.cmpl         
mww3_test_03/work_PR1_b/out_grd.cmpl               
mww3_test_03/work_PR2_UNO_b/out_grd.cmpl           
mww3_test_03/work_PR3_UQ_MPI_c_c/out_grd.cmpl      
mww3_test_03/work_PR2_UQ_d/out_grd.cmpl            
mww3_test_03/work_PR3_UQ_c/out_grd.cmpl            
mww3_test_03/work_PR1_MPI_c/out_grd.cmpl           
mww3_test_03/work_PR3_UNO_b/out_grd.cmpl           
mww3_test_03/work_PR1_MPI_b/out_grd.cmpl           
mww3_test_03/work_PR3_UQ_MPI_b_c/out_grd.cmpl      
mww3_test_03/work_PR3_UQ_d_c/out_grd.cmpl          
mww3_test_03/work_PR3_UQ_MPI_d_c/out_grd.cmpl      
mww3_test_03/work_PR3_UQ_MPI_d/out_grd.cmpl        
mww3_test_03/work_PR3_UQ_d/out_grd.cmpl            
mww3_test_03/work_PR3_UNO_d_c/out_grd.cmpl         
mww3_test_03/work_PR3_UQ_c_c/out_grd.cmpl          
mww3_test_03/work_PR2_UNO_MPI_b/out_grd.cmpl       
mww3_test_03/work_PR3_UNO_MPI_c/out_grd.cmpl       
mww3_test_03/work_PR2_UQ_b/out_grd.cmpl            
mww3_test_03/work_PR3_UNO_c/out_grd.cmpl           
mww3_test_03/work_PR2_UQ_MPI_d/out_grd.cmpl        
mww3_test_03/work_PR2_UQ_MPI_c/out_grd.cmpl
mww3_test_03/work_PR2_UNO_MPI_c/out_grd.cmpl       
mww3_test_03/work_PR3_UQ_b_c/out_grd.cmpl          
mww3_test_03/work_PR3_UQ_MPI_b/out_grd.cmpl

From the hex dumps the diffs all appear to be due to undefined values. Note that when I run this branch against itself all the the differences go away, so no concern, but want to have documentation so the changes are on record.

@MatthewMasarik-NOAA
Copy link
Collaborator

fyi @benoitp-cmc

mww3_test_03 (2/2)

restart001.low0
mww3_test_03/work_PR3_UQ_MPI_e_c/restart001.low0    
mww3_test_03/work_PR2_UNO_MPI_e/restart001.low0     
mww3_test_03/work_PR3_UNO_MPI_e_c/restart001.low0

All the differences are due to initialized value versus missing value.

This completes the mww3_test_03 tests.

@MatthewMasarik-NOAA
Copy link
Collaborator

ww3_tp1.8

matrix.comp
## Mapsta of 15 at end of canal where depth is barely positive.              
## Group 1 is no longer masked there.                                        
## -------------------------------------------------------------------       
ww3_tp1.8/./work_PR3_UQ                     (2 files differ)                 
ww3_tp1.8/./work_BJ_PR3_UQ                     (2 files differ)
diffs
[6/6]   uwnd,vwnd,dpt,wlv,dp,uuss,vuss   ww3_tp1.8/work_PR3_UQ/ww3.201101.nc           
[1/1]   dpt(-999 -> 0)                   ww3_tp1.8/work_PR3_UQ/ww3.11010100.dpt        
[42/42] uwnd,vwnd,dpt,wlv,dp,uuss,vuss   ww3_tp1.8/work_BJ_PR3_UQ/ww3.201101.nc        
[1/1]   dpt(-999 -> 0)                   ww3_tp1.8/work_BJ_PR3_UQ/ww3.11010100.dpt

@MatthewMasarik-NOAA
Copy link
Collaborator

ww3_tp2.19, ww3_ts4

Missing Value replaced by initialization.

matrix.comp
## Looks like the same as above, unstructured                                          
## -------------------------------------------------------------------                 
ww3_tp2.19/./work_1B_a                     (3 files differ)                            
ww3_tp2.19/./work_1A_a                     (3 files differ)                            
ww3_tp2.19/./work_1C_a                     (3 files differ)       
                     
ww3_ts4/./work_ug_MPI                      (1 files differ)
diffs
[9200/9200]  ucur,vcur        ww3_tp2.19/work_1B_a/ww3.201807_cur.nc      
[4600/4600]  dpt,dp           ww3_tp2.19/work_1B_a/ww3.201807_dpt.nc      
[4600/4600]  wlv              ww3_tp2.19/work_1B_a/ww3.201807_wlv.nc      
[9200/9200]  ucur,vcur        ww3_tp2.19/work_1A_a/ww3.201807_cur.nc      
[4600/4600]  dpt,dp           ww3_tp2.19/work_1A_a/ww3.201807_dpt.nc      
[4600/4600]  wlv              ww3_tp2.19/work_1A_a/ww3.201807_wlv.nc      
[9200/9200]  ucur,vcur        ww3_tp2.19/work_1C_a/ww3.201807_cur.nc      
[4600/4600]  dpt,dp           ww3_tp2.19/work_1C_a/ww3.201807_dpt.nc      
[4600/4600]  wlv              ww3_tp2.19/work_1C_a/ww3.201807_wlv.nc

[5292/5292]  uwnd,vwnd,dpt,dp        ww3_ts4/work_ug_MPI/ww3.200001.nc

@MatthewMasarik-NOAA
Copy link
Collaborator

mww3_test_06

matrix.comp
## Mapsta of 8 where there is nested grid. Group 1 no longer masked there.   
## -------------------------------------------------------------------       
mww3_test_06/./work_PR3_UNO_d                  (2 files differ)           
mww3_test_06/./work_PR3_UQ_d                   (2 files differ)
diffs
[ ]        dpt(-999      -> 100000)  mww3_test_06/work_PR3_UNO_d/depth_gbandd360/ww3.68060600.dpt   
[750/750]  dpt(9.96921e+36 -> 1000)  mww3_test_06/work_PR3_UNO_d/ww3.196806.nc                      
[ ]        dpt(-999      -> 100000)  mww3_test_06/work_PR3_UQ_d/depth_gbandd360/ww3.68060600.dpt    
[750/750]  dpt(9.96921e+36 -> 1000)  mww3_test_06/work_PR3_UQ_d/ww3.196806.nc



@benoitp-cmc, I do have one question on these tests. Do the dpt initialization values above look OK?

@MatthewMasarik-NOAA
Copy link
Collaborator

mww3_test_01

matrix.comp
## In mww3_test_01 I added ice output. You'll see the ice as extra      
## file/fields. I applied that change to my reference too so what I     
## see is ice (group 1) is no longer masked where icec > 75%.           
## -------------------------------------------------------------------  
mww3_test_01/./work_PR2_UNO                     (2 files differ)        
mww3_test_01/./work_PR1_MPI                     (2 files differ)        
mww3_test_01/./work_PR3_UNO_MPI                     (2 files differ)    
mww3_test_01/./work_PR3_UQ                     (2 files differ)         
mww3_test_01/./work_PR3_UNO                     (2 files differ)        
mww3_test_01/./work_PR1                     (2 files differ)            
mww3_test_01/./work_PR2_UQ                     (2 files differ)         
mww3_test_01/./work_PR2_UQ_MPI                     (2 files differ)     
mww3_test_01/./work_PR3_UQ_MPI                     (2 files differ)     
mww3_test_01/./work_PR2_UNO_MPI                     (2 files differ)
diffs
mww3_test_01/work_PR2_UNO/ww3_ounf.out
mww3_test_01/work_PR2_UNO/ww3_outf_file.out
mww3_test_01/work_PR1_MPI/ww3_ounf.out
mww3_test_01/work_PR1_MPI/ww3_outf_file.out
mww3_test_01/work_PR3_UNO_MPI/ww3_ounf.out
mww3_test_01/work_PR3_UNO_MPI/ww3_outf_file.out
mww3_test_01/work_PR3_UQ/ww3_ounf.out
mww3_test_01/work_PR3_UQ/ww3_outf_file.out
mww3_test_01/work_PR3_UNO/ww3_ounf.out
mww3_test_01/work_PR3_UNO/ww3_outf_file.out
mww3_test_01/work_PR1/ww3_ounf.out
mww3_test_01/work_PR1/ww3_outf_file.out
mww3_test_01/work_PR2_UQ/ww3_ounf.out
mww3_test_01/work_PR2_UQ/ww3_outf_file.out
mww3_test_01/work_PR2_UQ_MPI/ww3_ounf.out
mww3_test_01/work_PR2_UQ_MPI/ww3_outf_file.out
mww3_test_01/work_PR3_UQ_MPI/ww3_ounf.out
mww3_test_01/work_PR3_UQ_MPI/ww3_outf_file.out
mww3_test_01/work_PR2_UNO_MPI/ww3_ounf.out
mww3_test_01/work_PR2_UNO_MPI/ww3_outf_file.out

All these diffs check out as described, the log files now reflect Ice concentration being included as a field.

@MatthewMasarik-NOAA
Copy link
Collaborator

mww3_test_08

matrix.comp
## Mapsta of 63 in the middle. Group 1 no longer masked there.            
## -------------------------------------------------------------------    
mww3_test_08/./work_ST4_PR3_UQ_MPI                     (28 files differ)
diffs
mww3_test_08/work_ST4_PR3_UQ_MPI/                             
                                                              
# netcdf                                                      
[144/144] uwnd,vwnd,ice,dpt    ww3_ounf_outer/ww3.201510.nc   
         (uwnd: 9.96921e+36 -> 1.43099e-07)                   
         (vwnd: 9.96921e+36 -> -12)                           
         (ice:  9.96921e+36 -> 0.5)                           
         (dpt:  9.96921e+36 -> 2500)                          
                                                              
# ascii                                                       
[ ] dpt(-999 ->  250000)   ww3_outf_outer/ww3.15102500.dpt    
[ ] ice(-999 ->     500)   ww3_outf_outer/ww3.15102500.ice    
[ ] wnd(-999 -> 0, -120)   ww3_outf_outer/ww3.15102500.wnd    
[ ] dpt(-999 ->  250000)   ww3_outf_outer/ww3.15102503.dpt    
[ ] ice(-999 ->     500)   ww3_outf_outer/ww3.15102503.ice    
[ ] wnd(-999 -> 0, -120)   ww3_outf_outer/ww3.15102503.wnd    
[ ] dpt(-999 ->  250000)   ww3_outf_outer/ww3.15102506.dpt    
[ ] ice(-999 ->     500)   ww3_outf_outer/ww3.15102506.ice    
[ ] wnd(-999 -> 0, -120)   ww3_outf_outer/ww3.15102506.wnd    
[ ] dpt(-999 ->  250000)   ww3_outf_outer/ww3.15102509.dpt    
[ ] ice(-999 ->     500)   ww3_outf_outer/ww3.15102509.ice    
[ ] wnd(-999 -> 0, -120)   ww3_outf_outer/ww3.15102509.wnd    
[ ] dpt(-999 ->  250000)   ww3_outf_outer/ww3.15102512.dpt    
[ ] ice(-999 ->     500)   ww3_outf_outer/ww3.15102512.ice    
[ ] wnd(-999 -> 0, -120)   ww3_outf_outer/ww3.15102512.wnd    
[ ] dpt(-999 ->  250000)   ww3_outf_outer/ww3.15102515.dpt    
[ ] ice(-999 ->     500)   ww3_outf_outer/ww3.15102515.ice    
[ ] wnd(-999 -> 0, -120)   ww3_outf_outer/ww3.15102515.wnd    
[ ] dpt(-999 ->  250000)   ww3_outf_outer/ww3.15102518.dpt    
[ ] ice(-999 ->     500)   ww3_outf_outer/ww3.15102518.ice    
[ ] wnd(-999 -> 0, -120)   ww3_outf_outer/ww3.15102518.wnd    
[ ] dpt(-999 ->  250000)   ww3_outf_outer/ww3.15102521.dpt    
[ ] ice(-999 ->     500)   ww3_outf_outer/ww3.15102521.ice    
[ ] wnd(-999 -> 0, -120)   ww3_outf_outer/ww3.15102521.wnd    
[ ] dpt(-999 ->  250000)   ww3_outf_outer/ww3.15102600.dpt    
[ ] ice(-999 ->     500)   ww3_outf_outer/ww3.15102600.ice    
[ ] wnd(-999 -> 0, -120)   ww3_outf_outer/ww3.15102600.wnd

@benoitp-cmc
Copy link
Contributor Author

About mww3_test_06, the depth values are expected:

  • gbandd360.depth: 7560*1
  • ww3_grid_gbandd360.nml: DEPTH%SF = -1000. (no mask read)
  • ounf give the 1000 value as is.
  • outf has a scale factor of 0.01 for depth so gives 100000.

The part of the domain where the depth values changed is where there is the curvilinear nested grid. With multi using DOMAIN%FLGHG1 = T and DOMAIN%FLGHG2 = T I guess it's expected that we don't get HS in that region of the parent. Should we also respect that flag for the group 1 output?

The parent grid has its own bathymetry and possibly winds, etc in that region, but they are not used. I would rather see them as output to get full context and to keep things simple.

@benoitp-cmc
Copy link
Contributor Author

@MatthewMasarik-NOAA thanks for all the work on this.

I've merged the current develop in this branch. I'll be on vacation starting this weekend and be back August 14. Until then, @graig-sutherland can help if needed.

@MatthewMasarik-NOAA
Copy link
Collaborator

About mww3_test_06, the depth values are expected:

* `gbandd360.depth`: `7560*1`

* `ww3_grid_gbandd360.nml`: `DEPTH%SF        =  -1000.` (no mask read)

* `ounf` give the 1000 value as is.

* `outf` has a scale factor of 0.01 for depth so gives 100000.

The part of the domain where the depth values changed is where there is the curvilinear nested grid. With multi using DOMAIN%FLGHG1 = T and DOMAIN%FLGHG2 = T I guess it's expected that we don't get HS in that region of the parent. Should we also respect that flag for the group 1 output?

Perfect. Thanks for this explanation @benoitp-cmc.

For your question above I'm curious if others in the community would be willing to chime in? Fyi @aliabdolali @mickaelaccensi @ukmo-ccbunney, others?

@MatthewMasarik-NOAA
Copy link
Collaborator

@MatthewMasarik-NOAA thanks for all the work on this.

I've merged the current develop in this branch. I'll be on vacation starting this weekend and be back August 14. Until then, @graig-sutherland can help if needed.

@benoitp-cmc, great I copy. I'll follow up with @graig-sutherland on this after today.

Good news is I think we are about to wrap this one up. I'm going to post today a couple binary and grib2 diff's I put aside at the time, then I'll have posted documentation for all the changes. I'll run the regtests with the updated branch (thanks for syncing!) this afternoon, and if no unforeseen issues pop up, I'll plan to approve and merged first thing next week.

@MatthewMasarik-NOAA
Copy link
Collaborator

Regtests were re-run after the branch was synced up to date. Results for running the branch against itself show all checks out -- only known non-b4b differences.

**********************************************************************          
********************* non-identical cases ****************************          
**********************************************************************          
mww3_test_03/./work_PR1_MPI_e                     (1 files differ)              
mww3_test_03/./work_PR3_UNO_MPI_e                     (1 files differ)          
mww3_test_03/./work_PR2_UNO_MPI_d2                     (16 files differ)        
mww3_test_03/./work_PR1_MPI_d2                     (10 files differ)            
mww3_test_03/./work_PR3_UNO_MPI_d2_c                     (12 files differ)      
mww3_test_03/./work_PR3_UQ_MPI_d2_c                     (12 files differ)       
mww3_test_03/./work_PR3_UNO_MPI_d2                     (20 files differ)        
mww3_test_03/./work_PR2_UQ_MPI_d2                     (16 files differ)         
mww3_test_03/./work_PR3_UQ_MPI_e                     (1 files differ)           
mww3_test_03/./work_PR3_UQ_MPI_d2                     (13 files differ)         
ww3_tp2.10/./work_MPI_OMPH                     (7 files differ)                 
ww3_tp2.16/./work_MPI_OMPH                     (4 files differ)                 
ww3_ufs1.3/./work_a                     (3 files differ)                        
                                                                                
**********************************************************************          
************************ identical cases *****************************          
**********************************************************************

All that's remaining is tidying up a few files from earlier for ww3_ufs1.2, ww3_ufs1.3. My plan is to wrap up tomorrow.

@MatthewMasarik-NOAA
Copy link
Collaborator

ww3_ufs1.3

I've attempted to clean up this group. All files are listed.


  • Missing value replaced for the fields listed
work_a/ww3_ounf_ao_20m/ww3.201908.nc:     uwnd,vwnd,ice
work_a/ww3_ounf_glo_15mxt/ww3.201908.nc:  uwnd,vwnd,ice 
work_a/ww3_ounf_so_20m/ww3.201908.nc:     uwnd,vwnd,ice
  • This file had changes to the parameters listed.
work_a/ww3_ounf_glo_15m/ww3.201908.nc:    uwnd,vwnd,ice,hs,t02,t01,fp,dir,dp,phs0,phs1,ptp0,ptp1,pdir0,pdir1
  • grib2 comparisons were not easy to interpret. Below I listed the unique parameters that had changes recorded:
work_a/glo_15mxt.grb2:       HTSGW,ICEC,IMWF,MWSPER,PERPW,SWELL,SWPER,WDIR,WVHGT,WVPER
  • Binary output, no further detail.
work_a/out_grd.glo_15mxt

@MatthewMasarik-NOAA
Copy link
Collaborator

MatthewMasarik-NOAA commented Aug 1, 2023

ww3_ufs1.2

Clean up.


  • Missing value replaced for fields listed
work_a/ww3_ounf_aoc_9km/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
work_a/ww3_ounf_gnh_10m/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
work_a/ww3_ounf_gsh_15m/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
work_l/ww3_ounf_hafsl/ww3.202104.nc:    ucur,vcur,uwnd,vwnd,ice   
work_c/ww3_ounf_aoc_9km/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
work_c/ww3_ounf_gnh_10m/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
work_c/ww3_ounf_gsh_15m/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
work_b/ww3_ounf_aoc_9km/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
work_b/ww3_ounf_gnh_10m/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
work_b/ww3_ounf_gsh_15m/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice
  • Changes recorded for the following parameters
work_a/ww3_ounf_glo_15mxt/ww3.202104.nc: ucur,vcur,uwnd,vwnd,ice,MAPSTA,hs,t02,t01,fp,dir,dp,phs0,phs1,phs2,ptp0,ptp1,ptp2,pdir0,pdir1,pdir2    
work_b/ww3_ounf_glo_15mxt/ww3.202104.nc: ucur,vcur,uwnd,vwnd,ice,MAPSTA,hs,t02,t01,fp,dir,dp,phs0,phs1,phs2,ptp0,ptp1,ptp2,pdir0,pdir1,pdir2
  • grib2 files. Unique parameters with changes listed
work_a/glo_15mxt.grb2:  DIRC,ICEC,IMWF,MWSPER,PERPW,SPC,UOGRD,VOGRD,WDIR,WVPER
work_b/glo_15mxt.grb2:  DIRC,ICEC,IMWF,MWSPER,PERPW,SPC,UOGRD,VOGRD,WDIR,WVPER
  • binary output, no further details
work_a/out_grd.glo_15mxt
work_b/out_grd.glo_15mxt

Copy link
Collaborator

@MatthewMasarik-NOAA MatthewMasarik-NOAA left a comment

Choose a reason for hiding this comment

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

I've collected and cleaned up the groups of tests into a final summary.

matrix.comp
**********************************************************************       
********************* non-identical cases ****************************       
**********************************************************************       
                                                                             
## Known non-b4b                                                             
## -------------------------------------------------------------------       
mww3_test_03/./work_PR1_MPI_e                     (1 files differ)           
mww3_test_03/./work_PR2_UNO_MPI_d2                     (9 files differ)      
mww3_test_03/./work_PR1_MPI_d2                     (14 files differ)         
mww3_test_03/./work_PR3_UNO_MPI_d2_c                     (11 files differ)   
mww3_test_03/./work_PR3_UQ_MPI_d2_c                     (15 files differ)    
mww3_test_03/./work_PR3_UNO_MPI_d2                     (12 files differ)     
mww3_test_03/./work_PR2_UQ_MPI_d2                     (15 files differ)      
mww3_test_03/./work_PR3_UQ_MPI_e                     (1 files differ)        
mww3_test_03/./work_PR3_UQ_MPI_d2                     (15 files differ)      
ww3_tp2.10/./work_MPI_OMPH                     (7 files differ)              
ww3_tp2.16/./work_MPI_OMPH                     (4 files differ)              
ww3_ufs1.3/./work_a                            (9 files differ)**            
                                               (3 known, 6 unknown)          
## -------------------------------------------------------------------       
                                                                             

## ww3_tp1.8
##                                                                    
## Mapsta of 15 at end of canal where depth is barely positive.              
## Group 1 is no longer masked there.                                        
## -------------------------------------------------------------------       
ww3_tp1.8/./work_PR3_UQ                     (2 files differ)                 
ww3_tp1.8/./work_BJ_PR3_UQ                     (2 files differ)              
## -------------------------------------------------------------------       
                                                                             

## ww3_tp2.19
##                                                                    
## Looks like the same as above, unstructured                                
## -------------------------------------------------------------------       
ww3_tp2.19/./work_1B_a                     (3 files differ)                  
ww3_tp2.19/./work_1A_a                     (3 files differ)                  
ww3_tp2.19/./work_1C_a                     (3 files differ)


## ww3_ts4
##                                                                    
## Looks like the same as above, unstructured                                
## -------------------------------------------------------------------           
ww3_ts4/./work_ug_MPI                     (1 files differ)                   
## -------------------------------------------------------------------       
                                                                             

## mww3_test_06
##                                                                          
## Mapsta of 8 where there is nested grid. Group 1 no longer masked there.   
## -------------------------------------------------------------------       
mww3_test_06/./work_PR3_UNO_d                     (2 files differ)           
mww3_test_06/./work_PR3_UQ_d                     (2 files differ)            
## -------------------------------------------------------------------


## mww3_test_08
##
## Mapsta of 63 in the middle. Group 1 no longer masked there.               
## -------------------------------------------------------------------       
mww3_test_08/./work_ST4_PR3_UQ_MPI                     (28 files differ)     
## -------------------------------------------------------------------       
                                                                             

## mww3_test_01
##                                                              
## In mww3_test_01 I added ice output. You'll see the ice as extra           
## file/fields. I applied that change to my reference too so what I          
## see is ice (group 1) is no longer masked where icec > 75%.                
## -------------------------------------------------------------------       
mww3_test_01/./work_PR2_UNO                     (2 files differ)             
mww3_test_01/./work_PR1_MPI                     (2 files differ)             
mww3_test_01/./work_PR3_UNO_MPI                     (2 files differ)         
mww3_test_01/./work_PR3_UQ                     (2 files differ)              
mww3_test_01/./work_PR3_UNO                     (2 files differ)             
mww3_test_01/./work_PR1                     (2 files differ)                 
mww3_test_01/./work_PR2_UQ                     (2 files differ)              
mww3_test_01/./work_PR2_UQ_MPI                     (2 files differ)          
mww3_test_01/./work_PR3_UQ_MPI                     (2 files differ)          
mww3_test_01/./work_PR2_UNO_MPI                     (2 files differ)         
## -------------------------------------------------------------------       
                                                                             
                                                                             
## mww3_test_03
##
## Expecting diffs, unrelated to PR                            
## -------------------------------------------------------------------       
mww3_test_03/./work_PR1_c                     (1 files differ)               
mww3_test_03/./work_PR2_UNO_c                     (1 files differ)           
mww3_test_03/./work_PR3_UQ_MPI_e_c                     (1 files differ)      
mww3_test_03/./work_PR1_MPI_d                     (1 files differ)           
mww3_test_03/./work_PR3_UNO_MPI_b_c                     (1 files differ)     
mww3_test_03/./work_PR3_UNO_c_c                     (1 files differ)         
mww3_test_03/./work_PR3_UQ_MPI_c                     (1 files differ)        
mww3_test_03/./work_PR2_UNO_MPI_d                     (1 files differ)       
mww3_test_03/./work_PR2_UNO_d                     (1 files differ)           
mww3_test_03/./work_PR3_UNO_MPI_d_c                     (1 files differ)     
mww3_test_03/./work_PR1_d                     (1 files differ)               
mww3_test_03/./work_PR2_UQ_c                     (1 files differ)            
mww3_test_03/./work_PR3_UQ_b                     (1 files differ)            
mww3_test_03/./work_PR3_UNO_MPI_d                     (1 files differ)       
mww3_test_03/./work_PR2_UNO_MPI_e                     (1 files differ)       
mww3_test_03/./work_PR2_UQ_MPI_b                     (1 files differ)        
mww3_test_03/./work_PR3_UNO_d                     (1 files differ)           
mww3_test_03/./work_PR3_UNO_MPI_c_c                     (1 files differ)     
mww3_test_03/./work_PR3_UNO_MPI_b                     (1 files differ)       
mww3_test_03/./work_PR3_UNO_b_c                     (1 files differ)         
mww3_test_03/./work_PR1_b                     (1 files differ)               
mww3_test_03/./work_PR2_UNO_b                     (1 files differ)           
mww3_test_03/./work_PR3_UQ_MPI_c_c                     (1 files differ)      
mww3_test_03/./work_PR2_UQ_d                     (1 files differ)            
mww3_test_03/./work_PR3_UQ_c                     (1 files differ)            
mww3_test_03/./work_PR1_MPI_c                     (1 files differ)           
mww3_test_03/./work_PR3_UNO_b                     (1 files differ)           
mww3_test_03/./work_PR1_MPI_b                     (1 files differ)           
mww3_test_03/./work_PR3_UQ_MPI_b_c                     (1 files differ)      
mww3_test_03/./work_PR3_UQ_d_c                     (1 files differ)          
mww3_test_03/./work_PR3_UQ_MPI_d_c                     (1 files differ)      
mww3_test_03/./work_PR3_UQ_MPI_d                     (1 files differ)        
mww3_test_03/./work_PR3_UQ_d                     (1 files differ)            
mww3_test_03/./work_PR3_UNO_d_c                     (1 files differ)         
mww3_test_03/./work_PR3_UQ_c_c                     (1 files differ)          
mww3_test_03/./work_PR2_UNO_MPI_b                     (1 files differ)       
mww3_test_03/./work_PR3_UNO_MPI_c                     (1 files differ)       
mww3_test_03/./work_PR2_UQ_b                     (1 files differ)            
mww3_test_03/./work_PR3_UNO_c                     (1 files differ)           
mww3_test_03/./work_PR2_UQ_MPI_d                     (1 files differ)        
mww3_test_03/./work_PR3_UNO_MPI_e_c                     (1 files differ)     
mww3_test_03/./work_PR2_UQ_MPI_c                     (1 files differ)        
mww3_test_03/./work_PR2_UNO_MPI_c                     (1 files differ)       
mww3_test_03/./work_PR3_UQ_b_c                     (1 files differ)          
mww3_test_03/./work_PR3_UQ_MPI_b                     (1 files differ)        
## -------------------------------------------------------------------
                                                                             
                                                                             
## ww3_ufs1.1                                                   
## -------------------------------------------------------------------       
ww3_ufs1.1/./work_unstr_b                     (1 files differ)               
ww3_ufs1.1/./work_c_npl                     (1 files differ)                 
ww3_ufs1.1/./work_unstr_a                     (1 files differ)               
ww3_ufs1.1/./work_unstr_c                     (1 files differ)               
ww3_ufs1.1/./work_d                     (1 files differ)                     
ww3_ufs1.1/./work_c_nth                     (1 files differ)                 
ww3_ufs1.1/./work_c                     (1 files differ)                     
## -------------------------------------------------------------------       
                                                                             
                                                                             
## ww3_ufs1.2                                              
## -------------------------------------------------------------------       
ww3_ufs1.2/./work_a                     (6 files differ)                     
ww3_ufs1.2/./work_l                     (1 files differ)                     
ww3_ufs1.2/./work_c                     (3 files differ)                     
ww3_ufs1.2/./work_b                     (6 files differ)                     
## -------------------------------------------------------------------       
                                                                             
                                                                             
## ww3_ufs1.3                                                        
## -------------------------------------------------------------------       
ww3_ufs1.3/./work_a                       (6 files differ)
## -------------------------------------------------------------------         
                                                                             
**********************************************************************       
************************ identical cases *****************************       
**********************************************************************
matrix.comp - differences annotated
**********************************************************************       
********************* non-identical cases ****************************       
**********************************************************************       
                                                                             
## Known non-b4b                                                             
## -------------------------------------------------------------------       
mww3_test_03/./work_PR1_MPI_e                     (1 files differ)           
mww3_test_03/./work_PR2_UNO_MPI_d2                     (9 files differ)      
mww3_test_03/./work_PR1_MPI_d2                     (14 files differ)         
mww3_test_03/./work_PR3_UNO_MPI_d2_c                     (11 files differ)   
mww3_test_03/./work_PR3_UQ_MPI_d2_c                     (15 files differ)    
mww3_test_03/./work_PR3_UNO_MPI_d2                     (12 files differ)     
mww3_test_03/./work_PR2_UQ_MPI_d2                     (15 files differ)      
mww3_test_03/./work_PR3_UQ_MPI_e                     (1 files differ)        
mww3_test_03/./work_PR3_UQ_MPI_d2                     (15 files differ)      
ww3_tp2.10/./work_MPI_OMPH                     (7 files differ)              
ww3_tp2.16/./work_MPI_OMPH                     (4 files differ)              
ww3_ufs1.3/./work_a                            (9 files differ)**            
                                               (3 known, 6 unknown)          
## -------------------------------------------------------------------       
                                                                   


## ww3_tp1.8
##                                                             
## Mapsta of 15 at end of canal where depth is barely positive.              
## Group 1 is no longer masked there.                                        
## -------------------------------------------------------------------
## nc: MissingValue replaced in listed parameters 
    work_PR3_UQ/ww3.201101.nc     uwnd,vwnd,dpt,wlv,dp,uuss,vuss
    work_BJ_PR3_UQ/ww3.201101.nc  uwnd,vwnd,dpt,wlv,dp,uuss,vuss

## txt: MissingValue replaced in listed parameter
    work_PR3_UQ/ww3.11010100.dpt     dpt
    work_BJ_PR3_UQ/ww3.11010100.dpt  dpt
## -------------------------------------------------------------------       
                                                                             

## ww3_tp2.19
##                                                               
## Looks like the same as above, unstructured                                
## -------------------------------------------------------------------
## nc: MissingValue replaced in listed parameters   
    work_1B_a/ww3.201807_cur.nc   ucur,vcur   
    work_1B_a/ww3.201807_dpt.nc   dpt,dp      
    work_1B_a/ww3.201807_wlv.nc   wlv         
    work_1A_a/ww3.201807_cur.nc   ucur,vcur   
    work_1A_a/ww3.201807_dpt.nc   dpt,dp      
    work_1A_a/ww3.201807_wlv.nc   wlv         
    work_1C_a/ww3.201807_cur.nc   ucur,vcur   
    work_1C_a/ww3.201807_dpt.nc   dpt,dp      
    work_1C_a/ww3.201807_wlv.nc   wlv
## -------------------------------------------------------------------   

## ww3_ts4
##                                                               
## Looks like the same as above, unstructured                                
## -------------------------------------------------------------------
## nc: MissingValue replaced in listed parameters
    work_ug_MPI/ww3.200001.nc         uwnd,vwnd,dpt,dp 
## -------------------------------------------------------------------       
                                                                             

## mww3_test_06
##                                                                        
## Mapsta of 8 where there is nested grid. Group 1 no longer masked there.   
## -------------------------------------------------------------------       
## nc: MissingValue replaced in listed parameters
    work_PR3_UQ_d/ww3.196806.nc        dpt                 
    work_PR3_UNO_d/ww3.196806.nc       dpt            

## txt: MissingValue replaced in listed parameters
    work_PR3_UNO_d/depth_gbandd360/ww3.68060600.dpt   dpt
    work_PR3_UQ_d/depth_gbandd360/ww3.68060600.dpt    dpt
## -------------------------------------------------------------------


## mww3_test_08
##
## Mapsta of 63 in the middle. Group 1 no longer masked there.               
## -------------------------------------------------------------------
## nc: MissingValue replaced in listed parameters
    work_ST4_PR3_UQ_MPI/ww3_ounf_outer/ww3.201510.nc     uwnd,vwnd,ice,dpt         
                                                        
## txt: MissingValue replaced in listed parameters                                 
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102500.dpt  dpt                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102500.ice  ice                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102500.wnd  wnd                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102503.dpt  dpt                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102503.ice  ice                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102503.wnd  wnd                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102506.dpt  dpt                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102506.ice  ice                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102506.wnd  wnd                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102509.dpt  dpt                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102509.ice  ice                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102509.wnd  wnd                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102512.dpt  dpt                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102512.ice  ice                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102512.wnd  wnd                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102515.dpt  dpt                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102515.ice  ice                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102515.wnd  wnd                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102518.dpt  dpt                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102518.ice  ice                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102518.wnd  wnd                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102521.dpt  dpt                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102521.ice  ice                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102521.wnd  wnd                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102600.dpt  dpt                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102600.ice  ice                    
    work_ST4_PR3_UQ_MPI/ww3_outf_outer/ww3.15102600.wnd  wnd  
## -------------------------------------------------------------------       
                                                                             
                                                                             
## mww3_test_01
##
## In mww3_test_01 I added ice output. You'll see the ice as extra           
## file/fields. I applied that change to my reference too so what I          
## see is ice (group 1) is no longer masked where icec > 75%.                
## -------------------------------------------------------------------
## txt: logfile changes only reflect ice added as output
    work_PR2_UNO/ww3_ounf.out             
    work_PR2_UNO/ww3_outf_file.out        
    work_PR1_MPI/ww3_ounf.out             
    work_PR1_MPI/ww3_outf_file.out        
    work_PR3_UNO_MPI/ww3_ounf.out         
    work_PR3_UNO_MPI/ww3_outf_file.out    
    work_PR3_UQ/ww3_ounf.out              
    work_PR3_UQ/ww3_outf_file.out         
    work_PR3_UNO/ww3_ounf.out             
    work_PR3_UNO/ww3_outf_file.out        
    work_PR1/ww3_ounf.out                 
    work_PR1/ww3_outf_file.out            
    work_PR2_UQ/ww3_ounf.out              
    work_PR2_UQ/ww3_outf_file.out         
    work_PR2_UQ_MPI/ww3_ounf.out          
    work_PR2_UQ_MPI/ww3_outf_file.out     
    work_PR3_UQ_MPI/ww3_ounf.out          
    work_PR3_UQ_MPI/ww3_outf_file.out     
    work_PR2_UNO_MPI/ww3_ounf.out         
    work_PR2_UNO_MPI/ww3_outf_file.out
## -------------------------------------------------------------------       
                                                                             
                                                                             
## mww3_test_03
##
## Expecting diffs, unrelated to PR                            
## -------------------------------------------------------------------
# bin: out_grd change info not available  
    work_PR1_c/out_grd.cmpl              
    work_PR2_UNO_c/out_grd.cmpl          
    work_PR1_MPI_d/out_grd.cmpl          
    work_PR3_UNO_MPI_b_c/out_grd.cmpl    
    work_PR3_UNO_c_c/out_grd.cmpl        
    work_PR3_UQ_MPI_c/out_grd.cmpl       
    work_PR2_UNO_MPI_d/out_grd.cmpl      
    work_PR2_UNO_d/out_grd.cmpl          
    work_PR3_UNO_MPI_d_c/out_grd.cmpl    
    work_PR1_d/out_grd.cmpl              
    work_PR2_UQ_c/out_grd.cmpl           
    work_PR3_UQ_b/out_grd.cmpl           
    work_PR3_UNO_MPI_d/out_grd.cmpl      
    work_PR2_UQ_MPI_b/out_grd.cmpl       
    work_PR3_UNO_d/out_grd.cmpl          
    work_PR3_UNO_MPI_c_c/out_grd.cmpl    
    work_PR3_UNO_MPI_b/out_grd.cmpl      
    work_PR3_UNO_b_c/out_grd.cmpl        
    work_PR1_b/out_grd.cmpl              
    work_PR2_UNO_b/out_grd.cmpl          
    work_PR3_UQ_MPI_c_c/out_grd.cmpl     
    work_PR2_UQ_d/out_grd.cmpl           
    work_PR3_UQ_c/out_grd.cmpl           
    work_PR1_MPI_c/out_grd.cmpl          
    work_PR3_UNO_b/out_grd.cmpl          
    work_PR1_MPI_b/out_grd.cmpl          
    work_PR3_UQ_MPI_b_c/out_grd.cmpl     
    work_PR3_UQ_d_c/out_grd.cmpl         
    work_PR3_UQ_MPI_d_c/out_grd.cmpl     
    work_PR3_UQ_MPI_d/out_grd.cmpl       
    work_PR3_UQ_d/out_grd.cmpl           
    work_PR3_UNO_d_c/out_grd.cmpl        
    work_PR3_UQ_c_c/out_grd.cmpl         
    work_PR2_UNO_MPI_b/out_grd.cmpl      
    work_PR3_UNO_MPI_c/out_grd.cmpl      
    work_PR2_UQ_b/out_grd.cmpl           
    work_PR3_UNO_c/out_grd.cmpl          
    work_PR2_UQ_MPI_d/out_grd.cmpl       
    work_PR2_UQ_MPI_c/out_grd.cmpl       
    work_PR2_UNO_MPI_c/out_grd.cmpl      
    work_PR3_UQ_b_c/out_grd.cmpl         
    work_PR3_UQ_MPI_b/out_grd.cmpl

# bin: restart change info not available
    work_PR3_UQ_MPI_e_c/restart001.low0
    work_PR2_UNO_MPI_e/restart001.low0
    work_PR3_UNO_MPI_e_c/restart001.low0
## -------------------------------------------------------------------
                                                                             
                                                                             
## ww3_ufs1.1                                                    
## -------------------------------------------------------------------
## nc: MissingValue replaced in listed parameters    
    work_c_npl/ww3_ounf_glo_5deg/ww3.202104.nc  ucur,vcur,uwnd,vwnd,ice  
    work_c_nth/ww3_ounf_glo_5deg/ww3.202104.nc  ucur,vcur,uwnd,vwnd,ice  
    work_c/ww3_ounf_glo_5deg/ww3.202104.nc      ucur,vcur,uwnd,vwnd,ice  
    work_d/ww3_ounf_glo_5deg/ww3.202104.nc      ucur,vcur,uwnd,vwnd,ice  
    work_unstr_a/ww3.2021.nc                    ucur,vcur,uwnd,vwnd,ice  
    work_unstr_b/ww3.2021.nc                    ucur,vcur,uwnd,vwnd,ice  
    work_unstr_c/ww3.2021.nc                    ucur,vcur,uwnd,vwnd,ice               
## -------------------------------------------------------------------       
                                                                             
                                                                             
## ww3_ufs1.2                                                   
## -------------------------------------------------------------------
## nc: MissingValue replaced in listed parameters
    work_a/ww3_ounf_aoc_9km/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
    work_a/ww3_ounf_gnh_10m/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
    work_a/ww3_ounf_gsh_15m/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
    work_l/ww3_ounf_hafsl/ww3.202104.nc:    ucur,vcur,uwnd,vwnd,ice   
    work_c/ww3_ounf_aoc_9km/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
    work_c/ww3_ounf_gnh_10m/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
    work_c/ww3_ounf_gsh_15m/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
    work_b/ww3_ounf_aoc_9km/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
    work_b/ww3_ounf_gnh_10m/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice   
    work_b/ww3_ounf_gsh_15m/ww3.202104.nc:  ucur,vcur,uwnd,vwnd,ice

## nc: Changes not limited to MissingValue
    work_a/ww3_ounf_glo_15mxt/ww3.202104.nc: ucur,vcur,uwnd,vwnd,ice,MAPSTA,hs,t02,t01,fp,dir,dp,phs0,phs1,phs2,ptp0,ptp1,ptp2,pdir0,pdir1,pdir2
    work_b/ww3_ounf_glo_15mxt/ww3.202104.nc: ucur,vcur,uwnd,vwnd,ice,MAPSTA,hs,t02,t01,fp,dir,dp,phs0,phs1,phs2,ptp0,ptp1,ptp2,pdir0,pdir1,pdir2

## grb2: changes to parameters listed, specific change values not available
    work_a/glo_15mxt.grb2:  DIRC,ICEC,IMWF,MWSPER,PERPW,SPC,UOGRD,VOGRD,WDIR,WVPER
    work_b/glo_15mxt.grb2:  DIRC,ICEC,IMWF,MWSPER,PERPW,SPC,UOGRD,VOGRD,WDIR,WVPER

## bin: change info not available
    work_a/out_grd.glo_15mxt
    work_b/out_grd.glo_15mxt
## -------------------------------------------------------------------       
                                                                             
                                                                             
## ww3_ufs1.3                                                           
## -------------------------------------------------------------------
## nc: MissingValue replaced in listed parameters   
    work_a/ww3_ounf_ao_20m/ww3.201908.nc:     uwnd,vwnd,ice
    work_a/ww3_ounf_glo_15mxt/ww3.201908.nc:  uwnd,vwnd,ice
    work_a/ww3_ounf_so_20m/ww3.201908.nc:     uwnd,vwnd,ice      

## nc: Changes not limited to MissingValue
    work_a/ww3_ounf_glo_15m/ww3.201908.nc:    uwnd,vwnd,ice,hs,t02,t01,fp,dir,dp,phs0,phs1,ptp0,ptp1,pdir0,pdir1

## grb2: changes to parameters listed, specific change values not available
    work_a/glo_15mxt.grb2:       HTSGW,ICEC,IMWF,MWSPER,PERPW,SWELL,SWPER,WDIR,WVHGT,WVPER

## bin: change info not available
    work_a/out_grd.glo_15mxt
## -------------------------------------------------------------------

**********************************************************************       
************************ identical cases *****************************       
**********************************************************************

Code Review
PASS

Testing
PASS (based on explanation of differences above for develop vs. pr branch, and matrix.comp for pr branch vs. itself at #1019 (comment)).

@MatthewMasarik-NOAA MatthewMasarik-NOAA merged commit dcafc8c into NOAA-EMC:develop Aug 4, 2023
2 of 4 checks passed
@MatthewMasarik-NOAA
Copy link
Collaborator

Thank you @benoitp-cmc for this excellent work!

@benoitp-cmc benoitp-cmc deleted the Feature/unmask_group1_icen branch August 14, 2023 14:05
miguelsolanocordoba added a commit to wavespotter/WW3 that referenced this pull request Apr 19, 2024
* Bugfix - initialised VD and VS to zero in w3srcemd. (NOAA-EMC#1037)

* More efficient test for binary files in matrix.comp (NOAA-EMC#1035)

* Tidy up of pre-processor directives and unused variables in w3srcemd.F90 (NOAA-EMC#1010)

* Correct typo in w3srcemd.F90 pre-processor directive. (NOAA-EMC#1039)

* minor bugfix for matrix grepping on keywords (NOAA-EMC#1049)

* Stop masking group 1 output where icec > icen (NOAA-EMC#1019)

* Doxygen documentation added, 8th subset.(NOAA-EMC#1046)

* NC4 ,F90 ,XX0 switches removed from ww3_tp2.19 regtest (NOAA-EMC#1054)

* CI:  Fix for Intel scripts. GNU scripts updated. (NOAA-EMC#1064)

* correct the computation of QP parameter, add QKK output parameter, change UST scale factor (NOAA-EMC#1050)

* correct issue with ww3_multi when requesting restart2 and using nml file instead of inp file (NOAA-EMC#1070)

* correct calendar for track netcdf output (NOAA-EMC#1079)

* Fix missing mod_def.ww3 file in multigrid regression tests for track output (NOAA-EMC#1091)

* STAB3: fix cmake build for ST4 or ST3 (NOAA-EMC#1086)

* new feature to output out_grd.ww3, out_pnt.ww3 and mod_def.ww3 both in binary and ascii format using switch ASCII. (NOAA-EMC#1089)

* Update local unit number arrays (NDS, MDS) to be same size of array defined in w3odatmd (size=15). Also, defined unit numbers for NDS(14) and NDS(15). (NOAA-EMC#1098)

* Removed code referencing PHIOC in output section for PHICE in ww3_ounf (NOAA-EMC#1093)

* implementation of the GQM (Gaussian Quadrature Method) to replace the DIA in NL1 or NL2. (NOAA-EMC#1083)

* update logic to ensure you are not accessing uninitialized dates (NOAA-EMC#1114)

* Initialised S and D arrays in W3SDB1 before potential early return if zero energy. (NOAA-EMC#1115)

* ww3_ounp.F90:  x/y units attribute corrected from 'm' to 'km' (NOAA-EMC#1088)

* Bugfix: Assign unit numbers to ASCII gridded/point output in multi-grid mode. (NOAA-EMC#1118)

* correct bugs to run correctly GQM implementation (NOAA-EMC#1127)

* Adding documentation to w3iopo() in preparation for code for NOAA-EMC#682. (NOAA-EMC#1131)

* NCEP regtest module updates: uses spack-stack/1.5.0, includes scotch/7.0.4 (NOAA-EMC#1137)

* Minor update to ncep regtests (NOAA-EMC#1138)

* Updated intel workflow to install oneapi compilers from new location. (NOAA-EMC#1157)

* Add unit test for points I/O code. (NOAA-EMC#1158)

* Update Intel CI (relocate /usr/local; ensure intel-oneapi-mpi; use ubuntu-latest) (NOAA-EMC#1161)

* remove lookup table for ST4 to speed up computation and clean up the ST4 code (NOAA-EMC#1124)

Co-authored-by: Fabrice Ardhuin <[email protected]>

* initialize USSP_WN for mod_def (NOAA-EMC#1165)

* Introduce IC4M8 and IC4M9 to WW3 (NOAA-EMC#1176)

* clean up and add ST4 variables (NOAA-EMC#1181)

* w3fld1md.F90: fix divide by zero in CRIT2 parameter (NOAA-EMC#1184)

* ww3_prnc.F90: fix out-of-scope grid index write statement (NOAA-EMC#1185)

* Bugfix: address potential divide-by-zero in APPENDTAIL (NOAA-EMC#1188)

Co-authored-by: Denise Worthen <[email protected]>

* Provide initial drying of cells with depth < ZLIM for SMC grid. (NOAA-EMC#1192)

* Output OMP threading info to screen when running ww3_shel/ww3_multi compiled with the OMPG switch. Also fixes truncation of build.log when running run_cmake_build. (NOAA-EMC#1191)

* Added screen output showing number of threads when OMP enabled.

* update build to get more info in logs (NOAA-EMC#46)

---------

Co-authored-by: Jessica Meixner <[email protected]>

* update run_cmake_test to catch build errors and exit (NOAA-EMC#1194)

* fix merge conflicts

* Fix gustiness bug, as suggst by Pieter

* Change USTARsigma to WAM implementation

---------

Co-authored-by: Chris Bunney <[email protected]>
Co-authored-by: Mickael Accensi <[email protected]>
Co-authored-by: Benoit Pouliot <[email protected]>
Co-authored-by: Matthew Masarik <[email protected]>
Co-authored-by: Ghazal-Mohammadpour <[email protected]>
Co-authored-by: Jessica Meixner <[email protected]>
Co-authored-by: Biao Zhao <[email protected]>
Co-authored-by: Edward Hartnett <[email protected]>
Co-authored-by: Alex Richert <[email protected]>
Co-authored-by: Fabrice Ardhuin <[email protected]>
Co-authored-by: W. Erick Rogers <[email protected]>
Co-authored-by: Denise Worthen <[email protected]>
Co-authored-by: Camille Teicheira <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Include forcings in outf and ounf output where ice > CICEN gint ice mask
3 participants