太阳高度角
在指定区域内计算太阳高度角,并可输出太阳方位角和日照时长。
功能说明
太阳高度角为太阳方向与理想地平面的夹角;太阳方位角从正北起顺时针计量。日照时长表示平坦地形上的日照时间,不包含地形投影遮挡。
参数说明
| 参数 | 说明 | 必填 | 默认值 |
|---|---|---|---|
| 输出区域 | 设置坐标系、分辨率、范围及网格对齐方式。 | 是 | 分辨率 [1, 1],对齐选项关闭 |
| 年份 | 1950–2050。 | 是 | 空 |
| 月份 | 1–12;留空时日期表示一年中的第几天。 | 否 | 空 |
| 日期 | 填写月份中的日期;未填写月份时填写年内序号。 | 是 | 空 |
| 小时 | 0–24。 | 否 | 12 |
| 分钟 | 0–60。 | 否 | 0 |
| 秒 | 0–60。 | 否 | 0 |
| 使用本地恒星时 | 选择本地恒星时时间方式;与 SOLPOS 的关系见下文。 | 否 | 关闭 |
| 不使用 SOLPOS 算法 | 关闭 NREL SOLPOS 算法;关闭后不能计算日照时长。 | 否 | 关闭 |
| 输出太阳高度角栅格 | 设置结果保存位置。 | 是 | 空 |
| 输出太阳方位角栅格 | 设置可选结果保存位置。 | 否 | 空 |
| 输出日照时长栅格 | 设置可选结果保存位置。 | 否 | 空 |
输出结果
高度角和方位角单位为度,日照时长单位为小时。各输出是独立栅格,范围与像元网格受输出区域设置影响。
如何选择时间方式和输出
计算当天日照时长:保持“使用本地恒星时”和“不使用 SOLPOS 算法”均关闭,填写日期,并指定日照时长输出。日照时长反映该日期的平坦地形日照时间,不是所填时刻的累计日照,也不因时区表示方式改变而改变;它不考虑地形投射阴影。当前界面还要求填写太阳高度角输出,该高度角对应输入时间的格林尼治标准时间,不应与当地民用时间或本地恒星时混淆。
按本地恒星时计算指定时刻的太阳高度角或方位角:GRASS 原生实现要求同时启用“使用本地恒星时”和“不使用 SOLPOS 算法”;只启用前者而保留 SOLPOS 时,GRASS 会将时间按格林尼治标准时间解释。关闭 SOLPOS 后不能同时请求日照时长。
当前工具即使不填写日照时长输出路径,底层仍可能请求日照时长。因此同时启用上述两个选项时可能报错,无法得到本地恒星时结果。不要将开启 SOLPOS 后得到的格林尼治时间结果当作本地恒星时结果。
使用步骤
- 打开【计算工具箱】→【GRASS GIS】→【栅格工具】→【太阳分析】→【栅格处理(SUNHOURS)】。
- 设置输出区域、日期及时间,选择所需输出并运行。
使用示例
示例项目 grass-太阳高度角 使用平山样区范围设置 EPSG:3857 输出区域和 100 米分辨率,日期为 2025 年 6 月 21 日,小时为 6,分钟和秒均为 0。保持“使用本地恒星时”和“不使用 SOLPOS 算法”关闭,指定太阳高度角和日照时长输出。
得到的 sunhours_20250621_duration_97acba02.tif 为 180 × 159 像元的当天日照时长栅格,项目统计范围约为 14.66–14.67 小时。必填的高度角输出 sunhours_20250621_0600_gmt_elevation_97acba02.tif 的项目统计范围约为 64.98°–65.15°,对应格林尼治标准时间 6:00,不是本地恒星时 6:00 的结果。
注意事项
- 使用时间相关结果前,应核对时间基准;不要将格林尼治时间、本地恒星时和当地民用时间混用。
- 日照时长计算需要 SOLPOS 算法;如需考虑地形遮挡对日照的影响,可使用太阳辐射计算工具的日照时长输出。
- 输出区域的分辨率越细,计算量越大;网格对齐可能调整实际范围。
技术参考
GRASS GIS 原生模块 r.sunhours。