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

Updates on 04_21 #2

Merged
merged 253 commits into from
Apr 15, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
253 commits
Select commit Hold shift + click to select a range
1bbc8de
Merge pull request #8 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Feb 5, 2019
522069b
Merge pull request #9 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Feb 27, 2019
1304880
Merge pull request #10 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Mar 21, 2019
30d35a3
Merge pull request #11 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Mar 28, 2019
6ffc897
Merge pull request #12 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Apr 8, 2019
f5bc54b
Merge pull request #13 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Apr 15, 2019
a1c556b
Merge pull request #14 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Apr 18, 2019
42cca4f
Merge pull request #15 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Apr 25, 2019
a0c80dc
Merge pull request #16 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Apr 26, 2019
139ab1f
Merge pull request #17 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor May 9, 2019
f6879f4
Merge pull request #18 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor May 17, 2019
b4fd53b
Merge pull request #19 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor May 24, 2019
601eb67
Merge pull request #20 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jun 5, 2019
911d0a2
Merge pull request #21 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jun 20, 2019
b5e5c48
Merge pull request #22 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jul 3, 2019
aa11e1f
Merge pull request #23 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jul 23, 2019
5589d8c
Merge pull request #24 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jul 29, 2019
5772083
Merge pull request #25 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jul 31, 2019
f9b5a7f
Merge pull request #26 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Aug 12, 2019
22c5865
Merge pull request #27 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Aug 28, 2019
5b2852c
Merge pull request #28 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Sep 26, 2019
a5386da
Merge pull request #30 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Oct 2, 2019
0b874f3
Merge pull request #31 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Oct 4, 2019
a427676
Merge pull request #32 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Oct 22, 2019
124a071
Merge pull request #33 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Nov 12, 2019
09bcebc
Merge pull request #35 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Nov 19, 2019
2b7abec
Merge pull request #2 from NOAA-EMC/dev/emc
DeniseWorthen Nov 26, 2019
2c32568
merge in latest dev/gfdl updates (#36)
wrongkindofdoctor Nov 28, 2019
855d706
Merge in dev/gfdl updates (#37)
wrongkindofdoctor Dec 2, 2019
3c15a0c
Revert "Merge in dev/gfdl updates (#37)"
wrongkindofdoctor Dec 2, 2019
5910903
Merge pull request #38 from wrongkindofdoctor/revert-37-dev/gfdl
wrongkindofdoctor Dec 2, 2019
3e27e47
Merge branch 'dev/gfdl' of git://github.com/NOAA-GFDL/MOM6 into NOAA-…
Dec 3, 2019
ece60c1
Merge branch 'NOAA-GFDL-dev/gfdl' into dev/gfdl
Dec 3, 2019
cae4cfd
Merge branch 'dev/gfdl' of github.com:wrongkindofdoctor/MOM6 into dev…
Dec 3, 2019
74f8d11
Merge pull request #4 from NOAA-EMC/dev/emc
DeniseWorthen Dec 6, 2019
e072bc7
Merge in latest dev/gfdl updates (#40)
wrongkindofdoctor Dec 6, 2019
075ab81
Merge pull request #41 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Dec 9, 2019
abaf004
Merge pull request #42 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Dec 17, 2019
162ca97
Merge pull request #43 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jan 6, 2020
7dbca83
Merge pull request #44 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jan 13, 2020
fb02b3a
Merge pull request #5 from NOAA-EMC/dev/emc
DeniseWorthen Jan 16, 2020
12dccaf
Merge pull request #46 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jan 17, 2020
5927048
Merge pull request #6 from NOAA-EMC/dev/emc
DeniseWorthen Jan 24, 2020
cee0a21
Merge pull request #47 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Feb 3, 2020
477d9f8
Merge pull request #48 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Feb 10, 2020
aff2a13
Merge pull request #49 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Feb 14, 2020
7adcc90
Merge pull request #50 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Feb 26, 2020
8d7be68
Merge pull request #51 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Mar 9, 2020
c245357
Merge pull request #52 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Mar 16, 2020
86c2a7d
Merge pull request #53 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Mar 30, 2020
1be1217
Merge pull request #7 from NOAA-EMC/dev/emc
DeniseWorthen Apr 6, 2020
4a56134
Merge pull request #54 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Apr 8, 2020
d537911
Merge pull request #9 from NOAA-EMC/dev/emc
DeniseWorthen Apr 9, 2020
58a69fc
Merge pull request #10 from NOAA-EMC/dev/emc
DeniseWorthen Apr 16, 2020
e9281f4
Merge pull request #55 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Apr 20, 2020
496617c
Merge pull request #56 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor May 1, 2020
ff1a27f
Merge pull request #57 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor May 7, 2020
46b8f0f
Merge pull request #58 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor May 26, 2020
b8eee45
Merge branch 'dev/gfdl' of github.com:NOAA-GFDL/MOM6 into dev/gfdl
Jun 5, 2020
cea55fe
Merge pull request #59 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jun 9, 2020
ff34126
Merge pull request #60 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jul 7, 2020
6371e48
Merge remote-tracking branch 'upstream/dev/emc' into dev/emc
DeniseWorthen Jul 10, 2020
763b176
Merge pull request #61 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jul 13, 2020
cbdcf8a
Create hola_tierra.yml
wrongkindofdoctor Jul 17, 2020
50c3539
Merge pull request #62 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jul 22, 2020
de7f95a
Merge pull request #63 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jul 28, 2020
0cf3cb9
Merge pull request #64 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Jul 31, 2020
40bfb4b
Merge remote-tracking branch 'upstream/dev/emc' into dev/emc
DeniseWorthen Aug 1, 2020
e4ca1dc
Merge remote-tracking branch 'upstream/dev/emc' into dev/emc
DeniseWorthen Aug 6, 2020
4e51bae
Revert "Merge remote-tracking branch 'upstream/dev/emc' into dev/emc"
DeniseWorthen Aug 7, 2020
c8695c6
Merge pull request #65 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Aug 17, 2020
40047fa
Merge pull request #66 from NOAA-GFDL/dev/gfdl
wrongkindofdoctor Aug 24, 2020
5c2daa5
converted save_restart and restore_state to interface that call versi…
Jul 8, 2020
a74c7ea
changed FMS release to 2020.03-beta1
Jul 31, 2020
809b3ac
added local logical variables to save restart wrapper that are set us…
Jul 31, 2020
2e46ea6
removed errant .true. in save_restart call
Aug 18, 2020
6164f63
manual add of dev/emc changes (statediagnose)
DeniseWorthen Sep 1, 2020
bfbd95a
white space changes
DeniseWorthen Sep 1, 2020
16ade2f
Merge remote-tracking branch 'upstream/dev/emc' into dev/emc
DeniseWorthen Sep 9, 2020
f3bb728
Merge remote-tracking branch 'upstream/dev/emc' into dev/emc
DeniseWorthen Oct 19, 2020
a98f7db
Merge remote-tracking branch 'upstream/dev/emc' into dev/emc
DeniseWorthen Nov 25, 2020
f1041d1
Fixed bugs in CG_action, matrix_diagonal and calc_shelf_visc in
OlgaSergienko Dec 16, 2020
39dd3e3
Modified MOM_ice_shelf_dynamics.F90
OlgaSergienko Dec 16, 2020
d27bcbd
Matt's changes to drivers
OlgaSergienko Dec 23, 2020
ebac0ad
Modifications to register_diag_field in MOM_ice_shelf_dynamics to mak…
OlgaSergienko Dec 29, 2020
69b2a23
Merge remote-tracking branch 'upstream/dev/emc' into dev/emc
DeniseWorthen Jan 6, 2021
29d7680
Add two halo updates for taux and tauy in mom_surface_forcing_nupoc
breichl Jan 15, 2021
91282c1
add brandon's halo update fix for LI_2016
DeniseWorthen Jan 15, 2021
cec1ad3
Merge pull request #49 from breichl/user/bgr/Tau_halo_updates_in_nupoc
jiandewang Jan 17, 2021
d63c2de
Merge remote-tracking branch 'GFDL/main' into feature/update-to-GFDL-…
jiandewang Jan 21, 2021
b544dad
Merge remote-tracking branch 'upstream/dev/emc' into dev/emc
DeniseWorthen Jan 22, 2021
e928fe2
Merge branch 'dev/emc' into bugfix/li2016fix
DeniseWorthen Jan 22, 2021
66ec49b
Merge remote-tracking branch 'JiandeWang/feature/update-to-GFDL-20210…
DeniseWorthen Jan 22, 2021
e7d0976
Fixes latent heat from fprec and frunoff
gustavo-marques Jan 21, 2021
faeb139
Merge pull request #1 from DeniseWorthen/bugfix/li2016fix
jiandewang Jan 22, 2021
d531a32
Merge pull request #51 from jiandewang/feature/update-to-GFDL-20210120
jiandewang Jan 27, 2021
7db2cc7
make mom mesh optional
DeniseWorthen Jan 28, 2021
13a5a2e
comment out mask check which fails for mx100
DeniseWorthen Jan 28, 2021
12b3895
Merge branch 'dev/emc' into feature/optmesh
DeniseWorthen Jan 29, 2021
a34ebb1
remove tempory bypass of mesh abort code
DeniseWorthen Jan 29, 2021
f30f636
corrected indecises in computation of driving stresses
OlgaSergienko Feb 9, 2021
7752052
fixed ice-shelf advection
OlgaSergienko Feb 10, 2021
cdc7690
Merge pull request #54 from DeniseWorthen/feature/optmesh
jiandewang Feb 11, 2021
f0ae41c
modified viscosity computations
OlgaSergienko Feb 11, 2021
89f4386
corrected initialize_boundary_channel call
OlgaSergienko Feb 18, 2021
8912b13
Fix the bug that Rayleigh_[uv] was not
herrwang0 Feb 20, 2021
271bfce
corrected boundary mask in init_boundary_channel and updated u_ and
OlgaSergienko Feb 22, 2021
fdd83e6
dynamic ice shelf with non-linear viscosity and evolving ice thickness
OlgaSergienko Feb 22, 2021
42eb7c7
1. Initialize Rayleigh_[uv] to separate loops
herrwang0 Feb 24, 2021
a0b296e
Remove the trailing space
herrwang0 Feb 24, 2021
9544de2
Remove blank line spaces
herrwang0 Feb 24, 2021
32cfe35
modified MOM_ice_shelf_initialize for testing with viscosity from a file
OlgaSergienko Feb 24, 2021
ac88645
Merge branch 'dev/gfdl' into fix-wavedrag-initRayleigh
marshallward Feb 25, 2021
a729a7f
Merge commit '00c2819457ab6d2497c871ce9a02d5e67e7f741c' into feature/…
jiandewang Feb 25, 2021
6e49a91
+New config_src directory structure
Hallberg-NOAA Feb 25, 2021
f06669e
Merge pull request #1329 from herrwang0/fix-wavedrag-initRayleigh
marshallward Feb 25, 2021
0d22f32
+MOM6/docs reflects the new directory structure
Hallberg-NOAA Feb 25, 2021
fb882c9
Fix a missing line to reset vbt if smaller than vel_underflow in MOM_…
herrwang0 Feb 25, 2021
0393546
Depth-integrated momentum budget diagnostics
hmkhatri Feb 25, 2021
73addc4
Depth-integrated momentum budget diagnostics
hmkhatri Feb 25, 2021
5f827ed
typo correction
hmkhatri Feb 25, 2021
c0ddee0
Update build scripts for new dir structure
adcroft Feb 25, 2021
95ed51f
Correct path to FMS_cap in gnu:ice-ocean-nolibs job
adcroft Feb 25, 2021
efb3612
Remove AC_CHECK_FILE for legacy MOM_memory.h
marshallward Feb 25, 2021
8f0748c
Merge pull request #9 from marshallward/hallberg-fms2-acfix
adcroft Feb 26, 2021
3b8cc9c
Testing: Target uses local autoconf
marshallward Feb 26, 2021
d2ec275
Merge pull request #10 from marshallward/hallberg-fms2-acfix
adcroft Feb 26, 2021
e0bda29
Merge pull request #1341 from adcroft/Hallberg-NOAA-gfdl-fms2
marshallward Feb 26, 2021
77d44cb
Dimensional consistency test
hmkhatri Mar 1, 2021
2c4137b
dimensions
hmkhatri Mar 1, 2021
2165ebb
dimen.
hmkhatri Mar 1, 2021
7ed57b0
H_to_m
hmkhatri Mar 1, 2021
e52eabf
Change to stack arrays for 2D diagnostics
hmkhatri Mar 2, 2021
b895f1e
Changed to stack arrays
hmkhatri Mar 2, 2021
28b1ac9
Update CVMix to v0.93-beta (no API change)
adcroft Mar 2, 2021
34dc0c8
Update CVMix to v0.94b-beta with API change
adcroft Mar 2, 2021
e56d453
Update CVMix to v0.98-beta
adcroft Mar 2, 2021
a545274
Merge pull request #1340 from herrwang0/fix-vel_underflow-missingline
marshallward Mar 2, 2021
fbf0e91
Merge branch 'dev/gfdl' into add_diagnostic
marshallward Mar 2, 2021
b57431d
Merge pull request #1343 from hmkhatri/add_diagnostic
marshallward Mar 3, 2021
5483bfe
Cleaned initialize_ice_shelf_boundary_channel
OlgaSergienko Mar 3, 2021
9aa75c8
Modified MOM_ice_shelf_initialize.F90
OlgaSergienko Mar 3, 2021
2232fa2
corrected style errors in MOM_ice_shelf.F90; MOM_ice_shelf_dynamics.F…
OlgaSergienko Mar 3, 2021
aed4f0e
More style errors
OlgaSergienko Mar 3, 2021
43dadc1
Defined variables in ice_shelf_solve_outer
OlgaSergienko Mar 3, 2021
00cb11c
Merge pull request #56 from jiandewang/feature/update-to-GFDL-20210224
jiandewang Mar 4, 2021
ba7bbab
Typo corrected - Change from Jsd to JsdB in array allocations
hmkhatri Mar 5, 2021
075be64
Typo correction - Change from Jsd to JsdB in array allocations
hmkhatri Mar 5, 2021
e7a80bc
Merge pull request #1345 from hmkhatri/add_diagnostic
marshallward Mar 5, 2021
f806579
Correct module use statements in infra/FMS1
Hallberg-NOAA Mar 6, 2021
d4531ca
Duplicated infra/FMS1 into infra/FMS2
Hallberg-NOAA Mar 6, 2021
651b467
Bugfix: FGNV streamfunction vertical bounds
marshallward Mar 6, 2021
a077573
Explicitly set (1x1) io_domain as a default
Hallberg-NOAA Mar 6, 2021
f2459ec
Merge branch 'user/jml/add_fms2io_to_MOM_restart' of https://github.c…
Hallberg-NOAA Mar 7, 2021
0ba1aa5
+Simplified read_data_fms2 and write_field_fms2
Hallberg-NOAA Mar 7, 2021
4e05839
Merge pull request #1342 from NOAA-GFDL/gfdl-fms2
marshallward Mar 8, 2021
a4049e7
Merge branch 'dev/gfdl' into main
marshallward Mar 8, 2021
3703ca7
Merge remote-tracking branch 'GFDL/main' into feature/update-to-GFDL-…
jiandewang Mar 8, 2021
54033aa
Bugfix: empty restart_input_dir for *_solo.res
herrwang0 Mar 9, 2021
5b293ef
Merge branch 'dev/gfdl' into fix-ocean_solo-res-dir
herrwang0 Mar 9, 2021
c68fedf
+Change arguments to MOM_register_variable_axes
Hallberg-NOAA Mar 9, 2021
1b05969
Merge pull request #1348 from herrwang0/fix-ocean_solo-res-dir
marshallward Mar 9, 2021
887c7af
Merge branch 'main' into merge_from_main
marshallward Mar 9, 2021
b47e493
Removed blocks of commented code. Added parentheses in calc_shelf_visc
OlgaSergienko Mar 9, 2021
23a78d2
Clean up in MOM_restart.F90
Hallberg-NOAA Mar 9, 2021
56e9147
Merge pull request #1349 from marshallward/merge_from_main
adcroft Mar 9, 2021
bb5eb25
Explicitly set (1x1) io_domain as a default
Hallberg-NOAA Mar 9, 2021
5b686c8
add parameter for allowing land mask changes
DeniseWorthen Mar 10, 2021
8494ba8
change logical from "topog_..." to "topo_..."
DeniseWorthen Mar 10, 2021
abc8fe4
Removed blocks of commented text and multiplications by 0
OlgaSergienko Mar 11, 2021
250f007
Merge pull request #1350 from Hallberg-NOAA/set_io_domain
marshallward Mar 11, 2021
aab2ad6
+Add ability to read fields via FMS2 interfaces
Hallberg-NOAA Mar 12, 2021
9123209
Merge branch 'dev/gfdl' into FMS2_io
Hallberg-NOAA Mar 12, 2021
0d60fd0
Change units of slope returned from calc_isoneutral_slopes() to "Z L-1"
adcroft Mar 12, 2021
b911a39
Merge branch 'dev/gfdl' into cvmix-update
marshallward Mar 12, 2021
5839494
Merge branch 'dev/gfdl' into ice_dynamics
Hallberg-NOAA Mar 12, 2021
4255ada
Merge pull request #1344 from adcroft/cvmix-update
marshallward Mar 12, 2021
ab241b6
Merge branch 'dev/gfdl' into units-for-slope
marshallward Mar 12, 2021
a6f680c
Merge pull request #1351 from adcroft/units-for-slope
marshallward Mar 12, 2021
33d28f1
Merge branch 'dev/gfdl' into fgnv_bound_fix
adcroft Mar 12, 2021
8dd9072
Merge pull request #1346 from marshallward/fgnv_bound_fix
adcroft Mar 13, 2021
30b0571
Merge branch 'dev/gfdl' into FMS2_io
adcroft Mar 13, 2021
09173f7
Only write checksums from root PE for FMS_cap
Hallberg-NOAA Mar 13, 2021
e5a4035
Merge pull request #61 from jiandewang/feature/update-to-GFDL-20210308
jiandewang Mar 13, 2021
b89152c
Merge branch 'dev/emc' into feature/allowmaskchanges
DeniseWorthen Mar 14, 2021
edc15f6
Merge branch 'dev/gfdl' into ice_dynamics
Hallberg-NOAA Mar 17, 2021
ee0152f
+Separate MOM_interp_infra axistype from MOM_io
Hallberg-NOAA Mar 18, 2021
f89ddea
+Add edge_axis argument to write_metadata_axis
Hallberg-NOAA Mar 18, 2021
0fdc5c4
Correct warnings from categorize_axis
Hallberg-NOAA Mar 18, 2021
255233b
Added code to write via FMS2 interfaces
Hallberg-NOAA Mar 18, 2021
03e174e
Removed FMS2 MOM_axis and MOM_write_field_fms2
Hallberg-NOAA Mar 18, 2021
3193ab0
Merge pull request #1338 from OlgaSergienko/ice_dynamics
Hallberg-NOAA Mar 18, 2021
4843c6c
Merge branch 'dev/gfdl' into FMS2_io
Hallberg-NOAA Mar 18, 2021
84d5e21
+FMS2 reads for ints & MOM_read_data_fms2 cleanup
Hallberg-NOAA Mar 19, 2021
66ac810
Only write checksums from root PE MCT/NUOPC caps
gustavo-marques Mar 22, 2021
2579d07
Merge pull request #4 from gustavo-marques/less_checksums_mct_nuopc
Hallberg-NOAA Mar 22, 2021
3fe07d4
+Move FMS2 read helper routines into MOM_io_infra
Hallberg-NOAA Mar 23, 2021
b33b3af
Testing: Recurse target submodules, LDFLAGS hook
marshallward Mar 23, 2021
4fd897d
Merge pull request #1355 from marshallward/test_submod_update
adcroft Mar 23, 2021
17afc2b
A call to pass_vector(...) is needed to correctly do a halo exchange …
Mar 23, 2021
a1206ed
Merge branch 'dev/gfdl' into emc_update_20210322
marshallward Mar 23, 2021
fad7e0d
Merge branch 'dev/gfdl' into bugfix/sanAkel/output-b-grid-currents
sanAkel Mar 23, 2021
8cc5018
Style: Line length fix in MCT_cap
marshallward Mar 23, 2021
7bdecbc
Add missing ".nc" to FMS2 output filenames
Hallberg-NOAA Mar 24, 2021
b92d763
Merge pull request #1357 from marshallward/emc_update_20210322
adcroft Mar 25, 2021
ba643bd
Explicit domain decomposition of horizontal axes
marshallward Mar 25, 2021
81c48cb
Merge pull request #5 from marshallward/FMS2_io_writes
Hallberg-NOAA Mar 26, 2021
95ad937
Fix distributed reads of checksums using FMS2_io
Hallberg-NOAA Mar 26, 2021
f6105cb
Merge branch 'dev/gfdl' into FMS2_io
Hallberg-NOAA Mar 26, 2021
fe9b2a1
Merge pull request #1352 from Hallberg-NOAA/FMS2_io
marshallward Mar 26, 2021
b044be8
Merge branch 'dev/gfdl' into FMS2_io_writes
Hallberg-NOAA Mar 26, 2021
5669d43
Merge branch 'dev/gfdl' into less_checksums
Hallberg-NOAA Mar 26, 2021
67b03e3
Merge pull request #1353 from Hallberg-NOAA/less_checksums
Hallberg-NOAA Mar 27, 2021
6c2b944
Merge branch 'dev/gfdl' into bugfix/sanAkel/output-b-grid-currents
sanAkel Mar 27, 2021
13f1e70
Merge pull request #1356 from GEOS-ESM/bugfix/sanAkel/output-b-grid-c…
Hallberg-NOAA Mar 28, 2021
c62d51f
Remove inappropriate timelevel arguments
Hallberg-NOAA Mar 28, 2021
4fd3807
Merge branch 'dev/gfdl' into FMS2_io_writes
Hallberg-NOAA Mar 29, 2021
2ffea27
MOM_hor_visc: Variables moved to stack
marshallward Mar 29, 2021
813fc79
Merge pull request #1359 from Hallberg-NOAA/FMS2_io_writes
marshallward Mar 31, 2021
97f1117
Merge branch 'dev/gfdl' into fewer_timelevels
marshallward Mar 31, 2021
cfa59aa
+Add coupler_types interfaces needed by SIS2
Hallberg-NOAA Mar 31, 2021
3c1cb2e
+Add MOM_domains interfaces needed by SIS2
Hallberg-NOAA Mar 31, 2021
6d4a483
Merge pull request #1360 from Hallberg-NOAA/fewer_timelevels
marshallward Mar 31, 2021
b6c7fdb
change default value of use_mommesh as true
jiandewang Apr 1, 2021
665cd9a
Merge branch 'dev/gfdl' into horvisc_diag_to_stack
Hallberg-NOAA Apr 1, 2021
9792b23
Fixed downsampling for x:sum y:point z:point diags
jkrasting Apr 1, 2021
2b6d3e1
Merge pull request #1362 from marshallward/horvisc_diag_to_stack
Hallberg-NOAA Apr 1, 2021
d1dc6b5
Coriolis: Improved coradcalc vectorization
marshallward Apr 1, 2021
ad372fd
Merge branch 'dev/gfdl' into SIS2_infra_support
Hallberg-NOAA Apr 2, 2021
c549ae9
Merge pull request #1358 from NOAA-GFDL/dev-gfdl-main-candidate-2021-…
marshallward Apr 2, 2021
5f06304
Fixed downsampling summation for more diag types
jkrasting Apr 2, 2021
fae570d
Merge branch 'main' into main_to_gfdl
marshallward Apr 5, 2021
ad0bc3c
Merge branch 'dev/gfdl' into SIS2_infra_support
Hallberg-NOAA Apr 6, 2021
358da7c
Corrected comments describing CT_copy_data
Hallberg-NOAA Apr 6, 2021
b413f25
Merge branch 'SIS2_infra_support' of github.com:Hallberg-NOAA/MOM6 in…
Hallberg-NOAA Apr 6, 2021
d485a51
Merge pull request #1363 from Hallberg-NOAA/SIS2_infra_support
marshallward Apr 6, 2021
a5fb365
Merge branch 'dev/gfdl' into downsampled_diag_fix
Hallberg-NOAA Apr 6, 2021
c5c7441
Merge pull request #1364 from jkrasting/downsampled_diag_fix
Hallberg-NOAA Apr 7, 2021
dc66dd8
Merge branch 'dev/gfdl' into corad_vec_v2
Hallberg-NOAA Apr 7, 2021
7ec08cd
Merge pull request #1365 from marshallward/corad_vec_v2
Hallberg-NOAA Apr 7, 2021
03b997b
+Enhanced support for novel axes in MOM_io
Hallberg-NOAA Apr 9, 2021
0eb47b2
+More consistent treatment of input_filename = 'F'
Hallberg-NOAA Apr 10, 2021
5fe51b1
Merge pull request #1369 from Hallberg-NOAA/SIS2_IO_upgrades
marshallward Apr 12, 2021
983824a
Merge branch 'dev/gfdl' into F_case_file_output
marshallward Apr 12, 2021
1be9584
(*)Write full checksums to restarts
Hallberg-NOAA Apr 12, 2021
96f1d1e
Use allocatable types in write_ocean_geometry_files
Hallberg-NOAA Apr 14, 2021
e8e8aba
Merge remote-tracking branch 'hallberg/F_case_file_output' into F_cas…
Hallberg-NOAA Apr 14, 2021
fc75e0f
Merge pull request #1370 from Hallberg-NOAA/F_case_file_output
marshallward Apr 14, 2021
af34c38
Merge branch 'dev/gfdl' into fix_checksums
Hallberg-NOAA Apr 14, 2021
048dabd
Merge pull request #1371 from Hallberg-NOAA/fix_checksums
marshallward Apr 15, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ setup:
# Clone regressions directory
- git clone --recursive http://gitlab.gfdl.noaa.gov/ogrp/Gaea-stats-MOM6-examples.git tests && cd tests
# Install / update testing scripts
- git clone https://github.com/adcroft/MRS.git MRS
- git clone -b new-code-struct https://github.com/adcroft/MRS.git MRS
# Update MOM6-examples and submodules
- (cd MOM6-examples && git checkout . && git checkout dev/gfdl && git pull && git submodule init && git submodule update)
- (cd MOM6-examples/src/MOM6 && git submodule update)
Expand Down Expand Up @@ -60,7 +60,7 @@ gnu:ocean-only-nolibs:
- time tar zxf $CACHE_DIR/tests_$CI_PIPELINE_ID.tgz && cd tests
- make -f MRS/Makefile.build build/gnu/env && cd build/gnu
# mkdir -p build/gnu/repro/symmetric_dynamic/ocean_only && cd build/gnu/repro/symmetric_dynamic/ocean_only
- ../../MOM6-examples/src/mkmf/bin/list_paths -l ../../../config_src/{solo_driver,dynamic_symmetric,ext*} ../../../src ../../MOM6-examples/src/FMS
- ../../MOM6-examples/src/mkmf/bin/list_paths -l ../../../config_src/{drivers/solo_driver,memory/dynamic_symmetric,infra/FMS1,ext*} ../../../src ../../MOM6-examples/src/FMS
- sed -i '/FMS\/.*\/test_/d' path_names
- ../../MOM6-examples/src/mkmf/bin/mkmf -t ../../MOM6-examples/src/mkmf/templates/ncrc-gnu.mk -p MOM6 -c"-Duse_libMPI -Duse_netCDF" path_names
- time (source ./env ; make NETCDF=3 REPRO=1 MOM6 -s -j)
Expand All @@ -73,7 +73,7 @@ gnu:ice-ocean-nolibs:
- time tar zxf $CACHE_DIR/tests_$CI_PIPELINE_ID.tgz && cd tests
- make -f MRS/Makefile.build build/gnu/env && cd build/gnu
# mkdir -p build/gnu/repro/symmetric_dynamic/ocean_only && cd build/gnu/repro/symmetric_dynamic/ocean_only
- ../../MOM6-examples/src/mkmf/bin/list_paths -l ../../../config_src/{coupled_driver,dynamic,ext*} ../../../src ../../MOM6-examples/src/{FMS,coupler,SIS2,icebergs,ice_param,land_null,atmos_null}
- ../../MOM6-examples/src/mkmf/bin/list_paths -l ../../../config_src/{drivers/FMS_cap,memory/dynamic_nonsymmetric,infra/FMS1,ext*} ../../../src ../../MOM6-examples/src/{FMS,coupler,SIS2,icebergs,ice_param,land_null,atmos_null}
- sed -i '/FMS\/.*\/test_/d' path_names
- ../../MOM6-examples/src/mkmf/bin/mkmf -t ../../MOM6-examples/src/mkmf/templates/ncrc-gnu.mk -p MOM6 -c"-Duse_libMPI -Duse_netCDF -D_USE_LEGACY_LAND_ -Duse_AM3_physics" path_names
- time (source ./env ; make NETCDF=3 REPRO=1 MOM6 -s -j)
Expand Down
29 changes: 15 additions & 14 deletions .testing/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@
# MPIFC MPI Fortran compiler
#
# Build configuration:
#
# FCFLAGS_DEBUG Testing ("debug") compiler flags
# FCFLAGS_REPRO Production ("repro") compiler flags
# FCFLAGS_INIT Variable initialization flags
Expand Down Expand Up @@ -76,7 +75,6 @@ FCFLAGS_REPRO ?= -g -O2
FCFLAGS_INIT ?=
FCFLAGS_COVERAGE ?=
# Additional notes:
#
# - The default values are simple, minimalist flags, supported by nearly all
# compilers which are comparable to GFDL's canonical DEBUG and REPRO builds.
#
Expand All @@ -86,14 +84,18 @@ FCFLAGS_COVERAGE ?=
# - FMS cannot be built with the same aggressive initialization flags as MOM6,
# so FCFLAGS_INIT is used to provide additional MOM6 configuration.

# User-defined LDFLAGS (applied to all builds and FMS)
LDFLAGS_USER ?=

# Set to `true` to require identical results from DEBUG and REPRO builds
# NOTE: Many compilers (Intel, GCC on ARM64) do not yet produce identical
# results across DEBUG and REPRO builds (as defined below), so we disable on
# default.
DO_REPRO_TESTS ?=

# Time measurement (configurable by the CI)
TIME ?= time

# Many compilers (Intel, GCC on ARM64) do not yet produce identical results
# across DEBUG and REPRO builds (as defined below), so we disable on default.

#---
# Dependencies
DEPS = deps
Expand Down Expand Up @@ -154,10 +156,12 @@ SOURCE = \
$(foreach ext,F90 inc c h,$(wildcard $(1)/*/*.$(ext) $(1)/*/*/*.$(ext)))

MOM_SOURCE = $(call SOURCE,../src) \
$(wildcard ../config_src/solo_driver/*.F90) \
$(wildcard ../config_src/infra/FMS1/*.F90) \
$(wildcard ../config_src/drivers/solo_driver/*.F90) \
$(wildcard ../config_src/ext*/*/*.F90)
TARGET_SOURCE = $(call SOURCE,build/target_codebase/src) \
$(wildcard build/target_codebase/config_src/solo_driver/*.F90) \
$(wildcard build/target_codebase/config_src/infra/FMS1/*.F90) \
$(wildcard build/target_codebase/config_src/drivers/solo_driver/*.F90) \
$(wildcard build/target_codebase/config_src/ext*/*.F90)
FMS_SOURCE = $(call SOURCE,$(DEPS)/fms/src)

Expand Down Expand Up @@ -216,8 +220,8 @@ REPRO_FCFLAGS := FCFLAGS="$(FCFLAGS_REPRO) $(FCFLAGS_FMS)"
OPENMP_FCFLAGS := FCFLAGS="$(FCFLAGS_DEBUG) $(FCFLAGS_INIT) $(FCFLAGS_FMS)"
TARGET_FCFLAGS := FCFLAGS="$(FCFLAGS_DEBUG) $(FCFLAGS_INIT) $(FCFLAGS_FMS)"

MOM_LDFLAGS := LDFLAGS="$(LDFLAGS_FMS)"
SYMMETRIC_LDFLAGS := LDFLAGS="$(COVERAGE) $(LDFLAGS_FMS)"
MOM_LDFLAGS := LDFLAGS="$(LDFLAGS_FMS) $(LDFLAGS_USER)"
SYMMETRIC_LDFLAGS := LDFLAGS="$(COVERAGE) $(LDFLAGS_FMS) $(LDFLAGS_USER)"


# Environment variable configuration
Expand Down Expand Up @@ -249,7 +253,7 @@ build/target/Makefile: | $(TARGET_CODEBASE)
# Ideally we would want to re-run both Makefile and mkmf, but our mkmf call
# is inside ./configure, so we must re-run ./configure as well.
$(foreach b,$(filter-out target,$(BUILDS)),build/$(b)/Makefile): $(MOM_SOURCE)
build/target/configure: $(TARGET_SOURCE)
build/target_codebase/configure: $(TARGET_SOURCE)


# Build MOM6
Expand Down Expand Up @@ -285,10 +289,7 @@ $(TARGET_CODEBASE)/ac/configure: $(TARGET_CODEBASE)

$(TARGET_CODEBASE):
git clone --recursive $(MOM_TARGET_URL) $@
cd $@ && git checkout $(MOM_TARGET_BRANCH)
# Copy modern autoconf files to target?
mkdir -p $(TARGET_CODEBASE)/ac
cp -r ../ac/{configure.ac,Makefile.in,m4} $(TARGET_CODEBASE)/ac
cd $@ && git checkout --recurse-submodules $(MOM_TARGET_BRANCH)


#---
Expand Down
9 changes: 5 additions & 4 deletions ac/configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -42,18 +42,18 @@ srcdir=$srcdir/..
# Default to symmetric grid
# NOTE: --enable is more properly used to add a feature, rather than to select
# a compile-time mode, so this is not exactly being used as intended.
MEM_LAYOUT=${srcdir}/config_src/dynamic_symmetric
MEM_LAYOUT=${srcdir}/config_src/memory/dynamic_symmetric
AC_ARG_ENABLE([asymmetric],
AS_HELP_STRING([--enable-asymmetric], [Use the asymmetric grid]))
AS_IF([test "$enable_asymmetric" = yes],
[MEM_LAYOUT=${srcdir}/config_src/dynamic])
[MEM_LAYOUT=${srcdir}/config_src/memory/dynamic_nonsymmetric])

# Default to solo_driver
DRIVER_DIR=${srcdir}/config_src/solo_driver
DRIVER_DIR=${srcdir}/config_src/drivers/solo_driver
AC_ARG_WITH([driver],
AS_HELP_STRING([--with-driver=coupled_driver|solo_driver], [Select directory for driver source code]))
AS_IF([test "x$with_driver" != "x"],
[DRIVER_DIR=${srcdir}/config_src/${with_driver}])
[DRIVER_DIR=${srcdir}/config_src/drivers/${with_driver}])

# TODO: Rather than point to a pre-configured header file, autoconf could be
# used to configure a header based on a template.
Expand Down Expand Up @@ -216,6 +216,7 @@ AS_IF([test -z "$MKMF"], [
AC_CONFIG_COMMANDS([path_names],
[list_paths -l \
${srcdir}/src \
${srcdir}/config_src/infra/FMS1 \
${srcdir}/config_src/ext* \
${DRIVER_DIR} \
${MEM_LAYOUT}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ module MOM_surface_forcing_gfdl
use MOM_variables, only : surface
use user_revise_forcing, only : user_alter_forcing, user_revise_forcing_init
use user_revise_forcing, only : user_revise_forcing_CS
use iso_fortran_env, only : int64

implicit none ; private

Expand Down Expand Up @@ -1622,32 +1623,39 @@ subroutine ice_ocn_bnd_type_chksum(id, timestep, iobt)
type(ice_ocean_boundary_type), &
intent(in) :: iobt !< An ice-ocean boundary type with fluxes to drive the
!! ocean in a coupled model whose checksums are reported
integer :: n,m, outunit
! Local variables
integer(kind=int64) :: chks ! A checksum for the field
logical :: root ! True only on the root PE
integer :: outunit ! The output unit to write to

outunit = stdout

write(outunit,*) "BEGIN CHECKSUM(ice_ocean_boundary_type):: ", id, timestep
write(outunit,100) 'iobt%u_flux ', field_chksum( iobt%u_flux )
write(outunit,100) 'iobt%v_flux ', field_chksum( iobt%v_flux )
write(outunit,100) 'iobt%t_flux ', field_chksum( iobt%t_flux )
write(outunit,100) 'iobt%q_flux ', field_chksum( iobt%q_flux )
write(outunit,100) 'iobt%salt_flux ', field_chksum( iobt%salt_flux )
write(outunit,100) 'iobt%lw_flux ', field_chksum( iobt%lw_flux )
write(outunit,100) 'iobt%sw_flux_vis_dir', field_chksum( iobt%sw_flux_vis_dir)
write(outunit,100) 'iobt%sw_flux_vis_dif', field_chksum( iobt%sw_flux_vis_dif)
write(outunit,100) 'iobt%sw_flux_nir_dir', field_chksum( iobt%sw_flux_nir_dir)
write(outunit,100) 'iobt%sw_flux_nir_dif', field_chksum( iobt%sw_flux_nir_dif)
write(outunit,100) 'iobt%lprec ', field_chksum( iobt%lprec )
write(outunit,100) 'iobt%fprec ', field_chksum( iobt%fprec )
write(outunit,100) 'iobt%runoff ', field_chksum( iobt%runoff )
write(outunit,100) 'iobt%calving ', field_chksum( iobt%calving )
write(outunit,100) 'iobt%p ', field_chksum( iobt%p )
if (associated(iobt%ustar_berg)) &
write(outunit,100) 'iobt%ustar_berg ', field_chksum( iobt%ustar_berg )
if (associated(iobt%area_berg)) &
write(outunit,100) 'iobt%area_berg ', field_chksum( iobt%area_berg )
if (associated(iobt%mass_berg)) &
write(outunit,100) 'iobt%mass_berg ', field_chksum( iobt%mass_berg )
root = is_root_pe()

if (root) write(outunit,*) "BEGIN CHECKSUM(ice_ocean_boundary_type):: ", id, timestep
chks = field_chksum( iobt%u_flux ) ; if (root) write(outunit,100) 'iobt%u_flux ', chks
chks = field_chksum( iobt%v_flux ) ; if (root) write(outunit,100) 'iobt%v_flux ', chks
chks = field_chksum( iobt%t_flux ) ; if (root) write(outunit,100) 'iobt%t_flux ', chks
chks = field_chksum( iobt%q_flux ) ; if (root) write(outunit,100) 'iobt%q_flux ', chks
chks = field_chksum( iobt%salt_flux ) ; if (root) write(outunit,100) 'iobt%salt_flux ', chks
chks = field_chksum( iobt%lw_flux ) ; if (root) write(outunit,100) 'iobt%lw_flux ', chks
chks = field_chksum( iobt%sw_flux_vis_dir) ; if (root) write(outunit,100) 'iobt%sw_flux_vis_dir', chks
chks = field_chksum( iobt%sw_flux_vis_dif) ; if (root) write(outunit,100) 'iobt%sw_flux_vis_dif', chks
chks = field_chksum( iobt%sw_flux_nir_dir) ; if (root) write(outunit,100) 'iobt%sw_flux_nir_dir', chks
chks = field_chksum( iobt%sw_flux_nir_dif) ; if (root) write(outunit,100) 'iobt%sw_flux_nir_dif', chks
chks = field_chksum( iobt%lprec ) ; if (root) write(outunit,100) 'iobt%lprec ', chks
chks = field_chksum( iobt%fprec ) ; if (root) write(outunit,100) 'iobt%fprec ', chks
chks = field_chksum( iobt%runoff ) ; if (root) write(outunit,100) 'iobt%runoff ', chks
chks = field_chksum( iobt%calving ) ; if (root) write(outunit,100) 'iobt%calving ', chks
chks = field_chksum( iobt%p ) ; if (root) write(outunit,100) 'iobt%p ', chks
if (associated(iobt%ustar_berg)) then
chks = field_chksum( iobt%ustar_berg ) ; if (root) write(outunit,100) 'iobt%ustar_berg ', chks
endif
if (associated(iobt%area_berg)) then
chks = field_chksum( iobt%area_berg ) ; if (root) write(outunit,100) 'iobt%area_berg ', chks
endif
if (associated(iobt%mass_berg)) then
chks = field_chksum( iobt%mass_berg ) ; if (root) write(outunit,100) 'iobt%mass_berg ', chks
endif
100 FORMAT(" CHECKSUM::",A20," = ",Z20)

call coupler_type_write_chksums(iobt%fluxes, outunit, 'iobt%')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ module ocean_model_mod
use MOM_ice_shelf, only : add_shelf_forces, ice_shelf_end, ice_shelf_save_restart
use MOM_wave_interface, only: wave_parameters_CS, MOM_wave_interface_init
use MOM_wave_interface, only: MOM_wave_interface_init_lite, Update_Surface_Waves
use iso_fortran_env, only : int64

#include <MOM_memory.h>

Expand Down Expand Up @@ -1094,25 +1095,29 @@ subroutine ocean_model_data1D_get(OS, Ocean, name, value)

end subroutine ocean_model_data1D_get

!> Write out FMS-format checsums on fields from the ocean surface state
!> Write out checksums for fields from the ocean surface state
subroutine ocean_public_type_chksum(id, timestep, ocn)

character(len=*), intent(in) :: id !< An identifying string for this call
integer, intent(in) :: timestep !< The number of elapsed timesteps
type(ocean_public_type), intent(in) :: ocn !< A structure containing various publicly
!! visible ocean surface fields.
integer :: n, m, outunit
! Local variables
integer(kind=int64) :: chks ! A checksum for the field
logical :: root ! True only on the root PE
integer :: outunit ! The output unit to write to

outunit = stdout

write(outunit,*) "BEGIN CHECKSUM(ocean_type):: ", id, timestep
write(outunit,100) 'ocean%t_surf ', field_chksum(ocn%t_surf )
write(outunit,100) 'ocean%s_surf ', field_chksum(ocn%s_surf )
write(outunit,100) 'ocean%u_surf ', field_chksum(ocn%u_surf )
write(outunit,100) 'ocean%v_surf ', field_chksum(ocn%v_surf )
write(outunit,100) 'ocean%sea_lev ', field_chksum(ocn%sea_lev)
write(outunit,100) 'ocean%frazil ', field_chksum(ocn%frazil )
write(outunit,100) 'ocean%melt_potential ', field_chksum(ocn%melt_potential)
root = is_root_pe()

if (root) write(outunit,*) "BEGIN CHECKSUM(ocean_type):: ", id, timestep
chks = field_chksum(ocn%t_surf ) ; if (root) write(outunit,100) 'ocean%t_surf ', chks
chks = field_chksum(ocn%s_surf ) ; if (root) write(outunit,100) 'ocean%s_surf ', chks
chks = field_chksum(ocn%u_surf ) ; if (root) write(outunit,100) 'ocean%u_surf ', chks
chks = field_chksum(ocn%v_surf ) ; if (root) write(outunit,100) 'ocean%v_surf ', chks
chks = field_chksum(ocn%sea_lev) ; if (root) write(outunit,100) 'ocean%sea_lev ', chks
chks = field_chksum(ocn%frazil ) ; if (root) write(outunit,100) 'ocean%frazil ', chks
chks = field_chksum(ocn%melt_potential) ; if (root) write(outunit,100) 'ocean%melt_potential ', chks
call coupler_type_write_chksums(ocn%fields, outunit, 'ocean%')
100 FORMAT(" CHECKSUM::",A20," = ",Z20)

Expand Down Expand Up @@ -1162,6 +1167,8 @@ subroutine ocean_model_get_UV_surf(OS, Ocean, name, array2D, isc, jsc)

sfc_state => OS%sfc_state

call pass_vector(sfc_state%u, sfc_state%v, G%Domain)

select case(name)
case('ua')
do j=jsc_bnd,jec_bnd ; do i=isc_bnd,iec_bnd
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -185,6 +185,8 @@ program Shelf_main
endif
endif

call Get_MOM_Input(param_file, dirs)

! Read ocean_solo restart, which can override settings from the namelist.
if (file_exists(trim(dirs%restart_input_dir)//'ice_solo.res')) then
call open_ASCII_file(unit, trim(dirs%restart_input_dir)//'ice_solo.res', action=READONLY_FILE)
Expand Down Expand Up @@ -215,7 +217,6 @@ program Shelf_main
Start_time = real_to_time(0.0)
endif

call Get_MOM_Input(param_file, dirs)
! Determining the internal unit scaling factors for this run.
call unit_scaling_init(param_file, US)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ module MOM_ocean_model_mct
use MOM, only : extract_surface_state, allocate_surface_state, finish_MOM_initialization
use MOM, only : get_MOM_state_elements, MOM_state_is_synchronized
use MOM, only : get_ocean_stocks, step_offline
use MOM_coms, only : field_chksum
use MOM_constants, only : CELSIUS_KELVIN_OFFSET, hlf
use MOM_diag_mediator, only : diag_ctrl, enable_averaging, disable_averaging
use MOM_diag_mediator, only : diag_mediator_close_registration, diag_mediator_end
Expand Down Expand Up @@ -65,6 +66,7 @@ module MOM_ocean_model_mct

! MCT specfic routines
use MOM_domains, only : MOM_infra_end
use iso_fortran_env, only : int64

#include <MOM_memory.h>

Expand Down Expand Up @@ -1042,24 +1044,26 @@ subroutine Ocean_stock_pe(OS, index, value, time_index)

end subroutine Ocean_stock_pe

!> Write out FMS-format checsums on fields from the ocean surface state
!> Write out checksums for fields from the ocean surface state
subroutine ocean_public_type_chksum(id, timestep, ocn)

character(len=*), intent(in) :: id !< An identifying string for this call
integer, intent(in) :: timestep !< The number of elapsed timesteps
type(ocean_public_type), intent(in) :: ocn !< A structure containing various publicly
!! visible ocean surface fields.
integer :: n, m

write(stdout,*) "BEGIN CHECKSUM(ocean_type):: ", id, timestep
write(stdout,100) 'ocean%t_surf ',mpp_chksum(ocn%t_surf )
write(stdout,100) 'ocean%s_surf ',mpp_chksum(ocn%s_surf )
write(stdout,100) 'ocean%u_surf ',mpp_chksum(ocn%u_surf )
write(stdout,100) 'ocean%v_surf ',mpp_chksum(ocn%v_surf )
write(stdout,100) 'ocean%sea_lev ',mpp_chksum(ocn%sea_lev)
write(stdout,100) 'ocean%frazil ',mpp_chksum(ocn%frazil )
write(stdout,100) 'ocean%melt_potential ',mpp_chksum(ocn%melt_potential)

! Local variables
integer(kind=int64) :: chks ! A checksum for the field
logical :: root ! True only on the root PE
integer :: outunit ! The output unit to write to

if (root) write(outunit,*) "BEGIN CHECKSUM(ocean_type):: ", id, timestep
chks = field_chksum(ocn%t_surf ) ; if (root) write(outunit,100) 'ocean%t_surf ', chks
chks = field_chksum(ocn%s_surf ) ; if (root) write(outunit,100) 'ocean%s_surf ', chks
chks = field_chksum(ocn%u_surf ) ; if (root) write(outunit,100) 'ocean%u_surf ', chks
chks = field_chksum(ocn%v_surf ) ; if (root) write(outunit,100) 'ocean%v_surf ', chks
chks = field_chksum(ocn%sea_lev) ; if (root) write(outunit,100) 'ocean%sea_lev ', chks
chks = field_chksum(ocn%frazil ) ; if (root) write(outunit,100) 'ocean%frazil ', chks
chks = field_chksum(ocn%melt_potential) ; if (root) write(outunit,100) 'ocean%melt_potential ', chks
call coupler_type_write_chksums(ocn%fields, stdout, 'ocean%')
100 FORMAT(" CHECKSUM::",A20," = ",Z20)

Expand Down
Loading