微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用软盘的 MODFLOW 6 数据集的 VTK 导出?

如何解决使用软盘的 MODFLOW 6 数据集的 VTK 导出?

我知道 Flopy 可以从 MF2005 数据集(例如 flopy3_vtk_export.ipynb)导出 VTK 文件,但是我试图让该示例使用 MODFLOW 6 数据集和一些代码编辑,但没有成功。

Flopy 是否真的支持从 MODFLOW 6 数据集导出 VTK,或者该功能尚不可用?

回复 Sarah Leray 的回复
我尝试使用 vtk.export_heads 函数,发现模型对象似乎期待许多在 MF6 公式中不存在的属性。您是否遇到过这个问题,如果有,您是如何解决的?修改过的源代码

import os
import sys
try:
    import flopy
except:
    fpth = os.path.abspath(os.path.join('..','..'))
    sys.path.append(fpth)
    import flopy

from flopy.export import vtk

sim_name = "example_model"
sim_path = os.path.join("data","flopy_mf6_tutorial")
heads_file_name = sim_name + ".hds"
heads_file = os.path.join(sim_path,heads_file_name)
head_output_folder = os.path.join(sim_path,"heads")

# load the simulation
loaded_sim = flopy.mf6.MFSimulation.load(sim_name,'mf6',sim_path)

#export VTK heads
vtk.export_heads(loaded_sim,heads_file,head_output_folder,smooth=False,kstpkper=[(0,0)],point_scalars=False,nanval=-999.99)

...并且我得到一个'属性错误:verbose',因为verbose在mf6.MFSimulation中不存在(但在从MF2005等导出时使用的等效modflow.Modflow中存在)。我将verbose 强制设置为False 只是为了让代码继续运行,然后出现一个'attribute error: modelGrid',它看起来像是一个更实质和更复杂的缺失属性

解决方法

我还想以 vtk 格式导出 modflow 6 模型的结果。存在例程(vtk.export_heads、vtk.export_model 等)。您可以查看这些页面: enter image description here https://flopy.readthedocs.io/en/3.3.2/source/flopy.export.vtk.html

不幸的是,我面临着非常长的计算时间。我有一个 200 万个网格模型,需要几个小时。目前,它是瘫痪的

如果您找到减少导出时间的方法,请告诉我!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。