Skip to content

Commit

Permalink
Change variable length strings in h5 products to fixed.
Browse files Browse the repository at this point in the history
Signed-off-by: Martin Raspaud <martin.raspaud@smhi.se>
  • Loading branch information
mraspaud committed Jun 3, 2015
1 parent 2099c77 commit c9c2ba0
Showing 1 changed file with 21 additions and 19 deletions.
40 changes: 21 additions & 19 deletions mpop/satin/msg_hdf.py
Original file line number Diff line number Diff line change
Expand Up @@ -459,7 +459,7 @@ def convert2pps(self):

retv.cloudtype = InfoObject()
retv.cloudtype.info["output_value_nameslist"] = ctype_lut
retv.cloudtype.info["CLASS"] = "IMAGE"
retv.cloudtype.info["CLASS"] = np.string_("IMAGE")
retv.cloudtype.info["IMAGE_VERSION"] = np.string_("1.2")
retv._refs[("cloudtype", "PALETTE")] = np.string_("PALETTE")
retv.cloudtype.info["description"] = np.string_(
Expand All @@ -477,7 +477,7 @@ def convert2pps(self):

retv.phase_flag = InfoObject()
retv.phase_flag.info["output_value_nameslist"] = phase_lut
retv.phase_flag.info["CLASS"] = "IMAGE"
retv.phase_flag.info["CLASS"] = np.string_("IMAGE")
retv.phase_flag.info["IMAGE_VERSION"] = np.string_("1.2")
retv._refs[("phase_flag", "PALETTE")] = np.string_("PHASE_PALETTE")
retv.phase_flag.info["description"] = np.string_(
Expand Down Expand Up @@ -834,14 +834,15 @@ def convert2pps(self):

retv._md["satellite"] = self.satid
retv._md["time_slot"] = self.nominal_product_time
retv._md["description"] = "MSG SEVIRI Cloud Top Temperature & Height"
retv._md["description"] = np.string_(
"MSG SEVIRI Cloud Top Temperature & Height")
retv.processingflag_lut = []

retv.cloudiness = InfoObject()
retv.cloudiness.info["description"] = \
"MSG SEVIRI effective cloudiness (%)"
retv.cloudiness.info["gain"] = 0.0
retv.cloudiness.info["intercept"] = 0.0
retv.cloudiness.info["gain"] = np.float32(0.0)
retv.cloudiness.info["intercept"] = np.float32(0.0)
retv.cloudiness.info["no_data_value"] = np.uint8(255)
retv.cloudiness.data = self.cloudiness.astype('B')
retv._projectables.append("cloudiness")
Expand All @@ -855,13 +856,14 @@ def convert2pps(self):
retv._keys.append("HEIGHT_PALETTE")

retv.height = InfoObject()
retv.height.info["description"] = "MSG SEVIRI cloud top height (m)"
retv.height.info["gain"] = 200.0
retv.height.info["intercept"] = 0.0
retv.height.info["description"] = np.string_(
"MSG SEVIRI cloud top height (m)")
retv.height.info["gain"] = np.float32(200.0)
retv.height.info["intercept"] = np.float32(0.0)
retv.height.info["no_data_value"] = np.uint8(255)
retv.height.data = ((self.height - 0.0) /
200.0).filled(255).astype('B')
retv.height.info["CLASS"] = "IMAGE"
retv.height.info["CLASS"] = np.string("IMAGE")
retv.height.info["IMAGE_VERSION"] = np.string_("1.2")
retv._refs[("height", "PALETTE")] = np.string_("HEIGHT_PALETTE")
retv._projectables.append("height")
Expand All @@ -876,13 +878,13 @@ def convert2pps(self):

retv.pressure = InfoObject()
retv.pressure.info["description"] = \
"MSG SEVIRI cloud top pressure (hPa)"
retv.pressure.info["gain"] = 25.0
retv.pressure.info["intercept"] = 0.0
np.string_("MSG SEVIRI cloud top pressure (hPa)")
retv.pressure.info["gain"] = np.float32(25.0)
retv.pressure.info["intercept"] = np.float32(0.0)
retv.pressure.info["no_data_value"] = np.uint8(255)
retv.pressure.data = ((self.pressure - 0.0) /
25.0).filled(255).astype('B')
retv.pressure.info["CLASS"] = "IMAGE"
retv.pressure.info["CLASS"] = np.string("IMAGE")
retv.pressure.info["IMAGE_VERSION"] = np.string_("1.2")
retv._refs[("pressure", "PALETTE")] = np.string_("PRESSURE_PALETTE")
retv._projectables.append("pressure")
Expand All @@ -897,22 +899,22 @@ def convert2pps(self):

retv.temperature = InfoObject()
retv.temperature.info["description"] = \
"MSG SEVIRI cloud top temperature (K)"
retv.temperature.info["gain"] = 1.0
retv.temperature.info["intercept"] = 100.0
np.string_("MSG SEVIRI cloud top temperature (K)")
retv.temperature.info["gain"] = np.float32(1.0)
retv.temperature.info["intercept"] = np.float32(100.0)
retv.temperature.info["no_data_value"] = np.uint8(255)
retv.temperature.data = ((self.temperature - 100.0) /
1.0).filled(255).astype('B')
retv.temperature.info["CLASS"] = "IMAGE"
retv.temperature.info["CLASS"] = np.string("IMAGE")
retv.temperature.info["IMAGE_VERSION"] = np.string_("1.2")
retv._refs[("temperature", "PALETTE")] = np.string_(
"TEMPERATURE_PALETTE")
retv._projectables.append("temperature")

retv.processing_flag = InfoObject()
# retv.processing_flag.info["output_value_nameslist"] = processing_lut
retv.processing_flag.info[
"description"] = 'MSG SEVIRI bitwise quality/processing flags'
retv.processing_flag.info["description"] = np.string_(
'MSG SEVIRI bitwise quality/processing flags')
retv.processing_flag.data = ctth_procflags2pps(self.processing_flags)
retv._projectables.append("processing_flag")

Expand Down

0 comments on commit c9c2ba0

Please sign in to comment.