epygram.args_catalog — Catalog of command-line arguments

Contains a catalog of reusable command-line arguments for argparse, with a function add_arg_to_parser to import them to an argparse parser.

The arguments are classified by categories, each category being a dict.

Each argument is a list composed as follows: [‘name’, ‘alternate_name1’, ‘alternate_name2’, …, dict(kw1, kw2, kw3, …)] where the keywords ‘kwi’ are argparse.ArgumentParser.add_argument() optional arguments.


Functions

epygram.args_catalog.add_arg_to_parser(parser, arg, **flychanges)[source]

Wrapper to add one item arg of the following dictionaries to a parser.

flychanges enable to change argument options on the fly.


Catalogs

epygram.args_catalog.files_management = {'file_to_refer_in_diff': ['-d', '--diff', {'type': <class 'str'>, 'dest': 'refname', 'help': 'name of the 2nd (reference) file to be processed, to which                   comparison is done.'}], 'file_to_refer_in_diffonly': ['-D', '--diffonly', {'type': <class 'str'>, 'dest': 'Drefname', 'help': 'same as -d/--diff, but only fields difference is processed.'}], 'in_place': ['-i', '--in_place', {'action': 'store_true', 'help': 'the operation on fields is done "in place" on the file,                   not on a new file.', 'default': False}], 'principal_file': ['filename', {'type': <class 'str'>, 'help': 'name of the file to be processed.'}], 'replace_by_addition': ['-a', '--add', {'action': 'store_const', 'const': 'add', 'dest': 'replace_op', 'help': 'replaces the fields by the addition fields                   (filename + source).', 'default': False}], 'replace_by_diff': ['-d', '--diff', {'action': 'store_const', 'const': 'diff', 'dest': 'replace_op', 'help': 'replaces the fields by the difference fields                   (filename - source).', 'default': False}], 'replace_by_product': ['-m', '--multiply', {'action': 'store_const', 'const': 'multiply', 'dest': 'replace_op', 'help': 'replaces the fields by the product fields                   (filename * source).', 'default': False}], 'replace_by_reversediff': ['-r', '--reversediff', {'action': 'store_const', 'const': 'reversediff', 'dest': 'replace_op', 'help': 'replaces the fields by the reverse difference fields                   (source - filename).', 'default': False}], 'several_files': ['filenames', {'type': <class 'str'>, 'nargs': '+', 'help': 'names of the files to be processed.'}], 'source_file': ['-s', '--source', {'type': <class 'str'>, 'dest': 'refname', 'help': 'name of the 2nd file from which to extract the fields.', 'required': True}]}

dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s

(key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

d = {} for k, v in iterable:

d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

in the keyword argument list. For example: dict(one=1, two=2)

epygram.args_catalog.fields_management = {'2fields_mode': ['-y', '--2fields_mode', {'help': "mode for 2-fields joining:                   - 'vectorize': sets a vector with each field as a component                   - 'superpose': superpose second field over the first with                     contourlines                   - '-': computes and plots the difference field                   - '+': computes and plots the sum field                   - '*': computes and plots the product field                   - '/': computes and plots the division field", 'default': None}], 'DDHLFA_domain': ['-n', '--domain_number', {'help': "number of the domain to plot.                    Multiple domains must be given within quotes, separated by comma.                    To obtain the list of domains in file,                    use the 'ddhlfa_what' tool.", 'required': True}], 'DDHLFA_multiple_fields': ['-f', '-F', '--field', {'help': "name of the field to be processed.                   Regular expressions can be used, such as                   'F*FLUVERTDYN' or 'VKK[0-1]'.                   In case this option is not used, no more than '-l' option,                   all fields present in file are processed.                   Fields not found in file are ignored.                   To obtain the list of fields in file, use the 'ddhlfa_what'                   tool.", 'default': None}], 'FA_field': ['-f', '-F', '--field', {'help': "name of the field to be processed.                   To obtain the list of fields in file, use the 'fa_what'                   tool.", 'default': None}], 'FA_multiple_fields': ['-f', '-F', '--field', {'help': "name of the field to be processed.                   Regular expressions can be used, such as                   'S00[2-6]WIND.[U-V].PHYS' to process meridian and zonal winds of levels 2 to 6,                   'SURFALBEDO*' to process all kinds of albedo,                   'SURF?.OF.OZONE' to process all kinds of ozone (A,B,C).                   In case this option is not used, no more than '-l' option,                   all fields present in file are processed.                   Fields not found in file are ignored.                   To obtain the list of fields in file, use the 'fa_what'                   tool.", 'default': None}], 'FA_set_compression': ['-k', '--kompression', {'help': 'bits number for FA gridpoint compression : KNBITS/KNBPDG.                   Defaults to 16.', 'type': <class 'int'>, 'default': None}], 'FA_vertical_field': ['-F', '-f', '--field', {'help': "name of the upper-air field to be processed, with a * for                   level. To obtain the list of fields in file, use the                   'fa_what' tool.", 'required': True, 'default': None}], 'FA_windfield': ['-w', '--computewind', {'help': "to process wind module, using the following syntax:                   'S*WIND' or 'P*VENT', 'H*VENT', 'V*VENT', 'CLSVENT.*', 'CLS*.RAF',                   * designing the level: combination of (*, ?, digits).                   Not implemented in difference mode.", 'default': None}], 'GRIB2_packing': ['--GRIB2_packing', {'help': "packing for writing GRIB2s.                   Defaults to {'packingType': 'grid_second_order', 'bitsPerValue': 12}.", 'default': None}], 'GRIB_field': ['-F', '-f', '--field', {'help': "(possibly partial) handgrip of the field to be processed.                   To obtain the list of fields in file (and their handgrip),                    use EPyGrAM's 'grib_what' tool or GRIB_API's 'grib_dump'.                   Ex: -f 'shortName:t,level:850'.", 'default': None}], 'GRIB_secondfield': ['-2', '--secondfield', {'help': "(possibly partial) handgrip of the second field to be                   processed. To obtain the list of fields in file (and their                   handgrip), use EPyGrAM's 'grib_what' tool or GRIB_API's                   'grib_dump'. Ex: -f 'shortName:t,level:850'.", 'default': None}], 'GRIB_sort': ['-k', '--sortbykey', {'help': "GRIB only: sort fields with regards to the given fid key.                   Only for *mode* == 'one+list' or 'fid_list'.", 'dest': 'sortfields', 'default': False}], 'GRIB_what_mode': ['-m', '--mode', {'help': "information display mode (GRIB only): 'one+list' gives the                    validity/geometry of the first field in GRIB, plus                    the list of fid; 'fid_list' gives only the fid of                    each field in GRIB; 'what' gives the values of the                    keys from each GRIB message that are used to generate                    an **epygram** field from the message (slower);                    'ls' gives the values of the 'ls' keys from each GRIB                    message; 'mars' gives the values of the 'mars' keys                    from each GRIB message.", 'choices': ('one+list', 'fid_list', 'what', 'ls', 'mars'), 'default': 'one+list'}], 'field': ['-f', '-F', '--field', {'help': "*fid* = *field identifier* of of the field(s) to be                   processed. Syntax depends on format:                   GRIB: handgrip, e.g. 'shortName:t,level:850'.                   FA: name, e.g. 'S050TEMPERATURE'; regular expressions may                   be used, such as 'S00[2-6]WIND.[U-V].PHYS',                   'SURFALBEDO*' or 'SURF?.OF.OZONE'.                   To obtain the list of fields in file, use the 'epy_what'                   tool.", 'default': None}], 'list_of_fields': ['-l', '--listoffields', {'help': 'name of an external file containing the list of fields                   to be processed, with the same specifications as for -f                   argument.', 'default': None}], 'netCDF_compression': ['--nc_comp', {'type': <class 'int'>, 'help': 'compression level to compress fields in netCDF.                    Ranges from 0 to 9. 0 is no compression, 1 is low-but-fast                    compression, 9 is high-but-slow compression.                    Default to 4', 'choices': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], 'default': '4'}], 'reverse_fields_selection': ['-r', '--reverse', {'action': 'store_true', 'help': 'reverse fields selection: all but those requested.', 'default': False}], 'sort_fields': ['-s', '--sortfields', {'action': 'store_true', 'help': 'not for GRIB: sort fields with regards to                   their name and type.', 'default': False}], 'vertical_field': ['-F', '-f', '--field', {'help': "designation of the fields from which to extract profile.                   Syntax depends on format:                   GRIB: handgrip designing the parameter and the type of                   levels.                   FA: name of the upper-air field to be processed,                   with a * for level.                   To obtain the list of fields in file, use the 'epy_what'                   tool.", 'required': True, 'default': None}], 'windfield': ['-w', '--computewind', {'help': "to process wind as a vector.                   Syntax depends on format:                   FA: 'S*WIND' or 'P*VENT', 'H*VENT', 'V*VENT', 'CLSVENT.*',                   or 'CLS*.RAF'; * designing the level: combination of                   (*, ?, digits).                   GRIB: handgrip, e.g. 'shortName:u+v,level:850' or                   'indicatorOfParameter:33+34,level:850' or                    'parameterCategory:2,parameterNumber:2+3,level:850'.                   Not implemented in difference mode.", 'default': None}], 'windfieldU': ['--wU', '--Ucomponentofwind', {'help': 'to process wind as a vector. U component of wind.                   (same syntax as -f).                   Not implemented in difference mode.', 'dest': 'Ucomponentofwind', 'default': None}], 'windfieldV': ['--wV', '--Vcomponentofwind', {'help': 'to process wind as a vector. V component of wind.                   (same syntax as -f).                   Not implemented in difference mode.', 'dest': 'Vcomponentofwind', 'default': None}]}

dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s

(key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

d = {} for k, v in iterable:

d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

in the keyword argument list. For example: dict(one=1, two=2)

epygram.args_catalog.output_options = {'GRIB_other_options': ['--GRIB_other_options', {'help': "a set of key:value pairs, separated by commas, to be given to                   the GRIB message when writing.                   Ex: 'typeOfGeneratingProcess:12,productionStatusOfProcessedData:2'.", 'default': None}], 'GRIB_short_fid': ['-s', '--grib_short_fid', {'help': 'condense GRIB fid.', 'action': 'store_true', 'default': False}], 'GeoPoints_columns': ['--geopoints_cols', {'dest': 'geopoints_cols', 'help': "set manually the columns of GeoPoints, for instance 'LAT,LON,VALUE'.", 'default': None}], 'GeoPoints_llv': ['--llv', {'action': 'store_true', 'help': 'simplify GeoPoints format to LAT, LON, VALUE only.', 'default': False}], 'GeoPoints_lonlat_precision': ['-E', '--lonlat_precision', {'help': "precision on GeoPoints' longitudes/latitudes (number of                    decimals). Default = 4.", 'default': 6}], 'GeoPoints_noheader': ['--geopoints_noheader', {'action': 'store_true', 'dest': 'geopoints_noheader', 'help': 'discard the header of GeoPoints.', 'default': False}], 'GeoPoints_precision': ['-e', '--precision', {'help': "precision on GeoPoints' values (number of decimals in                    scientific format). Default = 6.", 'default': 6}], 'get_field_compression': ['-c', '--compression', {'action': 'store_true', 'help': 'get compression options of each field.', 'default': False}], 'get_field_details': ['-d', '--details', {'help': "get some details about each field.                   E.g. 'spectral' to inquire the spectralness of fields, or                   'compression' to inquire compression parameters, 'grid' or                    'comment' for LFI.", 'default': None}], 'lonlat_precision': ['-E', '--lonlat_precision', {'help': 'precision on longitudes/latitudes (number of decimals).                    Default = 4.', 'default': 4}], 'noplot': ['-n', '--noplot', {'action': 'store_true', 'help': 'disable plot. Profile/spectrum will be computed                   and written as text output but not plotted.', 'default': False}], 'one_pdf': ['-p', '--pdf', {'action': 'store_true', 'help': 'store output (eventually multiple plots) in one .pdf file.', 'default': False}], 'only_maxdiff': ['--oxd', '--only_maxdiff', {'action': 'store_true', 'help': 'if diffonly and activated, only print the maximum absolute                   difference (and min/max values of fields for magnitude', 'dest': 'only_maxdiff', 'default': False}], 'output': ['-o', '--output', {'help': "store graphical output in file in with specified format,                   among ('png', pdf). Pdf is kind of disadvised, for it is                   very slow and produces much too big files. 'X' to open GUI.", 'choices': ['png', 'pdf', 'X'], 'default': 'png'}], 'output_format': ['-o', '--output_format', {'help': "format of conversion output, among:                   'grb' (GRIB2), 'geo' (GeoPoints), 'nc' (netCDF4).", 'choices': ['grb', 'geo', 'nc'], 'required': True}], 'outputfilename': ['-O', '--outputfilename', {'help': 'store output in the specified filename (without format for                   graphical output, to be completed by -o/--output).', 'default': False}], 'outputfmt': ['-o', '--outputfmt', {'help': "specify format for output file,                   among ('png', pdf). Pdf is kind of disadvised, for it is                   very slow and produces much too big files. 'X' to open GUI.", 'choices': ['png', 'pdf', 'X'], 'default': 'png'}], 'precision': ['-e', '--precision', {'help': 'precision on values (number of decimals in scientific                   format). Default = 4.', 'default': 4}], 'reproject_wind': ['--rw', '--reproject_wind', {'action': 'store_true', 'help': 'reprojects a wind vector (u, v) onto true                   zonal/meridian axes (assuming it is projected onto grid axes                   in fields).', 'dest': 'reproject_wind', 'default': False}], 'savefig': ['--sf', '--savefig', {'help': 'save figure in file.', 'action': 'store_true', 'dest': 'savefig', 'default': False}], 'stdout': ['-o', '--stdout', {'action': 'store_true', 'help': 'redirects output to standard output (rather than file).', 'default': False}]}

dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s

(key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

d = {} for k, v in iterable:

d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

in the keyword argument list. For example: dict(one=1, two=2)

epygram.args_catalog.misc_options = {'LAMzone': ['-z', '--zone', {'help': "zone of the domain, in LAM case:                   'C' for zone C, 'CI' for zone C+I, 'CIE' for zone C+I+E.                   Default is 'CI'.", 'choices': ['C', 'CI', 'CIE'], 'default': 'CI'}], 'array_flattening_order': ['--order', {'help': "for LAM arrays, whether to flatten in C (row-major) or                   Fortran (column-major) order 2D arrays. Default = 'C'.", 'default': 'C'}], 'composition_with_field': ['--compose_with', {'help': "compose a transformed field with another field.                    Syntax: 'otherfield, composition, [file=otherfile], [preset='norm'|'ceil']'.                    The *composition* must be among (+,-,*,/).                   If *file* is filled (optional), the *otherfield* is read in it.                   If *preset* is filled (optional), one or several operation can be done                    on the *otherfield* before operation.                   Ex: 'SFX.FRAC_WATER, *, file=mypgd.fa, preset=ceil'                    will set non-water points of the plotted field (e.g. SFX.TS_WATER) to 0.", 'default': None}], 'diffoperation_on_field': ['-X', '--diffoperation', {'help': "do the requested operation on difference field right after                    computing it.                    Syntax: '-,273.15' (e.g. for K => C) or 'exp' to take the                    exponential of the field.                    The operand must be among (+,-,*,/) or 'normalize' or any                   numpy function.                   For '-' operand, use short-name option -X without spacetab                   between option and argument.", 'default': None}], 'femars.diff_to_avg': ['--avg', '--diff_to_avg', {'help': 'instead of computing member to member differences,                    compute member-to-average-of-members differences.', 'action': 'store_true', 'default': False, 'dest': 'diff_to_avg'}], 'flatten_horizontal_grids': ['--flatten', {'help': 'for netCDF, flatten 2D horizontal grids to 1D.', 'action': 'store_true', 'default': False}], 'map_factor_correction': ['--mpf', '--map_factor_correction', {'help': 'apply a map factor correction to wind.', 'action': 'store_true', 'default': False, 'dest': 'map_factor_correction'}], 'mask_threshold': ['--mt', '--mask_threshold', {'help': "set a threshold to mask values. E.g. 'min=0.0' will                   mask negative values. 'min=0.0,max=1e8' will mask values                   outside these boundaries.", 'default': None, 'dest': 'mask_threshold'}], 'operation_on_field': ['-x', '--operation', {'help': "do the requested operation on field right after reading it.                    Syntax: '-,273.15' (e.g. for K => C) or 'exp' to take the                    exponential of the field.                    The operand must be among (+,-,*,/) or 'normalize' or any                   numpy function.                   For '-' operand, use short-name option -x without spacetab                   between option and argument.", 'default': None}], 'pressure_unit_hpa': ['-u', '--pressure_unit_hpa', {'action': 'store_true', 'help': 'converts pressure in Pa to hPa.', 'default': False}], 'wind_components_are_projected_on': ['--wpo', '--wind_projected_on', {'help': 'specify on which coordinates the wind components are projected.', 'default': None, 'choices': ['lonlat', 'grid'], 'dest': 'wind_components_are_projected_on'}]}

dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s

(key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

d = {} for k, v in iterable:

d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

in the keyword argument list. For example: dict(one=1, two=2)

epygram.args_catalog.graphical_options = {'alpha': ['--alpha', {'help': 'Alpha value (for contour, color and vectors plots)', 'default': 1.0, 'type': <class 'float'>, 'dest': 'alpha'}], 'alphaminmax': ['--alphaminmax', {'help': "Alpha values associated to min and max values                    for volume plot.                    Syntax: 'alpha1, alpha2'.", 'default': None, 'dest': 'alphaminmax'}], 'background': ['--background', {'help': 'sets a background color to continents and oceans.', 'action': 'store_true', 'default': False}], 'background_color': ['--bg', '--background_color', {'help': 'backgound color.', 'type': <class 'str'>, 'default': 'Black', 'dest': 'background_color'}], 'bins': ['-b', '--bins', {'help': "number of bins or bins edges (separated by commas).                    'range(0,100,12.5)' also works. Default is 50.", 'type': <class 'str'>, 'default': '50'}], 'bluemarble': ['--bluemarble', {'help': 'displays NASA\'s "blue marble" as background, with                   a transparency set to the given value [0.0, 1.0].', 'type': <class 'float'>, 'default': 0.0}], 'camera': ['--camera', {'type': <class 'str'>, 'help': "Camera position: 'x, y, z'.", 'default': None}], 'cartopy_features': ['--cpyf', '--cartopy_features', {'help': 'cartopy features (cartopy.feature.*), separated by comma', 'dest': 'cartopy_features', 'default': None}], 'center_cmap_on_0': ['-t', '--center_cmap_on_0', {'action': 'store_true', 'help': 'to center the colormap on the value 0. Can be useful                   for wind plots for instance.', 'default': False}], 'center_hist_on_0': ['-t', '--center_hist_on_0', {'action': 'store_true', 'help': 'to center the histogram on the value 0. Can be useful                   for wind plots for instance.', 'default': False}], 'colormap': ['-c', '--colormap', {'help': "name of the **matplotlib** colormap to use.                   Default is 'jet'                   (Cf. http://matplotlib.org/examples/color/colormaps_reference.html                    for standard matplotlib colormaps, or epygram.config.epygram_colormaps.keys()                    in a python interpreter for epygram's own colormaps).                   Custom colormaps can be defined (http://colormap.org or                   manually) and added in userconfig,                   in usercolormaps = {'my_cmap':'path_to_my_cmap'}.", 'default': 'jet'}], 'colorminmax': ['-c', '--colorminmax', {'help': "Colors associated to min and max values. Syntax: 'color1, color2'.", 'default': None, 'dest': 'colorminmax'}], 'diff_center_cmap_on_0': ['-T', '--diffcenter_cmap_on_0', {'action': 'store_false', 'help': 'NOT to center the colormap of diff plots on the value 0.                   May be useful for fluxes decumulation.', 'default': True}], 'diff_center_hist_on_0': ['-T', '--diffcenter_hist_on_0', {'action': 'store_false', 'help': 'NOT to center the histogram of diff on the value 0.                   May be useful for fluxes decumulation.', 'default': True}], 'diff_levels_number': ['-N', '--difflevelsnumber', {'help': 'number of levels for difference contours and shades.                   Default is 50.', 'type': <class 'int'>, 'default': 50}], 'diffalphaminmax': ['--diffalphaminax', {'help': "Alpha values associated to min and max values                    for diff volume plot.                    Syntax: 'alpha1, alpha2'.", 'default': None, 'dest': 'diffalphaminmax'}], 'diffbins': ['-B', '--diffbins', {'help': "number of bins or bins edges (separated by commas)                    for diff plot.                    'range(0,100,12.5)' also works. Default is 50.", 'type': <class 'str'>, 'default': '50'}], 'diffcolormap': ['-C', '--diffcolormap', {'help': "name of the **matplotlib** colormap to use for diff.                   Default is 'RdBu_r'                   (Cf. http://matplotlib.org/examples/color/colormaps_reference.html                    for standard matplotlib colormaps, or epygram.config.epygram_colormaps.keys()                    in a python interpreter for epygram's own colormaps).                   Custom colormaps can be defined (http://colormap.org or                   manually) and added in userconfig,                   in usercolormaps = {'my_cmap':'path_to_my_cmap'}.", 'default': 'RdBu_r'}], 'diffcolorminmax': ['--diffcolorminax', {'help': "Colors associated to min and max values for diff plot.                    Syntax: 'color1, color2'.", 'default': None, 'dest': 'diffcolorminmax'}], 'diffminmax': ['-M', '--diffminmax', {'help': "min and max values for the difference plot.                   Syntax: 'min, max'. '0.0, max' also works.                   Default is the difference field min/max values.                   For negative values, use short-name option -M without                   spacetab between option and argument.", 'default': None}], 'diffstreamlines_time': ['-T', '--diffstream_time', {'help': 'Integration time for diff stream lines or tubes', 'default': None, 'dest': 'diffstreamlines_time'}], 'difftitle': ['--difftitle', {'help': 'title to be written over diff field plot.', 'default': None}], 'diffvectors_scale_factor': ['--diffvectors_scale_factor', {'help': 'Scale factor to apply on diff vectors', 'type': <class 'float'>, 'default': 1.0}], 'draw_rivers': ['-r', '--drawrivers', {'action': 'store_true', 'help': 'draw rivers on map. (Much more slow)', 'default': False}], 'emagram_like_profiles': ['-e', '--emagramlike', {'action': 'store_true', 'help': 'plots profiles in a emagram-like style (only with                   -P/--hybridP2pressure). Should not be used for other than                   Temperature profiles.', 'default': False}], 'figures_dpi': ['--fd', '--figures_dpi', {'help': 'quality of saved figures.', 'dest': 'figures_dpi', 'type': <class 'int'>, 'default': 150}], 'focal_point': ['--focal_point', {'type': <class 'str'>, 'help': "Focal point: 'x,y,z'.", 'default': None}], 'french_departments': ['--depts', {'action': 'store_true', 'help': 'draw french departments on map (instead of countries                   boundaries).', 'default': False}], 'gis_quality': ['-q', '--gisquality', {'help': "quality of the GIS used to draw coastlines, rivers and                   countries; among ('c', 'l', 'i', 'h', 'f'), by increasing                   quality.", 'choices': ['c', 'l', 'i', 'h', 'f'], 'default': 'i'}], 'global_shift_center': ['--global_shift_center', '--gsc', {'help': 'for global lon/lat grids, shift the center by the requested                    angle (in degrees). Enables a [0,360] grid to be shifted to                    a [-180,180] grid, for instance (with -180 argument).', 'type': <class 'float'>, 'default': None}], 'graphicmode': ['-g', '--graphicmode', {'help': "graphical mode for plots, among                   ('colorshades', 'contourlines', 'points'). Default is                   'colorshades'. There is a known bug (yet unsolved) with                   Arpege & contourlines.", 'choices': ['colorshades', 'contourlines', 'points'], 'default': 'colorshades'}], 'ground': ['--ground', {'help': '\'bluemarble\' to display NASA\'s "blue marble" on ground                   or a url (using \'${z}\', \'${x}\' and \'${y}\' as place holders)                   to plot maptiles (use single quote around the url in the                   shall to prevent \'$\' to be expanded)', 'type': <class 'str'>, 'default': None}], 'hide_axes': ['--hide_axes', {'help': 'To hide axe arrows.', 'action': 'store_true', 'default': False}], 'legend': ['-L', '--legend', {'help': 'legend to be written over field plot.', 'default': None}], 'levels_number': ['-n', '--levelsnumber', {'help': 'number of levels for contours and shades.                   Default is 50.', 'type': <class 'int'>, 'default': 50}], 'lonlat_zoom': ['--zoom', {'help': "optional zoom on the specified region of the plot.                   Forces to 'cyl' projection. Syntax: 'lonmin=-5, lonmax=1.2,                   latmin=40.8, latmax=51'. Overwrites 'projection' option.", 'default': None}], 'meridians': ['--meridians', {'help': 'Same as parallels, cf. parallels doc.', 'type': <class 'str'>, 'default': 'auto'}], 'minmax': ['-m', '--minmax', {'help': "min and max values for the plot.                   Syntax: 'min, max'. '0.0, max' also works.                   Default is the field min/max values.                   In diff mode, this is valuable for resource and reference                   only, (min, max) for difference plot should be defined                   with --diffminmax option. For negative values, use                   short-name option -m without spacetab between option and                   argument.", 'default': None}], 'parallels': ['--parallels', {'help': "tune the choice of lines to plot, among:\n                     'auto': automatic scaling to the map extents (default) |\n                     'default': range(0,360,10) and range(-90,90,10) |\n                     a list of values |\n                     a grid step, e.g. 5 to plot each 5 degree |\n                     None: no one is plot", 'type': <class 'str'>, 'default': 'auto'}], 'plot_method': ['--pm', '--plot_method', {'help': "plot method, among                   ('pcolormesh', 'contourf', 'contour', 'scatter'). Default is                   'pcolormesh' for rectangular grids, else 'contourf'.                   There is a known bug (yet unsolved) with                   Arpege & contourlines.", 'choices': ['pcolormesh', 'contourf', 'contour', 'scatter'], 'dest': 'plot_method', 'default': '__default__'}], 'plotmode': ['plotmode', {'type': <class 'str'>, 'help': "Kind of 3d plot, among ('contour', 'color', 'volume',                   'vector', 'stream')", 'choices': ['contour', 'color', 'volume', 'vectors', 'streamlines', 'donothing']}], 'points_size': ['-p', '--pointsize', {'help': "size of points for *graphicmode* == 'points'.                   Defaults to 20.", 'type': <class 'int'>, 'default': 20}], 'quiverkey': ['--qk', '--quiverkey', {'help': "arguments to be passed to pyplot.quiverkey(), in case                   *vector_symbol* == 'arrows'. E.g. X=1.05,Y=1.05,U=10.,label='10m/s'.", 'dest': 'quiverkey', 'default': None}], 'resolution_increase': ['--resolution_increase', {'help': 'Resolution increase factor', 'type': <class 'int'>, 'default': 1}], 'scatter_kw': ['--skw', '--scatter_kw', {'help': "arguments to be passed to pyplot.scatter(), in case                   *plot_method* == 'scatter'.", 'dest': 'scatter_kw', 'default': None}], 'scientifical_unit': ['-u', '--unit', {'help': "optional unit for labeling plot axis. Defaults to 'SI'.", 'default': 'SI'}], 'section_abscissa': ['--section_abscissa', '--sa', {'help': "abscissa of section, among ('distance', 'lon', 'lat').", 'default': 'distance'}], 'specific_map_projection': ['-j', '--projection', {'help': "specific graphical projection of plots, among                   ('ll', 'geoid').                   Default is the actual projection of fields,                   or Mollweide projection for Gauss geometry.                   If set to 'geoid' the field is plotted around                   the geoid.", 'default': None}], 'spectra_slopes': ['-k', '--kindofslopes', {'help': "optional kind of slopes to be plotted, with syntax:                   sequence of (exp offset label) between simple quotes ('),                   with slope = offset * k**exp.                   offset is optional, with default = 1.0.                   Label is optional and denotes how do the exp appears in                   legend (by default, exp=0.5 will appear 1/2 => add a label                   0.5 for it to appear unchanged.). If label is provided,                   offset must be provided as well.                   Ex: 'exp1, exp2 offset2 label2, exp3 offset3'.                   or  '-3 1.0, -5./3. 1e-2 -5/3' (default).", 'default': '-3 1.0 -3, -5./3. 1e-2 -5/3'}], 'spectra_zoom': ['--zoom', {'help': "optional zoom on the spectra plot. Ex: 'xmax=10, ymin=1.0'.", 'default': None}], 'streamlines_time': ['-t', '--stream_time', {'help': 'Integration time for stream lines or tubes', 'default': 1, 'type': <class 'float'>, 'dest': 'streamlines_time'}], 'superpose_spectra_plots': ['-s', '--superposeplots', {'action': 'store_true', 'help': 'for superposing spectra of all requested fields in one                   plot.', 'default': False}], 'title': ['--title', {'help': 'title to be written over field plot.', 'default': None}], 'vector_plot_method': ['--vpm', '--vector_plot_method', {'help': "symbol to be used for vectors, among ('quiver', 'barbs', 'streamplot').", 'dest': 'vector_plot_method', 'default': 'quiver'}], 'vector_symbol': ['--vs', '--vector_symbol', {'help': "symbol to be used for vectors, among ('barbs', 'arrows', 'stream').", 'dest': 'vector_symbol', 'default': 'barbs'}], 'vectors_scale_factor': ['-S', '--vectors_scale_factor', {'help': 'Scale factor to apply on vectors', 'type': <class 'float'>, 'default': 1.0}], 'vectors_subsampling': ['-s', '--vectors_subsampling', {'help': 'Subsampling factor for plotting vectors barbs                   (-w: computewind option). Defaults to 20.', 'type': <class 'int'>, 'default': 20}], 'vectors_verticalsubsampling': ['--vectors_verticalsubsampling', {'help': 'Vertical subsampling factor for plotting vectors barbs.                   Defaults to 1.', 'type': <class 'int'>, 'default': 1}], 'vertical_logscale': ['-s', '--logscale', {'action': 'store_true', 'help': 'plots with vertical logscale.', 'default': False}], 'vertical_zoom': ['--zoom', {'help': "optional zoom (vertical reduction) on the profile plot.                    Ex: 'ymax=150, ymin=850'. The unit must be that of the                    vertical coordinate requested (hPa, m, level number).", 'default': None}], 'window_size': ['--window_size', {'help': "window size. Syntax: 'width, height'", 'default': None}], 'z_factor': ['--z_factor', {'help': 'factor to apply on z values (to modify aspect ratio of the plot).', 'type': <class 'float'>, 'default': None}]}

dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s

(key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

d = {} for k, v in iterable:

d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

in the keyword argument list. For example: dict(one=1, two=2)

epygram.args_catalog.extraction_options = {'external_distance': ['-z', '--external_distance', {'help': "for 'nearest' interpolation mode, the nearest is chosen                   among the 4 nearest points regarding the point whose value                   of field *EXT* is the closest to *VALUE*, with syntax:                   *external_distance* = 'VALUE; EXT'. EXT being a fid.", 'default': None}], 'horizontal_interpolation': ['-i', '--interpolation', {'help': "interpolation mode from field grid to point/section                   coordinates. Among ('nearest', 'linear', 'cubic',                   'bilinear'). Defaults to 'nearest'.", 'choices': ['nearest', 'linear', 'cubic', 'bilinear'], 'default': 'nearest'}], 'no_cheap_height_conversion': ['--no_cheap_height', {'action': 'store_false', 'dest': 'cheap_height', 'help': 'for the computation of heights (-A/-H) to be done                    taking hydrometeors into account (in R                    computation) and NH Pressure departure                    (Non-Hydrostatic data). Slower but more accurate.', 'default': True}], 'point_coordinates': ['-c', '--coordinates', {'help': "lon/lat coordinates of the point.                   Syntax: 'lon, lat'.", 'required': True, 'default': None}], 'section_ending_point': ['-e', '--ending_point', {'help': "lon/lat coordinate of ending point of the section.                   Syntax: 'lon, lat'.", 'required': True, 'default': None}], 'section_starting_point': ['-s', '--starting_point', {'help': "lon/lat coordinate of starting point of the section.                   Syntax: 'lon, lat'.", 'required': True, 'default': None}], 'section_transect_points_number': ['-p', '--points_number', {'help': 'number of points from starting point to ending point                   (included). Defaults to the number of points computed from                   the fields resolution, or from the resolution given via                   option -r.', 'type': <class 'int'>, 'default': None}], 'section_transect_resolution': ['-r', '--resolution', {'help': 'resolution of the section. Defaults to the fields                   resolution, or computed from the number of points given via                   option -p.', 'type': <class 'float'>, 'default': None}], 'verticalcoord2altitude': ['-A', '--verticalcoord2altitude', {'action': 'store_const', 'dest': 'Yconvert', 'const': 'altitude', 'help': 'compute altitude as vertical coordinate, if possible.', 'default': None}], 'verticalcoord2height': ['-H', '--verticalcoord2height', {'action': 'store_const', 'dest': 'Yconvert', 'const': 'height', 'help': 'compute height as vertical coordinate, if possible.', 'default': None}], 'verticalcoord2pressure': ['-P', '--verticalcoord2pressure', {'action': 'store_const', 'dest': 'Yconvert', 'const': 'pressure', 'help': 'compute pressure as vertical coordinate, if possible.', 'default': None}]}

dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s

(key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

d = {} for k, v in iterable:

d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

in the keyword argument list. For example: dict(one=1, two=2)

epygram.args_catalog.runtime_options = {'percentage': ['-p', '--percentage', {'action': 'store_true', 'help': 'display the percentage done on the run.', 'default': False}], 'threads_number': ['-t', '--threads_number', {'help': 'number of threads to be run in parallel.', 'type': <class 'int'>, 'default': 8}], 'verbose': ['-v', '--verbose', {'action': 'store_true', 'help': 'run verbosely. Else, only messages of level Error will be                   displayed.', 'default': False}]}

dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s

(key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

d = {} for k, v in iterable:

d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

in the keyword argument list. For example: dict(one=1, two=2)

epygram.args_catalog.operational_options = {'numod': ['-N', '--NUMOD', {'help': "model identifier (known as NUMOD at Meteo-France).                    A.k.a. 'generatingProcessIdentifier' in GRIB_API.                    Default is 255.", 'dest': 'numod', 'default': None, 'type': <class 'int'>}], 'suite': ['-S', '--suite', {'help': "name of the suite, among (oper, dble, research, test).                   Defaults to research. Used to build GRIB's                    *productionStatusOfProcessedData*.", 'default': 'research'}], 'typeOfGeneratingProcess': ['-g', '--typeOfGeneratingProcess', {'help': "GRIB's type of generating process.", 'choices': ['Analysis', 'Initialization', 'Forecast', 'Bias corrected forecast', 'Ensemble forecast', 'Probability forecast', 'Forecast error', 'Analysis error', 'Observation', 'Climatological', 'Probability-weighted forecast', 'Bias-corrected ensemble forecast', 'Post-processed analysis', 'Post-processed forecast', 'Nowcast', 'Hindcast', 'unknown'], 'default': 'Forecast'}]}

dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s

(key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

d = {} for k, v in iterable:

d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

in the keyword argument list. For example: dict(one=1, two=2)

epygram.args_catalog.domain_maker_options = {'maximize_CI_in_E': ['-m', '--maximize_CI_in_E', {'action': 'store_true', 'help': 'forces the C+I zone to be the greatest possible inside a                   given (discrete) C+I+E size.                    In other words, with a given (discrete) C+I+E size, forces                   the E-zone to be the smallest possible.', 'default': False}], 'mode': ['-l', {'dest': 'mode', 'action': 'store_const', 'help': 'mode: define domain by specifying a lon/lat domain that must                   be included inside.', 'const': 'lonlat_included', 'default': 'center_dims'}], 'no_display': ['-n', '--no_display', {'action': 'store_true', 'help': 'run without displaying the domain.', 'default': False}], 'orography_subtruncation': ['-o', '--orography_subtruncation', {'help': '(for namelists) additional subtruncation for orography to be generated.', 'default': 'quadratic'}], 'truncation': ['-t', '--truncation', {'help': "(for namelists) the kind of truncation of spectral geometry                   to generate, among ('linear', 'quadratic', 'cubic').", 'default': 'linear'}]}

dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s

(key, value) pairs

dict(iterable) -> new dictionary initialized as if via:

d = {} for k, v in iterable:

d[k] = v

dict(**kwargs) -> new dictionary initialized with the name=value pairs

in the keyword argument list. For example: dict(one=1, two=2)