{"title":"重新设计营养模型以加快模型开发","authors":"N. Huth, D. Holzworth","doi":"10.36334/modsim.2023.huth","DOIUrl":null,"url":null,"abstract":": Farming systems modelling is a well-established science and an important tool for analysing complex farming systems problems. An ability to model the major components of a farming system lies at the core of this approach. As a result, accurate and effective modelling of important Soil Organic Matter (SOM) stocks and processes is important in many applications of Farming Systems Models. These include various SOM and mineral pools, flows of carbon and nutrients between these pools, and losses from these processes. The SoilNitrogen model within APSIM (Holzworth et al, 2018) provides such a capability. Many researchers using the SoilNitrogen model have explored changes for improving model performance. Such efforts include i) changes in the number of soil pools, ii) flows between these pools, iii) functional forms used in calculating flows, and iv) parameters values used in these functions. However, implementation of such changes was not always straightforward because of the way models were implemented. Though there was some consideration of object-oriented approaches for abstracting the science of carbon and nutrient dynamics into instantiable models, the science was mostly captured using traditional procedural programming approaches in FORTRAN or C#. Though there was a clear conceptual model behind the specification of the model (e.g. pools, flows, algorithms), the use of traditional programming approaches did not reflect this way of thinking. Furthermore, it was difficult for researchers to understand or change model design. We used an approach, already found to be widely successful within APSIM for crops (Brown et al, 2014), to capture the needs of researchers. Classes were developed for pools, flows and functions. Users can alter the number of pools, flows between pools, the functional forms used to calculate flows, and parameter values used in functions. All can be altered via the user interface or command-line tools, thus facilitating alternate model configurations or designs within simulations to compare model structures and parameterisations (ie model comparison). This new functionality is referred to as the APSIM Nutrient model. We","PeriodicalId":390064,"journal":{"name":"MODSIM2023, 25th International Congress on Modelling and Simulation.","volume":"742 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Redesigning a nutrient model to enable faster model development\",\"authors\":\"N. Huth, D. Holzworth\",\"doi\":\"10.36334/modsim.2023.huth\",\"DOIUrl\":null,\"url\":null,\"abstract\":\": Farming systems modelling is a well-established science and an important tool for analysing complex farming systems problems. An ability to model the major components of a farming system lies at the core of this approach. As a result, accurate and effective modelling of important Soil Organic Matter (SOM) stocks and processes is important in many applications of Farming Systems Models. These include various SOM and mineral pools, flows of carbon and nutrients between these pools, and losses from these processes. The SoilNitrogen model within APSIM (Holzworth et al, 2018) provides such a capability. Many researchers using the SoilNitrogen model have explored changes for improving model performance. Such efforts include i) changes in the number of soil pools, ii) flows between these pools, iii) functional forms used in calculating flows, and iv) parameters values used in these functions. However, implementation of such changes was not always straightforward because of the way models were implemented. Though there was some consideration of object-oriented approaches for abstracting the science of carbon and nutrient dynamics into instantiable models, the science was mostly captured using traditional procedural programming approaches in FORTRAN or C#. Though there was a clear conceptual model behind the specification of the model (e.g. pools, flows, algorithms), the use of traditional programming approaches did not reflect this way of thinking. Furthermore, it was difficult for researchers to understand or change model design. We used an approach, already found to be widely successful within APSIM for crops (Brown et al, 2014), to capture the needs of researchers. Classes were developed for pools, flows and functions. Users can alter the number of pools, flows between pools, the functional forms used to calculate flows, and parameter values used in functions. All can be altered via the user interface or command-line tools, thus facilitating alternate model configurations or designs within simulations to compare model structures and parameterisations (ie model comparison). This new functionality is referred to as the APSIM Nutrient model. We\",\"PeriodicalId\":390064,\"journal\":{\"name\":\"MODSIM2023, 25th International Congress on Modelling and Simulation.\",\"volume\":\"742 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2023-08-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"MODSIM2023, 25th International Congress on Modelling and Simulation.\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.36334/modsim.2023.huth\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"MODSIM2023, 25th International Congress on Modelling and Simulation.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.36334/modsim.2023.huth","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
摘要
农业系统建模是一门成熟的科学,也是分析复杂农业系统问题的重要工具。对农业系统的主要组成部分进行建模的能力是这种方法的核心。因此,在农业系统模型的许多应用中,准确有效地模拟重要的土壤有机质(SOM)储量和过程是很重要的。这些包括各种SOM和矿物池,这些池之间的碳和营养物质流动,以及这些过程造成的损失。APSIM中的SoilNitrogen模型(Holzworth等人,2018)提供了这样的能力。许多使用土壤氮模型的研究人员已经探索了改善模型性能的变化。这些努力包括i)土壤库数量的变化,ii)这些库之间的流动,iii)计算流量时使用的函数形式,以及iv)这些函数中使用的参数值。然而,由于模型的实现方式,这些变更的实现并不总是直截了当的。虽然考虑了一些面向对象的方法来将碳和营养动态的科学抽象到可实例化的模型中,但科学主要是使用传统的FORTRAN或c#过程编程方法来捕获的。尽管在模型的规范背后有一个清晰的概念模型(例如,池、流、算法),但传统编程方法的使用并没有反映出这种思维方式。此外,研究人员很难理解或改变模型设计。我们使用了一种方法来捕捉研究人员的需求,该方法已经被发现在APSIM作物中广泛成功(Brown et al ., 2014)。类是为池、流和函数开发的。用户可以更改池的数量、池之间的流、用于计算流的函数形式以及函数中使用的参数值。所有这些都可以通过用户界面或命令行工具进行更改,从而促进模拟中的替代模型配置或设计,以比较模型结构和参数化(即模型比较)。这个新功能被称为APSIM营养模型。我们
Redesigning a nutrient model to enable faster model development
: Farming systems modelling is a well-established science and an important tool for analysing complex farming systems problems. An ability to model the major components of a farming system lies at the core of this approach. As a result, accurate and effective modelling of important Soil Organic Matter (SOM) stocks and processes is important in many applications of Farming Systems Models. These include various SOM and mineral pools, flows of carbon and nutrients between these pools, and losses from these processes. The SoilNitrogen model within APSIM (Holzworth et al, 2018) provides such a capability. Many researchers using the SoilNitrogen model have explored changes for improving model performance. Such efforts include i) changes in the number of soil pools, ii) flows between these pools, iii) functional forms used in calculating flows, and iv) parameters values used in these functions. However, implementation of such changes was not always straightforward because of the way models were implemented. Though there was some consideration of object-oriented approaches for abstracting the science of carbon and nutrient dynamics into instantiable models, the science was mostly captured using traditional procedural programming approaches in FORTRAN or C#. Though there was a clear conceptual model behind the specification of the model (e.g. pools, flows, algorithms), the use of traditional programming approaches did not reflect this way of thinking. Furthermore, it was difficult for researchers to understand or change model design. We used an approach, already found to be widely successful within APSIM for crops (Brown et al, 2014), to capture the needs of researchers. Classes were developed for pools, flows and functions. Users can alter the number of pools, flows between pools, the functional forms used to calculate flows, and parameter values used in functions. All can be altered via the user interface or command-line tools, thus facilitating alternate model configurations or designs within simulations to compare model structures and parameterisations (ie model comparison). This new functionality is referred to as the APSIM Nutrient model. We