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

PIMPLE solver error: residualControl must be given as single values

Register Blogs Community New Posts Updated Threads Search

Like Tree10Likes
  • 1 Post By artymk4
  • 8 Post By artymk4
  • 1 Post By CFD_10

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   August 20, 2018, 03:18
Default PIMPLE solver error: residualControl must be given as single values
  #1
Member
 
Martin
Join Date: Aug 2018
Posts: 33
Rep Power: 8
artymk4 is on a distinguished road
I'm new to OpenFOAM but so far I've been able to correct all my mistakes, but this time I just cannot. I'm using PIMPLE to solve propeller case with my custom CAD propeller. I get this error as soon as I run mpirun:
Code:
[0] --> FOAM FATAL ERROR: 
[0] Solution convergence criteria specified in PIMPLE.residualControl must be given as single values. Corrector loop convergence criteria, if appropriate, are specified as dictionaries in PIMPLE.<loopName>ResidualControl.
[0] 
[0]     From function bool Foam::singleRegionConvergenceControl::readResidualControls()
[0]     in file cfdTools/general/solutionControl/convergenceControl/singleRegionConvergenceControl/singleRegionConvergenceControl.C at line 73.
[0] 
FOAM parallel run exiting
I tried to change residualControl which is defined in fvSolution but nothing helped. My residualControl looks like this:
Code:
PIMPLE
{
    correctPhi          no;
    nOuterCorrectors    100;
    nCorrectors         3;
    nNonOrthogonalCorrectors 1;
    pRefCell    0;
    pRefValue   0;
    residualControl
    {
        U
        {
            tolerance   1e-05;
            relTol      0;
        }
        p
        {
            tolerance   1e-04;
            relTol      0;
        }

    }
}
I tried to replace both U and p with "(p|U|k|epsilon)", I deleted p and kept only U, I tried to delete the whole residualControl... nothing helped. Any ideas what could be the problem?

P.S. I created tet mesh with prismatic boundary layers. Mesh looks good to me, I also get "Mesh OK." after checkMesh but I have very big Max skewness of 3.11. It says OK but I've read OpenFOAM has problems with skewness above 0.9. How can I have 3.11?? Mesh non-orthogonality Max is 70.3 and average 14.9
Since I started using OpenFOAM I've been having problems whenever I had tetrahedral mesh. This time with propeller case I followed youtube tutorial but still no luck. Is there any OF solver that works with tet meshes?
charlliemarshalll likes this.
artymk4 is offline   Reply With Quote

Old   August 20, 2018, 08:53
Default
  #2
Member
 
Martin
Join Date: Aug 2018
Posts: 33
Rep Power: 8
artymk4 is on a distinguished road
I fixed this problem by setting residualControl like this:
Code:
residualControl
{
    U   1e-05;
    p   1e-04;
}
So the solver finally began working. For each cycle of deltaT = approximately 1.2e-05 the Pimple solver made 100 interations. After 6 cycles the solver crashed because Courant Number became very high and deltaT very low. So it crashed after about one hour on my 4 core CPU.
This happens to me whenever I try to solve case with tetrahedral mesh. What am I doing wrong?
sita, amuzeshi, YCarv and 5 others like this.
artymk4 is offline   Reply With Quote

Old   August 31, 2018, 05:58
Default
  #3
New Member
 
Join Date: Aug 2015
Posts: 3
Rep Power: 11
Joko is on a distinguished road
Hi artymk4.

First thanks for the info with the residualControl. I had the same problem.

But now to your problem. What did you write in your fvSolution file for nOuterCorrectors under the pimple Algorithmus?
Joko is offline   Reply With Quote

Old   September 5, 2019, 13:19
Default
  #4
New Member
 
Khaled Yassin
Join Date: Aug 2019
Location: Jülich-Germany
Posts: 13
Rep Power: 7
Yassin-K is on a distinguished road
Hi all, I had the same problem. The problem was with OF version that I am using. OF5 uses the form:
Code:
residualControl
    {
        U
        {
            tolerance   1e-05;
            relTol      0;
        }
        p
        {
            tolerance   1e-04;
            relTol      0;
        }

    }
while OF6 uses the form:

Code:
residualControl
{
    U   1e-05;
    p   1e-04;
}
__________________
--
Best Regards,

Khaled Yassin,
Research Assistant
Institute for Energy and Environmental Research (IEK-14)
Forschungszentrum Jülich
Yassin-K is offline   Reply With Quote

Old   September 5, 2019, 15:09
Default
  #5
Member
 
CFD USER
Join Date: May 2019
Posts: 40
Rep Power: 7
CFD_10 is on a distinguished road
Quote:
Originally Posted by Yassin-K View Post
Hi all, I had the same problem. The problem was with OF version that I am using. OF5 uses the form:
Code:
residualControl
    {
        U
        {
            tolerance   1e-05;
            relTol      0;
        }
        p
        {
            tolerance   1e-04;
            relTol      0;
        }

    }
while OF6 uses the form:

Code:
residualControl
{
    U   1e-05;
    p   1e-04;
 }

I cannot find any tutorial in OF5 that uses that format. OF5 uses the following:


Code:
residualControl
{
    U   1e-05;
    p   1e-04;
}
which is also used by OF6.
If want to verify this, run the following grep or another tool that support pcre regex, e.g: pcregrep:
Code:
pcregrep --color -r -M '^\h*residualControl\s*{[^}]*}' $FOAM_TUTORIALS
anon_q likes this.
CFD_10 is offline   Reply With Quote

Old   February 9, 2021, 00:39
Default
  #6
New Member
 
Tushar Survase
Join Date: Nov 2020
Posts: 7
Rep Power: 6
ttsurvase is on a distinguished road
For OF-V5 and OF-V6, residual control needs to be given as single value. OF-v1906 and OF-v2006 asks for dictionary residual control. While OF-V5 and OF-V6 requires single value.
residualControl

{

p 0.001;

p_rgh 0.001;

U 0.001;

k 0.001;

epsilon 0.001;


omega 0.001;

nuTilda 0.001;
}
Its just an example on how to implement residual control in OF-v5 and OF-v6.
ttsurvase is offline   Reply With Quote

Old   May 15, 2021, 19:28
Default
  #7
Member
 
Jairo A. Gutiérrez S
Join Date: Nov 2014
Posts: 60
Rep Power: 12
jairoandres is on a distinguished road
Yeah, I ran into the same issue when using an OpenFOAM.com case in OF-V8. Fixed.
jairoandres is offline   Reply With Quote

Old   August 25, 2024, 03:07
Default
  #8
New Member
 
Lubelskie
Join Date: Feb 2023
Posts: 4
Rep Power: 3
mdesign is on a distinguished road
Which file should I edit in that way? I have same error with HelyxOS and OpenFoam but I`m not sure where should I put your solution.

Why does this happen?
mdesign 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
Population Balance Modeling (PBM) - Ansys Fluent chittipo FLUENT 164 November 18, 2023 12:54
Poisson equation in custom solver diverges for large boundary values babakflame OpenFOAM Running, Solving & CFD 2 May 23, 2017 21:11
using chemkin JMDag2004 OpenFOAM Pre-Processing 2 March 8, 2016 23:38
Star cd es-ice solver error ernarasimman STAR-CD 2 September 12, 2014 01:01
CFX 5.5 Roued CFX 1 October 2, 2001 17:49


All times are GMT -4. The time now is 14:31.