TNO Intern

Commit 8d8fc4f9 authored by Arjo Segers's avatar Arjo Segers
Browse files

Support inquire of CrIS/NH3 portal.

parent f3334597
Loading
Loading
Loading
Loading
+1071 −0

File added.

Preview size limit exceeded, changes collapsed.

+113 −0
Original line number Diff line number Diff line
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!
!!! CSO common configuration
!!!
!!! Base settings that are used by multiple tasks:
!!! - time range(s)
!!! - target domain(s)
!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


!-----------------------------------------------------------
! id's
!-----------------------------------------------------------

! file format:
my.cso.format         :   1.0

! file format convention:
my.cso.convention     :   CF-1.7


!-----------------------------------------------------------
! domain
!-----------------------------------------------------------

!
! Used for:
! - orbit selection durning download
! - pixel selection
! - map plots
!

! region name:
my.region                       :  CAMS
! CAMS regional ensemble domain:
my.region.west                  :  -30.0
my.region.east                  :   45.0
my.region.south                 :   30.0
my.region.north                 :   76.0
! size of map figures for this region:
my.region.figsize               :   (6,6)

!! region name:
!my.region                       :  globe
!! global domain:
!my.region.west                  : -180.0
!my.region.east                  :  180.0
!my.region.south                 :  -90.0
!my.region.north                 :   90.0
!! size of map figures for this region:
!my.region.figsize               :   (8,6)


!----------------------------------------------------------
! timerange
!----------------------------------------------------------

! inquire full timerange:
my.inquire.timerange.start      :  2011-10-01 00:00
my.inquire.timerange.end        :  2026-12-31 23:59

! testing 3 days
my.timerange.start              :  2023-03-01 00:00
my.timerange.end                :  2023-03-03 23:59


!----------------------------------------------------------
! user specific settings:
!----------------------------------------------------------

! Attributes written to output files.
my.attr.author                  :  Your Name
my.attr.institution             :  CSO
my.attr.email                   :  Your.Name@cso.org

! base location for work directories:
!my.work                         :  /work/${USER}/CSO-Test-CrIS
my.work                         :  /lustre/storeB/project/fou/kl/sesam/work/users/${USER}/CSO-Test-CrIS


!----------------------------------------------------------
! job step defaults
!----------------------------------------------------------

! run jobs in foreground:
*.script.class                      :  utopya.UtopyaJobScriptForeground

! dummy value, will be defined when running in virtrual environment:
VIRTUAL_ENV                         :
! running in virutual envionment?
#if "${VIRTUAL_ENV}" > ""
! interpretor from virtual enviornment, the system path is set automatically:
*.shell                             :  ${VIRTUAL_ENV}/bin/python3
#else
! search path for python modules:
*.pypath                            :  ${CSO_PREFIX}/src:${CSO_PREFIX}/src/utopya:${CSO_PREFIX}/src/cso
#endif

! work directory for jobs; 
*.workdir                           :  ${my.work}/__NAME2PATH__

! for new job files, use jobtree settings from this file:
*.rcfile                            :  ${__filename__}



!----------------------------------------------------------
! end
!----------------------------------------------------------


config/CrIS/cso.rc

0 → 100644
+332 −0
Original line number Diff line number Diff line
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!
!!! CSO - CAMS Satellite Operator
!!!
!!! Settings for project.
!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

! dummy values for variables defined in 'cso' script,
! these will be replaced by the actual values from the environment,
! but needed for first evaluation of this file ...
CSO_PREFIX                     :  /not/defined/yet
CSO_RCFILE                     :  /not/defined/yet
CSO_RCDIR                      :  /not/defined/yet


!----------------------------------------------------------
! user specific settings:
!----------------------------------------------------------

! include user specfic settings:
#include cso-user-settings.rc



!----------------------------------------------------------
! job tree
!----------------------------------------------------------

! class to create a job tree:
cso.class                                     :  utopya.UtopyaJobTree
! top level job is virtual:
cso.virtual                                   :  True
! list of sub-elements:
!cso.elements                                  :  copy cris1-nh3 cris2-nh3
cso.elements                                  :  copy cris2-nh3


! ======================================================================
! ===
! === copy to workdir
! ===
! ======================================================================

! no sub list:
cso.copy.class                  :  utopya.UtopyaJobStep

! default class is defined in machine specific settings;
! copy is always done in foreground to avoid that files are
! changed before the job is started:
cso.copy.script.class             :  utopya.UtopyaJobScriptForeground

!! search path to utopya modules:
!cso.copy.pypath                   :  ${CSO_PREFIX}/py

! configure and build based on settings in this rcfile;
! the name of this file has been stored in the 
! environment variable 'CSO_RCFILE' by the 'cso' script:
cso.copy.task.class               :  utopya.UtopyaCopy
cso.copy.task.args                :  '${CSO_RCFILE}', rcbase='cso'


!
! * config of "UtopyaCopy"
!


! no need to remove existing build directory if present ...
cso.copy.new                       :  False

! prefix for destination of source and script files
! (base path for subdirectories src, py, etc):
cso.copy.prefix                    :  ${my.work}

! no extension to build directory need (no objects created)
cso.copy.prefix.extensions         :  

! copy will consist of following subdirs:
cso.copy.subdirs                   :  rc

! directories to be inlcuded in copy,
! otherwise only files are copied:
cso.copy.incdirs                   :  

! skip files matching these filename patterns
! (tempoary editor files, compiled modules, etc)
cso.copy.skip                      :  .#* *~ *.pyc .DS*

! list of source directories to be copied;
! here empty, only settings files will be copied:
cso.copy.dirs                      :  
! copy settings to "rc":
cso.copy.rc.dirs                   :  ${CSO_RCDIR}

! write evaluated rcfile:
cso.copy.rcwrite                   :  ${my.work}/cso.rc





! ======================================================================
! ===
! === CrIS products
! ===
! ======================================================================

#for _PRODUCT_ in cris1-nh3 cris2-nh3

! class to create a job tree:
cso._PRODUCT_.class                             :  utopya.UtopyaJobTree

!~ sub steps:
!cso._PRODUCT_.elements                          :  inquire download download-listing convert listing
!~ one by one ...
!cso._PRODUCT_.elements                          :  inquire
cso._PRODUCT_.elements                          :  convert
!cso._PRODUCT_.elements                          :  listing

! NO DOWNLOAD, do while converting ...
!cso._PRODUCT_.elements                          :  download
!cso._PRODUCT_.elements                          :  inquire download
!cso._PRODUCT_.elements                          :  download-listing

! *

! inquire tasks:
cso._PRODUCT_.inquire.tasks                      :  table-cris plot
!cso._PRODUCT_.inquire.tasks                      :  table-cris
!cso._PRODUCT_.inquire.tasks                      :  plot

! single step:
cso._PRODUCT_.inquire.class                      :  utopya.UtopyaJobStep
!~ inquire files available in CrIS archive:
cso._PRODUCT_.inquire.table-cris.class           :  cso.CSO_CrIS_Inquire
cso._PRODUCT_.inquire.table-cris.args            :  '${my.work}/rc/cso-cris-nh3.rc', \
                                                      rcbase='cso.inquire-table-cris', \
                                                      env={ 'MY_PRODUCT' : '_PRODUCT_' }
!~ create plot of available versions:
cso._PRODUCT_.inquire.plot.class                 :  cso.CSO_Inquire_Plot
cso._PRODUCT_.inquire.plot.args                  :  '${my.work}/rc/cso-cris-nh3.rc', \
                                                      rcbase='cso.inquire-plot', \
                                                      env={ 'MY_PRODUCT' : '_PRODUCT_' }

! *

! single step:
cso._PRODUCT_.convert.class                     :  utopya.UtopyaJobStep
! convert task:
cso._PRODUCT_.convert.task.class                :  cso.CSO_CrIS_Convert
cso._PRODUCT_.convert.task.args                 :  '${my.work}/rc/cso-cris-nh3.rc', \
                                                      rcbase='cso.convert', \
                                                      env={ 'MY_PRODUCT' : '_PRODUCT_' }
!! single step:
!cso._PRODUCT_.listing.class                     :  utopya.UtopyaJobStep
!! listing task:
!cso._PRODUCT_.listing.task.class                :  cso.CSO_XXX_Listing
!cso._PRODUCT_.listing.task.args                 :  '${my.work}/rc/cso-cris-nh3.rc', \
!                                                      rcbase='cso.listing', \
!                                                      env={ 'MY_PRODUCT' : '_PRODUCT_' }

#endfor
! _PRODUCT_


! ======================================================================
! ===
! === end
! ===
! ======================================================================


!! class to create a job tree:
!cso.cris2.class                                 :  utopya.UtopyaJobTree
!! list of sub-elements:
!cso.cris2.elements                              :  ${my.tracers}
!
!
!! *
!
!#for TRACER in ${my.tracers}
!
!! class to create a job tree:
!cso.cris2.TRACER.class                             :  utopya.UtopyaJobTree
!! list of sub-elements:
!!cso.cris2.TRACER.elements                          :  download convert catalogue catalogue-index \
!!                                                    sim-catalogue sim-catalogue-index
!!~ preprocessor steps one by one ...
!!cso.cris2.TRACER.elements                          :  download convert catalogue catalogue-index
!!cso.cris2.TRACER.elements                           :  convert catalogue catalogue-index
!!cso.cris2.TRACER.elements                           :  catalogue catalogue-index
!cso.cris2.TRACER.elements                           :  listing
!!cso.cris2.TRACER.elements                          :  download_CrIS
!!cso.cris2.TRACER.elements                          :  convert_cris
!!cso.cris2.TRACER.elements                          :   convert_cris gridded gridded-catalogue
!!cso.cris2.TRACER.elements                          :   gridded-catalogue
!!cso.cris2.TRACER.elements                          :  catalogue catalogue-index
!
!!
!!!~ process observation simulator output:
!!cso.cris2.TRACER.elements                          :  sim-catalogue sim-catalogue-index
!
!! *
!
!! single step:
!cso.cris2.TRACER.download.class                    :  utopya.UtopyaJobStep
!! download task:
!cso.cris2.TRACER.download.task.class               :  cso.CSO_SciHub_Download
!cso.cris2.TRACER.download.task.args                :  '${PWD}/config/CrIS2/cso-cris-TRACER.rc', \
!                                                      rcbase='cso.cris2.TRACER.download-s5phub'
!
!! single step:
!cso.cris2.TRACER.download_PAL.class                    :  utopya.UtopyaJobStep
!! download task:
!cso.cris2.TRACER.download_PAL.task.class               :  cso.CSO_PAL_Download
!cso.cris2.TRACER.download_PAL.task.args                :  '${PWD}/config/CrIS2/cso-cris-TRACER.rc', \
!                                                      rcbase='cso.cris2.TRACER.download-PAL'
!! single step:
!cso.cris2.TRACER.download_CrIS.class                    :  utopya.UtopyaJobStep
!! download task:
!cso.cris2.TRACER.download_CrIS.task.class               :  cso.CSO_CrIS_Download
!cso.cris2.TRACER.download_CrIS.task.args                :  '${PWD}/config/CrIS2/cso-cris-TRACER.rc', \
!                                                      rcbase='cso.cris2.TRACER.download-cris'
!
!! single step:
!cso.cris2.TRACER.convert.class                     :  utopya.UtopyaJobStep
!! dummy task:
!cso.cris2.TRACER.convert.task.class                :  cso.CSO_S5p_Convert
!cso.cris2.TRACER.convert.task.args                 :  '${PWD}/config/CrIS2/cso-cris-TRACER.rc', \
!                                                      rcbase='cso.cris2.TRACER.convert'
!! single step:
!cso.cris2.TRACER.convert_cris.class                     :  utopya.UtopyaJobStep
!! dummy task:
!cso.cris2.TRACER.convert_cris.task.class                :  cso.CSO_CrIS_Convert
!cso.cris2.TRACER.convert_cris.task.args                 :  '${PWD}/config/CrIS2/cso-cris-TRACER.rc', \
!                                                      rcbase='cso.cris2.TRACER.convert'
!! single step:
!cso.cris2.TRACER.catalogue.class                   :  utopya.UtopyaJobStep
!! dummy task:
!cso.cris2.TRACER.catalogue.task.class              :  cso.CSO_Catalogue
!cso.cris2.TRACER.catalogue.task.args               :  '${PWD}/config/CrIS2/cso-cris-TRACER.rc', \
!                                                      rcbase='cso.cris2.TRACER.catalogue'
!
!! single step:
!cso.cris2.TRACER.catalogue-index.class             :  utopya.UtopyaJobStep
!! dummy task:
!cso.cris2.TRACER.catalogue-index.task.class        :  utopya.Indexer
!cso.cris2.TRACER.catalogue-index.task.args         :  '${PWD}/config/CrIS2/cso-cris-TRACER.rc', \
!                                                      rcbase='cso.cris2.TRACER.catalogue-index'
!
!! single step:
!cso.cris2.TRACER.sim-catalogue.class               :  utopya.UtopyaJobStep
!! dummy task:
!cso.cris2.TRACER.sim-catalogue.task.class          :  cso.CSO_SimCatalogue
!cso.cris2.TRACER.sim-catalogue.task.args           :  '${PWD}/config/CrIS2/cso-cris-TRACER.rc', \
!                                                      rcbase='cso.cris2.TRACER.sim-catalogue'
!
!! single step:
!cso.cris2.TRACER.sim-catalogue-index.class         :  utopya.UtopyaJobStep
!! dummy task:
!cso.cris2.TRACER.sim-catalogue-index.task.class    :  utopya.Indexer
!cso.cris2.TRACER.sim-catalogue-index.task.args     :  '${PWD}/config/CrIS2/cso-cris-TRACER.rc', \
!                                                      rcbase='cso.cris2.TRACER.sim-catalogue-index'
!
!! single step:
!cso.cris2.TRACER.listing.class                     :  utopya.UtopyaJobStep
!! conversion task:
!cso.cris2.TRACER.listing.task.class                :  cso.CSO_S5p_Listing
!cso.cris2.TRACER.listing.task.args                 :  '${PWD}/config/CrIS2/cso-cris-TRACER.rc', \
!                                                   rcbase='cso.cris2.TRACER.listing'
!! single step:
!cso.cris2.TRACER.gridded-aver.class                     :  utopya.UtopyaJobStep
!! gridded average creation task:
!cso.cris2.TRACER.gridded-aver.task.class                :  cso.CSO_GriddedAverageOverFiles
!cso.cris2.TRACER.gridded-aver.task.args                 :  '${PWD}/CrIS/cso-cris-TRACER.rc', \
!                                                      rcbase='cso.cris2.TRACER.gridded-aver'
!! single step:
!cso.cris2.TRACER.gridded-compare.class                     :  utopya.UtopyaJobStep
!! gridded average creation task:
!cso.cris2.TRACER.gridded-compare.task.class                :  cso.CSO_GriddedCompare
!cso.cris2.TRACER.gridded-compare.task.args                 :  '${PWD}/CrIS/cso-cris-TRACER.rc', \
!                                                      rcbase='cso.cris2.TRACER.gridded-compare'
!!
!! * gridded fields
!!
!
!! single step:
!cso.cris2.TRACER.gridded.class                     :  utopya.UtopyaJobStep
!! catalogue creation task:
!cso.cris2.TRACER.gridded.task.class                :  cso.CSO_GriddedAverage
!cso.cris2.TRACER.gridded.task.args                 :  '${PWD}/config/CrIS2/cso-cris-TRACER.rc', \
!                                                   rcbase='cso.cris2.TRACER.gridded'
!
!! *
!
!! single step:
!cso.cris2.TRACER.gridded-catalogue.class           :  utopya.UtopyaJobStep
!! two tasks:
!cso.cris2.TRACER.gridded-catalogue.tasks           :  figs index
!! catalogue creation task:
!cso.cris2.TRACER.gridded-catalogue.figs.class      :  cso.CSO_GriddedCatalogue
!cso.cris2.TRACER.gridded-catalogue.figs.args       :  '${PWD}/config/CrIS2/cso-cris-TRACER.rc', \
!                                                   rcbase='cso.cris2.TRACER.gridded-catalogue'
!! indexer task:
!cso.cris2.TRACER.gridded-catalogue.index.class     :  utopya.Indexer
!cso.cris2.TRACER.gridded-catalogue.index.args      :  '${PWD}/config/CrIS2/cso-cris-TRACER.rc', \
!                                                   rcbase='cso.cris2.TRACER.gridded-catalogue-index'
!
!#endfor
!
!
!!----------------------------------------------------------
!! job step defaults
!!----------------------------------------------------------
!
!! run jobs in foreground:
!*.script.class                      :  utopya.UtopyaJobScriptForeground
!
!! search path for python modules:
!*.pypath                            :  ${PWD}/py
!        
!! work directory for jobs; 
!! here path including subdirectories for job name elements:
!*.workdir                           :  ${my.work}/__NAME2PATH__
!
!! jobtree settings from this file:
!*.rcfile                            :  ${__filename__}
!
!
!!----------------------------------------------------------
!! end
!!----------------------------------------------------------
+270 −0

File changed.

Preview size limit exceeded, changes collapsed.

+15.2 KiB
Loading image diff...
Loading