convergence criteria
I am having trouble deciding on what kind of convergence criteria I should apply to my program. I have used MathCAD to develop a 2D implicit finite difference program using the voticity/stream function method to get velocities. I am currently solving it for the flow in an enclosure with a moving top. In the program I can set determine how large my grid is, but I can't decide on how to set a convergencecriteria that will tell it when to stop iterating. Originally I was able to set the number of iterations. Now, I have it itereate until the absolute value of the center node's xvelocity, Ux, minus the previous iteration's Ux, is below a certain number, ie  .0001. I am not sure if that is a good method or not.
Any suggestions would be helpful. thanks 
Re: convergence criteria
A criterion based on just the difference doesn't seem to be right. I use criterion of the follwing forms in variuos iterative problems: Sum(f_new  f_old)^2/Sum(f_new)^2 < a small value or Sumf_new  f_old/Sumf_new < a small value where Sum = sum on all the nodes
f = field variable new, old = current and previous iteration values 
Re: convergence criteria
Whatever you do, don't just look at one point in the domain. If you're solving an equation f(x,y,...) = 0, determine the R.M.S. residual over the entire domain. Malik's equations provide an equivalent approach, but the exponent 2 should be inside the summation.
Apart from that: Your initial approach to fix a number of iterations was actually more robust. You should still impose an upper limit for the number of iterations, because you never know whether a set residual can even be reached. Always observe the residual, but don't make a fixed residual your only condition for termination. 
Re: convergence criteria
check it out: http://www.cfdonline.com/Forum/main...cgi?read=38497

All times are GMT 4. The time now is 04:53. 