stream tracer with custom fails in parallel

Hi,

I am trying to create a stream tracer with custom source on a decomposed OpenFOAM case with pvbatch in parallel. The job exits with an MPI Error, see attached logfile. pvbatch.log (1.8 KB)

Running pvbatch in serial works fine. Increasing OnRatio of maksPoints filter to some high values helps, but then unfortunately the streamline distribution is too coarse.

I played around with Sampling Mode of maskPoints, but so far did not find any working solution. Does anybody have an idea?

Attached is also the pvbatch python script. wss_streak.py (2.6 KB)

Best regards,
Jan

I did not test your script. However a common issue with the stream tracer in parallel is that the seeds should not be parallel. One solution is to use AppendReduce.

You may want to try your workflow on paraview with a parallel pvserver before running it with pvbatch.

Hi Mathieu,

thanks a lot for your hint! Applying AppendReduce on the seed source did the trick. However, I am wondering if there is the still a benefit from running in parallel?

Best regards,
Jan

Of course, as long as your domain is parallel, the stream will be computed in parallel.

Ok, understand. Thanks for clarifying!

@mwestphal - you wrote “However a common issue with the stream tracer in parallel is that the seeds should not be parallel”. Can you elaborate? Do you mean that the most efficient approach is to distribute the seeds across the server instances and then just let the algorithm trace the streamlines through the partitioned mesh in parallel?

No at all, I mean that the seeds should not be distributed if you want that streamtracer to work as expected.

Hi Matthieu,

Thank you. Is this documented anywhere? If not, can you elaborate a bit more?

What problems would be introduced by distributing the seeds other than simply doing more work that needed?

Thanks,
Ben