Changeset ca867de in flex_extract.git for source/python/mods/tools.py
- Timestamp:
- Oct 5, 2018, 3:35:18 PM (6 years ago)
- Branches:
- master, ctbto, dev
- Children:
- 5bad6ec
- Parents:
- 27fe969
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
source/python/mods/tools.py
r27fe969 rca867de 60 60 # ------------------------------------------------------------------------------ 61 61 62 def none_or_str(value): 63 ''' 64 @Description: 65 Converts the input string into pythons None-type if the string 66 contains "None". 67 68 @Input: 69 value: string 70 String to be checked for the "None" word. 71 72 @Return: 73 None or value: 74 Return depends on the content of the input value. If it was "None", 75 then the python type None is returned. Otherwise the string itself. 76 ''' 77 if value == 'None': 78 return None 79 return value 80 81 def none_or_int(value): 82 ''' 83 @Description: 84 Converts the input string into pythons None-type if the string 85 contains "None". Otherwise it is converted to an integer value. 86 87 @Input: 88 value: string 89 String to be checked for the "None" word. 90 91 @Return: 92 None or int(value): 93 Return depends on the content of the input value. If it was "None", 94 then the python type None is returned. Otherwise the string is 95 converted into an integer value. 96 ''' 97 if value == 'None': 98 return None 99 return int(value) 100 62 101 def get_cmdline_arguments(): 63 102 ''' … … 79 118 80 119 # the most important arguments 81 parser.add_argument("--start_date", dest="start_date", default=None, 120 parser.add_argument("--start_date", dest="start_date", 121 type=none_or_str, default=None, 82 122 help="start date YYYYMMDD") 83 parser.add_argument("--end_date", dest="end_date", default=None, 123 parser.add_argument("--end_date", dest="end_date", 124 type=none_or_str, default=None, 84 125 help="end_date YYYYMMDD") 85 parser.add_argument("--date_chunk", dest="date_chunk", default=None, 126 parser.add_argument("--date_chunk", dest="date_chunk", 127 type=none_or_int, default=None, 86 128 help="# of days to be retrieved at once") 129 parser.add_argument("--controlfile", dest="controlfile", 130 type=none_or_str, default='CONTROL.temp', 131 help="file with CONTROL parameters") 132 133 # parameter for extra output information 134 parser.add_argument("--debug", dest="debug", 135 type=none_or_int, default=None, 136 help="debug mode - leave temporary files intact") 137 parser.add_argument("--request", dest="request", 138 type=none_or_int, default=None, 139 help="list all mars request in file mars_requests.dat \ 140 and skip submission to mars") 87 141 88 142 # some arguments that override the default in the CONTROL file 89 parser.add_argument("--basetime", dest="basetime", default=None, 90 help="base such as 00/12 (for half day retrievals)") 91 parser.add_argument("--step", dest="step", default=None, 143 parser.add_argument("--basetime", dest="basetime", 144 type=none_or_int, default=None, 145 help="base such as 00 or 12 (for half day retrievals)") 146 parser.add_argument("--step", dest="step", 147 type=none_or_str, default=None, 92 148 help="steps such as 00/to/48") 93 parser.add_argument("--levelist", dest="levelist", default=None, 149 parser.add_argument("--levelist", dest="levelist", 150 type=none_or_str, default=None, 94 151 help="Vertical levels to be retrieved, e.g. 30/to/60") 95 parser.add_argument("--area", dest="area", default=None, 152 parser.add_argument("--area", dest="area", 153 type=none_or_str, default=None, 96 154 help="area defined as north/west/south/east") 97 155 98 156 # set the working directories 99 parser.add_argument("--inputdir", dest="inputdir", default=None, 157 parser.add_argument("--inputdir", dest="inputdir", 158 type=none_or_str, default=None, 100 159 help="root directory for storing intermediate files") 101 parser.add_argument("--outputdir", dest="outputdir", default=None, 160 parser.add_argument("--outputdir", dest="outputdir", 161 type=none_or_str, default=None, 102 162 help="root directory for storing output files") 103 163 parser.add_argument("--flexpart_root_scripts", dest="flexpart_root_scripts", 104 default=None,164 type=none_or_str, default=None, 105 165 help="FLEXPART root directory (to find grib2flexpart \ 106 166 and COMMAND file)\n Normally flex_extract resides in \ … … 108 168 109 169 # this is only used by prepare_flexpart.py to rerun a postprocessing step 110 parser.add_argument("--ppid", dest="ppid", default=None, 170 parser.add_argument("--ppid", dest="ppid", 171 type=none_or_int, default=None, 111 172 help="specify parent process id for \ 112 173 rerun of prepare_flexpart") … … 114 175 # arguments for job submission to ECMWF, only needed by submit.py 115 176 parser.add_argument("--job_template", dest='job_template', 116 default="job.temp",177 type=none_or_str, default="job.temp", 117 178 help="job template file for submission to ECMWF") 118 parser.add_argument("--queue", dest="queue", default=None, 179 parser.add_argument("--queue", dest="queue", 180 type=none_or_str, default=None, 119 181 help="queue for submission to ECMWF \ 120 182 (e.g. ecgate or cca )") 121 parser.add_argument("--controlfile", dest="controlfile",122 default='CONTROL.temp',123 help="file with CONTROL parameters")124 parser.add_argument("--debug", dest="debug", default=None,125 help="debug mode - leave temporary files intact")126 parser.add_argument("--request", dest="request", default=None,127 help="list all mars request in file mars_requests.dat \128 and skip submission to mars")129 183 130 184 args = parser.parse_args()
Note: See TracChangeset
for help on using the changeset viewer.