longwavetopo: calculates net longwave radiation above canopy

View source: R/radiationtools.R

longwavetopoR Documentation

calculates net longwave radiation above canopy

Description

longwavetopo is used to calculate a high-resolution dataset of the net longwave radiation flux density emmited from the Earth, ignoring canopy effects.

Usage

longwavetopo(h, tc, p = 101300, n, svf = 1, co = 1.24)

Arguments

h

a single numeric value, raster object, two-dimensional array or matrix of specific humidities (kg kg{-1} ).

tc

a single numeric value, raster object, two-dimensional array or matrix of temperatures (ºC).

p

an optional single numeric value, raster object, two-dimensional array or matrix of sea-level pressures (Pa).

n

a single numeric value, raster 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, raster 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 skyviewtopo().

co

parameter relationship between vapor pressure and temperature near the ground Brutsaert (1975).

Details

if svf is a raster object, a raster 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.

Value

a single numeric value, raster object, two-dimensional array pr matrix of values representing net longwave radiation (MJ per metre squared per hour).

See Also

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.

Examples

library(raster)
# =================================
# Extract data for 2010-05-24 11:00
# =================================
h <- huss[,,144]
p <- pres[,,144]
tc <- tas[,,144] + dtr[,,144]
n <-cfc[,,3444]
sv <- skyviewtopo(dtm100m)
# ===========================
# Resample to 100m resolution
# ===========================
hr <- if_raster(h, dtm1km)
tr <- if_raster(tc, dtm1km)
pr <- if_raster(p, dtm1km)
nr <- raster(n, xmn = -5.40, xmx = -5.00, ymn = 49.90, ymx = 50.15)
crs(nr) <- '+init=epsg:4326'
nr <- projectRaster(nr, crs = '+init=epsg:27700')
hr <- resample(hr, dtm100m)
tr <- resample(tr, dtm100m)
pr <- resample(pr, dtm100m)
nr <- resample(nr, dtm100m)
# =========================================
# Calculate and plot net longwave radiation
# =========================================
netlong100m <- longwavetopo(hr, tr, pr, nr, sv)
netlong100m <- mask(netlong100m, dtm100m)
plot(netlong100m, main = "Net longwave radiation")

ilyamaclean/microclima documentation built on Oct. 31, 2023, 11:41 p.m.