Skip to content

rjoomen/StratiPHOLIAGE

Repository files navigation

StratiPHOLIAGE

Stratified Photosynthesis and Light Absorption Model

Details

StratiPHOLIAGE is a model that calculates light absorption and photosynthesis for trees in closed canopies. For a full description, see the model documentation.

A related 3D model for trees in canopy gaps is PHOLIAGE.

Literature

Studies that have used the model:

Selaya et al., 2008. Biomass allocation and leaf life span in relation to light interception by tropical forest plants during the first years of secondary succession

Selaya et al., 2007. Above-ground Biomass Investments and Light Interception of Tropical Forest Trees and Lianas Early in Succession

Implementation details

Lazarus / Delphi

The original version was written in Delphi. This is the version ported to Lazarus / FPC.

Main changes

  • Supports multiple platforms (Linux, Windows, and macOS).
  • Reads *.xls, *.xlsx, and *.ods files natively (previous version used Windows-only Excel OLE automation).
  • Diagnostic graphing in tab 'Results' has been removed (too much work to port).
  • Removed Windows/Delphi-specific multithreading code (too much work to port).

For further details, see the changelog.

Numerical differences between versions

Model result differ slightly between Linux/Win32 builds and Win64 builds. The Linux/Win32 results are exactly the same as the results from the last Delphi version (2.0.1). The reason results on Win64 are different is that on Win64 the 80-bit floating point Extended datatype is not supported. The Math unit therefore internally uses Double (64 bit) instead of Extended, leading to minute differences. This is no problem, the loss in precision is negligible, and the StratiPHOLIAGE model itself uses Double for all calculations anyway. For details see for example this forum post, and the source code of the Math unit.

Running

Binary releases are available under the releases tab.

The model documentation has some hints on program usage.

Compiling/Modifying

  1. Install Lazarus
  2. Install FPSpreadSheet
  3. Check out the sources ('Clone or download' button above)
  4. Open project file StratiPHOLIAGE.lpi in Lazarus and press F9 to run.