foursail {ccrtm}R Documentation

Optimized R implementation of foursail (4SAIL)

Description

The foursail (or 4SAIL) radiative transfer model is commonly used to simulate bidirectional reflectance distribution functions within vegetation canopies. Foursail (4SAIL) refers to "Scattering by Arbitrary Inclined Leaves" in a 4-stream model. The four-streams represents the scattering and absorption of upward, downward and two directional radiative fluxes with four linear differential equations in a 1-D canopy. The model was initially developed by Verhoef (1984), who extended work by Suits (1971) 4-steam model.

Usage

foursail(rho, tau, bgr, param)

Arguments

rho

input leaf reflectance from 400-2500nm (can be measured or modeled)

tau

input leaf transmittance from 400-2500nm (can be measured or modeled)

bgr

background reflectance. Usual input is soil reflectance spectra from 400-2500nm (can be measured or modeled)

param

A named vector of SAIL parameter values (note: program ignores case):

  • [1] = Leaf angle distribution function parameter a (LIDFa)

  • [2] = Leaf angle distribution function parameter b (LIDFb)

  • [3] = Leaf angle distribution function type (see ?lidfFun)

  • [4] = Leaf area index (LAI)

  • [5] = Hot spot effect parameter (hspot)

  • [6] = Solar zenith angle (tts)

  • [7] = Observer zenith angle (tto)

  • [8] = Sun-sensor azimuth angle (psi)

Value

spectra matrixwith 4 reflectance factors and canopy transmission for wavelengths 400 to 2500nm:

References

Suits, G.H., 1971. The calculation of the directional reflectance of a vegetative canopy. Remote Sens. Environ. 2, 117-125.

Verhoef, W. (1984). Light scattering by leaf layers with application to canopy reflectance modeling: The SAIL model. Remote Sens. Environ. 16, 125-141.

Examples

## lower-level implementation example
## see ?fRTM for the typical mode of simulation
## e.g. fRTM(rho~prospectd+foursail) 

## 1) get parameters
params<-getDefaults(rho~prospectd+foursail) 
## getDefaults("foursail") will also work
bestpars<-params$foursail$best
## ensure the vector is named
names(bestpars) <- rownames(params$foursail)

## 2) get leaf reflectance and transmission 
rt<-fRTM(rho+tau~prospectd)

## 3) get soil reflectance to model background reflectance
data(soil)

## a linear mixture soil model 
bgRef<- bestpars["psoil"]*soil[,"drySoil"] + (1-bestpars["psoil"])*soil[,"wetSoil"]

## 4) run 4SAIL
foursail(rt[,"rho"],rt[,"tau"],bgRef,bestpars)


[Package ccrtm version 0.1.6 Index]