Sudden divergence using IQN-ILS

Dear all

I am doing an FSI simulation with a cylinder that has a section that is flexible (yellow part). At the inlet of the cylinder a pressure is imposed. The fluid is incompressible and is solved using our own cfd code ReFRESCO, The structure is solved using code_aster. Using aitken relaxation the case runs well giving a displacement of the tube centre that is oscilating in time, due to the instantaneous pressure increase at the inlet of 0 Pa to 5000 Pa at the first time-step. I tried to use IQN-ILS but cannot find a setting that completes the calculation. At a sudden moment (in this case time-step 29) the coupling fails to converge, leading to too large displacements and finally divergence of the flow solver due to a highly distorted grid. Does anyone has experience with this?

Best regards


precice-config.xml (3.1 KB)
precice-Solid-convergence.log (12.2 KB)
precice-Solid-iterations.log (1.7 KB)

Hi Jaap, thank you for your information and question.

From current description and the attached file, I would primarily suggest you to try with less time-window-reused for ILS method. Since in your case the result oscillates with a period about 20 time windows, there is no need to reuse much old information which doesn’t actually align to our prediction direction. Also in principle, the efficiency of ILS doesn’t increase monotonically with the reused time window number. And the convergence of ILS method relies a lot on this parameter.
And to improve the efficiency, you might not really need to have the pre-conditioner when there is only one variable in the acceleration scheme, since this is used to scale data sets in different orders.

It would benefit our communication if you could provide more information about:

  • which parameter combinations you have tried for IQN-ILS method;
  • the range of the time step, where it broke down; (i.e. it was alway 29, or varied from 28-30 or a larger range);
  • how the above two factors are related to each other;

Thank you for trying again :slight_smile:

Best Regards

1 Like

Hi Jun

Thanks for the advice. I deleted the pre-conditioner tag, indeed not useful, and changed the max-windows-reused to 20. I also did some other runs:

max-windows-reused=30, with pre-conditioner: divergence at time-step 29 (i.e. the old calculation)
max-windows-reused=20: divergence at time-step 26
max-windows-reused=20, initial relaxation 0.1: divergence at time-step 29
max-windows-reused=20, convergence tol for fluid solver 2 orders lower: divergence at time-step 31
max-windows-reused=20, coupling convergence measure 1e-4: divergence at time-step 14
max-windows-reused=10: divergence at time-step 30

So not very successful yet. Is this what can be expected from such a strong coupled problem? Or is this in fact strange behavior that might be caused by possible adapter errors (code_aster and ReFRESCO) (Not expected however since I did test everything for the perpendicular flap and the Turek FSI3 case, which work well)

best regards


@JaapWindt did you try using the same precice-config.xml as with our elastic-tube-3d tutorial?

        <data name="DisplacementDelta" mesh="Solid-Mesh" />
        <preconditioner type="residual-sum" />
        <initial-relaxation value="0.1" />
        <max-used-iterations value="10" />
        <time-windows-reused value="1" />

Yes, it fails at time-step 14. At the end of time-step 13 the displacement is approximately 2 mm. The first displacement at time-step 14 is 0.9 m which is too large. This is what I always see, just at once the displacement is very high.
precice-Solid-convergence_iqnimvj.log (9.6 KB)
precice-Solid-iterations_iqnimvj.log (842 Bytes)