OrcaFlex 9.4

Monday, August 2nd, 2010 by David Heffernan

A whole year has now passed since we released OrcaFlex 9.3 which means that it is time for the release of OrcaFlex 9.4! As always it takes time to produce and despatch installation CDs but clients with up-to-date MUS contracts can expect to receive the software some time around the end of August.

The major enhancements in version 9.4 fall into the following categories:

  • Improved performance of the OrcaFlex post-processing spreadsheet.
  • Enhancements to modal analysis: whole system analysis, better performance.
  • Enhancements to fatigue analysis: mean stress, mooring fatigue using T-N curves, SHEAR7 fatigue.
  • Line contents modelling: free-flooding, slug flow, spatial and temporal variation of contents.
  • Vessel data import enhancements for generic text files.
  • Better handling of vessel RAO data which omits zero period response.
  • Improved modelling of solid contact at edges and corners.
  • Line floats wizard now supports Reynolds number dependent drag.

As usual there are a large number of improvements to the program, far too many to discuss here. Full details can be found in the OrcaFlex help file.

What follows are brief introductions to the new features that we consider to be most significant.

OrcaFlex spreadsheet

The Excel spreadsheet, supplied with OrcaFlex, that is used for pre-processing and post-processing has been completely re-written for version 9.4.

Previous versions used Excel VBA code to interface with OrcaFlex. Excel VBA has the significant limitation that it cannot be used to create multi-threaded code and so cannot take advantage of modern multi-core and multi-processor hardware. The version of the spreadsheet supplied with version 9.4 has been re-implemented as a COM add-in.

From a user’s perspective this change is largely immaterial – the operation of the spreadsheet remains essentially unchanged. The principal benefit is that the code is now multi-threaded and can process multiple load cases in parallel. Naturally, this can result in significant performance gains.

There are a number of other more minor enhancements to the spreadsheet, the most notable being:

  • The spreadsheet can now take advantage of Excel 2007 and later supporting very large worksheets. Older versions of Excel were limited to 65536 rows and 256 columns, but the more recent versions of Excel have effectively removed these limits.
  • A new facility has been added to automate generation of text data files. This is very similar to the existing facility for generating batch script files.

Modal analysis

The modal analysis facility has also received significant attention, although the basic operation is largely the same as in previous versions.

Possibly the most important development is the implementation of a new eigen-solver, using an iterative Lanczos algorithm, which has significant performance benefits. This new solver is limited in that it cannot extract all modes of the system. However, provided that you require no more than a few hundred modes, the new solver will be used and will solve very quickly. The benefit is felt for large systems and the new solver will typically solve in a matter of seconds large systems that require minutes or even hours for the old solver.

The other major enhancement is the implementation of modal analysis for the whole system. Previous versions of the program could only perform modal analysis for a single line within the model. The new capability fits naturally into the existing modal analysis user interface. We have no doubt that a great many users of the program will benefit from this development. Indeed, we have made extensive use of it to help deal with client support queries.

Together with a number of other minor improvements, these changes to the modal analysis capability greatly improve its utility.

Fatigue analysis

OrcaFlex’s fatigue analysis feature has seen regular development over recent releases, and version 9.4 is no exception.

The S-N curve data specification now allows for mean stress effects. Three different models have been implemented to describe these effects, namely Goodman, Soderberg and Gerber. Mean stress effects can be included for all types of fatigue analysis that make use of S-N curves.

Two new damage calculation options have been added: Mooring and SHEAR7.

Mooring fatigue is based on T-N curves. These are similar to S-N curves, but instead relate number of cycles to failure (N) to tension range (T).

SHEAR7 fatigue is somewhat different from the other damage calculation options. The difference is that the damage is actually calculated by SHEAR7. The OrcaFlex code merely collates the output from a series of SHEAR7 analyses. OrcaFlex reads the SHEAR7 output files, sums the damage and presents the results in either graphical or tabular form. Combined with the direct SHEAR7 interface and the OrcaFlex batch form, this allows you to automate an entire SHEAR7 fatigue analysis.

Line contents modelling

All previous versions of OrcaFlex included a very basic and simple model for line contents. Contents density could be specified, but it was assumed to be constant for the entire length of the line. OrcaFlex 9.4 introduces a host of new features to make contents modelling much more flexible.

Line contents can now be specified to be free-flooding. This results in the line being filled with seawater up to the instantaneous water level. Another new option has been added which allows axial inertia due to contents to be omitted from the analysis.

The other new contents modelling option is named slug flow. Although intended primarily for modelling of slugs, this option allows for both spatial and temporal variation of contents. We envisage the feature also being used to model static density variation, flow-lay, etc.

The slug flow option takes as input a specification of the density variation along the line. In addition a velocity is defined which determines how the contents flow. This velocity can vary over the course of the simulation. We have taken care to ensure that contents progress smoothly between line elements to minimise noise due to transient loading. The code accounts for the resulting variations of mass, weight and centrifugal and Coriolis forces.

Whilst we have not attempted to model complex multi-phase flow conditions, we do feel that the new facilities are in keeping with the level of detail typically modelled using OrcaFlex.

Vessel data import

The process of importing hydrodynamic data has been improved in a number of ways.

Generic text data may now be combined in one file and imported in a single operation. Previously, displacement RAOs, load RAOs, QTFs, and added mass and damping all had to be in separate files.

Generic text files may now specify the conventions and units of their data. If the conventions or units of the data being imported differ from those in the OrcaFlex model, then the data will be converted to match them at the time of import.

Extrapolation of RAO data towards the zero period response

Extrapolation of RAO data towards zero period response is now handled differently. Previous versions did issue warnings if any extrapolation was required. However, the extrapolation typically resulted in a non-zero response at zero period which is clearly non-physical.

Although we would always encourage users to read and take notice of the warnings, it is possible to make the program handle such input data in a more useful way. So, from version 9.4, if extrapolation is required for short period waves, the program will now always extrapolate towards a zero response for zero period.

Modelling of solid contact at edges and corners

Elastic solid contact is now handled slightly differently for objects with non-zero contact diameter, e.g. line-solid contact. The algorithm used in previous versions had some weaknesses. The essential problem was that the reaction force always acted normal to the solid face closest to the node. When a node is near an edge or a corner then this results in a discontinuity which in turn can lead to poor convergence and noisy responses.

In addition, the previous algorithm had the unfortunate property that contact could, under some circumstances, occur for nodes outside the shape. This problem most commonly afflicted nodes just beyond the end of a curved plate, e.g. a bellmouth.

Version 9.4 solves these problems by adopting a minor change to the contact algorithm. The reaction force now acts in the direction of the vector po-ps where po is the position of the node and ps the position of the closest point on the surface of the solid to po. When ps is on one of the faces of the shape then the new and old algorithms are identical. However, when ps is on an edge or at a corner then the reaction force is no longer normal to one of the faces.

Line floats wizard

The line floats wizard is a widely used and very useful feature. However, it has not been updated for some time and consequently did not make full use of new features added in recent versions of OrcaFlex.

The most significant change is that Reynolds number dependent drag coefficients for the base line are now supported. The program still assumes that the drag acting on the floats is independent of Reynolds number.  However, this is a much more reasonable assumption given the typical size of the floats used for offshore buoyancy.

9 Responses to “OrcaFlex 9.4”

  1. kedwards@oceanpowertech.com Says:

    Subject: Good OrcaFlex practices

    Since an OrcaFlex model can be complex with many components and properties, it may contain hidden errors that can have big effects on the model’s behavior or loads. Plus the user can accidentally enter a wrong value. Can you please recommend:
    1) Some basic reality checks that should be performed on any completed model, such as turning off the environment and checking the model’s still water draft
    2) Some methods to extract and document all the user choices that went into the model, such as a routine to generate a report on the dimensions and properties of each model component

    Also is there a way to display or calculate the CG of a model made up of many components, rather than the CG of each component?

    Thanks!

  2. Peter Quiggin Says:

    Kate,

    Many thanks for your comment and questions.

    On your second question, consider inputting the data via the script facility (so linking directly to your spreadsheet calculations) or using text format data files (.yml). With text format data files you can use the IncludeFile facility so that your .yml file only has the changes you want to make, so it is easier to QA. Quite a few clients take advantage of the text file format to print off a file that they can read and annotate away from the computer in order to review the input data. This option would also satisfy those QA procedures that require a signed-off paper copy of a file. If you look into this kind of procedure, it would be worth obtaining a text editor that ‘understands’ the YAML format – we recommend the free Notepad++.

    On your first question, I imagine that you are modelling a complex structure using a 6d buoy with other objects (e.g. single-segment lines) attached to it to give the right distribution of mass, drag, added mass etc. A useful OrcaFlex technique for checking a compound object like this is to clamp it rigidly to a vessel, using a very stiff single-segment line, and clamp it so that the object origin is at the vessel origin. The connections loads on the vessel will then tell you various useful things about the properties of the compound object.

    The clamp line should be single-segment, include torsion, have all the connection stiffnesses set to Infinity, and have line type properties that give it very high stiffness (e.g. 1.0e10 for bending, axial and torsional stiffnesses) but otherwise zero properties (or 1e-10 for those that aren’t allowed to be zero). This gives you a clamp that holds the buoy to the vessel pretty rigidly, and so transmits all the buoy loads to the vessel, but doesn’t add any extra loads of its own. And with suitable connection angles you can clamp the buoy at any given orientation you want.

    Here are some examples of things you can check using this approach:-

    - If you place the vessel such that the object is in air, then the statics results vessel connection force will be in the global Z direction and will equal that total weight. And the X and Y components of connection moment, when divided by that weight, will tell you the horizontal offset of the CG from the vessel origin (and therefore also from the buoy origin). This gives you the x and y offset of the CG. To get the z offset, you can turn the object through 90 degrees (adjusting the clamp connection angles to match), so that the object is now clamped to the vessel with its z-axis horizontal, so that the X or Y connection moment (divided by weight) now tells you the CG z offset.

    - You now cancel out the weight force by applying to the buoy a global applied Z-force upwards equal to the weight and applied at that CG. If you then you place the vessel so that the object is fully submerged in the water, then the connection load will now tell you the buoyancy force, and again the X and Y components of connection moment, when divided by the buoyancy, will tell you the offsets of the centre of buoyancy from the origin.

    - You can do similar things with drag and added mass, by running a short simulation with the vessel given a suitable simple motion and then looking at the time histories of vessel connection loads. For example you can set the vessel to have Prescribed Motion and give it either a Constant Speed of 1m/s (for analysing drag) or a Speed Change that gives a constant acceleration of 1m/s^2 (for analysing added mass).

    - You can check moments of inertia in a similar way, by using vessel Harmonic Motion to give the vessel some angular acceleration about the vertical. This time the connection loads will vary harmonically, but you can take the results at a given time and divide by the vessel angular acceleration at that time. (You should use a short time step for this, but the simulation can be quite short and so very quick.)

    I hope these suggestions help. If you’d like clarification, then email orcina@orcina.com for support.

  3. n2212366 Says:

    Subject: Shallow water mooring.

    Hi,

    I have 2 problems:

    (1) I have a mooring model to analysis in shallow water of around 20m. As it appears that there is set-down phenomenon in the shallow water and that the drift effect is more prominent. How do we take this into account in Orcaflex?

    (2) How do we take into account the effect of slowly drift? In my understanding, I should obtain RAO with range of frequency covering natural frequency of the floater.

    Thanks in advance.

    -Ika-

  4. Sarah Ellwood Says:

    Hi Ika,

    Slow drift (and vessel calculations in general) can be a complex area, so I have simply given some broad outlines below. If you wish to discuss any of these in more detail then please feel free to contact our support email address (orcina@orcina.com).

    Slow drift is modelled in OrcaFlex through QTFs (Quadratic Transfer Functions) – these are specified on the vessel type data form. The QTF data (like vessel RAOs, added mass and damping etc) need to be calculated outside of OrcaFlex (usually they are output from a diffraction analysis or model test).

    You mention that your analysis concerns very shallow water. At the moment, OrcaFlex uses something called Newman’s approximation in the QTF calculation, however, this approximation is known to become significantly less accurate in shallow water. To get more accurate slow drift loads in shallow water you need to enter the full QTF matrix and we are currently developing OrcaFlex to allow this in the future.

    You also asked about set-down. OrcaFlex will automatically determine the set-down if you use a 6DOF Calculated vessel as then the vessel response will be calculated from the loads acting on the vessel (mooring lines, hydrostatic stiffness etc).

    It is also worth considering the effect of set-down on the vessel response. A large set-down could be sufficient to cause a significant change in the diffraction response of the vessel. This would mean that you actually need to use different vessel type data (RAOs, QTFs etc) for different degrees of set-down. However, OrcaFlex does not allow you to change vessel type part-way through a simulation; the vessel type data used must remain constant throughout the simulation.

    Having said all this, if the set-down motion is relatively slow in comparison to the other motions of interest then you could simply assume that the vessel mean position stays constant throughout your simulation. You can then analyse different degrees of set-down, each as a separate short simulation.

    I hope that these thoughts help but please do get back to us if you want to discuss anything in more detail.

  5. n2212366 Says:

    Thanks Sarah.

  6. albert_ilde Says:

    Hi all,

    I am new in using Orcaflex, I have been working with Flexcom since 2006, so I have enough experience with it. But due several reason the project that I am working now requiere to use Orcaflex. Comparing analisys time spent in running static or dynamic condition between Orcaflex and Flexcom, it has been been notice that Orcaflex is much , but much faster than Flexcom. I am really curious in search which are the reason behide it. Do you have any document where can I find any answers?

    Thanks on advance.

    Alberto

  7. David Heffernan Says:

    Alberto,

    First of all thank you for your kind comments. We are always looking for ways to make OrcaFlex faster and it’s nice to hear that our users are reaping the benefits.

    It’s a little hard to answer the question – for a start we are in no position to make any comment on Flexcom’s performance characteristics. I will try to answer as best I can, but I apologise if I cannot include as much detail as perhaps you would like.

    I believe OrcaFlex’s finite element formulation to be very efficient. We have also spent much effort optimising the convergence algorithms leading to few iterations per time step. Good convergence benefits statics too and OrcaFlex also provides a number of techniques to aid convergence in statics which is, in general, a harder problem than convergence for dynamics.

    Another area that we are have worked very hard on is multi-threading which has been particularly rewarding with the recent advent of many-core machines.

    I hope this offers some insight, but if you would like to learn more then I suggest you contact us by e-mail.

  8. albert_ilde Says:

    Dear,

    I would like to know if it is another way (faster) to extract results rather by the Orcaflex macro spreadsheet. For the model that I had run it is practically taken days to extract results (dynamic with 3 hours of simulation) which make unrealistic. I am still fine to move from Flexcom to Orcaflex, due in Flexcom should be impossible to run the irregular dynamic cases.

    Thanks for your attention.

    Alberto

  9. David Heffernan Says:

    Alberto,

    First of all, you mention macros. In 9.4 we got rid macros in the post-processing spreadsheet, primarily so that we could take advantage of multi-core machines.

    If you are post-processing extremely large simulation files then this change can be counter-productive because you may end up in a situation where you have multiple threads trying to read disk files simultaneously. This can in turn result in performance problems.

    There are usually ways to solve any such problems but it’s impossible for me to advise you without knowing more about your problem and the files you are working on.

    I suggest you e-mail us at orcina@orcina.com with more details and best of all a sample input data file. I’m sure we’ll be able to help you solve the problem.

Leave a Reply

You must be logged in to post a comment.