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

PR to main (Jan 2022) #1555

Closed
wants to merge 191 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
191 commits
Select commit Hold shift + click to select a range
43d4f16
(+*)Fix MEKE advection bug
Hallberg-NOAA Oct 1, 2021
374acc5
+Add BAROTROPIC_TIDAL_SAL_BUG to fix a tide bug
Hallberg-NOAA Oct 5, 2021
e4cdaaf
Merge branch 'dev/gfdl' into MEKE_advection_bugfix
marshallward Oct 8, 2021
a384fcc
Merge pull request #1506 from Hallberg-NOAA/MEKE_advection_bugfix
marshallward Oct 9, 2021
780919f
Merge branch 'dev/gfdl' into tidal_SAL_bugfix
marshallward Oct 9, 2021
7d808b5
Merge pull request #1508 from Hallberg-NOAA/tidal_SAL_bugfix
marshallward Oct 9, 2021
5c3f143
Particle API (#1504)
cspencerjones Oct 11, 2021
ce5595f
adds missing _ (#1519)
navidcy Oct 12, 2021
b08efb8
Working on boundary layer docs.
kshedstrom Oct 4, 2021
5adf763
Done with EPBL docs?
kshedstrom Oct 6, 2021
e2da693
Merge pull request #1510 from ESMG/esmg-docs
marshallward Oct 13, 2021
8e5a1b7
FMS1: Don't create IO domains for single-PE domain
marshallward Oct 13, 2021
24e48a7
User/wfc/remap scheme (#1503)
wfcooke Oct 14, 2021
393df05
+*Change defaults for 3 parameters to better values (#1509)
Hallberg-NOAA Oct 14, 2021
5bc0be3
+Add new parameter FATAL_INCONSISTENT_RESTART_TIME (#1511)
Hallberg-NOAA Oct 14, 2021
85afd24
+(*)Fix bug when RES_SCALE_MEKE_VISC = True (#1512)
Hallberg-NOAA Oct 15, 2021
4d9ed4f
+Make 37 optional arguments in src/core mandatory
Hallberg-NOAA Oct 15, 2021
39c0c34
Refactored solo_driver/MOM_driver.F90
Hallberg-NOAA Oct 13, 2021
1fb283b
Merge branch 'dev/gfdl' into opt_args_in_core
marshallward Oct 19, 2021
e291d32
Merge pull request #1523 from Hallberg-NOAA/opt_args_in_core
marshallward Oct 20, 2021
ba01cea
Merge branch 'main' into main_to_dev
marshallward Oct 20, 2021
5d82809
Merge pull request #1529 from marshallward/main_to_dev
marshallward Oct 20, 2021
c62258c
+Optional just_read_params args are now mandatory
Hallberg-NOAA Oct 17, 2021
037af8e
+Argument cleanup in vertical parameterization code
Hallberg-NOAA Oct 17, 2021
6ff0cae
Use FMS2 `file_exists`, remove domain args
marshallward Oct 22, 2021
ee3b92f
fix low mode in tidal_mixing
Oct 11, 2021
7e8d6e2
+Eliminate unused arguments in diagnostics code
Hallberg-NOAA Oct 19, 2021
2f91303
Merge branch 'dev/gfdl' into no_1pe_io_layout
Hallberg-NOAA Oct 25, 2021
1700498
Merge pull request #1522 from marshallward/no_1pe_io_layout
Hallberg-NOAA Oct 25, 2021
a2aaad6
Always create single-threaded files in 1 PE runs
Hallberg-NOAA Oct 13, 2021
6dd1d14
+Optional arg cleanup in horizontal param code
Hallberg-NOAA Oct 20, 2021
c053fdc
cpu_clock_id: synchro_flag arg changed to logical
marshallward Oct 25, 2021
0df0467
Merge branch 'dev/gfdl' into fms2_file_exist
Hallberg-NOAA Oct 26, 2021
9d0a92b
Merge pull request #1532 from marshallward/fms2_file_exist
Hallberg-NOAA Oct 26, 2021
5ffad6d
Merge branch 'dev/gfdl' into sync_clock_flag
Hallberg-NOAA Oct 26, 2021
9031683
Merge pull request #1535 from marshallward/sync_clock_flag
Hallberg-NOAA Oct 26, 2021
aad1e89
Eliminate GET_ALL_PARAMS in hor_visc_init (#1536)
Hallberg-NOAA Oct 29, 2021
1324656
Add weighted d[uv]_dt_str diagnostics (#1539)
NoraLoose Nov 5, 2021
f2e9983
+Argument cleanup in vertical diffusivity code
Hallberg-NOAA Oct 22, 2021
2e7624b
+Move rotate_dyn_horgrid to MOM_dyn_horgrid module
Hallberg-NOAA Oct 27, 2021
5a2bb8d
+Reduce use of dyn_horgrid in initialize_MOM
Hallberg-NOAA Oct 27, 2021
688bff9
(*)Fix compile-time issues with MOM_sum_driver.F90
Hallberg-NOAA Oct 27, 2021
9341376
Removed Travis-CI badge from README
adcroft Nov 16, 2021
8b5e10a
(+) porous topography implementation (#3)
sditkovsky Nov 17, 2021
d7b2e32
Disable clock sync of in-loop BML timers
marshallward Nov 10, 2021
26b1d96
Correct a couple of typos in hor_visc
herrwang0 Nov 18, 2021
e2e5787
Corrected the units of 124 variables
Hallberg-NOAA Nov 13, 2021
ca61bf9
Horizontal viscosity pointer removal
marshallward Sep 24, 2021
0e19103
MEKE pointer cleanup
marshallward Sep 30, 2021
899bf4e
Mixed layer pointer purge
marshallward Oct 5, 2021
9bf8715
Thickness diffusion pointer removal
marshallward Oct 5, 2021
c91b464
Tidal forcing CS pointer removal
marshallward Oct 5, 2021
4a98271
Internal tide pointer removal
marshallward Oct 6, 2021
4b6f45e
Entrain diffusive pointer removal
marshallward Oct 7, 2021
2540b4e
Tidal mixing pointer cleanup
marshallward Oct 7, 2021
e50c667
Geothermal heating pointer removal
marshallward Oct 8, 2021
1a3a20a
Opacity pointer removal
marshallward Oct 11, 2021
3152a9e
Bulk mixed layer pointer removal
marshallward Oct 15, 2021
e3d59fe
Energetic PBL pointer removal
marshallward Oct 15, 2021
d6e98dc
Regularize layers pointer removal
marshallward Oct 15, 2021
5d0160a
CVMix convection pointer removal
marshallward Oct 16, 2021
65a3516
MEKE_type pointer removal
marshallward Oct 18, 2021
1cef96c
Variable mixing pointer removal
marshallward Oct 19, 2021
bbf0f52
Wave speed pointer removal
marshallward Oct 19, 2021
7a63130
MOM_restart_cs pointer removal
marshallward Oct 20, 2021
09a990c
Barotropic CS pointer removal
marshallward Oct 26, 2021
8632fee
Wave structure CS pointer
marshallward Oct 27, 2021
b176571
ALE sponge pointer removal (partial)
marshallward Oct 27, 2021
5b1dd3f
MOM diagnostic pointer removal
marshallward Oct 27, 2021
c4fd89d
set_visc_CS pointer removal
marshallward Nov 10, 2021
62edfdb
tidal_bay_obc_cs pointer removal
marshallward Nov 11, 2021
c4df748
Equation of state pointer removal
marshallward Nov 11, 2021
4ee4dc5
CoriolisAdv_CS pointer removal
marshallward Nov 13, 2021
dc9adeb
PressureForce CS pointer removal
marshallward Nov 15, 2021
a250208
MOM continuity CS pointer removal
marshallward Nov 15, 2021
d00c90b
MOM_open_boundary pointer removal
marshallward Nov 16, 2021
bc82609
small fixes to porous topo code
sditkovsky Nov 19, 2021
844c4c7
Merge branch 'dev/gfdl' into hor_visc_typos
Hallberg-NOAA Nov 21, 2021
7b96ac1
Merge pull request #4 from herrwang0/hor_visc_typos
Hallberg-NOAA Nov 21, 2021
8a73a35
Merge branch 'dev/gfdl' into no_more_pointers
Hallberg-NOAA Nov 22, 2021
be50361
Add initialization tests using CS%initialized
Hallberg-NOAA Nov 22, 2021
b2f6678
Merge pull request #5 from marshallward/no_more_pointers
Hallberg-NOAA Nov 22, 2021
4e67533
Corrected the descriptions of 60 variables
Hallberg-NOAA Nov 23, 2021
4e6e73f
Merge branch 'dev/gfdl' into initialized_tests
Hallberg-NOAA Nov 23, 2021
2b0bb96
+Add G%Rad_Earth_L and related code simplification
Hallberg-NOAA Nov 23, 2021
e717e46
preserve dimensions in porous topo interpolation
sditkovsky Nov 24, 2021
04d932e
Remove Z_to_m rescaling in porous module
sditkovsky Nov 24, 2021
a98c3ef
small bug fix
sditkovsky Nov 24, 2021
66e1493
small bug fix 2
sditkovsky Nov 24, 2021
62786c4
fix merge issue
sditkovsky Nov 24, 2021
6608730
Merge pull request #6 from Hallberg-NOAA/initialized_tests
marshallward Nov 25, 2021
d8abf05
Merge branch 'dev/gfdl' into more_unit_fixes
marshallward Nov 25, 2021
4a7ab45
Merge pull request #7 from Hallberg-NOAA/more_unit_fixes
marshallward Nov 26, 2021
dc4e707
Merge branch 'dev/gfdl' into rescaled_Rad_Earth
marshallward Nov 26, 2021
470ed7b
Merge pull request #8 from Hallberg-NOAA/rescaled_Rad_Earth
marshallward Nov 27, 2021
2a82bbd
(*)Fix rescaling when SPLIT_BOTTOM_STRESS = True
Hallberg-NOAA Nov 23, 2021
6c01c8d
(*)Refactored and fixed pseudo_salt_tracer code
Hallberg-NOAA Nov 28, 2021
111b3e7
+Eliminate forcing%netSalt
Hallberg-NOAA Nov 28, 2021
c54dcc6
+Clean up dimensional rescaling in write_u_accel
Hallberg-NOAA Nov 23, 2021
a65fbed
+Rescale fluxes passed to KPP_NonLocalTransport
Hallberg-NOAA Nov 24, 2021
32d0a4e
Refactored DOME_initialize_sponges() (#12)
Hallberg-NOAA Nov 29, 2021
ec84be5
change conversion H_to_MKS to H_to_m for u/veffA
sditkovsky Nov 29, 2021
3f38239
Merge branch 'dev/gfdl' into porous_topo_sjd
sditkovsky Nov 29, 2021
13a1cde
+Rescaled flux arguments to tracer_vertdiff()
Hallberg-NOAA Nov 29, 2021
2087e05
Merge pull request #3 from sditkovsky/porous_topo_sjd
Hallberg-NOAA Nov 30, 2021
3597433
Bug fix for reading First_direction from restart
herrwang0 Nov 30, 2021
e218478
Expanded comments describing src/core code (#13)
Hallberg-NOAA Nov 30, 2021
a0248ef
Minor code cleanup in drivers/FMS_cap
Hallberg-NOAA Nov 28, 2021
7d39f26
Merge branch 'dev/gfdl' into refactor_pseudo_salt_tracer
Hallberg-NOAA Nov 30, 2021
f67e030
Cleaned up whitespace leftover from porous topomerge.
adcroft Dec 1, 2021
ceb181f
Fix out-of-bounds k index in PPM flux
adcroft Dec 1, 2021
d716745
Testing: Codecov uploader update
marshallward Dec 1, 2021
6494852
Code cleanup in drivers/solo_driver forcing files
Hallberg-NOAA Nov 28, 2021
5361174
Merge branch 'dev/gfdl' into refactor_pseudo_salt_tracer
marshallward Dec 2, 2021
585cc70
Merge pull request #16 from Hallberg-NOAA/refactor_pseudo_salt_tracer
marshallward Dec 4, 2021
2dbd055
Merge branch 'dev/gfdl' into tracer_sfc_flux_rescale
marshallward Dec 4, 2021
36d4f7f
Bugfix: cpu clock sync error
marshallward Dec 4, 2021
a44e460
Merge pull request #17 from Hallberg-NOAA/tracer_sfc_flux_rescale
marshallward Dec 5, 2021
264fc20
Merge branch 'dev/gfdl' into bugfix_alternate_first_dir
marshallward Dec 5, 2021
ad35e4a
Merge pull request #18 from herrwang0/bugfix_alternate_first_dir
Hallberg-NOAA Dec 6, 2021
7d80abc
Merge branch 'dev/gfdl' into new_codecov_uploader
Hallberg-NOAA Dec 6, 2021
7e1474e
Merge pull request #21 from marshallward/new_codecov_uploader
Hallberg-NOAA Dec 6, 2021
e48f4a7
+Add the new routine unit_no_scaling_init
Hallberg-NOAA Dec 6, 2021
59c5926
(*)Provide US arguments to 4 existing calls
Hallberg-NOAA Dec 6, 2021
3162bd0
+Make US arguments non-optional for 28 routines
Hallberg-NOAA Dec 6, 2021
763ddab
Docs: Add NASA-GMAO to consortium figure
marshallward Dec 6, 2021
e756a69
+Add post_product_[uv] and post_product_sum_[uv]
Hallberg-NOAA Dec 3, 2021
c0be5d3
Use post_product_u for momentum budget diagnostics
Hallberg-NOAA Dec 3, 2021
5f21667
+Rescale fluxes%net_mass_src and other diagnostics (#23)
Hallberg-NOAA Dec 8, 2021
e2c81e9
+Rescale forcing arguments and revise ctrl_forcing (#25)
Hallberg-NOAA Dec 8, 2021
3ce6a31
Merge branch 'dev/gfdl' into cpu_clock_sync_bugfix
Hallberg-NOAA Dec 9, 2021
833cd30
+Remove clocks inside of j-loops
Hallberg-NOAA Dec 5, 2021
8b5c1c8
Deallocate eta_PF_start to avoid a memory leak
Hallberg-NOAA Dec 5, 2021
3f46b6a
+Set find_salt_root if SHELF_THREE_EQN = .False.
Hallberg-NOAA Dec 5, 2021
ec553aa
+Obsolete ETA_TOLERANCE_AUX
Hallberg-NOAA Dec 5, 2021
d733714
(*)Fix extract_diabatic_member
Hallberg-NOAA Dec 10, 2021
5172c49
Warn if opacity_from_chl is called without fluxes
Hallberg-NOAA Dec 10, 2021
90739be
Correct comments describing advect_tracer args
Hallberg-NOAA Dec 10, 2021
3364af1
Update indexing of array passed to data_override.
wfcooke Dec 6, 2021
2319139
Correct out of bounds index (por_face_areaU) bug
Hallberg-NOAA Dec 7, 2021
05edb63
(*)Offline tracer read bug fix
Hallberg-NOAA Dec 10, 2021
fcfd238
+Refactored and rescaled the offline tracer code
Hallberg-NOAA Dec 11, 2021
09bcea2
Merge branch 'dev/gfdl' into cpu_clock_sync_bugfix
Hallberg-NOAA Dec 11, 2021
112ac49
+(*)Revised offline tracer algorithms
Hallberg-NOAA Dec 11, 2021
0895fe3
Merge branch 'dev/gfdl' into offline_tracer_fix
Hallberg-NOAA Dec 11, 2021
fbafcb1
Merge branch 'dev/gfdl' into mandatory_US_args
Hallberg-NOAA Dec 11, 2021
86b91dc
Merge pull request #29 from Hallberg-NOAA/mandatory_US_args
marshallward Dec 12, 2021
e452a29
Merge branch 'dev/gfdl' into cpu_clock_sync_bugfix
Hallberg-NOAA Dec 12, 2021
7ae28b8
Merge pull request #27 from marshallward/cpu_clock_sync_bugfix
Hallberg-NOAA Dec 13, 2021
8824671
Merge branch 'dev/gfdl' into consortium_fig_update
Hallberg-NOAA Dec 13, 2021
8f5dc28
Merge pull request #31 from marshallward/consortium_fig_update
Hallberg-NOAA Dec 13, 2021
cf931b1
Eliminate unneeded diagnostic arrays
Hallberg-NOAA Dec 9, 2021
170fffd
MOM_sponge cleanup
Hallberg-NOAA Dec 9, 2021
6feadd0
Use G%Rad_Earth_L in mct and NUOPC cap code
Hallberg-NOAA Dec 11, 2021
bbb9753
+Rescale some sea-surface height variables to [Z]
Hallberg-NOAA Dec 11, 2021
86eb106
Correct the units in two comments
Hallberg-NOAA Dec 15, 2021
049241c
+Rescaled optics%opacity_band
Hallberg-NOAA Dec 16, 2021
08cd63b
Merge branch 'dev/gfdl' into opacity_rescale
Hallberg-NOAA Dec 16, 2021
0544f9f
+(*)Avoid segmentation faults if PEN_SW_NBANDS = 0
Hallberg-NOAA Dec 16, 2021
50df270
Ice dynamics (#35)
OlgaSergienko Dec 17, 2021
12f29f6
Adding temperature restore capability for SPEAR. (#36)
wfcooke Dec 18, 2021
a902e75
+Add US args and rescale dt arg to generic tracers
Hallberg-NOAA Dec 13, 2021
986bc8c
Corrected the unit documentation for 31 variables
Hallberg-NOAA Dec 14, 2021
d244246
+Rescale tides and ramp-up times
Hallberg-NOAA Dec 14, 2021
9a5e218
Merge branch 'main' into main_to_dev_gfdl
marshallward Dec 21, 2021
bf43fd8
Merge pull request #47 from marshallward/main_to_dev_gfdl
adcroft Dec 21, 2021
5d4e8a1
(*)Removed problematic offline tracer lines
Hallberg-NOAA Dec 22, 2021
dad675a
Fix badge URL for codecov
adcroft Dec 22, 2021
34554d0
Merge branch 'dev/gfdl' into offline_tracer_fix
Hallberg-NOAA Dec 22, 2021
e3c0b72
Merge branch 'dev/gfdl' into offline_tracer_fix
Hallberg-NOAA Dec 22, 2021
f35edbd
Bugfix - calculate density integrals in ALE mode w/ pressure_reconstr…
MJHarrison-GFDL Dec 17, 2021
f865b24
Update MOM_PressureForce_FV.F90
marshallward Dec 23, 2021
b628748
Correct comments describing generic_tracer args
Hallberg-NOAA Dec 16, 2021
6bcea76
Fixes an uninitialized logical in FMS_cap
adcroft Dec 22, 2021
d9d82e3
Eliminate unneeded diagnostic arrays in CorAdCalc
Hallberg-NOAA Dec 23, 2021
a8a2039
Merge branch 'dev/gfdl' into opacity_rescale
Hallberg-NOAA Dec 27, 2021
1028ee0
Merge pull request #43 from Hallberg-NOAA/opacity_rescale
marshallward Dec 29, 2021
c32ec97
Merge branch 'dev/gfdl' into offline_tracer_fix
Hallberg-NOAA Dec 29, 2021
5ad8a2c
Deleted commented out offline tracer lines
Hallberg-NOAA Dec 29, 2021
2b2214d
(*)Use por_face_area in zonal_face_thickness
Hallberg-NOAA Dec 23, 2021
e5a5407
Merge branch 'dev/gfdl' into offline_tracer_fix
marshallward Dec 29, 2021
71cf831
Merge pull request #37 from Hallberg-NOAA/offline_tracer_fix
marshallward Dec 29, 2021
2d32631
Option to homogenize forces and fluxes (#51)
breichl Jan 3, 2022
df46be4
Hydrostatic initialization in ice cavities (#41)
MJHarrison-GFDL Jan 6, 2022
f7a2254
Rewrite horizontal regridding to use netCDF wrapper functions (#48)
marshallward Jan 8, 2022
d838ccd
Clean up non-standard syntax and whitespace
Hallberg-NOAA Jan 8, 2022
6da5c9b
Standardize code in calc_sfc_displacement
Hallberg-NOAA Jan 8, 2022
9f0018f
+(*)Change the remapping dzInterface argument sign
Hallberg-NOAA Jan 18, 2022
03a247e
Avoid divide by zero in horizontal_viscosity() with better_bound_kh
adcroft Jan 21, 2022
e63c405
Fix soft-conventional index capitalization in horizontal_viscosity()
adcroft Jan 21, 2022
65998cd
Esmg docs (#57)
kshedstrom Jan 26, 2022
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
14 changes: 10 additions & 4 deletions .testing/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,7 @@ endif
# These are set to true by our Travis configuration if testing a pull request
DO_REGRESSION_TESTS ?=
REPORT_COVERAGE ?=
CODECOV_UPLOADER_URL ?= https://uploader.codecov.io/latest/linux/codecov

ifeq ($(DO_REGRESSION_TESTS), true)
BUILDS += target
Expand All @@ -165,6 +166,7 @@ else
endif



# List of source files to link this Makefile's dependencies to model Makefiles
# Assumes a depth of two, and the following extensions: F90 inc c h
# (1): Root directory
Expand Down Expand Up @@ -542,6 +544,7 @@ $(foreach c,$(CONFIGS),$(eval $(call CONFIG_DIM_RULE,$(c))))
# $(4): MOM_override configuration
# $(5): Environment variables
# $(6): Number of MPI ranks

define STAT_RULE
work/%/$(1)/ocean.stats work/%/$(1)/chksum_diag: build/$(2)/MOM6 $(VENV_PATH)
@echo "Running test $$*.$(1)..."
Expand Down Expand Up @@ -570,10 +573,13 @@ work/%/$(1)/ocean.stats work/%/$(1)/chksum_diag: build/$(2)/MOM6 $(VENV_PATH)
@echo -e "$(DONE): $$*.$(1); no runtime errors."
if [ $(3) ]; then \
mkdir -p results/$$* ; \
cd build/symmetric \
&& bash <(curl -s https://codecov.io/bash) -Z -n $$@ \
> codecov.$$*.$(1).out \
2> codecov.$$*.$(1).err \
cd build/symmetric ; \
gcov *.gcda > gcov.$$*.$(1).out ; \
curl -s $(CODECOV_UPLOADER_URL) -o codecov ; \
chmod +x codecov ; \
./codecov -Z -f "*.gcov" -n $$@ \
> codecov.$$*.$(1).out \
2> codecov.$$*.$(1).err \
&& echo -e "${MAGENTA}Report uploaded to codecov.${RESET}"; \
fi
endef
Expand Down
3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
[![Build Status](https://travis-ci.org/NOAA-GFDL/MOM6.svg?branch=dev/master)](https://travis-ci.org/NOAA-GFDL/MOM6)
[![Read The Docs Status](https://readthedocs.org/projects/mom6/badge/?badge=latest)](http://mom6.readthedocs.io/)
[![codecov](https://codecov.io/gh/NOAA-GFDL/MOM6/branch/dev%2Fmaster/graph/badge.svg)](https://codecov.io/gh/NOAA-GFDL/MOM6)
[![codecov](https://codecov.io/gh/NOAA-GFDL/MOM6/branch/dev/gfdl/graph/badge.svg?token=uF8SVydCdp)](https://codecov.io/gh/NOAA-GFDL/MOM6)

# MOM6

Expand Down
108 changes: 64 additions & 44 deletions config_src/drivers/FMS_cap/MOM_surface_forcing_gfdl.F90

Large diffs are not rendered by default.

51 changes: 26 additions & 25 deletions config_src/drivers/FMS_cap/ocean_model_MOM.F90
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ module ocean_model_mod

!> This type is used for communication with other components via the FMS coupler.
!! The element names and types can be changed only with great deliberation, hence
!! the persistnce of things like the cutsy element name "avg_kount".
!! the persistence of things like the cutesy element name "avg_kount".
type, public :: ocean_public_type
type(domain2d) :: Domain !< The domain for the surface fields.
logical :: is_ocean_pe !< .true. on processors that run the ocean model.
Expand All @@ -110,8 +110,8 @@ module ocean_model_mod
!! a global max across ocean and non-ocean processors can be
!! used to determine its value.
real, pointer, dimension(:,:) :: &
t_surf => NULL(), & !< SST on t-cell (degrees Kelvin)
s_surf => NULL(), & !< SSS on t-cell (psu)
t_surf => NULL(), & !< SST on t-cell [degrees Kelvin]
s_surf => NULL(), & !< SSS on t-cell [ppt]
u_surf => NULL(), & !< i-velocity at the locations indicated by stagger [m s-1].
v_surf => NULL(), & !< j-velocity at the locations indicated by stagger [m s-1].
sea_lev => NULL(), & !< Sea level in m after correction for surface pressure,
Expand Down Expand Up @@ -154,8 +154,8 @@ module ocean_model_mod

logical :: icebergs_alter_ocean !< If true, the icebergs can change ocean the
!! ocean dynamics and forcing fluxes.
real :: press_to_z !< A conversion factor between pressure and ocean
!! depth in m, usually 1/(rho_0*g) [m Pa-1].
real :: press_to_z !< A conversion factor between pressure and ocean depth,
!! usually 1/(rho_0*g) [Z T2 R-1 L-2 ~> m Pa-1].
real :: C_p !< The heat capacity of seawater [J degC-1 kg-1].
logical :: offline_tracer_mode = .false. !< If false, use the model in prognostic mode
!! with the barotropic and baroclinic dynamics, thermodynamics,
Expand Down Expand Up @@ -221,7 +221,7 @@ module ocean_model_mod
!! for restarts and reading restart files if appropriate.
!!
!! This subroutine initializes both the ocean state and the ocean surface type.
!! Because of the way that indicies and domains are handled, Ocean_sfc must have
!! Because of the way that indices and domains are handled, Ocean_sfc must have
!! been used in a previous call to initialize_ocean_type.
subroutine ocean_model_init(Ocean_sfc, OS, Time_init, Time_in, wind_stagger, gas_fields_ocn)
type(ocean_public_type), target, &
Expand All @@ -242,16 +242,16 @@ subroutine ocean_model_init(Ocean_sfc, OS, Time_init, Time_in, wind_stagger, gas
!! tracer fluxes, and can be used to spawn related
!! internal variables in the ice model.
! Local variables
real :: Rho0 ! The Boussinesq ocean density [kg m-3].
real :: G_Earth ! The gravitational acceleration [m s-2].
real :: HFrz !< If HFrz > 0 (m), melt potential will be computed.
real :: Rho0 ! The Boussinesq ocean density [R ~> kg m-3]
real :: G_Earth ! The gravitational acceleration [L2 Z-1 T-2 ~> m s-2]
real :: HFrz !< If HFrz > 0 [Z ~> m], melt potential will be computed.
!! The actual depth over which melt potential is computed will
!! min(HFrz, OBLD), where OBLD is the boundary layer depth.
!! If HFrz <= 0 (default), melt potential will not be computed.
logical :: use_melt_pot!< If true, allocate melt_potential array
logical :: use_melt_pot !< If true, allocate melt_potential array

! This include declares and sets the variable "version".
#include "version_variable.h"
! This include declares and sets the variable "version".
# include "version_variable.h"
character(len=40) :: mdl = "ocean_model_init" ! This module's name.
character(len=48) :: stagger ! A string indicating the staggering locations for the
! surface velocities returned to the coupler.
Expand Down Expand Up @@ -331,28 +331,29 @@ subroutine ocean_model_init(Ocean_sfc, OS, Time_init, Time_in, wind_stagger, gas
"calculate accelerations and the mass for conservation "//&
"properties, or with BOUSSINSEQ false to convert some "//&
"parameters from vertical units of m to kg m-2.", &
units="kg m-3", default=1035.0)
units="kg m-3", default=1035.0, scale=OS%US%kg_m3_to_R)
call get_param(param_file, mdl, "G_EARTH", G_Earth, &
"The gravitational acceleration of the Earth.", &
units="m s-2", default = 9.80)
units="m s-2", default=9.80, scale=OS%US%m_s_to_L_T**2*OS%US%Z_to_m)

call get_param(param_file, mdl, "ICE_SHELF", OS%use_ice_shelf, &
"If true, enables the ice shelf model.", default=.false.)

call get_param(param_file, mdl, "ICEBERGS_APPLY_RIGID_BOUNDARY", OS%icebergs_alter_ocean, &
"If true, allows icebergs to change boundary condition felt by ocean", default=.false.)

OS%press_to_z = 1.0/(Rho0*G_Earth)
OS%press_to_z = 1.0 / (Rho0*G_Earth)

! Consider using a run-time flag to determine whether to do the diagnostic
! vertical integrals, since the related 3-d sums are not negligible in cost.
call get_param(param_file, mdl, "HFREEZE", HFrz, &
"If HFREEZE > 0, melt potential will be computed. The actual depth "//&
"over which melt potential is computed will be min(HFREEZE, OBLD), "//&
"where OBLD is the boundary layer depth. If HFREEZE <= 0 (default), "//&
"melt potential will not be computed.", units="m", default=-1.0, do_not_log=.true.)
"melt potential will not be computed.", &
units="m", default=-1.0, scale=OS%US%m_to_Z, do_not_log=.true.)

if (HFrz .gt. 0.0) then
if (HFrz > 0.0) then
use_melt_pot=.true.
else
use_melt_pot=.false.
Expand Down Expand Up @@ -655,7 +656,7 @@ subroutine update_ocean_model(Ice_ocean_boundary, OS, Ocean_sfc, time_start_upda

! Translate state into Ocean.
! call convert_state_to_ocean_type(OS%sfc_state, Ocean_sfc, OS%grid, OS%US, &
! Ice_ocean_boundary%p, OS%press_to_z)
! OS%fluxes%p_surf_full, OS%press_to_z)
call convert_state_to_ocean_type(OS%sfc_state, Ocean_sfc, OS%grid, OS%US)
Time1 = OS%Time ; if (do_dyn) Time1 = OS%Time_dyn
call coupler_type_send_data(Ocean_sfc%fields, Time1)
Expand Down Expand Up @@ -766,7 +767,7 @@ subroutine initialize_ocean_public_type(input_domain, Ocean_sfc, diag, gas_field
!! tracer fluxes.

integer :: xsz, ysz, layout(2)
! ice-ocean-boundary fields are always allocated using absolute indicies
! ice-ocean-boundary fields are always allocated using absolute indices
! and have no halos.
integer :: isc, iec, jsc, jec

Expand Down Expand Up @@ -806,7 +807,7 @@ end subroutine initialize_ocean_public_type
!! surface state variable. This may eventually be folded into the MOM
!! code that calculates the surface state in the first place.
!! Note the offset in the arrays because the ocean_data_type has no
!! halo points in its arrays and always uses absolute indicies.
!! halo points in its arrays and always uses absolute indices.
subroutine convert_state_to_ocean_type(sfc_state, Ocean_sfc, G, US, patm, press_to_z)
type(surface), intent(inout) :: sfc_state !< A structure containing fields that
!! describe the surface state of the ocean.
Expand All @@ -816,9 +817,9 @@ subroutine convert_state_to_ocean_type(sfc_state, Ocean_sfc, G, US, patm, press_
!! have their data set here.
type(ocean_grid_type), intent(inout) :: G !< The ocean's grid structure
type(unit_scale_type), intent(in) :: US !< A dimensional unit scaling type
real, optional, intent(in) :: patm(:,:) !< The pressure at the ocean surface [Pa].
real, optional, intent(in) :: press_to_z !< A conversion factor between pressure and
!! ocean depth in m, usually 1/(rho_0*g) [m Pa-1].
real, optional, intent(in) :: patm(:,:) !< The pressure at the ocean surface [R L2 T-2 ~> Pa]
real, optional, intent(in) :: press_to_z !< A conversion factor between pressure and ocean
!! depth, usually 1/(rho_0*g) [Z T2 R-1 L-2 ~> m Pa-1]
! Local variables
real :: IgR0
character(len=48) :: val_str
Expand Down Expand Up @@ -860,7 +861,7 @@ subroutine convert_state_to_ocean_type(sfc_state, Ocean_sfc, G, US, patm, press_

if (present(patm)) then
do j=jsc_bnd,jec_bnd ; do i=isc_bnd,iec_bnd
Ocean_sfc%sea_lev(i,j) = US%Z_to_m * sfc_state%sea_lev(i+i0,j+j0) + patm(i,j) * press_to_z
Ocean_sfc%sea_lev(i,j) = US%Z_to_m * (sfc_state%sea_lev(i+i0,j+j0) + patm(i,j) * press_to_z)
Ocean_sfc%area(i,j) = US%L_to_m**2 * G%areaT(i+i0,j+j0)
enddo ; enddo
else
Expand Down Expand Up @@ -946,7 +947,7 @@ end subroutine ocean_model_init_sfc

!> ocean_model_flux_init is used to initialize properties of the air-sea fluxes
!! as determined by various run-time parameters. It can be called from
!! non-ocean PEs, or PEs that have not yet been initialzed, and it can safely
!! non-ocean PEs, or PEs that have not yet been initialized, and it can safely
!! be called multiple times.
subroutine ocean_model_flux_init(OS, verbosity)
type(ocean_state_type), optional, pointer :: OS !< An optional pointer to the ocean state,
Expand Down
2 changes: 1 addition & 1 deletion config_src/drivers/mct_cap/ocn_comp_mct.F90
Original file line number Diff line number Diff line change
Expand Up @@ -722,7 +722,7 @@ subroutine ocn_domain_mct( lsize, gsMap_ocn, dom_ocn)
call mct_gGrid_importRattr(dom_ocn,"lat",data,lsize)

k = 0
L2_to_rad2 = grid%US%L_to_m**2 / grid%Rad_Earth**2
L2_to_rad2 = 1.0 / grid%Rad_Earth_L**2
do j = grid%jsc, grid%jec
do i = grid%isc, grid%iec
k = k + 1 ! Increment position within gindex
Expand Down
2 changes: 1 addition & 1 deletion config_src/drivers/nuopc_cap/mom_cap.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1112,7 +1112,7 @@ subroutine InitializeRealize(gcomp, importState, exportState, clock, rc)
k = k + 1 ! Increment position within gindex
if (mask(k) /= 0) then
mesh_areas(k) = dataPtr_mesh_areas(k)
model_areas(k) = ocean_grid%US%L_to_m**2 * ocean_grid%AreaT(i,j) / ocean_grid%Rad_Earth**2
model_areas(k) = ocean_grid%AreaT(i,j) / ocean_grid%Rad_Earth_L**2
mod2med_areacor(k) = model_areas(k) / mesh_areas(k)
med2mod_areacor(k) = mesh_areas(k) / model_areas(k)
end if
Expand Down
10 changes: 5 additions & 5 deletions config_src/drivers/solo_driver/MESO_surface_forcing.F90
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ module MESO_surface_forcing
real :: G_Earth !< The gravitational acceleration [L2 Z-1 T-2 ~> m s-2].
real :: Flux_const !< The restoring rate at the surface [Z T-1 ~> m s-1].
real :: gust_const !< A constant unresolved background gustiness
!! that contributes to ustar [Pa].
!! that contributes to ustar [R L Z T-1 ~> Pa]
real, dimension(:,:), pointer :: &
T_Restore(:,:) => NULL(), & !< The temperature to restore the SST toward [degC].
S_Restore(:,:) => NULL(), & !< The salinity to restore the sea surface salnity toward [ppt]
Expand Down Expand Up @@ -61,7 +61,7 @@ subroutine MESO_buoyancy_forcing(sfc_state, fluxes, day, dt, G, US, CS)
type(forcing), intent(inout) :: fluxes !< A structure containing thermodynamic forcing fields
type(time_type), intent(in) :: day !< The time of the fluxes
real, intent(in) :: dt !< The amount of time over which
!! the fluxes apply [s]
!! the fluxes apply [T ~> s]
type(ocean_grid_type), intent(in) :: G !< The ocean's grid structure
type(unit_scale_type), intent(in) :: US !< A dimensional unit scaling type
type(MESO_surface_forcing_CS), pointer :: CS !< A pointer to the control structure returned by
Expand Down Expand Up @@ -138,7 +138,7 @@ subroutine MESO_buoyancy_forcing(sfc_state, fluxes, day, dt, G, US, CS)
! Set whichever fluxes are to be used here. Any fluxes that
! are always zero do not need to be changed here.
do j=js,je ; do i=is,ie
! Fluxes of fresh water through the surface are in units of [kg m-2 s-1]
! Fluxes of fresh water through the surface are in units of [R Z T-1 ~> kg m-2 s-1]
! and are positive downward - i.e. evaporation should be negative.
fluxes%evap(i,j) = -0.0 * G%mask2dT(i,j)
fluxes%lprec(i,j) = CS%PmE(i,j) * CS%Rho0 * G%mask2dT(i,j)
Expand Down Expand Up @@ -215,8 +215,8 @@ subroutine MESO_surface_forcing_init(Time, G, US, param_file, diag, CS)
type(MESO_surface_forcing_CS), pointer :: CS !< A pointer that is set to point to the
!! control structure for this module

! This include declares and sets the variable "version".
#include "version_variable.h"
! This include declares and sets the variable "version".
# include "version_variable.h"
character(len=40) :: mdl = "MESO_surface_forcing" ! This module's name.

if (associated(CS)) then
Expand Down
Loading