From b681ff9b23a046ce36d31060d6fe9cfcb58f7e34 Mon Sep 17 00:00:00 2001 From: Nicole Jeffery Date: Tue, 14 Aug 2018 13:13:15 -0600 Subject: [PATCH] Corrects icepack initialization for bgc. Adds missing namelist fields. Also added gx1 tests for zbgc (bgc,bgcgx1) and skl (bgcskl,sklgx1) Required nutrient forcing filenames are hard coded (nitrate_climatologyWOA_gx1v6f.nc and silicate_climatologyWOA_gx1v6f.nc) Namelist field bgc_data_dir needs to be properly specified. Note *gx1 zbgc test is really slow and fails on wolf* --- cicecore/shared/ice_init_column.F90 | 7 ++-- configuration/scripts/options/set_env.bgc | 2 +- configuration/scripts/options/set_env.bgcskl | 35 ++++++++++++++++++++ configuration/scripts/options/set_nml.bgcgx1 | 21 ++++++++++++ configuration/scripts/options/set_nml.sklgx1 | 19 +++++++++++ 5 files changed, 81 insertions(+), 3 deletions(-) create mode 100644 configuration/scripts/options/set_env.bgcskl create mode 100644 configuration/scripts/options/set_nml.bgcgx1 create mode 100644 configuration/scripts/options/set_nml.sklgx1 diff --git a/cicecore/shared/ice_init_column.F90 b/cicecore/shared/ice_init_column.F90 index 5418661d9..51003ab68 100644 --- a/cicecore/shared/ice_init_column.F90 +++ b/cicecore/shared/ice_init_column.F90 @@ -1761,7 +1761,7 @@ subroutine init_zbgc F_abs_chl(3) = F_abs_chl_phaeo R_Fe2DON(1) = ratio_Fe2DON - R_C2N(1) = ratio_C2N_proteins + R_C2N_DON(1) = ratio_C2N_proteins R_Fe2DOC(1) = ratio_Fe2DOC_s R_Fe2DOC(2) = ratio_Fe2DOC_l @@ -1861,7 +1861,10 @@ subroutine init_zbgc dustFe_sol_in=dustFe_sol, T_max_in=T_max, fr_mort2min_in=fr_mort2min, fr_dFe_in=fr_dFe, & op_dep_min_in=op_dep_min, fr_graze_s_in=fr_graze_s, fr_graze_e_in=fr_graze_e, & k_nitrif_in=k_nitrif, t_iron_conv_in=t_iron_conv, max_loss_in=max_loss, max_dfe_doc1_in=max_dfe_doc1, & - fr_resp_s_in=fr_resp_s, y_sk_DMS_in=y_sk_DMS, t_sk_conv_in=t_sk_conv, t_sk_ox_in=t_sk_ox) + fr_resp_s_in=fr_resp_s, y_sk_DMS_in=y_sk_DMS, t_sk_conv_in=t_sk_conv, t_sk_ox_in=t_sk_ox, & + mu_max_in=mu_max, R_Si2N_in=R_Si2N, R_C2N_DON_in=R_C2N_DON, chlabs_in=chlabs, & + alpha2max_low_in=alpha2max_low, beta2max_in=beta2max, grow_Tdep_in=grow_Tdep, & + fr_graze_in=fr_graze, mort_pre_in=mort_pre) call icepack_warnings_flush(nu_diag) if (icepack_warnings_aborted()) call abort_ice(error_message=subname, & file=__FILE__, line=__LINE__) diff --git a/configuration/scripts/options/set_env.bgc b/configuration/scripts/options/set_env.bgc index 4753be16e..1c14a7e3b 100644 --- a/configuration/scripts/options/set_env.bgc +++ b/configuration/scripts/options/set_env.bgc @@ -19,7 +19,7 @@ setenv TRBGCS 0 # set to 1 for skeletal layer tracers setenv TRBGCZ 1 # set to 1 for zbgc tracers # (needs TRBGCS = 0 and TRBRI = 1) setenv NBGCLYR 7 # number of zbgc layers -setenv TRZAERO 0 # number of z aerosol tracers +setenv TRZAERO 3 # number of z aerosol tracers # (up to max_aero = 6) setenv TRALG 3 # number of algal tracers # (up to max_algae = 3) diff --git a/configuration/scripts/options/set_env.bgcskl b/configuration/scripts/options/set_env.bgcskl new file mode 100644 index 000000000..1b1069862 --- /dev/null +++ b/configuration/scripts/options/set_env.bgcskl @@ -0,0 +1,35 @@ +### Layers +setenv NICELYR 7 # number of vertical layers in the ice +setenv NSNWLYR 1 # number of vertical layers in the snow +setenv NICECAT 5 # number of ice thickness categories + +### Tracers # match icepack_in tracer_nml to conserve memory +setenv TRAGE 1 # set to 1 for ice age tracer +setenv TRFY 1 # set to 1 for first-year ice area tracer +setenv TRLVL 1 # set to 1 for level and deformed ice tracers +setenv TRPND 1 # set to 1 for melt pond tracers +setenv NTRAERO 0 # number of aerosol tracers + # (up to max_aero in ice_domain_size.F90) + # CESM uses 3 aerosol tracers +setenv TRBRI 1 # set to 1 for brine height tracer +setenv TRZS 0 # set to 1 for zsalinity tracer + # (needs TRBRI = 1) +setenv TRBGCS 1 # set to 1 for skeletal layer tracers + # (needs TRBGCZ = 0) +setenv TRBGCZ 0 # set to 1 for zbgc tracers + # (needs TRBGCS = 0 and TRBRI = 1) +setenv NBGCLYR 1 # number of zbgc layers +setenv TRZAERO 0 # number of z aerosol tracers + # (up to max_aero = 6) +setenv TRALG 3 # number of algal tracers + # (up to max_algae = 3) +setenv TRDOC 2 # number of dissolve organic carbon + # (up to max_doc = 3) +setenv TRDIC 0 # number of dissolve inorganic carbon + # (up to max_dic = 1) +setenv TRDON 1 # number of dissolve organic nitrogen + # (up to max_don = 1) +setenv TRFEP 1 # number of particulate iron tracers + # (up to max_fe = 2) +setenv TRFED 1 # number of dissolved iron tracers + # (up to max_fe = 2) \ No newline at end of file diff --git a/configuration/scripts/options/set_nml.bgcgx1 b/configuration/scripts/options/set_nml.bgcgx1 new file mode 100644 index 000000000..c829a6e03 --- /dev/null +++ b/configuration/scripts/options/set_nml.bgcgx1 @@ -0,0 +1,21 @@ +year_init = 2005 +istep0 = 0 +npt = 168 +ice_ic = 'none' +tr_brine = .true. +tr_zaero = .true. +z_tracers = .true. +solve_zbgc = .true. +scale_bgc = .true. +bgc_data_dir = '/turquoise/usr/projects/climate/njeffery/DATA/gx1/nutrients/' +sil_data_type = 'clim' +nit_data_type = 'clim' +tr_bgc_Nit = .true. +tr_bgc_C = .true. +tr_bgc_Am = .true. +tr_bgc_Sil = .true. +tr_bgc_DMS = .true. +tr_bgc_PON = .true. +tr_bgc_hum = .true. +tr_bgc_DON = .true. +tr_bgc_Fe = .true. diff --git a/configuration/scripts/options/set_nml.sklgx1 b/configuration/scripts/options/set_nml.sklgx1 new file mode 100644 index 000000000..4b66c02d2 --- /dev/null +++ b/configuration/scripts/options/set_nml.sklgx1 @@ -0,0 +1,19 @@ +year_init = 2005 +istep0 = 0 +npt = 168 +ice_ic = 'none' +tr_brine = .true. +skl_bgc = .true. +bgc_flux_type = 'Jin2006' +bgc_data_dir = '/turquoise/usr/projects/climate/njeffery/DATA/gx1/nutrients/' +sil_data_type = 'clim' +nit_data_type = 'clim' +tr_bgc_Nit = .true. +tr_bgc_C = .true. +tr_bgc_Am = .true. +tr_bgc_Sil = .true. +tr_bgc_DMS = .true. +tr_bgc_PON = .true. +tr_bgc_hum = .true. +tr_bgc_DON = .true. +tr_bgc_Fe = .true. \ No newline at end of file