Skip to content

Conversation

@Cristopher-Morales
Copy link
Contributor

Proposed Changes

Enable the use other conductivity models for compressible flow. Updating thermal conductivity which has the turbulence contribution from MakeThermalConductivityModel function in CFluidModel.cpp.

Related Work

This is the first of small pull requests that are needed for enable FLUID_MIXTURE model for compressible flows.

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.

@Cristopher-Morales Cristopher-Morales changed the title [WIP] Enable the use of conductivity models different from CONSTANT_PRANDTL for compressible flows. Enable the use of conductivity models different from CONSTANT_PRANDTL for compressible flows. Feb 20, 2025
Copy link
Member

@pcarruscag pcarruscag left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see 35 occurrences of GetPrandtl_Lam in 26 files, from the number of changes in this PR and number of cases updated I think you are missing a lot.

@Cristopher-Morales Cristopher-Morales changed the title Enable the use of conductivity models different from CONSTANT_PRANDTL for compressible flows. [WIP] Enable the use of conductivity models different from CONSTANT_PRANDTL for compressible flows. Aug 1, 2025
@Cristopher-Morales
Copy link
Contributor Author

I see 35 occurrences of GetPrandtl_Lam in 26 files, from the number of changes in this PR and number of cases updated I think you are missing a lot.

Hi!!

I went through the code and tried to replace what was computed before using the CONSTANT_PRANDLT model for the thermal conductivity. I added

ThermalConductivity_FreeStream,  /*!< \brief Free-stream thermal conductivity of the fluid. */
 SpecificHeatCp_FreeStream,       /*!< \brief Free-stream specific heat capacity at constant pressure of the fluid.  */

for keep consistency where the thermal conductivity was computed using the prandlt number and the free-stream viscosity and density values.
I also modified the SetHeatFluxVector function.
There are some test cases failing maybe because some slightly differences between the thermal conductivity computed from the fluid model and the one computed directly using the constant prandlt number. But I do not know why the test case inc_weakly_coupled fails and shows high discrepancy between the residuals stored and the one computed in the current pull request.
I think I am still missing something. Could you guide me about where I should look in the code?

Thank you so much in advance!!

@Cristopher-Morales Cristopher-Morales changed the title [WIP] Enable the use of conductivity models different from CONSTANT_PRANDTL for compressible flows. Enable the use of conductivity models different from CONSTANT_PRANDTL for compressible flows. Sep 12, 2025
Copy link
Member

@pcarruscag pcarruscag left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok good cleanup and it gets the compressible and incompressible solvers closer.
I think you are missing something in

  template<class PrimitiveType>
  FORCEINLINE Double thermalConductivity(const PrimitiveType& V) const {
    return cp * (V.laminarVisc()/prandtlLam + V.eddyVisc()/prandtlTurb);
  }

Let me know if you need any help.

@Cristopher-Morales
Copy link
Contributor Author

ok good cleanup and it gets the compressible and incompressible solvers closer. I think you are missing something in

  template<class PrimitiveType>
  FORCEINLINE Double thermalConductivity(const PrimitiveType& V) const {
    return cp * (V.laminarVisc()/prandtlLam + V.eddyVisc()/prandtlTurb);
  }

Let me know if you need any help.

Hi!
Thanks for the help!!
I have modified this template, some cases are still failing. I might be still missing something important.
I would appreciate any further help/guide about this!!
Thanks in advance!!

@pcarruscag
Copy link
Member

I think it's just numerical noise, you'll need to update some residuals.

Copy link
Member

@pcarruscag pcarruscag left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you covered everything except some specific things in the NEMO solver and the DG solver.
Which should be fine.

@Cristopher-Morales
Copy link
Contributor Author

I think it's just numerical noise, you'll need to update some residuals.

Hi!!

Thanks for your comment,

I have updated the residuals of the test cases that are failing.

@Cristopher-Morales
Copy link
Contributor Author

I think you covered everything except some specific things in the NEMO solver and the DG solver. Which should be fine.

Hi!!

Thanks!! after I update the residuals, I will merge this pull request.

@Cristopher-Morales Cristopher-Morales merged commit c8e0f34 into develop Sep 19, 2025
37 checks passed
@Cristopher-Morales Cristopher-Morales deleted the feature_conductivity branch September 19, 2025 13:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants