albedo2: Partitions surface albedo between ground and canopy albedo

View source: R/radiationtools.R

albedo2R Documentation

Partitions surface albedo between ground and canopy albedo

Description

albedo2 is used to calculate either bare ground or canopy albedo from surface albedo.

Usage

albedo2(alb, fr, ground = TRUE)

Arguments

alb

a SpatRaster object, two-dimensional array or matrix of surface albedo values (range 0 - 1) derived using albedo() or albedo_adjust().

fr

a SpatRaster object, two-dimensional array or matrix of fractional canopy cover as returned by canopy().

ground

a logical value indicating whether to return ground albedo (TRUE) or canopy albedo (FALSE).

Details

If alb is a SpatRaster object, a SpatRaster object is returned. For calculation of net radiation, both ground and canopy albedo may be are needed. Areas with high canopy cover typically have lower albedo values than areas with low canopy cover and mean values for these can be derived from parts of the image with very high or very low canopy cover. It is assumed that albedo of the image as returned by albedo() is a function of both, weighted by canopy cover, such that canopy albedos are closer to the image-derived albedos in areas of high canopy cover and ground albedos closer to the image-derived albedo in areas with low canopy cover.

Value

If ground is TRUE, a SpatRaster object or a two-dimensional array of numeric values representing ground albedo (range 0 to 1).

If ground is FALSE, a SpatRaster object or two-dimensional array of numeric values representing canopy albedo (range 0 to 1).

Examples

library(terra)
# ======================
# Calculate image albedo
# ======================
alb <- albedo(aerial_image[,,1], aerial_image[,,2], aerial_image[,,3],
            aerial_image[,,4])
# ======================
# Calculate canopy cover
# ======================
l <- lai(aerial_image[,,3], aerial_image[,,4])
fr <- canopy(l)
# ===========================================
# Calculate and plot ground and canopy albedo
# ===========================================
ag <- albedo2(alb, fr)
ac <- albedo2(alb, fr, ground = FALSE)
par(mfrow=c(2, 1))
plot(if_raster(ag, dtm1m), main = "Ground albedo", col = gray(0:255/255))
plot(if_raster(ac, dtm1m), main = "Canopy albedo", col = gray(0:255/255))

ilyamaclean/microclima documentation built on Sept. 5, 2024, 8:37 p.m.