Skip to content

Conversation

@trevilo
Copy link
Contributor

@trevilo trevilo commented Oct 9, 2025

Prior to this PR, the interp utility (see source in utils/pfield_interpolate.cpp) supported generation of a new TPS restart file via interpolation of an existing restart to a new mesh, but only for restart files produced by the compressible code path.

This PR extends the capability to the low Mach code path. To do so, we leverage the existing information in the IODataOrganizer class (to determine the fields to interpolate), which required minor modifications to the M2ulPhyS and LoMach classes (and their parent TPS::PlasmaSolver) to allow access to the IODataOrganizer object outside of the class.

trevilo added 13 commits October 7, 2025 15:45
NB: The style check / enforcement is not automatically applied outside
src dir (e.g., to utils).  So, applied clang-format by hand here.
Should automate this.
This begins to clear the way for us to implement an option to specify
a mesh rather than a tps input file to define the "target".
…ite something to paraview

This version runs and gives results.  Have not rigorously tested for correctness.
…ions

In order to make it simpler to figure out what fields to interpolate,
provide a mechanism to get pointers to the fields that are read from
the restart file through the IODataOrganizer class.
So that it can handle either 'flow' (i.e., compressible solutions
expressed in the conserved variables) or 'loMach' (i.e., low Mach,
variable density solutions expressed in u, T, ...).  This is
accomplished by letting the IODataCollection class control what fields
are interpolated.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants