CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > SU2

Convergence criterion when using dual time stepping

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   March 18, 2013, 07:56
Default Convergence criterion when using dual time stepping
  #1
New Member
 
Aldo Bonfiglioli
Join Date: Jan 2013
Location: Potenza, Italy
Posts: 19
Rep Power: 13
abonfi is on a distinguished road
Hi,
I am solving an un-steady flow problem with dual time stepping, but I am
having troubles in setting the convergence threshold in dual (fictitious) time.
Using the attached cfg file (some of the other settings I tried are also there, commented out)
the solver keeps iterating and doesn't stop even when it seems that the convergence criterion has been met

Regards,
Aldo
Attached Files
File Type: txt lam_cylinder_cfg.txt (9.5 KB, 45 views)
abonfi is offline   Reply With Quote

Old   March 24, 2013, 00:33
Default
  #2
Super Moderator
 
Francisco Palacios
Join Date: Jan 2013
Location: Long Beach, CA
Posts: 404
Rep Power: 15
fpalacios is on a distinguished road
Quote:
Originally Posted by abonfi View Post
Hi,
I am solving an un-steady flow problem with dual time stepping, but I am
having troubles in setting the convergence threshold in dual (fictitious) time.
Using the attached cfg file (some of the other settings I tried are also there, commented out)
the solver keeps iterating and doesn't stop even when it seems that the convergence criterion has been met

Regards,
Aldo
Dear Aldo,

Just in case, I think that it would be useful if you download the latest version of SU2 v2.0.2.

In order to stop the inner iteration SU2 counts with two parameters:
- UNST_INT_ITER= (in your case 4000) this is the maximum number of inner iterations.
and - RESIDUAL_MINVAL= (in your case -12) this is the min value of the residual.

As far I see in your config file, the code will always perform 4000 iterations before jumping to the next physical time step.

Best,
Francisco
fpalacios is offline   Reply With Quote

Old   March 25, 2013, 07:30
Default Dual time stepping: convergence in dual time
  #3
New Member
 
Aldo Bonfiglioli
Join Date: Jan 2013
Location: Potenza, Italy
Posts: 19
Rep Power: 13
abonfi is on a distinguished road
The development code dies with a segmentation fault after the first iteration in dual time; the log file is attached.

The stable code seems to ignore both RESIDUAL_REDUCTION and RESIDUAL_MINVAL and keeps iterating until UNST_INT_ITER is reached. I would expect the code to terminate
before UNST_INT_ITER is reached if either of the two criteria based upon the residual are met.

Aldo
Attached Files
File Type: txt log-2.0.2.txt (6.8 KB, 5 views)
File Type: txt lam_cylinder_cfg.txt (9.5 KB, 8 views)
abonfi is offline   Reply With Quote

Old   March 30, 2013, 10:58
Default
  #4
Super Moderator
 
Francisco Palacios
Join Date: Jan 2013
Location: Long Beach, CA
Posts: 404
Rep Power: 15
fpalacios is on a distinguished road
Quote:
Originally Posted by abonfi View Post
The development code dies with a segmentation fault after the first iteration in dual time; the log file is attached.

The stable code seems to ignore both RESIDUAL_REDUCTION and RESIDUAL_MINVAL and keeps iterating until UNST_INT_ITER is reached. I would expect the code to terminate
before UNST_INT_ITER is reached if either of the two criteria based upon the residual are met.

Aldo
To fix this issue, please change in integration_structure.cpp the following:

if (config_container[ZONE_0]->GetKind_GridMovement(ZONE_0) == AEROELASTIC) {

by

if ((config_container[ZONE_0]->GetGrid_Movement()) && (config_container[ZONE_0]->GetKind_GridMovement(ZONE_0) == AEROELASTIC)) {

(this is line 130 in my version).

Best,
Francisco
fpalacios is offline   Reply With Quote

Old   April 8, 2013, 10:56
Default More on convergence for dual time stepping
  #5
New Member
 
Aldo Bonfiglioli
Join Date: Jan 2013
Location: Potenza, Italy
Posts: 19
Rep Power: 13
abonfi is on a distinguished road
Unfortunately,
smthg else seems to be needed

g++ -DPACKAGE_NAME=\"SU\^2\" -DPACKAGE_TARNAME=\"SU\^2\" -DPACKAGE_VERSION=\"2.0.1\" -DPACKAGE_STRING=\"SU\^2\ 2.0.1\" -DPACKAGE_BUGREPORT=\"susquared-dev@lists.stanford.edu\" -DPACKAGE=\"SU\^2\" -DVERSION=\"2.0.1\" -I. -DNO_CGNS -DNO_METIS -DNO_TECIO -DNO_MPI -MT ___bin_SU2_CFD-integration_structure.o -MD -MP -MF .deps/___bin_SU2_CFD-integration_structure.Tpo -c -o ___bin_SU2_CFD-integration_structure.o `test -f '../src/integration_structure.cpp' || echo './'`../src/integration_structure.cpp
../src/integration_structure.cpp: In member function ‘void CIntegration::SetDualTime_Solver(CGeometry*, CSolution*, CConfig*)’:
../src/integration_structure.cpp:344:10: error: ‘config_container’ was not declared in this scope
make[1]: *** [___bin_SU2_CFD-integration_structure.o] Error 1
make[1]: Leaving directory `/home/abonfi/CFD_codes/SU2_v2.0.2/trunk/SU2_CFD/obj'
make: *** [all-recursive] Error 1
abonfi is offline   Reply With Quote

Old   April 11, 2013, 15:09
Default
  #6
Super Moderator
 
Thomas D. Economon
Join Date: Jan 2013
Location: Stanford, CA
Posts: 271
Rep Power: 14
economon is on a distinguished road
Hi Aldo,

Please try to replace that line with the following instead:

if (config->GetGrid_Movement() && config->GetKind_GridMovement(ZONE_0) == AEROELASTIC && geometry->GetFinestMGLevel()) {

The issue is that the configuration object is named 'config' in one location and 'config_container' in another.

Hope this helps!
Tom
economon is offline   Reply With Quote

Old   April 12, 2013, 04:58
Default Segmentation fault
  #7
New Member
 
Aldo Bonfiglioli
Join Date: Jan 2013
Location: Potenza, Italy
Posts: 19
Rep Power: 13
abonfi is on a distinguished road
The v 2.0.2 code compiles fine now, but dies with a segmentation fault after the 1st pseudo time iteration.
As mentioned previously, the stable version runs fine.
Log, cfg file and grid can be retrieved here:
https://dl.dropboxusercontent.com/u/60787983/su2log.zip
abonfi is offline   Reply With Quote

Old   April 18, 2013, 14:05
Default
  #8
Super Moderator
 
Thomas D. Economon
Join Date: Jan 2013
Location: Stanford, CA
Posts: 271
Rep Power: 14
economon is on a distinguished road
Hi Aldo,

We will be releasing a new developer version (2.0.3) later today. Can you please try your problem with this version? Hopefully this will clear up your issue.

Cheers,
Tom
economon is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Multiple floating objects CKH OpenFOAM Running, Solving & CFD 14 February 20, 2019 10:08
Moving mesh Niklas Wikstrom (Wikstrom) OpenFOAM Running, Solving & CFD 122 June 15, 2014 07:20
convergence problem when use pisoFoam, LES for wind tunnel case Forrest_Lei OpenFOAM 3 July 19, 2011 07:00
CFX-10 - Adaptive Time Stepping James Date CFX 3 October 17, 2005 23:15
Dual Time Stepping Method X. Ye Main CFD Forum 1 September 23, 1999 05:05


All times are GMT -4. The time now is 01:00.