R/solar.R

# Author: Jorrel Khalil S. Aunario, jaunario@gmail.com
# Date :  8 May 2012
# Version 0.0.1
# Licence GPL v3

# TODO 
sunhoursToSRad <- function(sunhour, doy, lat, anga, angb){
    deg2rad <- 0.017453292
    dec <- -1*asin(sin(23.45*deg2rad)*cos(2*pi*(doy+10)/365))
    sc <- 1370*(1+0.033*cos(2*pi*doy/365))
    
    sinld <- sin(deg2rad*lat)*sin(dec)
    cosld <- cos(deg2rad*lat)*cos(dec)
    aob <- sinld/cosld  
    
    dayl <- 12*(1+2*asin(aob)/pi)
    dsinb <- 3600*(dayl*sinld+24*cosld*sqrt(1-(aob^2))/pi)
    angot <- sc*dsinb
    
    return(angot*(anga+angb*((sunhour)/dayl))/1000000) 
}


hargreavesSRad <- function(doy, tmax, tmin, latdd){
    DR <- 1+0.033*cos(pi*2/366*doy)    
    LatRad <- pi/180*latdd
    SRdec <- 0.409*sin(2*pi/366*doy-1.98)
    SHA <- acos(-tan(LatRad)*tan(SRdec))
    R_a <- 24*60/pi*0.082*DR*(SHA*sin(LatRad)*sin(SRdec)+cos(LatRad)*cos(SRdec)*sin(SHA))
    return(R_a*0.16*sqrt(tmax-tmin))       
}

Try the weather package in your browser

Any scripts or data that you put into this service are public.

weather documentation built on May 2, 2019, 4:56 p.m.