Ejemplo n.º 1
0
 def test_get_default_fill_value(self):
     self.assertEqual(-127, DefaultData.get_default_fill_value(np.int8))
     self.assertEqual(255, DefaultData.get_default_fill_value(np.uint8))
     self.assertEqual(-32767, DefaultData.get_default_fill_value(np.int16))
     self.assertEqual(np.uint16(-1),
                      DefaultData.get_default_fill_value(np.uint16))
     self.assertEqual(-2147483647,
                      DefaultData.get_default_fill_value(np.int32))
     self.assertEqual(4294967295,
                      DefaultData.get_default_fill_value(np.uint32))
     self.assertEqual(-9223372036854775806,
                      DefaultData.get_default_fill_value(np.int64))
     self.assertEqual(np.float32(9.96921E36),
                      DefaultData.get_default_fill_value(np.float32))
     self.assertEqual(9.969209968386869E36,
                      DefaultData.get_default_fill_value(np.float64))
Ejemplo n.º 2
0
    def _add_fill_value_attributes(variable, target_variable_name):
        if "brightness_temperature" in target_variable_name:
            offset = variable.attrs["OFFSET"]
            scale_factor = variable.attrs["SCALE_FACTOR"]
            variable.attrs["_FillValue"] = -32768.0 * scale_factor + offset
            return

        if "insitu." in target_variable_name:
            variable.attrs["_FillValue"] = -32768
            return

        if "source" in variable.attrs:
            variable.attrs["_FillValue"] = 2e20
            return

        if not "FillValue" in variable.attrs:
            default_fill = DefaultData.get_default_fill_value(variable.dtype)
            scale_factor, offset = MmdReader.get_scale_and_offset(variable)
            if scale_factor != 1.0 or offset != 0.0:
                variable.attrs["_FillValue"] = default_fill * scale_factor + offset
            else:
                variable.attrs["_FillValue"] = default_fill
            return
Ejemplo n.º 3
0
 def _create_vector_uint8_variable(num_matchups):
     array = DefaultData.create_default_vector(num_matchups, np.uint8)
     variable = Variable(["matchup"], array)
     variable.attrs["_FillValue"] = DefaultData.get_default_fill_value(
         np.uint8)
     return variable
Ejemplo n.º 4
0
 def test_add_fill_value_attributes_no_scaling_no_fill_value_float32(self):
     variable = self._create_variable(np.float32)
     MmdReader._add_fill_value_attributes(variable, "don't care")
     self.assertEqual(DefaultData.get_default_fill_value(np.float32),
                      variable.attrs["_FillValue"])