2

我了解 paraview 可以通过其 VTK 后端读取经典的 netcdf 文件。然而,经过几次尝试,我无法让它读取使用增强数据模型的 netcdf 4 文件。我想使用新的文件格式,因为它允许使用 MPI 进行并行输出。

我从http://www.unidata.ucar.edu/software/netcdf/examples/programs/编译了一个示例 C 程序,将创建标志更改为 NC_NETCDF4 并尝试在 paraview (v4.0.1) 中打开生成的文件,我通过 ubuntu 包管理器安装的。它总是告诉我“找不到阅读器(...)。请选择一个:(...)”但是,没有一个可供选择的阅读器实际上可以阅读该文件。

有人可以告诉我是否

  • paraview 根本无法打开 netcdf 4 文件,或者

  • 它需要某种安装标志和重新安装

  • paraview中有一些我还没有找到的奇迹选项?
4

3 回答 3

1

解决方案是从套件下载站点下载当前版本,而不是 ubuntu 包管理器中的版本。显然,ubuntu 的 paraview 包中的一些安装标志设置错误。

于 2014-08-06T09:11:51.497 回答
1

xmdffiles 还帮助我使用旧版本的paraview读取netcdf文件 。

实际上,我使用它们来处理另一个问题,我不确定这对您是否重要netcdf文件是基于数组索引保存的。如果您希望使用正确的物理坐标在paraview上可视化它们,我认为唯一的方法是创建一个xmdf文件。不确定这是否是唯一的方法,如果有其他方法,请发表评论,也请看看我的问题

一个示例 xmdf 文件如下所示:

<?xml version="1.0" ?>
<!DOCTYPE Xdmf SYSTEM "Xdmf.dtd" []>
<Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="2.0">
   <Domain>
      <Grid Name="gridxyz">
        <Topology TopologyType="3DSMesh" NumberOfElements="064 0129 0513">
        </Topology>
<!-- Read Coordinates -->
        <Geometry GeometryType="X_Y_Z">
           <DataItem Name="X" Format="HDF" NumberType="Float" Precision="8" Dimensions="0064 0129 0513">
                       grid.nc:/gridx
           </DataItem>
           <DataItem Name="Y" Format="HDF" NumberType="Float" Precision="8" Dimensions="0064 0129 0513">
                       grid.nc:/gridy
           </DataItem>
           <DataItem Name="Z" Format="HDF" NumberType="Float" Precision="8" Dimensions="0064 0129 0513">
                       grid.nc:/gridz
           </DataItem>
        </Geometry>
<!-- Read Scalar -->
        <Attribute Name="ux1" AttributeType="Scalar" Center="node">
           <DataItem Format="HDF" NumberType="Float" Precision="8" Dimensions="0064 0129 0513">
                fields021.nc:/ux1
           </DataItem>
        </Attribute>
        <Attribute Name="uy1" AttributeType="Scalar" Center="node">
           <DataItem Format="HDF" NumberType="Float" Precision="8" Dimensions="0064 0129 0513">
                fields021.nc/uy1
           </DataItem>
        </Attribute>
        <Attribute Name="uz1" AttributeType="Scalar" Center="node">
           <DataItem Format="HDF" NumberType="Float" Precision="8" Dimensions="0064 0129 0513">
                fields021.nc:/uz1
           </DataItem>
        </Attribute>
     </Grid>
   </Domain>
</Xdmf>
于 2015-10-20T09:30:17.263 回答
0

我在 OS X 上使用 Paraview 5.5.0-RC3 时遇到了同样的问题。通过将 NetCDF 文件保存为'classic mode'解决了这个问题,如下所示:

from netCDF4 import Dataset
foo_dataset = Dataset("foo.nc", "w", format="NETCDF4_CLASSIC")
于 2018-03-29T04:34:22.163 回答