MODIS Thermal Anomalies/Fire Version 6 File Specification
Document Creation: 08.01.2013

PGE Version	: 6.0.1
PGE Release	: 08.??.2013

This document specifies the format for the Terra MODIS Level 3 Thermal
Anomalies/Fire Daily Global 1km SIN Grid product (MOD14A1).

Point of Contact:   
	Louis Giglio (PI)
	University of Maryland
	NASA Goddard Space Flight Center, Code 606.3
	Greenbelt, MD 20771
	lgiglio@umd.edu
	(301) 405-0064

	Chris Justice
	University of Maryland
	cjustice@umd.edu


1. ECS Granule Metadata

1.1 CoreMetadata.0

ECS Core metadata are stored in a single HDF attribute as a large string of
PVL text.

Name					ECS Type
----					--------
LocalGranuleID				string

SizeMBECSDataGranule			double

ProductionDateTime			DATETIME

DayNightFlag				string

ReprocessingActual			string

ReprocessingPlanned			string

LocalVersionID				string

ScienceQualityFlag			string

AutomaticQualityFlagExplanation		string

AutomaticQualityFlag			string

OperationalQualityFlagExplanation	string

OperationalQualityFlag			string

ScienceQualityFlagExplanation		string

QAPercentMissingData			integer

QAPERCENTOUTOFBOUNDSDATA		integer

QAPERCENTINTERPOLATEDDATA		integer

EquatorCrossingDate			DATE

EquatorCrossingTime			TIME

OrbitNumber				integer

EquatorCrossingLongitude		double

VersionID				integer

ShortName				string

GRingPointLongitude			double
	
GRingPointLatitude			double

GRingPointSequenceNo			integer

ExclusionGRingFlag			string

RangeEndingDate				DATE

RangeEndingTime				TIME
	
RangeBeginningDate			DATE

RangeBeginningTime			TIME

InputGranule				string

InputPointer				string

PGEVersion				string

AncillaryInputPointer			string

AncillaryInputType			string

AssociatedSensorShortName		string

AssociatedPlatformShortName		string

AssociatedInstrumentShortName		string


The following will be the AdditionalAttributes set:

     AdditionalAttribute.1 = QAPERCENTGOODQUALITY (integer)
     AdditionalAttribute.2 = QAPERCENTOTHERQUALITY (integer)
     AdditionalAttribute.3 = HORIZONTALTILENUMBER (integer)
     AdditionalAttribute.4 = VERTICALTILENUMBER (integer)
     AdditionalAttribute.5 = TileID (integer)
     



1.2 ArchiveMetadata.0

ECS Archive metadata are also stored in a single HDF attribute as a large
string of PVL text.


Name				ECS Type
----				--------
AlgorithmPackageAcceptanceDate	string

AlgorithmPackageMaturityCode	string

AlgorithmPackageName		string

AlgorithmPackageVersion		string

GEOANYABNORMAL			string

INSTRUMENTNAME			string

SystemFileName			string

AncillarySystemFileName		string

LongName			string

ProcessingCenter		string

SPSOParameters			string

NorthBoundingCoordinate		double

SouthBoundingCoordinate		double

EastBoundingCoordinate		double

WestBoundingCoordinate		double

CHARACTERISTICBINSIZE		double

InstrumentScansProcessed	integer

PercentLand			integer

scistate			integer

sciabnorm			integer

CloudPixels			integer

NoFirePixels			integer

UnknownPixels			integer

WaterPixels			integer

DESCRrevision			string

ProductionHistory		string

ProcessingEnvironment		string



2. Product-Specific Granule Metadata

The following fields are stored as individual HDF attributes.  Many are
duplicates of the ECS Core and Archive metadata fields to prevent users from
having to parse metadata stored in the confusing PVL format mandated by the
ECS.


Name			Type	Description
----			----	-----------
FirePix			int32	Daily number of fire pixels detected in tile.
				("Data Days"-element vector.)

CloudPix		int32	Daily number of cloud pixels over land in
				tile.  ("Data Days"-element vector.)

UnknownPix		int32	Daily number of pixels classified as "unknown"
				in tile.  ("Data Days"-element vector.)

MissingPix		int32	Daily number of pixels classified as "missing"
				in tile.  ("Data Days"-element vector.)

Dates			string	String containing space-delimited dates
				(normally eight) of the daily layers of the
				product Scientific Data Sets.  Format of
				individual dates is YYYY-MM-DD.

MaxT21			float32	Maximum fire-pixel band 21 brightness
				temperature (kelvins).

ProcessVersionNumber	string	Internal version number (e.g. "5.1.0").

StartDate		string	Start date of 8-day product period;
				format is YYYY-MM-DD.

EndDate			string	End date of 8-day product period; format
				is YYYY-MM-DD.

HorizontalTileNumber	int16	Tile horizontal coordinate (range 0 - 35)

VerticalTileNumber	int16	Tile vertical coordinate (range 0 - 17)



3. Structural Metadata
    This string will be populated automatically by HDF-EOS.

Grid Structure:  MODIS_Grid_Daily_Fire

Data Fields:
	FireMask, QA, MaxFRP, sample

    Dimensions:

	Dimension Name				Value

	Number of Days:MODIS_Grid_Daily_Fire	"Data Days"

	YDim:MODIS_Grid_Daily_Fire		"Data Rows"

	XDim:MODIS_Grid_Daily_Fire		"Data Columns"

    Corner Locations:

	Corner                Values

	UpperLeftPointMtrs    (Variable, Variable)

	LowerRightPointMtrs   (Variable, Variable)

    Geographic Grid Projection Parameters:

        Sinusoidal Projection
	    Projection	      GCTP_SNSOID
	    ProjParam[0]          6371007.181
	    ProjParam[1 to 7]     0.0
	    ProjParam[8]          21600
	    ProjParam[9]          0.0
	    ProjParam[10]         1.0
	    ProjParam[11 to 12]   0.0
	    Spherecode            -1
	    GridOrigin            HDFE_GD_UL


4. Scientific Data Sets


Name		Type	Dimensions
-----		----	----------
FireMask	uint8	Number of Days, XDim, YDim

Description:
The fire mask is the principle component of the Level 2 MODIS fire product. In
it, individual 1-km pixels are assigned one of nine classes as below.  The fire
mask is stored as an 8 (or less) by 1200 by 1200, 8-bit unsigned integer SDS
named "FireMask". The SDS contains eight successive daily fire masks for a
specific MODIS tile. Each of these daily masks is essentially a maximum value
composite (see important note below) of the Level 2 fire product pixel classes
for those swaths overlapping the MODIS tile during that day. Product files
containing less than eight days of data will occasionally be encountered during
time periods of missing data and should be handled in ingest software.

SDS Attributes:

Attribute		Type	Quantity	Value
---------		----	--------	--------
valid_range		uint8	2		0, 9
_FillValue		uint8	1		0

Value	Description
-----	-----------
  0	missing input data
  1	not processed (obsolete; not used in post-launch product)
  2	not processed (other reason)
  3	non-fire water
  4	cloud
  5	non-fire land
  6	unknown
  7	fire (low confidence)
  8	fire (nominal confidence)
  9	fire (high confidence)

Note: For Collection 5 and earlier, each daily mask was _precisely_ a
maximum value composite of the Level 2 fire product pixel classes.  For
Collection 6 this rule had to be modified slightly because of the potential
for fire pixels to be detected over water (i.e., offshore gas flares).
Consequently, non-fire water pixels (class 3) will now override
cloud pixels (class 4) occuring over water, just as non-fire land pixels
(class 5) have always been assigned higher priority than cloud pixels occuring
over land.

-----------------------------------------------------------------------------

Name		Type		Dimensions
--------	-------		-----------------
QA		uint8		Number of Days, XDim, YDim

Description:
Each of the daily fire masks has a corresponding simple QA layer. Each layer
is a 1200 by 1200 8-bit unsigned integer array.  Only six unique QA values
are possible, with the meanings shown below:

Bit	Description
---	-----------
0-1	land/water state
		00 = water
		01 = coast
		10 = land
		11 = missing data

2	day/night observation (0 = night, 1 = day)

For missing-data grid cells (bit pattern 11 in bits 0-1) bit 2 will always
be clear.


SDS Attributes:

Attribute	Type	Quantity	Value
------------	-------	------------	--------
valid_range	uint8	2		0, 6
units		string	9		bit field


-----------------------------------------------------------------------------

Name		Type		Dimensions
--------	-------		-----------------
MaxFRP		uint32		Number of Days, XDim, YDim

Description:
The maximum fire radiative power of all fire pixels falling within each grid
cell is provided on a daily basis in the "MaxFRP" SDS. Here the FRP values
have been scaled by a factor of 10 and stored as a 32-bit signed integer.
Multiply these scaled values by 0.1 to retrieve the maximum FRP in MW.

Attribute		Type		Quantity	Value
------------		--------	------------	--------
units			string		2		MW
scale_factor		float32		1		0.1


-----------------------------------------------------------------------------

Name		Type		Dimensions
--------	-------		-----------------
sample		uint16		Number of Days, XDim, YDim

Description:
For all grid cells assigned one of the fire pixel classes (values 7, 8, or 9),
the position of the fire pixel within the scan is recorded on a daily basis in
a 1200 by 1200 16-bit unsigned integer SDS named "sample".  Sample values have
a range of 0 to 1353.  All grid cells assigned one of the non-fire classes in
the "FireMask" SDS will be filled with a sample value of 0.

Attribute		Type		Quantity	Value
------------		--------	------------	--------
valid_range		uint8		2		0, 1353