计算太阳能的软件包,你可以从建筑表面得到太阳能集热器
solarhouse的Python项目详细描述
关于
这个项目可以让你计算你可以收集多少太阳能在你的房子表面,它改变了取暖季节。
为了使它,你需要加载网格文件(.stl或.obj),它代表你的房子的形式,并指定房子的一些参数。 然后开始计算,得到室内各元素的温度图。在
为了计算太阳房内不同倾角和方位角的房屋各面太阳能利用率PVLIB 这个库使得在计算功率时可以考虑天气因素。在
所有的热过程都是通过模型计算出来的。这里描述这些模型:Thermal theory
代入房屋的不同参数,可以对每一种配置进行计算,选择最佳的参数组合,为采暖节能。在
版本
0.0.4节
文件
依赖关系
numpy
scipy
trimesh
pvlib
pandas
matplotlib
mpld3
shapely
jinja2
netCDF4
siphon
tables
安装和运行
来自pypi:
^{pr2}$来自github:
$ git clone https://github.com/yaricp/py-solarhouse.git
$ cd py-solarhouse
$./install.sh
用法:
安装包之后,您可以在代码中使用它。在
首先需要创建网格文件来表示房屋的形状。在
它可以在Free SketchUp中创建
它也可以创建在任何三维编辑器,可以形成文件.obj和.stl
然后把这个网格文件放到.files/文件夹中。在
文件主.py公司名称:
import os
import uuid
import settings
from solarhouse.building import Building
from solarhouse.calculation import Calculation
import solarhouse.export as export
def main():
calc = Calculation(
tz=settings.TZ,
geo=settings.GEO,
building=Building(
mesh_file=settings.PATH_FILE_OBJECT,
geo=settings.GEO,
wall_material=settings.WALL_MATERIAL,
wall_thickness=settings.WALL_THICKNESS,
start_temp_in=settings.TEMPERATURE_START,
power_heat_inside=settings.POWER_HEAT_INSIDE,
efficiency=settings.EFF,
heat_accumulator={
'volume': 0.032,
'material': 'water',
},
windows={
'area': 0.3,
'therm_r': 5.0,
},
floor={
'area': 1.0,
'material': 'adobe',
'thickness': 0.2,
't_out': 4.0,
},
),
)
data_frame = calc.compute(date=22, month=12, year=2019, with_weather=False)
calc_id = str(uuid.uuid4())
output_dir = os.path.join(settings.PATH_OUTPUT, calc_id)
os.makedirs(output_dir, exist_ok=True)
csv_file_path = export.as_file(data_frame, 'csv', output_dir)
export.as_html(data_frame, output_dir)
if __name__ == "__main__":
main()
文件设置.py公司名称:
import os
import pathlib
_this_dir = pathlib.Path(__file__).parent.absolute()
PATH_FILE_OBJECT = os.path.join(_this_dir, 'files/cube.obj')
TIME_TICK = 1 #1 hours
WALL_THICKNESS = 0.3
TEMPERATURE_START = 20 #celcium
POWER_HEAT_INSIDE = 0 #kWtt
MASS_INSIDE = 500 #kg
PATH_FILE_TEMPERATURE_OUTSIDE_FILE = os.path.join(_this_dir, 'files/temp_table.csv')
PATH_EXPORT_THERMO_RESULT_FILE = os.path.join(_this_dir, 'files/results.csv')
SPACE_POWER_ON_METER = 1000
WALL_MATERIAL = 'adobe'
EFF = 75 #in percents
EFF_ANG = 85.0
GEO = {
'latitude': 54.841426,
'longitude': 83.264479,
}
TZ = 'Asia/Novosibirsk'
COUNT_FACES_FOR_PARALLEL_CALC = 1000
PATH_OUTPUT = os.path.join(_this_dir, 'output')
房子的所有参数(网格、墙的厚度、墙的材料等)都设置在文件中设置.py在
之后,您可以开始计算:
$python3 main.py
结果,您将在文件夹中获得两个文件,输出为/<;calc_id>;:数据.csv以及绘图.html在
作者
雅罗斯拉夫·皮萨雷夫 yaricp@gmail.com
- 项目
标签: