news 2026/8/7 16:15:11

WOFOST模型经典输入与替换

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
WOFOST模型经典输入与替换

“参数 + 天气 + 农事 → 交给 ParameterProvider → 选模型 → run_till_terminate() → get_output() → DataFrame”

四类数据分别怎么来

类别代码里变量名文件格式 / 来源读取类一句话备注
作物参数cropd.crop(CABO) 或.yml(YAML)CABOFileReaderYAMLCropDataProvider官方.crop在 WOFOST Control Centre;YAML 例程见 ajwdewit/WOFOST_crop_parameters
土壤参数soild.soil(CABO) 或.jsonCABOFileReader同一下载包,ec3.soil = “medium fine sand”
站点sited代码字典WOFOST72SiteDataProvider(WAV=10, CO2=360, LAT=..., LON=...)WAV 是最关键字段:初始土壤含水量 mm
农事管理agromanagement.agro(YAML)YAMLAgroManagementReader指定播/收日期、最大持续天数、灌溉事件等
逐日天气weatherdataprovider.xlsx/.csv/ NASA-POWER 在线ExcelWeatherDataProvider/CSVWeatherDataProvider/NASAPowerWeatherDataProvider列名必须含 DAY、IRRAD、TMIN、TMAX、VAP、WIND、RAIN

模型怎么选(import 哪一行)

生产级别对应类说明
潜在生产 PotentialWofost72_PP不缺水、不缺氧、无病虫害,上限产量
水分限制 Water-limitedWofost72_WLP_CWB加入土壤水平衡,可配灌溉,最常用的“实际产量”
氮素限制 Nutrient-limitedWofost72_WLP_NWB需要土壤氮素参数文件,再做施肥情景

最小可运行模板
from pathlib import Path
from pcse.input import CABOFileReader, YAMLAgroManagementReader
from pcse.util import WOFOST72SiteDataProvider
from pcse.base import ParameterProvider
from pcse.models import Wofost72_WLP_CWB # 水分限制
from pcse.db import NASAPowerWeatherDataProvider
import pandas as pd

d = Path(“data”) # 1. 改这里
cropd = CABOFileReader(d / “crop” / “SUG0601.crop”)
soild = CABOFileReader(d / “soil” / “ec3.soil”)
sited = WOFOST72SiteDataProvider(WAV=10, CO2=360, LAT=52.0, LON=5.2)
params = ParameterProvider(cropdata=cropd, soildata=soild, sitedata=sited)

agro = YAMLAgroManagementReader(d / “agro” / “sugarbeet_calendar.agro”)
weather = NASAPowerWeatherDataProvider(latitude=52.0, longitude=5.2, year=2020)

wofost = Wofost72_WLP_CWB(params, weather, agro)
wofost.run_till_terminate()
df = pd.DataFrame(wofost.get_output()).set_index(“day”)
df.to_csv(“sugarbeet_wlp.csv”)

快速换自己的数据
**换作物:**把 SUG0601.crop 换成你自己的 .crop 或 .yml,并在 YAML 管理文件里同步 crop_name
**换土壤:**换 ec3.soil 即可,WAV 初始值可在 sited 里再微调
换气象:
– 本地 Excel → ExcelWeatherDataProvider(“nl1.xlsx”)
– 本地 CSV → CSVWeatherDataProvider(“meteo.csv”)
– 在线 NASA → NASAPowerWeatherDataProvider(lat, lon, year)
**换播期:**直接改 .agro 文件里的 crop_start_date / emergence_date / harvest_date

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/7 22:49:53

Archery数据库管理平台:5大核心功能深度解析与实战配置指南

Archery数据库管理平台:5大核心功能深度解析与实战配置指南 【免费下载链接】Archery hhyo/Archery: 这是一个用于辅助MySQL数据库管理和开发的Web工具。适合用于需要管理和开发MySQL数据库的场景。特点:易于使用,具有多种数据库管理功能&…

作者头像 李华
网站建设 2026/8/7 15:36:49

学Python有用吗?

作为通用性极强的编程语言,Python凭借简洁语法和丰富库,覆盖数据分析、人工智能、Web开发等核心场景,即便是新手也能快速适配职场需求。那么学Python有用吗?可以做什么工作?以下是详细的内容介绍。 学Python有用吗? 技多不压人&#xff0c…

作者头像 李华
网站建设 2026/8/7 22:35:34

Onekey终极指南:3分钟学会Steam游戏清单自动下载

Onekey终极指南:3分钟学会Steam游戏清单自动下载 【免费下载链接】Onekey Onekey Steam Depot Manifest Downloader 项目地址: https://gitcode.com/gh_mirrors/one/Onekey 还在为繁琐的Steam游戏清单下载而烦恼吗?Onekey让你告别手动搜索&#x…

作者头像 李华
网站建设 2026/8/7 1:21:55

程序员:微软的面试流程探讨

Q:微软的面试流程是什么样的?技术面试主要考察哪些方向?在疫情期间,微软实行远程线上面试,面试前会提前预约时间,4 - 5 轮技术面试会尽量排在同一天,面试内容主要包括算法和数据结构&#xff0c…

作者头像 李华
网站建设 2026/8/7 15:54:43

爆款!国产开源公众号AI管家ChatWiki全解析

一款专为微信生态打造的开源工作流自动化平台,以国内首创的公众号 AI 知识库 Agent 为核心,GitHub 已斩获 1.4k Star。无需复杂开发,通过可视化操作即可让公众号变身 “超级 AI 智能体”,覆盖内容创作、用户互动、运营自动化全场景…

作者头像 李华
网站建设 2026/8/7 15:52:23

2、Linux 操作系统基础与 Bash 命令行使用指南

Linux 操作系统基础与 Bash 命令行使用指南 1. Linux 操作系统概述 在计算机发展早期,指令和数据通常被存放在两个不同的存储区域。现代计算机采用了“冯诺伊曼架构”,这种架构由匈牙利计算机科学家约翰冯诺伊曼提出,它将数据和指令存放在同一个存储区域,使计算机的构建和…

作者头像 李华