su2code/SU2

restart for multigrid not correct for turbulence

Opened this issue · 10 comments

Describe the bug
a primal and adjoint restart with multigrid will not produce the correct residuals for turbulence.

To Reproduce
Use the restart validation tutorial for species transport. Switch off Species transport and put turbulence model to SST or SA to see different residuals for the turbulence quantities
species tutorial

Desktop (please complete the following information):

  • OS: linux
  • C++ compiler and version: gcc 5.3.0
  • MPI implementation and version: OpenMPI 3.1.6
  • SU2 Version: current develop

Hi,

I observed similar restart issues for multigrid restarts when working with the discrete adjoint solver for Euler test cases.
Here, I created a reproducible setting with the NACA 0012 Euler case (mesh from the tutorials).

Describe the bug
The primal solver works fine and for the restart there are no issues.
However, after an adjoint restart, the residuals are completely different.
As a demonstration I run the discrete adjoint solver:
(1) 110 step and (2) 105 steps and restart for 5 steps

Residual output for the last 10 steps of (1):
| 100| -5.321370| -10.661410|
| 101| -5.351074| -10.692532|
| 102| -5.381256| -10.724276|
| 103| -5.411925| -10.756667|
| 104| -5.443087| -10.789731|
| 105| -5.474745| -10.823494|
| 106| -5.506899| -10.857980|
| 107| -5.539545| -10.893213|
| 108| -5.572670| -10.929211|
| 109| -5.606253| -10.965987|

Residual output for (2):
last 5 steps before restart
| 100| -5.321370| -10.661410|
| 101| -5.351074| -10.692532|
| 102| -5.381256| -10.724276|
| 103| -5.411925| -10.756667|
| 104| -5.443087| -10.789731|
5 steps after restart
| 0| -2.958579| -8.264492|
| 1| -3.071182| -8.366287|
| 2| -3.165074| -8.453816|
| 3| -3.237963| -8.506268|
| 4| -3.293038| -8.552713|

When multigrid is turned of I could not observe a jump in residuals after the restart for this test case.

To Reproduce
Use the NACA012 Euler mesh from the tutorial and the config file: config.cfg.txt
Converge the flow solver and then run the discrete adjoint for 105 steps and restart.

Desktop (please complete the following information):

  • OS: Linux, Fedora 34
  • C++ compiler and version: gcc version 11.2.1
  • MPI implementation and version: mpirun (Open MPI) 4.1.0
  • SU2 Version: current develop

Below are the residuals for the primal at iteration 10, the primal restarted at iteration 10 and the adjoint restart for the species transport tutorial, where species transport is turned off. You can see that for the primal restart, there is a problem as well for the turbulence quantities.
rms_Flow[0]| rms_Flow[1]| rms_Flow[2]| rms_Flow[3]| rms_Turb[0]| rms_Turb[1]|
1 -5.153670257 -4.470700699 -4.22001906 0.3254886968 -5.961884086 -0.9702324718
2 -5.153670257 -4.470700699 -4.22001906 0.3254886968 -5.961797121 -0.9702346491
3 -5.153670257 -4.470700699 -4.22001906 0.3254886968 -5.962093940 -0.9701669234

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If this is still a relevant issue please comment on it to restart the discussion. Thank you for your contributions.

go away, stalebot!

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If this is still a relevant issue please comment on it to restart the discussion. Thank you for your contributions.

still not fixed...

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If this is still a relevant issue please comment on it to restart the discussion. Thank you for your contributions.

@EvertBunschoten You were looking into this, right?

Yes I'm still working on this

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If this is still a relevant issue please comment on it to restart the discussion. Thank you for your contributions.