CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

For Runnig Multiple Iterations in a Single Time Step in chtMultiRegionFoam

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   March 9, 2022, 00:22
Default For Runnig Multiple Iterations in a Single Time Step in chtMultiRegionFoam
  #1
New Member
 
Abhishek Dey
Join Date: Sep 2021
Posts: 3
Rep Power: 4
Abhishek@123 is on a distinguished road
Hi,
I am relatively new in openFoam and currently I am using chtMultiRegionFoam Solver to solve a transient case. I want to run the solver for 20 times (i.e. for 20 iterations) in a single time step and also I want to give convergence criteria in each time step. Can anyone tell me how can I do this?
Abhishek@123 is offline   Reply With Quote

Old   March 9, 2022, 07:14
Default
  #2
Member
 
saidc
Join Date: Feb 2020
Location: Türkiye
Posts: 61
Rep Power: 6
saidc. is on a distinguished road
Hi Abhishek,

If I understood you correctly, the PIMPLE algorithm does this. With residual control you can give convergence criteria. The algorithm is in fvSolution (i.e. tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSolution) dictionary.

Lets say, you have,
Code:
PIMPLE
{    

        nNonOrthogonalCorrectors 0;     
        nCorrectors          1;    
        nOuterCorrectors    50;       

        residualControl
        {
               U
               {
                      tolerance  1e-5;
                      relTol      0;
               }
               p
               {
                      tolerance  5e-4;
                      relTol      0;
               }
         } 
}
In a single time step pimple algorithm will iterates 50 (nOuterCorrectors) times if it does not converge (residualControl) before. After 50 iterations it will move to the next time step.

Usefull links:
https://openfoamwiki.net/index.php/O...hm_in_OpenFOAM
https://www.simscale.com/forum/t/cfd...lgorithm/81418

Kind regards,
Said.
saidc. is offline   Reply With Quote

Old   November 9, 2022, 03:20
Default
  #3
Member
 
JuanMi
Join Date: Nov 2017
Posts: 41
Rep Power: 8
keitaro7_14 is on a distinguished road
Quote:
Originally Posted by saidc. View Post
Hi Abhishek,

If I understood you correctly, the PIMPLE algorithm does this. With residual control you can give convergence criteria. The algorithm is in fvSolution (i.e. tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSolution) dictionary.

Lets say, you have,
Code:
PIMPLE
{    

        nNonOrthogonalCorrectors 0;     
        nCorrectors          1;    
        nOuterCorrectors    50;       

        residualControl
        {
               U
               {
                      tolerance  1e-5;
                      relTol      0;
               }
               p
               {
                      tolerance  5e-4;
                      relTol      0;
               }
         } 
}
In a single time step pimple algorithm will iterates 50 (nOuterCorrectors) times if it does not converge (residualControl) before. After 50 iterations it will move to the next time step.

Usefull links:
https://openfoamwiki.net/index.php/O...hm_in_OpenFOAM
https://www.simscale.com/forum/t/cfd...lgorithm/81418

Kind regards,
Said.
Indeed, now it is a little bit different with OF-10. If you want to perform a real PIMPLE algorithm in chtMultiRegionFoam, you need to write the following in system/fvSolution

Code:
"(PIMPLE | PISO)"
{    
  
        nOuterCorrectors    500;       

}
Then, you need to introduce the outerCorrectorResidualControl in your PIMPLE block of fvSolution corresponding to every region with your desired tolerance. Notice that if you leave some region without residual control, all nOuterCorrectors will be iterated.
Code:
PIMPLE
{    

        outerCorrectorResidualControl
        {
               U
               {
                      tolerance  1e-5;
                      relTol      0;
               }
               e
               {
                      tolerance  5e-4;
                      relTol      0;
               }
         } 
}
What chtMultiRegionFoam does with the code I have written above is to iterate the same time step 500 times for all regions, unless all regions have a residual control criterion via the outerCorrectorResidualControl subdictionary.
keitaro7_14 is offline   Reply With Quote

Reply

Tags
chtmutiregionfoam, openfoam


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
courant number increases to rather large values 6863523 OpenFOAM Running, Solving & CFD 22 July 5, 2023 23:48
[solidMechanics] Support thread for "Solid Mechanics Solvers added to OpenFOAM Extend" bigphil OpenFOAM CC Toolkits for Fluid-Structure Interaction 686 December 22, 2022 09:10
pressure in incompressible solvers e.g. simpleFoam chrizzl OpenFOAM Running, Solving & CFD 13 March 28, 2017 05:49
calculation stops after few time steps sivakumar OpenFOAM Running, Solving & CFD 7 March 17, 2013 06:37
pisoFoam with k-epsilon turb blows up - Some questions Heroic OpenFOAM Running, Solving & CFD 26 December 17, 2012 03:34


All times are GMT -4. The time now is 05:27.