Contents — find the section you need

Change parameters and verify

Open the panel, then press Run to load Python. You can stop execution and reset parameters. Results are computed on this device. No Python installation is required.

Local execution steps below are optional for reproducing the source results; they are not required for the browser experiment.

The experiment controls are in English.

Open experiment panel in a new tab

Download reproduction source

从结果开始

合成日的空气汽压差 (VPD) ≈ 1.584 kPa,日光积分 (DLI) ≈ 11.52 mol m⁻² day⁻¹。温度为 25°C,相对湿度为 50%。光合有效辐射 (PPFD) 从 08:00 到次日午夜为 200,其余时间为 0。这些是用于检查单位和积分的虚拟输入,并非实际测量值。

更改 预期结果 解释
基线 VPD ≈ 1.584;DLI 11.52 独立计算
相对湿度设为 100% 空气 VPD 0 此方程式中的饱和值
光照期间 PPFD 设为 100 DLI 5.76 光照量减半
删除 08–09 时间段 错误 数据缺失并非意味着系统无法正常运行

请阅读 CEA 概述 以了解系统边界。本实验室计算环境参数,但不预测产量或控制设备。

空气 VPD 需要温度和湿度

使用 FAO-56 饱和蒸汽压关系式,公式 11,其中 T 单位为 °C,压力单位为 kPa:

e_s(T)=0.6108\exp\left(\frac{17.27T}{T+237.3}\right),\qquad VPD_{air}=e_s(T)(1-RH/100)

在 25°C 时,约等于饱和蒸汽压 3.168 kPa,在 50% 相对湿度下约为 1.584 kPa。将此非线性方程应用于日均输入值一次,通常与在每个时间戳计算平均值的结果有所不同。

由于未提供叶片温度,因此这不是叶片到空气的 VPD。 也不是蒸腾作用模型。在将解释扩展到植物响应之前,请参考密歇根州立大学的VPD讨论。

DLI根据每个时间间隔的持续时间对其进行加权

根据普渡大学的DLI解释,对一天内的PPFD进行积分。每个CSV行提供的是时间间隔平均PPFD,而不是用于梯形插值的瞬时读数。

DLI=10^{-6}\sum_i PPFD_i\,(t_{end,i}-t_{start,i})

持续时间以秒为单位:200 × 16 × 3600 / 1e6 = 11.52。分割一个时间间隔而不改变其平均值,总和保持不变。

时间间隔 (UTC+09:00) 小时 PPFD 贡献 (mol m⁻²)
00–05 5 0 0
05–08 3 0 0
08–09 1 200 0.72
09–15 6 200 4.32
15–下一个 00 9 200 6.48

对于这些不等长的时间间隔,将行计数平均值乘以 24 小时是不正确的。瞬时测量需要单独指定插值和最大间隙策略。

输入合同

列 含义 可接受的教学范围
起始/结束 带 UTC 偏移的 ISO 8601 时间戳 具有一个固定偏移量的连续午夜到午夜的时间间隔
temp_c 假设时间间隔内空气温度恒定,单位为摄氏度 (°C) 0–50
rh_pct 该温度下的相对湿度,单位为百分比 (%) 0–100
ppfd_umol_m2_s 区间均值,μmol m⁻² s⁻¹ 0–3000

温度和光照限制是教学模型的选择,并非作物推荐或通用有效范围。空白值、NaN、无穷大、负光照、重叠、间隙、反向行和不完整日期均被拒绝。夏令时转换不在固定的 24 小时模型范围内。实际测量还需要位置、校准和传感器响应记录。

运行完整实验

解压实验 ZIP 文件,然后在其目录中运行以下命令。Python 3.10+ 和标准库即可满足要求;无需其他软件包或网络访问。上方的浏览器面板无需在本地安装 Python。以下本地运行步骤为可选操作。

python3 generate.py
python3 experiment.py synthetic.csv > result.json
python3 -m unittest -v

generate.py 用于重新生成合成 CSV 文件;编辑输入前请保存一份单独的副本。分析器以 JSON 格式输出区间 VPD 和累积光照量。请比较 expected.json 和 manifest.json 中的文件哈希值和合约。

计算核心如下;experiment.py 包含完整的可执行文件,包括验证部分。

es = 0.6108 * math.exp(17.27 * temp_c / (temp_c + 237.3))
air_vpd_kpa = es * (1 - rh_pct / 100)
dose_mol_m2 += ppfd * interval_seconds / 1_000_000

更改、中断和验证

  1. 将所有 RH 值设置为 100。VPD 变为零;DLI 保持为 11.52。

  2. 将光照周期的 PPFD 减半。DLI 变为 5.76,而 VPD 保持不变。

  3. 删除一个光照区间。分析器会拒绝该间隙,而不是返回误导性的总数。

  4. 输入 RH 值 0.5 。可接受的值为 0.5%,约等于 3.15 kPa。如果您原本想取 50%,范围检查无法检测到单位错误。

提供的 12 项测试涵盖了四舍五入的独立参考值、饱和度、比例光照变化、区间分割、无效输入和缺失覆盖。通过这些测试并不代表作物已通过验证。相等的日光积分 (DLI) 并不意味着相同的生长量。

继续进行温度测量和采样:确定将实际读数转换为此区间格式时会丢失哪些信息。

What to read next

Review the backgroundCEA 植物环境与光照设计——光合作用、光量、分布与光谱Continue the seriesCEA 气候平衡实验室——分别守恒热量、水汽和二氧化碳Explore another aspect of this fieldCEA 鱼菜共生——鱼类、微生物和植物的水质边界