def handle(infiles, tables, user_input_path, **kwargs): """ Parameters ---------- infiles (List): a list of strings of file names for the raw input data tables (str): path to CMOR tables user_input_path (str): path to user input json file Returns ------- var name (str): the name of the processed variable after processing is complete """ return handle_variables(metadata_path=user_input_path, tables=tables, table=TABLE, infiles=infiles, raw_variables=RAW_VARIABLES, write_data=write_data, outvar_name=VAR_NAME, outvar_units=VAR_UNITS, serial=kwargs.get('serial'), levels=LEVELS, logdir=kwargs.get('logdir')) # ------------------------------------------------------------------
def handle(infiles, tables, user_input_path, **kwargs): """ Transform E3SM.TS into CMIP.ts Parameters ---------- infiles (List): a list of strings of file names for the raw input data tables (str): path to CMOR tables user_input_path (str): path to user input json file Returns ------- var name (str): the name of the processed variable after processing is complete """ return handle_variables( metadata_path=user_input_path, tables=tables, table=kwargs.get('table', TABLE), infiles=infiles, raw_variables=RAW_VARIABLES, write_data=write_data, outvar_name=VAR_NAME, outvar_units=VAR_UNITS, serial=kwargs.get('serial'), positive=POSITIVE, logdir=kwargs.get('logdir'), simple=kwargs.get('simple'), outpath=kwargs.get('outpath'))
def handle(infiles, tables, user_input_path, **kwargs): return handle_variables(metadata_path=user_input_path, tables=tables, table=TABLE, infiles=infiles, raw_variables=RAW_VARIABLES, write_data=write_data, outvar_name=VAR_NAME, outvar_units=VAR_UNITS, serial=kwargs.get('serial'), logdir=kwargs.get('logdir'))
def handle(infiles, tables, user_input_path, **kwargs): return handle_variables(metadata_path=user_input_path, tables=tables, table=kwargs.get('table', TABLE), infiles=infiles, raw_variables=RAW_VARIABLES, write_data=write_data, outvar_name=VAR_NAME, outvar_units=VAR_UNITS, serial=kwargs.get('serial'), positive=POSITIVE, logdir=kwargs.get('logdir'), simple=kwargs.get('simple'), outpath=kwargs.get('outpath'))
def default_handler(infiles, tables, user_input_path, **kwargs): RAW_VARIABLES = kwargs['raw_variables'] def write_data(varid, data, timeval, timebnds, index, **kwargs): cmor.write( varid, data[ RAW_VARIABLES[0] ][index, :], time_vals=timeval, time_bnds=timebnds) return handle_variables( metadata_path=user_input_path, tables=tables, table=kwargs['table'], infiles=infiles, raw_variables=RAW_VARIABLES, write_data=write_data, outvar_name=kwargs['name'], outvar_units=kwargs['units'], serial=kwargs.get('serial'), positive=kwargs.get('positive'), logdir=kwargs.get('logdir')) # ------------------------------------------------------------------
def default_handler(infiles, tables, user_input_path, **kwargs): RAW_VARIABLES = kwargs['raw_variables'] unit_conversion = kwargs.get('unit_conversion') def write_data(varid, data, timeval=None, timebnds=None, index=None, **kwargs): if timeval is not None: if unit_conversion is not None: if unit_conversion == 'g-to-kg': outdata = data[RAW_VARIABLES[0] ][index, :] / 1000.0 elif unit_conversion == '1-to-%': outdata = data[RAW_VARIABLES[0] ][index, :] * 100.0 elif unit_conversion == 'm/s-to-kg/ms': outdata = data[RAW_VARIABLES[0] ][index, :] * 1000 elif unit_conversion == '-1': outdata = data[RAW_VARIABLES[0] ][index, :] * -1 else: raise ValueError(f"{unit_conversion} isnt a supported unit conversion for default variables") else: outdata = data[ RAW_VARIABLES[0] ][index, :] else: if unit_conversion is not None: if unit_conversion == 'g-to-kg': outdata = data[RAW_VARIABLES[0] ] / 1000.0 elif unit_conversion == '1-to-%': outdata = data[RAW_VARIABLES[0] ] * 100.0 elif unit_conversion == 'm/s-to-kg/ms': outdata = data[RAW_VARIABLES[0] ] * 1000 elif unit_conversion == '-1': outdata = data[RAW_VARIABLES[0] ] * -1 else: raise ValueError(f"{unit_conversion} isnt a supported unit conversion for default variables") else: outdata = data[ RAW_VARIABLES[0] ] if kwargs.get('simple'): return outdata if timeval: cmor.write( varid, outdata, time_vals=timeval, time_bnds=timebnds) else: cmor.write(varid, outdata) return outdata return handle_variables( metadata_path=user_input_path, tables=tables, table=kwargs['table'], infiles=infiles, raw_variables=RAW_VARIABLES, write_data=write_data, outvar_name=kwargs['name'], outvar_units=kwargs['units'], serial=kwargs.get('serial'), positive=kwargs.get('positive'), logdir=kwargs.get('logdir'), simple=kwargs.get('simple'), outpath=kwargs.get('outpath')) # ------------------------------------------------------------------