1. 程式人生 > >地球氣候系統模式cesm的基本執行流程

地球氣候系統模式cesm的基本執行流程

最近在向師兄學習氣候模式CESM (Community Earth System Model),然而師兄似乎很忙的樣子,於是只能自己看CESM官網的使用者手冊學習:http://www.cesm.ucar.edu/models/cesm1.2/cesm/doc/usersguide/book1.html

在將使用者手冊差不多遊覽完後,並結合師兄的cesm模式課後,將cesm基本的執行流程歸納如下:

1、source  ~/.bashrc_cesm,配置CESM的執行環境

2、create_newcase -case $CASENAME -compset $COMPSET -res $RES -mach sigon ,

建立案例資料夾

3、若要修改各模組執行的以下引數(ntasks,nthrds,rootpe,ninst),可修改env_mach_pes.xml。修改方法有兩種,一直接用vi修改該檔案,二用命令./xmlchangeNTASKS = $NTASKS。然後./cesm.setup。 若setup後又對上述引數進行了更改,則需先./cesm_setup –clean,後再./cesm_setup。

4、可修改原始碼(如加nudg,修改後的程式碼放在Sourcemod相應模組下),也可修改env_build.xml,可修改專案有EXEROOT,CALENDAR( NO_LEAP ), 然後./$CASENAME.build,

若build以後又有修改程式碼,可以直接build,不需要clean build。

5、修改env_run.xml (修改專案有RUNDIR,RUNTYPE(hybrid,branch,startup),STOP_OPTION,STOP_N, REST_OPTION, REST_N, RESUBMIT, DIN_LOC_ROOT, DIN_LOC_ROOT_CLMFORC,也可設定short term archivingand long term archiving,也可修改SST等強迫的檔案路徑), 接著可通過修改user_nl_xxx檔案來修改輸入模式中的一些常量如CO2濃度、太陽輻射,也可設定輸出資料的頻率和型別(至於是否修改成功可通過執行preview_namelists來檢視,可修改的常量在CaseDocs/xxx_in),然後./$CASENAME.run

來提交作業,該命令實際會通過執行run.pbs(該檔案最後主要是通過mpirun執行EXEROOT下面的cesm.exe)來提交作業至集群系統中的多個節點。

可以在一開始的時候利用xmlchange命令修改所有xml檔案內容,然後再setupbuildrun

Branch,需要設定RUN_REFCASE和RUN_REFDATE, 機制同restart run(當CONTINUE_RUN是TRUE時),當兩個case之間的各種引數都一樣時,他們跑出來的資料也是一模一樣的。常用於敏感性實驗。

Hybrid同startup,但他的初始化資料來自以往跑的一個算例的restart資料,有點類似branch但該設定的約束較少。也需要設定RUN_REFCASE和RUN_REFDATE ,當其各種引數設定同reference case時,其氣候態資料也同reference case,但每一天的資料不一定一樣。