# Is vtkUnstructuredGrid part of vtkDataSet

**URL:** https://discourse.paraview.org/t/is-vtkunstructuredgrid-part-of-vtkdataset/4988
**Category:** ParaView Support
**Created:** [July 30, 2020, 12:00am UTC](https://discourse.paraview.org/t/is-vtkunstructuredgrid-part-of-vtkdataset/4988 "2020-07-30T00:00:06Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![dannykhf](https://discourse.paraview.org/letter_avatar_proxy/v4/letter/d/c67d28/32.png) [@dannykhf](https://discourse.paraview.org/u/dannykhf)
#### Post date: [July 30, 2020, 12:00am UTC](https://discourse.paraview.org/t/is-vtkunstructuredgrid-part-of-vtkdataset/4988/1 "2020-07-30T00:00:06Z")

</div>

I have a clipped data set called vtk\_data. It is a vtkUnstructuredGrid type

```
print(vtk_data.GetDataInformation(0).GetDataClassName())
>> vtkUnstructuredGrid

```

When I check if it is ‘vtkDataSet’ it returns 0

```
vtk_data.GetDataInformation(0).IsA("vtkDataSet")
>> 0
```

---

<div class="post-metadata">

### Author: ![Andy\_Bauer](https://discourse.paraview.org/user_avatar/discourse.paraview.org/andy_bauer/32/5442_2.png) [@Andy\_Bauer](https://discourse.paraview.org/u/Andy_Bauer)
#### Post date: [July 30, 2020, 12:25pm UTC](https://discourse.paraview.org/t/is-vtkunstructuredgrid-part-of-vtkdataset/4988/2 "2020-07-30T12:25:08Z")

</div>

This is because you’re not working directly with the dataset but the client’s representation of the dataset. I’d bet that if you do `vtk_data.GetDataInformation(0).IsA("vtkUnstructuredGrid")` that you’d get the same result since the class that you’re working on isn’t actually the dataset itself but the client’s representation of what is on the server.

---

<div class="post-metadata">

### Author: ![dannykhf](https://discourse.paraview.org/letter_avatar_proxy/v4/letter/d/c67d28/32.png) [@dannykhf](https://discourse.paraview.org/u/dannykhf)
#### Post date: [August 3, 2020, 5:45am UTC](https://discourse.paraview.org/t/is-vtkunstructuredgrid-part-of-vtkdataset/4988/4 "2020-08-03T05:45:56Z")

</div>

You are right. `vtk_data.GetDataInformation(0).IsA("vtkUnstructuredGrid")` does produce `0` as well. The reason why I asked was because I have the following script:

> print(‘vtk\_data’)  
> print(vtk\_data.GetDataInformation().GetNumberOfPoints())
> 
> d3Filter = D3(Input=vtk\_data)  
> d3Filter .UpdatePipeline()  
> print(‘d3Filter.GetDataInformation().GetNumberOfPoints()’)  
> print(d3Filter.GetDad3FiltertaInformation().GetNumberOfPoints()
> 
> fetch = servermanager.Fetch( d3Filter )  
> print('fetch.GetNumberOfPoints()

Output:

> vtk\_data  
> 1203402  
> d3Filter.GetDataInformation().GetNumberOfPoints()  
> 1305894  
> fetch.GetNumberOfPoints()  
> 166927

It looks like the `fetch` function only fetch data from one rank. By looking at the `fetch` function source code here [https://kitware.github.io/paraview-docs/latest/python/\_modules/paraview/servermanager.html](https://kitware.github.io/paraview-docs/latest/python/_modules/paraview/servermanager.html). I suspected the object I passed failed all the follow if statement check, and haven’t had a `reduce` operation.

> ```
> if cdinfo.GetDataIsComposite():
> paraview.print_debug_info("use composite data append")
> reducer.PostGatherHelperName = "vtkMultiBlockDataGroupFilter"
> 
> elif input.GetDataInformation(idx).GetDataClassName() == "vtkPolyData":
> paraview.print_debug_info("use append poly data filter")
> reducer.PostGatherHelperName = "vtkAppendPolyData"
> 
> elif input.GetDataInformation(idx).GetDataClassName() == "vtkRectilinearGrid":
> paraview.print_debug_info("use append rectilinear grid filter")
> reducer.PostGatherHelperName = "vtkAppendRectilinearGrid"
> 
> elif input.GetDataInformation(idx).IsA("vtkDataSet"):
> paraview.print_debug_info("use unstructured append filter")
> reducer.PostGatherHelperName = "vtkAppendFilter"
> 
> ```

Would that be because I am not passing the actual data?
