Open cindytsai opened 2 years ago
This is an interesting idea and definitely one worth considering!
On Fri, Feb 4, 2022 at 4:38 AM cindytsai @.***> wrote:
Extend libyt to ParaView
If yt can connect to ParaView (link https://www.kitware.com/a-yt-plugin-for-paraview/), then maybe libyt can bypass Catalyst https://www.paraview.org/in-situ/ which is a tool for simulation codes to do inline-analysis (in situ) in ParaView.
Although there are things worth notice in real-time volume rendering:
- If we wish to do volume rendering in ParaView, we need Nvidia IndeX. But it only supports serial process. It has additional fees if run on multi-node system. (link https://www.nvidia.com/en-us/data-center/index-paraview-plugin/)
- Which means if libyt really wants to support ParaView real-time volume rendering, only one node can be in charge of this inline-analysis. And libyt is not designed for this kind of workflow yet.
— Reply to this email directly, view it on GitHub https://github.com/calab-ntu/libyt/issues/47, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAVXOY2VZUZSD4ADW53R53UZOUA7ANCNFSM5NRNDOXA . You are receiving this because you are subscribed to this thread.Message ID: @.***>
@matthewturk We notice this yt plugin for ParaView but it was more than ten years ago. Is it still a thing?
It's sort of still a thing, in that the things we implemented to support it are all still there. I believe the VTK API has somewhat changed, but may still retain some of the old functions; regardless, updating it would likely be very straightforward.
On Tue, Feb 8, 2022 at 8:38 PM Hsi-Yu Schive @.***> wrote:
@matthewturk https://github.com/matthewturk We notice this yt plugin for ParaView https://www.kitware.com/a-yt-plugin-for-paraview/ but it was more than ten years ago. Is it still a thing?
— Reply to this email directly, view it on GitHub https://github.com/calab-ntu/libyt/issues/47#issuecomment-1033284151, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAVXO6DMUMTDAD3SQY2ZPDU2HHRBANCNFSM5NRNDOXA . You are receiving this because you were mentioned.Message ID: @.***>
@matthewturk Thanks for the comment!
After reading Catalyst's user guide, I think libyt
has potential to serve as an interface between AMR grids simulation code and ParaView.
To support in-situ analysis in ParaView, developer needs to create an adapter that transforms simulation info into forms that Catalyst can process. It has the similar procedure like libyt, initialization, prepare data, do in-situ analysis, and finalization. And it supports MPI as well.
libyt | Catalyst | |
---|---|---|
Initialize | yt_init |
CatalystInit |
Prepare Data | other APIs | CatalystCoProcess |
Finalize | yt_finalize |
CatalystFinalize |
The most important part is CatalystCoProcess
. It needs to provide the grid and field data structures and other simulation information. This is already passed in to libyt
! If we can properly wrap these data to VTK data objects, then libyt
can support inline-rendering and other functionalities in ParaView with or without UI. (This is just a big picture. It still needs to be carefully checked.)
Extend libyt to ParaView
If yt can connect to ParaView (link), then maybe libyt can bypass Catalyst which is a tool for simulation codes to do inline-analysis (in situ) in ParaView.
Although there are things worth notice in real-time volume rendering: