如何获得MODFLOW 6模拟中的应力周期数?

时间:2019-04-08 16:46:08

标签: flopy

我可以使用flopy.mf6.MFSimulation.load读取现有的MODFLOW 6模拟。现在,我想找出它在tdis包中由nper定义的整数个应力周期。最简单的方法是什么?

1 个答案:

答案 0 :(得分:1)

这就是窍门,在MODFLOW 6的flopy类中,所有信息都存储为对象,包括整数,数组,floats等。这给我们带来了一些不错的好处,但同时也使一些语法成为可能。有点困难,尽管我们正在努力改进。

这是一个非常简单的模型:

import flopy
sim = flopy.mf6.MFSimulation()
tdis = flopy.mf6.ModflowTdis(sim, nper=10)
gwf = flopy.mf6.ModflowGwf(sim)
dis = flopy.mf6.ModflowGwfdis(gwf)

如果我们尝试像这样获得nper:

nper = tdis.nper
print(nper)

然后我们返回代表,如下所示:

{internal}
(10)

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

nper = tdis.nper.array
print(nper)
print(type(nper))

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

10
<class 'int'>

对于标量,我们正在考虑更改此行为,以使其表现得像您想的那样(直接返回值),但是我们尚未实现。