太陽光の放射量から測光量への変換
1SUN(放射量で約1000W/m2)が、約100kluxだと知られています。
ただ、実際に計算しているサイトがなかったような気がしたので、これを実際に計算して確認してみました。
結果、多少誤差があるかもしれませんが、109497 luxでした。
### Python ###
import pandas as pd
# Air Mass 1.5 : solar_data.csv
#####
# Wvlgth_nm,Global_tilt_W*m-2*nm-1
# 280.0,4.7309E-23
# 280.5,1.2307E-21
# ...
#####
df_solar_irradiance = pd.read_csv("solar_data.csv")
df_solar_irradiance_v = df_solar_irradiance.query(
"360 <= Wvlgth_nm <= 830"
) # 視感度を持つ領域のみ抽出
df_solar_irradiance_v = df_solar_irradiance_v.reset_index(drop=True)
print(df_solar_irradiance_v)
# 明所視標準比視感度 : vl1924e_1.csv
#####
# Wvlgth nm,Luminosity_import pandas as pd
# Air Mass 1.5 : solar_data.csv
#####
# Wvlgth_nm,Global_tilt_W*m-2*nm-1
# 280.0,4.7309E-23
# 280.5,1.2307E-21
# ...
#####
df_solar_irradiance = pd.read_csv("solar_data.csv")
df_solar_irradiance_v = df_solar_irradiance.query(
"360 <= Wvlgth_nm <= 830"
) # 視感度を持つ領域のみ抽出
df_solar_irradiance_v = df_solar_irradiance_v.reset_index(drop=True)
print(df_solar_irradiance_v)
# 明所視標準比視感度 : vl1924e_1.csv
#####
# Wvlgth nm,Luminosity_function
# 360, 0.0000039170000
# 361, 0.0000043935810
# ...
#####
df_luminance_function = pd.read_csv("vl1924e_1.csv")
print(df_luminance_function)
# Watt2Lux 変換係数
Km = 683
lamb_v = range(len(df_solar_irradiance_v))
lux_vl1924e = 0
for l in lamb_v:
wl = df_solar_irradiance_v.loc[l, "Wvlgth_nm"]
round_wl = round(wl)
print(f"wl:{wl}, round_wl:{round_wl}")
# 比視感度が1nm単位のため、0.5nm単位で表されている太陽光パワー密度を1nm単位に丸めこみ
df_s = df_luminance_function.query("Wvlgth_nm == @round_wl")
df_s = df_s.reset_index(drop=True)
print(f"df_slice:{df_s}")
lum_func = df_s.loc[0, "Luminosity_function"]
print(f"lum_func:{lum_func}")
lux_vl1924e += (
# WattからLuxへの変換
Km
* df_solar_irradiance_v.loc[l, "Global_tilt_W*m-2*nm-1"]
* lum_func
)
print(f"Lux:{lux_vl1924e}") # 109496.58618470797 lux
以下のサイト、データを参考にしました。
太陽光スペクトル分布
(1SUM(1000 W/m2)は、Global tilt。このとき、1,002.88 W/m2)
標準視感度
(Luminous efficiency functions、CIE (1924) Photopic V(λ)が明所)
放射量(W単位)と測光量(lm,lux単位)の関係について
この記事が気に入ったらサポートをしてみませんか?