我可以使用 flopy.mf6.MFSimulation.load 读取现有的 MODFLOW 6 模拟。现在我想找出它有多少个压力周期,作为一个整数,由 tdis 包中的 nper 定义。最简单的方法是什么?
问问题
142 次
1 回答
1
所以这里有个窍门,在 MODFLOW 6 的 flopy 类中,所有信息都存储为对象,包括整数、数组、浮点数等。这给了我们一些很好的优势,但它也使一些语法有点困难,尽管我们正在努力改善这一点。
这是一个非常简单的模型:
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)
然后我们取回 repr,如下所示:
{internal}
(10)
我们获取实际数据的方式是追加数组:
nper = tdis.nper.array
print(nper)
print(type(nper))
在这种情况下,我们会得到所需的信息:
10
<class 'int'>
对于标量,我们正在考虑改变这种行为,使其表现得像你想象的那样(直接返回值),但我们还没有实现。
于 2019-04-21T11:41:46.840 回答