首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在MODFLOW 6模拟中获得应激期的数量?

如何在MODFLOW 6模拟中获得应激期的数量?
EN

Stack Overflow用户
提问于 2019-04-09 00:46:08
回答 1查看 134关注 0票数 1

我可以使用flopy.mf6.MFSimulation.load读入现有的MODFLOW6模拟。现在我想找出它有多少个应激期,作为一个整数,正如tdis包中的nper所定义的那样。做这件事最简单的方法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-21 19:41:47

所以这里的技巧是,在MODFLOW 6的flopy类中,所有的信息都存储为对象,包括整数、数组、浮点数等。这给了我们一些很好的优势,但也使一些语法有点困难,尽管我们正在努力改进这一点。

下面是一个非常简单的模型:

代码语言:javascript
复制
import flopy
sim = flopy.mf6.MFSimulation()
tdis = flopy.mf6.ModflowTdis(sim, nper=10)
gwf = flopy.mf6.ModflowGwf(sim)
dis = flopy.mf6.ModflowGwfdis(gwf)

如果我们尝试这样获取nper:

代码语言:javascript
复制
nper = tdis.nper
print(nper)

然后我们返回repr,它看起来像这样:

代码语言:javascript
复制
{internal}
(10)

我们获取实际数据的方法是追加数组:

代码语言:javascript
复制
nper = tdis.nper.array
print(nper)
print(type(nper))

在这种情况下,我们将获得所需的信息:

代码语言:javascript
复制
10
<class 'int'>

对于标量,我们正在考虑改变这个行为,这样它的行为就像你想的那样(直接返回值),但我们还没有实现。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55578107

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档