OrcaFlex 9.5

The latest release of OrcaFlex 9.5 is OrcaFlex 9.5d.

The new features introduced in OrcaFlex 9.5 are described below. For full details please see the OrcaFlex help file: OrcaFlex.chm (3.2 MB).

To upgrade to OrcaFlex 9.5d from 9.5a, 9.5b or 9.5c, download the following ZIP file: OrcaFlex-Patch-9.5a-or-9.5b-or-9.5c-to-9.5d.zip (10.9 MB) and execute the .msp patch file that it contains.

New in version 9.5d

Environment

A new spectrum discretisation method was introduced, named 9.5d. This only affects double peaked spectra, i.e. Ochi-Hubble and Torsethaugen. The older discretisation methods were sometimes inaccurate, especially for wind-dominated Torsethaugen spectra. All new models should use the new 9.5d spectrum discretisation method.

Bug fixes

  • Python external functions could, for a variety of reasons, fail to run under Distributed OrcaFlex. These issues have all been resolved in OrcaFlex 9.5d and Distributed OrcaFlex 3.2d.
  • Data files containing an object named Curve1, which were originally saved with 9.4 or older, could produce error messages when loaded in versions 9.5a-c. The error message read Cannot find Shear7 SN-Curve 'Curve2' – using first Shear7 SN-Curve. In addition to the error message, the object named Curve1 would be renamed Curve2, an object named Curve2 would be renamed Curve3 and so on. Despite all that the bug was relatively benign because the meaning of the model would not be changed, just the names of some of the objects.
  • Fatigue analysis sometimes produced incorrect results if the arclength interval data were not specified in order of increasing arclength.

These bugs are fixed in version 9.5d.

New in version 9.5c

Bug fixes

  • Batch jobs could sometimes fail with the application entering a hung state. This would happen typically when the connection to a networked dongle was lost.
  • Graphs containing very large values (most commonly bend radius graphs) could result in floating point errors being reported.
  • Clumps and drag chains were being connected offset from the centreline in certain situations. This would happen if the attachment had previously been a 6D Buoy attachment, contained non-zero x and y attachment position data, and was subsequently converted to a different attachment type.
  • The compass was drawn underneath other objects in shaded graphics.
  • The move objects facility was reporting errors when attempting to move plane shapes.
  • Floating point errors were sometimes being reported for files using Python external functions.
  • Fatigue analysis was failing for certain files using Python external functions.

These bugs are fixed in version 9.5c.

New in version 9.5b

Bug fixes

  • Vessel loads and motion were miscalulated if the vessel used calculated primary motion (3DOF, 6DOF or externally calculated) and treated primary motion as both low and wave frequency and the vessel heading passed through 180 degrees during the simulation. Other cases were not affected.
  • Range graphs for specified arc length ranges, were, in some cases, reporting incorrect values for the final reported arc length. The bug only affected certain mid-segment results like curvature, bend moment, stress results etc. and only occurred when the arc length range ended in the second half of a segment.
  • The line detailed properties report was incorrectly reporting the y drag coefficient for line types with non-isotropic drag.

These bugs are fixed in version 9.5b.

New in version 9.5a

Lines

  • Lines may now interact with the seabed through P-y models. This feature is intended for vertical lines that extend beneath the seabed.
  • A new Equivalent Line category has been added for line types. This is intended for simple modelling of pipe-in-pipe and pipe-on-pipe lines. The program calculates combined line type properties (geometry, mass, stiffness etc.) of a number of different line types.
  • The Line Setup Wizard can now be automated either through the InvokeLineSetupWizard batch script command or from the OrcaFlex programming interface.
  • The inertia coefficients, Cm, for line types can now be specified independently from the added mass coefficients, Ca. This is not available for the homogeneous pipe line type category.
  • The line properties report now includes an extra page titled Details. This contains details of each line type used by the line, together with a table, listing for each section, the segmentation, structure, hydrodynamics, contact and friction properties. When a section's line type uses a profiled diameter properties are reported for each segment in that section.
  • The line type properties report now includes an extra page titled All containing tabular information for all line types, laid out with one row per line type. The first sheet of information echoes the input data for each line type in the model. The second sheet presents derived values (e.g. weight in air, displacement etc.) for each line type. These derived values are not available for line types using a profiled diameter.
  • The handling of contact diameter for nodes at section boundaries has been changed. The change is only relevant when the line type contact diameter is different on either side of the node. Previous versions of the program used a node contact diameter calculated as the contact area for the node divided by the node length. This version of the program no longer attempts to satisfy that equality and sets the contact diameter to be equal to the larger of the contact diameters from the line types either side of the node.
  • Stress joint and bend stiffener profiles are now drawn in the 3D View when the model is in reset state.
  • Curvature and stress results at the end of profiled sections are now reported more accurately. Previously these results were calculated using the diameter of the segment at the end of the line. For profiled sections the segment diameter is determined by the value of the diameter profile at the mid-segment point. Using this mid-segment diameter for results reported at line ends is inaccurate. This version of the program calculates curvature and stress results using the value of the profile diameter at the end.
  • A Worst ZZ Stress results variable has been added.
  • The minimum wall thickness data item for the API RP 2RD code check has been replaced by a corrosion thickness data item. This allows the code check to be used with profiled line types, for example stress joints, that have a non-zero corrosion thickness.
  • The user now has control over how the end nodes are drawn in the shaded graphics mode. End nodes can be drawn as hemispheres as in previous versions of the program, or not at all.
  • The SHEAR7 interface now supports SHEAR7 version 4.6.
  • The SHEAR7 mode behaviour cutoff data item has been renamed power ratio cutoff level to match the terminology used in SHEAR7. The default value has been changed to that recommended in the SHEAR7 4.5 manual.

Vessels

  • When primary motion is being used, you now need to tell OrcaFlex whether to treat primary motion as being entirely low frequency, entirely wave frequency, or a mixture of both (in which case you must specify a dividing period). This enables the program to split the primary motion into its low frequency and wave frequency parts, which is needed because some aspects of vessel modelling should only use the low frequency motion, and some only the wave frequency motion. For further information see the warning and note below.
  • Low-speed manoeuvring loads due to low-frequency vessel motion can now be included.
  • Wave drift damping, in the surge and sway directions, can now be included. This is also known as the current effect on wave drift.
  • The roll damping in previous versions has been removed, and instead there is now a new Other Damping page on the vessel type data form. This new damping effectively replaces the previous roll damping, but also extends it to cover all 6 degrees of freedom. You can choose whether Other Damping is included. If you open old data files that included non-zero roll damping, then the roll damping will no longer be active without some changes to the data – see the warning below.
  • You may now choose whether to include the added mass and damping load, in the same manner as other vessel loads. Previously it was always included.
  • To improve clarity, the previous Hydrodynamic Damping and Wind Damping pages (on the vessel types data form) have been re-titled Current Load and Wind Load. And the previous Prescribed Motion and Primary Time History pages (on the vessel data form when using those primary motion settings) now appear as a page simply titled Primary Motion, which contains the data (if any) for the currently-selected primary motion.
  • The QTF input origin z-coordinate is now editable. Previously it was assumed to always be zero.
  • The z-coordinate of RAO phase origin is now editable, for both displacement RAOs and 1st order wave load RAOs. Previously it was assumed to always be zero.
  • Primary X, Primary Y, Primary Z, Surge, Sway, Yaw results can all now be reported at a specified position on the vessel. Previously these results were always reported at the vessel origin.
  • Vessel Type length can no longer be left undefined ('~'). Although old simulation files with undefined Vessel Type length can be loaded, they cannot be re-run without specifying a length.
  • Vessel primary motion can now be specified by external function. This feature was added to enable coupling of OrcaFlex and FAST, the NREL aeroelastic code for horizontal axis wind turbines. This coupling is experimental at present – please contact Orcina for more details. Although externally calculated primary motion was implemented to enable this coupling, we envisage that the feature could be used for other purposes.
  • Some vessel force and moment results have been reordered and renamed, for consistency across the program.

6D Buoys

  • You can now model slam loads on 6D Buoys. For details see Slam Force Theory.
  • You can now choose whether the buoy velocity used with the damping data that you specify should be the buoy velocity relative to earth, or the buoy velocity relative to the fluid. Normally, to model wave radiation damping the velocity relative to earth should be used, whereas to model skin friction damping the velocity relative to the fluid should be used. This option is relative to earth by default but note that previous versions of the program, which did not have this options, effectively used damping relative to fluid.
  • For Spar Buoys and Towed Fish, Cm can now be specified independently from Ca. In previous versions Cm was always equal to 1+Ca. Setting Cm to "~" is equivalent to setting the coefficient to 1+Ca.
  • Normal drag area for Spar Buoys and Towed Fish can now be calculated directly from the cylinder geometry. This data is almost always set equal to cylinder OD times length, and this new option allows this calculation to be performed automatically by the program.
  • Applied load results are now available.

Winches

Two new stage control modes have been added: Specified Payout Rate Change and Length at Stage End. These control modes typically result in smoother responses than the other length control modes.

Environment

The Stokes' 5th (SH) wave theory has been removed. This wave theory, due to Skjelbreia and Hendrickson, is well-known to be less accurate than the Stokes' 5th wave theory due to Fenton that is named Stokes' 5th in OrcaFlex. Note, however, that the Dean Stream wave theory is still recommended as the most accurate and reliable regular wave theory in the program.

Fatigue Analysis

The fatigue analysis capabilities can now be automated through batch script and the OrcaFlex Programming Interface.

Extreme Value Statistics

Extreme value statistics can now be automated through the OrcaFlex post-processing spreadsheet and the OrcaFlex Programming Interface.

Automation through the spreadsheet supports analysis using the Rayleigh distribution via the Rayleigh Extremes command. The Weibull and GPD distributions are not available in the current version due to the complexity of threshold selection.

The full analysis capability is available via the programming interface. That is, in contrast to the OrcaFlex spreadsheet, analysis using the Weibull and GPD distributions is available.

Unicode

OrcaFlex now has full support for Unicode text. All previous versions used the 8 bit ANSI character set appropriate for the machine's locale. The use of ANSI characters meant that data files would be interpreted incorrectly when opened on a machine that used a different locale from the machine that created the data file.

Using the Unicode character set means that characters from all languages can be used without any risk of mis-interpretation when files are opened on different machines.

User Interface

  • You can now attach a 3D view to any Vessel, 6D Buoy or Shape object in the model, by specifying that the view parameters are relative to that object, instead of being relative to global axes. When a 3D view is relative to an object, it shows the view from a camera that moves with that object, so this is useful for towed cases where the system being modelled moves a large distance during the simulation.
  • You can now rotate a 3D view about the view direction, by specifying a new view angle called Gamma.
  • The compare data facility has been extended to allow comparison of two objects within the same model. This is achieved using the Compare action in the Model Browser. Exactly two objects must be selected. The objects can be simple OrcaFlex objects (e.g. Vessels, Lines etc.) or browser groups.
  • OrcaFlex now has a built-in compare program which is used if you do not specify an external compare program. The built-in compare program is quite limited and for the best experience we still recommend using an external program. We currently recommend WinMerge.
  • Files can be added to the batch form whilst a batch is running. Note that this feature has the limitation that all pre-existing jobs must be run to completion before the program starts processing the new files added whilst the batch was active.
  • The model browser can now be docked inside the main OrcaFlex window. The traditional floating Model Browser window is still available as an option. You can choose between the various options by right clicking on the Model Browser and selecting Floating, Dock Left or Dock Right.
  • Object properties forms can now be opened directly from the model browser.
  • Workspace axes ranges can now be preserved when saving workspace files – those axes ranges will be restored when the workspace is subsequently opened.
  • Copying, exporting and printing of data from the Model Browser and from data forms now uses the YAML text data format. This results in a much better presentation of the data than in previous versions.
  • The fundamental frequency for spectral density graphs can now be specified. This is done through a data item on the General data form.
  • The Superimpose Times feature has been removed. Equivalent functionality is available using Custom Replays.
  • A new Delete directive is available for text data files which deletes a named object from the model. This is useful when used in combination with the BaseFile directive.

External Functions

  • External functions can now be used with the implicit solver, removing a limitation of previous versions. Note that there is no mechanism for including Jacobian contributions which can result in poor convergence of implicit simulations for certain types of external function. Having said that, our experience so far is that this issue is seldom a significant problem. Existing external function code may need to be modified to work with the implicit solver – see the OrcFxAPI help file for details.
  • External functions can now be implemented in Python. It is much simpler to implement an external function in Python than in C++. Full documentation can be found in the OrcaFlex programming interface documentation. The External Function Examples contain a number of illustrative examples of Python external functions.
  • External functions can call C_ExternalFunctionPrint (or simply print for Python external functions) to output diagnostics text. This text is displayed in a text window in OrcaFlex which can be opened from the Window menu.

OrcaFlex Programming Interface (OrcFxAPI)

  • OrcFxAPI now offers automation of Fatigue Analysis and Extreme Value Statistics, for all supported interfaces: C/C++, Delphi, Python and MATLAB.
  • OrcFxAPI has full support for Unicode text. This is supported in all interfaces except MATLAB because MATLAB does not support Unicode strings.
  • The full list of new API functions is: C_CreateFatigue, C_LoadFatigue, C_CalculateFatigue, C_SaveFatigue, C_DestroyFatigue, C_OpenExtremeStatistics, C_CalculateExtremeStatisticsExcessesOverThreshold, C_FitExtremeStatistics, C_QueryExtremeStatistics, C_SimulateToleranceIntervals, C_CloseExtremeStatistics, C_InvokeLineSetupWizard, C_CreateModel2 and C_ExternalFunctionPrint.
  • The C/C++ header file, OrcFxAPI.h, has been modified in the following way. Most declarations which were previously of type LONG have been changed to int. The main exception to this are handles which now use a new type, TOrcFxAPIHandle. Other exceptions include APIs like C_GetNamedValue and C_SetNamedValue which now operate on values typed as INT_PTR. The motivation for these changes is a planned future release of a 64 bit version of OrcaFlex, for which these changes are essential. Compiling existing code with the new header file will result in compilation errors. These are straightforward to fix using the replacement scheme described above. Note that you can safely use newer versions of OrcFxAPI.dll with code compiled and linked with older .h and .lib files should you wish to postpone implementing these changes.
  • The Delphi interface unit, OrcFxAPI.pas, has been modified in a similar fashion to the C/C++ header file.