问题标签 [flopy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
51 浏览

flopy - 如何仅通过软盘中使用的单元格创建 shapefile?

实际上我的问题在标题中。例如,有一个模型有 2 个应力周期 3 层 15 列和 10 行,我正在修改通用头部边界包。在我通过给出应力周期、层、行、列、头部和导电性值来编辑模型单元之后;我想将该包导出为 shapefile。当我使用导出功能时,它会创建一个 shapefile,但属性表仅包含显示模型中所有单元格的行和列信息。我想在形状文件中只看到修改过的单元格特征,其中包含每个应力周期和层的头部和条件信息。因为,我将使用该信息来更新包值。有没有办法将选定的单元格导出为 shapefile 中的特征?

0 投票
1 回答
298 浏览

flopy - 将现有的mf2005模型加载到软盘并更改参数

我有一个在 Processing Modflow gui 中创建的现有 MODFLOW2005 模型。我想将此模型导入 flopy 以便能够对模型参数进行敏感性分析,我认为使用 flopy 应该更快。

我可以使用以下方法加载现有的 modflow 模型:

ml = flopy.modflow.Modflow.load("modelnamw.nam", model_ws=model_ws,verbose=True,check=False)

并且可以使用以下方法重命名模型以创建新输出:

ml.name = '新型号'

ml.write_input()

有没有一种方法可以让整个模型保持原样,而只需更改水力传导率 (hy) 参数(保持 bcf 输入的其余部分不变)?

谢谢

0 投票
0 回答
255 浏览

python - 使用 Flopy 创建 vtk 输出

我正在尝试将模型网格从 Modflow 模型写入 vtk 输出以在 Paraview 中打开。

我使用了地下水远景并创建了 MODFLOW - USG(非结构化网格)

当我尝试使用导出功能时,出现以下错误:

回溯(最近一次通话最后):

File "C:\Program Files\JetBrains\PyCharm Community Edition 2019.2.5\helpers\pydev\pydevd.py", line 1415, in _exec pydev_imports.execfile(file, globals, locals) # 执行脚本

文件“C:\Program Files\JetBrains\PyCharm Community Edition 2019.2.5\helpers\pydev_pydev_imps_pydev_execfile.py”,第 18 行,在 execfile exec(compile(contents+"\n", file, 'exec'), glob, loc)

文件“C:/Work/Models/Work/Projects/Job 302/Export grid.py”,第 16 行,在 vtkobj = fp.export.vtk.Vtk(mf)

文件“C:\ProgramData\Anaconda3\lib\site-packages\flopy\export\vtk.py”,第 206 行,在init self.shape = (self.modelgrid.nlay, self.modelgrid.nrow,

AttributeError:“网格”对象没有属性“nlay”

下面是我使用的代码:

谢谢

0 投票
1 回答
53 浏览

flopy - 垂直电导 (vcont) bcf 文件的软盘代码

我有一个两层模型。顶层无约束,底层有约束。我似乎无法让我的软盘模型垂直电导与在程序中自动计算的 PMWIN 模型的结果相匹配。这是相关的代码:

型号尺寸

每个模型层(顶部和底部)的高程都是从文本文件中导入的:

# Layer 1的底部标高是从txt文件中导入的

确定每个模型层的含水层厚度:

如果第 1 层含水层从水位(不是顶部标高)开始计算,则计算其厚度:

整机采用10m/d导水率

垂直电导率

计算第 2 层的透射率

计算垂直电导 (vcont)

写入 BCF 文件:

模型输出与 VCONT 的 PMWIN 计算不匹配

如果有人对我哪里出错有任何建议,请帮忙!

我根据 PMWIN 手册附上了公式

0 投票
1 回答
188 浏览

flopy - Flopy 生成的 shapefile 不考虑 MODFLOW DIS lenuni 值?

我使用 Flopy 生成了代表 MODFLOW River Package 特征的多边形特征的 shapefile。但是,shapefile 中网格单元面要素的大小是应有大小的 3.28 倍。我的模型的长度单位是英尺(我的模型的 MODFLOW 离散化包中的 LENUNI 变量等于 1),我使用的是 NAD83 / UTM Zone 16N(长度单位是米,EPSG:26916)。因此,看起来 MODFLOW 模型单位(英尺)和 GIS 坐标参考系统(米)之间的转换由于某种原因没有发生。

Flopy 生成的 shapefile 中的网格原点和旋转看起来没问题。这是用于生成 shapefile 的 Flopy 代码:

执行最后一行代码时,shapefile 被写入磁盘,但以下错误消息出现在确认 shapefile 已输出的消息之前:

与上述错误消息关联的 URL 是https://spatialreference.org/ref/epsg/EPSG:26916/esriwkt。此 URL 显示以下内容:

未找到,/ref/epsg/EPSG:26916/esriwkt。

那么问题可能是 Flopy 没有从 spatialreference.org 获得所需的信息吗?如果是这样,Flopy 生成的 URL 是否不正确?我的代码中有什么不正确的吗?

非常感谢。

0 投票
0 回答
64 浏览

python - 使用软盘的 sfroutputfile 模块读取 SFR 预算文件时出错

我正在使用 flopy 中的 sfroutputfile 模块将 SFR 预算输出文件读取到 pandas 数据帧。下面显示的代码在使用 python27 执行的先前版本的 flopy (v3.2.12) 下工作。尝试使用 Python3 和 flopy v3.3.0 再次执行代码会在调用get_dataframe()函数时产生错误。

错误:

错误中显示的值是FLOW INTO STRM中的第一个条目。康复中心。SFR 输出文件的列(第 6 列)。该函数似乎在此列中查找整数,但正在查找显示的值。

最新版本中get_dataframe()函数如何解析文件的列是否存在问题?或者在新版本下执行这个功能有什么本质上的不同?

谢谢!

0 投票
0 回答
54 浏览

flopy - 如何重新创建 DDN 文件或地理参考输出 HDS

我已经使用二进制实用程序从两个模型中读取 .HDS 输出文件以计算差异(下降),我想知道是否有办法将其重新转换为 .DDN 二进制文件以将其重新导入模流。

或者,有没有办法引用通过读取 HDS 文件创建的数组中的行/列号,以便我可以对其进行轮廓化并在不同的程序(即 Surfer)中绘图?

谢谢!

0 投票
1 回答
128 浏览

flopy - 在 FloPy 中加载带有 Voronoi 网格的现有 MODFLOW-USG 模型

我正在尝试使用 FloPy(Windows 环境)加载现有的 MODFLOW-USG 模型。该模型有一个Voronoi网格,这似乎会触发“加载”功能:

我收到以下错误,这似乎与 FloPy 期望具有行和列的结构化网格有关:

我找不到任何文档或 Jupyter 笔记本,其中包含使用 Voronoi 网格加载现有模型的示例,仅创建新的三角形网格或结构化/局部网格细化网格。

0 投票
1 回答
50 浏览

python - 将不同的数组转换为循环

我想知道是否可以将这些下一个过程转换为一个循环,以便我可以为此使用一个词(而不是作为向量):

如您所见,每层有 4 个形状(总共 4 层)。我正在尝试为dem.shape我拥有的每一层放置一个特定/对应的“zipp”向量位置(在向量中,zipp[i]每个i都是 each 的数组dem)。

zipp[i]我想要它做的是用数字 1 替换每个层/形状/dem中包含的数组中大于或等于零的那些值。

但是,因此,我必须将它作为一个词而不是向量或数组来传递,所以我一直在考虑一个循环,但还没有得到足够的启发。

谢谢 :)

0 投票
0 回答
34 浏览

python - 如何解决 Flopy 中用于头表边界的此错​​误?

我一直在尝试使用 MODFLOW6 将我的头部数据放入我的模型中,但出现以下错误:

我已经尝试了任何可能的方法,strt 是来自栅格(头表数据的边界)的数组,栅格是 .tiff 格式以及模型的其他层。另外,我确保它们具有相同的像素大小和范围。我该如何解决这个错误?谢谢