Skip to content

Support non-turbo (solid/heat) zones in multizone turbomachinery - #2996

Open
joshkellyjak wants to merge 2 commits into
su2code:developfrom
joshkellyjak:feature_turbo_multiphysics
Open

joshkellyjak wants to merge 2 commits into
su2code:developfrom
joshkellyjak:feature_turbo_multiphysics

Conversation

@joshkellyjak

Copy link
Copy Markdown
Contributor

Proposed Changes

Added support for multiphysics calculations for multizone turbomachinery cases.

Blade rows are the first zones, one per MARKER_TURBOMACHINERY pair (CConfig::GetnTurboZones). Zones that are not compressible flow drop the turbomachinery, Giles and mixing-plane markers inherited from the master config, so e.g. blade solids coupled via MARKER_CHT_INTERFACE are plain heat zones.

  • Turbo preprocessing, stage performance, turbo monitor and turbo history output loop over the turbo zones instead of all zones; the stage outlet is the last turbo zone.
  • TURBOMACHINERY_KIND / TURBO_PERF_KIND are checked against the number of turbo zones.
  • Only interfaces between two turbo zones skip the generic interpolator, so CHT interfaces with a turbo fluid zone get one.

Pure turbomachinery cases are unchanged (outputs byte-identical to the base commit).

Test case for direct and adjoint coming soon.

Related Work

PR Checklist

Put an X by all that apply. You can fill this out after submitting the PR. If you have any questions, don't hesitate to ask! We want to help. These are a guide for you to know what the reviewers will be looking for in your contribution.

  • I am submitting my contribution to the develop branch.
  • My contribution generates no new compiler warnings (try with --warnlevel=3 when using meson).
  • My contribution is commented and consistent with SU2 style (https://su2code.github.io/docs_v7/Style-Guide/).
  • I used the pre-commit hook to prevent dirty commits and used pre-commit run --all to format old commits.
  • I have added a test case that demonstrates my contribution, if necessary.
  • I have updated appropriate documentation (Tutorials, Docs Page, config_template.cpp), if necessary.

joshkellyjak and others added 2 commits October 29, 2026 17:26
Blade rows are the first zones, one per MARKER_TURBOMACHINERY pair
(CConfig::GetnTurboZones). Zones that are not compressible flow drop the
turbomachinery, Giles and mixing-plane markers inherited from the master
config, so e.g. blade solids coupled via MARKER_CHT_INTERFACE are plain
heat zones.

- Turbo preprocessing, stage performance, turbo monitor and turbo history
  output loop over the turbo zones instead of all zones; the stage outlet
  is the last turbo zone.
- TURBOMACHINERY_KIND / TURBO_PERF_KIND are checked against the number of
  turbo zones.
- Only interfaces between two turbo zones skip the generic interpolator,
  so CHT interfaces with a turbo fluid zone get one.

Pure turbomachinery cases are unchanged (outputs byte-identical to the
base commit).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

This branch has not been deployed

No deployments
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.

1 participant