# Underrelaxation of a geometric field or fvMatrix

 Register Blogs Members List Search Today's Posts Mark Forums Read

 September 25, 2008, 02:53 I was reading the threads deal #1 Member   Matthias Kern Join Date: Mar 2009 Location: Karlsruhe, Germany Posts: 36 Rep Power: 9 I was reading the threads dealing with the underrelaxation factor, but I'm still wondering. If I call lets say p.relax() while p is the geometric field of the pressure scalar then it is explicitly relaxing the geometric field by p=alpha*p + (1-alpha)*pold assumed I called p.storePrevIter()? But if I call UEqn.relax() and UEqn is a fvMatrix then I'm setting the alpha for the main diagonal of the solution matrix means the underrelaxation for the linear solution algorithm? So what against underrelaxing the linear solution in the inner loop of a transient run? Like Hrvoje already wrote using SIMPLE for a transient run even needs underrelaxation. Do I miss a point? Matthias

 September 25, 2008, 09:22 Hi Matthias, " So what agai #2 Member   Mathieu Olivier Join Date: Mar 2009 Location: Quebec City, Canada Posts: 76 Rep Power: 9 Hi Matthias, " So what against underrelaxing the linear solution in the inner loop of a transient run? " Underrelaxation is used to accelerate convergence in an iterative loop. In transient solutions, you have to choices (in pseudo code) : 1. Iterative procedure : for all timesteps { do while convergence { solve momentum correct pressure and momentun (SIMPLE, PISO, etc.) } } 2. Non iterative procedure : for all timesteps { solve momentum correct pressure and momentun (PISO, etc.) } Transient solvers from the standard OpenFOAM package use the non iterative procedure which require a smaller timestep to respect the CFL condition. The non iterative procedure also require a more accurate pressure-velocity coupling (like PISO). If you use relaxation in a non iterative procedure, you will change the solution itself. Hope this helps. Mathieu

 September 25, 2008, 10:17 Hello Mathieu, thanks for you #3 Member   Matthias Kern Join Date: Mar 2009 Location: Karlsruhe, Germany Posts: 36 Rep Power: 9 Hello Mathieu, thanks for your reply. What you mentioned is what I understand as a relaxation of the outer loop. Lets say I call UEqn.solve() then it is starting the linear solver till a certain convergence criteria is reached. After that pEqn.solve() is called and so on in a segregated manner. So I don't want to underelax between this segregated steps I want to change the relaxation for the linear solver step, so during the linear solver is running. Isn't that simply influencing the number of iteration steps I need to reach the convergence criteria of the linear solver, but the result of the linear solver keeps the same?? Did I understand the way OF underelaxes wrong? Matthias

 September 25, 2008, 10:47 Hi Matthias, I'm not an exp #4 Member   Mathieu Olivier Join Date: Mar 2009 Location: Quebec City, Canada Posts: 76 Rep Power: 9 Hi Matthias, I'm not an expert with the code, but as far as I understand, if you want to relax the linear solver step then use UEqn.relax() (see that post : http://www.cfd-online.com/OpenFOAM_D...tml?1201846208 ). Regards, Mathieu

 Thread Tools Display Modes Linear Mode

 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 OffTrackbacks are On Pingbacks are On Refbacks are On Forum Rules

 Similar Threads Thread Thread Starter Forum Replies Last Post shrina OpenFOAM Running, Solving & CFD 10 October 3, 2013 14:38 Bernhard Kubicek FLUENT 0 November 24, 2008 09:43 marco7 OpenFOAM Running, Solving & CFD 2 September 11, 2008 03:58 Ihab Sraj CFX 5 June 11, 2006 12:42 Wouter FLUENT 7 November 28, 2005 11:32

All times are GMT -4. The time now is 22:30.