[Paraview] Cataylst pipeline not updating

Andy Bauer andy.bauer at kitware.com
Tue Feb 14 11:18:07 EST 2017


Hi Tim,

I'm glad this fixed the issue. You'll want to always pass in the time to
UpdatePipeline() for Catalyst. The issue was that the pipeline thought that
everything it had was current since the time didn't change and none if the
filters' parameters changed and therefore it skipped recomputing what it
thought would be the same result. I do wonder if the start of the pipeline
should mark that it is modified. I'll have to think about that some more.
Even if that were true though you'd still want to pass in the time value to
UpdatePipeline(). This is true as well for ParaView Python pipelines in
general for time dependent sources.

No problem about the delay in reporting -- I was more than happy to let
your computers do the proof rather than verifying it myself :)

Cheers,
Andy

On Tue, Feb 14, 2017 at 11:00 AM, Gallagher, Timothy P <
tim.gallagher at gatech.edu> wrote:

> Hi Andy,
>
>
> Looks like passing the current time step into the UpdatePipeline calls
> made it work as expected. Sorry for the delay in reporting, it took a long
> time for the job to move through the queue!
>
>
> Anyway, looks like it's working properly and I am getting the data as
> expected.
>
>
> For future reference, should I always just pass the time in? Or are the
> possibly other, unintended side effects from that as well to watch out for?
>
>
> Thanks again,
>
>
> Tim
>
>
> ------------------------------
> *From:* Andy Bauer <andy.bauer at kitware.com>
> *Sent:* Monday, February 13, 2017 11:30 AM
>
> *To:* Gallagher, Timothy P
> *Cc:* paraview at paraview.org
> *Subject:* Re: [Paraview] Cataylst pipeline not updating
>
> Hi Tim,
>
> It's possible that there's something funky going on when the data set
> being passed through parts of the pipeline are empty. I'm hoping for the
> easy fix with passing in the time since I've know that has caused
> unexpected behavior before. If that doesn't solve your issue then I'll
> probably have to do something similar and run it locally to see what's
> going on.
>
> Cheers,
> Andy
>
> On Mon, Feb 13, 2017 at 11:06 AM, Gallagher, Timothy P <
> tim.gallagher at gatech.edu> wrote:
>
>> The RequestDataDescription is the same as the default output from the
>> script generator, so I didn't include it. The DoCoProcessing gets called
>> every time step and the volumeIntegrals data is updated and written
>> correctly every delta_t, so I'm confident in that part.
>>
>>
>> I will add the calls you suggested and re-run. It takes some time for it
>> to evolve to the point something will happen -- I don't have it saving data
>> frequently enough to run a quick test, I was expecting the pipeline to save
>> it for me!
>>
>>
>> The other thing that occurred to me -- is there something about the
>> Contour filter that turns it off/disables it when the pipeline is built and
>> there is no surface at that contour level?
>>
>>
>> Thanks,
>>
>>
>> Tim
>>
>>
>> ------------------------------
>> *From:* Andy Bauer <andy.bauer at kitware.com>
>> *Sent:* Monday, February 13, 2017 10:56 AM
>> *To:* Gallagher, Timothy P
>> *Cc:* paraview at paraview.org
>> *Subject:* Re: [Paraview] Cataylst pipeline not updating
>>
>> Hi Tim,
>>
>> Try adding in the current time to the UpdatePipeline() calls, e.g.
>> *.UpdatePipeline(datadescription.GetCurrentTime())
>>
>> It's tough to tell with RequestDataDescription() missing but I assume
>> that DoCoProcessing() is getting called when you want, correct?
>>
>> Let me know if that doesn't solve the problem.
>>
>> Best,
>> Andy
>>
>> On Mon, Feb 13, 2017 at 5:45 AM, Gallagher, Timothy P <
>> tim.gallagher at gatech.edu> wrote:
>>
>>> Back with another question!
>>>
>>>
>>> I have a pipeline that has 1 input and 4 outputs. The simplest is a
>>> IntegrateVariables filter hooked up to the input. Another branch of the
>>> pipeline goes through several PythonCalculator filters and a
>>> CellDataToPointData filter and then arrives at the three outputs:
>>>
>>>
>>> 1. The CD2PD filter is connected to a Contour filter with a single
>>> level, X. This is then connected to an IntegrateVariables filter (used to
>>> compute the area of the Contour) and a Writer.
>>>
>>> 2. The CD2PD filter is also connected to another Contour filter with a
>>> single level Y. This is connected to an IntegrateVariables and Writer just
>>> as in 1.
>>>
>>> 3. The CD2PD filter is sliced two times with each slice in a different
>>> render view to save images.
>>>
>>>
>>> I have the coprocessor running every delta_t seconds. The initial
>>> IntegrateVariables filter is updated with UpdatePipeline and then the
>>> values are saved to disk. This works every step, no issues.
>>>
>>>
>>> I then call UpdatePipeline on both of the Contour and both of the
>>> IntegrateVariables filters in 1 and 2. I check if the 'Area' field in the
>>> IntegrateVariables exceeds a threshold, and if it does, I save the
>>> Contour's to disk as a VTK file. This is not working correctly.
>>>
>>>
>>> If I start the simulation from a point where the Contour's exist in the
>>> flow already, then everything works great and the Area field changes in
>>> time and it saves the Contour's.
>>>
>>>
>>> However, if the simulation starts without the Contours already in the
>>> flow, the Area fields stay zero forever. It's as if the pipeline isn't
>>> updating or something. I have attached the DoCoProcessing function used. I
>>> don't see anything immediately obvious that would prevent it from updating
>>> or getting the correct values for the Area.
>>>
>>>
>>> Am I missing something about how the pipeline or contour filters update?
>>>
>>>
>>> Thanks,
>>>
>>>
>>> Tim
>>>
>>> _______________________________________________
>>> 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
>>>
>>> Search the list archives at: http://markmail.org/search/?q=ParaView
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> http://public.kitware.com/mailman/listinfo/paraview
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/paraview/attachments/20170214/3ca1c021/attachment.html>


More information about the ParaView mailing list