Skip to content

Refactor SST model implementation and addition of variants/corrections#1560

Merged
bigfooted merged 137 commits intodevelopfrom
feature_SST-Vm
May 21, 2022
Merged

Refactor SST model implementation and addition of variants/corrections#1560
bigfooted merged 137 commits intodevelopfrom
feature_SST-Vm

Conversation

@WallyMaier
Copy link
Contributor

@WallyMaier WallyMaier commented Mar 11, 2022

Proposed Changes

This PR refactors the SST model implementation to include (hopefully) the KL, RC, V, m, SUST models.
Mainly for the models SST-V(m) and SST-Vsust(-m). These tend to be used in higher speed flows. https://turbmodels.larc.nasa.gov/sst.html

A quick summary of some of the changes are:

Adding the"V" term simply changes the P-term from
Eddy_Viscosity_i * pow(StrainMag,2) to
Eddy_Viscosity_i * pow(VorticityMag,2)

Adding the "KL" source term changes the P-term to
Eddy_Viscosity_i *StrainMag*VorticityMag

Adding the "RC" term:
Multiplying the P-term by a function, f.

Many of the Options can be used together -> SST-V-sust-m. The NASA TMR doesn't explicitly mention something like SST-2003-V-RC-sust-m,so I don't know if that is a valid permutation. That being said, the amount of options is fairly so I'm not sure the best way to approach this formulation, without unnecessarily bloating the code. Hence this isn't operational yet. Work will need to be done to validate the addition.

Related Work

This is part of the larger turbulence fixes/additions/modernization efforts seen in #1557. It also addresses some comments in #1551 and #1413

Also as @pcarruscag pointed out below, this falls out in the larger discussion mentioned in #1364.

PR Checklist

  • I am submitting my contribution to the develop branch.
  • My contribution generates no new compiler warnings (try with the '-Wall -Wextra -Wno-unused-parameter -Wno-empty-body' compiler flags, or simply --warnlevel=2 when using meson).
  • My contribution is commented and consistent with SU2 style.
  • 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.

@pr-triage pr-triage bot added the PR: draft label Mar 11, 2022
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.

The direction we are going is to have turbulence model variants/corrections specified according to the strategy in #1364

TURB_MODEL= SST
SST_OPTIONS= 1994/2003, m, V, KL, RC, sust, UQ

The code change for V is the 3 lines below, if you want to start the implementation of "SST_OPTIONS" that would be awesome.

@WallyMaier
Copy link
Contributor Author

WallyMaier commented Mar 12, 2022

Ill go ahead and start the SST_OPTIONS option. I imagine with the amount of variants/corrections, we will need to follow the SA implementation style from @suargi ?

Its a bit tricky since it seems like "m" can be added to all the mentioned models: base/standard model, SST-V, SST-SUST, KL, RC, etc. Also it seems like SUST and V are can be modifiers as well.

@WallyMaier WallyMaier changed the title [WIP] Addition of SST vorticity source term [WIP] Refactor SST model implementation and addition of variants/corrections Mar 12, 2022
@bigfooted
Copy link
Contributor

I moved some things around to make it run. I also added sst1994, sst1994m,sst2003,sst2003m.

@bigfooted
Copy link
Contributor

flatplate_cf_0p97_gridconv_sst
typical result of comparison of original SU2 (1994m) vs SU2-V2003m. The difference (< 2%) is due entirely to the change from vorticity to strain in the computation of muT (CturbSSTSolver.cpp)

@bigfooted
Copy link
Contributor

bigfooted commented May 15, 2022

bump_cl_gridconv_sst
NOTE: for this result, the finest grid was not computed yet
For bump in channel: same trend. For this case, V2003m results are available of FUN3D and CFL3D. Here, the FUN3D and CFL3D results of V1994m are still shown, but the difference between V2003m and V1994m is almost negligible. This does mean that SU2-V2003m does not correspond as well to the FUN3D/CFL3D results as the SU2-V1994m results

@pcarruscag
Copy link
Member

It would be nice to match their results, but I think ours look better, i.e. seem to converge with grid size.

@WallyMaier
Copy link
Contributor Author

The presented 1994m were results from the "bad" 1994 version in SU2?
Also, I am trying to find some cluster space to run the SWBLI case to check vorticity model.

@pcarruscag
Copy link
Member

That case has some problems, probably because of #1631 (supersonic inflow is also affected)

@pcarruscag
Copy link
Member

There is a shock near the start of the plate, and it's vertical position changes 1:1 with mesh size
image

@WallyMaier
Copy link
Contributor Author

I can just run the flat plate with the V and KL options, if that works.

@pcarruscag
Copy link
Member

Up to you but given that it's a one line change... I would give more priority to resurrect the V&V pages for the plate and bump cases, and adding something to the vandv.py regressions.

Comment on lines 55 to 61
flatplate_sst1994m.test_iter = 20
flatplate_sst1994m.test_vals = [-3.929386, -3.061217, 3.958147, 0.001080, 0.003899]
test_list.append(flatplate_sst1994m)

# bump in channel - sst-v1994m
bump_sst1994m = TestCase('bump_sst1994m')
bump_sst1994m.cfg_dir = "vandv/rans/bump_in_channel"
Copy link
Member

Choose a reason for hiding this comment

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

Nice 👍
Please cleanup the configs from comments and for V&V regressions all cases should be restarted from a converged solution, we want to track the values at convergence.

I'm working on having the SA options in the same format as SST btw.

Copy link
Contributor

Choose a reason for hiding this comment

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

ok, great, I've modified the python scripts for the postprocessing, I'll update them as well (upgraded to use pandas framework)

@aeroamit
Copy link
Contributor

There is a shock near the start of the plate, and it's vertical position changes 1:1 with mesh size image

I had also tried this case sometime back with SU2. Faced the same issues as reported by Pedro. Also, SST was not tallying with the results presented in the reference (https://www.grc.nasa.gov/WWW/wind/valid/m5swbli/study02/m5swbli2.html). There seems to be a shift of 5mm. It will be useful to sort out this case...
See some details in the attached pdf file...
SWBLI_case_issue.pdf

@pcarruscag
Copy link
Member

Do you want to do the honors @bigfooted ?

Copy link
Contributor Author

@WallyMaier WallyMaier left a comment

Choose a reason for hiding this comment

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

This looks good to me! Thanks for taking the lead @bigfooted and @pcarruscag!

Co-authored-by: Wally Maier <wallytmaier@gmail.com>
@bigfooted bigfooted merged commit f15fe75 into develop May 21, 2022
@bigfooted bigfooted deleted the feature_SST-Vm branch May 21, 2022 13:30
@pr-triage pr-triage bot added the PR: merged label May 21, 2022
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.

5 participants