I hope to be working with MODIS data, mostly the V6 250m reflectance files (e.g., MOD09GQ). The naming convention of these files makes it easy to identify which .hdf covers my area of interest (i.e., MOD09GQ.A2016341.h18v04.006.2016343073521, where h18v04 is the corresponding tile location).

I will need to supplement the reflectance data with other datasets, such as the cloud cover product MOD35_L2. The naming convention for these .hdf files do not include the tile location, but instead a 24hour data start time (i.e., MOD035_l2.A2016341.1125.006.2016341174916, where 1125 is the data capture time).

How do I know which supplimentary .hdf file to download, that corresponds to the location of my gridded data?

My guess is that the gridded reflectance products metadata indicate a capture time for each corner. Does this metadata time correlate with the associated supplementary MODIS products?

Will I therefore need to repeat the process for the other three corners as well, to cover the whole area?

Is there an easier way to identify which suplolimentary .hdr files I need?


There is no straightforward connection between acquisition time and geographic location (I asked a similar question not so long ago). However, online tools (e.g. https://oceancolor.gsfc.nasa.gov/cgi/browse.pl) exist to query these files.

It's a bit of a hacky workaround, but you can write a script to interact with these tools non interactively. The browse.pl tool is tailored to different collections than what you're interested though, but acquisition time should be the same.

However, as aldo_tapia also mentioned, note that MOD09GQ already contains cloud information, and lots of other products are available with the same grid.


I recommend you to use QA band instead MOD35_L2. From MOD09GQ product details:

MOD09GQ.005 250-meter Surface Reflectance Data QA Descriptions (16-bit)

Bit No. Parameter Name  Bit   Comb. Sur_refl_qc_250m
 2–3    cloud state     00    clear
                        01    cloudy
                        10    mixed
                        11    not set; assumed clear

You can translate bit flags and use that information as a layer.

Besides, MOD35_L2 has global coverage. You will not find it distributed by horizontal and vertical tiles, only by acquisition time.

  • Thanks for your reply, aldo_tapia. I will certainly look into translating the bit flags for the cloud masking aspect of the project. However, the cloud masks were only one such supplementary data required, the MOD35_L2 product was used as a (in retrospect now defunct!) specific example. Others include 1km reflectance/emissive data (e.g., MOD021KM), snow cover (e.g., MYD10_L2), and then their respective geolocation data (e.g., MOD03). All of which are distributed by acquisition time. Any advice will be greatly appreciated. – Sam Jan 5 '17 at 14:19
  • For snow cover use MOD10A1 and for emissivity MOD11B1, all gridded data. The scope of my recommendation is give you data took at the same time using only one satellite for a unique H-V tile. Level 2 and 3 data has a different distribution (spatially and temporally). But, all depends of what you want to do with data or objective of your work. – aldo_tapia Jan 5 '17 at 14:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.