Displacement and load tolerances were not reached


This error message can occur during a time simulation. The following error message is displayed.



This message means that for the current time step, the non-linear algorithm used by Ashes to solve the equation of motion of the system did not converge towards a solution, i.e. no solution to the equation of motion was found that satisfies the requested accuracy within a given number of iterations. The accuracy is determined by the Energy tolerance parameters (see Analysis), which definition is given in the theory manual under the section Time domain simulation

The number of iterations performed in each time step can be found in the Solver sensor. The picture below shows a case where the algorithm converged at the beginning of the simulation (with under 20 iteration for each time step) but experienced a sudden increase in the number of iterations until the maximum allowed number was reached, therefore producing the Non-convergence error message.

 


When this error occurs, it is a good idea to check the output of the Solver sensor as it contains relevant information about how to debug the error.

If you get the non-convergence issue, you can try the following options:

1 Adjust your model parameters

This error often comes when the solver encounters unphysical conditions, such as nodes moving at very high speeds or loads from environmental conditions unphysically large. Under these circumstances, the energy within the system changes very rapidly from one time step to the next and the non-linear solver does not converge. It is often possible to solve this error by visualizing the simulation and checking what causes the unphysical conditions. In the example below, too large soil damping creates very large displacements, velocities and accelerations which lead to the non-convergence error.




A good thing to check when encountering this error is whether there is some diverging output in the simulation. The image below shows a simulation where the blade tip deflections were diverging. In this case, adding stiffness proportional damping solved the issue (see How to use Rayleigh damping).



2 Use stiff blades

For some simulations, the nonconvergence issue can be solved by using stiff instead of flexible blades. This can be changed with the Rotor model parameter of the Analysis tab in the Analysis parameters window. If you are not studying the dynamics of the blades themselves, it is generally a good approximation to use stiff blades.

Using stiff blades instead of flexible baldes does affect your results to a certain degree (for example by removing the response at the blade frequencies). Use with cautiion!

3 Select linear analysis

For models that do not exhibit large deformations, such as wind turbines with a locked main shaft or stiff structures without moving parts, a linear analysis will give results very close to the non-linear one. By definition, the linear model does not require iterations and therefore will not have the non-convergence issue. The analysis mode can be changed from non-linear to linear in the Advanced section of the Analysis tab. More information can be found in the theory manual under the section Linear analysis

Linear analysis is not recommended for models with rotating blades or floating wind turbines, as these models exhibit large deformations

4 Decrease the time step

The default time step in Ashes is calculated based on the size of the blades. As explained in section 1, if the state of the model changes too fast from one time step to the next, the algorithm might not converge. Decreasing the time step can enable a smoother variation in the energy of the system and therefore solve the non-convergence issue. The time step can be changed in the General section of the Analysis tab.

5 Increase the ramp-up period

In Ashes, it is possible to include a ramp-up period at the beginning of the simulation during which the loads are progressively increased from 0 to their actual value. This is done to avoid the unphysical situation where a model experiences a sudden load, which can lead to very large motion of certain nodes of the model and therefore to the non-convergence issue. By default, the ramp-up period is set to 100 time steps, but this value can be adjusted in the Ramp-up section of the Analysis tab.

6 Adjust the initial conditions

If the initial conditions do not adjust to the physical reality (for example if the initial rotational speed of the turbine is too high), you might get the non-convergence error. It is always recommended to set the initial conditions to a realistic situation to avoid numerical issues. The initial conditions can be adjusted in the Initial conditions tab.

7 Adjust the convergence criteria

The convergence criteria is defined in the Time domain simulation section of the theory manual and defines the accuracy with which the equation of motion is solved at each time step. This parameter can be modified in the Convergence section of the Analysis tab in the Analysis parameters dialog. If a too high accuracy is required, the alorithm might not converge, but if the accuracy is too low, the results might not be trustworthy.

The figure below shows the bending moment at the lowest element of the tubular tower for the default onshore template in Ashes for a simulation with a uniform wind at 10 m.s-1. The legend shows the value of the Energy tolerance (absolute) parameter, and the plot to the right is a zoom of the plot to the left. The two cases with the strictest convergence (-6 and -2) exhibit so similar results that they cannot be distinguished in the picture, while the cases with milder convergence criteria produce results that deviate from the strictest cases. The case with a tolerance of 10 produces divergent results.



This figure illustrates the importance of not setting a too mild convergence criteria. If you run into the non-convergence issue and need to reduce the convergence criteria, the following process is recommended:
  1. Find a situation where the model does converge (for example with lower uniform wind, milder sea state, increased damping, etc)
  2. With these environmental conditions, run a parametric study on the convergence criteria, so as to obtain a figure similar to the one above
  3. Select a convergence criteria that produces similar results as the strictest case. In the example above, setting the Energy tolerance (absolute) parameter to -2 produces satisfactory results.
Even if the selected convergence criteria provides accurate results for a given model and environmental conditions, there is no guarantee that this will be the case for other situations. This means that the obtained results should be carefully checked to ensure that they are correct.

8 Allow to continue simulation on non-convergence

It is possible to force the simulation to proceed to the next time step when the current time step has not converged, by modifying the On non convergence parameter in the Convergence section of the Analysis tab in the Analysis parameters dialog. This option can be useful for simulations that have been running for a large duration but produce the non-convergence issue for a few time steps. When applyng this solution, it is recommended to plot the Iteration count in the Solver sensor to ensure that not too many time steps encounter the non-convergence issue.

This solution is generally not recommended, as proceeding with the simulation when the equation of motion is not in equilibrium could yield inaccurate results. If this option is used, the obtained results should be checked to ensure that they are correct.