| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> The Python Crop Simulation Environment 系列学习笔记(二) -> 正文阅读 |
|
[Python知识库]The Python Crop Simulation Environment 系列学习笔记(二) |
作者:recommend-item-box type_blog clearfix |
我是目录使用自己的数据运行PCSE/WOFOST模型Introduction要使用您自己的数据源运行PCSE/WOFOST(以及一般的PCSE模型),您需要三种不同类型的输入: 在本例中,我们将在瓦赫宁根(荷兰)对甜菜进行模拟,我们将从几个不同的来源逐步读取输入数据,而不是使用预先配置的start_wofost()脚本。例如,假设数据文件位于此笔记本所在目录的数据目录中。 Importing the relevant modules
Reading model parametersCrop parameters 作物参数作物参数由参数名称和相应的参数值组成,需要对作物模拟模型的组成部分进行参数化。这些是关于物候学、同化作用、呼吸作用、生物量分配等的作物特定值。甜菜的参数文件取自 WOFOST 控制中心的作物文件。 由于Wageningen中的许多作物模型都是用FORTRAN编写的,因此Wageningen中许多模型的作物参数通常以CABO格式提供,可通过TTUTIL FORTRAN库读取。这种CABO格式将逐步淘汰,PCSE将转向基于YAML的新格式,请参见此处的示例。但是,PCSE尽量做到向后兼容,并提供CABOFileReader以读取CABO格式的参数文件。CABOFileReader返回一个包含参数名称/值对的字典:
Soil parameters 土壤参数提供了与土壤类型和土壤物理特性相关的参数名称/值对。参数的数量是可变的,取决于用于模拟的土壤水平衡类型。在这个例子中,我们将使用自由排水土壤的水平衡,并使用中细砂的土壤文件:ec3.soil。
Site parameters 位点参数场地参数提供与作物或土壤无关的辅助参数。例如,水平衡的初始条件,如初始土壤含水量(土壤初始含水量)(WAV)和初始和最大表面存储(SSI、SSMAX)。还有大气𝐶𝑂二氧化碳浓度,是一个典型的现场参数。目前,我们可以直接在Python命令行上将这些参数定义为一个简单的Python字典。但是,使用WOFOST71SiteDataProvider记录站点参数并提供合理的默认值更方便:
Packaging all parameters 包装参数最后,我们需要使用“ParameterProvider”将不同的参数集打包成一个变量。这是必需的,因为PCSE需要一个包含所有参数值的变量。使用此方法的另一个优点是,在运行多个参数值略有不同的模拟时,可以轻松覆盖参数值:
Agromanagement农业管理输入提供了农业活动的开始日期、作物模拟的开始_日期/开始_类型、作物模拟的结束_日期/结束_类型以及作物模拟的最大持续时间。包括后者是为了避免不切实际的长时间模拟,例如由于温度总和要求过高而导致的模拟。 agromanagement输入使用一种称为[YAML]的特殊语法进行定义(http://yaml.org/),这允许轻松创建定义农业管理所需的更复杂的结构。Wageningen“Sugarbete_calendar.agro”中甜菜的农业管理文件可通过“YAMLAgroManagementReader”读取:
Daily weather observations运行模拟需要每日天气变量。PCSE中有多个用于读取天气数据的数据提供程序,请参阅[天气数据提供程序]部分(http://pcse.readthedocs.io/en/stable/reference_guide.html#weather-数据提供者)以获取概述。 在本例中,我们将使用excel文件中的天气数据,该文件提供了2004年至2008年期间瓦赫宁根的每日天气数据。我们将使用excel WeatherDataProvider从文件中读取数据:
Importing, initializing and running a PCSE modelPCSE使用模拟引擎运行作物模拟,此引擎获取一个配置文件,该文件指定了模拟需要使用的作物、土壤和农业管理的组件。因此,任何PCSE模型都可以通过导入引擎并使用给定的配置文件和相应的参数、天气数据和农业管理对其进行初始化来启动。
然后,我们可以在WOFOST对象上运行模拟并使用get_output()方法检索每日模拟输出的时间序列。最后,我们将模拟结果转换为 pandas dataframe:
Visualizing simulation results最后,我们可以使用MatPlotLib绘图软件包生成WOFOST变量的一些图形,such as the development (DVS), total biomass总生物量 (TAGP), leaf area index叶面积指数 (LAI) and root-zone soil moisture 根区土壤水分(SM) 。
总结本期内容主要介绍了PCSE: The Python Crop Simulation Environment 利用自己的数据进行运行。 参考文献: |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 9:21:26- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |