1 Reply Latest reply on Oct 8, 2012 11:51 AM by Bill McEachern

    help with understanding transient iterations and time steps

    Dan Hofstetter

      Hi all,


      I'm hoping someone here can help me to better understand how Flow Simulation treats iterations and time steps in transient analyses.  I thought I was doing OK until I recently ran Phoenics for the same problem and noticed that it was performing many more iterations to reach the solution than Flow Simulation (as set up by me).  I read in the help file that for transient simulations, the number of iterations is equal to the number of time steps.  However, when looking at other CFD solvers, I notice that many of them may use hundreds of iterations per time step in order to reach convergence, and at the end of each time step the calculation continues but with variables that must converge again for that step.


      I am working on a simulation that requires time accuracy for gas concentration decay, and want to make sure I am doing everything correctly.  When I specify a 10s time step, which was used in Phoenics and resulted in a close match to measured data, Flow Simulation solves the simulation very quickly but with only one iteration per 10 seconds.  I have obtained some results that match the measured data pretty closely, but I had to try many different combinations of fan inlet concentration values, and without convergence I suspect the solutions may not be valid.  I am only trying to mimic Phoenics to prove that Flow Simulation can produce acceptable results when running the same model - after I achieve this I will be running a model with an internal fan that takes care of recirculation for me, and will probably use automatic settings with flow freezing to save computing time.


      To try to mimic the way Phoenics solves the problem, here is what I have tried:


      1.  Set a manual time step of 0.018 seconds.  This results in ~556 iterations per 10 seconds of simulation time.

      2.  Set the maximum simulation time to 10 seconds.

      3.  Run the solver.  The variables for Pressure, Vx, Vy, Vz, KE, and EP are used for convergence with the "if all are true" calculation control option.  These values typically converge by iteration 217.  The remainder of iterations are used for gas concentration decay.

      4.  When the solver finishes, I change the fan inlet concentration based on the outlet concentration.

      5.  I increase the maximum simulation time by 10 seconds (to 20 seconds in this case) and run the solver again, continuing the calculation.  The variables have to converge again, and when the solver is finished I repeat steps 4 and 5 until I reach 90 seconds.


      From what I know about other finite numerical methods (FEM, FDM, BEM), the time step is a carefully chosen period used to march the simulation ahead in time, and a certain number of iterations are required for convergence during each time step.  It seems like Flow Simulation doesn't treat time step and iterations in this way.  Rather, it seems that the maximum simulation time really acts like the time step, and the manual time step controls how many iterations the solver will perform during that time.  Am I wrong?  Is there a better way to do what I am attempting?




      - Dan

        • Re: help with understanding transient iterations and time steps
          Bill McEachern

          Firstly with respect to transient flows goals are strictly for informational purposes - they are NOT used in anyway for any sort of convergence criteria - that is all handled internally.


          From what I can gather from use of the code over more than a decade the code appears to the user as a time explicit solution for transient solutions. If you read the technical reference maunal it isn't time explicit, it is a second order accurate implicit scheme so iterations per time step must occur. However, I can only assume that the individual time step iterations are not really displayed and are internal, as only time step results are shown to the user, but this is just a guess but seems to match the experience. So, with respect to comparing the solution to the PHOENICS solution might not be what you think it is.


          It has been a very long time since I had anything to do PHOENICS so my recollections of it are pretty much zero so providing the rosetta stone function here isn't on.


          You need to be very careful in using the flow freezing option. This function holds the convective terms constant for however many iterations/time steps you allow - you need to ensure this is a valid thing to do. That is to say, that the flow has settled down from the start up transient and then remains more or less "steady" for the portion of the clac that you are alowing the diffusive terms to catch up. If you want a reference Flow sim calc run it with the automatice time stepping and allow saving at the time steps you want to compare to the PHOENICS solution. If flow freezing is a valid assumption then you can invoke it to accelrate the calc but it would be better for the reference solution to not use it. The test for validity here is you allow the flow freezing to start after increasing number of travels - once the numbers start always landing at about the same values then you know the point at which it is safe to start the flow freezing. In other words if you start it too early you can end up in the wrong place. Further, if the solution starts to jump in time to fast with flow frezing then you need to slow it down by specifiying saving time steps at appropriate intervals.


          Hope that helps.