Evenly Spaced Streamlines 2D filter - streamlines ending too soon


from what I’ve read, a regular Stream Tracer filter can’t generate streamlines on 2D slices and a special filter called Evenly Spaced Streamlines 2D has to be used. What’s more, that filter works only when the slice is in XY plane. In one of the previous threads, I’ve found a workaround and used it - creating a slice from 3D domain, saving it vtm file (File → Save Data), then opening in a new instance of ParaView and finally using the Transform filter to rotate the slice so that it lies in the XY plane. So far it all works well and I am able to apply the Evenly Spaced Streamlines 2D filter to that transformed slice. After a few adjustments, I get the desired distribution of streamlines. The only problem is that no matter how I change the parameters of that filter, the streamlines always end too soon, without reaching farther regions of the fluid domain.

Here’s how it looks like, including settings:

As you can see, the lower streamlines don’t even reach the object in the fluid domain while the upper ones pass it but end shortly after that.

The simulation is Christmas-themed by the way :wink:

Do you know if anything can be done to make the streamlines propagate through the entire slice ?

is your slice actually on the XY plane ? If not, you can just use a calculator to force it.

Thanks for the reply. Originally it was in the XZ plane but I managed to rotate it after export using the Transform filter. I didn’t know that this could be done with Calculator as well. But the result will likely be the same.

Do you know how to make the streamlines propagate farther on the slice ?

No, you use both. Transform to orien the slice correctly and calculator to remove the small approx error that may cause the streamlines to stop.

Do you know how to make the streamlines propagate farther on the slice ?

Your slice may not be aligned perfectly with the plane, check the values in the spreadsheet.

As @mwestphal said, you have to use both.

Rotate it to XY plane → Enforce z = 0.0 by chaining these filters Transform → Calculator.

I’ve seen that filter stop abruptly due to minor z fluctuations. This is because the z gradient is non-zero.

Sorry to revive an old thread. How do you mean exactly by using the Calculator to enforce z=0?

Hey, sorry I made a mistake, don’t use the Calculator. Instead, use a Programmable Filter like this.
Screenshot from 2022-07-06 09-05-27

Aaah, simple and clean. This works. Thanks!

Calculator can be used like this: