[Paraview] Re: Stream tracing
Stefan Murphy
stefan.murphy at dal.ca
Mon Feb 18 13:41:06 EST 2008
I'm not sure how triangulating my mesh will solve my problem of
unconnected nodes - unless all the nodes are connected somehow in the
process?
I can't picture how this would be done in my CFD program, but I am
certainly willing to give the Delaunay 3D filter a shot. I received
the plugin from Jean Favre, but I'm not sure how to install it. The
file types in his .tar file are not listed in the Tools->Manage
Plugins application.
I am assuming that John Biddiscombe's method of modifying the
filters.xml file will involve modifying the open source code and
compiling ParaView? Is the result of the compilation a windows
installer file, or just an application?
On Feb 18, 2008 1:18 PM, John Biddiscombe <biddisco at cscs.ch> wrote:
>
> just add this to filters.xml
>
>
> <SourceProxy name="Delaunay3D" class="vtkDelaunay3D">
> <InputProperty
> name="Input"
> command="SetInputConnection">
> <ProxyGroupDomain name="groups">
> <Group name="sources"/>
> <Group name="filters"/>
> </ProxyGroupDomain>
> <DataTypeDomain name="input_type">
> <DataType value="vtkPointSet"/>
> </DataTypeDomain>
> </InputProperty>
>
> <DoubleVectorProperty
> name="Tolerance"
> command="SetTolerance"
> number_of_elements="1"
> default_values="0.001">
> <DoubleRangeDomain name="range" min="0.0" max="1.0" />
> </DoubleVectorProperty>
>
> <DoubleVectorProperty
> name="Alpha"
> command="SetAlpha"
> number_of_elements="1"
> default_values=".03">
> <DoubleRangeDomain name="range" min="0.0" max="0.1" />
> </DoubleVectorProperty>
>
> <DoubleVectorProperty
> name="Offset"
> command="SetOffset"
> number_of_elements="1"
> default_values="2.5">
> <DoubleRangeDomain name="range" min="2.5" max="10.0" />
> </DoubleVectorProperty>
>
> <IntVectorProperty
> name="BoundingTriangulation"
> command="SetBoundingTriangulation"
> number_of_elements="1"
> default_values="0">
> <BooleanDomain name="bool"/>
> </IntVectorProperty>
> <!-- End Delaunay3D -->
> </SourceProxy>
>
>
>
>
>
>
> Moreland, Kenneth wrote:
> Does anyone on the list have a plugin for 3D Delaunay triangulation?
>
> Delaunay triangulation is a straightforward (although often slow) way to add
> connectivity to a collection of points. VTK has a 3D Delaunay triangulation
> filter, but it is not exposed in ParaView. Perhaps it should be. I think
> this issue has come up before.
>
> Stefan, you say you are not much of a programmer, but a more ideal solution
> would be to triangulate (that is, break into tetrahedra) your hexahedra so
> that the faces match up properly. You have not described how this mesh is
> created, but you might have some auxiliary knowledge that makes the meshing
> problem easier.
>
> -Ken
>
>
>
> -----Original Message-----
> From: murphy.stefan at gmail.com [mailto:murphy.stefan at gmail.com] On Behalf
> Of Stefan Murphy
> Sent: Monday, February 18, 2008 9:45 AM
> To: John Biddiscombe
> Cc: Moreland, Kenneth; paraview at paraview.org
> Subject: Re: [Paraview] Re: Stream tracing
>
> To be honest, I am not much of a programmer, and I would rather not
> get into the guts of ParaView. Also, it would be preferable for me and
> my group to use a stable release version of ParaView.
>
> Is there anything I can do with scattered points? Since this is how my
> data is stored in my program, it would be very desirable for me.
>
>
>
>
> On Feb 18, 2008 12:16 PM, John Biddiscombe <biddisco at cscs.ch> wrote:
>
>
> Further to what ken wrote....
>
> "Many VTK algorithms, including stream tracing, require your mesh to be
> conforming. "
>
> in fact the stream tracer, uses FindCell to locate the integration
>
> position
>
>
> - this can take a cell as start point and uses the neighbours to locate
>
> the
>
>
> next cell as the point moves ....which is (I think) why it fails on your
> data.
>
> you can rewrite the core of the stream tracer to use a locator instead
>
> of
>
>
> straight findcell to make it work on your data. (Assuming this is
>
> preferable
>
>
> to re-dividing your mesh to get a conforming one!) - It might only be
> vtkInterpolatedVelocityField that needs work, rather than the tracer
> itself.....Berk will know for sure...
>
> JB
>
>
> Stefan,
>
> The idea of a hexahedron having more than 6 neighbors is not allowed.
>
> The
>
>
> mesh example you gave is one that is not "conforming" (or not consistent
> depending on your nomenclature). Many VTK algorithms, including stream
> tracing, require your mesh to be conforming. There are multiple problems
> that occur with non-conforming meshes. As Berk mentioned, the mesh tends
>
> not
>
>
> to be "water-tight." That is, it is not reasonable to represent 3
>
> collinear
>
>
> points exactly in finite precision numbers. The edge represented by 2
>
> nodes
>
>
> and the edges with 3 nodes usually do not match up perfectly, leading to
> "cracks" in the mesh.
>
> The second large problem is that connectivity is ill-defined. In your
> example, is the large cell really a neighbor with the two smaller cells?
> They do not actually share faces. The large cell has a face connecting
>
> the
>
>
> top and bottom nodes. The other two cells each have a face with the
>
> middle
>
>
> node. What if you moved that middle node a little to the right? You
>
> would no
>
>
> longer consider these neighbors, right? That would be a geometric
>
> change,
>
>
> not a topological change. The connectivity should be based entirely on
>
> the
>
>
> topology. Trying to introduce geometric position into the connectivity
> computations opens a Pandora's box of problems.
>
> In short, VTK does not, and cannot, consider these mismatched faces
> neighbors. In the case of the stream tracer, if the stream reaches one
>
> of
>
>
> these interfaces, it will assume that the stream left the mesh and
>
> terminate
>
>
> that stream.
>
> -Ken
>
>
>
> -----Original Message-----
> From: paraview-bounces+kmorel=sandia.gov at paraview.org [mailto:paraview-
> bounces+kmorel=sandia.gov at paraview.org] On Behalf Of Stefan Murphy
> Sent: Sunday, February 17, 2008 10:13 AM
> To: paraview at paraview.org
> Subject: [Paraview] Re: Stream tracing
>
> I had a previous post looking for help with a stream tracing problem.
> I sent some data to Berk and he said that my problem lies with my
> grid. He said: "I am seeing problems with the way you wrote this mesh.
> It looks like you are creating duplicate points or something like
> that. The mesh is not "water-tight". When you load it in paraview,
> change the representation to wireframe. This is supposed to show only
> the external surfaces as wireframe. Instead, it shows a lot of
> internal boundaries."
>
> I ditched my VTK output routine and adopted some functions that have
> been successfully used to create OpenDX files. With this routine I
> shouldn't have any issues with duplicate points, etc. With the new
> routine I am having the same problem with my mesh. I am wondering if
> my problem could have anything to do with the following:
>
> My grid is cartesian and unstructured (vtk cell type 11). There are 6
> sides per cell, but it is possible to have more than 6 neighbouring
> cells. I attached a picture to show what I mean. I would think this is
> a common thing with unstructured cartesian grids, but I am starting to
> scrape the bottom of the barrel here and I am wondering if anyone
> thinks this could be a problem.
>
> Has anyone been successful in implementing my type of grid in ParaView
> before?
>
>
> Stefan
>
> _______________________________________________
> ParaView mailing list
> ParaView at paraview.org
> http://www.paraview.org/mailman/listinfo/paraview
>
>
>
> --
> John Biddiscombe, email:biddisco @ cscs.ch
> http://www.cscs.ch/about/BJohn.php
> CSCS, Swiss National Supercomputing Centre | Tel: +41 (91) 610.82.07
> Via Cantonale, 6928 Manno, Switzerland | Fax: +41 (91) 610.82.82
>
>
>
>
>
>
> --
> John Biddiscombe, email:biddisco @ cscs.ch
>
> http://www.cscs.ch/about/BJohn.php
> CSCS, Swiss National Supercomputing Centre | Tel: +41 (91) 610.82.07
> Via Cantonale, 6928 Manno, Switzerland | Fax: +41 (91) 610.82.82
>
More information about the ParaView
mailing list