General Mechanical

General Mechanical

Topics related to Mechanical Enterprise, Motion, Additive Print and more.

Difference between “Define By” Substeps vs. Time in FSI

    • ansysuser
      Subscriber

      Hello,


       


      I am performing FSI analysis through System Coupling with Transient Structural and Fluent.  In the process of refining the model I found that I needed to figure out how the mechanical side handles damping, due to oscillations that are present in my model but not in the physical system.  To explore this I made a simpler model that doesn't take as long to run but that has some of the salient features of my actual model. All these images and gifs here portray the simpler model.  The simpler model is to help me figure out how to get rid of the oscillations in my real model.  The model is a simple hollow cylinder filled with air.  The cylinder material is hyperelastic and the air is ideal gas compressible.  One end of the cylinder has a fixed support and the other has a pressure that is imposed by tabular data in 40 increments.  So the pressure increases halfway through, then suddenly drops in order to induce oscillations.




      Along the way I started to wonder if there was some difference between ramping pressures with Substeps vs. Timesteps, as far as the system response.  So I made two copies of the same system, the first one uses 40 substeps over 1 second, as seen in these Analysis Settings:



      The solution using substeps is shown in the following gif.  As can be seen, the cylinder compresses and when the pressure drops it oscillates as expected.



      The second model uses a time step size of 0.025s from 0 to 1 second for a total of 40 time steps, with Define By set to Time, as shown below:



      This is the only difference between the two systems.  The time stepping model seems to give a similar solution until the pressure drop, at which point it fails with a "Highly Distorted Element" error.  The animation for this model is shown below:



      My questions:


      1.  What is the substantive difference between using Substeps and Time in the "Define By" setting?  I couldn't find anything in the manual other than that the user can choose one or the other. 


      2. The solution using Substeps took 1.6 hours to complete.  The solution that solved only halfway through using TimeSteps took 3 minutes before the error.  Extrapolating this, the TimeSteps solution would solve in under 10 minutes.  Why the dramatic difference?


       

    • Steve
      Ansys Employee

      Hi,


      As you have found, FSI cases with hyperelastic materials can exhibit numerical instabilities. This is also true for cases with thin membranes and incompressible fluids. I recommended modifying your fluid to be compressible. For liquids the density will be a function of the pressure and bulk modulus.


      The recommended method to reduce numerical instabilities is with Solution Stabilization in Fluent. The workflow for this is described in the solution "Solution Stabilization for FSI and 6DOF with Fluent" on the customer portal. 



      1. The following is from the Mechanical User's Guide https://ansyshelp.ansys.com/account/secured?returnurl=/Views/Secured/corp/v193/wb_sim/ds_Step_Controls.html?q=substeps)


      Define By


      This property displays when you set the Auto Time Stepping property to On or Off. Its drop-down menu contains the options Time and Substep. The default setting for this property depends upon the analysis type. It enables you to set the limits on load increment in one of two ways. You can specify the Initial Time Step, Minimum Time Step and Maximum Time Step number of substeps for a step or equivalently specify the Time Substeps, Minimum Substeps and Maximum Substeps time step size.


      So you're effectively specifying the same thing but on a time basis or step basis.


      2. Perhaps the case with substeps used more substeps than the other case which would explain the longer runtime. Examining the .out files for both cases, should show this.


      Steve


       

    • ansysuser
      Subscriber

      Thanks, Steve.


      I think I have found part of the issue.  Please let me know what is going on here.


      The coupled solution that uses time steps fails during the 18th time step due to failure to converge with force.  The output looks like this:


       STEP NUMBER . . . . . . . . . . . . . . . . . .    18
         COUPLING ITERATION. . . . . . . . . . . . . . .     1
         TIME AT END OF THIS STEP. . . . . . . . . . . . 0.45000   
         TIME STEP SIZE. . . . . . . . . . . . . . . . . 0.25000E-01


       *** FORCE SUM ACROSS TARGET INTERFACE . . . . .Fluid Solid Interface (FSIN_1)
           RECEIVING FORCE FX SUM =  0.77126E-06
           RECEIVING FORCE FY SUM =  0.55418E-06
           RECEIVING FORCE FZ SUM = -0.11729E-05

           FORCE CONVERGENCE VALUE  =  0.3805E-02  CRITERION=  0.9415E-03
           DISP CONVERGENCE VALUE   =  0.3552E-03  CRITERION=  0.3467E-03
          EQUIL ITER   1 COMPLETED.  NEW TRIANG MATRIX.  MAX DOF INC= -0.3552E-03
           DISP CONVERGENCE VALUE   =  0.3536E-03  CRITERION=  0.3538E-03 <<< CONVERGED
           LINE SEARCH PARAMETER =  0.9956     SCALED MAX DOF INC = -0.3536E-03
           FORCE CONVERGENCE VALUE  =  0.5663E-02  CRITERION=  0.1013E-02
          EQUIL ITER   2 COMPLETED.  NEW TRIANG MATRIX.  MAX DOF INC= -0.8257E-04
           DISP CONVERGENCE VALUE   =  0.8183E-04  CRITERION=  0.3615E-03 <<< CONVERGED
           LINE SEARCH PARAMETER =  0.9911     SCALED MAX DOF INC = -0.8183E-04
           FORCE CONVERGENCE VALUE  =  0.3494E-02  CRITERION=  0.1035E-02
          EQUIL ITER   3 COMPLETED.  NEW TRIANG MATRIX.  MAX DOF INC= -0.2063E-03
           DISP CONVERGENCE VALUE   =  0.2013E-03  CRITERION=  0.3689E-03 <<< CONVERGED
           LINE SEARCH PARAMETER =  0.9759     SCALED MAX DOF INC = -0.2013E-03
           FORCE CONVERGENCE VALUE  =  0.4860E-02  CRITERION=  0.1054E-02
          EQUIL ITER   4 COMPLETED.  NEW TRIANG MATRIX.  MAX DOF INC=  0.8750E-04
           DISP CONVERGENCE VALUE   =  0.8614E-04  CRITERION=  0.3764E-03 <<< CONVERGED
           LINE SEARCH PARAMETER =  0.9845     SCALED MAX DOF INC =  0.8614E-04
           FORCE CONVERGENCE VALUE  =  0.4340E-02  CRITERION=  0.1076E-02
          EQUIL ITER   5 COMPLETED.  NEW TRIANG MATRIX.  MAX DOF INC=  0.2291E-03
           DISP CONVERGENCE VALUE   =  0.2236E-03  CRITERION=  0.3841E-03 <<< CONVERGED
           LINE SEARCH PARAMETER =  0.9762     SCALED MAX DOF INC =  0.2236E-03
           FORCE CONVERGENCE VALUE  =  0.5697E-02  CRITERION=  0.1098E-02
          EQUIL ITER   6 COMPLETED.  NEW TRIANG MATRIX.  MAX DOF INC= -0.9168E-04
           DISP CONVERGENCE VALUE   =  0.8974E-04  CRITERION=  0.3919E-03 <<< CONVERGED
           LINE SEARCH PARAMETER =  0.9789     SCALED MAX DOF INC = -0.8974E-04
           FORCE CONVERGENCE VALUE  =  0.5481E-02  CRITERION=  0.1120E-02


      The sub step solution looks totally different.  It does not keep updating the equilibrium iterations at the current step, like the time step solver, but rather seems to be looking ahead at future sub steps.  Perhaps that is why it is so much slower when coupled?  I have observed that both approaches are equally as fast when not coupled.


      Here is the same output for the substepping mechanical when coupled to fluent.


                        C O U P L I N G   S T E P   O P T I O N S

         STEP NUMBER . . . . . . . . . . . . . . . . . .    18
         COUPLING ITERATION. . . . . . . . . . . . . . .     1
         TIME AT END OF THIS STEP. . . . . . . . . . . . 0.45000   
         TIME STEP SIZE. . . . . . . . . . . . . . . . . 0.25000E-01


       *** FORCE SUM ACROSS TARGET INTERFACE . . . . .Fluid Solid Interface (FSIN_1)
           RECEIVING FORCE FX SUM =  0.10522E-05
           RECEIVING FORCE FY SUM =  0.60867E-06
           RECEIVING FORCE FZ SUM = -0.11634E-05

           FORCE CONVERGENCE VALUE  =  0.1219E-02  CRITERION=  0.9386E-03
           DISP CONVERGENCE VALUE   =  0.2736E-05  CRITERION=  0.3297E-03 <<< CONVERGED
          EQUIL ITER   1 COMPLETED.  NEW TRIANG MATRIX.  MAX DOF INC= -0.2736E-05
           DISP CONVERGENCE VALUE   =  0.2736E-05  CRITERION=  0.3364E-03 <<< CONVERGED
           LINE SEARCH PARAMETER =   1.000     SCALED MAX DOF INC = -0.2736E-05
           FORCE CONVERGENCE VALUE  =  0.2056E-04  CRITERION=  0.9578E-03 <<< CONVERGED
          >>> SOLUTION CONVERGED AFTER EQUILIBRIUM ITERATION   1
       *** LOAD STEP    18   SUBSTEP     1  COMPLETED.    CUM ITER =   2158
       *** TIME =  0.425625         TIME INC =  0.625000E-03

           FORCE CONVERGENCE VALUE  =  0.1110E-02  CRITERION=  0.9388E-03
           DISP CONVERGENCE VALUE   =  0.2538E-05  CRITERION=  0.3297E-03 <<< CONVERGED
          EQUIL ITER   1 COMPLETED.  NEW TRIANG MATRIX.  MAX DOF INC= -0.2538E-05
           DISP CONVERGENCE VALUE   =  0.2538E-05  CRITERION=  0.3364E-03 <<< CONVERGED
           LINE SEARCH PARAMETER =   1.000     SCALED MAX DOF INC = -0.2538E-05
           FORCE CONVERGENCE VALUE  =  0.2078E-04  CRITERION=  0.9580E-03 <<< CONVERGED
          >>> SOLUTION CONVERGED AFTER EQUILIBRIUM ITERATION   1
       *** LOAD STEP    18   SUBSTEP     2  COMPLETED.    CUM ITER =   2159
       *** TIME =  0.426250         TIME INC =  0.625000E-03

           FORCE CONVERGENCE VALUE  =  0.1060E-02  CRITERION=  0.9390E-03
           DISP CONVERGENCE VALUE   =  0.2421E-05  CRITERION=  0.3297E-03 <<< CONVERGED
          EQUIL ITER   1 COMPLETED.  NEW TRIANG MATRIX.  MAX DOF INC= -0.2421E-05
           DISP CONVERGENCE VALUE   =  0.2421E-05  CRITERION=  0.3364E-03 <<< CONVERGED
           LINE SEARCH PARAMETER =   1.000     SCALED MAX DOF INC = -0.2421E-05
           FORCE CONVERGENCE VALUE  =  0.2038E-04  CRITERION=  0.9582E-03 <<< CONVERGED
          >>> SOLUTION CONVERGED AFTER EQUILIBRIUM ITERATION   1
       *** LOAD STEP    18   SUBSTEP     3  COMPLETED.    CUM ITER =   2160
       *** TIME =  0.426875         TIME INC =  0.625000E-03

           FORCE CONVERGENCE VALUE  =  0.1073E-02  CRITERION=  0.9392E-03
           DISP CONVERGENCE VALUE   =  0.2398E-05  CRITERION=  0.3297E-03 <<< CONVERGED
          EQUIL ITER   1 COMPLETED.  NEW TRIANG MATRIX.  MAX DOF INC= -0.2398E-05
           DISP CONVERGENCE VALUE   =  0.2398E-05  CRITERION=  0.3364E-03 <<< CONVERGED
           LINE SEARCH PARAMETER =   1.000     SCALED MAX DOF INC = -0.2398E-05
           FORCE CONVERGENCE VALUE  =  0.2064E-04  CRITERION=  0.9583E-03 <<< CONVERGED
          >>> SOLUTION CONVERGED AFTER EQUILIBRIUM ITERATION   1
       *** LOAD STEP    18   SUBSTEP     4  COMPLETED.    CUM ITER =   2161
       *** TIME =  0.427500         TIME INC =  0.625000E-03

           FORCE CONVERGENCE VALUE  =  0.1153E-02  CRITERION=  0.9393E-03
           DISP CONVERGENCE VALUE   =  0.2506E-05  CRITERION=  0.3297E-03 <<< CONVERGED
          EQUIL ITER   1 COMPLETED.  NEW TRIANG MATRIX.  MAX DOF INC= -0.2506E-05
           DISP CONVERGENCE VALUE   =  0.2506E-05  CRITERION=  0.3364E-03 <<< CONVERGED
           LINE SEARCH PARAMETER =   1.000     SCALED MAX DOF INC = -0.2506E-05
           FORCE CONVERGENCE VALUE  =  0.2185E-04  CRITERION=  0.9585E-03 <<< CONVERGED
          >>> SOLUTION CONVERGED AFTER EQUILIBRIUM ITERATION   1
       *** LOAD STEP    18   SUBSTEP     5  COMPLETED.    CUM ITER =   2162
       *** TIME =  0.428125         TIME INC =  0.625000E-03


      See how the TIME is updating from 0.45 to 0.425625 and so on? Why is it doing that?  This is what makes it so much slower to use sub steps instead of time steps when coupled.  But I am still at a loss as to why the one method converges when coupled and the other doesn't.  I would like to use the faster method, obviously, because it is several times faster to use time steps when coupled to Fluent. 


      Again, there is no difference between these two approaches when not coupled, either in computational speed or solution result.  The only difference shows up when coupled with Fluent.  Why is there such a difference and what is the ANSYS recommended approach here?  Do I just have to live with a lower tolerance for force convergence to use the time stepping approach?

Viewing 2 reply threads
  • The topic ‘Difference between “Define By” Substeps vs. Time in FSI’ is closed to new replies.