# See partition information in a vtkPartitionedDataSet

**URL:** https://discourse.paraview.org/t/see-partition-information-in-a-vtkpartitioneddataset/17170
**Category:** ParaView Support
**Created:** [September 8, 2025, 4:06pm UTC](https://discourse.paraview.org/t/see-partition-information-in-a-vtkpartitioneddataset/17170 "2025-09-08T16:06:32Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![Kenneth\_Moreland](https://discourse.paraview.org/user_avatar/discourse.paraview.org/kenneth_moreland/32/15033_2.png) [@Kenneth\_Moreland](https://discourse.paraview.org/u/Kenneth_Moreland)
#### Post date: [September 8, 2025, 4:06pm UTC](https://discourse.paraview.org/t/see-partition-information-in-a-vtkpartitioneddataset/17170/1 "2025-09-08T16:06:32Z")

</div>

Is there a way to get information about the partitions in a `vtkPartitionedDataSet` object? For blocks that are in a `vtkPartitionedDataSetCollection`, I can see information about the blocks in the MultiBlock Inspector and other places. However, the ParaView GUI treats a `vtkPartitionedDataSet` as a single entity.

I understand why ParaView is doing this, except sometimes when debugging meshes I really need to inspect the partitions under the `vtkPartitionedDataSet`. Is there an easy way to do this?

---

<div class="post-metadata">

### Author: ![mwestphal](https://discourse.paraview.org/user_avatar/discourse.paraview.org/mwestphal/32/17_2.png) [@mwestphal](https://discourse.paraview.org/u/mwestphal)
#### Post date: [September 8, 2025, 4:08pm UTC](https://discourse.paraview.org/t/see-partition-information-in-a-vtkpartitioneddataset/17170/2 "2025-09-08T16:08:01Z")

</div>

ConvertToMultiblock should do the trick.

---

<div class="post-metadata">

### Author: ![Kenneth\_Moreland](https://discourse.paraview.org/user_avatar/discourse.paraview.org/kenneth_moreland/32/15033_2.png) [@Kenneth\_Moreland](https://discourse.paraview.org/u/Kenneth_Moreland)
#### Post date: [September 8, 2025, 4:52pm UTC](https://discourse.paraview.org/t/see-partition-information-in-a-vtkpartitioneddataset/17170/3 "2025-09-08T16:52:28Z")

</div>

Thanks for the suggestion, @mwestphal . Unfortunately, that is not working for me.

In my case, the `vtkPartitionedDataSet` is nestled in a `vtkPartitionedDataSetCollection`. The top level object is converted to a `vtkMultiBlockDataSet`, but the contained partitions are converted to a `vtkMultiPieceDataSet`. ParaView seems to be treating the `vtkMultiPieceDataSet` the same way it treats the `vtkPartitionedDataSet`.

---

<div class="post-metadata">

### Author: ![cory.quammen](https://discourse.paraview.org/user_avatar/discourse.paraview.org/cory.quammen/32/11193_2.png) [@cory.quammen](https://discourse.paraview.org/u/cory.quammen)
#### Post date: [September 8, 2025, 5:17pm UTC](https://discourse.paraview.org/t/see-partition-information-in-a-vtkpartitioneddataset/17170/4 "2025-09-08T17:17:05Z")

</div>

Yeah, by intention ParaView hides `vtkPartitionedDataSet` and `vtkMultiPieceDataSet`, which as you point out, is a pain for debugging.

I was looking for a hack to use dataset id to select partitions from a partitioned dataset, but nothing I tried worked.

The best I can think of is to save the dataset out to the XML partitioned dataset format and load individual partitions from the output on disk.

---

<div class="post-metadata">

### Author: ![Kenneth\_Moreland](https://discourse.paraview.org/user_avatar/discourse.paraview.org/kenneth_moreland/32/15033_2.png) [@Kenneth\_Moreland](https://discourse.paraview.org/u/Kenneth_Moreland)
#### Post date: [September 8, 2025, 9:14pm UTC](https://discourse.paraview.org/t/see-partition-information-in-a-vtkpartitioneddataset/17170/5 "2025-09-08T21:14:43Z")

</div>

I hacked away around this. You can use a `Programmable Filter` to pull out all the partitions to each have its own block. Here is the script that I used:

```python
input0 = inputs[0]

def convert_partitions(src: vtk.vtkPartitionedDataSetCollection,
                       dest: vtk.vtkPartitionedDataSetCollection):
  # Count partitions
  num_partitions = 0
  for block_i in range(0, src.GetNumberOfPartitionedDataSets()):
    block = src.GetPartitionedDataSet(block_i)
    num_partitions += block.GetNumberOfPartitions()
  print("Num partitions", num_partitions)
  dest.SetNumberOfPartitionedDataSets(num_partitions)
  # Convert partitions to blocks
  partition_i = 0
  for block_i in range(0, src.GetNumberOfPartitionedDataSets()):
    block = src.GetPartitionedDataSet(block_i)
    for block_part_i in range(0, block.GetNumberOfPartitions()):
      partition = vtk.vtkPartitionedDataSet()
      partition.SetNumberOfPartitions(1)
      partition.SetPartition(1, block.GetPartition(block_part_i))
      dest.SetPartitionedDataSet(partition_i, partition)
      partition_i += 1

convert_partitions(input0.VTKObject, output.VTKObject)

```

To make this a bit easier, here is a python script that can be loaded as a plugin. It will create a filter named `Partitions To Blocks` that will do the same thing.

[partitions-to-blocks-plugin.py](https://discourse.paraview.org/uploads/short-url/qQo5USvmZ4cfWY7VU7Pggvfq9cb.py) (1.9 KB)

---

<div class="post-metadata">

### Author: ![mwestphal](https://discourse.paraview.org/user_avatar/discourse.paraview.org/mwestphal/32/17_2.png) [@mwestphal](https://discourse.paraview.org/u/mwestphal)
#### Post date: [September 9, 2025, 5:48am UTC](https://discourse.paraview.org/t/see-partition-information-in-a-vtkpartitioneddataset/17170/6 "2025-09-09T05:48:02Z")

</div>

Ha right, my solution seems to work only with a partitioned dataset, not with a pdc.  
TBF this could be added to ConvertToMB or ConvertToPDC very easily.

---

<div class="post-metadata">

### Author: ![Kenneth\_Moreland](https://discourse.paraview.org/user_avatar/discourse.paraview.org/kenneth_moreland/32/15033_2.png) [@Kenneth\_Moreland](https://discourse.paraview.org/u/Kenneth_Moreland)
#### Post date: [September 9, 2025, 11:23am UTC](https://discourse.paraview.org/t/see-partition-information-in-a-vtkpartitioneddataset/17170/7 "2025-09-09T11:23:43Z")

</div>

Is that a voluneer? 😉

That sounds like a good idea to me. But should the behavior of exposing partitions as blocks be the default or only behavior?

---

<div class="post-metadata">

### Author: ![mwestphal](https://discourse.paraview.org/user_avatar/discourse.paraview.org/mwestphal/32/17_2.png) [@mwestphal](https://discourse.paraview.org/u/mwestphal)
#### Post date: [September 9, 2025, 11:24am UTC](https://discourse.paraview.org/t/see-partition-information-in-a-vtkpartitioneddataset/17170/8 "2025-09-09T11:24:42Z")

</div>

It definitely should not be the default imo.
