View source: R/radiationtools.R
longwaveveg | R Documentation |
longwaveveg
is used to calculate a high-resolution dataset of the net longwave radiation flux density emmited from the Earth, accounting for canopy effects.
longwaveveg(h, tc, p = 101300, n, x, fr, svv = 1, albc = 0.23, co = 1.24)
h |
a single numeric value, SpatRaster object, two-dimensional array or matrix of specific humidities (kg kg{-1} ). |
tc |
a single numeric value, SpatRaster object, two-dimensional array or matrix of temperatures (ºC). |
p |
an optional single numeric value, SpatRaster object, two-dimensional array or matrix of sea-level pressures (Pa). |
n |
a single numeric value, SpatRaster object, two-dimensional array or matrix of fractional cloud cover (range 0 - 1). Technically assumed to be 1 - ratio of measured to clear-sky radiation. |
x |
a SpatRaster object, two-dimensional array or matrix of numeric values representing the ratio of vertical to horizontal projections of leaf foliage as returned by |
fr |
a SpatRaster object, two-dimensional array or matrix of fractional canopy cover as returned by |
svv |
an optional SpatRaster object, two-dimensional array or matrix of values representing the proportion of isotropic radiation received by a surface partially obscured by topography relative to the full hemisphere underneath vegetation as returned by |
albc |
an optional single value, SpatRaster object, two-dimensional array or matrix of values representing the albedo(s) of the vegetated canopy as returned by |
co |
parameter relationship between vapor pressure and temperature near the ground Brutsaert (1975). |
If svv
is a SpatRaster object, a SpatRaster is returned.
If no values for p
are provided, a default value of 101300 Pa, typical of
sea-level pressure, is assumed. If no value for albc
is provided, then
the entire area is assumed to have a default value of 0.23, typical of
well-watered grass. If single values of h
, tc
, p
, n
or
albc
are given, then the entire area is assumed to have the same values.
If no value for svv
is provided then the entire hemisphere is assumed to
be in view.
a single numeric value, SpatRaster object or two-dimensional array of values representing net longwave radiation (MJ per metre squared per hour).
The function longwavetopo()
returns the net longwave radiation above vegetation.
The function humidityconvert()
can be used to derive specific humidity from other measures of humidity.
cloudfromrad()
can be used to derive derive cloud cover from radiation.
library(terra)
# =================================
# Extract data for 2010-05-24 11:00
# =================================
h <- microvars$humidity[564]
p <- microvars$pressure[564]
n <- microvars$cloudcover[264]
e <- ext(169000, 170000, 12000, 13000)
tcr <- rast(temp100[,,564])
ext(tcr) <- e
tc <- resample(tcr, rast(dtm1m)) # Resample temperature raster to 1m
# =========================
# calculate input variables
# =========================
x <- leaf_geometry(rast(veg_hgt))
l <- lai(aerial_image[,,3], aerial_image[,,4])
l <- lai_adjust(l, rast(veg_hgt))
svv <- skyviewveg(rast(dtm1m), l, x)
fr <- canopy(l)
alb <- albedo(aerial_image[,,1], aerial_image[,,2], aerial_image[,,3],
aerial_image[,,4])
albc <- albedo2(alb, fr, ground = FALSE)
# =====================================
# calculate and plot longwave radiation
# =====================================
netlong1m <-longwaveveg(h, tc, p, n, x, fr, svv, albc)
nlr <- mask(netlong1m, rast(dtm1m))
plot(nlr, main = "Net longwave radiation")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.