ecFlow workflow¶
修改 ecf_kill, ecf_status 和 ecf_submit¶
ecflow 使用 ${ROOT_DIR}/workflow 下的 ecf_kill, ecf_status 和 ecf_submit 进行作业的中止,查询和提交,所以需要用户根据所使用的HPC上的作业管理系统做出相应的修改。尤其是 hostname, 需要和 ECF_HOST 一致。
修改 head.h¶
在 ${ROOT_DIR}/workflow/include/head.h 中定义了一些全局变量,用户可以根据需要进行修改,例如:
# Tell ecFlow we have started
export NCARG_ROOT=/cma/u/app/ncl-6.1.2
# For ecflow
export PATH=%ROOT_DIR%/ecflow/sharelib/bin:$PATH
export LIBPATH=${NCARG_ROOT}/lib:/opt/freeware/lib64:/cma/u/app/lib::/cma/u/app/netcdf/lib:/cma/u/app/udunits/lib:/sya/u/gongying/LongRun/sharelib
# Common area
export jobid=$job_name.$$
export SENDDBN=NO
export KEEPDATA=NO
export ROOT_DIR=%ROOT_DIR%
export GESROOT=%ROOT_DIR%/nwges
export NWROOT=%ROOT_DIR%/nwprod
export WGRIB2=$NWROOT/grib_util.v1.1.1/exec/wgrib2
export CRTMDIR=%ROOT_DIR%/nwprod/rap.v4.0.12/sorc/UPPV4.0.1/src/lib/crtm2/src/fix
export NDATE=$NWROOT/prod_util.v1.1.3/ush/ndate
export PATH=$NWROOT/prod_util.v1.1.3/ush:$PATH
# RAP
export COMGFS=%ROOT_DIR%/com/gfs/prod
export COMINgfs=$COMGFS
export COMROOTp1=$GESROOT
# HRRR
export dom=conus
export COMROOT=%ROOT_DIR%/com
export COMRAP=%ROOT_DIR%/com/rap/prod
export DATAROOT=%ROOT_DIR%/tmpnwprd1
export utilscript=%ROOT_DIR%/nwprod/util/ush
export jlogfile=%ROOT_DIR%/com/logs/jlogfiles/jlogfile.${jobid}
export FIXcrtm_post=${CRTMDIR}
RAP作业集的生成¶
以下是如何产生RAP的作业集供ecFlow调用:
> cd ${ROOT_DIR}/workflow
> rm -fr sy_nwp_rap_v2020.def
> ./sy_nwp_rap_v2020.py
其产生的 sy_nwp_rap_v2020.def 为整个作业集的 ecFlow 描述
加载作业集¶
> ecflow_client --load=sy_nwp_rap_v2020.def
> ecflow_client --suites
sy_nwp_rap_v2020
加载后打开 ecflow_ui , 界面类似如下:
重新更换已有的作业集¶
> ecflow_client --suites
sy_nwp_rap_v2020
> ecflow_client --replace=/sy_nwp_rap sy_nwp_rap_v201908.def false force