CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   CFX (https://www.cfd-online.com/Forums/cfx/)
-   -   Stop criteria in CFX (https://www.cfd-online.com/Forums/cfx/160819-stop-criteria-cfx.html)

MissCFD October 13, 2015 22:27

Stop criteria in CFX
 
Is it possible to set a convergence criteria to stop once it has reached an asymptotic limit ?

Thank you very much for your help

Antanas October 14, 2015 05:36

Quote:

Originally Posted by MissCFD (Post 568087)
Is it possible to set a convergence criteria to stop once it has reached an asymptotic limit ?

Thank you very much for your help

I guess yes. You should use interrupt condition.

MissCFD October 14, 2015 08:11

Yes, but how do we take into account the previous iteration in a expression ?
For example, if I want to stop the convergence when:
Qte,max-Qte,min < 1% during twenty iterations ?

Quote:

Originally Posted by Antanas (Post 568157)
I guess yes. You should use interrupt condition.


Antanas October 15, 2015 09:58

Quote:

Originally Posted by MissCFD (Post 568196)
Yes, but how do we take into account the previous iteration in a expression ?
For example, if I want to stop the convergence when:
Qte,max-Qte,min < 1% during twenty iterations ?

Sorry I don't understand what you want exactly, but if you want to stop when a quantity reach prescribed value asymptoticaly, IMO it means that two conditions satisfy at the same time:
1. quantity value becomes close enought to target value
2. its time derivative -> 0.

In this case there's no problem to implement such condition using if-CEL expression, for example: if((abs(quantity - target) < eps1) && abs(quantity.dt) < eps2,1,0)

MissCFD October 23, 2015 16:50

Sorry, but I don't understand how work the Interrupt Control Conditions in CFX !

Where and how I have to write the logical expression ? In the tab ''Expressions'' or in ''Logical Expression'' of the tab ''Solver Control'' ?
What am I supposed to write in ''Logical Expression'' of the tab ''Solver Control'' ?

I would like that the solver stops when the imbalance of mass flow is below a certain level. So I have the expression following: if(Imbalance < 10^-4, 1,0).

Quote:

Originally Posted by Antanas (Post 568420)
Sorry I don't understand what you want exactly, but if you want to stop when a quantity reach prescribed value asymptoticaly, IMO it means that two conditions satisfy at the same time:
1. quantity value becomes close enought to target value
2. its time derivative -> 0.

In this case there's no problem to implement such condition using if-CEL expression, for example: if((abs(quantity - target) < eps1) && abs(quantity.dt) < eps2,1,0)


Opaque October 23, 2015 18:47

MyImbalance = abs(massFlow()@MyInlet - massFlow()@MyOutlet)

Logical Expression = if(MyImbalance < 10^-4 [kg s^-1], 1,0)

Hope the above helps,

Antanas October 24, 2015 03:27

Quote:

Originally Posted by MissCFD (Post 569976)
Sorry, but I don't understand how work the Interrupt Control Conditions in CFX !

Where and how I have to write the logical expression ? In the tab ''Expressions'' or in ''Logical Expression'' of the tab ''Solver Control'' ?
What am I supposed to write in ''Logical Expression'' of the tab ''Solver Control'' ?

I would like that the solver stops when the imbalance of mass flow is below a certain level. So I have the expression following: if(Imbalance < 10^-4, 1,0).

For imbalances there's 'conservation target' convergence criterion. You may set it for all equations or on equation class basis.

Anyway, interrupt conditions are set inside Solver Control on Basic Settings tab (look for 'Interrupt Control' checkbox).

Murillo August 7, 2022 16:20

Yes, it is possible to do it so. Check "ANSYS CFX Solver Modeling Guide". A section called "Using Interrupt Control in Cases with Transient Convergence Behavior" describes how you can do it.


All times are GMT -4. The time now is 20:16.