如何计算垂直(房屋)墙壁上的太阳辐射?

时间:2019-06-24 16:56:01

标签: python calculation solar

我想计算朝向北,南等方向的墙壁上的太阳辐射。我有该位置的太阳辐射,并且尝试过以下公式:

S_module = S_incident * (math.cos(alpha)*math.sin(beta)*math.cos(psi-theta) + math.sin(alpha)*math.cos(beta))

使用

alpha = 24.86 #sun elevation angle 
theta = 81.58 #sun azimuth angle
beta = 90 #wall tilt angle (vertical module beta=90)
psi = 135 #surface orientation: psi=0 == facing north, psi=180 == facing south; is the azimuth angle that the module faces 
S_incident = 663 [W]

这是针对2019-6-21 6h timezone = utc

我尝试了python软件包pysolar,并且在这里找到了上面的方程:https://www.pveducation.org/pvcdrom/properties-of-sunlight/arbitrary-orientation-and-tilt

我的问题是我没有得到正确的结果,例如对于上述属性,结果为-495 [W]。这可能是不正确的,因为在早晨,辐射必须至少有一个小的正值。

感谢任何提示!

1 个答案:

答案 0 :(得分:1)

阅读docs:trig函数的工作弧度;你喂它度。您的90弧度的墙与现实不符。 :-)

import math

alpha = 24.86 #sun elevation angle 
theta = 81.58 #sun azimuth angle
beta = 90 #wall tilt angle (vertical module beta=90)
psi = 135 #surface orientation: psi=0 == facing north, psi=180 == facing south; is the azimuth angle that the module faces 
S_incident = 663 # Watts

S_module = S_incident * (math.cos(alpha)*math.sin(beta)*math.cos(psi-theta) +
                         math.sin(alpha)*math.cos(beta))

print(math.cos(alpha), math.sin(alpha))
print(math.cos(beta), math.sin(beta))

输出:

0.9630361043608977 -0.26937234768510715
-0.4480736161291701 0.8939966636005579

这些显然不是您期望的值。

使用因子math.pi / 180进行转换。