Hi, I am new to CESM and I am planning a Last Glacial Maximum experiment to test the effects of iron from aeolian dust on the marine ecosystem. However, I have run into some problems while testing the model configuration.
What version of the code are you using?
CESM version 2.2.0 with G1850ECO compset and f09_g17 resolution.
Describe every step you took leading up to the problem:
user_nl_cice:
It seems like that the tracers DIC, TA, and Salinity are going very wrong and the MARBL module crashes.
My solution:
1. Increasing the dt_count (It doesn't work);
user_nl_pop:
user_nl_marbl:
user_nl_drof:
So, my question is:
What version of the code are you using?
CESM version 2.2.0 with G1850ECO compset and f09_g17 resolution.
--res f09_g17 --compset G1850ECO
Describe every step you took leading up to the problem:
- Set up run type as and atmospheric CO2.
./xmlchange RUN_TYPE=startup,GET_REFCASE=FALSE
./xmlchange CCSM_CO2_PPMV=190.0
./xmlchange NTASKS_OCN=144,ROOTPE_OCN=64
- Set up land sea distribution due to the lowered sea level at the LGM according the tutorial at the 2024 paleoCAMP.
./xmlchange ATM_DOMAIN_PATH=/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files
./xmlchange LND_DOMAIN_PATH=/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files
./xmlchange OCN_DOMAIN_PATH=/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files
./xmlchange ICE_DOMAIN_PATH=/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files
./xmlchange ATM_DOMAIN_FILE=domain.lnd.fv09_gx1v7_21ka.200623.nc
./xmlchange LND_DOMAIN_FILE=domain.lnd.fv09_gx1v7_21ka.200623.nc
./xmlchange OCN_DOMAIN_FILE=domain.ocn.fv09_gx1v7_21ka.200623.nc
./xmlchange ICE_DOMAIN_FILE=domain.ocn.fv09_gx1v7_21ka.200623.nc
./xmlchange ATM2OCN_FMAPNAME=/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files/map_fv09_TO_gx1v7_21ka_aave.200623.nc
./xmlchange ATM2OCN_SMAPNAME=/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files/map_fv09_TO_gx1v7_21ka_blin.200623.nc
./xmlchange ATM2OCN_VMAPNAME=/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files/map_fv09_TO_gx1v7_21ka_patc.200623.nc
./xmlchange OCN2ATM_FMAPNAME=/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files/map_gx1v7_21ka_TO_fv09_aave.200623.nc
./xmlchange OCN2ATM_SMAPNAME=/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files/map_gx1v7_21ka_TO_fv09_aave.200623.nc
./xmlchange ROF2OCN_FMAPNAME=/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files/map_r05_nomask_TO_gx1v7_21ka_aave.200623.nc
./xmlchange ROF2OCN_LIQ_RMAPNAME=/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files/map_r05_TO_gx1v7_21ka_merged_200623.nc
./xmlchange ROF2OCN_ICE_RMAPNAME=/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files/map_r05_TO_gx1v7_21ka_nnsm_200623.nc
- Set up namelist changes.
user_nl_pop:orb_iyear = -19050
orb_mode = 'fixed_year'
The initial condition is the history output from a previous experiment and was downloaded from Globus. And i have changed the variable names for potential temperature and salinity as TEMPERATURE and SALINITY respectively according to the other thread Using history files as initial conditions in cesm1.topography_file = '/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files/topography_21ka_200623.ieeei4'
region_mask_file = '/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files/region_mask_21ka_200623.ieeei4'
ebm_param_option = 'internal'
init_ts_file = '/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/rest/b.e12.B1850C5.f19_g16.i21ka.03.pop.h.0801-0900.climo.nc'
init_ts_file_fmt = 'nc'
init_ts_option = 'file'
init_iage_init_file = '/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/rest/b.e12.B1850C5.f19_g16.i21ka.03.pop.h.0801-0900.climo.nc'
init_iage_init_file_fmt = 'nc'
init_iage_option = 'file'
overflows_restfile = '$casename.pop.ro'
user_nl_cice:
user_drof.streams.txt.rof.diatren_ann_rx1:kmt_file = '/work/home/dhszh/CESM2-release-2.2.0/inputdata/lgm/boundary_condition_files/topography_21ka_200623.ieeei4'
ice_ic = 'default'
The modern runoff data 'runoff.daitren.annual.20190226.nc ' has been regrided according to the ROF2OCN mapping files.
- Keep the restoring files as the modern ocean:
restore_data_filenames = '/work/home/dhszh/CESM2-release-2.2.0/inputdata/ocn/pop/gx1v6/forcing/ecosys_restore_POP_gx1v6_20170113.nc'
restore_inv_tau_input%filename = '/work/home/dhszh/CESM2-release-2.2.0/inputdata/ocn/pop/gx1v6/forcing/ecosys_restore_inv_tau_POP_gx1v6_20170125.nc'
- Keep the modern riverine nutrient inputs:
riv_flux_shr_stream_file = '/inputdata/ocn/pop/gx1v7/forcing/riv_nut.gnews_gnm.rx1_to_gx1v7_nn_open_ocean_nnsm_e1000r300_marginal_sea_170413.20190602.nc'
- Keep the modern ecosystem initial conditions:
Describe your problem or question:init_ecosys_init_file = '/work/home/dhszh/CESM2-release-2.2.0/inputdata/ocn/pop/gx1v6/ic/ecosys_jan_IC_omip_POP_gx1v7_c200323.nc'
It seems like that the tracers DIC, TA, and Salinity are going very wrong and the MARBL module crashes.
(Task 11, block 1) Message from (lon, lat) ( 316.063, -74.947), which is global (i,j) (317, 9). Level: 2
(Task 11, block 1) MARBL WARNING (marbl_co2calc_mod:drtsafe): (marbl_co2calc_mod:drtsafe) it = 3
(Task 11, block 1) MARBL WARNING (marbl_co2calc_mod:drtsafe): (marbl_co2calc_mod:drtsafe) x1,f = 0.6634890E-009-0.2279325E-001
(Task 11, block 1) MARBL WARNING (marbl_co2calc_mod:drtsafe): (marbl_co2calc_mod:drtsafe) x2,f = 0.2641397E-007-0.2280033E-001
(Task 11, block 1) MARBL WARNING (marbl_co2calc_mod:drtsafe): (marbl_co2calc_mod:drtsafe) it = 4
(Task 11, block 1) MARBL WARNING (marbl_co2calc_mod:drtsafe): (marbl_co2calc_mod:drtsafe) x1,f = 0.1051559E-009-0.2276270E-001
(Task 11, block 1) MARBL WARNING (marbl_co2calc_mod:drtsafe): (marbl_co2calc_mod:drtsafe) x2,f = 0.1666609E-006-0.2280063E-001
(Task 11, block 1) MARBL ERROR (marbl_co2calc_mod:drtsafe): bounding bracket for pH solution not found
(Task 11, block 1) MARBL ERROR (marbl_co2calc_mod:drtsafe): (marbl_co2calc_mod:drtsafe) dic = 0.2025425E+005
(Task 11, block 1) MARBL ERROR (marbl_co2calc_mod:drtsafe): (marbl_co2calc_mod:drtsafe) ta = 0.2339330E+005
(Task 11, block 1) MARBL ERROR (marbl_co2calc_mod:drtsafe): (marbl_co2calc_mod:drtsafe) pt = 0.1716070E+001
(Task 11, block 1) MARBL ERROR (marbl_co2calc_mod:drtsafe): (marbl_co2calc_mod:drtsafe) sit = 0.5994380E+002
(Task 11, block 1) MARBL ERROR (marbl_co2calc_mod:drtsafe): (marbl_co2calc_mod:drtsafe) temp = -0.1698629E+001
(Task 11, block 1) MARBL ERROR (marbl_co2calc_mod:drtsafe): (marbl_co2calc_mod:drtsafe) salt = 0.3549355E+003
(Task 11, block 1) MARBL ERROR (marbl_co2calc_mod:comp_htotal): Error reported from drtsafe
(Task 11, block 1) MARBL ERROR (marbl_co2calc_mod:marbl_co2calc_interior): Error reported from comp_htotal()
(Task 11, block 1) MARBL ERROR (marbl_interior_tendency_mod:compute_carbonate_chemistry): Error reported from marbl_co2calc_interior() with dic
(Task 11, block 1) MARBL ERROR (marbl_interior_tendency_mod:marbl_interior_tendency_compute): Error reported from compute_carbonate_chemistry()
(Task 11, block 1) MARBL ERROR (marbl_interface:interior_tendency_compute): Error reported from marbl_interior_tendency_compute()
(Task 11, block 1) MARBL ERROR (ecosys_driver:ecosys_driver_set_interior): Error reported from marbl_instances(1)%set_interior_forcing()
ERROR reported from MARBL library
------------------------------------------------------------------------
POP aborting...
Stopping in ecosys_driver:print_marbl_log
My solution:
1. Increasing the dt_count (It doesn't work);
user_nl_pop:
2. Unenabled tracer restoring (It doesn't work);dt_count=72
user_nl_marbl:
3. Turns off the runoff input (It does work,the model has been running successfully for a year).tracer_restore_vars(1) = ""
tracer_restore_vars(2) = ""
tracer_restore_vars(3) = ""
tracer_restore_vars(4) = ""
tracer_restore_vars(5) = ""
user_nl_drof:
datamode = "NULL"
So, my question is:
- Would turning off the runoff have a significant impact on the model results?
- Should I set the burial coefficient to zero when i turn off the runoff? (Just like this thread). However, it seems that the riverine nutrients are provided by a separate file.
riv_flux_shr_stream_file = '/inputdata/ocn/pop/gx1v7/forcing/riv_nut.gnews_gnm.rx1_to_gx1v7_nn_open_ocean_nnsm_e1000r300_marginal_sea_170413.20190602.nc'
- How can I appropriately set the burial coefficient to zero?
! general parameters (bury coeffs)
POM_bury_frac_max = 0.8
PON_bury_coeff = 0.5
bSi_bury_frac_max = 1.0
parm_init_POC_bury_coeff = 1.1
parm_init_POP_bury_coeff = 1.1
parm_init_bSi_bury_coeff = 1.0