Sequential CCSM utilizing MCT
The goal of this project is to develop a sequential CCSM that has all the functionality of the current concurrent CCSM and produces the same climate (and bfb answers in some scenarios)
!! Current Task List
Stand-alone cam functionality
- get drvord_cam3_3_43 onto cam trunk (cam3_4_01) (Mat) DONE
(This puts in the capability into the stand-alone cam code to have the ocn components run after cam - all components still couple on the same time step)- make sure that sstcyc and icecyc are consistent in build-namelist
- will need to create a new clm trunk tag with the relevant changes migrated into the clm trunk (will need to make sure that clm offline and ccsm mode are not effected)
- start from mods in bangkok:~mvertens/src/cam/drvord_cam3_3_43 and create a new branch from cam3_4_01 using cam/clm hourly coupling (Mariana)
- move call to ocn/atm/ flux calculation to be consistent with cpl6 (Mariana)
- make the ocn time lagged in this version (Mariana)
- modify cam branch test so that branch runs do not need history restart files (Mat)
- dom/som simulations with this branch (Mat)
- get cice4 into stand-alone cam code (Mariana)
- put support into build-namelist and configure to support using cice4 in prescribed mode only (som mode will need to have regridding implemented in sequential driver) (Erik)
- put ccsm long term archiving functionality into cam code and remove current run-time archiving funcitonality (use prototype implementation in clm (below) (Mat)
- put in functionality into cam dom/som/csim to read in land fraction directly from its own namelists (Mariana)
- move bndtvs namelist to dom/som/csim and make sure that build-namelist sets them consistently (Mariana, Erik)
- add frzmlt and rho to output state in cam dom (Mariana)
- put in aqua_planet as separate module (independent of dom) (Mariana)
Stand-alone clm functionality
- put datm7 parallel functinality into seqflxave_clm3_expa_90 (Mariana, Brian K.)
- do performance analysis of this sequential system to determine scalability relative to cpl6 for the same resolution and clm configuration (Tony)
- put ccsm long term archiving functionality into cam code and remove current run-time archiving funcitonality (Tony)
- do the same archiving for clm (Erik)
- update namelist/build generation for seqflxave_clm3_expa_90 so that cases are created easily and tests can run using the new datm7, sequential driver code (Erik)
Sequential driver (and sequential dead7 models)
- put in regridding (Rob) DONE
- add NP fix from Tony (Rob)
- add ability to input aream to domain (Rob)
- add check of aream to seq_domain_mct (Rob)
- put in area correction factors in sequential driver (Rob)
Code clean-up
- Merge seq_mct_mod and cpl_mct_mod into shr_mct_mod (Rob) - <del>create shr_scrip_mod for shared reading of Scrip files.</del> Put shared reading routine in mct_mod. Use Tony's latest low-memory read. (Rob) <font color=red>DONE
Data models - create parallel versions of all data components (Brian K)
- create sequential interface of all parallel components to sequential driver (Mariana)
- put in capability into cpl6 for all components to run on same grid (to compare to stand-alone cam sequential implementation) (Brian K)
- put in parallel io into datm7 (needed for bgc spin-up) (Tony)
!! Sequential CCSM-dead User's Guide
- Check out code: svn co $SVNREPO/dead7/trunk dead7_wc
- Make a build and run directory
- execute ~dead7_wc/bld/configure from the build directory.
- type "make"
- copy the executable to your in run directory.
- copy all the _in files from dead7_wc/bld to your run directory
- Run the model.
For different resolutions
7. copy the dead7_wc/bld/seq_maps.rc file to your run directory.
8. edit the _in files to change the resolution of the ocean/ice or atm/lnd.
9. edit seq_maps.rc to point to the correct mapping files (example is for a T31_gxv3 case)
10. Run the model.