[Paraview] extract surface of multiblock mesh

Chris Kees christopher.e.kees at usace.army.mil
Sun Apr 5 22:53:52 EDT 2009


Berk,

Thanks for correcting me. I'll try adding the vtkGhostLevels to the  
XDMF and see how that goes.

Chris
On Apr 4, 2009, at 2:50 PM, Berk Geveci wrote:

> The right way to deal with this situation is to mark the ghost cells
> as ghost. If you create a cell array called vtkGhostLevels and assign
> 0 to inside cells and 1 to ghost cells, you should not need
> MergeBlocks or CleanToGrid. Note that this array has to be of type
> unsigned char. There are actual benefits to keeping ghost levels since
> some algorithms will produce better results.
>
> -berk
>
> On Thu, Apr 2, 2009 at 6:37 PM, Chris Kees
> <christopher.e.kees at usace.army.mil> wrote:
>> I turned off the overlapping domain decomposition (ghost cells) for  
>> a simple
>> problem and the sequence
>>
>> MergeBlocks->CleantoGrid->ExtractSurface->Clip
>>
>> shows just the physical boundary of the problem (clipped open so  
>> you can see
>> inside). Also volume visualization and streamline calculation works  
>> with no
>> processor boundary artifacts.
>>
>> From what I understand, there are no filters in paraview or  
>> abstractions in
>> the XDMF data model  at this time that will allow paraview to read in
>> overlapping blocks and really make use of the ghost cells  
>> correctly. For now
>> truncating our output to only "owned" elements will solve our  
>> problems.
>> Thanks again for the help.
>>
>> Chris
>>
>> On Mar 30, 2009, at 2:06 PM, Chris Kees wrote:
>>
>>> Thanks for  the help. I also tried suggestions from Paul, Ken, and  
>>> Berk,
>>> but it does seem that I'm stuck right now unless I provide  
>>> ParaView with
>>> more information. Since streamlines are computed correctly on the  
>>> current
>>> multiblock mesh I just generated the mesh on a single processor  
>>> and used
>>> ExtractSurface->Clip on that mesh to visualize the geometry around  
>>> the
>>> streamlines from the multiblock grid.
>>>
>>> On the first method: Each of my UnstructuredGrids in the  
>>> Multiblock Grid
>>> is a subdomain in an overlapping decomposition of the domain. Each  
>>> of the
>>> subdomains has several elements of overlap (the layer of ghost  
>>> cells is more
>>> than one element thick).  Presumably the streamline generation  
>>> works now on
>>> the multiblock grid because the overlap is loaded into ParaView.  
>>> Is there a
>>> way I can just set a cell-centered attributed to identify the  
>>> ghost cells so
>>> that surface extraction and volume visualization will work too?   
>>> Currently
>>> volume visualization of the multiblock grid shows only a single  
>>> subdomain
>>> and volume visualization after MergeBlocks shows the whole domain  
>>> but with
>>> overlap regions being more opaque.
>>>
>>> On your other method, we have both the external boundary mesh and a
>>> pre-mesh polygonal representation of the boundaries available in the
>>> simulator. You are suggesting that I just dump one of those to a  
>>> valid
>>> ParaView format as well, is that correct?
>>>
>>> Chris
>>>
>>> On Mar 30, 2009, at 9:14 AM, Jean Favre wrote:
>>>
>>>> Chris Kees wrote:
>>>>>
>>>>> So far I've tried MergeBlocks->ExtractSurface->FeatureEdges- 
>>>>> >Clip and
>>>>> various permutations that I've seen in previous posts and the  
>>>>> wiki,
>>>>> but I always end up with the  surfaces on the interior of the  
>>>>> tank as
>>>>> if it still sees each subdomain as a closed surface.
>>>>
>>>> In fact, it seems to me that ParaView does the best it can. Your
>>>> unstructured mesh is partitioned in 512 pieces and [presumably],  
>>>> you did
>>>> not specify ghost-cells at the partition boundaries. Without
>>>> ghost-cells, ParaView has no information to help decide whether an
>>>> outside face looks towards the outside world, or to another  
>>>> partition. I
>>>> don't think any combination of filters would help you. Removing
>>>> duplicate points may only remove duplicate fake boundaries, but  
>>>> these
>>>> fake boundaries must be removed all together.
>>>>
>>>> I use two methods to achieve what you want. Ghost-cells, or another
>>>> multi-piece object containing the different boundary types (solid,
>>>> symmetries, inflow, outflow, etc) stored as vtkPolyData. These  
>>>> are read
>>>> in from the models on disk.
>>>>
>>>> Jean --
>>>> Swiss National Supercomputing Center
>>>>
>>>>
>>>>
>>>
>>> _______________________________________________
>>> Powered by www.kitware.com
>>>
>>> Visit other Kitware open-source projects at
>>> http://www.kitware.com/opensource/opensource.html
>>>
>>> Please keep messages on-topic and check the ParaView Wiki at:
>>> http://paraview.org/Wiki/ParaView
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> http://www.paraview.org/mailman/listinfo/paraview
>>
>> _______________________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Please keep messages on-topic and check the ParaView Wiki at:
>> http://paraview.org/Wiki/ParaView
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.paraview.org/mailman/listinfo/paraview
>>



More information about the ParaView mailing list