Skip to content
Snippets Groups Projects
Commit 90a1ca09 authored by Anne Philipp's avatar Anne Philipp
Browse files

added switch to select for calculation of extra synthesized ensembles from ELDA stream or not

parent d727af26
No related branches found
No related tags found
No related merge requests found
...@@ -22,7 +22,7 @@ GATEWAY None ...@@ -22,7 +22,7 @@ GATEWAY None
#=============================================================================== #===============================================================================
# GENERAL SECTION: # GENERAL SECTION:
# Specific storage, notifcication and data transfer settings. # Specific storage, notification and data transfer settings.
# Selection of ECMWF access interface and extra output options. # Selection of ECMWF access interface and extra output options.
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
DEBUG 0 DEBUG 0
...@@ -111,6 +111,7 @@ ETAPAR 77 ...@@ -111,6 +111,7 @@ ETAPAR 77
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
CWC 0 CWC 0
WRF 0 WRF 0
DOUBLEELDA 0
ADDPAR None ADDPAR None
#=============================================================================== #===============================================================================
......
DTIME 3 DTIME 3
TYPE AN FC AN FC AN FC AN FC TYPE AN FC AN FC AN FC AN FC
TIME 00 18 06 06 12 06 18 18 TIME 00 18 06 06 12 06 18 18
STEP 00 09 00 03 00 09 00 03 STEP 00 09 00 03 00 09 00 03
ACCTIME 06/18 ACCTIME 06/18
ACCMAXSTEP 12 ACCMAXSTEP 12
ACCTYPE FC ACCTYPE FC
CLASS OD CLASS OD
STREAM ELDA STREAM ELDA
PREFIX EL PREFIX EL
UPPER 30. UPPER 5.
LOWER 10. LOWER -5.
LEFT -10. LEFT -2.
RIGHT 10. RIGHT 2.
NUMBER 0/to/25 NUMBER 0/to/2
GRID 1. GRID 1.
RESOL 159 RESOL 159
ETA 1 ETA 1
CWC 1 LEVELIST 135/TO/137
LEVELIST 130/TO/137 ADDPAR 186/187/188/235/139/39/134
ADDPAR 186/187/188/235/139/39/134 ECTRANS 1
ECTRANS 1 RRINT 1
DOUBLEELDA 0
...@@ -329,15 +329,19 @@ class ControlFile(object): ...@@ -329,15 +329,19 @@ class ControlFile(object):
Switch to decide wether the job is a pure forecast retrieval or Switch to decide wether the job is a pure forecast retrieval or
coupled with analysis data. Default value is 0. coupled with analysis data. Default value is 0.
rrint: int rrint : int
Switch to select between old precipitation disaggregation method (0) Switch to select between old precipitation disaggregation method (0)
or the new IA3 disaggegration method (1). Default value is 0. or the new IA3 disaggegration method (1). Default value is 0.
doubleelda : int
Switch to select the calculation of extra ensemble members for the
ELDA stream. It doubles the amount of retrieved ensemble members.
logicals : list of str logicals : list of str
List of the names of logical switches which controls the flow List of the names of logical switches which controls the flow
of the program. Default list is ['gauss', 'omega', 'omegadiff', 'eta', of the program. Default list is ['gauss', 'omega', 'omegadiff', 'eta',
'etadiff', 'dpdeta', 'cwc', 'wrf', 'grib2flexpart', 'ecstorage', 'etadiff', 'dpdeta', 'cwc', 'wrf', 'grib2flexpart', 'ecstorage',
'ectrans', 'debug', 'request', 'public', 'purefc', 'rrint'] 'ectrans', 'debug', 'request', 'public', 'purefc', 'rrint', 'doubleelda']
''' '''
def __init__(self, filename): def __init__(self, filename):
...@@ -424,11 +428,12 @@ class ControlFile(object): ...@@ -424,11 +428,12 @@ class ControlFile(object):
self.cds_api = None self.cds_api = None
self.purefc = 0 self.purefc = 0
self.rrint = 0 self.rrint = 0
self.doubleelda = 0
self.logicals = ['gauss', 'omega', 'omegadiff', 'eta', 'etadiff', self.logicals = ['gauss', 'omega', 'omegadiff', 'eta', 'etadiff',
'dpdeta', 'cwc', 'wrf', 'grib2flexpart', 'ecstorage', 'dpdeta', 'cwc', 'wrf', 'grib2flexpart', 'ecstorage',
'ectrans', 'debug', 'oper', 'request', 'public', 'ectrans', 'debug', 'oper', 'request', 'public',
'purefc', 'rrint'] 'purefc', 'rrint', 'doubleelda']
self._read_controlfile() self._read_controlfile()
......
...@@ -70,11 +70,11 @@ import socket ...@@ -70,11 +70,11 @@ import socket
sys.path.append(os.path.dirname(os.path.abspath( sys.path.append(os.path.dirname(os.path.abspath(
inspect.getfile(inspect.currentframe()))) + '/../') inspect.getfile(inspect.currentframe()))) + '/../')
import _config import _config
from .checks import check_ppid from mods.checks import check_ppid
from classes.UioFiles import UioFiles from classes.UioFiles import UioFiles
from classes.ControlFile import ControlFile from classes.ControlFile import ControlFile
from .tools import (setup_controldata, clean_up, get_cmdline_args, from mods.tools import (setup_controldata, clean_up, get_cmdline_args,
read_ecenv, make_dir) read_ecenv, make_dir, normal_exit)
from classes.EcFlexpart import EcFlexpart from classes.EcFlexpart import EcFlexpart
# ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------
...@@ -162,7 +162,7 @@ def prepare_flexpart(ppid, c): ...@@ -162,7 +162,7 @@ def prepare_flexpart(ppid, c):
# copy/transfer/interpolate them or make them GRIB2 # copy/transfer/interpolate them or make them GRIB2
flexpart = EcFlexpart(c, fluxes=False) flexpart = EcFlexpart(c, fluxes=False)
flexpart.create(inputfiles, c) flexpart.create(inputfiles, c)
if c.stream.lower() == 'elda': if c.stream.lower() == 'elda' and c.doubleelda:
flexpart.calc_extra_elda(c.inputdir, c.prefix) flexpart.calc_extra_elda(c.inputdir, c.prefix)
flexpart.process_output(c) flexpart.process_output(c)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment