[Paraview] LiveInsituLink proxy in pvpython client

Kolja Petersen petersenkolja at gmail.com
Wed Oct 25 13:42:10 EDT 2017


Thank you, Andy,
unfortunately your answer has shown me how little I understand about
Catalyst. But maybe it leads in the right direction after some work from my
side.

Just to make sure that we are talking about the same thing: My pvpython
client is supposed to automate some of the visualization functionality of
the paraview GUI. The coprocessing.py is in charge of the other side of the
link, namely to provide data to the visualization side, if I understand
correctly? I rather followed what happens in the constructor
pqLiveInsituVisualizationManager::pqLiveInsituVisualizationManager(int
connection_port, pqServer* server), which creates a
vtkSMLiveInsituLinkProxy, not a vtkLiveInsituLink as coprocessing.py.

Now I saw that the vtkLiveInsituLink class can have ProcessType LIVE (for
the visualization side? as server side object of the proxy created by
paraview?) or INSITU (for the simulation side?). So apparently the same
class can take both roles? If yes, that'd clarify some of my confusion. But
still I don't see how coprocessing.py helps me to implement a python
visualization client?

Then, following the creation of a vtkSMLiveInsituLinkProxy in the
pqLiveInsituVisualizationManager constructor, this proxy's server side
vtkLiveInsituLink calls
"parallelController->TriggerRMIOnAllChildren(INITIALIZE_CONNECTION);"
inside vtkLiveInsituLink::InsituConnect(vtkMultiProcessController*
proc0NodesController). This seems to be the first RMI sent over the link.
Is there any possibility to log the transmission or reception of this RMI?
I don't find it in the cslogs.
I think I could make some progress if I am able to debug where those
messages are sent to, and why the python client doesn't react to them.
Thank you
Kolja

On Wed, Oct 25, 2017 at 4:05 PM, Andy Bauer <andy.bauer at kitware.com> wrote:

> Hi Kolja,
>
> I can't recall if anyone tried the Catalyst Live connection through
> pvpython but I don't think anyone has done that yet. The design was meant
> to go through the GUI. My suggestion would be to start looking at the
> DoLiveVisualization() method in coprocessing.py.
>
> Cheers,
> Andy
>
> On Tue, Oct 24, 2017 at 12:49 PM, Kolja Petersen <petersenkolja at gmail.com>
> wrote:
>
>> Hello,
>> Are there any examples how to receive extracts from Catalyst simulations
>> in a batch pvpython script?
>>
>> My first attempt looks as attached. I connect to a pvserver running on
>> localhost. Then I create a LiveInsituLink proxy, set the insitu port to
>> 22222 and initialize the proxy. Finally, I repeat ProcessEvents(), which I
>> hoped would allow me to interact with the Catalyst simulation.
>>
>> However, when I first start pvserver, then the "coproc.py" script
>> (attached), and finally a Catalyst example (e.g.
>> Examples/Catalyst/CFullExample/FEDriver.c), nothing useful happens. The
>> callback, which should react to any LiveInsituLink events, is only called
>> during initialization (UpdatePropertyEvent and ModifiedEvent), then never
>> again. lil.GetTimeStep() in the endless loop shows always the same
>> (uninitialized?) value, there are no Debug messages from the LiveInsituLink
>> proxy.
>>
>> How can I receive a notification, when a Catalyst simulation connects?
>> How can I get a list of available extracts?
>> Thank you
>> Kolja
>>
>> _______________________________________________
>> 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/20171025/881b7f37/attachment.html>


More information about the ParaView mailing list