HDF-EOS V2 MODIS Surface Reflectance L2 HDF File Specification Revision 6.4.9, 29-JUL-20 Product ID(s): MOD09 L2 MOD_PR09 Point of Contact: Jim Ray Science Systems and Applications, Inc. Bldg. 32, S036B NASA Goddard Space Flight Center, Code 619.0 Greenbelt, MD 20771 301-614-5497 jim@ltdri.org Principal Investigator: Eric Vermote MODIS Land Science Team Bldg. 32, S036H NASA Goddard Space Flight Center, Code 619.0 Greenbelt, MD 20771 301-614-5413 eric.f.vermote@nasa.gov SDST: Gang Ye MODIS SDST Science Systems and Applications, Inc 10210 Greenbelt Road, #577 Lanham, Maryland 20706 301-867-2089 gang.ye-1@nasa.gov The at launch MOD09 algorithm will allow the individual processing of all seven land bands in addition to the additional nine L1B coarse resolution land band amalgamations. The standard production run will process ONLY the two 250m land bands (1-2) and the 5 "native" 500m land bands (3- 7). Users MAY NOT request the processing of any other bands within the production run. This file specification is divided into three sections; a) generic constructs contained in every output product a) constructs contained within the standard DAAC production output product and b) additional file constructs that are created by the processing of all available additional bands. Note that if processing a non-standard set of bands, constructs that have no bearing on the data being processed will not be created. ECS Metadata CoreMetadata.0: The following is the MCF section that will be used to create the core metadata string. Items labeled as "NOTE" will not be part of the MCF, but have been added for clarity. GROUP = INVENTORYMETADATA GROUPTYPE = MASTERGROUP GROUP = ECSDataGranule OBJECT = LocalGranuleID Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = LocalGranuleID OBJECT = SizeMBECSDataGranule Mandatory = "FALSE" Data_Location = "DSS" NUM_VAL = 1 TYPE = "DOUBLE" END_OBJECT = SizeMBECSDataGranule OBJECT = ProductionDateTime Mandatory = "FALSE" Data_Location = "TK" NUM_VAL = 1 TYPE = "DATETIME" END_OBJECT = ProductionDateTime OBJECT = DayNightFlag Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = DayNightFlag OBJECT = ReprocessingActual Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = ReprocessingActual OBJECT = ReprocessingPlanned Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = ReprocessingPlanned END_GROUP = ECSDataGranule GROUP = MeasuredParameter OBJECT = MeasuredParameterContainer Data_Location = "NONE" Mandatory = "TRUE" CLASS = "M" GROUP = QAFlags CLASS = "M" OBJECT = ScienceQualityFlag Mandatory = "FALSE" Data_Location = "DP" NUM_VAL = 1 TYPE = "STRING" Value = "Not Investigated" END_OBJECT = ScienceQualityFlag OBJECT = AutomaticQualityFlagExplanation Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = AutomaticQualityFlagExplanation OBJECT = AutomaticQualityFlag Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = AutomaticQualityFlag OBJECT = OperationalQualityFlagExplanation Mandatory = "FALSE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = OperationalQualityFlagExplanation OBJECT = OperationalQualityFlag Mandatory = "FALSE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = OperationalQualityFlag OBJECT = ScienceQualityFlagExplanation Mandatory = "FALSE" Data_Location = "MCF" NUM_VAL = 1 TYPE = "STRING" Value = "See http://landweb.nascom.nasa.gov/cgi-bin/QA_WWW/qaFlagPage.cgi?sat=terra for the product Science Quality status." END_OBJECT = ScienceQualityFlagExplanation END_GROUP = QAFlags GROUP = QAStats CLASS = "M" OBJECT = QAPercentMissingData Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "INTEGER" END_OBJECT = QAPercentMissingData OBJECT = QAPercentOutofBoundsData Mandatory = "FALSE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "INTEGER" END_OBJECT = QAPercentOutofBoundsData END_GROUP = QAStats NOTE: There will only be 1 ParameterName field appearing within the file. OBJECT = ParameterName Mandatory = "TRUE" CLASS = "M" Data_Location = "MCF" NUM_VAL = 1 TYPE = "STRING" Value = "MODIS Atmos Corrected Surf Refl" END_OBJECT = ParameterName END_OBJECT = MeasuredParameterContainer END_GROUP = MeasuredParameter GROUP = OrbitCalculatedSpatialDomain OBJECT = OrbitCalculatedSpatialDomainContainer Data_Location = "NONE" Mandatory = "TRUE" CLASS = "M" OBJECT = EquatorCrossingDate Mandatory = "TRUE" CLASS = "M" Data_Location = "PGE" NUM_VAL = 1 TYPE = "DATE" END_OBJECT = EquatorCrossingDate OBJECT = EquatorCrossingTime Mandatory = "TRUE" CLASS = "M" Data_Location = "PGE" NUM_VAL = 1 TYPE = "TIME" END_OBJECT = EquatorCrossingTime OBJECT = OrbitNumber Mandatory = "TRUE" CLASS = "M" Data_Location = "PGE" NUM_VAL = 1 TYPE = "INTEGER" END_OBJECT = OrbitNumber OBJECT = EquatorCrossingLongitude Mandatory = "TRUE" CLASS = "M" Data_Location = "PGE" NUM_VAL = 1 TYPE = "DOUBLE" END_OBJECT = EquatorCrossingLongitude END_OBJECT = OrbitCalculatedSpatialDomainContainer END_GROUP = OrbitCalculatedSpatialDomain GROUP = CollectionDescriptionClass OBJECT = VersionID Mandatory = "TRUE" Data_Location = "MCF" NUM_VAL = 1 TYPE = "INTEGER" Value = 6 END_OBJECT = VersionID OBJECT = ShortName Mandatory = "TRUE" Data_Location = "MCF" NUM_VAL = 1 TYPE = "STRING" Value = "MOD09" END_OBJECT = ShortName END_GROUP = CollectionDescriptionClass GROUP = InputGranule OBJECT = InputPointer Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 75 TYPE = "STRING" END_OBJECT = InputPointer END_GROUP = InputGranule GROUP = SpatialDomainContainer GROUP = HorizontalSpatialDomainContainer GROUP = GPolygon OBJECT = GPolygonContainer Data_Location = "NONE" Mandatory = "TRUE" CLASS = "M" GROUP = GRingPoint CLASS = "M" OBJECT = GRingPointLongitude Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 4 TYPE = "DOUBLE" END_OBJECT = GRingPointLongitude OBJECT = GRingPointLatitude Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 4 TYPE = "DOUBLE" END_OBJECT = GRingPointLatitude OBJECT = GRingPointSequenceNo Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 4 TYPE = "INTEGER" END_OBJECT = GRingPointSequenceNo END_GROUP = GRingPoint GROUP = GRing CLASS = "M" OBJECT = ExclusionGRingFlag Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = ExclusionGRingFlag END_GROUP = GRing END_OBJECT = GPolygonContainer END_GROUP = GPolygon END_GROUP = HorizontalSpatialDomainContainer END_GROUP = SpatialDomainContainer GROUP = RangeDateTime OBJECT = RangeEndingDate Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "DATE" END_OBJECT = RangeEndingDate OBJECT = RangeEndingTime Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "TIME" END_OBJECT = RangeEndingTime OBJECT = RangeBeginningDate Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "DATE" END_OBJECT = RangeBeginningDate OBJECT = RangeBeginningTime Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "TIME" END_OBJECT = RangeBeginningTime END_GROUP = RangeDateTime GROUP = PGEVersionClass OBJECT = PGEVersion Mandatory = "TRUE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = PGEVersion END_GROUP = PGEVersionClass GROUP = AncillaryInputGranule OBJECT = AncillaryInputGranuleContainer Data_Location = "NONE" Mandatory = "TRUE" CLASS = "M" OBJECT = AncillaryInputPointer Mandatory = "FALSE" CLASS = "M" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = AncillaryInputPointer OBJECT = AncillaryInputType Mandatory = "FALSE" CLASS = "M" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = AncillaryInputType END_OBJECT = AncillaryInputGranuleContainer END_GROUP = AncillaryInputGranule GROUP = AssociatedPlatformInstrumentSensor OBJECT = AssociatedPlatformInstrumentSensorContainer Data_Location = "NONE" Mandatory = "TRUE" Class = "1" OBJECT = AssociatedPlatformShortName Data_Location = "MCF" Mandatory = "TRUE" Class = "1" TYPE = "STRING" NUM_VAL = 1 Value = "Terra" END_OBJECT = AssociatedPlatformShortName OBJECT = AssociatedInstrumentShortName Data_Location = "MCF" Mandatory = "TRUE" Class = "1" TYPE = "STRING" NUM_VAL = 1 Value = "MODIS" END_OBJECT = AssociatedInstrumentShortName OBJECT = AssociatedSensorShortName Data_Location = "MCF" Mandatory = "TRUE" Class = "1" TYPE = "STRING" NUM_VAL = 1 VALUE = "MODIS" END_OBJECT = AssociatedSensorShortName END_OBJECT = AssociatedPlatformInstrumentSensorContainer END_GROUP = AssociatedPlatformInstrumentSensor NOTE: The following will be the AdditionalAttributes set AdditionalAttribute.1 = QAPERCENTGOODQUALITY AdditionalAttribute.2 = QAPERCENTOTHERQUALITY AdditionalAttribute.3 = QAPERCENTNOTPRODUCEDCLOUD AdditionalAttribute.4 = QAPERCENTNOTPRODUCEDOTHER AdditionalAttribute.5 = QAPERCENTPOOROUTPUT250MBAND1 AdditionalAttribute.6 = QAPERCENTPOOROUTPUT250MBAND2 AdditionalAttribute.7 = QAPERCENTPOOROUTPUT500MBAND1 AdditionalAttribute.8 = QAPERCENTPOOROUTPUT500MBAND2 AdditionalAttribute.9 = QAPERCENTPOOROUTPUT500MBAND3 AdditionalAttribute.10 = QAPERCENTPOOROUTPUT500MBAND4 AdditionalAttribute.11 = QAPERCENTPOOROUTPUT500MBAND5 AdditionalAttribute.12 = QAPERCENTPOOROUTPUT500MBAND6 AdditionalAttribute.13 = QAPERCENTPOOROUTPUT500MBAND7 AdditionalAttribute.14 = QAPERCENTPOOROUTPUT1KMBAND1 AdditionalAttribute.15 = QAPERCENTPOOROUTPUT1KMBAND2 AdditionalAttribute.16 = QAPERCENTPOOROUTPUT1KMBAND3 AdditionalAttribute.17 = QAPERCENTPOOROUTPUT1KMBAND4 AdditionalAttribute.18 = QAPERCENTPOOROUTPUT1KMBAND5 AdditionalAttribute.19 = QAPERCENTPOOROUTPUT1KMBAND6 AdditionalAttribute.20 = QAPERCENTPOOROUTPUT1KMBAND7 AdditionalAttribute.21 = GRANULENUMBER AdditionalAttribute.22 = PROCESSVERSION GROUP = AdditionalAttributes OBJECT = AdditionalAttributesContainer Data_Location = "NONE" Mandatory = "FALSE" CLASS = "M" OBJECT = AdditionalAttributeName Mandatory = "FALSE" CLASS = "M" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = AdditionalAttributeName GROUP = InformationContent CLASS = "M" OBJECT = ParameterValue Mandatory = "FALSE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = ParameterValue END_GROUP = InformationContent END_OBJECT = AdditionalAttributesContainer END_GROUP = AdditionalAttributes OBJECT = LocalVersionID Mandatory = "FALSE" Data_Location = "PGE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = LocalVersionID END_GROUP = INVENTORYMETADATA ArchiveMetadata.0: The following is the MCF section that will be used to create the archive metadata string. GROUP = ARCHIVEDMETADATA GROUPTYPE = MASTERGROUP OBJECT = AlgorithmPackageAcceptanceDate Data_Location = "MCF" TYPE = "STRING" NUM_VAL = 1 Mandatory = "FALSE" Value = "1998-01-01" END_OBJECT = AlgorithmPackageAcceptanceDate OBJECT = AlgorithmPackageMaturityCode Data_Location = "MCF" TYPE = "STRING" NUM_VAL = 1 Mandatory = "FALSE" Value = "pre-launch" END_OBJECT = AlgorithmPackageMaturityCode OBJECT = AlgorithmPackageName Data_Location = "MCF" TYPE = "STRING" NUM_VAL = 1 Mandatory = "FALSE" Value = "MOD09 L2" END_OBJECT = AlgorithmPackageName OBJECT = AlgorithmPackageVersion Data_Location = "MCF" TYPE = "STRING" NUM_VAL = 1 Mandatory = "FALSE" Value = "version 4" END_OBJECT = AlgorithmPackageVersion OBJECT = SystemFileName Data_Location = "PGE" TYPE = "STRING" NUM_VAL = 75 Mandatory = "FALSE" END_OBJECT = SystemFileName OBJECT = AncillarySystemFileName Data_Location = "PGE" TYPE = "STRING" NUM_VAL = 75 Mandatory = "FALSE" END_OBJECT = AncillarySystemFileName OBJECT = LongName Data_Location = "MCF" TYPE = "STRING" NUM_VAL = 1 Mandatory = "FALSE" Value = "MODIS/Terra Atmospherically Corrected Surface Reflectance 5-Min L2 Swath 250m, 500m, 1km" END_OBJECT = LongName OBJECT = ProcessingCenter Data_Location = "MCF" TYPE = "STRING" NUM_VAL = 1 Mandatory = "FALSE" Value = "MODAPS" END_OBJECT = ProcessingCenter OBJECT = SPSOParameters Data_Location = "MCF" TYPE = "STRING" NUM_VAL = 1 Mandatory = "FALSE" Value = "2015" END_OBJECT = SPSOParameters Note that for the QualityClassPercentage arrays, the 16 values are utilzed as the following, with 0 being the leftmost value: value 0 -- % highest quality value 8 -- % atmospherically corrected value 9 -- % solar zenith >= 86 degrees value 10 -- % solar zenith >= 85 and < 86 degrees value 11 -- % missing input value 12 -- % internal constant used in place of climatological data for at least one atmospheric constant value 13 -- % correction out of bounds, pixels constrained to extreme allowable value value 14 -- % L1B data faulty value 15 -- % not processed due to deep ocean or clouds OBJECT = QualityClassPercentage1KMBand1 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage1KMBand1 OBJECT = QualityClassPercentage1KMBand2 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage1KMBand2 OBJECT = QualityClassPercentage1KMBand3 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage1KMBand3 OBJECT = QualityClassPercentage1KMBand4 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage1KMBand4 OBJECT = QualityClassPercentage1KMBand5 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage1KMBand5 OBJECT = QualityClassPercentage1KMBand6 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage1KMBand6 OBJECT = QualityClassPercentage1KMBand7 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage1KMBand7 OBJECT = QualityClassPercentage250MBand1 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage250MBand1 OBJECT = QualityClassPercentage250MBand2 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage250MBand2 OBJECT = QualityClassPercentage500MBand1 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage500MBand1 OBJECT = QualityClassPercentage500MBand2 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage500MBand2 OBJECT = QualityClassPercentage500MBand3 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage500MBand3 OBJECT = QualityClassPercentage500MBand4 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage500MBand4 OBJECT = QualityClassPercentage500MBand5 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage500MBand5 OBJECT = QualityClassPercentage500MBand6 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage500MBand6 OBJECT = QualityClassPercentage500MBand7 Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 16 Mandatory = "FALSE" END_OBJECT = QualityClassPercentage500MBand7 OBJECT = AdjacencyCorrectionAttempted Data_Location = "PGE" TYPE = "STRING" NUM_VAL = 1 Mandatory = "FALSE" END_OBJECT = AdjacencyCorrectionAttempted OBJECT = AtmosphericCorrectionAttempted Data_Location = "PGE" TYPE = "STRING" NUM_VAL = 1 Mandatory = "FALSE" END_OBJECT = AtmosphericCorrectionAttempted OBJECT = NorthBoundingCoordinate Data_Location = "PGE" TYPE = "DOUBLE" NUM_VAL = 1 Mandatory = "FALSE" END_OBJECT = NorthBoundingCoordinate OBJECT = SouthBoundingCoordinate Data_Location = "PGE" TYPE = "DOUBLE" NUM_VAL = 1 Mandatory = "FALSE" END_OBJECT = SouthBoundingCoordinate OBJECT = EastBoundingCoordinate Data_Location = "PGE" TYPE = "DOUBLE" NUM_VAL = 1 Mandatory = "FALSE" END_OBJECT = EastBoundingCoordinate OBJECT = WestBoundingCoordinate Data_Location = "PGE" TYPE = "DOUBLE" NUM_VAL = 1 Mandatory = "FALSE" END_OBJECT = WestBoundingCoordinate OBJECT = BRDFCorrectionAttempted Data_Location = "PGE" TYPE = "STRING" NUM_VAL = 1 Mandatory = "FALSE" END_OBJECT = BRDFCorrectionAttempted OBJECT = InstrumentScansProcessed Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 1 Mandatory = "FALSE" END_OBJECT = InstrumentScansProcessed OBJECT = PercentNotSea Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 1 Mandatory = "FALSE" END_OBJECT = PercentNotSea OBJECT = SeaProcessed Data_Location = "PGE" TYPE = "STRING" NUM_VAL = 1 Mandatory = "FALSE" END_OBJECT = SeaProcessed OBJECT = SCIABNORM Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 1 Mandatory = "FALSE" END_OBJECT = SCIABNORM OBJECT = SCISTATE Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 1 Mandatory = "FALSE" END_OBJECT = SCISTATE OBJECT = NUMBEROFHIGHSOLARZENITHPIXELS1KM Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 1 Mandatory = "FALSE" END_OBJECT = NUMBEROFHIGHSOLARZENITHPIXELS1KM OBJECT = AEROSOLQUANTITYCLMH Data_Location = "PGE" TYPE = "INTEGER" NUM_VAL = 4 Mandatory = "FALSE" END_OBJECT = AEROSOLQUANTITYCLMH OBJECT = DESCRrevision Data_Location = "MCF" Mandatory = "FALSE" NUM_VAL = 1 TYPE = "STRING" VALUE = "6.0" END_OBJECT = DESCRrevision OBJECT = ProductionHistory Data_Location = "PGE" Mandatory = "FALSE" NUM_VAL = 1 TYPE = "STRING" END_OBJECT = ProductionHistory OBJECT = ProcessingEnvironment Data_Location = "PGE" Mandatory = "FALSE" TYPE = "STRING" NUM_VAL = 1 END_OBJECT = ProcessingEnvironment END_GROUP = ARCHIVEDMETADATA END Standard DAAC Production Dimensions: Dimension Name Dimension_1 1km Data Lines Value # of input scan lines * 10 Dimension_2 1km Data Samples Per Line 1354 Dimension_3 500m Data Lines # of input scan lines * 20 Dimension_4 500m Data Samples Per Line 1354 * 2 Dimension_5 250m Data Lines # of input scan lines * 40 Dimension_6 250m Data Samples Per Line 1354 * 4 DataFields: All data stored within DataFields that contain the HDF attributes "scale_factor" and "add_offset" are scaled according to the following data conversion: parameter = scale_factor * (file data - add_offset) file data = (parameter / scale_factor) + add_offset A value of "Variable" indicates that this value will vary according to the granule being processed. DataField DataField_1 Name BAND20ALBEDO Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_1 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 BAND20ALBEDO units STRING 1 reflectance valid_range INT16 2 0, 5000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_2 Name BAND20 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_2 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 BAND20 units STRING 1 degrees K valid_range INT16 2 0, 33300 _FillValue INT16 1 0 scale_factor FLOAT64 1 0.01 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_3 Name BAND31 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_3 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 BAND31 units STRING 1 degrees K valid_range INT16 2 0, 37800 _FillValue INT16 1 0 scale_factor FLOAT64 1 0.01 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_4 Name BAND32 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_4 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 BAND32 units STRING 1 degrees K valid_range INT16 2 0, 41900 _FillValue INT16 1 0 scale_factor FLOAT64 1 0.01 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_5 Name 1km water_vapor Data Type UINT16 Dimensions Dimension_1, Dimension_2 DataField_5 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km water_vapor units STRING 1 g/cm^2 valid_range UINT16 2 0, 5000 _FillValue UINT16 1 0 scale_factor FLOAT64 1 0.01 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_6 Name 1km Atmospheric Optical Depth Band 1 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_6 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Atmospheric Optical Depth Band 1 units STRING 1 unitless valid_range INT16 2 0, 5000 _FillValue INT16 1 0 scale_factor FLOAT64 1 0.00001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km Note STRING 1 SDS actually contains chosen model residual values, scaled by 100000 DataField DataField_7 Name 1km Atmospheric Optical Depth Band 3 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_7 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Atmospheric Optical Depth Band 3 units STRING 1 unitless valid_range INT16 2 0, 5000 _FillValue INT16 1 0 scale_factor FLOAT64 1 0.001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_8 Name 1km Atmospheric Optical Depth Band 8 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_8 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Atmospheric Optical Depth Band 8 units STRING 1 unitless valid_range INT16 2 0, 5000 _FillValue INT16 1 0 scale_factor FLOAT64 1 0.001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km Note STRING 1 SDS actually contains angstrom exponent values, scaled by 1000 DataField DataField_9 Name 1km Atmospheric Optical Depth Model Data Type UINT8 Dimensions Dimension_1, Dimension_2 DataField_9 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Atmospheric Optical Depth Model units STRING 1 unitless valid_range UINT8 2 0, 5 _FillValue UINT8 1 0 scale_factor FLOAT64 1 1 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km Model values STRING 1 0 = no AOTR, 1 = SMKL, 2 = SMKH, 3 = DUST, 4 = URBANPOLU, 5 = URBANCLEAN DataField DataField_10 Name 1km Atmospheric Optical Depth Band CM Data Type UINT8 Dimensions Dimension_1, Dimension_2 Possible values: 0 inital value; 1 None of the 500m pixels that correspond to this 1km pixel has data that reaches either criteria for containing aerosols; 2 Pixel is over water; 3 One or more of the retrieved aerosol values has saturated (and then all are set to a fill value); 4 Pixel is cloudy or mixed or has a high band 26 value; 5 Pixel had been flagged as water, but also had positive NDVI; 6 Pixel is flagged as water and tests clear; 7 Pixel is flagged as water and tests for turbidity; 8 Snow (set in aot_filter()); 9 Bad geolocation, or high solar zenith; 10 Snow, or sunglint, or fire; 11 Bad 500m data, no aerosol retrieval; 12 Subpixel cloud (set in aot_filter()); 13 Aerosol retrieval anomalies; 14 Possible salt-pan; 15 Desert; 16 Aerosol retrieval rejection (from global_AOTR_rejection_mask.hdf); 17 Anomalous atmospheric correction in 500m cloud test; 18 AOT set to zero in routine check_correction(); 19 Adjacent to cloud 20 Anomalous atmospheric correction in 500m cloud test (b1/b3 over 2.0) 21 Flagged as clear in third pass of cloudmasking 22 Flagged as cloudy in third pass of cloudmasking DataField_10 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Atmospheric Optical Depth Band CM units STRING 1 bitmap valid_range UINT8 2 0, 22 _FillValue UINT8 1 0 QA index STRING * (an table of the 1km Atmospheric Optical Depth CM possible values, above.) Nadir Data Resolution STRING 1 1km DataField DataField_11 Name 1km Atmospheric Optical Depth Band QA Data Type UINT16 Dimensions Dimension_1, Dimension_2 Bit Description 0 cloud (high or low or subpixel) 1=cloudy, 0=not flagged as cloudy 1 clear 1=clear, 0=not flagged as clear 2 high cloud 1=cloudy, 0=not flagged as cloudy 3 low cloud 1=cloudy, 0=not flagged as cloudy 4 snow 1=snow, 0=not flagged as snow 5 fire 1=fire, 0=not flagged as fire 6 glint 1=glint, 0=not flagged as glint 7 dust 1=dust, 0=not flagged as dust 8 cloud shadow 1=cldshd, 0=not flagged as cldshd 9 adjacent to cloud 1=adjacent, 0=not flagged as adjacent 10-11 cirrus detected 00=none, 01=small, 10=average, 11=high 12 pan flag 1=salt pan, 0=no salt pan 13 criteria flag 1=criterion 2, 0=criterion 1 14 AOT value is climatological 1=yes, 0=no 15 Pixel has interpolated TR, PR or SA data 1=yes, 0=no DataField_11 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Atmospheric Optical Depth Band QA units STRING 1 bitmap Nadir Data Resolution STRING 1 1km valid_range UINT16 2 0, 65535 _FillValue UINT16 1 0 QA index STRING * (an index of the 1km Atmospheric Optical Depth QA bit field, like the bit description above.) DataField DataField_12 Name Latitude Data Type FLOAT32 Dimensions Dimension_1, Dimension_2 DataField_12 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 Latitude units STRING 1 degrees valid_range FLOAT64 2 -90.0, 90.0 _FillValue FLOAT64 1 0.0 scale_factor FLOAT64 1 1.0 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_13 Name Longitude Data Type FLOAT32 Dimensions Dimension_1, Dimension_2 DataField_13 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 Longitude units STRING 1 degrees valid_range FLOAT64 2 -180.0, 180.0 _FillValue FLOAT64 1 0.0 scale_factor FLOAT64 1 1.0 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_14 Name 250m Surface Reflectance Band 1 Data Type INT16 Dimensions Dimension_5, Dimension_6 DataField_14 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 250m Surface Reflectance Band 1 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 250m DataField DataField_15 Name 250m Surface Reflectance Band 2 Data Type INT16 Dimensions Dimension_5, Dimension_6 DataField_15 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 250m Surface Reflectance Band 2 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 250m DataField DataField_16 Name 500m Surface Reflectance Band 3 Data Type INT16 Dimensions Dimension_3, Dimension_4 DataField_16 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 500m Surface Reflectance Band 3 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 500m DataField DataField_17 Name 500m Surface Reflectance Band 4 Data Type INT16 Dimensions Dimension_3, Dimension_4 DataField_17 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 500m Surface Reflectance Band 4 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 500m DataField DataField_18 Name 500m Surface Reflectance Band 5 Data Type INT16 Dimensions Dimension_3, Dimension_4 DataField_18 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 500m Surface Reflectance Band 5 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 500m DataField DataField_19 Name 500m Surface Reflectance Band 6 Data Type INT16 Dimensions Dimension_3, Dimension_4 DataField_19 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 500m Surface Reflectance Band 6 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 500m DataField DataField_20 Name 500m Surface Reflectance Band 7 Data Type INT16 Dimensions Dimension_3, Dimension_4 DataField_20 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 500m Surface Reflectance Band 7 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 500m DataField DataField_21 Name 250m Reflectance Band Quality Data Type UINT16 Dimensions Dimension_5, Dimension_6 Bit Description 0-1 MODLAND QA bits; corrected product produced at ideal quality -- all bands (00), corrected product produced, less than ideal quality -- some or all bands (01), corrected product not produced due to cloud effects -- all bands (10), corrected product not produced for other reasons -- some or all bands, may be fill value (11) [Note that a value of (11) overrides a value of (01)]. 2-3 spare (TBD) 4-7 band 1 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 8-11 band 2 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 12 atmospheric correction performed; yes (1) or no (0) 13 adjacency correction performed; yes(1) or no (0) 14-15 spare (TBD) DataField_21 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 250m Reflectance Band Quality units STRING 1 bitmap valid_range UINT16 2 0, 16383 _FillValue UINT16 1 65535 Nadir Data Resolution STRING 1 250m QA index STRING * (an index of the 250m Reflectance Band Quality bit field, like the bit description above.) DataField DataField_22 Name 500m Reflectance Band Quality Data Type UINT32 Dimensions Dimension_3, Dimension_4 Bit Description 0-1 MODLAND QA bits; corrected product produced at ideal quality -- all bands (00), corrected product produced, less than ideal quality -- some or all bands (01), corrected product not produced due to cloud effects -- all bands (10), corrected product not produced for other reasons -- some or all bands, may be fill value (11) [Note that a value of (11) overrides a value of (01)]. 2-5 band 1 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 6-9 band 2 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 10-13 band 3 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 14-17 band 4 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 18-21 band 5 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 22-25 band 6 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 26-29 band 7 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 30 atmospheric correction performed; yes (1) or no (0) 31 adjacency correction performed; yes(1) or no (0) DataField_22 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 500m Reflectance Band Quality units STRING 1 bitmap valid_range UINT32 2 0, 4294967295 _FillValue UINT32 1 3 Nadir Data Resolution STRING 1 500m QA index STRING * (an index of the 500m Reflectance Band Quality bit field, like the bit description above.) DataField DataField_23 Name 1km Reflectance Data State QA Data Type UINT16 Dimensions Dimension_1, Dimension_2 Bit Description 0-1 cloud state; clear (00), cloudy (01), mixed (10), not set, assumed clear (11) 2 cloud shadow; yes (1) or no (0) 3-5 land/water flag; class definitions: 000 -- shallow ocean 001 -- land 010 -- ocean coastlines and land shorelines 011 -- shallow inland water 100 -- ephemeral water 101 -- deep inland water 110 -- continental/moderate ocean 111 -- deep ocean 6-7 aerosol quantity: level of uncertainty in aerosol correction; climatology (00), low (01) average (10), high (11) 8-9 cirrus detected; none (00), small (01), average (10), high (11) 10 internal cloud algorithm flag; cloudy (1) or clear (0) 11 internal fire algorithm flag; fire (1) or no fire (0) 12 MOD35 snow/ice flag; yes (1) or no (0) 13 Pixel is adjacent to cloud; yes (1) or no(0) 14 Salt pan; yes (1) or no (0) 15 internal snow algorithm flag; snow (1) or no snow (0) Note that all bit flags in this SDS can be applied to the respective 500m and 250m reflectance data. DataField_23 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Reflectance Data State QA units STRING 1 bitmap valid_range UINT16 2 0, 49151 _FillValue UINT16 1 65535 Nadir Data Resolution STRING 1 1km QA index STRING * (an index of the 1km Reflectance Data State QA bit field, like the bit description above, but with percentages of the pixels in each state as well.) Additional File Constructs DataField DataField_24 Name 500m Surface Reflectance Band 1 Data Type INT16 Dimensions Dimension_3, Dimension_4 DataField_24 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 500m Surface Reflectance Band 1 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 500m DataField DataField_25 Name 500m Surface Reflectance Band 2 Data Type INT16 Dimensions Dimension_3, Dimension_4 DataField_25 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 500m Surface Reflectance Band 2 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 500m DataField DataField_26 Name 1km Surface Reflectance Band 1 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_26 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 1 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_27 Name 1km Surface Reflectance Band 2 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_27 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 2 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_28 Name 1km Surface Reflectance Band 3 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_28 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 3 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_29 Name 1km Surface Reflectance Band 4 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_29 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 4 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_30 Name 1km Surface Reflectance Band 5 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_30 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 5 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_31 Name 1km Surface Reflectance Band 6 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_31 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 6 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_32 Name 1km Surface Reflectance Band 7 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_32 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 7 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_33 Name 1km Surface Reflectance Band 8 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_33 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 8 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_34 Name 1km Surface Reflectance Band 9 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_34 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 9 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_35 Name 1km Surface Reflectance Band 10 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_35 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 10 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_36 Name 1km Surface Reflectance Band 11 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_36 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 11 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_37 Name 1km Surface Reflectance Band 12 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_37 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 12 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_38 Name 1km Surface Reflectance Band 13 Data Type INT16 Dimensions Dimension_1, Dimension_2 Note; "1km Surface Reflectance Band 13" contains corrected L1B band 13lo DataField_38 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 13 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_39 Name 1km Surface Reflectance Band 14 Data Type INT16 Dimensions Dimension_1, Dimension_2 Note; "1km Surface Reflectance Band 14" contains corrected L1B band 14lo DataField_39 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 14 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_40 Name 1km Surface Reflectance Band 15 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_40 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 15 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_41 Name 1km Surface Reflectance Band 16 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_41 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 16 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_42 Name 1km Surface Reflectance Band 26 Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_42 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Surface Reflectance Band 26 units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km DataField DataField_43 Name 1km Reflectance Band Quality Data Type UINT32 Dimensions Dimension_1, Dimension_2 Bit Description 0-1 MODLAND QA bits; corrected product produced at ideal quality -- all bands (00), corrected product produced, less than ideal quality -- some or all bands (01), corrected product not produced due to cloud effects -- all bands (10), corrected product not produced for other reasons -- some or all bands, may be fill value (11) [Note that a value of (11) overrides a value of (01)]. 2-5 band 1 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 6-9 band 2 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 10-13 band 3 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 14-17 band 4 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 18-21 band 5 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 22-25 band 6 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 26-29 band 7 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 30 atmospheric correction performed; yes (1) or no (0) 31 adjacency correction performed; yes(1) or no (0) DataField_43 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Reflectance Band Quality units STRING 1 bitmap valid_range UINT32 2 0, 4294967295 _FillValue UINT32 1 3 Nadir Data Resolution STRING 1 1km QA index STRING * (an index of the 1km Reflectance Band Quality bit field, like the bit description above.) DataField DataField_44 Name 1km b8-15 Reflectance Band Quality Data Type UINT32 Dimensions Dimension_1, Dimension_2 Bit Description 0-3 band 8 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 4-7 band 9 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 8-11 band 10 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 12-15 band 11 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 16-19 band 12 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 20-23 band 13 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 24-27 band 14 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds 28-31 band 15 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds DataField_44 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km b8-15 Reflectance Band Quality units STRING 1 bitmap valid_range UINT32 2 0, 4294967295 _FillValue UINT32 1 3 Nadir Data Resolution STRING 1 1km QA index STRING * (an index of the 1km b8-15 Reflectance Band Quality bit field, like the bit description above.) DataField DataField_45 Name 1km b16 Reflectance Band Quality Data Type UINT8 Dimensions Dimension_1, Dimension_2 Bit Description 0-3 unused 4-7 band 16 data quality, four bit range; 0 = highest quality 7 = noisy detector 8 = dead detector, data interpolated in L1B 9 = solar zenith >= 86 degrees 10 = solar zenith >= 85 and < 86 degrees 11 = missing input 12 = internal constant used in place of climatological data for at least one atmospheric constant 13 = correction out of bounds, pixel constrained to extreme allowable value 14 = L1B data faulty 15 = not processed due to deep ocean or clouds DataField_45 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km b16 Reflectance Band Quality units STRING 1 bitmap valid_range UINT8 2 0, 255 _FillValue UINT8 1 3 Nadir Data Resolution STRING 1 1km QA index STRING * (an index of the 1km b16 Reflectance Band Quality bit field, like the bit description above.) DataField DataField_46 Name 1km Band 3 Path Radiance Data Type INT16 Dimensions Dimension_1, Dimension_2 DataField_46 HDF Attributes: Attribute Data Quantity Value Type long_name STRING 1 1km Band 3 Path Radiance units STRING 1 reflectance valid_range INT16 2 -100, 16000 _FillValue INT16 1 -28672 scale_factor FLOAT64 1 0.0001 scale_factor_err FLOAT64 1 0.0 add_offset FLOAT64 1 0.0 add_offset_err FLOAT64 1 0.0 calibrated_nt INT32 1 5 Nadir Data Resolution STRING 1 1km