我可以使用flopy.mf6.MFSimulation.load读入现有的MODFLOW6模拟。现在我想找出它有多少个应激期,作为一个整数,正如tdis包中的nper所定义的那样。做这件事最简单的方法是什么?
发布于 2019-04-21 19:41:47
所以这里的技巧是,在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'>对于标量,我们正在考虑改变这个行为,这样它的行为就像你想的那样(直接返回值),但我们还没有实现。
https://stackoverflow.com/questions/55578107
复制相似问题