蜜蜂是一个python库,用于创建、运行和可视化日光(亮度)和能量分析(energyplus/openstudio)的结果。当前版本仅支持辐射集成。
lbt-honeybee的Python项目详细描述
蜜蜂
蜜蜂是一个python库,用于创建、运行和可视化日光(RADIANCE)和能量分析(EnergyPlus/OpenStudio)的结果。当前版本仅支持辐射集成。对于能量模拟,可以使用legacy honeybee for Grasshopper。
这个存储库包括核心库,它是蜜蜂插件的基础。有关插件特定的问题和注释,请参阅honeybee-grasshopper或honeybee-dynamo存储库。
检查this repository以获取用于蚱蜢的传统蜜蜂插件。
安装
pip install lbt-honeybee
暂定路线图
- [X]基本辐射积分。
- [X]支持年度日光模拟-日光系数法[2016年11月]。
- [X]支持三相日光模拟[2016年12月]。
- [X]支持五阶段日光模拟[2017年8月]。
- [X]解决PEP 8问题[2017年12月]
- [X]代码文档[2017年12月]
- []为日光模拟提供云服务支持。
- []基本EnergyPlus集成。
- []支持基本的暖通空调建模。
- []完全的OpenStudio集成。
API Documentation
引用蜜蜂的话
对于日光库,请引用此演示文稿:
sadeghipour roudsari,莫斯塔帕。萨里思,苏布拉曼尼亚姆。2016年。使用python自动化radiance工作流。第15届年度辐射研讨会。意大利帕多瓦。可在:https://www.radiance-online.org/community/workshops/2016-padua/presentations/213-SadeghipourSubramaniam-AutomatingWorkflows.pdf `
示例
下面是一个python示例,演示如何将基于网格的分析放在一起。有关更多示例,请查看其中一个插件存储库。
fromhoneybee.roomimportRoomfromhoneybee.radiance.material.glassimportGlassfromhoneybee.radiance.sky.certainIlluminanceimportCertainIlluminanceLevelfromhoneybee.radiance.recipe.pointintime.gridbasedimportGridBased# create a test roomroom=Room(origin=(0,0,3.2),width=4.2,depth=6,height=3.2,rotation_angle=45)# add fenestration# # add a window to the back wallroom.add_fenestration_surface(wall_name='back',width=2,height=2,sill_height=0.7)# add another window with custom material. This time to the right wallglass_60=Glass.by_single_trans_value('tvis_0.6',0.6)room.add_fenestration_surface('right',4,1.5,1.2,radiance_material=glass_60)# run a grid-based analysis for this room# generate the skysky=CertainIlluminanceLevel(illuminance_value=2000)# generate grid of test pointsanalysis_grid=room.generate_test_points(grid_size=0.5,height=0.75)# put the recipe togetherrp=GridBased(sky=sky,analysis_grids=(analysis_grid,),simulation_type=0,hb_objects=(room,))# write and run the analysisbatch_file=rp.write(target_folder=r'c:\ladybug',project_name='room')rp.run(batch_file,debug=False)# results - in this case it will be an analysis gridresult=rp.results()[0]# print the values for each pointforvalueinresult.combined_value_by_id():print('illuminance value: %d lux'%value[0])