Issues initializing sea ice biogeochemistry (z_bgc) in CICE 6.5 within CESM 2.3 alpha17f

jiaqii123

New Member
What version of the code are you using?
cesm2_3_alpha17f

Have you made any changes to files in the source tree?
no

Describe every step you took leading up to the problem:
module load cesm/2.3alpha17f_nuopc
export PROJECT=cesm2.3_nuopc
export CASE_ROOT=$HOME/cesm2.3alpha_cases/cesm2.3alpha_cases19
export OUTPUT_ROOT=$HOME/cesm2.3alpha_output/cesm2.3alpha_cases19
cd $CESM_ROOT/cime/scripts
./create_newcase --case $CASE_ROOT --compset GIAF_JRA --res TL319_g17 --driver nuopc --mach lenovo --compiler gnu --mpilib openmpi --run-unsupported
cd /share/home/cesm2.3alpha_cases/cesm2.3alpha_cases19
./xmlchange OCN_TRACER_MODULES=ecosys
./xmlchange CIME_OUTPUT_ROOT=$OUTPUT_ROOT
./xmlchange PROJECT=$PROJECT
./xmlchange JOB_QUEUE=$JOB_QUEUE
./xmlchange DOUT_S_ROOT=$OUTPUT_ROOT/archive
./xmlchange STOP_OPTION=nmonths,STOP_N=1
./xmlchange JOB_WALLCLOCK_TIME=12:00:00
./xmlchange NTASKS_ATM=10,NTASKS_CPL=10,NTASKS_OCN=220,NTASKS_ICE=10,NTASKS_LND=10,NTASKS_ROF=10,NTASKS_WAV=10,NTASKS_GLC=10,ROOTPE_OCN=20,ROOTPE_ICE=10
./case.setup
vi user_nl_cice
./case.build
./case.submit


Describe your problem or question:

Hello everyone,

I am currently trying to use CICE to couple with other components in CESM. I have a few questions regarding the initialization of the full sea ice biogeochemistry (z_bgc) in CICE 6.5.

My main questions are:

  1. How can I properly initialize sea ice biogeochemistry (z_bgc) in CESM2_3_alpha17f?
  2. Are there existing ice initial biogeochemical forcing files available for CICE 6.5?
  3. Why do some variables documented in namelist_definition_cice.xml not get recognized when set in user_nl_cice?
What I have tried:

After setting up my case, I modified user_nl_cice and set the following variables to .true. (full configuration is attached in the file):

tr_brine = .true.
restart_hbrine = .true.
z_tracers = .true.
solve_zbgc = .true.
bgc_flux_type = 'Jin2006'
restore_bgc = .true.
restart_bgc = .true.
solve_zsal = .true.
restart_zsal = .true.

The problem:

I cannot run the case successfully. The error from cesm.log is attached below:

2026-05-18 10:45:52: model execution error
ERROR: Command: 'mpirun -np 240 --tag-output .../cesm.exe >> cesm.log.$LID 2>&1' failed with error '' from dir '.../run'

2026-05-18 10:45:52: case.run error
ERROR: RUN FAIL: Command 'mpirun ...' failed
See log file for details: .../cesm.log.13480.260518-104544
Additional observation:

When I tried to set dEdd_algae = .true. in user_nl_cice, I got the following error:

ERROR: Variable 'dedd_algae' from file 'user_nl_cice' is not in the namelist definition.
However, I did find this variable listed in namelist_definition_cice.xml. This makes me wonder why it is not being recognized. The same issue also occurs for tr_bgc_nit and several other variables.

Summary of my questions:

  • What is the correct way to initialize full sea ice BGC (z_bgc) in CESM2_3_alpha17f?
  • Are there default BGC initial forcing files for CICE 6.5, and if so, where can I find them?
  • Why do some variables from namelist_definition_cice.xml (e.g., dedd_algae) cause "variable not in namelist definition" errors in user_nl_cice?
Any guidance or suggestions would be greatly appreciated. Thanks in advance!
 

Attachments

dbailey

CSEG and Liaisons
Staff member
This tag is not supported and we have never run the ZBGC in CESM. I would try starting with the standalone CICE to see if you can get the ZBGC working there.
 
Vote Upvote 0 Downvote

jiaqii123

New Member
This tag is not supported and we have never run the ZBGC in CESM. I would try starting with the standalone CICE to see if you can get the ZBGC working there.
Thank you for your reply! I was able to successfully initialize z_bgc in standalone CICE. However, when I tried to do the same in CESM (setting 'tr_brine', 'z_tracers', 'solve_zbgc', and 'tr_bgc_Nit' to true in 'user_nl_cice'), I encountered the following error:

ERROR: Variable 'tr_bgc_nit' from file 'user_nl_cice' is not in the namelist definition.

I have verified that 'tr_bgc_Nit' does exist in '/components/cice/cime_config/namelist_definition_cice.xml'. This suggests the issue may not be with CICE itself, but rather with how CIME reads or validates the namelist.

I noticed that standalone CICE directly uses 'ice_in', whereas CICE in CESM relies on additional files to read user-modified variables from 'user_nl_cice' and generate the namelist, including:
/components/cice/cime_config/buildnml
/components/cice/cime_config/namelist_definition_cice.xml
/cime/CIME/nmlgen.py

I have confirmed that 'nmlgen.py' does not skip any groups. I also tried copying the default 'namelist_definition_cice.xml' to 'SourceMods/src.cice', but the problem persists.

Could you please offer some suggestions on how to resolve this? Thank you again for your help!
 
Vote Upvote 0 Downvote
Back
Top