diff --git a/src/land/ghcn_snod2ioda.py b/src/land/ghcn_snod2ioda.py index cf863f118..fe7960071 100755 --- a/src/land/ghcn_snod2ioda.py +++ b/src/land/ghcn_snod2ioda.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 # -# (C) Copyright 2021 NOAA/NWS/NCEP/EMC +# (C) Copyright 2021-2022 NOAA/NWS/NCEP/EMC # # This software is licensed under the terms of the Apache Licence Version 2.0 # @@ -27,7 +27,7 @@ ("latitude", "float"), ("longitude", "float"), ("height", "float"), - ("datetime", "string") + ("dateTime", "string") ] obsvars = { @@ -35,14 +35,13 @@ } AttrData = { - 'converter': os.path.basename(__file__), } DimDict = { } VarDims = { - 'totalSnowDepth': ['nlocs'], + 'totalSnowDepth': ['Location'], } @@ -70,9 +69,8 @@ def _read(self): self.varAttrs[iodavar, iconv.OvalName()]['coordinates'] = 'longitude latitude' self.varAttrs[iodavar, iconv.OerrName()]['coordinates'] = 'longitude latitude' self.varAttrs[iodavar, iconv.OqcName()]['coordinates'] = 'longitude latitude' - self.varAttrs[iodavar, iconv.OvalName()]['units'] = 'mm' - self.varAttrs[iodavar, iconv.OerrName()]['units'] = 'mm' - self.varAttrs[iodavar, iconv.OqcName()]['units'] = 'unitless' + self.varAttrs[iodavar, iconv.OvalName()]['units'] = 'm' + self.varAttrs[iodavar, iconv.OerrName()]['units'] = 'm' def assignValue(colrowValue, df400): if colrowValue == '' or pd.isnull(colrowValue): @@ -162,14 +160,14 @@ def assignValue(colrowValue, df400): my_date = datetime.strptime(startdate, "%Y%m%d") start_datetime = my_date.strftime('%Y-%m-%d') base_datetime = start_datetime + 'T18:00:00Z' - AttrData['date_time_string'] = base_datetime for i in range(len(vals)): if vals[i] >= 0.0: - errs[i] = 40.0 + errs[i] = 0.04 + vals[i] = 0.001*vals[i] times[i] = base_datetime # add metadata variables - self.outdata[('datetime', 'MetaData')] = times + self.outdata[('dateTime', 'MetaData')] = times self.outdata[('stationIdentification', 'MetaData')] = sites self.outdata[('latitude', 'MetaData')] = lats self.outdata[('longitude', 'MetaData')] = lons @@ -180,8 +178,7 @@ def assignValue(colrowValue, df400): self.outdata[self.varDict[iodavar]['errKey']] = errs self.outdata[self.varDict[iodavar]['qcKey']] = qflg - DimDict['nlocs'] = len(self.outdata[('datetime', 'MetaData')]) - AttrData['nlocs'] = np.int32(DimDict['nlocs']) + DimDict['Location'] = len(self.outdata[('dateTime', 'MetaData')]) def main(): diff --git a/src/land/imsfv3_scf2ioda.py b/src/land/imsfv3_scf2ioda.py index 800e5a6b1..bd805d72a 100644 --- a/src/land/imsfv3_scf2ioda.py +++ b/src/land/imsfv3_scf2ioda.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 # -# (C) Copyright 2021 NOAA/NWS/NCEP/EMC +# (C) Copyright 2020-2022 NOAA/NWS/NCEP/EMC # # This software is licensed under the terms of the Apache Licence Version 2.0 # which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. @@ -28,7 +28,7 @@ ("latitude", "float"), ("longitude", "float"), ("height", "float"), - ("datetime", "string") + ("dateTime", "string") ] obsvars = { @@ -37,15 +37,14 @@ } AttrData = { - 'converter': os.path.basename(__file__), } DimDict = { } VarDims = { - 'snowCoverFraction': ['nlocs'], - 'totalSnowDepth': ['nlocs'], + 'snowCoverFraction': ['Location'], + 'totalSnowDepth': ['Location'], } @@ -71,22 +70,19 @@ def _read(self): if iodavar == 'snowCoverFraction': self.varAttrs[iodavar, iconv.OvalName()]['units'] = '1' self.varAttrs[iodavar, iconv.OerrName()]['units'] = '1' - self.varAttrs[iodavar, iconv.OqcName()]['units'] = 'unitless' self.varAttrs[iodavar, iconv.OvalName()]['_FillValue'] = -999. self.varAttrs[iodavar, iconv.OerrName()]['_FillValue'] = -999. self.varAttrs[iodavar, iconv.OqcName()]['_FillValue'] = -999 if iodavar == 'totalSnowDepth': - self.varAttrs[iodavar, iconv.OvalName()]['units'] = 'mm' - self.varAttrs[iodavar, iconv.OerrName()]['units'] = 'mm' - self.varAttrs[iodavar, iconv.OqcName()]['units'] = 'unitless' + self.varAttrs[iodavar, iconv.OvalName()]['units'] = 'm' + self.varAttrs[iodavar, iconv.OerrName()]['units'] = 'm' self.varAttrs[iodavar, iconv.OvalName()]['_FillValue'] = -999. self.varAttrs[iodavar, iconv.OerrName()]['_FillValue'] = -999. self.varAttrs[iodavar, iconv.OqcName()]['_FillValue'] = -999 # read netcdf file ncd = nc.Dataset(self.filename) - AttrData["sensor"] = "IMS Multisensor" lons = ncd.variables['lon'][:] lats = ncd.variables['lat'][:] oros = ncd.variables['oro'][:] @@ -103,7 +99,7 @@ def _read(self): qdflg = 0*sndv.astype('int32') errsc = 0.0*sncv errsd = 0.0*sndv - errsd[:] = 80.0 + errsd[:] = 0.08 ncd.close() times = np.empty_like(sncv, dtype=object) @@ -113,13 +109,13 @@ def _read(self): my_date = datetime.strptime(str_date, "%Y%m%d") start_datetime = my_date.strftime('%Y-%m-%d') base_datetime = start_datetime + 'T18:00:00Z' - AttrData['date_time_string'] = base_datetime for i in range(len(lats)): times[i] = base_datetime + sndv[i] = 0.001*sndv[i] # add metadata variables - self.outdata[('datetime', 'MetaData')] = times + self.outdata[('dateTime', 'MetaData')] = times self.outdata[('latitude', 'MetaData')] = lats self.outdata[('longitude', 'MetaData')] = lons self.outdata[('height', 'MetaData')] = oros @@ -136,8 +132,7 @@ def _read(self): self.outdata[self.varDict[iodavar]['valKey']] = sndv self.outdata[self.varDict[iodavar]['errKey']] = errsd self.outdata[self.varDict[iodavar]['qcKey']] = qdflg - DimDict['nlocs'] = len(self.outdata[('datetime', 'MetaData')]) - AttrData['nlocs'] = np.int32(DimDict['nlocs']) + DimDict['Location'] = len(self.outdata[('dateTime', 'MetaData')]) def main(): diff --git a/src/land/owp_snow_obs.py b/src/land/owp_snow_obs.py index 475ed3e10..af2235035 100644 --- a/src/land/owp_snow_obs.py +++ b/src/land/owp_snow_obs.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# (C) Copyright 2019 UCAR +# (C) Copyright 2019-2022 UCAR # This software is licensed under the terms of the Apache Licence Version 2.0 # which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. @@ -32,11 +32,11 @@ to IODA output files. """) # obs file name -> ioda file name -output_var_dict = {'snow_depth_m': 'snow_depth', 'snow_water_equivalent_mm': 'swe'} +output_var_dict = {'snow_depth_m': 'totalSnowDepth', 'snow_water_equivalent_mm': 'snowWaterEquivalent'} # ioda file_name -> ioda file units -output_var_unit_dict = {'snow_depth': 'm', 'swe': 'mm'} +output_var_unit_dict = {'totalSnowDepth': 'm', 'snowWaterEquivalent': 'kg m-2'} one = 1.00000000000000 -output_conversion_factor = {'snow_depth': one, 'swe': one} +output_conversion_factor = {'totalSnowDepth': one, 'snowWaterEquivalent': one} col_types = { 'StnObjID': np.int32, @@ -48,25 +48,23 @@ 'rec_elev_m': np.float32, 'latitude': np.float64, 'longitude': np.float64, - 'datetime': str, + 'dateTime': str, 'variable_name': str} location_key_list = [ ("latitude", "float"), ("longitude", "float"), ("height", "integer"), - ("datetime", "string"), ] + ("dateTime", "string"), ] dim_dict = {} var_dims = { - 'snow_depth': ['nlocs'], - 'swe': ['nlocs'], } + 'totalSnowDepth': ['Location'], + 'snowWaterEquivalent': ['Location'], } attr_data = { - 'converter': os.path.basename(__file__), - 'converter_version': 0.3, - 'nvars': np.int32(len(var_dims)), } + } fill_value = 9.96921e+36 @@ -108,7 +106,6 @@ def __init__( def _read(self): # print(f"Reading: {self.file_in}") - self.attr_data['obs_file'] = str(self.file_in.split('/')[-1]) # use pandas to get the data lined up obs_df = pd.read_csv(self.file_in, header=0, index_col=False, dtype=col_types) @@ -135,7 +132,7 @@ def _read(self): .sort_index() .reset_index()) - self.attr_data['ref_date_time'] = ( + self.attr_data['datetimeReference'] = ( pd.to_datetime(obs_df.datetime[0]) .round('D') .strftime('%Y-%m-%dT%H:%M:%SZ')) @@ -173,14 +170,13 @@ def _read(self): wh_not_var_other = np.where(np.isnan(obs_df[f'ObsValue {var_other}']))[0] # 1-D obs_df = obs_df.drop(wh_not_var_other).reset_index() - self.data[('datetime', 'MetaData')] = obs_df.datetime.values + self.data[('dateTime', 'MetaData')] = obs_df.datetime.values self.data[('latitude', 'MetaData')] = obs_df.latitude.values.astype('float32') self.data[('longitude', 'MetaData')] = obs_df.longitude.values.astype('float32') self.data[('height', 'MetaData')] = obs_df.rec_elev_m.values.astype('float32') - self.data[('station_id', 'MetaData')] = obs_df.StnID.values + self.data[('stationIdentification', 'MetaData')] = obs_df.StnID.values self.var_metadata[('height', 'MetaData')]['units'] = 'm' - self.var_metadata[('station_id', 'MetaData')]['units'] = 'unitless' for obs_var, ioda_var in output_var_dict.items(): # define the ioda variable @@ -190,9 +186,9 @@ def _read(self): # define ioda meta/ancillary for name in [iconv.OvalName(), iconv.OerrName(), iconv.OqcName()]: self.var_metadata[ioda_var, name]['coordinates'] = 'longitude latitude' - self.var_metadata[ioda_var, name]['units'] = output_var_unit_dict[ioda_var] # not really for Oqc... but + if(iconv.OqcName()!=name): + self.var_metadata[ioda_var, name]['units'] = output_var_unit_dict[ioda_var] # not really for Oqc... but # just kidding for OqcName... a lazy tag along above, fix now (less code to overwrite) - self.var_metadata[ioda_var, iconv.OqcName()]['units'] = 'unitless' # the data conv_fact = output_conversion_factor[ioda_var] self.data[self.var_dict[ioda_var]['valKey']] = ( @@ -206,9 +202,7 @@ def _read(self): self.data[self.var_dict[ioda_var]['qcKey']] = ( mask_nans(obs_df[f'PreQC {obs_var}'].values * conv_fact)) - nlocs = len(self.data[('datetime', 'MetaData')]) - dim_dict['nlocs'] = nlocs - attr_data['nlocs'] = np.int32(nlocs) + dim_dict['Location'] = len(self.data[('dateTime', 'MetaData')]) def write(self): writer = iconv.IodaWriter(self.file_out, location_key_list, dim_dict) diff --git a/src/land/smap9km_ssm2ioda.py b/src/land/smap9km_ssm2ioda.py index 3a478bd33..fccf28f4b 100644 --- a/src/land/smap9km_ssm2ioda.py +++ b/src/land/smap9km_ssm2ioda.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 # -# (C) Copyright 2022 EMC/NCEP/NWS/NOAA +# (C) Copyright 2020-2022 EMC/NCEP/NWS/NOAA # # This software is licensed under the terms of the Apache Licence Version 2.0 # which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. @@ -25,7 +25,7 @@ locationKeyList = [ ("latitude", "float"), ("longitude", "float"), - ("datetime", "string") + ("dateTime", "string") ] obsvars = { @@ -33,14 +33,13 @@ } AttrData = { - 'converter': os.path.basename(__file__), } DimDict = { } VarDims = { - 'soilMoistureVolumetric': ['nlocs'], + 'soilMoistureVolumetric': ['Location'], } @@ -65,20 +64,18 @@ def _read(self): self.varAttrs[iodavar, iconv.OqcName()]['coordinates'] = 'longitude latitude' self.varAttrs[iodavar, iconv.OvalName()]['units'] = 'm3 m-3' self.varAttrs[iodavar, iconv.OerrName()]['units'] = 'm3 m-3' - self.varAttrs[iodavar, iconv.OqcName()]['units'] = 'unitless' # open input file name ncd = nc.Dataset(self.filename, 'r') # set and get global attributes - self.satellite = "SMAP" - self.sensor = "radar and radiometer" - AttrData["satellite"] = self.satellite - AttrData["sensor"] = self.sensor + self.satellite = 789 + self.sensor = 432 + AttrData["platform"] = np.array([self.satellite], dtype=np.int32) + AttrData["sensor"] = np.array([self.sensor], dtype=np.int32) data = ncd.groups['Soil_Moisture_Retrieval_Data'].variables['soil_moisture'][:] vals = data[:].ravel() _FillValue = ncd.groups['Soil_Moisture_Retrieval_Data'].variables['soil_moisture'].getncattr('_FillValue') - self.varAttrs['soilMoistureVolumetric', iconv.OvalName()]['_FillValue'] = _FillValue valid_max = ncd.groups['Soil_Moisture_Retrieval_Data'].variables['soil_moisture'].getncattr('valid_max') valid_min = ncd.groups['Soil_Moisture_Retrieval_Data'].variables['soil_moisture'].getncattr('valid_min') @@ -115,29 +112,25 @@ def _read(self): qflg = qflg.astype('int32') sflg = sflg.astype('int32') vegop = vegop.astype('int32') - AttrData['date_time_string'] = base_datetime for i in range(len(lons)): times[i] = base_datetime errs[i] = 0.04 # add metadata variables - self.outdata[('datetime', 'MetaData')] = times + self.outdata[('dateTime', 'MetaData')] = times self.outdata[('latitude', 'MetaData')] = lats self.outdata[('longitude', 'MetaData')] = lons self.varAttrs[('latitude', 'MetaData')]['units'] = 'degree_north' self.varAttrs[('longitude', 'MetaData')]['units'] = 'degree_east' - self.outdata[('surfaceFlag', 'MetaData')] = sflg - self.varAttrs[('surfaceFlag', 'MetaData')]['units'] = 'unitless' + self.outdata[('earthSurfaceType', 'MetaData')] = sflg self.outdata[('vegetationOpacity', 'MetaData')] = vegop - self.varAttrs[('vegetationOpacity', 'MetaData')]['units'] = 'unitless' for iodavar in ['soilMoistureVolumetric']: self.outdata[self.varDict[iodavar]['valKey']] = vals self.outdata[self.varDict[iodavar]['errKey']] = errs self.outdata[self.varDict[iodavar]['qcKey']] = qflg - DimDict['nlocs'] = len(self.outdata[('datetime', 'MetaData')]) - AttrData['nlocs'] = np.int32(DimDict['nlocs']) + DimDict['Location'] = len(self.outdata[('dateTime', 'MetaData')]) def main(): diff --git a/src/land/smap_ssm2ioda.py b/src/land/smap_ssm2ioda.py index d828d6060..88352893b 100644 --- a/src/land/smap_ssm2ioda.py +++ b/src/land/smap_ssm2ioda.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 # -# (C) Copyright 2021 EMC/NCEP/NWS/NOAA +# (C) Copyright 2021-2022 EMC/NCEP/NWS/NOAA # # This software is licensed under the terms of the Apache Licence Version 2.0 # which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. @@ -25,7 +25,7 @@ locationKeyList = [ ("latitude", "float"), ("longitude", "float"), - ("datetime", "string") + ("dateTime", "string") ] obsvars = { @@ -33,14 +33,13 @@ } AttrData = { - 'converter': os.path.basename(__file__), } DimDict = { } VarDims = { - 'soilMoistureVolumetric': ['nlocs'], + 'soilMoistureVolumetric': ['Location'], } @@ -65,15 +64,14 @@ def _read(self): self.varAttrs[iodavar, iconv.OqcName()]['coordinates'] = 'longitude latitude' self.varAttrs[iodavar, iconv.OvalName()]['units'] = 'm3 m-3' self.varAttrs[iodavar, iconv.OerrName()]['units'] = 'm3 m-3' - self.varAttrs[iodavar, iconv.OqcName()]['units'] = 'unitless' # open input file name ncd = nc.Dataset(self.filename, 'r') # set and get global attributes - self.satellite = "SMAP" - self.sensor = "radar and radiometer" - AttrData["satellite"] = self.satellite - AttrData["sensor"] = self.sensor + satelliteID = 789 + sensorID = 432 + AttrData["platform"] = np.array([satelliteID], dtype=np.int32) + AttrData["sensor"] = np.array([sensorID], dtype=np.int32) data = ncd.groups['Soil_Moisture_Retrieval_Data'].variables['soil_moisture'][:] vals = data[:].ravel() @@ -107,7 +105,6 @@ def _read(self): lons = lons.astype('float32') errs = errs.astype('float32') qflg = qflg.astype('int32') - AttrData['date_time_string'] = base_datetime for i in range(len(lons)): @@ -124,7 +121,7 @@ def _read(self): times[i] = base_datetime # add metadata variables - self.outdata[('datetime', 'MetaData')] = times + self.outdata[('dateTime', 'MetaData')] = times self.outdata[('latitude', 'MetaData')] = lats self.outdata[('longitude', 'MetaData')] = lons @@ -133,8 +130,7 @@ def _read(self): self.outdata[self.varDict[iodavar]['errKey']] = errs self.outdata[self.varDict[iodavar]['qcKey']] = qflg - DimDict['nlocs'] = len(self.outdata[('datetime', 'MetaData')]) - AttrData['nlocs'] = np.int32(DimDict['nlocs']) + DimDict['Location'] = len(self.outdata[('dateTime', 'MetaData')]) def main(): diff --git a/src/land/smos_ssm2ioda.py b/src/land/smos_ssm2ioda.py index c59645334..0dd501d7f 100644 --- a/src/land/smos_ssm2ioda.py +++ b/src/land/smos_ssm2ioda.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 # -# (C) Copyright 2021 NOAA/NWS/NCEP/EMC +# (C) Copyright 2020-2022 NOAA/NWS/NCEP/EMC # # This software is licensed under the terms of the Apache Licence Version 2.0 # which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. @@ -24,7 +24,7 @@ locationKeyList = [ ("latitude", "float"), ("longitude", "float"), - ("datetime", "string") + ("dateTime", "string") ] obsvars = { @@ -32,14 +32,13 @@ } AttrData = { - 'converter': os.path.basename(__file__), } DimDict = { } VarDims = { - 'soilMoistureVolumetric': ['nlocs'], + 'soilMoistureVolumetric': ['Location'], } @@ -65,14 +64,14 @@ def _read(self): self.varAttrs[iodavar, iconv.OqcName()]['coordinates'] = 'longitude latitude' self.varAttrs[iodavar, iconv.OvalName()]['units'] = 'm3 m-3' self.varAttrs[iodavar, iconv.OerrName()]['units'] = 'm3 m-3' - self.varAttrs[iodavar, iconv.OqcName()]['units'] = 'unitless' # open input file name ncd = nc.Dataset(self.filename, 'r') # set and get global attributes - AttrData["observation_type"] = "surface soil moisture" - AttrData["satellite"] = "SMOS" - AttrData["sensor"] = "MIRAS" + satelliteID = 46 + sensorID = 176 + AttrData["platform"] = np.array([satelliteID], dtype=np.int32) + AttrData["sensor"] = np.array([sensorID], dtype=np.int32) lons = ncd.variables['longitude'][:] lats = ncd.variables['latitude'][:] @@ -112,11 +111,10 @@ def _read(self): base_date = datetime(2000, 1, 1) + timedelta(days=int(ddys[i])) dt = base_date + timedelta(seconds=int(secs[i])) base_datetime = dt.strftime("%Y-%m-%dT%H:%M:%SZ") - AttrData['date_time_string'] = base_datetime times[i] = base_datetime # add metadata variables - self.outdata[('datetime', 'MetaData')] = times + self.outdata[('dateTime', 'MetaData')] = times self.outdata[('latitude', 'MetaData')] = lats self.outdata[('longitude', 'MetaData')] = lons @@ -125,8 +123,7 @@ def _read(self): self.outdata[self.varDict[iodavar]['errKey']] = errs self.outdata[self.varDict[iodavar]['qcKey']] = qflg - DimDict['nlocs'] = len(self.outdata[('datetime', 'MetaData')]) - AttrData['nlocs'] = np.int32(DimDict['nlocs']) + DimDict['Location'] = len(self.outdata[('dateTime', 'MetaData')]) def main(): diff --git a/test/testoutput/ghcn_snod_20200228.nc b/test/testoutput/ghcn_snod_20200228.nc index bbd010d03..3bf983018 100644 --- a/test/testoutput/ghcn_snod_20200228.nc +++ b/test/testoutput/ghcn_snod_20200228.nc @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7fa912f6fb85dc0ba3367275667ffc6f17ef27d33bd492b9b4e7d7af1f9c6347 -size 24459 +oid sha256:e7aec8c7bd286a95549410b831dd0131bd60806a09a82e0a178c9a606c9d42d5 +size 19129 diff --git a/test/testoutput/imsfv3_scf.nc b/test/testoutput/imsfv3_scf.nc index 0795e3958..86049769a 100644 --- a/test/testoutput/imsfv3_scf.nc +++ b/test/testoutput/imsfv3_scf.nc @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8b0560a9f19ff661314b56a32d3de6bf6724f98178597ed97d1b4e87b5a96fc0 -size 225977 +oid sha256:f25ca6b394f700e2bbf9c94cdb26b6bd8a28558e442da17fc8c7ee70f4584629 +size 67978 diff --git a/test/testoutput/owp_snow_obs_dup_thin_err_fn.nc b/test/testoutput/owp_snow_obs_dup_thin_err_fn.nc index dc34a1d30..cd94e6a47 100644 --- a/test/testoutput/owp_snow_obs_dup_thin_err_fn.nc +++ b/test/testoutput/owp_snow_obs_dup_thin_err_fn.nc @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:48f799714c45565a43b978e4dfa061c670f40bdf5dbed9d7f8a973e30280e108 -size 15506 +oid sha256:ee3fb6135d098fa8369a823f07eda8cb0525f7c68ddfc395285f6f4c98a38b0e +size 15132 diff --git a/test/testoutput/smap9km_ssm.nc b/test/testoutput/smap9km_ssm.nc index 19a07ff61..12b01bdbc 100644 --- a/test/testoutput/smap9km_ssm.nc +++ b/test/testoutput/smap9km_ssm.nc @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2a6130cdc3c98c2fc7d43eb774ebb56972e628e8714eff82f8b7a5531a4381a7 -size 1838559 +oid sha256:960a6960bf20e8afcec7c2ce477be954d01a466706ef5f12b87e073acd777f83 +size 365485 diff --git a/test/testoutput/smap_ssm.nc b/test/testoutput/smap_ssm.nc index c1cf1be39..8c3554422 100644 --- a/test/testoutput/smap_ssm.nc +++ b/test/testoutput/smap_ssm.nc @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:35fd624fe434d27d8da39ce9d2530d742b20bf6f749794f347defc7ab31d22fc -size 414111 +oid sha256:fc248873b5754d75a04e65883b1685d4219eb6a904d35a37148326971bfb3acb +size 98819 diff --git a/test/testoutput/smos_ssm.nc b/test/testoutput/smos_ssm.nc index c83960d26..59e06ad68 100644 --- a/test/testoutput/smos_ssm.nc +++ b/test/testoutput/smos_ssm.nc @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:beda15a0b7b5433a3dc1ae9922c78d679f841bd962a75452bbd67c9d2aa32ae4 -size 1236129 +oid sha256:188d0dc68afd4b0635a93591102e9f7378c48f168350231b202a03a6bdcc57ea +size 374775