diff --git a/interfaces/coupled_interface/source/kernel/process_o2a_kernel_mod.F90 b/interfaces/coupled_interface/source/kernel/process_o2a_kernel_mod.F90 index 64a5c6ba6..3b41dc573 100644 --- a/interfaces/coupled_interface/source/kernel/process_o2a_kernel_mod.F90 +++ b/interfaces/coupled_interface/source/kernel/process_o2a_kernel_mod.F90 @@ -134,6 +134,7 @@ subroutine process_o2a_code(nlayers, sea_surf_temp, sea_surf_temp_pert, & integer(kind=i_def) :: i real(kind=r_def) :: total_sea_ice_fraction real(kind=r_def) :: recip_sea_ice_fraction + real(kind=r_def) :: recip_gbm_melt_pond_fraction if (l_couple_ocean) then if (sea_surf_temp(map_ocn(1))>1.0_r_def) then @@ -202,6 +203,7 @@ subroutine process_o2a_code(nlayers, sea_surf_temp, sea_surf_temp_pert, & (therm_cond_sice/therm_cond_sice_snow) ! Undo sea ice fraction scaling done on ocean side of coupler + ! Melt pond thickness needs to be divided by grid box mean melt pond fraction if ( sea_ice_fraction(map_ice(1) + i) > 0.0_r_def ) then recip_sea_ice_fraction = 1.0_r_def / sea_ice_fraction(map_ice(1) + i) sea_ice_thickness(map_ice(1) + i) = sea_ice_thickness(map_ice(1) + i) & @@ -212,6 +214,15 @@ subroutine process_o2a_code(nlayers, sea_surf_temp, sea_surf_temp_pert, & * recip_sea_ice_fraction sea_ice_conductivity(map_ice(1)+i) = sea_ice_conductivity(map_ice(1)+i)& * recip_sea_ice_fraction + + if (melt_pond_fraction(map_ice(1) + i) > 0.0_r_def ) then + recip_gbm_melt_pond_fraction = 1.0_r_def / & + melt_pond_fraction(map_ice(1) + i) + melt_pond_depth(map_ice(1)+i) = melt_pond_depth(map_ice(1)+i) & + * recip_gbm_melt_pond_fraction + end if + melt_pond_fraction(map_ice(1)+i) = melt_pond_fraction(map_ice(1)+i) & + * recip_sea_ice_fraction end if ! Apply bounds to sea ice layer temperatures diff --git a/rose-stem/app/fcm_make_ocean/rose-app.conf b/rose-stem/app/fcm_make_ocean/rose-app.conf index e0868bc3a..9a3e0c32f 100644 --- a/rose-stem/app/fcm_make_ocean/rose-app.conf +++ b/rose-stem/app/fcm_make_ocean/rose-app.conf @@ -28,7 +28,7 @@ nemo_base=branches/UKMO/NEMO_4.0.4_mirror nemo_path_incl=src/OCE cfgs/SHARED src/ICE cfgs/METO_GO nemo_project_location=fcm:nemo.xm/NEMO nemo_rev=14075 -nemo_sources=branches/UKMO/NEMO_4.0.4_GOSI9_package@16897 +nemo_sources=branches/UKMO/NEMO_4.0.4_GOSI9_package@17142 nemo_version_file=nemo4.0-version.cfg netcdf_inc_path=. netcdf_lib_path=. diff --git a/rose-stem/app/lfric_coupled_nemo/rose-app.conf b/rose-stem/app/lfric_coupled_nemo/rose-app.conf index 026c5b00d..e8c082064 100644 --- a/rose-stem/app/lfric_coupled_nemo/rose-app.conf +++ b/rose-stem/app/lfric_coupled_nemo/rose-app.conf @@ -629,7 +629,7 @@ sn_snd_cond='weighted ice','yes','','','' sn_snd_crt='mixed oce-ice','no','spherical','eastward-northward','U,V' sn_snd_crtw='none','no','','','U,V' sn_snd_ifrac='none','no','','','' -sn_snd_mpnd='ice only','yes','','','' +sn_snd_mpnd='weighted ice','yes','','','' sn_snd_sstfrz='none','no','','','' sn_snd_temp='oce only','yes','','','' sn_snd_thick='weighted ice and snow','yes','','','' diff --git a/rose-stem/site/meto/kgos/lfric_coupled/ex1a/checksum_lfric_coupled_nwp_gal9-C48_ex1a_cce_fast-debug-64bit.txt b/rose-stem/site/meto/kgos/lfric_coupled/ex1a/checksum_lfric_coupled_nwp_gal9-C48_ex1a_cce_fast-debug-64bit.txt index e782c49db..c9350662e 100644 --- a/rose-stem/site/meto/kgos/lfric_coupled/ex1a/checksum_lfric_coupled_nwp_gal9-C48_ex1a_cce_fast-debug-64bit.txt +++ b/rose-stem/site/meto/kgos/lfric_coupled/ex1a/checksum_lfric_coupled_nwp_gal9-C48_ex1a_cce_fast-debug-64bit.txt @@ -1,9 +1,9 @@ -Inner product checksum rho = 411B540A101D14D3 -Inner product checksum theta = 42735B179026DDD2 -Inner product checksum u = 456F4424668465D2 -Inner product checksum mr1 = 403684A084256805 -Inner product checksum mr2 = 3F3FD0C0751D3CC1 -Inner product checksum mr3 = 3F012DD8506F6E14 -Inner product checksum mr4 = 3F3693B42B44FFA1 +Inner product checksum rho = 411B540D01244EA2 +Inner product checksum theta = 42735B1FDDE2D7A5 +Inner product checksum u = 456F41816571CCD1 +Inner product checksum mr1 = 403684FBC201727A +Inner product checksum mr2 = 3F3F886F3FCF3DBA +Inner product checksum mr3 = 3F006A5ED4A55E92 +Inner product checksum mr4 = 3F36AE3943C84DC6 Inner product checksum mr5 = 0 Inner product checksum mr6 = 0