Supporting arbitrary schemas with programmable conduit-based producer

I am working on a Fortran code and attempting to use Catalyst to pass the along for insitu processing. My final objective is multi-pronged, I am potentially looking into developing custom catalyst implementations for targeted processing use-cases that work more efficiently with my simulation data. At the same time, I want to be able to conveniently bring that data into ParaView for validation etc.

Of course I can pass data from Fortran using the Mesh blueprint. It so happens, however, to fit the schema I’ll have to do a lot of deep-copies. Ideally, I want to pass necessary simulation arrays as-is through Catalyst and then write some small VTK-Python code to transform the array to VTK data structures.

If I had a Programmable data source that was simply provided the Conduit mesh node, then by using Conduit’s Python API, I can easily get access to the data and create VTK data structures as needed.

Thoughts? I think Fides is sorta meant to help me in this scenario – IIRC – but I don’t have ADIOS is my setup and hence I am not sure how that would work for me here.

2 Likes

FYI @Christos_Tsolakis @nicolas.vuaille @Francois_Mazen

1 Like

I think this is definitely doable to have some kind of ProgrammableConduitSource. It may also be useful for debugging purpose.

I’ve reported an issue here: https://gitlab.kitware.com/paraview/paraview/-/issues/22458