Whole System Statics

Friday, October 12th, 2007 by David Heffernan

Many of the software support questions we receive concern statics convergence. Before the release of OrcaFlex 9.0 we would regularly employ a host of methods to deal with stubborn cases. The problem cases would usually involve 6D Buoys.

OrcaFlex 9.0 introduced a new statics method called Whole System Statics (WSS) which provides a great leap forward in terms of robustness and speed of convergence. Practically all support queries relating to statics convergence are now solved by switching to use WSS. So what makes WSS so much better than the old method?

The Statics Problem

It’s worth a brief recap of the problem at hand which essentially boils down to solving the vector equation below:

Y(X) = 0

where X is the position vector for the system and Y is the vector of out of balance loads. Note that the vector dimensions are equal to the number of degrees of freedom (DOFs) in the whole model, which is typically thousands.

If we always dealt with linear systems then the problem would be simple. However, we always have non-linearities and the standard approach is to use a multi-dimensional variant of Newton’s method. This is an iterative method which requires the stiffness matrix of the system, ∂Y/∂X.

Separate Buoy and Line statics

This is the statics method which OrcaFlex used before we implemented WSS. It is a hybrid method comprising an outer and an inner loop. The inner statics loop solves statics for all Lines in the model, and the outer statics loop solves statics for Buoys and Vessels.

This hybrid method uses a perturbation technique to calculate the system stiffness matrix which is both slower and less accurate than calculating it analytically.

Whole System Statics

The new Whole System Statics method solves the statics problem directly with a single iterative loop. The stiffness matrix is calculated analytically, which is much faster and more accurate than the hybrid perturbation method.

The reason we did not implement this approach sooner is that earlier versions of OrcaFlex did not need to form a full system stiffness matrix. OrcaFlex’s explicit time domain solver does not require a system stiffness matrix and so we simply did not have the full system stiffness matrix readily available.

In order to implement the implicit solver which we introduced in version 9.0 we had to form the full system stiffness matrix – this is what enabled the implementation of WSS. Indeed we actually implemented WSS before implicit integration because WSS was a simpler test bed for the whole system stiffness matrix code.

Although the initial version of WSS, released in 9.0, was a big improvement it still had some weaknesses. Most significant was that WSS could not be used if your model included torsion or drag chains. These limitations were removed in version 9.1. We have also improved the statics convergence performance in 9.1 for many systems.

With these improvements we felt confident enough in the benefits offered by WSS to make it the default option in version 9.1. So any new models created in 9.1 will automatically use WSS unless you specify otherwise. If you are working with older models we strongly recommend that you switch statics method to WSS.

What to do when WSS doesn’t work

Even with all the benefits offered by WSS there are still some systems that prove reluctant to solve for static equilibrium. There are a number of techniques you can try in order to deal with such problem cases:

  1. Check that statics for each of your Lines is working well. OrcaFlex tries to put all the Lines into individual static equilibrium before starting the WSS iteration, and if this doesn’t succeed then WSS usually struggles. So try a static analysis with all the Buoys and Vessels fixed, and if any lines are failing to converge then try to sort those out first.
  2. Increase the damping parameters for the WSS data on the General data form. I usually try increasing Min Damping to 1.5, then 2, then 4 and then 10. Sometimes it can help to increase the Max Damping value also. Note that these techniques also apply for the Full Statics convergence parameters for Line statics.
  3. As a last resort it can be useful to exclude 6D Buoy DOFs from statics. This is most easily done on the General data form by setting Buoy degrees of freedom included in Static Analysis to “X,Y,Z”. If that solves you can ask OrcaFlex to remember that configuration (click Use Calculated Positions on the Model menu) and then try again with rotational DOFs included again.

Remember that obtaining a good statics equilibrium configuration is very important for dynamics. If dynamics starts out of equilibrium (especially if you are using the implicit solver) then the resulting transient loads can cause noise in your results and poor convergence.

I hope that this post gives some useful tips on getting the best out of OrcaFlex’s statics calculations. If the techniques suggested here still don’t solve your problems then please do e-mail us your data file and we’ll try to find a solution!

4 Responses to “Whole System Statics”

  1. Caspar Heyl Says:

    I noticed recently that Whole System Statics will report “Statics Complete” even though some of the tolerances are not met. As a result of this, my simulation was becoming unstable at the first time step. It turned out that one of the lines was not converging. Since I was running in batch it took me quite a while to figure out what was going on. If I had used Separate Buoy and Line statics, I would have been able to see that the static analysis failed.

    Caspar Heyl

  2. David Heffernan Says:

    Caspar,

    WSS has a single tolerance value that applies to all DOFs (nodes, buoys etc.) So if it reports “statics complete”, then as I understand it all DOFs will have met the tolerance. Is it possible that the problem was caused by not all buoy DOFs being included in statics? Anyway, if you can still find the problem file then I’d appreciate it if you could e-mail it to us so that we can investigate.

    Cheers, David.

  3. dskumar Says:

    Dear David

    I’m encountering a new problem with one of the input files. It’s something like this, I ran an input file > saved its simulation (and also it’s input) > closed Orcaflex > then opened the input file later to show it to my colleague > but this time, though it says “statics complete”, it shows a different profile. The file is typically a catenary check with an umbilical passing over a chute. What I try to say by different profile is that, this time, it slides out of the chute (which is not a proper modeling) whereas initially it showed a smooth profile passing along the radius of the chute (which I had saved).

    Then I got a new thought. I opened the simulation file (that had the smooth profile), pressed “F12″ so that now the simulation file is a “data” file. I ran it in the same window, but it again showed the umbilical with the improper profile.

    Can you please get back to me on this and advise as to what could be the reason for this?

    Cheers
    Senthil

  4. David Heffernan Says:

    Senthil,

    It’s hard to say what’s going on here without seeing your input file.

    If you e-mail it to us then we’ll take a look.

    Cheers, David.

Leave a Reply

You must be logged in to post a comment.