Пример #1
0
def plotIncident(lats, days, tilts, dirs, attenuate=False):
    if np.isscalar(lats):  lats  = [lats]
    if np.isscalar(days):  days  = [days]
    if np.isscalar(tilts): tilts = [tilts]
    if np.isscalar(dirs):  dirs  = [dirs]
    ts = np.arange(0,24,0.25)
    h = np.radians(solar.hourAngle(ts))
    for lat in lats:
        for day in days:
            for tilt in tilts:
                for dir in dirs:
                    (mon,md) = solar.findDay(day)
                    plt.plot(ts,solar.incident(lat,day,ts,tilt,dir,attenuate),label= mon + " " + str(md) + " " + str(lat) + " deg @" +str(tilt)+"["+str(dir)+"]" )
    plt.title('Effective Incident Solar')
    plt.xlabel('Hour')
    axes = plt.axes()
    handles, labels = axes.get_legend_handles_labels()
    axes.legend(handles, labels, loc=2)
    return axes                         
Пример #2
0
def solarHours(lat, day, tilt, dir):
    ts = np.arange(0,24,0.1)
    return trapz(solar.incident(lat,day,ts,tilt,dir,False),ts)