Potential incoming solar radiation

Share:

Description

This function calculates the potential incoming solar radiation in an area either using a lumped atmospheric transmittance model or estimating it based on water and dust content. Use rsaga.pisr instead with SAGA GIS 2.0.6+.

Usage

1
2
3
4
5
6
rsaga.solar.radiation(in.dem, out.grid, out.duration, latitude,
  unit = c("kWh/m2", "J/m2"), solconst = 1367, method = c("lumped",
  "components"), transmittance = 70, pressure = 1013,
  water.content = 1.68, dust = 100, time.range = c(0, 24),
  time.step = 1, days = list(day = 21, month = 3), day.step = 5,
  env = rsaga.env(), ...)

Arguments

in.dem

name of input digital elevation model (DEM) grid in SAGA grid format (default extension: .sgrd)

out.grid

output grid file for potential incoming solar radiation sums

out.duration

Optional output grid file for duration of insolation

latitude

Geographical latitude in degree North (negative values indicate southern hemisphere)

unit

unit of the out.grid output: "kWh/m2" (default) or "J/m2"

solconst

solar constant, defaults to 1367 W/m2

method

specifies how the atmospheric components should be accounted for: either based on a lumped atmospheric transmittance as specified by argument transmittance ("lumped", or numeric code 0; default); or by calculating the components corresponding to water and dust ("components", code 1)

transmittance

transmittance of the atmosphere in percent; usually between 60 (humid areas) and 80 percent (deserts)

pressure

atmospheric pressure in mbar

water.content

water content of a vertical slice of the atmosphere in cm: between 1.5 and 1.7cm, average 1.68cm (default)

dust

dust factor in ppm; defaults to 100ppm

time.range

numeric vector of length 2: time span (hours of the day) for numerical integration

time.step

time step in hours for numerical integration

days

either a list with components day and month specifying a single day of the year for radiation modeling; OR a numeric vector of length 2 specifying the start and end date (see Note below)

day.step

if days indicates a range of days, this specifies the time step (number of days) for calculating the incoming solar radiation

env

RSAGA geoprocessing environment obtained with rsaga.env; this argument is required for version control (see Note)

...

optional arguments to be passed to rsaga.geoprocessor

Note

This module ceased to exist under SAGA GIS 2.0.6+, which has a similar (but more flexible) module Potential Solar Radiation that is interfaced by rsaga.pisr.

SAGA_CMD uses zero-based days and months, but this R function uses the standard one-based days and months (e.g. day 1 is the first day of the month, month 1 is January) and translates to the SAGA system.

In SAGA 2.0.2, solar radiation sums calculated for a range of days, say days=c(a,b) actually calculate radiation only for days a,...,b-1 (in steps of day.step - I used day.step=1 in this example). The setting a=b however gives the same result as b=a+1, and indeed b=a+2 gives twice the radiation sums and potential sunshine duration that a=b and b=a+1 both give.

The solar radiation module of SAGA 2.0.1 had a bug that made it impossible to pass a range of days of the year or a range of hours of the day (time.range) to SAGA. These options work in SAGA 2.0.1.

This function uses module Incoming Solar Radiation from SAGA GIS library ta_lighting.

Author(s)

Alexander Brenning (R interface), Olaf Conrad (SAGA module)

References

Wilson, J.P., Gallant, J.C. (eds.), 2000: Terrain analysis - principles and applications. New York, John Wiley & Sons.

See Also

rsaga.hillshade, rsaga.insolation

Examples

1
2
3
4
5
6
## Not run: 
# potential solar radiation on Nov 7 in Southern Ontario...
rsaga.solar.radiation("dem","solrad","soldur",latitude=43,
    days=list(day=7,month=11),time.step=0.5)

## End(Not run)

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.