View source: R/RSAGA-modules.R
| rsaga.solar.radiation | R Documentation |
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+.
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(),
...
)
in.dem |
name of input digital elevation model (DEM) grid in SAGA grid format (default extension: |
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 |
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 |
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.step |
if |
env |
RSAGA geoprocessing environment obtained with |
... |
optional arguments to be passed to |
The type of object returned depends on the intern argument passed to the rsaga.geoprocessor(). For intern=FALSE it is a numerical error code (0: success), or otherwise (default) a character vector with the module's console output.
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.
Alexander Brenning (R interface), Olaf Conrad (SAGA module)
Wilson, J.P., Gallant, J.C. (eds.), 2000: Terrain analysis - principles and applications. New York, John Wiley & Sons.
rsaga.hillshade(), rsaga.insolation()
## 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)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.