When I calculate Net primary production (NPP) for a local scale, what kind of software should I use?

I always use ENVI, ERDAS IMAGINE, ArcGIS for Desktop and IDRISI.

Is it possible to use these programs for NPP calculation?

  • I know ArcGIS offers a wide variety of customization options, and would surely let you calculate the NPP...
    – ujjwalesri
    May 23, 2011 at 10:07
  • Do you have a particular "customization option" in mind that might help the OP?
    – whuber
    May 23, 2011 at 15:31

2 Answers 2


Calculating NPP from EO data is an open research question. I will assume we talk of the land surface here, by the way. A simple and widely used way of calculating NPP is to use what is called a Production Efficiency Model, that converts incoming radiation into gross primary productivity and then subtracts respiration costs to arrive at NPP. There are many papers on this topic. One with lots of reference is to be found at this site


For this recipe, you will need:

  1. Incoming radiation (spatially explicit time series)
  2. Fraction of said radiation absorbed by the vegetation (fAPAR) (spatially explicit time series)
  3. A way of calculating stresses (some sort of relationship)
  4. Ways of calculating respiration losses (some sort of relationship)

Incoming radiation

There are many datasets available. You may also have ground measurements, and if your area is small enough, you'll be fine using points measurements.


You can use one of the many widely available fAPAR products (MODIS MxD15 products, JRCenter link description here, and I guess there are others). These are moderate resolution datasets. You can also try to convert NDVI to fAPAR (there's a linear scaling relationship).


Carbon assimilation is constrained by water deficit, temperature and nutrients (and other stuff, such disease, but let's ignore that). There are ready made relationships for these stresses.


Plants lose energy through respiration. You need to subtract those losses.

The recipe

  1. Calculate Gross Primary Productivity (GPP):

GPP = IRAD * (a*NDVI + b ) * epsilon *f

Here, IRAD is the incoming radiation. You scale NDVI linearly using two parameters (a and b, for example a=1.24, b=-0.168), or you can substitute that for an fAPAR product (you should). \epsilon is the Light Use Efficiency and f is the stress factor

  1. Get a handle on stresses. Usually, you can use meteo fields such as vapour pressure deficit and temperature to account for moisture and temperature related limitation in assimilation. You can find more about how to calcluate this in the MODIS PSN ATBD document. This gives you the \gamma in my equation. Note that in some approaches, the moisture stress is modelled as a function of soil moisture, which you may have available or not.

  2. Calculate and subtract autotrophic and heterotrophic respiration. Again, see the MODIS PSN ATBD document for examples of how this is done. Some times, autotrophic respiration is simply prescribed as a fixed percentage of GPP, other times it is split into maintentenance and growth...

  3. Get a feeling from these things using the MOD17 NPP product :)


I'm not sure I understood your question.

If you're asking if these programs have the technical ability, then, YES, ENVI, ERDAS and ArcGIS are good for calculations of AREA with a specific spectrum (given that you have as input a good aerial photo or sattelite image, with the correct bands). However, the conversion from AREA to MASS is something that (as far as I know) they cannot do without outside information (the NPP is different between annuals and trees, and even within trees).

If you're asking if these programs have a built-in function to calculate NPP then the answer is NO (unless ENVI\ERDAS have new functions in the last version which I haven't used).However, you can build yourself customized models that will calculate it for you based on the specific equations.

  • Yes, you understood what I mean. Thank you very much
    – user3063
    Oct 29, 2012 at 6:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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