ECOsystem Spaceborne Thermal Radiometer Experiment on Space Station
Personal tools
You are here: Home / FAQ

Frequently Asked Questions

Q: Why does the “daily” ECOSTRESS ET product seem to be 2x as high as my comparison daily ET?

A: The “daily” ECOSTRESS ET is actually *daytime* ET. Your comparison daily ET may be including night, so those values would be roughly half of the daytime (e.g., 12 hours of night with 0 ET). You’ll need to do an hours of daylight calculation to make a direct comparison. 

Q: How much did the ECOSTRESS Mission Cost?

A: The ECOSTRESS mission was cost capped at $30M. This includes the cost of building the instrument and conducting the science. 

Q: How much do ECOSTRESS Data Cost?

A: ECOSTRESS data are freely available. Links for downloading the data are on the “Data” tab of this website.

Q: What is the make and model of the thermal camera on ECOSTRESS?
A: ECOSTRESS was designed, developed and built by NASA's Jet Propulsion Laboratory. 

Q: What is the operating temperature of the ECOSTRESS detector array?

A: The detectors operate at 65K (degrees Kelvin). More information on the specification of the instrument are available

Q: How do I know when ECOSTRESS will acquire over my site?

A: The “Observation Map” tool allows you to choose a point on the earth and it returns the overflights of the ISS.  The tool only shows the possible acquisition times.  We are currently updating the tool for additional years.

Q: Who are the main people working on the ECOSTRESS Mission?

A: See

Q: What other multispectral (3+ spectral bands) are planned for the future?

A: The chart below shows three future multispectral missions (LSTM Copernicus, SBG, TRISHNA)

 other missions

Q: How long will ECOSTRESS continue to operate?

A: None of the parts of the ECOSTRESS instrument are near their end of life, whether ECOSTRESS continues to be operated is determined by NASA Headquarters as part of the Senior Review process.

Q: Is ECOSTRESS in a sun synchronous orbit?

A: A sun synchronous orbit is when the satellite passes over any given location at the same time on each overpass. ECOSTRESS is in a precessing orbit which means it acquires data at different times of day allowing it to determine how plants respond to water stress throughout the day.

Q: Do I need to make a special request for data over my site?

A: ECOSTRESS is normally always on over land. 

Q: Where do I go to find if there is ECOSTRESS data over my site?

A: The best place to start is the “Data” tab on the ECOSTRESS website

Q: Can I use an ECOSTRESS gallery image for my presentation?

A: Unless otherwise noted, images and video on JPL public web sites (public sites ending with a address) may be used for any purpose without prior permission, subject to the special cases noted in the Image Policy.   Use the proper credit information provided in the image policy.

Q: Why are ECOSTRESS ET values greater than my eddy covariance measurements?

A: Check a few things:

  1. Cloud mask: sometimes clouds cause low LST, and hence a false high ET retrieval when the cloud mask misses a cloud (related, you should look at the in-situ light measurements for cloudiness—if the day is really cloudy, or the ET values are unusually high, consider excluding that day);
  2. Quality flag/uncertainty: check them;
  3. Site heterogeneity: highly heterogeneous sites may have outside-pixel contamination;
  4. Eddy covariance energy balance closure: did you close your EBC? Typically, eddy flux ET may need to be increased to deal with EBC (e.g.,; see processing code, e.g., at github under "Robust Ecosystem Water and Energy Fluxes").

Q: How does ECOSTRESS ignore the clouds or rain storms?

A: ECOSTRESS cannot see through the clouds and relies on clear skies.  However, since the instrument is on the ISS and based on its orbits ECOSTRESS passes over the same area fairly frequently for a given day.

Q: What is the make and model of the thermal camera on ECOSTRESS?

A: ECOSTRESS was designed, developed and built by NASA's Jet Propulsion Laboratory and is an unique custom built, one of a kind instrument. 

Q: Will the data be available on a subscription based system?

A: There is no subscription based system and NASA provides the data freely available via the Land Processes Distributed Active Archive Center (LP DAAC). link File

Q: How do I interpret the data quality flag in the Level-2 Land Surface Temperature and Emissivity product (ECO2LSTE)?

A: The ECO2LSTE product contains a 16-bit Quality Control (QC) flag (see section 2.4 in the user guide at User need to unpack the bits in the data to interpret the flag. This can be done using the ‘bitget’ function in either Python, MatLab, or R for example. 

Two use case scenarios:

  1. I only want pixels that have the best quality, clear-sky data (e.g. to be used for validation purposes). 
    • Read bits 1 and 2 in the QC bit flag. Look for pixels where bit 1 = 0 and bit 2 = 0. These pixels correspond to best quality data with low uncertainty in the retrieval, and use the most clear-sky conservative cloud mask, i.e. cloud detection is overestimated (see next QA question for more information on the cloud mask).
    • In addition, check bits 15 and 16 that represent the LST uncertainty, or directly read the LST_err uncertainty variable in the h5 data file that provides pixel level uncertainty estimate based on an uncertainty model.
  2. I am using the data mostly for qualitative analysis and can tolerate some level of uncertainty.
    • Read bits 1 and 2 in the QC bit flag. Look for pixels where bit 1 = 0 and bit 2 = 0, or bit 1 = 1 and bit 2 = 0. The pixels represent both best quality and nominal quality pixels that are flagged based on outputs from the retrieval and atmospheric conditions detailed in the user guide.

Q: How do I apply a Level-2 ECO2LSTE data quality flag to filter only good pixels, grid the data, and output to a geotiff file?

A: This piece of matlab code reads in ECOSTRESS L2 and L1GEO data, sets all bad quality data to nans, grids the output to a specified study area, and outputs the data to a geotiff to be read in by GIS software.

Step 1: Read in LST and QC data from ECO2LSTE swath product (fL2 = L2 hdf5 filename, fL1geo = L1GEO hdf5 filename);

LST_eco = hdf5read(fL2,'/SDS/LST','V71Dimensions',true);

LST_eco = double(LST_eco).*0.02;

QC = hdf5read(fL2,'/SDS/QC','V71Dimensions',true);

Lat_eco = double(hdf5read(fL1geo,'/Geolocation/latitude','V71Dimensions',true));

Lon_eco = double(hdf5read(fL1geo,'/Geolocation/longitude','V71Dimensions',true));

Step 2: Screen for poor quality pixels using QC, set to nan (or some other value)

% Bits 0 and 1

test1 = bitget(QC,1);

test2 = bitget(QC,2);

QCtestgood = (test1==0 & test2==0);  % Best quality

LST_eco(~QCtestgood) = nan; 

Step 3: Geolocate data to a WGS84 equal-angle grid with resolution of ~70m, e.g. over Los Angeles

%Limits of study area

minlat = 33.5; maxlat = 34.35;

minlon = -118.74; maxlon = -117.6;

lats = minlat:0.0007:maxlat; lons = minlon:0.0007:maxlon;

[latg,long] = meshgrat(lats,lons);

latg = flipud(latg);

LSTgrid_eco = griddata(Lat_eco,Lon_eco,LST_eco,latg,long,'cubic'); 

Step 4: Output data to a geotiff file

latlim = [min(latg(:)) max(latg(:))];

lonlim = [min(long(:)) max(long(:))];

rasterSize = size(latg);

R = georefcells(latlim,lonlim,rasterSize,'ColumnsStartFrom','north');


Q: How do I interpret the Level-2 cloud mask product (ECO2CLOUD) and are there any alternative methods for cloud screening?

A: Similar to the ECO2LSTE QC flag, the ECOCLOUD product consists of one 8-bit flag representing outputs from the cloud mask detection algorithm.

Three use case scenarios:

  1. I want the ‘clearest’ pixels, with few cloud shadows and cloud edge effects (e.g. for validation purposes).
    • Use ECO2LSTE QC case 1 scenario above. The cloud mask product is not required in this case since the most clear sky conservative result is included in the ECO2LSTE QC (bit 1 = 0 and bit 2 = 0). This result uses a combination of both cloud tests and includes region-growing around detected cloud pixels by 5 pixels, and morphological filling in ‘holes’ between clouds in order to remove cloud shadowing and thermal adjacency effects.
  2. I can tolerate some degree of cloud omission error, cloud edge, and shadowing.
    • Read bit 1 first. If bit 1 = 1 then the cloud mask was determined based on good quality L1B data.
    • Read bit 3. If bit 3 = 1 then a cloud was detected either with band 4 brightness threshold test or the band 4 – 5 thermal difference tests.

Q: Why is the geolocation less accurate over some images?

A: ECOSTRESS is mounted on the International Space Station (ISS). The ISS doesn't measure it's position and pointing as accurately as we need it to for geolocation of 70m pixels (it doesn’t need to for its own orbit control). So we use the ISS positioning as a first estimate, and do a secondary geolocation correction using the Landsat basemap. All the scenes in an orbit are used for the correction, and unfortunately factors such as high cloud cover over a significant portion of the orbit - resulting in insufficient matches - can also affect clear areas within that orbit. A metadata item you can look for in the geolocation file is "/L1BGEOMetadata/OrbitCorrectionPerformed". If it is listed as {false}, that means that the correction wasn't performed. Other fields of interest are: "/StandardMetadata/AutomaticQualityFlag" and "/StandardMetadata/AutomaticQualityFlagExplanation". 

Q: Why does Landsat TIR at 100 m look sharper than ECOSTRESS TIR at 70 m?

A: Landsat downscales their TIR data to 30 m using bicubic interpolation to match the spatial scale of the VNIR data. Also, ECOSTRESS is a scanner (push-whisk) so the pixel resolution on swath edges degrades from 70m to 90-110m. Landsat is a pushbroom so has consistent pixel resolution, but smaller swath width.