예제 #1
0
    from bifacial_radiance import RadianceObj
except ImportError:
    raise RuntimeError('bifacial_radiance is required. download distribution')

print('starting simulation: {}'.format(datetime.datetime.now()))
# Example 1-axis tracking system using Radiance.  This takes 5-10 minutes to complete, depending on computer.

demo = RadianceObj(
    path=testfolder)  # Create a RadianceObj 'object' named 'demo'

demo.setGround(
    albedo
)  # input albedo number or material name like 'concrete'.  To see options, run this without any input.

epwfile = demo.getEPW(
    37.5, -77.6
)  #Pull TMY weather data for any global lat/lon.  In this case, Richmond, VA

metdata = demo.readEPW(epwfile)  # read in the weather data

# create separate metdata files for each 1-axis tracker angle (5 degree resolution).
trackerdict = demo.set1axis(metdata,
                            limit_angle=limit_angle,
                            backtrack=True,
                            gcr=gcr)

# create cumulativesky functions for each tracker angle: demo.genCumSky1axis
trackerdict = demo.genCumSky1axis(trackerdict)
# Create a new moduletype: Prism Solar Bi60. width = .984m height = 1.695m. Bifaciality = 0.90
demo.makeModule(name='Prism Solar Bi60', x=0.984, y=module_height, bifi=0.90)
# print available module types
from bifacial_radiance import RadianceObj, AnalysisObj

# <a id='step1a'></a>

# ### A. Generating the firt scene object
#
# This is a standard fixed-tilt setup for one hour. Gencumsky could be used too for the whole year.
#
# The key here is that we are setting in sceneDict the variable **appendRadfile** to true.

# In[4]:

demo = RadianceObj("MultipleObj",
                   path=testfolder)  # Create a RadianceObj 'object'
demo.setGround(0.62)
epwfile = demo.getEPW(lat=37.5, lon=-77.6)
metdata = demo.readWeatherFile('EPWs\\USA_VA_Richmond.Intl.AP.724010_TMY.epw')
fullYear = True
demo.gendaylit(metdata,
               4020)  # Noon, June 17th  . # Gencumsky could be used too.
module_type = 'Prism Solar Bi60 landscape'
demo.makeModule(name=module_type, y=1, x=1.7)
sceneDict = {
    'tilt': 10,
    'pitch': 1.5,
    'clearance_height': 0.2,
    'azimuth': 180,
    'nMods': 5,
    'nRows': 2,
    'appendRadfile': True
}