View source: R/radiationtools.R
longwavetopo | R Documentation |
longwavetopo
is used to calculate a high-resolution dataset of the net
longwave radiation flux density emmited from the Earth, ignoring canopy
effects.
longwavetopo(h, tc, p = 101300, n, svf = 1, 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 values (range 0 - 1). Technically assumed to be 1 - ratio of measured to clear-sky radiation. |
svf |
an optional single value, SpatRaster object, two-dimensional array or matrix of values representing the proportion of isotropic radiation received by a partially obscured surface relative to the full hemisphere, as returned by |
co |
parameter relationship between vapor pressure and temperature near the ground Brutsaert (1975). |
if svf
is a SpatRaster object, a SpatRaster object is returned.
If no values for p
are provided, a default value of 101300 Pa, typical of
sea-level pressure, is assumed. If single values of h
, tc
, p
and n
are given, and svf
is an array or matrix, then the entire area is assumed to
have the same values of h
, tc
, p
and n
. If no value for svf
is
provided then the entire hemisphere is assumed to be in view. If single
values of h
, tc
, p
and n
are given, and no value of ‘svf’ is
provided, a single value is returned, and it is assumed that the entire
hemisphere is in view.
a single numeric value, SpatRaster object, two-dimensional array pr matrix of values representing net longwave radiation (MJ per metre squared per hour).
The function longwaveveg()
returns the net longwave radiation under vegetation.
The function humidityconvert()
can be used to derive specific humidy from other meaures of humidity.
cloudfromrad()
can be used to derive derive cloud cover from radiation.
library(terra)
# =================================
# Extract data for 2010-05-24 11:00
# =================================
h <- huss[,,144]
p <- pres[,,144]
tc <- tas[,,144] + dtr[,,144]
n <-cfc[,,3444]
sv <- skyviewtopo(rast(dtm100m))
# ===========================
# Resample to 100m resolution
# ===========================
hr <- if_raster(h, dtm1km)
tr <- if_raster(tc, dtm1km)
pr <- if_raster(p, dtm1km)
e<-ext(-5.40, -5.00, 49.90, 50.15)
nr <- rast(n)
ext(nr)<-e
crs(nr) <- '+init=epsg:4326'
nr <- project(nr, crs(rast(dtm1km)))
hr <- resample(hr, rast(dtm100m))
tr <- resample(tr, rast(dtm100m))
pr <- resample(pr, rast(dtm100m))
nr <- resample(nr, rast(dtm100m))
# =========================================
# Calculate and plot net longwave radiation
# =========================================
netlong100m <- longwavetopo(hr, tr, pr, nr, sv)
netlong100m <- mask(netlong100m, rast(dtm100m))
plot(netlong100m, main = "Net longwave radiation")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.