# definition of the gfs_mos suite
suite gfs_mos
  edit ECF_PORT           '34159'
  edit gfs_mos_ver        'v5.3.0'
  edit ENVIR              'dev'
  edit MACHINE_SITE       'development'
  edit ECF_ROOT           '/lfs/h1/mdl/mos/noscrub/mdl.mos/ecFlow'
  edit ECF_INCLUDE        '/lfs/h1/mdl/mos/noscrub/mdl.mos/ecFlow/include'
  edit DATAROOT           '/lfs/h1/mdl/stmp/mdl.mos/qprod'
  edit COM                '/lfs/h1/mdl/ptmp/mdl.mos/qprod'
  edit COMROOT            '/lfs/h1/mdl/ptmp/mdl.mos/qprod'
  family v5.3
    defstatus complete
    edit PACKAGE_ROOT     '/lfs/h1/mdl/mos/noscrub/mdl.mos/mos-oper'
    edit PACKAGE_HOME     '/lfs/h1/mdl/mos/noscrub/mdl.mos/mos-oper/gfs_mos/branches/dev2021-wcoss2'
    edit PACKAGEHOME      '/lfs/h1/mdl/mos/noscrub/mdl.mos/mos-oper/gfs_mos/branches/dev2021-wcoss2'
    edit HOMEmdl          '%PACKAGE_HOME%'
    edit HOMEcode         '%PACKAGE_HOME%'
    edit MACHINE          'p3-dev'
    edit QUEUE            'dev'
    edit KEEPDATA         'NO'
    edit ECF_FILES        '%PACKAGE_HOME%/ecf'
    edit ECF_SCRIPT       '%PACKAGE_HOME%/ecf'
    edit PROJ             'MOS'
    edit PROJENVIR        'DEV'
    edit COMROOT          '/lfs/h1/mdl/ptmp/mdl.mos/qprod'
    edit CWD              '/lfs/h1/mdl/stmp/mdl.mos/qprod'
    edit DATAROOT         '/lfs/h1/mdl/stmp/mdl.mos/qprod'
    edit OUTPUTDIR        '/lfs/h1/mdl/ptmp/mdl.mos/output/%ENVIR%/today'
    edit NTASK            '1'
    edit PTILE            '1'
    edit OMP_NUM_THREADS  '1'
    edit NODES            '1'
    edit stnonly          'N'
    family 00z
      edit CYC '00'
      cron 04:00
      family datachk
        task datachk_short
        task datachk_ext
        task datachk_ext1deg
      endfamily
      task jgfs_mos_stn_prep
        trigger datachk/datachk_short == complete
        edit PTILE '3'
        edit NTASK '3'
      task jgfs_mos_grd_prep
        trigger datachk/datachk_short == complete
        edit PTILE '4'
        edit NTASK '4'
      task jgfs_mos_stn_fcst
        trigger jgfs_mos_stn_prep == complete      
        edit PTILE '5'
        edit NTASK '5'
      task jgfs_mos_grd_fcst
        trigger jgfs_mos_stn_prep == complete and jgfs_mos_grd_prep == complete
        edit PTILE '7'
        edit NTASK '7'
      task jgfs_mos_stn_prdgen
        trigger jgfs_mos_stn_fcst == complete
      task jgfs_mos_grd_prdgen
        trigger jgfs_mos_grd_fcst == complete and jgfs_mos_stn_prdgen == complete
        edit PTILE '18'
        edit NTASK '18'
        edit OMP_NUM_THREADS  '4'
      task jgfs_mos_wx_prdgen
        trigger jgfs_mos_grd_prdgen == complete
        edit PTILE '2'
        edit NTASK '2'
        edit OMP_NUM_THREADS '2'
      task jgfs_mos_ext_stn_prep
        trigger datachk/datachk_ext == complete and datachk/datachk_ext1deg == complete
        edit PTILE '2'
        edit NTASK '2'
      task jgfs_mos_ext_grd_prep
        trigger datachk/datachk_ext == complete and datachk/datachk_ext1deg == complete
        edit PTILE '7'
        edit NTASK '7'
      task jgfs_mos_ext_stn_fcst
        trigger jgfs_mos_ext_stn_prep == complete and jgfs_mos_stn_prdgen == complete
        edit PTILE '3'
        edit NTASK '3'
      task jgfs_mos_ext_grd_fcst
        trigger jgfs_mos_ext_stn_prep == complete and jgfs_mos_ext_grd_prep == complete and jgfs_mos_grd_fcst == complete
        edit PTILE '7'
        edit NTASK '7'
      task jgfs_mos_ext_stn_prdgen
        trigger jgfs_mos_ext_stn_fcst == complete
      task jgfs_mos_ext_grd_prdgen
        trigger jgfs_mos_ext_grd_fcst == complete and jgfs_mos_grd_prdgen == complete and jgfs_mos_ext_stn_prdgen == complete
        edit NODES '3'
        edit PTILE '6'
        edit NTASK '17'
        edit OMP_NUM_THREADS '16'
      task jgfs_mos_wx_ext_prdgen
        trigger jgfs_mos_ext_grd_prdgen == complete and jgfs_mos_wx_prdgen == complete
        edit PTILE '2'
        edit NTASK '2'
        edit OMP_NUM_THREADS '2'
    endfamily
    family 06z
      edit CYC '06'
      cron 10:00
      family datachk
        task datachk_short
        task datachk_ext
        task datachk_ext1deg
      endfamily
      task jgfs_mos_stn_prep
        trigger datachk/datachk_short == complete
        edit PTILE '3'
        edit NTASK '3'
      task jgfs_mos_stn_fcst
        trigger jgfs_mos_stn_prep == complete
        edit PTILE '4'
        edit NTASK '4'
      task jgfs_mos_stn_prdgen
        trigger jgfs_mos_stn_fcst == complete
      task jgfs_mos_ext_stn_prep
        trigger datachk/datachk_ext == complete and datachk/datachk_ext1deg == complete
        edit PTILE '2'
        edit NTASK '2'
      task jgfs_mos_ext_stn_fcst
        trigger jgfs_mos_ext_stn_prep == complete and jgfs_mos_stn_prdgen == complete
        edit PTILE '3'
        edit NTASK '3'
      task jgfs_mos_ext_stn_prdgen
        trigger jgfs_mos_ext_stn_fcst == complete
    endfamily
    family 12z
      edit CYC '12'
      cron 16:00
      family datachk
        task datachk_short
        task datachk_ext
        task datachk_ext1deg
      endfamily
      task jgfs_mos_stn_prep
        trigger datachk/datachk_short == complete
        edit PTILE '3'
        edit NTASK '3'
      task jgfs_mos_grd_prep
        trigger datachk/datachk_short == complete
        edit PTILE '4'
        edit NTASK '4'
      task jgfs_mos_stn_fcst
        trigger jgfs_mos_stn_prep == complete
        edit PTILE '5'
        edit NTASK '5'
      task jgfs_mos_grd_fcst
        trigger jgfs_mos_stn_prep == complete and jgfs_mos_grd_prep == complete
        edit PTILE '7'
        edit NTASK '7'
      task jgfs_mos_stn_prdgen
        trigger jgfs_mos_stn_fcst == complete
      task jgfs_mos_grd_prdgen
        trigger jgfs_mos_grd_fcst == complete and jgfs_mos_stn_prdgen == complete
        edit PTILE '18'
        edit NTASK '18'
        edit OMP_NUM_THREADS  '4'
      task jgfs_mos_wx_prdgen
        trigger jgfs_mos_grd_prdgen == complete
        edit PTILE '2'
        edit NTASK '2'
        edit OMP_NUM_THREADS '2'
      task jgfs_mos_ext_stn_prep
        trigger datachk/datachk_ext == complete and datachk/datachk_ext1deg == complete
        edit PTILE '2'
        edit NTASK '2'
      task jgfs_mos_ext_grd_prep
        trigger datachk/datachk_ext == complete and datachk/datachk_ext1deg == complete
        edit PTILE '7'
        edit NTASK '7'
      task jgfs_mos_ext_stn_fcst
        trigger jgfs_mos_ext_stn_prep == complete and jgfs_mos_stn_prdgen == complete
        edit PTILE '3'
        edit NTASK '3'
      task jgfs_mos_ext_grd_fcst
        trigger jgfs_mos_ext_stn_prep == complete and jgfs_mos_ext_grd_prep == complete and jgfs_mos_grd_fcst == complete
        edit PTILE '7'
        edit NTASK '7'
      task jgfs_mos_ext_stn_prdgen
        trigger jgfs_mos_ext_stn_fcst == complete
      task jgfs_mos_ext_grd_prdgen
        trigger jgfs_mos_ext_grd_fcst == complete and jgfs_mos_grd_prdgen == complete and jgfs_mos_ext_stn_prdgen == complete
        edit NODES '3'
        edit PTILE '6'
        edit NTASK '17'
        edit OMP_NUM_THREADS '16'
      task jgfs_mos_wx_ext_prdgen
        trigger jgfs_mos_ext_grd_prdgen == complete and jgfs_mos_wx_prdgen == complete
        edit PTILE '2'
        edit NTASK '2'
        edit OMP_NUM_THREADS '2'
    endfamily
    family 18z
      edit CYC '18'
      cron 22:00
      family datachk
        task datachk_short
        task datachk_ext
        task datachk_ext1deg
      endfamily
      task jgfs_mos_stn_prep
        trigger datachk/datachk_short == complete
        edit PTILE '3'
        edit NTASK '3'
      task jgfs_mos_stn_fcst
        trigger jgfs_mos_stn_prep == complete
        edit PTILE '4'
        edit NTASK '4'
      task jgfs_mos_stn_prdgen
        trigger jgfs_mos_stn_fcst == complete
      task jgfs_mos_ext_stn_prep
        trigger datachk/datachk_ext == complete and datachk/datachk_ext1deg == complete
        edit PTILE '2'
        edit NTASK '2'
      task jgfs_mos_ext_stn_fcst
        trigger jgfs_mos_ext_stn_prep == complete and jgfs_mos_stn_prdgen == complete
        edit PTILE '3'
        edit NTASK '3'
      task jgfs_mos_ext_stn_prdgen
        trigger jgfs_mos_ext_stn_fcst == complete
    endfamily
  endfamily
endsuite
