360 Secure SkillHub
360 安全技能中心

不同方位倾斜面辐射量计算

该 Skill 接收上游生成的月度气象 Excel 文件及用户指定的倾角、方位角,依据 Hay 各向异性天空散射模型计算倾斜面上各月直射、散射、地面反射与总辐射,并输出含基本信息、倾斜面辐射数据和参数说明三个工作表的 Excel 文件,用于风能与太阳能资源分析。

yuepeng1985-web
yuepeng1985-web
热度 30.15
最近更新 2026-05-11 17:46:36
分类:数据依赖:代码执行 / 读写文件 / 第三方 API应用场景:数据处理 / 报告撰写

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add solar-tilt-calculator
Metadata
name
solar-tilt-calculator
description
Calculate solar radiation on tilted surfaces based on NASA POWER data. Supports user-defined tilt angle and azimuth angle. Outputs structured Excel files.
homepage
https://power.larc.nasa.gov
metadata
{"clawdbot":{"emoji":"☀️","requires":{"bins":["curl"],"python":["openpyxl","pandas"]}}}

Solar-Tilt-Calculator

Calculate solar radiation on tilted surfaces for wind and solar energy analysis. Based on NASA POWER climatology data and Hay's anisotropic sky-diffuse model.

Trigger

User provides:

  1. Input Excel file path (from metdata-nasa-access)
  2. Tilt angle (β) in degrees
  3. Azimuth angle (γ) in degrees (optional, default: 0 = facing equator)

Example:

  • "帮我计算倾角30°,方位角0°的辐射量"
  • "使用 /path/to/metdata.xlsx,倾角25°"
  • "30度倾角,正南朝向"

Workflow

Step 1: Read Input Excel

Read the Excel file generated by metdata-nasa-access:

python3 scripts/calculate_tilt_radiation.py \
  --input <INPUT_EXCEL> \
  --tilt <TILT_ANGLE> \
  --azimuth <AZIMUTH_ANGLE> \
  --output <OUTPUT_EXCEL>

Input Excel structure (from metdata-nasa-access):

  • Sheet "气象数据": Contains monthly radiation data
    • Columns: T2M, T10M, ALLSKY_SRF_ALB, ALLSKY_SFC_SW_DNI, ALLSKY_SFC_SW_DIFF, ALLSKY_SFC_SW_DWN
    • Rows: 1月-12月 + 年度均值

Step 2: Calculate Tilted Surface Radiation

Use Hay's anisotropic model (from paper: 不同方位倾斜面上太阳辐射量及最佳倾角的计算):

HT = Hb × Rb + Hd × [(Hb/H0) × Rb + (1/2)(1 - Hb/H0)(1 + cosβ)] + (1/2)ρH(1 - cosβ)

For equator-facing surfaces (γ = 0):

Rb = [sin(φ - β) × sinδ + cos(φ - β) × cosδ × cosωs] / [sinφ × sinδ + cosφ × cosδ × cosωs]

For tilted surfaces with azimuth (γ ≠ 0): Use Bushell's improved formula for sunrise/sunset hour angles:

ωs1 = min{ωs, arccos[(A - B)/C]}
ωs2 = max{-ωs, arccos[(A + B)/C]}

Where:

  • A = sinδ(sinφ cosβ - cosφ sinβ cosγ)
  • B = cosδ(cosφ cosβ + sinφ sinβ cosγ)
  • C = cosδ sinβ sinγ
  • ωs = arccos(-tanφ tanδ)

Step 3: Generate Output Excel

Output Excel with 3 sheets:

  1. 基本信息 - Location, tilt angle, azimuth angle, input data source
  2. 倾斜面辐射数据 - Monthly mean daily radiation on tilted surface
  3. 参数说明 - Calculation model, parameters, formulas

Step 4: Report to User

Confirm the file path and summarize key findings:

  • 年均可用辐射量(水平面 vs 倾斜面)
  • 最佳辐射月份
  • 辐射增益/损失百分比

Output Format

Excel with 3 sheets:

基本信息:

  • 输入数据源
  • 当地纬度
  • 倾斜角度
  • 方位角度
  • 计算模型

倾斜面辐射数据:

月份 直射辐射 散射辐射 地面反射 总辐射 水平面总辐射 增益/损失
1月 ... ... ... ... ... ...

参数说明:

  • Hay 模型说明
  • 公式来源
  • 符号对照表

Notes

  • Based on Hay's anisotropic sky-diffuse model
  • Input data should be from metdata-nasa-access (NASA POWER climatology)
  • Tilt angle (β): 0-90° (0° = horizontal)
  • Azimuth angle (γ): -90° to +90° (0° = facing equator, negative = east, positive = west)
  • Ground reflectance (ρ): default 0.2 (typical for most surfaces)
  • Units: MJ/(m²·day)
  • Calculation method: Monthly mean daily radiation

References

  • 杨金焕, 毛家俊, 陈中华. 不同方位倾斜面上太阳辐射量及最佳倾角的计算[J]. 上海交通大学学报, 2002, 36(7): 1032-1035.
  • Hay J E. Calculation of monthly mean solar radiation for horizontal and inclined surfaces[J]. Solar Energy, 1979, 23(4): 301-307.
  • Bushell R H. A solution for sunrise and sunset hour angles on a tilted surface without a singularity at zero[J]. Solar Energy, 1982, 28(4): 359.