煙臺北緯37.4度,南樓(如圖19號樓)大約32米的11層小高層,樓間距41米,那麼16號樓一樓全年裡一天中最短的日照時間(冬至日?)是幾小時?


謝邀:

日照計算是一個複雜的問題,現在一般藉助軟體進行計算,從題主給出的圖來看,16#樓的日照被19#樓和沿街商業擋了很多,如果能通過日照計算的話,我感覺也是東側射入的日照會比較多,下午就少一些,因為西側的沿街商業也擋了不少,南側19#樓。根據&看,(大寒日)完全擋的死死的。

附相關規定(不敢保證是現行版本,但絕對值得參考):

如果想找人計算日照高度的話,要提供全圖,你這個圖根本反應不了問題。

假設東南側沒有建築遮擋16#樓的話,我幫你分析一下看看日照大致情況是怎麼樣的:

冬至:

大寒:

這只是我估算的,上面貼近黑框的小數字就是你要的結果。

給你補一個你補充全規劃圖的一個估算結果,大寒日(我們一般以大寒日判定其是否符合日照),初步估計,一樓最西邊的那一戶日照可能會不滿足,其他的差不多都滿足要求。


粗略的用天正建築,精確的用眾智日照,完了。


恰好做過一個計算模型,先拿我的模型回答一下哈。

冬至日的日出時間算出來是07:17,如果19號樓東側的部分遮擋得比較多,那麼要到10:58(可能有一定誤差,提前半小時左右會有比較淡的陽光進來,半小時後太陽全部照到),陽光能曬到16號樓的一樓。如果東側遮擋比較少的話,則可能更早。

日落時間是16:45,如果19號樓西側的樓體遮擋比較比,那麼16號樓一樓到13:04就沒有日照了。如果遮擋比較少的話,則可能更晚。

希望得到您的反饋驗證一下:)

貼一下計算過程:

import math
def hour2min(hour):
l=hour.split(:)
mins=eval(l[0])*60+eval(l[1])
return mins
def getdays(year,month,day):
day_list = [0,31,59,90,120,151,182,213,243,273,304,334]
if (year % 400 == 0) or ((year % 4 == 0) and (year % 100 != 0)):
if month &> 2 :
num_day += 1
num_day = day_list[month-1]
num_day += day
return num_day
def min2hour(past):
delta_hour=past//60
delta_min=past%60
delta={0:0&>2}:{1:0&>2}.format(int(delta_hour),int(delta_min))
return delta
#從太陽升起到陽光進屋需要幾小時
days=getdays(2019,12,22)
h=32
distance=41
N=37.4
#赤緯
seta=-23.44*math.cos(math.radians(360/365*(days+9)))
#太陽高度角
H=90-(N-seta)
#遮擋樓與樓間距夾角
angle=math.atan(height/distance)/math.pi*180
angle_everymin=180/mins
past=(angle-seta)/angle_everymin#當angle-seta&>90時,陽光就怎麼也照不進了
#時間計算公式
t=math.acos(-math.tan(math.radians(N))*math.tan(math.radians(seta)))/math.pi*180
t_min=360/(24*60)
tonoon_mins=t/t_min
#日出時間
start_hour=min2hour(12*60-tonoon_mins)
start_min=12*60-tonoon_mins
#陽光進屋時間
res=min2hour(start_min+past)
res


補充一下完整一點的圖,左下角是19號樓


推薦閱讀:
相關文章