Вы находитесь на странице: 1из 421

w

1











OrcaFlex Manual

Version 9.3a






Orcina Ltd.
Daltongate
Ulverston
Cumbria
LA12 7AJ
UK
Telephone: +44 (0) 1229 584742
Fax: +44 (0) 1229 587191
E-mail: orcina@orcina.com
Web Site: www.orcina.com
w
Contents
3
CONTENTS
1 INTRODUCTION 11
1.1 Installing OrcaFlex 11
1.2 Running OrcaFlex 13
1.3 Parallel Processing 14
1.4 Distributed OrcaFlex 15
1.5 Orcina Licence Monitor 15
1.6 Demonstration Version 15
1.7 Validation and QA 15
1.8 Orcina 16
1.9 References and Links 16
2 TUTORIAL 21
2.1 Getting Started 21
2.2 Building a Simple System 21
2.3 Adding a Line 21
2.4 Adjusting the View 22
2.5 Static Analysis 22
2.6 Dynamic Analysis 23
2.7 Multiple Views 24
2.8 Looking at Results 24
2.9 Getting Output 24
2.10 Input Data 24
3 EXAMPLES 27
3.1 Introduction 27
4 USER INTERFACE 29
4.1 Introduction 29
4.1.1 Program Windows 29
4.1.2 The Model 29
4.1.3 Model States 30
4.1.4 Toolbar 31
4.1.5 Status Bar 32
4.1.6 Mouse and Keyboard Actions 32
4.2 OrcaFlex Model Files 36
4.2.1 Data Files 36
4.2.2 Text Data Files 36
4.2.3 Simulation Files 41
4.3 Model Browser 41
Contents
w

4
4.3.1 Model Browser Views 43
4.3.2 Move Selected Objects Wizard 44
4.4 Libraries 45
4.4.1 Using Libraries 45
4.4.2 Building a Library 48
4.5 Menus 48
4.5.1 File Menu 49
4.5.2 Edit Menu 50
4.5.3 Model Menu 51
4.5.4 Calculation Menu 52
4.5.5 View Menu 53
4.5.6 Replay Menu 54
4.5.7 Graph Menu 54
4.5.8 Results Menu 55
4.5.9 Tools Menu 55
4.5.10 Workspace Menu 55
4.5.11 Window Menu 56
4.5.12 Help Menu 56
4.6 3D Views 56
4.6.1 View Parameters 58
4.6.2 View Control 58
4.6.3 Navigating in 3D Views 59
4.6.4 Shaded Graphics 60
4.6.5 How Objects are Drawn 61
4.6.6 Selecting Objects 63
4.6.7 Creating and Destroying Objects 63
4.6.8 Dragging Objects 63
4.6.9 Connecting Objects 63
4.6.10 Printing, Copying and Exporting Views 64
4.7 Replays 64
4.7.1 Replay Parameters 64
4.7.2 Replay Control 65
4.7.3 Custom Replays 66
4.7.4 Custom Replay Wizard 66
4.7.5 Superimpose Times 68
4.8 Data Forms 68
4.8.1 Data Fields 69
4.8.2 Data Form Editing 69
4.9 Results 70
4.9.1 Producing Results 70
4.9.2 Selecting Variables 72
4.9.3 Summary and Full Results 72
4.9.4 Statistics 73
4.9.5 Linked Statistics 73
4.9.6 Offset Tables 74
4.9.7 Line Clashing Report 74
4.9.8 Time History and XY Graphs 75
4.9.9 Range Graphs 76
w
Contents
5
4.9.10 Offset Graphs 77
4.9.11 Spectral Response Graphs 77
4.9.12 Extreme Statistics Results 77
4.9.13 Presenting OrcaFlex Results 80
4.10 Graphs 81
4.10.1 Modifying Graphs 82
4.11 Spreadsheets 83
4.12 Text Windows 83
4.13 Workspaces 83
4.14 Comparing Data 84
4.15 Preferences 85
4.16 Printing and Exporting 87
5 AUTOMATION 89
5.1 Introduction 89
5.2 Post-processing 89
5.2.1 Introduction 89
5.2.2 OrcaFlex Spreadsheet 89
5.2.3 Instruction Format 91
5.2.4 Pre-defined commands 93
5.2.5 Basic commands 93
5.2.6 Time History and related commands 94
5.2.7 Range Graph commands 95
5.2.8 Data commands 95
5.2.9 Instructions Wizard 96
5.2.10 Duplicate Instructions 99
5.2.11 Tips and Tricks 102
5.2.12 Error Handling 103
5.3 Batch Processing 103
5.3.1 Introduction 103
5.3.2 Script Files 104
5.3.3 Script Syntax 104
5.3.4 Script Commands 105
5.3.5 Examples of setting data 108
5.3.6 Handling Script Errors 112
5.3.7 Obtaining Variable Names 112
5.3.8 Automating Script Generation 113
6 THEORY 115
6.1 Coordinate Systems 115
6.2 Direction Conventions 116
6.3 Object Connections 117
6.4 Interpolation Methods 117
6.5 Static Analysis 119
6.5.1 Line Statics 119
Contents
w

6
6.5.2 Buoy and Vessel Statics 123
6.5.3 Vessel Multiple Statics 123
6.6 Dynamic Analysis 124
6.6.1 Calculation Method 125
6.6.2 Ramping 127
6.7 Friction Theory 127
6.8 Spectral Response Analysis 130
6.9 Extreme Statistics Theory 131
6.10 Environment Theory 133
6.10.1 Buoyancy Variation with Depth 133
6.10.2 Current Theory 133
6.10.3 Seabed Theory 134
6.10.4 Seabed Non-Linear Soil Model Theory 135
6.10.5 Morison's Equation 141
6.10.6 Waves 142
6.11 Vessel Theory 149
6.11.1 Vessel Rotations 149
6.11.2 RAOs and Phases 150
6.11.3 RAO Quality Checks 151
6.11.4 Hydrodynamic and Wind Damping 153
6.11.5 Stiffness, Added Mass and Damping 155
6.11.6 Impulse Response and Convolution 156
6.11.7 Wave Drift Loads 157
6.12 Line Theory 159
6.12.1 Overview 159
6.12.2 Structural Model Details 161
6.12.3 Calculation Stages 162
6.12.4 Calculation Stage 1 Tension Forces 162
6.12.5 Calculation Stage 2 Bend Moments 163
6.12.6 Calculation Stage 3 Shear Forces 166
6.12.7 Calculation Stage 4 Torsion Moments 166
6.12.8 Calculation Stage 5 Total Load 167
6.12.9 Line End Orientation 167
6.12.10 Line Local Orientation 168
6.12.11 Treatment of Compression 168
6.12.12 Contents Flow Effects 169
6.12.13 Line Pressure Effects 170
6.12.14 Pipe Stress Calculation 171
6.12.15 Pipe Stress Matrix 172
6.12.16 Hydrodynamic and Aerodynamic Loads 174
6.12.17 Drag Chains 176
6.12.18 Line End Conditions 178
6.12.19 Interaction with the Sea Surface 178
6.12.20 Interaction with Seabed and Shapes 179
6.12.21 Clashing 179
6.12.22 Modal Analysis 181
6.13 6D Buoy Theory 182
6.13.1 Overview 182
w
Contents
7
6.13.2 Lumped Buoy Added Mass, Damping and Drag 184
6.13.3 Spar Buoy and Towed Fish Added Mass and Damping 185
6.13.4 Spar Buoy and Towed Fish Drag 187
6.13.5 Contact Forces 189
6.14 3D Buoy Theory 190
6.15 Winch Theory 191
6.16 Shape Theory 193
7 SYSTEM MODELLING - DATA AND RESULTS 195
7.1 Modelling Introduction 195
7.2 Data in Time History Files 196
7.3 Variable Data 198
7.3.1 External Functions 199
7.4 General Data 200
7.4.1 Statics 201
7.4.2 Dynamics 202
7.4.3 Integration & Time Steps 203
7.4.4 Explicit Integration 204
7.4.5 Implicit Integration 205
7.4.6 Numerical Damping 206
7.4.7 Response Calculation 207
7.4.8 Properties Report 207
7.4.9 Drawing 207
7.4.10 Results 207
7.5 Environment 208
7.5.1 Sea Data 208
7.5.2 Sea Density Data 209
7.5.3 Seabed Data 210
7.5.4 Wave Data 213
7.5.5 Data for Regular Waves 215
7.5.6 Data for Random Waves 215
7.5.7 Data for JONSWAP and ISSC Spectra 216
7.5.8 Data for Ochi-Hubble Spectrum 217
7.5.9 Data for Torsethaugen Spectrum 218
7.5.10 Data for Gaussian Swell Spectrum 218
7.5.11 Data for User Defined Spectrum 218
7.5.12 Data for Time History Waves 218
7.5.13 Data for User Specified Components 220
7.5.14 Data for Response Calculation 220
7.5.15 Waves Preview 220
7.5.16 Setting up a Random Sea 221
7.5.17 Current Data 224
7.5.18 Wind Data 225
7.5.19 Drawing Data 227
7.5.20 External Functions 228
7.5.21 Results 228
7.5.22 Wave Scatter Conversion 228
Contents
w

8
7.6 Solid Friction Coefficients Data 233
7.7 Vessels 234
7.7.1 Vessel Data 235
7.7.2 Vessel Types 244
7.7.3 Modelling Vessel Slow Drift 266
7.7.4 Vessel Response Reports 267
7.7.5 Vessel Results 270
7.8 Lines 272
7.8.1 Line Data 274
7.8.2 Line Types 289
7.8.3 Attachments 297
7.8.4 Rayleigh Damping 301
7.8.5 Line Results 304
7.8.6 Drag Chain Results 315
7.8.7 Flex Joint Results 315
7.8.8 Modal Analysis 316
7.8.9 Line Setup Wizard 317
7.8.10 Line Type Wizard 319
7.8.11 Chain 320
7.8.12 Rope/Wire 325
7.8.13 Line with Floats 327
7.8.14 Homogeneous Pipe 332
7.8.15 Hoses and Umbilicals 334
7.8.16 Modelling Stress Joints 335
7.8.17 Modelling Bend Restrictors 337
7.8.18 Modelling non-linear homogeneous pipes 340
7.8.19 Line Ends 341
7.8.20 Modelling Compression in Flexibles 344
7.9 6D Buoys 345
7.9.1 Wings 346
7.9.2 Common Data 347
7.9.3 Applied Loads 349
7.9.4 Wing Data 349
7.9.5 Wing Type Data 350
7.9.6 Lumped Buoy Properties 352
7.9.7 Lumped Buoy Drawing Data 353
7.9.8 Spar Buoy and Towed Fish Properties 354
7.9.9 Spar Buoy and Towed Fish Added Mass and Damping 356
7.9.10 Spar Buoy and Towed Fish Drag 357
7.9.11 Spar Buoy and Towed Fish Drawing 358
7.9.12 Shaded Drawing 358
7.9.13 Other uses 360
7.9.14 External Functions 360
7.9.15 Properties Report 360
7.9.16 Results 361
7.9.17 Buoy Hydrodynamics 363
7.9.18 Hydrodynamic Properties of a Rectangular Box 364
7.9.19 Modelling a Surface-Piercing Buoy 366
7.10 3D Buoys 369
w
Contents
9
7.10.1 Data 370
7.10.2 Properties Report 370
7.10.3 Results 371
7.11 Winches 371
7.11.1 Data 372
7.11.2 Wire Properties 373
7.11.3 Control 374
7.11.4 Control by Stage 374
7.11.5 Control by Whole Simulation 375
7.11.6 Drive Unit 375
7.11.7 External Functions 376
7.11.8 Results 376
7.12 Links 376
7.12.1 Data 377
7.12.2 Results 378
7.13 Shapes 379
7.13.1 Data 380
7.13.2 Blocks 381
7.13.3 Cylinders 381
7.13.4 Curved Plates 382
7.13.5 Planes 383
7.13.6 Drawing 383
7.13.7 Results 384
7.14 All Objects Data Form 385
8 FATIGUE ANALYSIS 387
8.1 Commands 387
8.2 Data 388
8.3 Common Load Cases Data 389
8.4 Load Cases Data for Regular Analysis 390
8.5 Load Cases Data for Rainflow Analysis 390
8.6 Load Cases Data for Spectral Analysis 390
8.7 Components Data 392
8.8 Analysis Data 393
8.9 S-N Curves 393
8.10 Integration Parameters 394
8.11 Results 394
8.12 Fatigue Points 395
8.13 How Damage is Calculated 396
9 VIV TOOLBOX 397
9.1 Frequency Domain Models 397
9.1.1 VIVA 397
9.1.2 SHEAR7 402
Contents
w

10
9.2 Time Domain Models 408
9.2.1 Wake Oscillator Models 411
9.2.2 Vortex Tracking Models 414
9.2.3 VIV Drawing 420

w
Introduction, Installing OrcaFlex
11
1 INTRODUCTION
Welcome to OrcaFlex (version 9.3a), a marine dynamics program developed by Orcina for static and dynamic
analysis of a wide range of offshore systems, including all types of marine risers (rigid and flexible), global analysis,
moorings, installation and towed systems.
OrcaFlex provides fast and accurate analysis of catenary systems such as flexible risers and umbilical cables under
wave and current loads and externally imposed motions. OrcaFlex makes extensive use of graphics to assist
understanding. The program can be operated in batch mode for routine analysis work and there are also special
facilities for post-processing your results including fully integrated fatigue analysis capabilities.
OrcaFlex is a fully 3D non-linear time domain finite element program capable of dealing with arbitrarily large
deflections of the flexible from the initial configuration. A lumped mass element is used which greatly simplifies the
mathematical formulation and allows quick and efficient development of the program to include additional force
terms and constraints on the system in response to new engineering requirements.
In addition to the time domain features, modal analysis can be performed for individual lines and RAOs can be
calculated for any results variable using the Spectral Response Analysis feature.
OrcaFlex is also used for applications in the Defence, Oceanography and Renewable energy sectors. OrcaFlex is fully
3D and can handle multi-line systems, floating lines, line dynamics after release, etc. Inputs include ship motions,
regular and random waves. Results output includes animated replay plus full graphical and numerical presentation.
If you are new to OrcaFlex then please see the tutorial and examples.
For further details of OrcaFlex and our other software, please contact Orcina or your Orcina agent.
Copyright notice
Copyright Orcina Ltd. 1987-2009. All rights reserved.
1.1 INSTALLING ORCAFLEX
Hardware Requirements
OrcaFlex can be installed and run on any computer that has:
- Windows 2000, Windows XP, Windows Vista or Windows 7. Both 32 bit and 64 bit versions of Windows are
supported.
- If you are using small fonts (96dpi) the screen resolution must be at least 1024768. If you are using large fonts
(120dpi) the screen resolution must be at least 12801024.
However, OrcaFlex is a powerful package and to get the best results we would recommend:
- A powerful processor with fast floating point and memory performance. This is the most important factor since
OrcaFlex is a computation-intensive program and simulation run times can be long for complex models.
- At least 512MB of memory. This is less important than processor performance but some aspects of OrcaFlex do
perform better when more memory is available. In addition, having plenty of memory allows you to use other
applications efficiently at the same time as running OrcaFlex simulations.
- A multi-core system to take advantage of OrcaFlex's multi-threading capabilities.
- As much disk space as you require to store simulation files. Simulation files vary in size, but can be 100's of
megabytes each for complex models.
- A screen resolution of 12801024 or greater and a 16-bit or greater colour palette.
- A DirectX 9 compatible graphics card with at least 256MB memory for the most effective use of the shaded
graphics facility.
- Microsoft Excel (Excel 2000, or later) in order to use the OrcaFlex automation facilities.
Note: Although OrcaFlex is a 32-bit program, the 64-bit versions of Windows run 32-bit programs very
efficiently and have certain advantages over 32-bit versions of Windows. Most notably the 64-bit
versions of Windows are able to make use of larger amounts of memory. This can benefit OrcaFlex,
and indeed other programs. In addition we have found the 64-bit versions of Windows to be more
effective at multi-threaded calculations. For these reasons we currently recommend 64-bit Vista as
the best platform for running OrcaFlex.
Introduction, Installing OrcaFlex
w

12
Installation
To install OrcaFlex:
- You will need to install from an account with administrator privileges.
- If installing from CD, insert the OrcaFlex CD and run the Autorun.exe program on the CD (on many machines
this program will run automatically when you insert the CD). Then click on 'Install OrcaFlex'.
- If you have received OrcaFlex by e-mail or from the web you will have a zip file, and possibly a number of
licence files (.lic). Extract the files from the zip file to some temporary location, and save the licence files to the
same folder. Then run the extracted file Setup.exe.
- You will also need to install the OrcaFlex dongle supplied by Orcina. See below for details.
For further details, including information on network and silent installation, click on Read Me on the Autorun menu
or open the file Installation Guide.pdf on the CD. If you have any difficulty installing OrcaFlex please contact Orcina
or your Orcina agent.
Orcina Shell Extension
When you install OrcaFlex the Orcina Shell Extension is also installed. This integrates with Windows Explorer, and
associates the data and simulation file types (.dat and .sim) with OrcaFlex. You can then open an OrcaFlex file by
simply double-clicking the filename in Explorer. The shell extension also provides file properties information, such
as which version of OrcaFlex wrote the file and the Comments text for the model in the file. For details see the file
CD:\OrcShlEx\ReadMe.htm on the OrcaFlex CD.
Installing the Dongle
OrcaFlex is supplied with a dongle, a small hardware device that must be attached to the machine or to the network
to which the machine is attached.
Note: The dongle is effectively your licence to run one copy (or more, if the dongle is enabled for more
copies) of OrcaFlex. It is, in essence, what you have purchased or leased, and it should be treated
with appropriate care and security. If you lose your dongle you cannot run OrcaFlex.
Warning: Orcina can normally resupply disks or manuals (a charge being made to cover costs) if they are lost
or damaged. But we can only supply a new dongle in the case where the old dongle is returned to
us.
Dongles labelled 'Hxxx' (where xxx is the dongle number) must be plugged into the machine on which OrcaFlex is
run. Dongles labelled 'Nxxx' can be used in the same way as 'Hxxx' dongles, but they can also be used over a
network, allowing the program to be shared by multiple users. In the latter case the dongle should be installed by
your network administrator; instructions can be found in the Dongle directory on the OrcaFlex CD.
Types of Dongle
Dongles are available for either parallel or USB ports, and these are functionally equivalent so far as OrcaFlex is
concerned. In general, USB dongles are preferred, since they seem to be more reliable. In any case, parallel ports are
becoming less common on new machines. By default, 'N' dongles can hold up to 10 OrcaFlex licences for use over a
network. We can supply dongles with larger capacities on request.
Dongle Troubleshooting
We supply, with OrcaFlex, a dongle utility program called OrcaDongle. If OrcaFlex cannot find the dongle then this
program may be used to check that the dongle is working correctly and has the expected number of licences. For
details see the OrcaDongle help file.
The OrcaDongle program is included on the OrcaFlex CD, and you may choose to install it from the Autorun menu in
the same way as OrcaFlex. It is also available for download from www.orcina.com/Support/Dongle.
Also on our website, users of network dongles may find the Orcina Licence Monitor to be useful. This application
keeps track of the number of OrcaFlex licences claimed on a network at any time.
Diagnostics
If OrcaFlex fails to start, with the error that it can't obtain a licence, then please check the following.
- If you are using a network dongle, are all the licences in use? The Orcina Licence Monitor may be of use in
determining this. If they are, you will need to wait until a licence becomes free before you can run OrcaFlex.
w
Introduction, Running OrcaFlex
13
- If you are using a local dongle, is it plugged into your machine? If so, is the dongle device driver installed? You
can check this by running OrcaDongle. If the driver is not present, it may have been uninstalled by another
program: if so, you can fix this by Repairing the OrcaFlex installation (from the Windows Control Panel, select
'Add or Remove Programs' (XP) or Programs / Programs and Features (Vista), select the OrcaFlex entry, select
Change then Repair). If this still fails, you can install the driver by downloading from our website, and running,
the file Hasp-Setup.msi.
- Does the dongle you are using have an OrcaFlex licence on it? Again, you can check this with OrcaDongle.
- Do you have a licence file for the dongle you wish to access? This file will be named Nxxx.lic or Hxxx.lic (where
xxx is the dongle number) and will be in the OrcaFlex installation folder. If not, then you should be able to copy
the required file(s) from the root level of the OrcaFlex CD into the installation folder.
If none of these help, then please contact us at Orcina with a description of the problem. Ideally, please also email to
us the diagnostics file named OrcLog.txt which OrcaFlex will have written on failing to find a licence. This file can be
found in the folder "%appdata%/Orcina/OrcaFlex": to open this folder, select Start menu | Run... and enter the text
between the quotes (including the '%' characters).
1.2 RUNNING ORCAFLEX
A shortcut to run OrcaFlex is set up on the Start menu when you install OrcaFlex (see Start\Programs\Orcina
Software\).
This shortcut passes no parameters to OrcaFlex so it gives the default start-up behaviour; see below. If this is not
suitable you can configure the start-up behaviour using command-line parameters, for example by setting up your
own shortcuts with particular parameter settings.
Default Start-up
OrcaFlex has two basic modules: full OrcaFlex and statics-only OrcaFlex. A full OrcaFlex licence is needed for
dynamic analysis.
When you run OrcaFlex it looks for an Orcina dongle from which it can claim an OrcaFlex licence (either a full
licence or a statics-only licence). By default, it first looks for a licence on a local dongle (i.e. one in local mode and
connected to the local machine) and if none is found then it looks for a licence on a network dongle (i.e. one in
network mode and accessed via a licence manager over the network). This default behaviour can be changed by
command-line parameters.
If OrcaFlex finds a network dongle and there is a choice of which licences to claim from it, then OrcaFlex displays a
Choose Modules dialog to ask you which modules you want to claim. This helps you share the licences with other
users of that network dongle. For example if the network dongle contains both a full licence and a statics-only
licence then you can choose to use the statics-only licence, if that is all you need, so that the full licence is left free for
others to use when you do not need it yourself. The Choose Modules dialog can be suppressed using command-line
parameters.
Command Line Parameters
OrcaFlex can accept various parameters on the command line to modify the way it starts up. The syntax is:
OrcaFlex.exe Filename Option1 Option2 ... etc.
Filename is optional. If present it should be the name of an OrcaFlex data file (.dat or .yml) or simulation file (.sim)
and after starting up OrcaFlex will automatically open that file.
Option1, Option2 etc. are optional parameters that allow you configure the start-up behaviour. They can be any of
the following switches. For the first character of an option switch, the hyphen character '-' can be used as an
alternative to the '/' character.
Dongle Search switches
By default the program searches first for a licence on a local dongle and then for a licence on a network dongle. The
following switches allow you to modify this default behaviour.
- /LocalDongle Only search for licences on a local dongle. No search will be made for network dongles.
- /NetworkDongle Only search for licences on a network dongle. Any local dongle will be ignored. This can be
useful if you have a local dongle but want to use a network dongle that has licences for more modules.
Introduction, Parallel Processing
w

14
Module Choice switch
This switch is only relevant if the dongle found is a network dongle and there is a choice of licences to claim from
that dongle. You can specify your choice using the following command line switch:
- /DisableDynamics Choose the statics-only basic licence. This is sometimes useful when using a network dongle
since it allows you to leave full licences free for other users when you only need a statics-only licence.
If you do not specify all the choices then the program displays the Choose Modules dialog to ask for your remaining
choices. You can suppress this dialog using the following switch.
- /DisableInteractiveStartup Do not display the Choose Modules dialog. The program behaves the same as if the
user clicks OK on that dialog without changing any module choices.
Batch Calculation switches
These switches allow you to instruct OrcaFlex to start a batch calculation as soon as the program has loaded. The
following switches are available:
- /Batch Start a batch calculation as soon as the program has loaded. The batch calculation will contain all the
files specified on the command line (you can have more than one) in the order in which they are specified. You
can use relative paths which will be relative to the working directory.
- /CloseAfterBatch Instructs the program to close once the batch is complete.
- /BatchAnalysisStatics, /BatchAnalysisDynamics specify what type of analysis to perform to the specified files. If
these parameters are missing then the program defaults to dynamic analysis.
Process Priority switches
These switches determine the processing priority of OrcaFlex. The available switches are /RealtimePriority,
/HighPriority, /AboveNormalPriority, /NormalPriority, /BelowNormalPriority, /LowPriority.
ThickLines switch
The /ThickLines switch allows you to specify a minimum thickness for lines drawn on OrcaFlex 3D View windows.
For example using the switch /ThickLines=5 forces OrcaFlex to draw all lines at a thickness of at least 5. If no value
is specified (i.e. the switch is /ThickLines) then the minimum thickness is taken to be 2.
This switch has been added to make OrcaFlex 3D Views clearer when projected onto a large screen.
ThreadCount switch
The /ThreadCount switch allows you to set the number of execution threads used by OrcaFlex for parallel
processing. For example /ThreadCount=1 forces OrcaFlex to use a single execution thread which has the effect of
disabling parallel processing.
1.3 PARALLEL PROCESSING
Machines with multiple processors or processors with multiple cores are becoming increasingly common. OrcaFlex
can make good use of the additional processing capacity afforded by such machines. For up to date information on
hardware choice for OrcaFlex please refer to www.orcina.com/Support/Benchmark.
OrcaFlex performs the calculations of the model's Line objects in parallel. This means that, interactively at least,
performance is only improved for models with more than one Line object - we intend to remove this restriction in a
future release of the software. However, for models with more than one Line performance is significantly improved.
Both batch processing and fatigue calculations process their jobs and load cases concurrently, using all available
processor cores.
Note, however, that the OrcaFlex spreadsheet is currently only able to make use of a single processor core. We plan
to address this limitation in a future release.
Thread count
OrcaFlex manages a number of execution threads to perform the parallel calculations. The number of these threads
(the thread count) defaults to the number of physical processor cores available on your machine as reported by the
operating system. This default will work well for most cases. Should you wish to change it you can use the Tools | Set
Thread Count menu item. The thread count can also be controlled by a command line switch.
w
Introduction, Distributed OrcaFlex
15
Hyperthreading
Some Intel processors offer a technology called hyperthreading. Such processors can process multiple execution
threads in parallel by making use of under-used resources on the processor. Hyperthreaded processors appear to
the operating system as 2 distinct, logical processors.
Sadly, the real world performance of such chips does not live up to the marketing hype. At best this technology can
give improvements of around 10-20%. However, the performance of hyperthreading under OrcaFlex varies
considerably with the OrcaFlex model being analysed. In the worst cases using hyperthreading results in
performance twice as slow as without!
For this reason we recommend that you don't attempt to use hyperthreading when running OrcaFlex. By default
OrcaFlex will use as many threads as there are true physical cores available to your system.
To help understand this consider a dual processor, dual core machine with hyperthreading support. The operating
system will recognise 8 processors. Of these processors, 4 are true physical processor cores and the other 4 are
virtual hyperthreaded processors. Accordingly OrcaFlex will default to using 4 calculation threads.
1.4 DISTRIBUTED ORCAFLEX
Distributed OrcaFlex is a suite of programs that enables a collection of networked, OrcaFlex licensed computers to
run OrcaFlex jobs, transparently, using spare processor time. For more information about Distributed OrcaFlex
please refer to www.orcina.com/Support/DistributedOrcaFlex. Distributed OrcaFlex can be downloaded from this
address.
OrcaFlex can also make use of machines with multiple processors using parallel processing technology.
1.5 ORCINA LICENCE MONITOR
The Orcina Licence Monitor (OLM) is a service that monitors the current number of OrcaFlex licences claimed on a
network in real time. Other programs that use the OrcaFlex programming interface (OrcFxAPI) such as Distributed
OrcaFlex and the OrcaFlex spreadsheet are also monitored. You can obtain information on each licence claimed that
includes:
- Network information: the computer name, network address and the user name.
- Licence information: the dongle name, the dongle type (network or local) and the time the licence was claimed.
- Program information: which modules are being used, the version, and the location of the program which has
claimed the licence (usually this is OrcaFlex.exe but it can be Excel.exe for the OrcaFlex spreadsheet for
example).
OLM can be downloaded from www.orcina.com/Support/OrcinaLicenceMonitor.
1.6 DEMONSTRATION VERSION
For an overview of OrcaFlex, see the Introduction topic and the tutorial.
The demonstration version of OrcaFlex has some facilities disabled - you cannot calculate statics or run simulation,
and you cannot save files, print, export or copy to the clipboard. Otherwise the demonstration version is just like the
full version, so it allows you to see exactly how the program works.
In particular the demonstration version allows you to open any prepared OrcaFlex data or simulation file. If you
open a simulation file then you can then examine the results, see replays of the motion etc. There are numerous
example files provided on the demonstration CD. These example files are also available from
www.orcina.com/SoftwareProducts/OrcaFlex/Examples.
If you have the full version of OrcaFlex then you can use the demonstration version to show your customers your
OrcaFlex models and results for their system. To do this, give them the demonstration version and copies of your
OrcaFlex simulation files. The demonstration version can be downloaded from
www.orcina.com/SoftwareProducts/OrcaFlex/Demo.
1.7 VALIDATION AND QA
The OrcaFlex validation documents are available from www.orcina.com/SoftwareProducts/OrcaFlex/Validation.
Introduction, Orcina
w

16
1.8 ORCINA
Orcina is a creative engineering software and consultancy company staffed by mechanical engineers, naval
architects, mathematicians and software engineers with long experience in such demanding environments as the
offshore, marine and nuclear industries. As well as developing engineering software, we offer a wide range of
analysis and design services with particular strength in dynamics, hydrodynamics, fluid mechanics and
mathematical modelling.
Contact Details
Orcina Ltd.
Daltongate
Ulverston
Cumbria
LA12 7AJ
UK
Telephone: +44 (0) 1229 584742
Fax: +44 (0) 1229 587191
E-mail: orcina@orcina.com
Web Site: www.orcina.com
Orcina Agents
We have agents in many parts of the world. For details please refer to www.orcina.com/ContactOrcina.
1.9 REFERENCES AND LINKS
References
API, 1993. API RP 2A-WSD, Recommended Practice for Planning, Designing and Constructing Fixed Offshore
Platforms Working Stress Design. American Petroleum Institute.
API, 1998. API RP 2RD, Design of Risers for Floating Production Systems and Tension-Leg Platforms. American
Petroleum Institute.
API, 2005. API RP 2SK, Design and Analysis of Stationkeeping Systems for Floating Structures. American Petroleum
Institute.
API. Comparison of Analyses of Marine Drilling Risers. API Bulletin. 2J.
Aubeny C, Biscontin G and Zhang J, 2006. Seafloor interaction with steel catenary risers. Offshore Technology
Research Center (Texas A&M University) Final Project Report (http://www.mms.gov/tarprojects/510.htm).
Aubeny C, Gaudin C and Randolph M, 2008. Cyclic Tests of Model Pipe in Kaolin. OTC 19494, 2008.
Barltrop N D P and Adams A J, 1991. Dynamics of fixed marine structures. Butterworth Heinemann for MTD. 3rd
Edition.
Batchelor G K, 1967. An introduction to fluid dynamics. Cambridge University Press.
Blevins R D, 2005. Forces on and Stability of a Cylinder in a Wake. J. OMAE, 127, 39-45.
Bridge C, Laver K, Clukey E, Evans T, 2004. Steel Catenary Riser Touchdown Point Vertical Interaction Models. OTC
16628, 2004.
Carter D J T, 1982. Prediction of Wave height and Period for a Constant Wind Velocity Using the JONSWAP Results,
Ocean Engineering, 9, no. 1, 17-33.
Casarella M J and Parsons M, 1970. Cable Systems Under Hydrodynamic Loading. Marine Technology Society Journal
4, No. 4, 27-44.
Chapman D A, 1984. Towed Cable Behaviour During Ship Turning Manoeuvres. Ocean Engineering. 11, No. 4.
Chung J and Hulbert G M, 1993. A time integration algorithm for structural dynamics with improved numerical
dissipation: The generalized- method. ASME Journal of Applied Mechanics. 60, 371-375.
CMPT, 1998. Floating structures: A guide for design and analysis. Edited by Barltrop N D P. Centre for Marine and
Petroleum Technology publication 101/98, Oilfield Publications Limited.
Coles S, 2001. An Introduction to Statistical Modelling of Extreme Values. Springer.
w
Introduction, References and Links
17
Cummins W E, 1962. The impulse response function and ship motions. Schiffstechnik, 9, 101-109.
Dean R G, 1965. Stream function representation of non-linear ocean waves. J. Geophys. Res., 70, 4561-4572.
Dirlik T, 1985. Application of computers in Fatigue Analysis. PhD Thesis University of Warwick.
DNV, 1991. Environmental Conditions and Environmental Loads Classification Notes 30.5. March.
DNV, 2001. Offshore Standard DNV-OS-F201, Dynamic Risers.
ESDU 71016. Fluid forces, pressures and moments on rectangular blocks. ESDU 71016 ESDU International, London.
ESDU 80025. Mean forces, pressures and flow field velocities for circular cylindrical structures: Single cylinder with
two-dimensional flow. ESDU 80025 ESDU International, London.
Falco M, Fossati F and Resta F, 1999. On the vortex induced vibration of submarine cables: Design optimization of
wrapped cables for controlling vibrations. 3
rd
International Symposium on Cable Dynamics, Trondheim, Norway.
Faltinsen O M, 1990. Sea loads on ships and offshore structures. Cambridge University Press.
Fenton J D, 1979. A high-order cnoidal wave theory. J. Fluid Mech. 94, 129-161.
Fenton J D, 1985. A fifth-order Stokes theory for steady waves. J. Waterway, Port, Coastal & Ocean Eng. ASCE. 111,
216-234.
Fenton J D, 1990. Non-linear wave theories. Chapter in "The Sea - Volume 9: Ocean Engineering Science", edited by
B. Le MeHaute and D. M. Hanes. Wiley: New York. 3-25.
Fenton J D, 1995. Personal communication - pre-print of chapter in forthcoming book on cnoidal wave theory.
Gregory R W and Paidoussis M P, 1996. Unstable oscillation of tubular cantilevers conveying fluid: Part 1:Theory.
Proc. R. Soc. 293 Series A, 512-527.
Hartnup G C, Airey R G and Fraser J M, 1987. Model Basin Testing of Flexible Marine Risers. OMAE Houston.
Hoerner S F 1965. Fluid Dynamic Drag, Published by the author at Hoerner Fluid Dynamics, NJ 08723, USA.
Huse E, 1993. Interaction in Deep-Sea Riser Arrays. OTC 7237, 1993.
Isherwood R M, 1987. A Revised Parameterisation of the JONSWAP Spectrum. Applied Ocean Research, 9, No. 1
(January), 47-50.
Iwan W D, 1981. The vortex-induced oscillation of non-uniform structural systems. Journal of Sound and Vibration,
79, 291-301.
Iwan W D and Blevins R D, 1974. A Model for Vortex Induced Oscillation of Structures. Journal of Applied Mechanics,
September 1974, 581-586.
Kotik J and Mangulis V, 1962. On the Kramers-Kronig relations for ship motions. Int. Shipbuilding Progress, 9, No. 97,
361-368.
Larsen C M, 1991. Flexible Riser Analysis - Comparison of Results from Computer Programs. Marine Structures,
Elsevier Applied Science.
Longuet-Higgins M S, 1983. On the joint distribution of wave periods and amplitudes in a random wave field.
Proceedings Royal Society London, Series A, Mathematical and Physical Sciences.389, 241-258.
Maddox S J, 1998. Fatigue strength of welded structures. Woodhead Publishing Ltd, ISBN 1 85573 013 8.
Morison J R, O'Brien M D, Johnson J W, and Schaaf S A, 1950. The force exerted by surface waves on piles. Petrol
Trans AIME. 189.
Mueller H F, 1968. Hydrodynamic forces and moments of streamlined bodies of revolution at large incidence.
Schiffstechnik. 15, 99-104.
Newman J N. 1974. Second-order, slowly-varying forces on vessels in irregular waves. Proc Int Symp Dynamics of
Marine Vehicles and Structures in Waves, Ed. Bishop RED and Price WG, Mech Eng Publications Ltd, London.
Newman J N, 1977. Marine Hydrodynamics, MIT Press.
NDP, 1995. Regulations relating to loadbearing structures in the petroleum activities. Norwegian Petroleum
Directorate.
Ochi M K and Hubble E N, 1976. Six-parameter wave spectra, Proc 15th Coastal Engineering Conference, 301-328.
Ochi M K, 1973. On Prediction of Extreme Values, J. Ship Research, 17, No. 1, 29-37.
Introduction, References and Links
w

18
Ochi M K, 1998. Ocean Waves: The Stochastic Approach, Cambridge University Press.
Oil Companies International Marine Forum, 1994. Prediction of Wind and Current Loads on VLCCs, 2nd edition,
Witherby & Co., London.
Paidoussis M P, 1970. Dynamics of tubular cantilevers conveying fluid. J. Mechanical Engineering Science, 12, No 2,
85-103.
Paidoussis M P and Deksnis E B, 1970. Articulated models of cantilevers conveying fluid: The study of a paradox. J.
Mechanical Engineering Science, 12, No 4, 288-300.
Paidoussis M P and Lathier B E, 1976. Dynamics of Timoshenko beams conveying fluid. J. Mechanical Engineering
Science, 18, No 4, 210-220.
Palmer A C and Baldry J A S, 1974. Lateral buckling of axially constrained pipes. J. Petroleum Technology, Nov 1974,
1283-1284.
Pode L, 1951. Tables for Computing the Equilibrium Configuration of a Flexible Cable in a Uniform Stream. DTMB
Report. 687.
Principles of Naval Architecture. Revised edition, edited by J P Comstock, 1967. Society of Naval Architects and
Marine Engineers, New York.
Puech A, 1984. The Use of Anchors in Offshore Petroleum Operations. Editions Technique.
Randolph M and Quiggin P, 2009. Non-linear hysteretic seabed model for catenary pipeline contact. OMAE paper
79259, 2009 (www.orcina.com/Resources/Papers/OMAE2009-79259.pdf).
Rawson and Tupper, 1984. Basic Ship Theory 3rd ed, 2: Ship Dynamics and Design, 482. Longman Scientific &
Technical (Harlow).
Rienecker M M and Fenton J D, 1981. A Fourier approximation method for steady water waves. J. Fluid Mech. 104,
119-137.
Roark R J, 1965. Formulas for Stress and Strain. 4th edition McGraw-Hill.
Sarpkaya T, Shoaff R L, 1979. Inviscid Model of Two-Dimensional Vortex Shedding by a Circular Cylinder. Article No.
79-0281R, AIAA Journal,17, no. 11, 1193-1200.
Sarpkaya T, Shoaff R L, 1979. A discrete-vortex analysis of flow about stationary and transversely oscillating circular
cylinders. Report no. NPS-69SL79011, Naval Postgraduate School, Monterey, California.
Rychlik I, 1987. A new definition of the rainflow cycle counting method. Int. J. Fatigue 9, No 2, 119-121.
Skjelbreia L, Hendrickson J, 1961. Fifth order gravity wave theory. Proc. 7th Conf. Coastal Eng. 184-196.
Sobey R J, Goodwin P, Thieke R J and Westberg R J, 1987. Wave theories. J. Waterway, Port, Coastal & Ocean Eng.
ASCE 113, 565-587.
Sparks C, 1980. Le comportement mecanique des risers influence des principaux parametres. Revue de l'Institut
Francais du Petrol, 35, no. 5, 811.
Sparks C, 1983. Comportement mecanique des tuyaux influence de la traction, de la pression et du poids lineique :
Application aux risers. Revue de l'Institut Francais du Petrol 38, no. 4, 481.
Standing RG, Brendling WJ, Wilson D, 1987. Recent Developments in the Analysis of Wave Drift Forces, Low-
Frequency Damping and Response. OTC paper 5456, 1987.
Tan Z, Quiggin P, Sheldrake T, 2007. Time domain simulation of the 3D bending hysteresis behaviour of an
unbonded flexible riser. OMAE paper 29315, 2007 (www.orcina.com/Resources/Papers/OMAE2007-29315.pdf).
Taylor R and Valent P, 1984. Design Guide for Drag Embedment Anchors, Naval Civil Engineering Laboratory (USA),
TN No N-1688.
Torsethaugen K and Haver S, 2004. Simplified double peak spectral model for ocean waves, Paper No. 2004-JSC-193,
ISOPE 2004 Touson, France.
Thwaites, 1960. Incompressible Aerodynamics, Oxford, 399-401.
Timoshenko S,1955. Vibration Problems in Engineering, van Nostrand.
Triantafyllou M S, Yue D K P and Tein D Y S, 1994. Damping of moored floating structures. OTC 7489, Houston, 215-
224.
w
Introduction, References and Links
19
Tucker et al, 1984. Applied Ocean Research, 6, No 2.
Tucker M J, 1991. Waves in Ocean Engineering. Ellis Horwood Ltd. (Chichester).
Wichers J E W, 1979. Slowly oscillating mooring forces in single point mooring systems. BOSS79 (Second
International Conference on Behaviour of Offshore Structures).
Wichers J E W, 1988. A Simulation Model for a Single Point Moored Tanker. Delft University Thesis.
Wu M, Saint-Marcoux J-F, Blevins R D, Quiggin P P, 2008. Paper No. ISOPE-2008-MWU10. ISOPE Conference 2008,
Vancouver, Canada. (www.orcina.com/Resources/Papers/ISOPE2008-MWU-10.pdf)
Young A D, 1989. Boundary Layers. BSP Professional Books, 87-91.
Suppliers of frequency domain VIV software
SHEAR7
SBM Atlantia
1255 Enclave Parkway, Suite 1200
Houston, TX 77077, USA
Attention: Dr. S. Leverette
Email: Steve.Leverette@sbmatlantia.com
Tel: +1 281 899 4300
Fax: +1 281 899 4307
VIVA
JD Marine
11777 Katy Freeway, Suite 434 South
Houston, TX 77079, USA
Phone: +1 281 531 0888
Fax: +1 281 531 5888
Email: info@jdmarineus.com
w
Tutorial, Getting Started
21
2 TUTORIAL
2.1 GETTING STARTED
This short tutorial gives you a very quick run through the model building and results presentation features of
OrcaFlex.
On completion of the tutorial we suggest that you also look through the pre-run examples - see Example Files.
On starting up OrcaFlex, you are presented with a 3D view showing just a blue line representing the sea surface and
a brown line representing the seabed. At the top of the screen are menus, a tool bar and a status bar arranged in the
manner common to most Windows software. As usual in Windows software, nearly all actions can be done in
several ways: here, to avoid confusion, we will usually only refer to one way of doing the action we want, generally
using the mouse.

Figure: The OrcaFlex main window
2.2 BUILDING A SIMPLE SYSTEM
To start with, we will build a simple system consisting of one line and one vessel only.
Using the mouse, click on the new vessel button on the toolbar. The cursor changes from the usual pointer to a
crosshair cursor to show that you have now selected a new object and OrcaFlex is waiting for you to decide where to
place it. Place the cursor anywhere on the screen and click the mouse button. A "ship" shape appears on screen,
positioned at the sea surface, and the cursor reverts to the pointer shape. To select the vessel, move the cursor close
to the vessel and click the mouse button - the message box (near the top of the 3D view) will confirm when the
vessel has been selected. Now press and hold down the mouse button and move the mouse around. The vessel
follows the mouse horizontally, but remains at the sea surface. (To alter vessel vertical position, or other details,
select the vessel with the mouse, then double click to open the Vessel data window.)
2.3 ADDING A LINE
Now add a line. Using the mouse, click on the new line button . The crosshair cursor reappears - move the
mouse to a point just to the right of the vessel and click. The line appears as a catenary loop at the mouse position.
Move the mouse to a point close to the left hand end of the line, press and hold down the mouse button and move
the mouse around. The end of the line moves around following the mouse, and the line is redrawn at each position.
Release the mouse button, move to the right hand end, click and drag. This time the right hand end of the line is
dragged around. In this way, you can put the ends of the lines roughly where you want them. (Final positioning to
Tutorial, Adjusting the View
w

22
exact locations has to be done by typing in the appropriate numbers - select the line with the mouse and double click
to bring up the line data form.)
Move the line ends until the left hand end of the line is close to the bow of the ship, the right hand end lies above the
water and the line hangs down into the water.
At this point, the line has a default set of properties and both ends are at fixed positions relative to the Global origin.
For the moment we will leave the line properties (length, mass, etc.) at their default values, but we will connect the
left hand end to the ship. Do this as follows:
1. Click on the line near the left hand end, to select that end of the line; make sure you have selected the line, not
the vessel or the sea. The message box at the left hand end of the status bar tells you what is currently selected.
If you have selected the wrong thing, try again. (Note that you don't have to click at the end of the line in order
to select it - anywhere in the left hand half of the line will select the left hand end. As a rule, it is better to choose
a point well away from any other object when selecting something with the mouse.)
2. Release the mouse and move it to the vessel, hold down the CTRL key and click. The message box will confirm
the connection and, to indicate the connection, the triangle at the end of the line will now be the same colour as
the vessel.
Now select the vessel again and drag it around with the mouse. The left hand end of the line now moves with the
vessel. Leave the vessel positioned roughly as before with the line in a slack catenary.
2.4 ADJUSTING THE VIEW
The default view of the system is an elevation of the global X-Z plane - you are looking horizontally along the
positive Y axis. The view direction (the direction you are looking) is shown in the Window Title bar in
azimuth/elevation form (azimuth=270; elevation=0). You can move your view point up, down, right or left, and you
can zoom in or out, using the view control buttons near the top left corner of the window. Click on
each of the top 3 buttons in turn: then click again with the SHIFT key held down. The SHIFT key reverses the action of
the button. If you want to move the view centre without rotating, use the scroll bars at the bottom and right edges of
the window. By judicious use of the buttons and scroll bars you should be able to find any view you like.
Alternatively, you can alter the view with the mouse. Hold down the ALT key and left mouse button and drag. A
rectangle on screen shows the area which will be zoomed to fill the window when the mouse button is released.
SHIFT+ALT+left mouse button zooms out - the existing view shrinks to fit in the rectangle.
Warning: OrcaFlex will allow you to look up at the model from underneath, effectively from under the
seabed! Because the view is isometric and all lines are visible, it is not always apparent that this
has occurred. When this has happened, the elevation angle is shown as negative in the title bar.
There are three shortcut keys which are particularly useful for controlling the view. For example CTRL+P gives a plan
view from above; CTRL+E gives an elevation; CTRL+Q rotates the view through 90 about the vertical axis. (CTRL+P
and CTRL+E leave the view azimuth unchanged.)
Now click the button on the 3D View to bring up the Edit View Parameters form. This gives a more precise way
of controlling the view and is particularly useful if you want to arrange exactly the same view of 2 different models -
say 2 alternative configurations for a particular riser system. Edit the view parameters if you wish by positioning the
cursor in the appropriate box and editing as required.
If you should accidentally lose the model completely from view (perhaps by zooming in too close, or moving the
view centre too far) there are a number of ways of retrieving it:
- Press CTRL+T or right click in the view window and select Reset to Default View.
- Press the Reset button on the Edit View Parameters form. This also resets back to the default view.
- Zoom out repeatedly until the model reappears.
- Close the 3D View and add a new one (use the Window|Add 3D View menu item). The new window will have
the default view centre and view size.
2.5 STATIC ANALYSIS
Note: If you are running the demonstration version of OrcaFlex then this facility is not available.
w
Tutorial, Dynamic Analysis
23
To run a static analysis of the system, click on the calculate statics button . The message box reports which line
is being analysed and how many iterations have occurred. When the analysis is finished (almost instantly for this
simple system) the Program State message in the centre of the Status Bar changes to read "Statics Complete", and
the Static Analysis button changes to light grey to indicate that this command is no longer available. The appearance
of the line will have changed a little. When editing the model, OrcaFlex uses a quick approximation to a catenary
shape for general guidance only, and this shape is replaced with the true catenary shape when static analysis has
been carried out. (See Static Analysis for more details).
We can now examine the results of the static analysis by clicking on the Results button . This opens a Results
Selection window.
You are offered the following choices:
- Results in numerical and graphical form, with various further choices which determine what the table or graph
will contain.
- Results for all objects or one selected object.
Ignore the graph options for the moment, select Summary Results and All Objects, then click Table. A summary of
the static analysis results is then displayed in spreadsheet form. Results for different objects are presented in
different sheets. To view more static analysis results repeat this process: click on the Results button and select as
before.
2.6 DYNAMIC ANALYSIS
We are now ready to run the simulation. If you are running the demonstration version of OrcaFlex then you cannot
do this, but instead you can load up the results of a pre-run simulation see Examples.
Click the Run Dynamic Simulation button . As the simulation progresses, the status bar reports current
simulation time and expected (real) time to finish the analysis, and the 3D view shows the motions of the system as
the wave passes through.
Click the Start Replay button . An animated replay of the simulation is shown in the 3D view window. Use the
view control keys and mouse as before to change the view. The default Replay Period is Whole Simulation. This
means that you see the simulation start from still water, the wave building and with it the motions of the system.
Simulation time is shown in the Status bar, top left. Negative time means the wave is still building up from still water
to full amplitude. At the end of the simulation the replay begins again.
The replay consists of a series of "frames" at equal intervals of time. Just as you can "zoom" in and out in space for a
closer view, so OrcaFlex lets you "zoom" in and out in time. Click on the Replay Parameters button , edit
Interval to 0.5s and click OK. The animated replay is now much jerkier than before because fewer frames are being
shown.
Now click again on Replay Parameters, set Replay Period to Latest Wave and click on the Continuous box to deselect.
The replay period shown is at the end of the simulation and has duration of a single wave period. At the end of the
wave period the replay pauses, then begins again.
Now click on the Replay Step button to pause the replay. Clicking repeatedly on this button steps through the
replay one frame at a time - a very useful facility for examining a particular part of the motion in detail. Click with
the SHIFT key held down to step backwards.
You can then restart the animation by clicking on 'Start Replay' as before. To slow down or speed up the replay, click
on Replay Parameters and adjust the speed. Alternatively use the shortcuts CTRL+F and SHIFT+CTRL+F to make the
replay faster or slower respectively.
To exit from replay mode click on the Stop Replay button .
Tutorial, Multiple Views
w

24
2.7 MULTIPLE VIEWS
You can add another view of the system if you wish by clicking on the View button . Click again to add a third
view, etc. Each view can be manipulated independently to give, say, simultaneous plan and elevation views. To make
all views replay together, click on Replay Control and check the All Views box. To remove an unwanted view simply
close its view window. To rearrange the screen and make best use of the space, click Window and choose Tile
Vertical (F4) or Tile Horizontal (SHIFT+F4). Alternatively, you can minimise windows so that they appear as small
icons on the background, or you can re-size them or move them around manually with the mouse. These are
standard Windows operations which may be useful if you want to tidy up the screen without having to close a
window down completely.
2.8 LOOKING AT RESULTS
Now click on the Results button . This opens a Results Selection window.
You are offered the following choices:
- Results as Tables or Graphs, with various further choices which determine what the table or graph will contain.
- Results for all objects or one selected object.
Select Time History for any line, then select Effective Tension at End A and click the Graph button. The graph
appears in a new window. You can call up time histories of a wide range of parameters for most objects. For lines,
you can also call up Range Graphs of effective tension, curvature, bend moment and many other variables. These
show maximum, mean and minimum values of the variable plotted against position along the line. Detailed
numerical results are available by selecting Summary Results, Full Results, Statistics and Linked Statistics.
Time history and range graph results are also available in numerical form - select the variable you want and press
the Values button. The results can be exported as Excel compatible spreadsheets for further processing as required.
Further numerical results are available in tabular form by selecting Summary Results, Full Results, Statistics and
Linked Statistics.
Windows displaying system views or graphs can be automatically arranged on screen as they appear by selecting
Window | Auto Arrange (this is the default setting on start up). Windows displaying tabular results are not
automatically arranged on opening, but are included in any subsequent rearrangement of the screen.
Results Post-Processing
Extra post-processing facilities are available through Excel spreadsheets.
2.9 GETTING OUTPUT
You can get printed copies of data, results tables, system views and results graphs by means of the File | Print
menu, or by clicking Print on the pop-up menu. Output can also be transferred into a word processor or other
application, either using copy+paste via the clipboard or else export/import via a file.
Note: Printing and export facilities are not available in the demonstration version of OrcaFlex.
2.10 INPUT DATA
Take a look through the input data forms. Start by resetting the program: click on the Reset button and answer
'Yes' to the warning prompt. This returns OrcaFlex to the reset state, in which you can edit the data freely. (While a
simulation is active you can only edit certain non-critical items, such as the colours used for drawing.)
Now click on the Model Browser button . This displays the data structure in tree form in the Model Browser.
Select an item and double click with the mouse to bring up the data form. Many of the data items are self
explanatory. For details of a data item, select the item with the mouse and press the F1 key. Alternatively use the
question mark Help icon in the top right corner of the form. Have a look around all the object data forms available to
get an idea of the capabilities of OrcaFlex.
w
Tutorial, Input Data
25
End of Tutorial
We hope you have found this tutorial useful. To familiarise yourself with OrcaFlex, try building and running models
of a number of different systems. The manual also includes a range of examples and technical notes which expand
on particular points of interest or difficulty.
Finally, please remember that we at Orcina are on call to handle your questions if you are stuck.
w
Examples, Introduction
27
3 EXAMPLES
3.1 INTRODUCTION
OrcaFlex comes with a tutorial and a comprehensive collection of example files. The full set of example files are on
the OrcaFlex CD (see CD:\Demo_CD\OrcaFlex\Examples), and when OrcaFlex is installed some or all of the
examples (depending on your installation options) are copied into the OrcaFlex installation directory. The examples
can also be found at www.orcina.com/SoftwareProducts/OrcaFlex/Examples.
The OrcaFlex help file describes each example case in detail. The OrcaFlex Help file can be downloaded from
www.orcina.com/SoftwareProducts/OrcaFlex/Documentation.
w
User Interface, Introduction
29
4 USER INTERFACE
4.1 INTRODUCTION
4.1.1 Program Windows
OrcaFlex is based upon a main window that contains the Menus, a Tool Bar, a Status Bar and usually at least one 3D
view. The window caption shows the program version and the file name for the current model.

Figure: The OrcaFlex main window
Within this main window, any number of child windows can be placed which may be:
3D View Windows showing 3D pictorial views of the model
Graph Windows showing results in graphical form
Spreadsheet Windows showing results in numerical form
Text Windows reporting status
Additional temporary windows are popped up, such as Data Forms for each object in the model (allowing data to be
viewed and modified) and dialogue windows (used to specify details for program actions such as loading and saving
files). While one of these temporary windows is present you can only work inside that window - you must dismiss
the temporary window before you can use other windows, the menus or toolbar.
The actions that you can perform at any time depend on the current Model State.
Arranging Windows
3D View, Graph, Spreadsheet and Text Windows may be tiled so that they sit side-by-side, but they must remain
within the bounds of the main window. If Auto-Arrange is selected then the program rearranges the windows using
the current scheme every time a new window is created.
4.1.2 The Model
OrcaFlex works by building a mathematical computer model of your system. This model consists of a number of
objects that represent the parts of the system - e.g. vessels, buoys, lines etc.
Each object has a name, which can be any length. Object names are not case-sensitive, so Riser, riser and RISER
would all refer to the same object. This behaviour is the same as for Windows file names.
The model always has two standard objects:
- General contains general data, such as title, units etc.
User Interface, Introduction
w

30
- Environment represents the sea, seabed, waves, current etc.
You can then use the Model Browser or the toolbar to add other objects to represent the parts of your system. There
is no limit, other than the capacity of your computer, to the number of objects you can add to the model. At any time,
you can save your model to a data file.
4.1.3 Model States
OrcaFlex builds and analyses a mathematical model of the system being analysed, the model being built up from a
series of interconnected objects, such as Lines, Vessels and Buoys. For more details see Modelling and Analysis.
OrcaFlex works on the model by moving through a sequence of states, the current state being shown on the status
bar. The following diagram shows the sequence of states used and the actions, results etc. available in each state.
RESET
Calculating
Statics
Simulating
STATICS COMPLETE
SIMULATION
COMPLETE
Calculate
Static
Position
Reset
Reset
Edit or
Reset
Run
Pause
Run
SIMULATION
PAUSED
Reset
Extend
Simulation
SIMULATION
UNSTABLE
Reset

Figure: Model States
The states used are as follows:
Reset
The state in which OrcaFlex starts. In Reset state you can freely change the model and edit the data. No results are
available.
Calculating Statics
OrcaFlex is calculating the statics position of the model. You can abort the calculation by CLICKING the Reset button.
Statics Complete
The statics calculation is complete and the static position results are available. You are allowed to make changes to
the model when in this state but if you make any changes (except for very minor changes like colours used) then the
model will be automatically reset and the statics results will be lost.
w
User Interface, Introduction
31
Simulating
The dynamic simulation is running. The results of the simulation so far are available and you can examine the model
data, but only make minor changes (e.g. colours used). You cannot store the simulation to a file while simulating -
you must pause the simulation first.
Simulation Paused
There is a simulation active, but it is paused. The results so far are available and you can examine the model data.
You can also store the part-run simulation to a file.
Simulation Complete
The simulation is complete. The simulation results are available and you can store the results to a simulation file for
later examination. You must reset the model, by CLICKING on the Reset button, before significant changes to the
model can be made.
You can use the Extend Dynamic Simulation facility if you wish to simulate for a further period of time.
Simulation Unstable
The simulation has become unstable. The simulation results are available and you can store the results to a
simulation file for later examination. This allows you to try and understand why the simulation has become
unstable. You may also want to examine the results up until the point at which the simulation became unstable.
However, please treat these results with caution - because the simulation eventually went unstable this indicates
that the dynamic simulation may not have converged at earlier simulation times.
You must reset the model, by CLICKING on the Reset button, before significant changes to the model can be made.
Typical model state flow
To illustrate how model states work, here is an example of a typical working pattern:
1. In Reset state, open a new model from a data file or use the current model as the starting point for a new model.
2. In Reset state, add or remove objects and edit the model data as required for the new model. It is generally best
to use a very simple model in the early stages of design and only add more features when the simple model is
satisfactory.
3. Run a static analysis (to get to Statics Complete state) and examine the static position results. Make any
corrections to the model that are needed - this will automatically reset the model. Steps (2) and (3) are repeated
as required.
4. Run a simulation and monitor the results during the simulation (in Simulating state).
5. If further changes to the model are needed then Reset the model and edit the model accordingly. Steps (2) to
(5) are repeated as required.
6. Finalise the model, perhaps improving the discretisation (for example by reducing the time step sizes or
increasing the number of segments used for Lines). Run a final complete simulation (to reach
Simulation Complete state) and generate reports using the results.
4.1.4 Toolbar
The toolbar holds a variety of buttons that provide quick access to the most frequently used menu items. The
selection of buttons available varies with the current Program State.
Button Action Equivalent Menu Item

Open File | Open

Save File | Save

Model Browser Model | Model Browser

New Vessel Model | New Vessel

New Line Model | New Line
User Interface, Introduction
w

32
Button Action Equivalent Menu Item

New 6D Buoy Model | New 6D Buoy

New 3D Buoy Model | New 3D Buoy

New Winch Model | New Winch

New Link Model | New Link

New Shape Model | New Shape

Calculate Statics Calculation | Single Statics

Run Simulation Calculation | Run Dynamic Simulation

Pause Simulation Calculation | Pause Dynamic Simulation

Reset Calculation | Reset

Start Replay Replay | Start Replay

Stop Replay Replay | Stop Replay

Step Replay Forwards Replay | Step Replay Forwards

Edit Replay Parameters Replay | Edit Replay Parameters

Add New 3D View Window | Add 3D View

Examine Results Results | Select Results

Help Contents and Index Help | OrcaFlex Help
4.1.5 Status Bar
The Status Bar is divided into three fields:
The Message Box
This is at the left hand end. It shows information about the progress of the current action, such as the name of the
currently selected object, or the current iteration number or simulation time. Error messages are also shown here.
When a statics calculation is done messages showing the progress of the calculation are shown in the message box.
To see all the messages from the statics calculation CLICK on the message box - the Statics Progress Window will
then be opened.
The Program State Indicator
In the centre and shows which state the program is in (see Model States).
The Information Box
This is on the right. It shows additional information, including:
- The global coordinates of the position of the cursor, in the current view plane.
- Distances when using the measuring tape tool.
4.1.6 Mouse and Keyboard Actions
As well as the standard Windows mouse operations such as selection and dragging OrcaFlex uses some specialised
actions. Clicking the right mouse button over a 3D View, Graph or Text Window displays a pop-up menu of
w
User Interface, Introduction
33
frequently used actions, such as Copy, Paste, Export etc. For wire frame 3D Views and Graph Windows the mouse
can be used for zooming. Simply hold the ALT key down and using the left mouse button, drag a box over the region
you want to view.
All of the menu items can be selected from the keyboard by pressing ALT followed by the underlined letters - this is
described in your Microsoft Windows Manual.
Example: To exit from the program (menu: File | Exit) press ALT+F then X, or ALT then F then X
A number of frequently used menu items may also be accessed by shortcut keys, such as CTRL+R to start a replay.
See the tables below. The shortcut keys are also displayed on the OrcaFlex menus. We suggest that as you become
more familiar with the operation of OrcaFlex that you memorise some of the shortcut keys for actions that you use
frequently.
Keys on Main Window
New model
CTRL+N
Open file
CTRL+O
Save file
CTRL+S
Open data
SHIFT+CTRL+O
Save data
SHIFT+CTRL+S
Help
F1
Print
F7
Show / hide Model Browser
F6
Switch between Model Browser and Main Window
SHIFT+F6
Calculate static position
F9
Run dynamic simulation
F10
Pause dynamic simulation
F11
Reset
F12
Open results selection form
F5
Go to next window
CTRL+F6
Go to previous window
SHIFT+CTRL+F6
Tile windows vertically
F4
Tile windows horizontally
SHIFT+F4
Close selected window
CTRL+F4
Close program
ALT+F4
Keys on Model Browser
Edit data
Enter
Rename object
F2
Switch to Main Window
SHIFT+F6
Locate
F3
Move selected objects
CTRL+M
Hide
CTRL+H
Show
CTRL+S
Hide all objects
SHIFT+CTRL+H
Show all objects
SHIFT+CTRL+S
View by Groups
SHIFT+CTRL+G
View by Types
SHIFT+CTRL+T
Lock / Unlock objects
CTRL+L
User Interface, Introduction
w

34
Cut
CTRL+X
Copy
CTRL+C
Paste
CTRL+V
Delete
DELETE
Close browser
ESC
Keys on Data Forms
Help
F1
Go to next data form
F6
Go to previous data form
SHIFT+F6
Display batch script names for currently selected
data item or table.
F7
Display Properties Report
ALT+ENTER
Show connections report
F8
Copy form
F9
Export form
F10
Print form
CTRL+P
Open calculator
F12
Close form
ALT+F4
Data Selection Keys
Go to next data item or table
TAB
Go to previous data item or table
SHIFT+TAB
Go to data item or table labelled with underlined letter
ALT+LETTER
Move around within a table
Select multiple cells in table SHIFT +
SHIFT+HOME
SHIFT+END
Go to first or last column in table
HOME, END
Go up or down table several rows at a time
PGUP, PGDN
Data Editing Keys
Enter new value for selected cell Type new value
Edit current value of selected cell
F2
Move around within new data value being entered , , HOME, END
Accept edit
RETURN
Accept edit and go to adjacent cell in table ,
Cancel edit
ESC
Cut selected cell(s) to clipboard
CTRL+X
Copy selected cell(s) to clipboard
CTRL+C
Paste from clipboard
CTRL+V
Fill selection from top (copy top cell down)
CTRL+D
Fill selection from left (copy leftmost cell to right)
CTRL+R
Fill selection from bottom (copy bottom cell up)
CTRL+U
SHIFT+CTRL+D
Fill selection from right (copy rightmost cell to left)
CTRL+L
SHIFT+CTRL+R
w
User Interface, OrcaFlex Model Files
35
Insert new rows in table
INSERT
Delete selected rows from table
DELETE
3D View Control Keys
Elevation view
CTRL+E
Plan view
CTRL+P
Rotate viewpoint up (increment view elevation angle) CTRL+ALT+
Rotate viewpoint down (decrement view elevation angle) CTRL+ALT+
Rotate viewpoint right (increment view azimuth angle) CTRL+ALT+
Rotate viewpoint left (decrement view azimuth angle) CTRL+ALT+
Rotate viewpoint +90
CTRL+Q
Rotate viewpoint -90
SHIFT+CTRL+Q
Zoom In
CTRL+I
Zoom Out
SHIFT+CTRL+I
Move view centre - fine adjustment
Move view centre - coarse adjustment CTRL +
Edit view parameters for current 3D view
CTRL+W
Reset to default view
CTRL+T
Set to default view
SHIFT +CTRL+T
3D View Control Keys (for wire frame graphics only)
Show / Hide local axes
CTRL+Y
Show / Hide node axes
CTRL+ALT+Y
Show / Hide out of balance forces
SHIFT+CTRL+Y
Undo most recent drag
CTRL+Z
Lock/Unlock selected object
CTRL+L
Place new object SPACE or RETURN
Edit selected object
CTRL+F2
Cut selected object to clipboard
CTRL+X
Copy selected object, or view if none selected,
to clipboard
CTRL+C
Paste object from clipboard (followed by mouse click
or RETURN to position the new object)
CTRL+V
Delete selected object
DELETE
Measuring tape tool SHIFT+CTRL+drag
Replay Control Keys
Start / Stop replay
CTRL+R
Replay faster
CTRL+F
Replay slower
SHIFT+CTRL+F
Step forwards one frame in the replay and pause
CTRL+A
Step backwards one frame in the replay and pause
CTRL+B
Edit replay parameters
CTRL+D
User Interface, OrcaFlex Model Files
w

36
4.2 ORCAFLEX MODEL FILES
4.2.1 Data Files
OrcaFlex models are saved to either binary data files (.dat) or text data files (.yml).
All versions of OrcaFlex can read binary data files. Text data files were only introduced in version 9.3a and so cannot
be read by older versions of the program.
Binary data files have strong version compatibility features. For example, when OrcaFlex attempts to open a binary
data file written by a later version of the program it is able to report informative compatibility warnings. The
program is not able to be as helpful and informative when working with text data files across program versions.
Whilst we strive to achieve as much compatibility as possible for text data files across program versions, we cannot
achieve the same level of compatibility as that for binary data files.
Text data files, as written by OrcaFlex, contain only data that is active in the model. For example, if implicit time
integration is selected in the model then all data relating to explicit time integration is excluded from the text data
file. On the other hand, binary data files contain all data whether or not it is active. The fact that the binary data file
contains inactive data can be very useful and so, in general, we would recommend that model building and
development is performed using the binary data file.
Text data files can be created without the use of OrcaFlex simply by entering text into a text editor. In general we
would not advocate this approach to model building. For very simple systems it may be a practical approach but
more complex models are usually much easier to build and inspect using the full capabilities and visualisation
strengths of OrcaFlex. On the other hand, text data files can be very effective when making minor changes to existing
models. Using text data files for such minor variations of existing models makes it much easier to monitor just what
has been changed, for example by using standard text differencing programs.
Text data files are highly readable and self-documenting which makes them ideal for QA and archival purposes.
Another application well suited to the use of text data files is automation.
4.2.2 Text Data Files
Text data files are used to define and represent OrcaFlex models in a human readable and easily editable format.
Text data files can be opened and saved by OrcaFlex. A very simple example is shown below:
General:
StageDuration:
- 10.0
- 50.0
Lines:
- Name: Line1
Length, TargetSegmentLength:
- [60.0, 5.0]
- [40.0, 2.0]
- [120.0, 10.0]
This example first defines a 10s build-up stage followed by stage 1 with 50s duration. Then a Line is created and
named "Line1". Finally the section data is specified: three sections are created with varying section lengths and
segment lengths. Default values are used for all data which are not specified.
Note: The formatting (colour, bold, italic etc.) in the examples here has been added to aid readability,
and is not a feature or requirement of text data files themselves.
YAML file format
Text data files use a standard file format called YAML and should be saved with the .yml file extension. The YAML file
format was chosen because it is extremely easy to read and write.
YAML files are plain text files and so can be edited in any text editor. We have found Notepad++ to be a very effective
editor for YAML files. Notepad++ has a tabbed interface for easy editing of multiple files and has code folding and
syntax highlighting facilities that work well with YAML files.
More details on the YAML format and Notepad++ can be obtained from the following web sites:
- http://en.wikipedia.org/wiki/YAML YAML page on Wikipedia.
- http://www.yaml.org/ Official YAML homepage.
w
User Interface, OrcaFlex Model Files
37
- http://www.yaml.org/spec/ Complete technical specification of YAML.
- http://notepad-plus.sourceforge.net/ Notepad++.
Elements of a text data file
The most basic element of a text data file is the name/value pair:
UnitsSystem: SI
The name (UnitsSystem) is written first, followed by a colon (:), then a SPACE, and then the value (SI). The names
used in text data files are the same as used to identify data items in batch script files.
Names and values in YAML files can contain spaces and other punctuation:
General:
StaticsMethod: Whole System statics
Lines:
- Name: 12" Riser
- Name: Umbilical, upper
- Name: "!$%^&*(){}[]=+-_#~'@:;/?.>,<\|
This example also contains a list. New items in a list are introduced by a dash (-) followed by a SPACE. Items in a list
can span more than a single line:
Lines:
- Name: Riser
TopEnd: End B
ContentsDensity: 0.8
- Name: Umbilical
TopEnd: End A
ContentsDensity: 0.0
Outline indentation is used to delimit blocks in a YAML file. This concept, known as significant indentation, is
perhaps a little unusual as most data formats and programming languages use symbols to indicate the beginnings
and ends of blocks. To understand this better consider the following example:
General:
UnitsSystem: SI
StaticsMethod: Whole System statics
Environment:
WaterDepth: 80
The two lines immediately following General: which are indented by two spaces, form a single block. This block is
ended by Environment: because it is not indented. A second block follows Environment: containing a single
name/value pair which defines the water depth.
Indentation must be made with SPACE characters rather than TAB characters. It does not matter how many spaces
are used so long as the indentation is consistent within each block. However, it is good practice to use the same
indentation throughout a file. OrcaFlex itself uses indentation of two spaces when it writes YAML files.
Lists are commonly used to represent tables of data:
Lines:
- Name: Line1
LineType, Length, TargetSegmentLength:
- [Line Type1, 60, 5]
- [Line Type1, 40, 2]
- [Line Type2, 120, 10]
The name LineType, Length, TargetSegmentLength indicates three columns of data, LineType, Length
and TargetSegmentLength which are interpreted in that order. The comma (,) character is used as a separator.
Note that you do not have to present the data in the same order as it appears in OrcaFlex. The following example is
equivalent to the previous example:
Lines:
- Name: Line1
Length, TargetSegmentLength, LineType:
- [60, 5, Line Type1]
User Interface, OrcaFlex Model Files
w

38
- [40, 2, Line Type1]
- [120, 10, Line Type2]
You can, if you wish, omit columns, in which case default values will be used:
Lines:
- Name: Line1
LineType, Length:
- [Line Type1, 60]
- [Line Type1, 40]
- [Line Type2, 120]
Some data are closely related to each other and can naturally be grouped in a text data file:
3DBuoys:
- Name: 3D Buoy1
InitialPosition: [0, 0, 10]
DragArea: [100, 100, 30]
Pen: [4, Solid, Yellow]
Without grouping the file would be significantly longer:
3DBuoys:
- Name: 3D Buoy1
InitialX: 0
InitialY: 0
InitialZ: 10
DragAreaX: 100
DragAreaY: 100
DragAreaZ: 30
PenWidth: 4
PenStyle: Solid
PenColour: Yellow
The majority of grouped data are X,Y,Z components and we adopt the convention that these components appear in
that order when grouped.
YAML files may contain comments which are introduced by a hash (#) character followed by a SPACE. All
subsequent text on the same line is comment and is ignored when OrcaFlex reads a text data file. Comments are not
preserved by OrcaFlex and any user comments in a manually edited YAML file opened with OrcaFlex will be lost if
the file is saved. Comments are formatted in green in the following example:
General:
# Statics
StaticsMethod: Whole System statics
BuoysIncludedInStatics: Individually Specified
# Dynamics
StageDuration:
- 8
- 16
TargetLogSampleInterval: 0.1
# Integration
SimulationIntegrationMethod: Implicit
ImplicitConstantTimeStep: 0.1
A text data file can be rather large, particularly if it contains vessel hydrodynamic data. Code folding editors can help
somewhat, but even so such files can be awkward to work with. The IncludeFile identifier allows you to move
data into a separate file which is then included in the main file:
# File: C:\Desktop\main.yml
VesselTypes:
- Name: FPSO
IncludeFile: FPSO.yml
Vessels:
- Name: Vessel1
VesselType: FPSO
The included file contains just the data for the vessel type:
w
User Interface, OrcaFlex Model Files
39
# File: C:\Desktop\FPSO.yml
Length: 240
RAOResponseUnits: degrees
RAOWaveUnit: amplitude
WavesReferredToBy: period (s)
# ... remainder of large file omitted ...
As well as making the main file shorter and more readable, using this approach can offer significant QA benefits.
In this example we have used a relative path and so the program will look for FPSO.yml in the same directory as the
main text data file.
A text data file saved by OrcaFlex contains some extra information:
%YAML 1.1
# Program: OrcaFlex 9.3a
# File: C:\Desktop\untitled.yml
# Created: 12:35 on 21/07/2009
# User: jamie
# Machine: holly
---
General:
# Statics
StaticsMethod: Whole System statics
BuoysIncludedInStatics: Individually Specified
# Dynamics
StageDuration:
- 8
- 16
TargetLogSampleInterval: 0.1
# Integration
SimulationIntegrationMethod: Implicit
ImplicitConstantTimeStep: 0.1
Environment:
# Seabed
SeabedType: Flat
WaterDepth: 100
SeabedModel: Linear
SeabedNormalStiffness: 100
# Current
RefCurrentSpeed: 0.4
RefCurrentDirection: 180
...
The section between the --- and ... lines is the main body of the file and is known in YAML terminology as a
document. Everything else is in fact optional and can be omitted. A YAML file can contain multiple documents,
separated by --- lines but OrcaFlex has no special treatment for such multi-document files and all data is read into
a single OrcaFlex model.
The first line (%YAML 1.1) is known as the YAML directive and specifies which version of YAML the file adheres to.
The YAML directive can be omitted. The rest of the header contains a number of comments detailing the version of
OrcaFlex which created the file, the file name etc. Again, these comments can be omitted.
Ordering issues
The order in which the data appear in a text data file is very important. OrcaFlex processes the file line by line in the
order in which it appears in the file.
Any references (e.g. Lines referring to Line Types) must be ordered so that the referenced object appears before
any references to it. So Line Types appear before Lines in the file. Similarly Vessels and 3D/6D Buoys appear before
Lines, Links, Winches and Shapes so that any connection references (e.g. a Line connected to a Vessel) can be
ordered correctly.
The other ordering issue relates to inactive data. Data which are not currently available are known as inactive data.
For example, data relating to the explicit solver are inactive when the implicit solver is selected. Inactive data cannot
be specified in a text data file.
User Interface, OrcaFlex Model Files
w

40
This rule has implications for the order in which data are presented in the text data file. Consider the following
example:
General:
InnerTimeStep: 0.01
SimulationIntegrationMethod: Explicit
Since the default integration method is the implicit solver the attempt to set the explicit time step
(InnerTimeStep) will fail because it is inactive data. The solution is to set the integration method before setting
the time step:
General:
SimulationIntegrationMethod: Explicit
InnerTimeStep: 0.01
This principle applies in general you should set as soon as possible all data which influences whether other data
are active.
Automation
Text data files can easily be modified and/or generated by computer programs/scripts. This means that the text
data file format, combined with a text processing script language (e.g. Perl, Python, Ruby etc.), can form a very
effective automation tool.
Note: OrcaFlex includes a number of automation facilities which do not require knowledge of
programming/scripting languages.
Some specialist features have been included in the text data file to aid with automation tasks, as illustrated in the
following example:
BaseFile: base.dat
Riser:
ContentsDensity: 0.8
Length[1]: 180
When this text data file is loaded in OrcaFlex the program does the following:
1. Opens the OrcaFlex binary data file named base.dat, located in the same directory as the text data file.
2. Sets the contents density for the OrcaFlex Line called "Riser" to 0.8.
3. Sets the length of the first section of "Riser" to 180.
The BaseFile identifier differs from IncludeFile in that it is able to load either binary or text data files
(IncludeFile only works with text data files). In addition BaseFile clears all existing data in the model before
loading the contents of the specified file. On the other hand, IncludeFile acts incrementally, starting from
whatever state the model is in when the IncludeFile identifier is encountered.
Standard text data files typically specify the entire model. The common automation task of making systematic
variations to a base case requires the ability to specify an existing object for which data modifications are to be
made. This is done using the object's name in the example above the Riser: line performs this step.
In a similar vein it is a common requirement to modify data for certain items in a list or table without specifying the
entire table. The indexing syntax (Length[1] in the example) performs this task. Note that as for batch script files the
indices are always 1-based.
Manually edited text data files
Saving a text data file, then editing it is a good way to create a base file for automation, or to discover data names
and data structure for an object. However, please be aware that this is a one way process. OrcaFlex reads and
interprets a text data file line by line to build the model incrementally, discarding the lines once processed. When
saving a file OrcaFlex exports each object, including any default values. Consequently the save process is not the
inverse of the load process and any manual modifications to the input file will be overwritten when the file is saved
by OrcaFlex.
In the short automation example above, if the model created when this file is loaded is saved, the text data file would
contain data for all the objects imported by the BaseFile command, the full data for the line Riser and other
default data not specified in the input file.
w
User Interface, Model Browser
41
4.2.3 Simulation Files
Results from OrcaFlex calculations (statics or dynamics) are saved to simulation files (.sim). These are binary files
containing the following sections:
- The model data. This section is essentially a binary data file.
- The latest calculated state (positions, loads etc.) of the model. This section allows static state results to be
retrieved and also enables partially-run dynamic simulations to be continued.
- The log file which contains results for a dynamic simulation. This section is not present for static state
simulation files.
Simulation files can be generated in a number of different ways:
- Interactively from the main OrcaFlex window. After a calculation (statics or dynamics) has performed then a
simulation can be saved using the File | Save or File | Save As menu items.
- From the batch processing form.
- From Distributed OrcaFlex.
- From the OrcaFlex programming interface (OrcFxAPI).
Similarly, results can be post-processed from simulation files in a number of different ways:
- Interactively from the results form.
- From the OrcaFlex spreadsheet.
- From the OrcaFlex programming interface.
4.3 MODEL BROWSER
At any time you can use the Model Browser to see what objects you have in your model. To display the model
browser, use the model browser button or the Model | Model Browser menu item or use the keyboard
shortcuts (F6 to open the model browser).
User Interface, Model Browser
w

42

Figure: Model Browser
The Model Browser consists of a list of all the objects in the model, arranged into categories according to object type.
Several symbols are used in the list of objects:

Categories can be opened, to show their contents, or closed, to simplify viewing a complex model.

Objects. Use double click to view or edit the object's data.

Locked. These objects cannot be dragged by the mouse in the 3D View.
You can navigate the list and select the object required by clicking with the mouse, or using the arrow keys and
return. If the list is longer than the window then you can either enlarge the window or use the scroll bar.
Note: More than one object can be selected in the model browser. This allows you to perform the same
action (e.g. delete, copy, hide, show, locate) on many objects at once. To select more than one object
you use the standard Windows key presses CTRL+CLICK to add to a selection and SHIFT+CLICK to
extend a selection.
Hint: If you have all objects in the model browser selected then it can be difficult to de-select them. The
simplest way is to use CTRL+CLICK to de-select one item and then to CLICK that item again to select
it alone.
Model Browser Facilities
The model browser menus, and its pop-up menu, provide the following model management facilities. For details of
keyboard shortcuts see Keys on Model Browser.
Add
Add a new object to the model.
w
User Interface, Model Browser
43
Delete
Delete the selected object from the model.
Cut/Copy
Cut or Copy the selected object to the clipboard.
Paste
Paste an object from the clipboard into the model. If the object is the Variable Data then all the variable data tables
are pasted in, with tables being renamed if necessary to avoid clashing with existing variable data names.
Note: You can use Cut/Copy and Paste to transfer objects between two copies of OrcaFlex running on the
same machine. You can also use it to transfer objects between two OrcaFlex data files (open the
source file and copy the object to the clipboard, then open the destination file and paste the object
back from the clipboard), but the Library facility (see below) provides an easier way of achieving
the same thing.
Move Selected Objects
Opens the Move Selected Objects Wizard.
Locate
Finds and highlights the object in any open 3D view windows. This is useful in complex models where many objects
are on the 3D view. The highlighting method is determined by the Locate Object Method preference.
Edit
Open the object's data form. This action can also be invoked by double-clicking an item, or by selecting it and
pressing RETURN.
Rename
Rename the selected object. You can also rename by single-clicking the selected object.
Lock/Unlock
Lock or unlock the selected object.
Hide/Hide All/Show/Show All
Control whether the objects are drawn on 3D views.
Reorder
You can use drag+drop with the mouse to reorder objects in the model. This is useful if you are working on the static
position of one particular line - you can drag it up to the top of the list of lines, so that it will be tackled first when
OrcaFlex does the static analysis.
Library
The Library menu facilities allow you to open a second data file. You can then Import objects from that second file
into the current model. You can also import using drag+drop with the mouse. For details see Libraries.
Notes: The second data file is referred to as the library model, but in fact it can be any OrcaFlex data file.
The library facilities therefore provide an easy way to move objects between different OrcaFlex
data files.
If the object being imported is the variable data then all the variable data tables are transferred,
with tables being renamed if necessary to avoid clashing with existing variable data names.
Switch to Main Window
The browser's Window menu enables you to switch focus to the main form without closing the browser window. A
corresponding command on the main form's Window menu switches focus back.
4.3.1 Model Browser Views
There are 2 ways of viewing objects in the model browser: by Types or by Groups. You can switch between views
by clicking on the model browser View | View by Groups/Types menu items, or though the popup menu.
User Interface, Model Browser
w

44
Types View
This is the traditional model browser view. The browser has a number of folders containing objects of the same
type. For example all the lines are contained in a folder called "Lines". Objects can be reordered within a folder but
they cannot be moved to a different folder.
To select this view you should click the View | View by Types menu item.
Groups View
This view allows you to customise how the objects are arranged in the model browser. You can add any number of
browser groups to the browser. These groups are simply folders in the browser tree. Groups can contain any
number of objects or other groups. In this way a hierarchical structure for the model can be created.
To select this view you should click the View | View by Groups menu item.
To add groups you select the Edit | Add Group menu item or use the popup menu. Groups can be renamed in the
same way as other objects. Objects can be added to a group by dragging the objects onto the group. Any number of
objects can be added to a group in one operation by first selecting the objects and then dragging them. This multiple
selection is performed using the standard Windows key presses CTRL+CLICK to add to a selection and SHIFT+CLICK to
extend a selection. Groups can be dragged into other groups and so a hierarchical structure for the model can be
created.
As well as allowing you the freedom to structure your model however you like, the Groups View allows you to
perform the same action (e.g. delete, copy, hide, show, locate) on all objects in a group. The grouping structure is
also used when cycling through data forms- clicking the Next button takes you to the next object in the groups view.
4.3.2 Move Selected Objects Wizard
This wizard allows you to move and rotate a number of objects en masse. The wizard is most useful when you select
multiple objects, a group or a number of groups or even the entire model.
To use the wizard you must first open the Model Browser and select the objects which you wish to move. Then click
Move Selected Objects on the browser's edit menu (also available from the popup menu).
Selecting objects
Before using the wizard you must select (in the model browser) the objects which you wish to move. There are a
variety of ways in which you can do this. We list a few of the more useful methods below:
- Select a single object.
- Select multiple objects. You can do this in the model browser using CTRL+CLICK to add to a selection and
SHIFT+CLICK to extend a selection.
- Select an object type folder. This works when the model browser is in Types View mode. For example select the
Lines folder if you wish to move all the lines in a model.
- Select a group. This works when the model browser is in Groups View mode. This allows you to move all objects
in that group.
- Select the entire model. This is easiest to do when the model browser is in Groups View mode. The first item in
the model browser is titled "Model". Select this item if you wish to move all objects in the model.
There is no limitation to the type of selections you can make. If you wish to move 2 groups then select both of them
(using CTRL+CLICK) and open the wizard.
Note: If your selection includes an item which contains other objects (e.g. a group or an object type
folder) then all objects contained by that item will be moved by the wizard.
Points
The wizard shows a list of the points associated with each selected object. For objects like buoys, vessels and shapes
a single point is shown. For objects like lines, links and winches with multiple connection points the list shows each
connection point for that object. The list also shows the global coordinates of each point.
For each point you have the option of including or excluding it in the move operation. This might be useful if you
wanted to move only the End A line connection points and leave the End B connection points unchanged, for
example.
w
User Interface, Libraries
45
Move specified by
There are 4 methods of specifying how the objects are moved.
Displacement
For this method you specify a position change (i.e. a displacement) which will be applied to all the points included in
the move operation.
Polar Displacement
This method is similar to the Displacement method. Here you specify a direction and distance which determine a
position change. This is applied to all the points included in the move operation.
New Position
Here you give a reference point and its new position. The same displacement is applied to all other points included
in the move.
Rotation
This method rotates the included points in the horizontal plane. You specify an angle of rotation and a central point
about which the rotation is performed. Note that the environment data (e.g. wave and current directions, seabed
direction etc.) is not included in the rotation.
Moving the objects
Once you have decided which objects to include in the move and how the move is specified you are ready to actually
move the objects. This is done by clicking the Move button. If you change your mind and decide not to move the
objects then simply click the Close button.
4.4 LIBRARIES
An OrcaFlex Library is a collection of OrcaFlex objects (line types, lines, buoys etc.) stored in an ordinary OrcaFlex
data file. For example, a library may contain all the standard Line Types that you use regularly. Once such a library
file has been built you can quickly build new models using the library - this gives faster model building and can
make QA procedures safer.
To open a library file, use the File | Libraries menu or the Library menu on the Model Browser. Note that any
OrcaFlex data file can be opened as a library file, and this makes it easy to use the model browser to copy objects
from one model to another.
4.4.1 Using Libraries
Libraries allow you to easily import objects from one OrcaFlex model to another. To do this run OrcaFlex and open
the model browser by clicking the model browser button or the Model | Model Browser menu item, or pressing
F2. The model browser should look like:
User Interface, Libraries
w

46

Now you open your file as a library. To do this click the open button on the model browser and select your data
file. Now the model browser will look like:

We are now going to copy some objects from the right hand pane to the left hand pane. To do so select the required
line types and click the import button . As an alternative to the import button the objects can be dragged from
the right hand pane to the left hand pane or the Library | Import menu item can be used.
Note that you can select a number of objects and import them all in one go. You do this by using the standard
Windows key presses CTRL+CLICK to add to a selection and SHIFT+CLICK to extend a selection. If you do this the
library will look like:
w
User Interface, Libraries
47

Once you have imported the required objects you can close the library by selecting the Library | Close menu item
on the model browser. Now the model browser looks like:

Here are some other points about using library files:
User Interface, Menus
w

48
- Because library files are simply ordinary OrcaFlex data files, you can temporarily treat any OrcaFlex data file as
a library. This allows you to import objects from one OrcaFlex data file to another.
- You can re-size the model browser by dragging its border. You can also control the relative sizes of its two
panes, by dragging the right border of the left pane.
- You can view, but not edit, the data for a library model object, by double clicking it in the Model Browser or by
selecting it and using the pop-up menu.
- When an object is imported from a library, the current model may already have an object of that name. In this
case OrcaFlex automatically gives the object a new name based on the old name.
4.4.2 Building a Library
A library file is simply an OrcaFlex data file - you can use any OrcaFlex data file as a library. In practice it is most
convenient to put your commonly used OrcaFlex objects into files designated as OrcaFlex library files.
You build a library file in the same way as you build a standard OrcaFlex data file. Starting with a blank model you
can add objects in the usual way and set their data. Typically, however, you would want to reuse objects that had
previously been created and used for a project.
To do this you would open the model browser and load your project data file as a library using the open button
on the model browser. Then you import the required objects as described in Using Libraries. This procedure can be
repeated with a number of different data files until you have all the objects you wish to keep in the library. Then you
should close the model browser and save the data file by clicking the button on the main OrcaFlex form. This
data file can now be used as a library.
Notes: Because they are OrcaFlex models, libraries contain General and Environment data, but these
would not usually be used, except perhaps for the General data Comment field, which can act as a
title for the library.
Because the library file is just an ordinary OrcaFlex data file, it can also be opened using File |
Open. This allows you to edit the data of the objects in the library.
You can set up as many library files as you wish. For example you might have separate libraries for Line Types,
Attachment Types, Vessel Types, Variable Data Sources etc., or you may choose to use just one library for
everything. The model browser's Library menu contains a list of the most recently used libraries.
4.5 MENUS
OrcaFlex has the following menus:
- The File menu has the file opening and saving commands, plus commands for printing or exporting data or
results and managing libraries.
- The Edit menu has data and object editing facilities.
- The Model menu gives access to the model building facilities.
- The Calculation menu provides commands for starting and stopping analyses, including batch processing.
- The View menu provides view control.
- The Replay menu provides replay control.
- The Graph menu gives you access to facilities related to the currently active graph window.
- The Results menu leads to the results facilities.
- The Tools menu allows you adjust preferences and to lock or unlock objects.
- The Workspace menu allows you to save and restore collections of view, graph and spreadsheet windows.
- The Window menu gives access to the various windows that are available, and allows you to adjust the layout of
your windows.
- The Help menu leads to the various help documentation that is available.
w
User Interface, Menus
49
4.5.1 File Menu
New
Deletes all objects from the model and resets data to default values.
Open
Open an OrcaFlex file either a data file (.dat or .yml) or a simulation file (.sim).
You can also open an OrcaFlex file by dragging and dropping it onto the OrcaFlex window. For example if you have
Windows Explorer running in one window and OrcaFlex running in another then you can ask OrcaFlex to open a file
by simply dragging it from Explorer and dropping it over the OrcaFlex window.
If you open a data file then OrcaFlex reads in the data, whereas if you select a simulation file then OrcaFlex reads in
both the data and the simulation results. To read just the data from a simulation file, you can use the Open Data
menu item.
Save
Save an OrcaFlex file either a data file (.dat or .yml) or a simulation file (.sim) to the currently selected file name.
If a file of that name already exists then it is overwritten.
If calculation results (either statics or dynamics) are available then a simulation file will be saved. Otherwise a data
file will be saved.
Note: You cannot save a dynamic simulation while it is running you must pause the simulation first.
Save As
This is the same as Save but allows you to specify the file name to save to. If a file of that name already exists then
you are asked whether to overwrite the file.
When saving data you can choose either the binary file format (.dat) or the text file format (.yml) from the Save as
type drop down list.
Open Data
Read the data from an existing data file or simulation file, replacing the existing model. If a simulation file is
specified then OrcaFlex reads just the data from it, ignoring the simulation results in the file.
Save Data
Save the data to the currently selected file name, using extension .dat or .yml. If a file of that name already exists
then it is overwritten.
Save Data As
This is the same as Save Data but allows you to specify the file name to save to. If a file of that name already exists
then you are asked whether to overwrite the file.
You can choose either the binary file format (.dat) or the text file format (.yml) from the Save as type drop down list.
Compare Data
Compares the data of two OrcaFlex models. See Comparing Data for details.
Submit to Distributed OrcaFlex
Submit the current file for processing by Distributed OrcaFlex. For this option to be available, either the Distributed
OrcaFlex Viewer or Client must also be installed on the machine.
Libraries
You can create new libraries of OrcaFlex objects, or open existing libraries. You can then import objects from the
library into your existing model, or export objects from your existing model to the library.
User Interface, Menus
w

50
Export
Display the Export form, allowing you to export Data, 3D Views, Graphs, Spreadsheets or Text Windows. See also
Copy.
Selected Printer
Allows you to change the selected printer.
Printer Setup
Calls up the Printer Setup dialogue window. This standard Windows dialogue is used to select which printer to use,
and allows you to control the way that it is used - the details vary from printer to printer, and depend on the printer
manufacturer's device driver currently installed. Please refer to the manuals for your printer as well as the
Microsoft documentation.
Print
Display the Print form, allowing you to print Data, 3D Views, Graphs, Spreadsheets or Text Windows. See Printing.
Most Recent Files
List of the most recently used files. Selecting an item on the list causes the file to be opened.
Exit
Close OrcaFlex.
4.5.2 Edit Menu
Undo Drag
Undo the most recent drag. This is useful if you accidentally drag an object.
Cut
Copies the current selection to the clipboard and then deletes it.
Copy
If there is a currently selected object (see Selecting Objects), then that object is copied to the clipboard. You can then
use Edit | Paste to create duplicate copies of the object. The data for the object is copied to the clipboard in text form,
from where it can be pasted into a word processor document.
Note: After pasting into a word processor, you will probably need to put the text into a fixed space font
since much of the data is in tables.
If there is no currently selected object then the currently selected 3D view, text window, graph or spreadsheet is
copied to the clipboard.
Paste
Insert object from clipboard. This can be used to duplicate an object several times within the model. After selecting
Paste, the object is inserted at the next mouse CLICK position in a 3D view.
If the current window is a Spreadsheet then the contents of the clipboard are pasted into the spreadsheet.
Delete
If the active window is a 3D View then the currently selected object is deleted. Before the object is deleted, any
connected objects are disconnected, and any graphs associated with the object are closed.
If the active window is a Spreadsheet then the selected cells are cleared.
w
User Interface, Menus
51
Select All
Selects all the cells in a Spreadsheet.
Copy All Data
Copy the whole model to the clipboard. The model data is copied to the clipboard in text form, from where it can be
pasted into a word processor document.
4.5.3 Model Menu
Model Browser
Toggles the visibility of the Model Browser.
New Vessel
New Line
New 6D Buoy
New 3D Buoy
New Winch
New Link
New Shape
Create new objects. The mouse cursor changes to the New Object symbol . The object is placed at the position of
the next mouse CLICK within a 3D view. A three dimensional position is generated by finding the point where the
mouse CLICK position falls on a plane normal to the view direction and passing through the Default View Centre.
Vessels are always placed initially at the sea surface, that is with their origin at Z = Sea surface Z (see Vessel Data).
Show Connections Report
Displays a spreadsheet containing information about all object connections in the model.
Truncate Object Names
Old versions of OrcaFlex (before 7.4b) cannot read files that contain long object names, i.e. longer than 10
characters. This menu item truncates any long object names in the model. You should do this if you wish to send a
file to another user whose version of OrcaFlex is older than 7.4b.
Delete Unused Types
Deletes any types (e.g. Line Types, Clump Types etc.) that are not in use. This is sometimes useful to simplify a data
file, or to find out which types are in use.
Delete Unused Variable Data Sources
Deletes any variable data sources that are not in use. This is sometimes useful to simplify a data file, or to find out
which variable data sources are in use.
Use Calculated Positions
This menu item is available after a successful static iteration or when the simulation is finished or paused.
If the model is in the statics complete state then clicking the menu item sets the initial positions of buoys, vessels
and free line ends to be the calculated static positions. This can be desirable when setting up a model, since the
positions found are likely to be good estimates for the next statics calculation.
User Interface, Menus
w

52
If the model is in the simulation paused or stopped state, then clicking the menu item sets the initial positions of
buoys and free line ends to be the latest positions in the simulation. This is useful when OrcaFlex statics fails to find
an equilibrium configuration. In such cases you can use dynamics with no wave motion to find the static equilibrium
position and then click Use Calculated Positions.
If a replay is active then clicking the menu item sets the initial positions of buoys and free line ends to be the
positions at the latest replay time.
Use Specified Starting Shape for Lines
This menu item is an extension of Use Calculated Positions. As well as setting the initial positions of buoys, vessels
and free line ends it modifies data for all Lines in the following way:
1. The Step 1 Statics Method is set to User Specified.
2. The User Specified Starting Shape data are set to the calculated node positions. As described above these
positions are either the results of a static calculation or the results of a dynamic simulation.
Use Static Line End Orientations
This menu item is only available after a successful static analysis. Clicking the menu item sets the line end
orientation data, for all line ends in the model that have zero connection stiffness, to the orientations found in the
static analysis. This is done as follows.
- For any line end with zero bend connection stiffness, the end azimuth and end declination will be set to the
azimuth and declination of the end node, as found by the static analysis.
- If the line includes torsion and the line end connection twist stiffness is zero, then the end gamma will be set to
the gamma of the end node, as found by the static analysis.
This action can be useful if you want to set the line end orientation to that which gives zero end moments when the
line is in its static position. To do this first set the end connection stiffness values to zero, then run the static analysis
and then click the Use Static Line End Orientations menu item. You can then set the end connection stiffness to
their actual values.
4.5.4 Calculation Menu
Single Statics
Start the single statics calculation (see Static Analysis). Progress and any error messages that occur are reported in
the Statics Progress Window, which is shown as a minimised window icon. The statics calculation can be
interrupted by CLICKING the Reset button.
Multiple Statics
Starts the multiple offset statics calculation (see Multiple Statics). Progress and any error messages that occur are
reported in the Statics Progress Window, which is shown as a minimised window icon. The statics calculation can be
interrupted by CLICKING the Reset button.
Run Dynamic Simulation
Start a dynamic simulation (see Dynamic Analysis). If necessary, OrcaFlex will automatically do a statics calculation
first. During the simulation, the Status Bar shows the current simulation time and an estimate of the time that the
simulation will take, and all 3D View windows and Graphs are updated at regular intervals.
Pause Dynamic Simulation
Pause the simulation. To save the results of a part-run simulation you need to pause it first. The simulation can be
restarted by CLICKING the Run button.
Extend Dynamic Simulation
This facility is only available when the current simulation is either paused or completed. It adds another stage to the
current simulation, without having to reset. You are asked to specify the length of the new stage. You can then
continue the simulation, without having to restart it from scratch. This is particularly useful if you have a simulation
that has not been run for long enough.
w
User Interface, Menus
53
Note that data for the new stage, e.g. for winch control and vessel prescribed motion, are initially set to be the same
as for the previous stage. However, the data for the new stage can be edited because the new stage has not yet
started.
Reset
Reset the model, discarding any existing results. The model can then be edited or a new model loaded.
View Warnings
Displays a window allowing you to review all warnings displayed by OrcaFlex during a calculation (statics or
dynamics).
This feature is particularly useful for simulations run in batch mode or by Distributed OrcaFlex. In these
circumstances warnings are not displayed since to do so would require user intervention.
Line Setup Wizard
Opens the Line Setup Wizard. The wizard is only available when the current simulation is in Reset state.
Wave Scatter Conversion
Opens the Wave Scatter Conversion form. This facility converts a scatter table of sea states to a scatter table of
regular (i.e. individual) waves.
Batch Processing
Run a batch of analyses automatically while the program is unattended. See Batch Processing for details.
4.5.5 View Menu
Change Graphics Mode
Toggles the graphics mode between wire frame and shaded.
Edit View Parameters
Adjust the View Parameters for the highlighted 3D View. You can adjust the view centre position, view size and
direction. See View Parameters.
Rotate Up / Down / Left / Right
Change the view direction, for the highlighted 3D View, by the view rotation increment (see Preferences).
Plan
Set the highlighted 3D View to a plan view (Elevation = +90).
Elevation
Set the highlighted 3D view to an elevation view (Elevation = 0).
Rotate 90 / Rotate -90
Increase (or decrease) the view azimuth by 90, for the highlighted 3D view.
Zoom In / Zoom Out
Click the zoom button to zoom in (decrease view size) or SHIFT+CLICK it to zoom out (increase view size). Applies
only to the currently highlighted 3D View.
Reset to Default View
Reset the currently highlighted 3D view back to the default view for this model.
User Interface, Menus
w

54
Set as Default View
Set the default view for this model to be the currently highlighted 3D view.
Axes
This submenu gives you control of the 3D View Axes Preferences.
Superimpose Times
Allows model configurations for different times of the simulation to be superimposed in 3D Views. See Superimpose
Times.
Current Position
Draws the model at the latest time - this action is used to cancel the Superimpose Times view.
4.5.6 Replay Menu
Edit Replay Parameters
Adjust the Replay Parameters, such as the period of simulation to replay, the time interval between frames, the
replay speed etc. For more information see Replays.
Start / Stop Replay
Starts or stops the replay.
Step Replay Forwards, Step Replay Backwards
Step the replay forwards or backwards one frame at a time. Click the button to step forwards; CLICK with SHIFT held
down to step backwards.
Replay Faster / Slower
Increase or decrease the replay frame rate (replay speed).
Export Video
Exports the replay as a video clip in AVI file format. See Replays for more details.
4.5.7 Graph Menu
Use Default Ranges
Sets the graph axes to their original ranges
Values
Displays a spreadsheet containing the numerical values on which the graph is based.
Spectral Density (only available for time history graphs)
Opens a new spectral density graph.
Empirical Cumulative Distribution (only available for time history graphs)
Opens a new empirical cumulative distribution graph.
Rainflow half-cycle Empirical Cumulative Distribution (only available for time history graphs)
Opens a new rainflow half-cycle empirical cumulative distribution graph.
Properties
Opens the graph properties form (which can also be opened by double clicking the graph).
w
User Interface, Menus
55
4.5.8 Results Menu
Select Results
Display the results form which allows you to choose from the currently available selection of graphs and results
tables. Graphs such as Time Histories, XY Graphs and Range Graphs may be created before a simulation has been
run, thus allowing you to watch the variables during a simulation.
Fatigue Analysis
Opens the Fatigue Analysis form.
Modal Analysis
Opens the Modal Analysis form.
Report Vessel Response
Opens the Vessel Response form.
4.5.9 Tools Menu
Lock / Unlock Selected Object
Locking an object prevents it from being accidentally dragged or connected using the mouse on 3D views, for
example if you nudge the mouse slightly while trying to DOUBLE CLICK. Lock / Unlock Selected Object toggles the lock
on the currently selected object. If the lock is on, it will be switched off. If the lock is off, then it will be switched on.
Locked Objects may still have their positions edited in the data Edit Forms. The status of the object locks is shown
by symbols in the Model Browser.
Lock / Unlock All Objects
Locks or unlocks all objects in the model.
Set Thread Count
Allows you to change the number of execution threads used by OrcaFlex for parallel processing.
Preferences
Allows you to control various program settings so that you can customise the program to the way you prefer to
work. See Preferences.
4.5.10 Workspace Menu
Open Workspace
Opens a previously saved workspace file and restores the window layout described in that workspace file.
Save Workspace
Save the current window layout to a workspace file.
Make default for this file, Make default for this folder
Makes the current window layout the default workspace for the current simulation file or for the current folder,
respectively. The default workspace for a simulation file will be restored whenever you open that file. The default
workspace for a folder will be restored whenever you open any simulation file in that folder.
If a default workspace exists for a both a file and the folder containing the file, then the default for the file is used.
Use file default, Use folder default
Applies the default workspace to the current model. This is useful if you have changed the window layout and wish
to restore the default workspace layout without re-loading the model.
Remove file default, Remove folder default
Deletes the default workspace.
User Interface, 3D Views
w

56
Most Recent Files
List of the most recently saved workspaces in the directory which contains the current model. Selecting an item on
the list causes the workspace to be loaded.
4.5.11 Window Menu
Add 3D View
Add another 3D View Window. Having multiple views on screen allows you to watch different parts of the system
simultaneously, or to see different views at the same time (for example a plan and an elevation).
Tile Vertical, Tile Horizontal
Arranges all the windows (3D View, graph or spreadsheet) so that they fill the main window area and fit side by side
without overlapping.
Auto Arrange
If this is checked then the program automatically tiles windows every time a new window is created or deleted.
Switch to Model Browser
This command, and the corresponding command on the model browser's Window menu, enable you to switch focus
between the main form and the model browser window.
Statics Progress
Displays the Statics Progress Window.
Window List
This is a list of all currently open windows. If a window is hidden under others it can be selected easily from this list.
4.5.12 Help Menu
OrcaFlex Help
Opens the OrcaFlex on-line help system.
What's New
Gives a list of recent improvements and alterations to OrcaFlex.
Tutorial
Opens the help file at the start of the OrcaFlex tutorial.
Examples
Opens the help file at the introduction to the OrcaFlex Examples topics.
Keyboard Shortcuts
Lists the keyboard shortcuts used by OrcaFlex.
Orcina Home Page
Opens the Orcina homepage (www.orcina.com).
About
Displays a window giving the program version, details about Orcina Ltd and various other miscellaneous
information.
4.6 3D VIEWS
3D Views are windows showing a spatial representation of the model. Two distinct types of 3D View are available:
wire frame shows an isometric projection of the model; shaded draws the model as solid objects with lighting,
shading, perspective and hidden line removal.
w
User Interface, 3D Views
57

Figure: A wire frame 3D View (left) alongside a shaded 3D View (right)
3D View windows may be rotated, zoomed and panned to allow any aspect of the system to be viewed. The view is
controlled by a number of View parameters - see View Parameters - and the caption of a 3D View window shows the
current View Azimuth and View Elevation values, while a scale bar in the view indicates the current View Size.
Multiple view windows may be placed side-by-side so that you can view different parts of the system
simultaneously or view from different angles (for example a plan and elevation view). This allows you to build non-
in-plane models on screen with the mouse. Further 3D View windows are added by using the Window | Add 3D
View menu item or by CLICKING on the Add 3D View button on the tool bar. Windows may be arranged by dragging
their borders or using the Window | Tile Vertical/Horizontal menu items. 3D Views may be closed by CLICKING the
cross at the top right-hand corner.
The objects in a 3D view are "live" in the sense that you can use the mouse pointer to select objects, drag them
around in the view and make connections between objects. See Selecting Objects, Creating and Destroying Objects,
Dragging Objects, Object Connections, for details. If you DOUBLE CLICK on an object then the data form for that object
appears, so that you can examine or edit its data.
Note: When using the shaded view objects cannot be selected, dragged etc. For this reason, the wire
frame view is most useful when building your model.
After running a simulation, or loading a simulation file, a dynamic replay (animation) can be shown in one or more
3D View windows. A replay shows a sequence of snapshots of the model taken at specified intervals throughout part
or all of the simulation. Replays may be played in just one 3D View window, or in all of them simultaneously - see
Preferences.
Finally, 3D Views may be printed by selecting the view desired and using the print menu. Also, the picture may be
exported to a file or the windows clipboard.
Measuring Tape Tool (only available in wire frame mode)
You can measure distance on a 3D view using the measuring tape tool. Hold down the SHIFT and CTRL keys and then
drag a line between any two points - the distance between them is displayed on the status bar. Note that this is the
distance in the plane of the 3D view.
User Interface, 3D Views
w

58
4.6.1 View Parameters
The view shown in a 3D view window is determined by the following parameters, which can be adjusted using the
view control buttons or the Edit View Parameters item on the View menu.
View Centre
Defines the 3D global coordinates of the point that is shown at the centre of the window.
View Size
The diameter of the view area. It equals the distance represented by the smaller of the 2 sides of the view window.
This parameter must be greater than zero.
Example: If the window on screen is wider than it is high, and View Size = 100.0 then an object 100 units
high would just fill the height of the window.
View Azimuth and View Elevation
These determine the direction (from the view centre) from which the model is being viewed. The azimuth angle is
measured from the global X direction towards the global Y direction. The elevation angle is then measured upwards
(downwards for negative elevation angles) from there. The view shown is that seen when looking from this
direction - i.e. by a viewer who is in that direction from the view centre.
Example: View Elevation +90 means looking in plan view from above, and View Elevation = 0, View
Azimuth = 270 (or -90) means a standard elevation view, looking along the Y axis.
Window Size
You can adjust the size of a 3D view window either by dragging the window border, or by setting its window size on
the view parameters form. The latter is sometimes useful when exporting a view or exporting a replay video, since it
makes it easier to export two different cases and get matching sizes.
Graphics Mode
Can be either of the following options:
- Wire frame: the model is represented using a wire frame, isometric projection.
- Shaded: the model is represented as solid objects with lighting, shading, perspective and hidden line removal..
Default View
Each model has its own Default View Parameters that are saved with the model data. Whenever a new 3D view is
created, it starts with this default view. You can set an existing 3D view to the default view by using the Reset to
Default View command (on the view menu or pop-up menu).
To set the default view parameters, first set up a 3D View to the default view that you want and then use the Set as
Default View command (on the view menu or pop-up menu).
See also the Reset to default view automatically preference.
4.6.2 View Control
You can adjust the view in a 3D view window using the view control buttons:
Button Menu Item Shortcut Action

View | Rotate Up CTRL+ Increase view elevation
+ SHIFT
View | Rotate Down CTRL+ Decrease view elevation

View | Rotate Right CTRL+ Increase view azimuth
+ SHIFT
View | Rotate Left CTRL+ Decrease view azimuth

View | Zoom In
CTRL+I
Zoom in
w
User Interface, 3D Views
59
Button Menu Item Shortcut Action
+ SHIFT
View | Zoom Out
SHIFT+CTRL+I
Zoom out

View | Change Graphics Mode
CTRL+G
Changes graphics mode

View | Edit View Parameters
CTRL+W
Edit View Parameters
You can also use the mouse wheel button to change view. Turn the wheel to scroll the 3D view up and down. Turn it
with the CTRL key held down to zoom in or out on the location at which the mouse is currently pointing.
For more precise control you can set the view parameters explicitly using the View Parameters form.
Finally, 3D views can also be controlled using the View menu and various shortcut keys - see Mouse and Keyboard
Actions and Navigating in 3D Views.
4.6.3 Navigating in 3D Views
Moving
Moving in 3D Views can be achieved by a variety of means:
- Drag the 3D View with the SHIFT key held down. We call this direct manipulation of the view centre panning.
- Use the scroll bars on the 3D View.
- Use the cursor keys . Use these cursor keys with the CTRL key held down to effect larger shifts.
- Move up and down with the PGUP and PGDN keys.
- Edit the View Centre in the View Parameters form.
Rotating
Rotating in 3D Views can be achieved by a variety of means:
- Drag the 3D View with the CTRL key held down. For shaded views only you can rotate about the viewer position
(as opposed to rotating about the view centre) by holding down the ALT key (as well as the CTRL key) whilst
dragging.
- Use the rotate buttons . Pressing these with the SHIFT key held reverses the rotation.
- Use the Rotate Up, Rotate Down, Rotate Left or Rotate Right menu items or their shortcut keys CTRL+ALT+
. For shaded views only you can rotate about the viewer position by holding the ALT key down whilst
selecting these menu items or shortcuts.
- Use the Plan, Elevation, Rotate 90 or Rotate -90 menu items or their shortcut keys CTRL+P, CTRL+E, CTRL+Q and
SHIFT+CTRL+Q.
- Edit the View Azimuth and View Elevation in the view parameters form.
Zooming
You can zoom into and out of 3D Views by using the zoom button , the zoom menu items and the shortcut keys
CTRL+I and SHIFT+CTRL+I. In addition, you can zoom in or out using the mouse wheel button with the CTRL key held
down.
The following methods of zooming are only available in wire frame 3D Views.
Also you can zoom in on a particular region of interest in a 3D view by defining a rectangle around it on screen using
the mouse. To do this, hold the ALT key down, place the mouse in one corner of the desired rectangle and press
down the left mouse button while dragging the mouse to the opposite corner. When you release, the region selected
will be expanded to fill the window.
To zoom out, repeat the operation holding down the SHIFT and ALT keys - the region shown in the window will
shrink to fit into the rectangle drawn.
You can also zoom in and out by a fixed amount, keeping the same view centre, by using ALT+CLICK and
ALT+SHIFT+CLICK.
User Interface, 3D Views
w

60
4.6.4 Shaded Graphics
The shaded graphics mode renders the model as solid objects with lighting, shading, perspective and hidden line
removal.

Figure: Shaded graphics
Using the Shaded Graphics mode
To a large extent there is no extra work required to build a model for the shaded graphics mode. You are able to
build a model or take an existing model designed using the wire frame mode and simply change to the shaded
graphics mode to see a high quality shaded rendering of your model. There are a number of things you can do to
improve your experience with the shaded graphics mode as described below.
Translucency
The Sea Surface and Seabed are drawn as textured surfaces. If there are objects on the other side of these surfaces
then they can be obscured. These surfaces are drawn with a user-specified amount of translucency which allows you
to compensate for this.
Importing 3D models
Objects like Lines are straightforward to draw. OrcaFlex uses the Line Type contact diameter to determine the
thickness of each segment of the Line.
Objects like Vessels present more difficulties. OrcaFlex by default will draw a solid, filled-in shape based on the wire
frame data you have specified. While this can be sufficient you may prefer something less simplistic. Alternatively
you may import a more detailed 3D model, e.g. the turret moored FPSO above. You can import 3D models for 6D
Buoys, Wings and Shapes as well as for Vessels.
We have provided a very basic selection of generic models which you are free to use. There are models of an FPSO, a
turret moored FPSO, an installation vessel, a semisub and a subsea template. For information on generating and
importing 3D models specific to your project please refer to www.orcina.com/Support/ShadedGraphics.
w
User Interface, 3D Views
61
Viewer Position
Because the shaded graphics mode uses perspective it requires the concept of the viewer position as well as the
viewer centre. The isometric wire frame view has no such requirement. OrcaFlex defines the viewer position to be in
a line in the view direction (defined by the view azimuth and view elevation) at a distance of view size * 1.5 from the
view centre. It is possible to rotate the view around both the view centre and around the viewer position.
Video export
Just as for wire frame views OrcaFlex can export video files of a replays in shaded views. When producing videos it
is very important to use compression, otherwise the video file size becomes unreasonably large. The software that
performs this compression is called a codec.
For wire frame replays OrcaFlex uses a built-in codec called run-length encoding. This codec is not suitable for
shaded replays and in fact there is no suitable built-in codec in Windows. We would recommend using an MPEG-4
codec of which many are available. In our experience the freely available XVID codec performs very well. The XVID
codec can be downloaded from www.orcina.com/Support/ShadedGraphics.
Should you wish to use a different codec you can select this from the Preferences form.
Hardware Requirements
The shaded graphics mode does require the presence of a DirectX 9 compatible graphics card. In our experience the
most important factor to consider when choosing a card to work with shaded graphics is the amount of memory. We
would recommend using a card with 256MB or more.
It is also important to make sure that your computer's graphics settings specify a colour mode of 16 bits (65536
colours) or better.
Notes: If your machine's graphics capabilities are insufficient then the shaded graphics mode may fail to
function properly or indeed fail to function at all. For example, low quality, blocky images usually
indicate a graphics card with insufficient memory. This problem can also manifest itself by failure
to draw the sky which appears plain white.
For best results you should centre your model close to the global origin. The Move Selected Objects
facility can help you do this.
4.6.5 How Objects are Drawn
Each object in the model is drawn as a series of lines using the Pen Colour, Line Width and Style (solid, dashed etc.)
defined in the drawing data for that object. You can change the pen colours etc. used at any time by editing the
drawing data for that object. To change the pen colour, select and CLICK the colour button on the data form and then
CLICK on the new colour wanted.
You can also exclude (or include) individual objects from the 3D view, by opening the model browser, selecting the
object and then using the Hide (or Show) command on the browser's Edit or pop-up menu.
Notes: In Windows, a line width of zero does not mean "don't draw" - it means draw with the minimum
line width. To suppress drawing either set the line style to null (the blank style at the bottom of the
drop down list) or else hide the object.
On some machines the display driver cannot draw the dashed or dotted pen styles and instead
draws nothing. So on such machines only the solid and blank pen styles work.
Wire Frame Drawing
For wire frame views the various objects are drawn as follows:
- The various coordinate systems can be drawn as small triplets of lines showing their origin and the orientation
of their axes. The wave, current and wind directions can be drawn as arrows in the top right hand corner of 3D
views. You can control both what is drawn (see 3D View Drawing Preferences) and the drawing data used.
- The Seabed is drawn as a grid using the seabed pen.
- The Sea Surface is drawn as a grid or as a single line. This is controlled by the user's choice of Surface Type as
specified on the drawing page on the Environment data form. If the Surface Type is set to Single Line then one
line is drawn, aligned in the wave direction. If the Surface Type is set to Grid then a grid of lines is drawn. This
line or grid is drawn using the sea surface pen.
User Interface, 3D Views
w

62
- Shapes are drawn either as wire frames (Blocks, Cylinders and Curved Plates) or as a grid (Planes). As well as
controlling the pen colour, width and style, for shapes you can also control the number of lines used to draw the
shape.
- Vessels are drawn as a wire frame of edges and vertices defined by the user on the Vessel and Vessel Types data
forms.
- 3D Buoys are drawn as a single vertical line of length equal to the height of the buoy.
- 6D Buoys are drawn as a wire frame of edges and vertices. For Lumped Buoys, the vertices and edges are
defined by the user on the buoy data form. For Spar Buoys and Towed Fish the vertices and edges are
automatically generated by OrcaFlex to represent the stack of cylinders that make up the buoy. As an option
Spar Buoys and Towed Fish can be drawn as a stack of circular cylinders - this is the default setting.
- Wings are drawn as rectangles in either the 6D Buoy pen or the Wing Type pen as determined in the Wing Type
data.
- Lines are drawn as a series of straight lines, one for each segment, joining points drawn at each node. Separate
pens are used for the segments and nodes, so you can, for example, increase the pen width used for the nodes to
make them more visible. There is also, on the Line Data form, a choice of which pen to use to draw the segments.
- Clumps are drawn as a thin vertical bar.
- Drag Chains are drawn using the colour and line style specified on the attachment types form. The hanging part
of the chain is drawn as a line, of length equal to the hanging length and at the angle calculated using the above
theory. The supported part of the chain (if any is supported) is separately drawn as a blob at the seabed, directly
beneath the node. The drag chain drawing therefore directly reflects the way in which the chain is modelled.
- Flex Joints are drawn as a circular blob using the colour and line style specified on the attachment types form.
- Links and Winches are drawn as a straight line segments joining the connection points.
Lines, Links and Winches and Shapes are special slave objects that can be connected to other master objects - see
Connecting Objects. To allow these connections to be made, each slave object has a joint at each end that you can
connect to a master object or else leave Free. When the program is in Reset or Statics Complete state these joints are
drawn as follows:
The joint at End A of a line or end 1 of a Link or Winch is drawn as a small triangle. The other joints are drawn as
small squares. This distinguishes which end of a Line, Link or Winch is which.
If the joint is connected to a master object, then it is drawn in the colour of the master object to which it is
connected. If the joint is Free, then it is drawn in the colour of the Line, Link or Winch to which it belongs.
Shaded Drawing
For shaded views the various objects are drawn as follows:
- View axes and global axes are drawn as small triplets of lines showing their origin and the orientation of their
axes. The wave, current and wind directions can be drawn as arrows in the top right hand corner of 3D views.
You can control both what is drawn (see 3D View Drawing Preferences) and the drawing data used.
- The Sea Surface and Seabed are drawn as textured surfaces using their respective pen colours. Both surfaces
can be drawn with user-specified levels of translucency.
- Shapes are drawn as solid objects and Planes allow for user-specified levels of translucency. Alternatively
Shapes can be represented by an imported 3D model.
- Vessels are drawn as a solid, filled-in shape based on the wire frame data. Alternatively Vessels can be
represented by an imported 3D model.
- 3D Buoys and Clumps are drawn as an ellipsoid with the specified volume and height.
- Lumped 6D Buoys are drawn as a solid, filled-in shape based on the wire frame data. Spar Buoys and Towed
Fish are drawn as solid objects using the specified cylinder geometry. Alternatively 6D Buoys can be
represented by an imported 3D model.
- Wings are drawn as plates using their specified span and chord. Alternatively they can be represented by an
imported 3D model.
- Lines are drawn as a series of cylinders, one for each segment using the contact diameter as specified on the
Line Type form. There is also, on the Line Data form, a choice of which pen to use to draw the segments.
w
User Interface, 3D Views
63
- Drag Chains are drawn as a chain with bar diameter derived from the drag chain's effective diameter.
- Flex Joints are drawn as cylinders with radius 2R and length 4R where R is the radius of the node to which the
flex joint is attached.
- Links and Winches are drawn as a series of cylinders joining the connection points. The diameter of the
cylinders can be specified on the object's data form.
4.6.6 Selecting Objects
A single CLICK on or near an object in a 3D View selects it ready for further operations. The currently selected object
is indicated in the Status bar. All objects have a hot zone around them. If several objects have overlapping hot zones
at the mouse position, they will be selected in turn at subsequent CLICKS.
To deselect the object (without selecting another object) CLICK on the 3D view away from all objects. CLICK on an
object to open its data form.
4.6.7 Creating and Destroying Objects
When the model is in Reset or Statics Complete state then you can create and destroy objects using the mouse.
To create a new object, CLICK on the appropriate new object button on the tool bar or select the Model | New Object
menu item. The mouse cursor changes to show this. A new object of that type is created at the position of the next
CLICK on a 3D View.
You can also create a new object by copying an existing one. To do this select the object and press CTRL+C to take a
copy of it. You can now press CTRL+V (more than once if you want more than one copy) - again the mouse cursor
changes and the copy object is pasted at the position of the next mouse CLICK in a 3D view. This method of creating a
new object is particularly useful if you want an almost identical object - you can create a copy of it and then just
change the data that you want to differ.
To destroy an object, simply select it and then press the DELETE key. You will be asked to confirm the action.
4.6.8 Dragging Objects
An unlocked object may be dragged to relocate it by pressing the mouse button down and holding it down while
moving the mouse. When the mouse button is released, then the object will be positioned at the new location. The
current coordinates of the object are shown in the Status Bar during the drag operation.
Note: Objects must be dragged a certain minimum distance (as specified in the Preferences form) before
the drag operation is started. This prevents accidental movement of objects when DOUBLE CLICKING
etc.
Objects may be locked to prevent unintended drag operations moving them (see Locking an object). Their
coordinates may still be edited on their data form.
Note: Slave objects that are connected are moved relative to their master's local origin. Other objects are
moved in the global coordinate frame.
Dragging is only available in Reset or Statics Complete states, and when the object is not locked.
4.6.9 Connecting Objects
Unlocked slave objects (e.g. Lines, Links, etc.) can be connected to master objects using the mouse in a 3D View (see
Object Connections). First select the end of the slave that you want to connect by CLICKING on or near its end joint.
Then hold down the CTRL key while CLICKING on the master object - the two will then be connected together. This
operation is only permitted for master-slave object pairs, for example connecting a line to a vessel. The connection is
indicated in the Status Bar and the joint connected is drawn in the colour of the master object to show the
connection.
To Free a joint - i.e. to disconnect it - select it and then CTRL+CLICK on the sea surface.
To connect a joint to a Fixed Point, select it and then CTRL+CLICK on the global axes.
To connect an object to an Anchor (a fixed point with a coordinate relative to the seabed), select it and then
CTRL+CLICK on the seabed grid. If the object is close to the seabed then the program snaps it onto the seabed. This
allows an object to be placed exactly on the seabed. If you require an anchor coordinate close to, but not on the
seabed, connect it to the seabed at a distance and then drag it nearer or edit the coordinate in the Data Form.
User Interface, Replays
w

64
4.6.10 Printing, Copying and Exporting Views
3D Views may be printed, copied to the windows clipboard, or exported to a windows graphics metafile, so that the
pictures may be used in other applications such as word processors and graphics packages.
First select the view and adjust the viewpoint as desired. Then to copy to the clipboard press CTRL+C, or select Copy
from the pop-up menu. The pop-up menu also has commands to print or export the 3D view. If needed, you can first
adjust the printer setup using the Printer Setup command on the pop-up menu or on the File menu.
If you are printing the view on a black and white printer (or are transferring the view into a document which you
intend to print on a black and white printer) then it is often best to first set OrcaFlex to output in monochrome (use
the Tools|Preferences|Output menu item). This avoids light colours appearing as faint shades of grey.
After a 3D view has been transferred to another application you should be careful not to change its aspect ratio,
since this will produce unequal scaling in the vertical and horizontal directions and invalidate the scale bar. In Word
you can maintain aspect ratio by dragging the corners of the picture, whereas if you drag the centres of the sides
then the aspect ratio is changed.
4.7 REPLAYS
A Replay is a sequence of 3D views shown one after another to give an animation. A replay is therefore like a short
length of film, with each frame of the film being a snapshot of a model as it was at a given time.
There are various controls and parameters that allow you to control a replay. You can also view a series of
snapshots all superimposed onto a single view - see Superimpose Times.
There are two types of replay:
- Active Simulation Replays show the model as it was at regularly spaced times during the currently active
simulation. This type of replay is therefore only available when a simulation is active and can only cover the
period that has already been simulated. If you have a time history graph window open when the replay is run,
then the replay time is indicated on the graph.
- Custom Replays are replays where you have complete control over frames which make up the replay. This
means that, for example, you are not restricted to regularly spaced times; you can have frames from different
simulation files in the same replay; you can include frames showing the static configuration of a model; you are
able to vary the view size, view angles and view centre to achieve panning, rotating and zooming effects. Custom
replays were originally introduced to help visualise series of static snapshots, for example during a lowering
operation. However, the facility is very powerful and you are certainly not restricted to this application. See
Custom Replays for details.
Export Video
Replays can be exported as a video clip in AVI file format, using the Export Video button on the replay parameters
form. An AVI file is generated containing the replay using the most recently selected 3D view window and using the
same period, frame interval and speed as the replay.
When you export a video clip you will be asked to select a file name for the video using the standard Save File
window. At the bottom of this window is a checkbox titled Include frame details in video. If this is selected then
each frame in the video has details of that frame (e.g. simulation time) written in the top left hand corner of the
frame. There is also a button which provides a link to the Video preferences.
AVI is a standard video format, so the file can then be imported into other applications, for example to be shown in a
presentation. The compression method (the codec) used for the generating the video file can be set on the
Preferences form.
Note: AVI files can be very large if the window size is large or there are a lot of frames in the replay. Also,
resizing video clips (after pasting into your presentation) will introduce aliasing (digitisation
errors), so it is often best to set the 3D View window size to the required size before you export the
video.
4.7.1 Replay Parameters
The replay can be controlled by the following parameters that can be set in the Replay Parameters form,
accessed using the Replay Parameters button.
w
User Interface, Replays
65
Replay Period
The part of the simulation that the replay covers. You can select to replay the whole simulation, just one simulation
stage (an asterisk * denotes an incomplete stage), the latest wave period or else a user specified period. If you select
User Specified then you can enter your own Start and End Times for the replay period. These can be set to '~'
which is interpreted as simulation start time and simulation finish time respectively.
Interval
The simulation time step size between frames of the replay. The value '~' is interpreted as the actual sample
interval, i.e. the smallest possible interval.
Using shorter intervals means that you see a smoother animation (though the extra drawing required may slow the
animation).
Example: For a simulation with stages of 8 seconds each, selecting stage 2 and a replay time step of 0.5 seconds
causes the replay to show 16 frames, corresponding to t=8.0, 8.5, 9.0 ... 15.5.
Target Speed
Determines how fast the replay is played. It is specified as a percentage of real time, so 100% means at real time,
200% means twice as fast etc. As a special case, the fastest allowable target speed (10000% at the moment) is taken
to mean "as fast as possible".
Note: The specified target speed is not always achievable because the computer may not be able to draw
each frame quickly enough. When this happens, the replay will be played as fast as possible.
Replays may be slow if you specify thick lines (line width>1) for objects in the model, since this can
increase the drawing time.
Continuous
Continuous means replaying like an endless film loop, automatically cycling back to the first frame after the last
frame has been shown; this is suitable for replays of whole cycles of regular cyclic motion. Non-continuous means
that there will be a pause at the end of the replay, before it starts again at the beginning; this is more suitable for
non-cyclic motion.
All Views
If this is selected, then the replay is shown in all 3D Views simultaneously, allowing motion to be viewed from
several different viewpoints. Otherwise the replay is played in the currently selected view window only.
Show Trails
If this is selected, then when each frame of the replay is drawn the previous frame is first overdrawn in grey - this
results in grey 'trails' showing the path of each object.
4.7.2 Replay Control
The replay can be controlled from the Replay menu, by using toolbar buttons or with shortcut keys. In addition,
some replay settings can only be modified on the Replay Parameters form.
The toolbar has a section dedicated to replay control:

Figure: Replay toolbar controls
The replay control buttons, menu items are listed in the table below:
Button Menu Item Shortcut Action

Replay | Start Replay
CTRL+R
Start replay

Replay | Stop Replay
CTRL+R
Stop replay

Replay | Step Replay Forwards
CTRL+A
Step to next frame and pause
User Interface, Replays
w

66
Button Menu Item Shortcut Action
+ SHIFT
Replay | Step Replay Backwards
CTRL+B
Step to previous frame and pause
Replay | Replay Faster
CTRL+F
Speed up replay
Replay | Replay Slower
SHIFT+CTRL+F
Slow down replay

Replay | Replay Parameters
CTRL+D
Edit replay parameters
Replay Slider Control
The final part of the replay toolbar is the replay slider. This allows direct control of the replay time.
Drag the slider to the left to move to an earlier part of the replay and to the right to move to a later part. For fine
grained adjustment of replay time you can use the Replay | Step Replay Forwards and Replay | Step Replay
Backwards actions or alternatively their shortcuts, CTRL+A and CTRL+B. The replay time is displayed on and can be
controlled from Time History graphs.
4.7.3 Custom Replays
Custom replays allow you to piece together arbitrary frames from different OrcaFlex files. Each frame of the replay
can be either the static configuration, or a snapshot of a specified time in a dynamic simulation file.
Using frames of static configurations you can string together a series of static snapshots giving, for example, an
animation of an installation procedure. Using frames from dynamic simulation files allows you to create replays
where the frames are from one or more simulations, and, if you wish, vary the time intervals between frames.
Frames of both static and dynamic configurations can be included in the same custom replay. In addition you are
able to vary the view size, view angles and view centre to achieve panning, rotating and zooming effects.
To use the custom replay feature you must first set the Replay Type data item on the Replay Parameters form to
Custom Replay. Next you must build the custom replay which is most easily done using the Custom Replay Wizard,
which can be opened by clicking the Custom Replay Wizard button.
Replay Specification
This is the file containing the custom replay specification that is the file that is saved by the Custom Replay Wizard.
Custom Replay Parameters
Custom replays also make use of some of the parameters needed for standard simulation replays. These parameters
are Target Speed, Continuous, All Views and Show Trails.
4.7.4 Custom Replay Wizard
The Custom Replay Wizard allows you to define a series of replay sections. Each replay section can show either:
1. A series of regularly spaced snapshots from a simulation file.
2. The static configuration of a model specified by either a data file or a simulation file.
Different files can be used for different replay sections.
Custom Replay Files
When you have built your custom replay you must save it using the File menu or save button on the toolbar. Custom
replay files can be opened in a similar way.
We recommend that you save your custom replay file before you start setting up the replay sections. This is because
once you have saved the custom replay file you will be able to use relative paths for the OrcaFlex file names.
Custom Replay Data
Custom replay specifies view parameters (size, position, angles and graphics mode)
If this data item is not checked then the replay will use the view parameters of whichever 3D View window it
appears in. In this mode of operation you will be able manually to pan, rotate and zoom the 3D View using the
normal buttons and shortcuts.
w
User Interface, Replays
67
If this data item is checked then you will be required to specify the view parameters (view size, view centre, view
azimuth, view elevation and graphics mode) for each replay section. This allows you to include panning, rotating
and zooming effects in your replay.
While learning how custom replays work we recommend that you do not check this data item.
Use smoothed panning, rotating and zooming effects
This item is only available if the "Custom replay specifies view parameters" option is enabled. If you are panning,
rotating and zooming during replay sections then the transition from one section to another sometimes appears to
be disjointed. If this option is checked then the transition between sections is smoothed.
Frame interval in real time
OrcaFlex needs to know how fast to play the replay. This data item specifies the interval, in real time, between each
replay frame, assuming a target replay speed of 100%. If the target replay speed is, say 200%, then the interval
between frames will be half this value, and so on.
Replay Sections
You can specify any number of replay sections. For each replay section you must also specify the following:
Replay Section Name
This is a descriptive name for the replay section. When the replay is running OrcaFlex displays a description of the
current frame in the message box on the status bar - this includes the replay section name. This description can also
be included in exported videos.
OrcaFlex File Name
The model to be used for this section either a data file (.dat or .yml) or a simulation file (.sim).
Dynamics
This setting determines whether the replay section defines snapshots from a dynamic simulation or a static
configuration. If the file is a data file then the replay section will show the static configuration and so this data item
cannot be edited.
The custom replay displays static configurations for a data file by loading the file and then performing the static
calculation. This can be time consuming static state simulation files can be used instead to avoid the overhead of
performing statics each time the replay is shown.
Simulation Time From, Simulation Time To
This specifies the period of the dynamic simulation covered by the replay section. These are OrcaFlex simulation
times for the specified simulation file of this replay section.
If the replay section is a static snapshot then these data items are not editable.
Number of Frames
This is the total number of frames in the replay section. If your custom replay is a series of static snapshots then you
would usually set this value to 1.
Included in Replay
This allows you to exclude certain sections from the replay. This may be useful while developing the custom replay
because it allows you to concentrate on particular replay sections.
PowerPoint slide number
Custom replays can be used to control PowerPoint slideshows. To make use of this you need to be showing a
PowerPoint slideshow while the custom replay is running. At the start of each replay section OrcaFlex will change
the PowerPoint slide to the slide number specified here.
If you do not wish to use this feature you should leave this data item at its default value of '~'.
View Parameter data
The following data items are only available when the specifies view parameters option is checked.
User Interface, Data Forms
w

68
From View Parameters, To View Parameters
The view size, view centre, view azimuth and view elevation for the first and last frames of the replay section. These
view parameters are varied between these values for the other frames in the replay section.
Hint: These values can be copied from OrcaFlex's View Parameters form using the clipboard.
Graphics Mode
Specifies either the Wire frame or Shaded graphics mode for the replay section.
4.7.5 Superimpose Times
Allows model configurations for different times of the simulation to be superimposed in 3D Views. Use
View | Current Position to return to the normal view.
The data items are:
List of Times
The simulation times which will be superimposed.
All Views
If this box is checked then the superimposed view is drawn in all 3D View windows. If not then it is drawn in the
selected 3D View.
4.8 DATA FORMS
Each object in the model has data items that define its properties. The data are examined and edited in the object's
Data Form, which can be accessed by various methods:
- use the Model Browser
- DOUBLE CLICK the object in a 3D view
- RIGHT CLICK the object in a 3D view and use the pop-up menu.
If a simulation is active then most data items cannot be changed since they affect the calculation, but you can change
things like the object's colour.
Control Buttons
Ok
Accepts the data changes made and then closes the form.
Cancel
Cancels the data changes made and then closes the form.
Next
Accepts the data changes made and then displays the next form in sequence. Holding the SHIFT key down while
CLICKING the Next button accepts the changes and then displays the previous data form in sequence. You can also
use the keyboard shortcutsF6 for next and SHIFT+F6 for previous.
Pop-up Menu
The pop-up menu on a data form provides various facilities, including:
- The data form can be printed, copied to the clipboard or exported to a file. The data for the whole model may be
printed using the File | Print menu item.
- Access to the next and previous data form and to the Variable Data form.
- The batch script names for the currently-selected block of data items.
- Data forms for 3D Buoys, 6D Buoys, Vessels and Lines provide a Connections Report. This is a spreadsheet
listing information about other objects connected to it. Note that the same information, but for all objects in the
model, can be displayed using the Model | Show Connections Report menu item.
w
User Interface, Data Forms
69
- On data forms of some model objects, a report of the properties of that object. The report displays properties
like weight in air, displacement, weight in water etc. These reports are currently available for General Data, 3D
Buoys, 6D Buoys, Vessels, Lines, Line Types and Clump Types.
Calculator
A simple calculator is available from any OrcaFlex data form. It can be opened from the popup menu or alternatively
by pressing F12. Numbers can be transferred to and from it with standard Windows copy (CTRL+C) and paste
(CTRL+V). The calculator can also be closed by pressing F12 - if you do this then the value in the calculator is
transferred to the active edit cell.
4.8.1 Data Fields
Data items on each Data Form are displayed in Fields, generally with related fields organised into Groups or Tables.
You can select a field with the mouse, or use the keyboard to navigate around the form. TAB moves from group to
group, and the arrow keys move across the fields in a group.
The following types of fields are used:
Text
A general string of text, used for example for titles and comments.
Name
Each object is given a name, which you can edit. Object names must be unique - you cannot have two objects with
the same name. Certain names are reserved for special purposes: Fixed, Anchored and Free (see Connecting
Objects).
Numeric
Numbers can be entered in a number of formats such as 3, 3.0, 0.3, .3 or 3.0e6 or 3.0E6. It is possible to enter more
digits than those shown in the field, but beware that it will not be possible to see them again without editing again
and using the arrow keys to examine the rest of field.
For some numeric data items the value '~' is permitted. For example this is sometimes used to mean 'default value'.
Details are given in the descriptions of the relevant data items.
Spin Buttons
These are small buttons with up and down arrows, used for incrementing and decrementing the associated field
(such as the number of entries in a table). Using the mouse, CLICK on the upper or lower parts of the button to
increment or decrement the associated counter.
Multi-choice Buttons
These are used when a number of options are available. Activate the button to step on to the next available option.
Check Boxes
These show a tick, meaning selected, or are blank, meaning not selected. CLICK or press RETURN to change.
Colour Selection
These show as a block of colour. DOUBLE CLICK or press RETURN to open the Colour Selection dialogue window. The
desired colour may now be selected.
List Boxes
These show the current selection, such as the name of another object that this object is connected to. DOUBLE CLICK
or press RETURN to show a List Box, and then select another item and RETURN to accept the new choice.
4.8.2 Data Form Editing
The TAB, SHIFT+TAB, HOME, END and ARROW keys and the mouse can be used to navigate around the Edit Form.
Editing mode is entered by DOUBLE CLICKING a cell with the mouse, or by starting to type alphanumeric characters,
which are entered into the field as they are typed. The characters that have been typed can be edited by using the
arrow keys to move around (now within the field) and the BACKSPACE and DELETE keys.
Editing mode is ended, and the new value takes effect, when you press RETURN or select another field or button on
the form. To end editing mode but reject the edit (and so keep the old value) press ESC.
User Interface, Results
w

70
Many numeric fields have limits on the range of values that can be entered, for example an object's mass must
always be greater than zero. Warnings are given if invalid values are typed.
Input can also be from the Windows clipboard. CTRL+C copies the selected field or block of fields to the clipboard
whilst CTRL+V pastes from the clipboard into the selected field. In this way data can be easily transferred to and
from Spreadsheets, Word Processors, etc.
Mouse Actions
CLICK
Select Field
CLICK+DRAG,
SHIFT+CLICK
Select a block of fields
DOUBLE CLICK
Start Edit Mode in this field (please also see Data Fields)
SECONDARY
BUTTON CLICK
Context sensitive pop-up menu for copying, exporting and printing the form and, for some
model objects, viewing additional properties
Group Movement
TAB
Next Group
SHIFT+TAB
Previous Group
ALT+...
Move to the group with this letter underlined in its heading
Field Movement
Go to adjacent row or column
HOME
Go to leftmost column
END
Go to rightmost column
PAGE UP
Go to top row
PAGE DOWN
Go to bottom row
Table Editing
INSERT, DELETE Insert or delete rows
Start Editing
0..9, A..Z
Edit (replace)
During Editing
, HOME, END Move within field
End Editing
ESC
Cancel edit
Accept edit and move to previous/next row
RETURN
Accept edit
Copy / Paste
CTRL+C
Copy selected field/block to clipboard
CTRL+V
Paste from clipboard into selected field
CTRL+D
Fill selection from top (copy top cell down)
CTRL+R
Fill selection from left (copy leftmost cell to right)
CTRL+U
SHIFT+CTRL+D
Fill selection from bottom (copy bottom cell up)
CTRL+L
SHIFT+CTRL+R
Fill selection from right (copy rightmost cell to left)
4.9 RESULTS
4.9.1 Producing Results
You can access results by either CLICKING on the Results button on the toolbar or by using the Select Results
menu item; the Select Results form then appears.
w
User Interface, Results
71
There is a Keep Open switch on the form's context menu, which allows you to choose whether the form
automatically closes when you select a result, or alternatively stays open (and on top) until you explicitly close it.
Graphs and Tables can be sent straight to the printer by CLICKING the Print button. If the values of a graph are
required in text form then CLICK the Values button - this give the values in a Spreadsheet window, which can handle
multiple variables if desired.
The Select Results form allows you to select the results you want by specifying:
Result Type
This option allows you to select which of the various types of results output you require. Results are available as text
tables (summary results, full results, offset tables, statistics, linked statistics, extreme statistics or line clashing
reports) or as graphs (time histories, range graphs, XY graphs, offset graphs or spectral response graphs). The types
of results available depend on the current model state.
Object
The object for which you want results (selected in the same way as in the Model Browser) and for some objects
which point in the object.
- For the Environment you must specify the global X,Y,Z coordinates of the point for which you want results.
- For 6D Buoys that have wings attached, results for the buoy and for each wing are available separately.
- For 6D Buoys and Vessels the position, velocity and acceleration results are reported at a user specified point on
the object. This point is specified in object local coordinates.
- For lines you must specify the arc length along the line - see Line Results.
Period
For time histories, XY graphs and range graphs you must specify the period of the simulation to be included. This
can be one of the stages of the simulation, the Whole Simulation, Specified Period or Latest Wave (only available
if the wave is regular). The Specified Period values can be set to '~' which is interpreted as simulation start time and
simulation finish time respectively.
For Range Graphs the period can also be Static State or Instantaneous Value. The Static State period is only
available after a statics calculation and the graph shows a curve of the values in the static configuration. The
Instantaneous Value period is available when a simulation has been run. It shows a curve of the values at the
instantaneous simulation time. This is normally the latest simulated time. However, if a replay is active then the
graph shows a curve of values at the active replay time. This allows you to see, for an entire line, how a results
variable evolves over a simulation.
Variable
The desired variable(s).
Definitions of the results variables can be obtained by selecting them in the Variable list box and then pressing F1.
Logging for results
The summary and full results are taken directly from the current state of the model. All the other results are derived
from the simulation log file which OrcaFlex creates automatically when a simulation is run. As the simulation
progresses, OrcaFlex samples the variables for each object at regular intervals and stores the sampled values in the
log file. All time histories, statistics and range graphs are derived from the simulation log file.
You can control the time resolution of the results by setting the Target Sample Interval data item on the general data
form. This must be done before the simulation is started. Decreasing the sample interval will improve the time
resolution of the results (and increase the number of samples taken). However, because more samples are taken this
will also increase the size of the simulation file that is created.
Spike Logging
A special algorithm is used for logging results that tend to vary rapidly to ensure that any spikes that may occur
between samples are recorded. We refer to this algorithm as spike logging.
Line Results
OrcaFlex spike logs Effective Tension, Torque, Clash Force, Clash Energy, Solid Contact Force, End Force results and
Vortex Force results. In addition other results which are derived from these quantities are effectively spike logged
User Interface, Results
w

72
by association. Such variables include Wall Tension, Normalised Tension, Direct Tensile Strain, ZZ Strain, Worst ZZ
Strain, Direct Tensile Stress, von Mises Stress, Max von Mises Stress and ZZ Stress.
Link and Winch Results
OrcaFlex spike logs Tension and Velocity.
Solid Results
OrcaFlex spike logs contact force magnitude.
General Results
OrcaFlex spike logs Implicit solver iteration count and Implicit solver time step.
Inadequate segmentation warning
If any lines have, during the simulation, gone into greater compression than their segment Euler load then a warning
note is added to the Results form. Such lines are marked with the symbol in the Model Browser. Usually this
means that finer segmentation is needed in some sections of these lines in order to model compression adequately.
Offset warning
If any of the multiple statics calculations have failed then a warning note is added to the Results form.
4.9.2 Selecting Variables
Each object has associated with it:
- A currently selected variable that will be used for graphs.
- A set of statistics variables that will be included in statistics reports.
For the currently selected object, the currently selected variables are shown in a list on the results selection form.
If Statistics results are selected, then the list shows the set of variables that will be included in the statistics report
and you can add or remove variables by CLICKING on them in the list.
If a Time History is selected, the list shows the (single) currently selected variable and you can select a different
variable by CLICKING on it in the list.
You can also multi-select variables, using:
CLICK
select one variable
DRAG
select a range of variables
SHIFT+CLICK
select a range of variables
CTRL+CLICK
add / remove one variable
CTRL+DRAG
add / remove range of variables
If more than one variable is selected, then the Values button will give a single Spreadsheet Window with a time
history column for each selected variable, and the Graph button will give a separate Graph Window for each
variable.
New columns can be appended to existing time history spreadsheet windows, as follows:
- Select the spreadsheet window to which you want to append, by clicking on it.
- Then open the Select Results form and select the variables that you want to append.
- Then hold the CTRL button down and click the Values button.
- Provided that the selected spreadsheet window is a time history values table and that the time periods for both
sets of histories match, then the new time histories will be appended to the active window. This allows you to
have a single window containing results from different objects.
4.9.3 Summary and Full Results
These spreadsheet windows give the current state of an object or of the whole model. For example, in
Statics Complete state the full results tables show the positions of objects in their static position. If a simulation is
active, then they show the positions of objects at the latest time calculated.
To obtain one of these results tables:
w
User Interface, Results
73
- Select Summary Results or Full Results on the Results form.
- Select the object required.
- Click the Table button.
The summary results are simply an abbreviated form of the full results, in which the results for lines only include
the end nodes, not all of the intermediate nodes.
When the model is in Statics Complete state the summary and full results include estimates of the shortest natural
periods of objects or of the whole model. These can be used to determine suitable simulation time steps. The
simulation inner time step should normally be no more than 1/10th of the shortest natural period of the model - this
is given at the top of the summary results or full results report for All Objects. In addition the full results table for a
line contains detailed reports of the shortest natural periods.
4.9.4 Statistics
The Statistics report provides, for each statistics variable:
- The minimum and maximum values and the simulation times when they occurred.
- The mean and standard deviation (i.e. the root mean square about the mean).
These statistics are reported for each of a number of periods of the simulation. If Statistics by Wave Period is
selected then these periods are successive wave periods; otherwise they are the stages of the simulation.
To obtain a Statistics report:
- Select Statistics.
- Select the object and the variables of interest (see Selecting Variables).
- CLICK the Table button.
The report is presented in a spreadsheet.
Note: Be careful when interpreting statistics of Line Clearance and Seabed Clearance, since these results
are already minima - the shortest distance to any other line and to any point on the seabed. For
example, the maximum of Line Contact Clearance will be the maximum value that the smallest
clearance took during the period.
4.9.5 Linked Statistics
The Linked Statistics table relates a group of variables for a given object. For a specified group of variables and a
specified period of simulation, OrcaFlex finds the minimum and maximum of each variable and reports these
extreme values, the times they occurred and the values that all the other variables took at those times.
The report also includes:
mean,
standard deviation,
Tz mean up-crossing period, estimated as the average time between successive up-crossings of the mean value ,
Tc mean crest period, estimated as the average time between successive local maxima,
m0 zeroth spectral moment, estimated as
2
,
m2 second spectral moment, estimated as m0/Tz
2
,
m4 fourth spectral moment estimated as m2/Tc
2
,
spectral bandwidth parameter, estimated as (1-Tc
2
/Tz
2
)
1/2
,
To obtain a Linked Statistics report:
- Select Linked Statistics.
- Select the required object and period.
- Select the variables of interest (see Selecting Variables).
- CLICK the OK button.
The report is presented in a spreadsheet.
User Interface, Results
w

74
Note: Be careful when interpreting statistics of Line Clearance and Seabed Clearance, since these results
are already minima - the shortest distance to any other line and to any point on the seabed. For
example, the maximum of Line Contact Clearance will be the maximum value that the smallest
clearance took during the period.
4.9.6 Offset Tables
These Text Windows are available only after multiple statics calculations and only for vessels. For a given offset
direction they report the total load on the vessel and show how it varies with offset distance. The worst tension in
any segment of any line connected to the vessel is also reported for each offset.
To obtain an Offset Table:
- Select Offset Table on the Results form.
- Select the offset vessel.
- Select the offset direction required.
- CLICK the Table button.
The report is presented in a spreadsheet.
4.9.7 Line Clashing Report
The Line Clashing Report produces a detailed tabular report about the line clashing events during a simulation.
To obtain a Line Clashing Report:
- Select Line Clashing Report on the Results form.
- Select a line.
- Select the period required.
- CLICK the Table button.
The report is presented in a spreadsheet.
Contents of the Line Clashing Report
The report lists a summary table followed by a detailed table as described below.
Summary table
The summary table lists all clash events for segments on the selected line. A clash event is deemed to start when a
segment from the selected line first comes into contact with another line segment. We shall refer to the selected line
as L1 and to the particular segment on this line as S1. The clash event ends when S1 is no longer in contact with any
other line segments.
Note: During the course of a clash event the segment S1 may be in contact with a number of different line
segments from other lines, e.g. if the clash is a sliding contact. This is counted as a single clash
event from the perspective of S1.
For each clash event the following results are reported:
Event number
A number of clash events may occur during the simulation. Each event is given a number to identify it. This is useful
when relating the summary results of a clash event to the detailed results.
Segment number and segment arclength
This identifies the segment S1 on the selected line.
Start Time, End Time and Duration
The simulation time of the start and end of the clash event together with its duration.
Total Impulse
The total impulse of the clash event.
w
User Interface, Results
75
Peak Clash Force
A scalar value reporting the greatest value of clash force achieved during the clash event. The clash force vector is
monitored during each clash event and the greatest magnitude of this vector is reported.
Peak Clash Energy
A scalar value reporting the greatest value of clash energy achieved during the clash event.
Max Penetration
At each time step we calculate the depth of penetration between the outer surfaces of segment S1 and all other
segments. Let S2 be a segment on another line.
Let the radii of the two segments be r1 and r2 (as defined by the line type contact diameter). OrcaFlex calculates the
shortest separation distance, d, between the centrelines of the two segments. The penetration of these two segments
is defined to be (r1 + r2) - d. The value reported as Max Penetration is the maximum value of penetration between
segment S1 and any other segment over the duration of the clash event.
Detailed table
The detailed table reports information about each individual contact between segment S1 and another segment. If
during the course of a clash event segment S1 is in contact with a number of segments on other lines then the start
time, end time and duration of each of those individual contacts is reported.
Contact velocity
The detailed table also includes the contact velocity for each individual contact. This is defined to be the normal
relative velocity of the two contact points at the instant in time when the clash event started.
4.9.8 Time History and XY Graphs
Time History graphs are of a single variable against time. XY graphs are of one time dependent variable against
another.
The period of simulation covered by the graph is chosen from a list.
To obtain a Time History or XY Graph:
1. Select Time History or XY Graph on the Results form.
2. Select the object required.
3. Select the variable required (see Selecting Variables). More than one variable can be selected for time histories.
For XY graphs the steps 2 and 3 need to be done for both axes. Do this by CLICKING on one of the options labelled X-
axis or Y-axis, which are located at the bottom of the results form, and then repeating steps 2 and 3.
- Select the period required.
- CLICK the Graph button.
Time history and XY graphs are displayed in Graph Windows and they are "live" - i.e. they are regularly updated
during the simulation. You can therefore set up one or more graph windows at the start of a simulation and watch
the graphs develop as the simulation progresses. If you reset the simulation then the curves will be removed but the
graphs will remain, so you can adjust the model and re-run the simulation and the graphs will then be redrawn.
Graphs are automatically deleted if the object that they refer to is removed, for example by loading a new model.
Range Jump Suppression
For time histories of angles OrcaFlex chooses the angle's range so that the time history is continuous.
For example consider vessel heading, which is normally reported in the range -180 to +180. If the vessel's heading
passes through 180 then without range jump suppression the time history would be:
.., 179, 180, -179, ..
i.e. with a 360 jump. To avoid this jump OrcaFlex adds or subtracts multiples of 360 to give the best continuation
of the previous value. So in this example it adds 360 to the -179 value and hence reports:
.., 179, 180, 181, ..
This addition is valid since 181 and -179 are of course identical headings.
User Interface, Results
w

76
Note that this means that angle time history results can go outside the range -360 to +360.
Spectral Density
From any time history graph you can use the pop-up menu to obtain the spectral density graph for that time history.
The curve shown on the graph is the one-sided power spectral density (PSD) per unit time of the sampled time
history, obtained using the Fourier Transform.
Notes: Using the Fourier Transform to estimate the PSD inevitably introduces 'noise' or 'leakage' to the
spectrum. To reduce the leakage the time history is partitioned into a number of overlapping
periods. The PSDs are calculated for each period and then averaged to give the reported PSD which
has the effect of smoothing the resulting PSD.
This smoothing technique is only applied if there is more than 200s of data in the time history.
Empirical Cumulative Distribution
From any time history graph you can use the pop-up menu to obtain the empirical cumulative distribution graph for
that time history. This graph shows what proportion of the samples in the time history are less than or equal to a
given value.
These graphs are sometimes referred to as Exceedence Plots since they can sometimes be used to estimate the
probability that the variable will exceed a given value.
Warning: The samples in a time history are not independent. They have what is called 'serial correlation',
which often affects the accuracy of statistical results based on them.
Rainflow half-cycle Empirical Cumulative Distribution
From any time history graph you can use the pop-up menu to obtain the rainflow half-cycle empirical cumulative
distribution graph for that time history. The curve on this graph is produced in the following way:
1. The time history is analysed using the rainflow cycle-counting algorithm. For details of this algorithm see the
paper by Rychlik.
2. The rainflow algorithm produces a list of half-cycles associated with the time history. The empirical cumulative
distribution of these half-cycles is then plotted.
4.9.9 Range Graphs
Range graphs are only available for a selection of variables and they are only available for Lines. They show the
values the variable took, during a specified part of the simulation, as a function of arc length along the Line. In
particular:
- Range graphs show the minimum, mean and maximum values that the variable took during the specified part of
the simulation with the exception that the Line Clearance range graphs only show the minimum value.
- Effective tension range graphs have extra curves showing the segment Euler load and the Maximum Tension
value (as specified on the Line Types data form).
- Bend Moment range graphs have an extra curve showing the maximum permitted bend moment
(EI / Minimum Bend Radius specified on the Line Types data form).
- Curvature range graphs have an extra curve showing the maximum permitted curvature (the reciprocal of the
Minimum Bend Radius specified on the Line Types data form).
- Stress range graphs show the Allowable Stress (as specified on the Line Types data form).
- A Standard Deviation curve can also be added to a range graph - to do this edit the graph's properties (by double
clicking on the graph) and set the Standard Deviation curve's visible property (by default the curves are not
visible). Two curves are then drawn, at Mean x, where x is a user chosen value and is the standard
deviation. The standard deviation is calculated from all the samples that lie in the simulation period chosen for
the graph.
Warning: Be careful not to assume that 95% of the data lie in the interval Mean 2. This common guideline
is based on the assumption that the data are sampled from a Normal (i.e. Gaussian) distribution.
To obtain a Range Graph:
- Select Range Graph on the Results form.
w
User Interface, Results
77
- Select the object required.
- Select the arc lengths required. This can be the entire line, a selected arc length range, or a selected line section.
- Select the variable required (see Selecting Variables).
- Select the period required.
- CLICK the Graph button.
Range graphs are displayed in Graph Windows and they are "live" - i.e. they are regularly updated during the
simulation. You can therefore set up one or more graph windows at the start of a simulation and watch the graphs
develop as the simulation progresses. If you reset the simulation then the curves will be removed but the graphs will
remain, so you can adjust the model and re-run the simulation and the graphs will then be redrawn. Graphs are
automatically deleted if the object that they refer to is removed, for example by loading a new model.
Range Jump Suppression
Just as it does for Time History and XY Graphs, OrcaFlex applies range jump suppression for range graphs of angles.
4.9.10 Offset Graphs
These graphs are available only after a multiple statics calculation has been done and only for the offset vessel. The
following variables are plotted against offset distance:
Restoring Force
The magnitude of the horizontal component of the total force applied to the vessel by the attached Lines or other
objects. Note that this force is not necessarily in the offset direction.
Vertical Force
The vertically downwards component of the total force applied to the vessel by the attached Lines or other objects.
Yaw Moment
The moment, about the vertical, applied to the vessel by the attached Lines or other objects.
Worst Tension
The largest tension in any segment of any Line connected to the vessel.
To obtain an Offset Graph:
- Select Offset Graph on the Results form.
- Select the offset vessel.
- Select the offset direction required.
- Select the variable required.
- CLICK the Graph button.
4.9.11 Spectral Response Graphs
These graphs are available only if you have run a response calculation wave. The graph is only available once the
simulation has been completed.
The graph plots the calculated RAO for the selected variable on the Y axis and wave frequency on the X axis.
To obtain a Spectral Response Graph:
- Select Spectral Response Graph on the Results form.
- Select the object required.
- Select the variable required (see Selecting Variables). More than one variable can be selected.
- CLICK the Graph button.
4.9.12 Extreme Statistics Results
There is often a requirement to predict the extreme responses of a system, for example to determine the likelihood
of a load exceeding a critical value that may lead to failure. Such values are needed when using standards such as
DNV-OS-F201 and API RP 2SK.
User Interface, Results
w

78
OrcaFlex can estimate extreme values for any given result variable by analysing the simulated time history of the
variable using extreme value statistical methods. You may, for instance, perform a mooring analysis in an irregular
sea-state and then estimate the maximum mooring line tension for a 3-hour storm.
The statistical theory for this estimation is well-established and is described in the theory section. The procedure is
essentially this:
- You select the statistical distribution to be used to model the distribution of extremes. See Data below.
- OrcaFlex estimates the distribution model parameters that best fit the simulation time history of the variable.
- OrcaFlex uses the fitted distribution to estimate and report the required extreme statistic (e.g. return level), for
a specified period of exposure. See Results below.
- OrcaFlex provides diagnostic graphs that you should use to judge the reliability of the results.
The Extreme Statistics Results form is designed to lead you through this process.
When you open the Extreme Statistics Results form, for a selected results variable, you will come first to the Data
page, where you will select the distribution. Moving then to either of the other pages (Results or Diagnostic Graphs)
will cause OrcaFlex to carry out the estimation part of the procedure. The Diagnostic Graphs assist in testing the
model. The Results page reports the estimated statistics, e.g. the return value for the specified period, the estimation
uncertainty inherent in that value etc.
Data
For convenience, the time history result graph is reproduced on the Data page. The data required for the fitting of
the model are entered on this page, and are as follows.
Distributions
These fall into two groups, according to the statistical method with which they are applied. For details see the
Extreme Statistics Theory section.
- Rayleigh distribution. This method assumes that the variable is a stationary Gaussian process. This is perhaps a
reasonable assumption for waves, particularly in deep water, and for responses which are approximately linear
with respect to wave height. However, for many other variables of interest, the Gaussian assumption is invalid
and leads to poor estimates of extreme values.
- Weibull and Generalised Pareto (GPD) distributions. These distributions are both fitted using the maximum
likelihood method. Historically, the Weibull distribution has often been used for marine systems, but the
Generalised Pareto is preferred by the extreme statistics community because of its sound mathematical
foundations.
Extremes to analyse
Specifies whether maxima (upper tail) or minima (lower tail) are to be analysed.
Threshold and Decluster Period
These data are only required when using the Weibull and GPD distributions, which are fitted to extremes of the time
history and those extremes are selected using the peaks-over-threshold method with (optional) declustering.
The threshold controls the peaks-over-threshold method. This allows you to control the extent to which the
analysis is based on only the extreme values in the data (the tail of the distribution).
The decluster period controls the declustering. This helps avoid or reduce any statistical dependence between the
extreme data values used in the analysis. It can be set to one of the following:
- Zero, in which case no declustering will be done, and all values above the specified threshold will be included.
This is generally not recommended since the values are unlikely to be independent.
- A positive value. In this case OrcaFlex will break the sequence of time history values into clusters of successive
values that stay above the threshold. It will then decluster by merging successive clusters that are separated by
periods (during which the variable is less than the threshold) that last no longer than the specified decluster
period. The most extreme value of each of the resulting merged clusters will then be included in the analysis.
- '~'. This special value may be used to tell OrcaFlex to take the clusters to be the groups of values between
successive up-crossings of the mean value (or down-crossings if analysing lower tail). The most extreme value
of each such cluster will then be included in the analysis, but ignoring any that do not exceed the threshold.
w
User Interface, Results
79
The threshold is drawn on the time history graph, to help visualise its value relative to the extremes of the data. The
number of data points that will be included in the analysis (after the threshold and declustering have been done) is
also displayed. This helps with setting the threshold and decluster period.
The best value for the threshold is one that strikes a balance between a not-extreme-enough value (which will
increase the number of data points fitted but may give biased fitting by allowing less extreme values to influence the
fitting too much), and a too-extreme value (which will fit to only the more relevant extreme data points, but may
give very wide confidence intervals if there are too few such extremes in the data).
Results
The following data items, found on the Results page, do not affect the fitting of the statistical model. Rather, they are
applied to the fitted model to obtain the reported results.
Rayleigh
Storm duration is the return period for which the return level is reported. The length of the simulation, relative to
this duration, will determine the accuracy of the estimate for the return level.
Risk factor is the probability of exceeding (or falling below, for lower tail) the estimated extreme value. For
example, you may ask for the 3-hour extreme value that is exceeded with a probability of 0.01 (i.e. a risk factor of
1%).
Weibull and GPD
Storm duration is defined as for the Rayleigh distribution.
The maximum likelihood fitting procedure used for these distributions allows the estimation of a confidence
interval for the return level, for a specified confidence level. OrcaFlex reports this estimated confidence interval in
addition to the estimated return level.
The reported return level is defined to be the level whose expected number of exceedences in the specified storm
duration is one. The fitted values of the model parameters and corresponding standard errors are also reported.
Note: For some values of storm duration (usually small values) it might not be possible to calculate the
return level. This is indicated by the value 'N/A' (meaning 'not available'). Similarly, for some
combinations of storm duration and confidence level, the calculation may fail to determine the
confidence limits, and again these are then denoted by 'N/A'.
Diagnostic Graphs
The diagnostic graphs will help you to assess the goodness-of-fit of the model, and how appropriate or not the fitted
distribution is. They should be interpreted together, not in isolation, as follows.
- The Quantile Plot displays quantiles of the empirical data plotted against model quantiles. If the model is a
good fit, then the points should lie close to the superimposed 45 diagonal line, and any significant departure
from this (especially a systematic one, for example an obvious trend away from the diagonal) indicates poor
model fit. The vertical lines, drawn through each point, are pointwise 95% tolerance intervals and may be
used as a guide to deciding whether any departure from the diagonal is significant. If all the vertical lines
intersect the diagonal line, then the modelled values are probably sufficiently close to the empirical value not to
be of concern. If, however, a number of the vertical lines fail to reach the diagonal, then that may raise concerns
about the validity of the fitted model.
- The Return Level Plot shows return level against return period (i.e. storm duration), with the latter on a
logarithmic scale to highlight the effect of extrapolation. The central line on the graph is the return level for the
fitted model, and the pair of outer lines the corresponding pointwise 95% confidence limits. The points are the
empirical return levels, based upon the data, and should lie between the confidence limits if the model fits the
data well. As with the quantile plot, a significant number of points contravening these limits indicates poor
model fit. Again, OrcaFlex may sometimes be unable to determine the confidence limits for some return periods
this may result in gaps in the confidence limit lines, or even in their not appearing at all.
An example of diagnostics graphs indicating a good model fit is shown below:
User Interface, Results
w

80

Figure: Diagnostics graphs for a good model fit
If either of these graphs indicates a poor model fit, then you should reconsider the entries on the data page:
- Distribution. The distribution may be inappropriate the data may simply not conform to the selected
distribution.
- Threshold. The threshold may be too low, hence including too many points which are not in the tail of the
distribution; or too high, resulting in too few data points for the analysis and consequent large variation in the
results.
- Decluster period. This may be too long (so too few data points), or too short (so successive data points might
not be independent).
4.9.13 Presenting OrcaFlex Results
OrcaFlex users often wish to show their OrcaFlex results in a slide presentation prepared using a presentation
program such as Microsoft PowerPoint. Here are some tips on how this can be done.
Graphs
Graphs can be transferred from OrcaFlex to presentation programs by simple copy + paste.
Note: In PowerPoint, instead of using Paste, it is better to use Paste Special (from the Edit menu) and
then select the Enhanced Metafile. This gives better resolution.
Replays
Replays can be transferred by exporting to an AVI file and then importing that video clip file into the presentation
program.
An XVID encoded AVI file (and possibly other codecs) added to Microsoft PowerPoint slides as a Movie Object may
not play correctly (displaying a blank screen on replay, or the video only appearing in full screen mode). To avoid
these problems, an XVID AVI file needs to be inserted as a Video Clip Object. This can be done in two ways:
1. Drag and Drop the AVI file onto the PowerPoint slide, or
2. From the PowerPoint menu, choose Insert | Object. Select 'Create from file' and Browse to your file (do not
select the 'Link' option).
To set options such as auto repeat, right-click on the image in the slide, then select Video Clip Object | Open, this
displays the video player window and menus.
w
User Interface, Graphs
81
The Video Clip Object links to the AVI file (it is not embedded within PowerPoint) so the file location needs to be
accessible when running the presentation. The computer running the presentation must also have the XVID codec
installed.
Note: Resizing video clips (after pasting into your presentation) will introduce aliasing (re-digitisation
errors) so it is best to set the OrcaFlex 3D View window to the required size before you export the
video.
Video Clips of OrcaFlex in Use
Your presentation can even show video clips of OrcaFlex in use, illustrating how the program is used. However, it is
rather harder to generate the required video files. We recommend using software called Camtasia
(www.techsmith.com) to record video clips showing OrcaFlex in use.
4.10 GRAPHS
When you request results in graphical form, they are presented in Graph Windows. You can open several
simultaneous graph windows, showing different results, and tile them on the screen together with 3D views and text
results windows. To adjust a graph's properties (range of axes, colours, etc.) see Modifying Graphs.
Graphs have a pop-up menu that provides the following facilities.
- Use Default Ranges.
- Copy copies the graph to the clipboard, from where you can paste it into other applications.
- Values.
- Spectral Density.
- Empirical Cumulative Distribution.
- Rainflow half-cycle Empirical Cumulative Distribution.
- Export enables you to export the graph to a metafile or bitmap file.
- Print facilities and the Monochrome Output preference.
- Properties.
Graphs of simulation results are "live" - i.e. they are updated automatically as the simulation progresses. Also, they
are kept even if you reset the simulation, so once you have set up a set of interesting graphs you can edit the model
and re-run the simulation to see the effect of changing the model.
You can also set up results graphs when in reset state, prior to running a simulation - the graph will be empty
initially and will grow as the simulation progresses. Note that we do not recommend this for graphs of line
clearance, however, since updating them can significantly slow down the simulation.
The workspace feature provides a very powerful way of managing collections of related graphs.
When a replay is in progress the replay time is indicated on both Time History and XY graphs.
User Interface, Graphs
w

82

Figure: Replay time indicator on a Time History Graph (vertical line at Time=3.5s) and on an XY
Graph (grey cross in bottom right of the graph).
The replay time indicator on a Time History graph can be directly manipulated using the mouse. With the CTRL key
pressed you simply click on a Time History graph and the indicator moves to where you have clicked. Any open 3D
Views are updated to show the new replay time. Similarly, with the CTRL key pressed you can click and then drag the
indicator. This direct manipulation of the replay time indicator is designed to help understand and visualise how
your model is behaving at key moments of the simulation.
Printing Graphs
To print a graph, use the File | Print menu item. When printing to a monochrome printer you will get the best results
by setting the Monochrome Output preference - this is set by default when the program is first installed.
Copy and Paste with graphs
You can also copy a graph to the clipboard - simply select the graph window by CLICKING on it and then using the
Edit | Copy menu item. From the clipboard you can then paste it into another application, for instance into a word
processor document. Graphs can also be exported as Windows metafiles, use the File | Export menu item. Metafiles
can be imported into many Windows programs, such as word processors, spreadsheets, graphics packages etc.
Note: When copying a graph to the clipboard, the size of the graph window you copy from has an effect
on how the text label fonts appear when the graph is pasted into another application. For example,
if you are copying a graph to a Word Processor and want the graph to be full page size, then the
graph window should be made large on screen (e.g. maximised). If you want a number of graphs on
one page of a document then the graph should be smaller on screen - try tiling or cascading the
windows (see the Window menu). By experimenting with various differently sized graphs it should
be possible to arrange for the fonts to appear as you wish.
4.10.1 Modifying Graphs
You can zoom into a graph by holding down the ALT key and dragging a box around the area that you want the graph
to display. When you release the mouse button the region selected will be expanded to fill the graph. If you want to
reverse this process then right click the mouse and choose Use Default Ranges from the pop-up menu.
You can also change the appearance of a graph by double clicking on the graph or by selecting Properties from the
graph's pop-up menu. A form is then shown which allows you to change various aspects of the graph, as follows:
Axes
You can set the range, the tick spacing and the number of small ticks. The Use Default Tick Spacing button sets the
tick spacing and the number of small ticks to sensible default values based on the range. This is useful if you want to
set the range to a specific value and want the tick spacing to be set automatically.
Labels
You can alter the text and fonts of the axis and tick labels.
w
User Interface, Spreadsheets
83
Curves
You can control the line properties and visibility for each curve on the graph.
Legend
The legend is a key showing which curve is which. It only appears on graphs that have multiple curves, e.g. range
graphs. You can control whether the legend is shown and if so where and using what font. Note that the legend
includes all the curves, even if some of them may not be visible at the time.
Intercepts
Intercepts are lines, like the axes, that go right across the graph. In fact the X and Y axes themselves are considered
to be intercepts. You can add more intercepts, for example to mark things like stage start times, and you can control
their position and style.
Save As Default
Changes to a graph's properties normally only apply to that graph. But for general settings (fonts etc.) you can also
click the Save As Default button. OrcaFlex then remembers the current settings for use with future graphs.
4.11 SPREADSHEETS
Some numerical results (e.g. obtained with the Values button on the Results form) appear in an Excel compatible
spreadsheet. The spreadsheet is read-only. If you wish to modify or extend it you must first save it as described
below.
Printing, Copying and Exporting Spreadsheets
To print the spreadsheet right click and select Print, but remember that OrcaFlex time histories are normally quite
long and will therefore produce many pages. If necessary, you can first adjust the printer setup using File | Printer
Setup.
You can also easily transfer the results to other applications by either:
- Copy and paste via the Windows clipboard. Select the block to be transferred and press CTRL+C.
- Saving to file. Choose Export from the popup menu to save as Excel format (.xls), comma separated values (.csv)
or as tab delimited text (.txt).
4.12 TEXT WINDOWS
Simple text windows are used for some reports - see below. To print a text window, use the File | Print menu. You
can also copy text to the clipboard - simply select a region of text and then use the Edit | Copy menu item (or press
CTRL+C). From the clipboard you can then paste it into another application, for instance into a word processor
document. Alternatively, you can export the text to a file by using the File | Export menu item. The resulting text file
can then be imported into your word processor.
Statics Progress Window
During a Statics Calculation, the progress of the calculation is shown in the message box on the status bar. However
the messages are also sent to a text window that is normally minimised. This window may be viewed by clicking on
the message box during statics, or by selecting the Window | Statics Progress menu item if you wish to watch the
process more closely. Like other text windows it may be printed, copied or exported, as described above.
4.13 WORKSPACES
It is common to have many windows (3D View, graph or spreadsheet) open within OrcaFlex. The workspace facility
is designed to help manage these windows.
Workspace files
A collection of view, graph or spreadsheet windows can be saved using the Workspace | Save Workspace menu item.
This creates a text file with the .wrk file extension containing a specification of the current window layout. The
workspace can be restored at any time with the Workspace | Open Workspace menu item. This can give significant
time savings if you wish to look at a number of different results windows for a large number of OrcaFlex models.
Note that the contents of the windows are not saved to the workspace file, just a logical description of the window.
For example, suppose you saved a workspace containing a graph of Effective Tension of a Line called Riser. If you
User Interface, Comparing Data
w

84
then loaded a different simulation file and open that workspace then you would see the Effective Tension of the Line
called Riser in the new simulation file and not the simulation filed open when the workspace was saved. This means
that you can look at the same collection of results for any number of simulation files.
Workspace files are not limited to simulation files - static results and multiple statics results can also be saved.
Default workspaces
As an alternative to loading a workspace by using the Workspace menu items you can associate default workspaces
with either individual simulation files or with entire directories.
- If you define a default workspace for a simulation file then the workspace is restored whenever you open that
same simulation file.
- If you define a default workspace for a directory then the workspace is restored whenever you open any
simulation file in that directory.
Getting the most out of workspaces
We recommend that you save your workspace files in the same directory as the OrcaFlex files. If you do so then the
workspace file will appear in the Most Recent Files list on the Workspace menu.
Workspace files can be very useful if you are sending simulation files to another person. By including a workspace
file with the results of interest you can be sure that they will view the correct information. This can be particularly
valuable when sending files to someone who is not an experienced OrcaFlex user. This can even be useful when
sending files to Orcina for software support because they contain a precise specification of the results you are
interested in.
4.14 COMPARING DATA
The Compare Data menu item opens the Compare Data form, which allows you to find differences between the data
in two OrcaFlex files.
The comparison is done using a user-provided compare program, so when you first use this facility you need to
configure OrcaFlex to tell it which compare program that you want to use; see Configuration below.
You can then compare files as follows:
- On the Files page, specify the two files that you wish to compare. These can be data or simulation files.
- Click the Compare button.
- OrcaFlex then saves the data from the two files to temporary text files and then runs the user-specified compare
program to compare those text files.
As an alternative to comparing two data files on disk you can optionally choose to compare the currently loaded
model with a single file on disk.
Configuration
On the Configuration page you need to tell OrcaFlex the text file compare program that you want to use, and how to
use it. The compare program must be a program that can compare text files passed to it through the command line.
Various such programs are available on the web; examples are WinDiff, Compare It! and Araxis Merge.
Compare Program
This is the compare program's executable file name. You can specify either the full path, or just the file name if the
executable file resides in a directory which is on your system path.
A basic compare program called WinDiff is freely available (you can find it by searching the Internet) and is quite
sufficient for this purpose.
Command Line Parameters
This defines the command line parameters that are passed to the compare program. OrcaFlex replaces the special
strings %1 and %2 with the file names of the temporary text files. For most compare programs the default setting of
"%1 %2" will be sufficient. Otherwise you will need to consult the documentation of your compare program.
w
User Interface, Preferences
85
4.15 PREFERENCES
OrcaFlex has a number of settings that can be customised to suit the way that you work. The majority of settings can
be adjusted in the Preferences form, which is accessed by using the Tools | Preferences menu item.
3D View Preferences
Minimum Drag Distance
Object positions are not updated until the mouse has been dragged at least this distance (in pixels). This prevents
accidental changes to object positions. To make a small movement, drag away and then back again, or edit the
coordinate directly in the object's Edit Form.
View Rotation Increment
Each CLICK on a Rotate View button increments or decrements View Azimuth or Elevation by this amount.
Refresh Rate
During a simulation calculation all 3D View and Graph windows are updated at this rate. Selecting a faster rate
allows you to see the behaviour of the simulation more clearly at the expense of performance. Set a slow Refresh
Rate to give the numerical calculation more processor time.
Background Colour
This sets the background colour of all 3D View windows.
Locate Object Method
Can be either Flash object or Hide other objects. It determines what method the Locate action in the model
browser uses.
- When the Flash object preference is set then the Locate action repeatedly draws and hides the object on the 3D
View, like a blinking cursor.
- When the Hide other objects preference is set then the Locate action temporarily hides all other objects.
Normally the default setting of Flash object is sufficient to locate objects. However, if the model you are searching
for is obscured by other objects then this method may not help you to locate the object. In this case you should use
the Hide other objects preference.
Reset to default view automatically
When this is checked then OrcaFlex will automatically change the 3D View parameters to the Default View
whenever a new model is opened.
3D View Axes Preferences
View Axes
The view axes show the same directions as the global axes, but are drawn in the top right hand corner of 3D views,
rather than at the global origin. Can also be set from the View menu.
Scale Bar
Determines whether a scale bar is drawn in 3D views. Can also be set from the View menu.
Note: The Scale Bar is not drawn for shaded graphics views because it would be meaningless due to
perspective.
Global Axes
Determines whether the global axes are drawn, at the model's global origin (0,0,0). Can also be set from the View
menu.
Environment Axes
Determines whether the wave, current and wind directions are drawn in the 3D view. When multiple wave trains
are present the first wave train is taken to be the dominant one and is drawn using sea surface pen, whereas the
other wave trains' directions are drawn in the secondary wave direction pen. Can also be set from the View menu.
User Interface, Preferences
w

86
Local Axes
Determines whether the local axes for vessels, buoys and line ends are shown. Drawing the local axes on the 3D
view helps you check the orientations of these objects. Can also be set from the View menu or by pressing CTRL+Y.
Note: Local Axes are not drawn for shaded graphics views.
Node Axes
Determines whether axes for line nodes are shown. Can also be set from the View menu or by pressing CTRL+ALT+Y.
Out of Balance Forces
If selected, then in the static analysis (not during the simulation) there are extra lines drawn on the 3D view,
representing the out of balance force acting on each vessel and buoy. This preference is sometimes useful for static
analysis, since it enables you to see how far a buoy or vessel is from being in equilibrium. Can also be set from the
View menu or by pressing SHIFT+CTRL+Y.
The force is drawn as a line, starting at the force's effective point of application, and whose length represents the
size of the force. The scaling is piecewise linear and based on the View Size of the 3D view. Lines up to ViewSize/2
long mean forces up to 10 force units and lines from ViewSize/2 to ViewSize mean forces from 10 to 1000 force
units.
Note: Out of Balance Forces are not drawn for shaded graphics views.
Video Preferences
The video preferences allow you to control the compression algorithm used for exported video. The software which
performs this compression is called a codec. Because the different graphics modes produce very different images
they require different types of codec.
Wire Frame Graphics Codec
Run-length encoding is the default setting and is usually the best choice. This codec offers good compression rates
for OrcaFlex wire frame video. The AVI files produced using this codec can be played on most Windows PCs.
If you choose Uncompressed then each frame of the video is stored as an uncompressed bitmap. This means that
the AVI file produced can be extremely large.
Shaded Graphics Codec
The run-length encoding which works well for wire frame graphics is not suitable for shaded replays and in fact
there is no suitable built-in codec in Windows. We would recommend using an MPEG-4 codec of which many are
available. In our experience the freely available (licensed under the GPL) XVID codec performs very well. The
Shaded Graphics topic has more information about the XVID codec.
You can choose to use other codecs that are installed on your machine. Should you do so then you must also specify
the following information:
- Codec 4 character code: Codecs are identified by unique codes, 4 characters long. Good alternatives to XVID
include DIVX, the 3ivx codec (character code 3IV2) and a variety of offerings from Microsoft which are
unfortunately rather difficult to obtain.
- Padding: MPEG-4 codecs commonly require round number frame sizes (width and height in pixels). For
example XVID requires frame sizes to be multiples of 8. When OrcaFlex exports the video it ensures that the
frame sizes are a multiple of this number. If you are unsure of what number to use for your codec then we
recommend trying 8 which usually works.
- Colour depth: Some MPEG-4 codecs require a specific colour depth. Again, if you are unsure of what value to
use then we recommend trying 32 bit or 16 bit colour depth.
Output Preferences
Printer Margins
These set the Left and Top margins used on printouts.
w
User Interface, Printing and Exporting
87
Monochrome Output
If this is checked then external output (copying to the clipboard, exporting metafiles and printing) is in black and
white. This is useful with black and white printers, since otherwise pale colours may be drawn in very light grey and
may be hard to see.
Miscellaneous Preferences
Show Splash Screen
Determines whether OrcaFlex displays its splash screen when the program starts.
Batch Auto Save
If this is enabled then simulations run in batch mode are automatically stored to simulation files at the specified
regular Auto Save Interval. This is useful if your computer is prone to failure (for example because of overnight
power failures) since the part-run simulation file can be loaded and continued, rather than having to re-run the
whole simulation from scratch. The Auto Save Interval should be neither too short, since then the program will then
waste a lot of time repeatedly storing away the results, nor too long, since then a lot of simulation work will be lost if
a failure occurs.
4.16 PRINTING AND EXPORTING
The Print / Export form is accessed using either the File | Print or the File | Export menu item and allows you to
choose one or more of the following items to be printed or saved to file:
- The model data. Vessel Types often have very large amounts of data, much of which may not apply to the
current model, so OrcaFlex offers you the option of printing all the vessel type data or only the data that is in
use.
- Any 3D Views, Graphs, Spreadsheets and Text Windows currently on display.
Note: Graphs are printed as large as possible whilst maintaining aspect ratio.
w
Automation, Introduction
89
5 AUTOMATION
5.1 INTRODUCTION
OrcaFlex provides several important facilities for automating and post-processing work:
- OrcaFlex is supplied with a special Excel spreadsheet which enables you to automate the extraction of
simulation results into your own spreadsheet. You can then use the normal Excel calculation facilities to do your
own customised post-processing and graphing.
- The Batch Processing facility enables you to run a set of simulations in unattended mode, for example as an
overnight job. The simulations can either be of pre-prepared data files, or else can be specified by a batch script
file that specifies the simulation as variations on a base data file. The OrcaFlex Spreadsheet mentioned above
also has facilities for automating the production of batch script files.
- OrcaFlex includes a well-documented programming interface called OrcFxAPI (short for OrcaFlex Application
Program Interface). See the OrxFxAPI help file for details. OrcFxAPI is a Windows dynamic link library (DLL)
that is installed when you install OrcaFlex, and which provides facilities for setting data, calculating static
positions and extracting results from those calculations or from pre-run simulation files. For example you can
write programs to automate post-processing or that use OrcaFlex as a 'statics calculation engine'. One important
example application of this is for real-time monitoring of pipes, moorings etc. For further information or to
discuss possible applications of OrcFxAPI, please contact Orcina.
5.2 POST-PROCESSING
5.2.1 Introduction
OrcaFlex users often use spreadsheets to post-process their OrcaFlex results. This can be done manually by
transferring the results from OrcaFlex into the spreadsheet using copy + paste. However, this is laborious and error
prone if a lot of results need transferring, so we have developed special facilities to automate the process.
This automation is done using an Excel spreadsheet that has facilities for automatic extraction of specified results
from one or more OrcaFlex files into nominated cells in the spreadsheet. You can then use the normal spreadsheet
facilities to calculate other post-processed results from those OrcaFlex results.
Note: The OrcaFlex spreadsheet works with Excel 97 or later and requires OrcaFlex to be installed on the
machine.
Creating OrcaFlex Spreadsheets
You can create OrcaFlex spreadsheets from Excel templates that are supplied with OrcaFlex. You should base your
own OrcaFlex spreadsheets on this template, which is installed in the OrcaFlex installation directory when you
install OrcaFlex on your machine. To create your own OrcaFlex spreadsheet, open the Windows Start menu, select
Programs | Orcina Software and then select New OrcaFlex Spreadsheet. This shortcut creates a new spreadsheet
based on the template.
Note: Different versions of Excel require different versions of the OrcaFlex Spreadsheet. When installing
OrcaFlex you are asked which version of Excel you are using. Both spreadsheet templates are
installed and a single Start Menu shortcut to the appropriate one is created.
Before you try to use the new spreadsheet you need to save it to a file; it can be given any valid file name. It is
usually most convenient to save it to the directory containing the OrcaFlex files from which you want to extract
results. You can then specify the names of those files in the spreadsheet using relative paths. Using relative paths
makes it easier to rename the directory or move the spreadsheet and OrcaFlex files to some other directory.
For example OrcaFlex spreadsheets, see J02 Results and J03 Stress Analysis.
5.2.2 OrcaFlex Spreadsheet
The OrcaFlex Spreadsheet enables you to automate the extraction of results and data from OrcaFlex files into Excel.
For an example see J02 Results. To create your own see Creating OrcaFlex Spreadsheets.
OrcaFlex spreadsheets also provide facilities to generate script files automatically.
For results post-processing, an OrcaFlex Spreadsheet contains an Instructions worksheet, plus other worksheets to
receive the OrcaFlex results and for any derived results.
Automation, Post-processing
w

90
The spreadsheet also provides tools to help build the list of instructions. These tools are the Instructions Wizard and
the Duplicate Instructions form.
The Instructions worksheet consists of an instructions table and menu-driven Excel macros that read and obey
those instructions.
Warning: Do not change the name of the Instructions worksheet, since the macros use that name to find that
worksheet.
Instructions Table
Each row in the instructions table is a separate instruction. The instruction can be thought of as 3 separate sections:
1. The entry in column A (titled Sheet Name) specifies the name of the Excel worksheet on which any output is
produced.
2. The entries in columns B and C (titled Label Cell and Label respectively) specify a label. This label is output on
the worksheet specified in column A and in the cell specified in column B. The text of the label is specified in
column C.
3. The other columns (D to I) specify some results or data which are output on the sheet specified in column A and
in the cell specified in column D. These columns can specify output of time histories, range graphs, data values
etc.
Either of sections 2 and 3 are optional. That is you can have an instruction that has a blank command cell and so
only writes a label, or one that has a blank label cell and so only writes results.
The end of the table is indicated by the first row that has both its label and command columns blank, so you cannot
have an instruction row that has no label and no command. In particular, you cannot have a blank row in the middle
of the instruction table. Also, the macros assume that the first instruction is row 5 of the worksheet, so do not insert
or delete rows above this.
The macros ignore the formatting of the spreadsheet, so you can use things like bold, italic, background colours etc.
to make the worksheets easy to read, and you can also re-size columns or rows to suit. This applies to all the
worksheets, including the Instructions worksheet.
Processing the Instructions
When you are working with the OrcaFlex Spreadsheet an Orcina menu is added to the Excel menu bar. This menu
contains various commands to process the results instructions.

Figure: The Orcina menu within Excel for the OrcaFlex Spreadsheet.
The Process All Instructions menu item runs a macro that obeys all the instructions in the table, starting at the top
of the table and working down. The Process Selected Instructions menu item tells the spreadsheet to process only
the instructions in the currently selected cell or block of cells, again in top to bottom order. If the currently selected
cell(s) are not in the table then this menu item does nothing.
The spreadsheet OrcaFlex.xls in example J03 Stress illustrates how the instructions work:
w
Automation, Post-processing
91
- Select the Process All Instructions menu item. The Example1 and Example2 worksheets will be recalculated.
To verify this, clear the contents of the table on the Example1 worksheet, and delete entirely the Example2
worksheet (right-click on the tab with the name Example2 and select Delete) before selecting Process All. A
closer look at the instructions table on the Instructions sheet will show how this calculation was achieved.
- The first block of instructions in the table specifies that the simulation file Example1.sim should be loaded and
then various results extracted from it and written to various cells in a worksheet called Example1.
- The Example1 worksheet already existed, and it was already set up with suitable column widths and cell
properties (e.g. a larger font size, right alignment for some cells). So the instructions simply "filled in" various
cells in that sheet.
- The second block of instructions in the table specifies that the simulation file Example2.sim should be loaded
and then various results extracted from it and written to a worksheet called Example2. No such sheet existed,
so one was created.
- Because the worksheet Example2 was newly created it has default properties and so it not yet properly
formatted. You can now format it (resize the columns, change cell font sizes etc.) as you wish. Next time you
click the Process All Instructions menu item the worksheet will retain the formatting you set up.
- Now go back to the Example1 worksheet and try setting a new cell to calculate a "derived" result. For instance
you could calculate the maximum ZZ stress for theta=0.
- Now delete the contents of the last 6 cells in the ZZ stress column - the calculated maximum value will change as
a result. Go back to the Instructions worksheet and select row 12 - the one containing the instruction to extract
ZZ stress for theta=0 for Example 1. Now click the Process Selected Instructions menu item - this menu item
obeys just the instructions in the currently selected block, so the deleted cells on the Example1 worksheet will
be rewritten and your maximum value will be automatically updated (assuming you have re-calculation
switched on in Excel).
You should now have a good idea of how the spreadsheet works and you can now modify the spreadsheet to suit
your own purpose. To do this, delete the example instructions from the table and set up your own instructions - the
easiest way to do this is by using the Instructions Wizard.
5.2.3 Instruction Format
The easiest way to learn about the instruction format is by using the Instructions Wizard which allows you to create
instructions in an interactive manner.
In the OrcaFlex Spreadsheet, each instruction consists of the following cells. See also Tips and Tricks.
Sheet Name
Specifies the name of the worksheet in which cells are to be written. If a worksheet with this name already exists
then the specified label and output cells will be overwritten, but other cells will be left unchanged. If no sheet of
that name exists then one will be created.
Label Cell
Specifies the cell, in the specified worksheet, to which the label (if not null) will be written.
Label
Specifies the label string to be written to the label cell. This cell can be left empty, in which case the label cell is
ignored.
Output Cell
Specifies the cell, in the specified worksheet, to which results or data should be written. Some commands specify
multiple-value output - for example a time history consists of a column of results. In this case the output cell
specifies the top left cell of the block of cells to be written.
Note: The output cell (or label cell) can be specified directly, e.g. B7, but can also be specified indirectly -
see Tips and Tricks.
Command
This should be one of the pre-defined commands or else empty. If the command cell is empty then the output cell is
ignored and just the label is output.
Automation, Post-processing
w

92
Object Name
The name of the OrcaFlex object whose results or data are output.
Note: This name is case sensitive. Different objects in OrcaFlex can have identical names except for case.
For example "LINE" and "line" and "LiNe" are all regarded as different objects in OrcaFlex.
Additional Data
This column is used when outputting results for certain types of OrcaFlex object.
For the Environment object you need to specify the global X,Y,Z coordinates of the point for which you want results
- the coordinates must be separated by the ';' character.
For Vessel objects you can specify the local x,y,z coordinates of the point for which you want results - the
coordinates must be separated by the ';' character or leave blank to use the vessel origin.
For 6D Buoy objects you must specify the Wing Name if you are requesting a wing results variable or a point in local
x,y,z buoy coordinates for other results variables - the coordinates must be separated by the ';' character or leave
blank to use the buoy origin.
For Winch objects you must specify the winch connection number if you are requesting a position results variable,
i.e. X, Y or Z.
For Line objects you must specify the position on the line for which results are wanted. There are a variety of ways
in which this can be specified:
- The position can be specified by arclength, e.g. "Arclength 25.0".
- The node number can be specified, e.g. "Node 4".
- One of the line ends can be specified, e.g. "End A", "End B" or more concisely "A" or "B".
- The touchdown position can be specified, e.g. "Touchdown".
- For stress results you must also specify the position of the point within the cross section through the specified
arclength. You do this by specifying R,Theta values, e.g. "Inner", "Outer", "Theta 270.0".
Note: You must specify an arclength together with both R and Theta separated by the ';' character, e.g.
"Arclength 20.0; Inner; Theta 270.0", "End A; Outer; Theta -45.0"; "Node 7; Outer; Theta 17.8" etc.
- Clearance results can be reported either as clearances from this line to all other lines or from this line to a
specified other line. You can specify this other line by adding its name after the position, e.g. "Arclength 35;
Line2", "Node 4; Riser"; "End B; Hose" etc. If you do not specify another line (e.g. "Arclength 35") then
clearances will be reported from this line to all other lines.
The results are given for the nearest appropriate result point; see Line Results for details.
For the Range Graph and Range Graph Summary commands you can specify a range of arclengths, e.g. "20 to 50".
You can also use ranges such as "<35" or ">60" to specify all arclengths less than a point or all arclengths greater
than a point.
For the Duplicate Sheet instruction, the source worksheet is specified in this column.
For the Clear instruction, the range to be cleared is specified in this column. If the value in this column is left empty
then the entire sheet is cleared.
Simulation Period
The period of simulation for which results are wanted. This can be Whole Simulation, Latest Wave, Static State or
a stage number (0 for the build-up, 1 for stage 1 etc.).
It can also be a specified period of simulation, given in the form "t1 to t2" where t1 and t2 are numeric time values
that are in the simulation and Simulation Start Time t1 t2 Simulation End Time. For example "20 to 30" or "-
12.5 to +35.7".
Note: If you use the Static State period then a single value will be reported - the value of the variable at
the very beginning of the simulation.
This cell should be left empty for the data output commands Select and Get Data and when outputting static results
using the Static Result, Range Graph and Range Graph Summary commands.
w
Automation, Post-processing
93
Note: This specified period format can be used to extract results at a single time point; for example the
period "27.4 to 27.4" will give the results at the nearest log sample to time 27.4.
Variable
The name of the output variable.
If the command is a results command (e.g. Time History, Range Graph, Linked Statistics, Min etc.) this should be set
to the same name as is used for the results variable in OrcaFlex. For example Effective Tension, Curvature, Surge,
etc.
If the command is Get Data then this is the batch script name of the data item.
If the command is Select then this is the wave train, draught, RAO direction or QTF direction to be selected.
5.2.4 Pre-defined commands
In the OrcaFlex Spreadsheet, the Command Cell can contain one of the following commands:
- Load.
- OrcFxAPI version.
- Working Directory.
- Warnings.
- Clear, Duplicate Sheet.
- Sample Times.
- Time History.
- Min, Max, Mean, Standard Deviation.
- Linked Statistics.
- Spectral Density, Empirical Distribution, Rainflow Half Cycles, Rainflow Half Cycle Count.
- Static Result.
- Spectral Response Graph.
- Range Graph, Range Graph Summary, Range Graph Min, Range Graph Max.
- Get Data, Select.
5.2.5 Basic commands
Load <file name>
This command tells the spreadsheet to open the specified file. Subsequent results extraction commands then apply
to that file.
You can either specify the full path of the file, for example:
Load c:\Project100\Case1.sim
or else use a relative path (relative to the directory containing the spreadsheet). The latter is often more convenient.
For example if the file Case1.sim is in the same directory as the spreadsheet then you can use the command:
Load Case1.sim
and this has the advantage that there is no need to alter the spreadsheet if the directory is renamed or the files are
moved to a different directory.
If you specify a data file (.dat or .yml) then the file is loaded and the OrcaFlex statics calculation is performed.
Subsequent results extraction gives results for the static configuration.
Simulation files (.sim) containing either static state results or dynamic simulation results can be loaded.
Note: The statics calculation may take a significant length of time. Progress is reported in the Excel
status bar. If the calculation time is excessively long then we recommend that you use the Use
Calculated Positions command when building your model.
Automation, Post-processing
w

94
OrcFxAPI version
This outputs the version of the OrcFxAPI DLL which is being used by the spreadsheet. This is not necessarily the
version of the program which performed the calculations (for example if you load a simulation file which was
generated by a different version of OrcaFlex).
Working Directory
This outputs the directory where the spreadsheet is stored. If you are using relative paths then it can be useful to
keep track of the base path for QA purposes.
Warnings
This outputs the text from any warnings reported during the OrcaFlex calculations (static or dynamic). Simulations
run in batch mode or by Distributed OrcaFlex do not display such warnings since to do so would require user
intervention. This command allows you to check whether any such warnings were generated.
This command is the equivalent of the Calculation | View Warnings menu item.
Clear
This command clears the contents of cells in the specified output sheet. All cell formatting is preserved.
This should be the first command following a Load command. Results extraction spreadsheets are typically run
repeatedly. The purpose of this command is to ensure that previously extracted results are removed and so cannot
get mixed up with the latest results.
If the Additional Data column is empty then the entire sheet is cleared. Otherwise, if the Additional Data column is
not empty, then its value is taken to mean a range of cells to be cleared. The range is specified using Excel's A1
reference style. The following table illustrates some typical A1 style references:
Reference Meaning
A1 Cell A1
A1:B5 Cells A1 through B5
C5:D9,G9:H16 A multiple-area selection
A:A Column A
1:1 Row 1
A:C Columns A through C
1:5 Rows 1 through 5
1:1,3:3,8:8 Rows 1, 3, and 8
A:A,C:C,F:F Columns A, C, and F
Duplicate Sheet
This command copies the entire contents of the worksheet named in the Additional Data column to the specified
output sheet. All charts, formulae, formatting etc. that exist in the source worksheet are copied.
5.2.6 Time History and related commands
Sample Times
Returns the time values that apply to the time history results. This command returns a column of N numbers, where
N is the number of OrcaFlex log samples that are in the specified simulation period. So if the output cell is set to G5
and there are 500 log samples in the simulation period, then the time values for those log samples will be written to
cells G5..G504.
Time History
Returns the time history values of the specified variable. This command returns a column of N numbers, as with the
Sample Times command.
Min, Max, Mean, Standard Deviation
Min return a single number, equalling the minimum value of the specified time history variable during the specified
simulation period. Similarly for Max, Mean and Standard Deviation (which can be abbreviated to Std Dev).
w
Automation, Post-processing
95
Linked Statistics
The Linked Statistics command outputs the same information as the Linked Statistics command on the OrcaFlex
results form. In the variable column of the instruction you should specify a number of results variable names,
separated by commas. The command outputs a table of statistics for those variables, occupying 2N+3 rows by N+2
columns, where N is the number of variables specified.
Spectral Density, Empirical Distribution, Rainflow Half Cycles, Rainflow Half Cycle Count
These commands extract spectral density, empirical distribution and rainflow half cycles results of the specified
variable.
Static Result
Returns the value of the specified variable. This command reports the value in the static configuration.
Spectral Response Graph
Returns the spectral response graph for the specified variable. The command returns two columns of numbers. The
first column is frequency and the second is the RAO.
5.2.7 Range Graph commands
Range Graph, Range Graph Summary, Range Graph Min, Range Graph Max
These commands output, for the specified variable of a line, tables containing range graph results. They are available
for any line variable for which a range graph is available in OrcaFlex.
The Range Graph command gives a table having 7 columns, containing arc length, minimum, maximum, mean,
standard deviation, upper limit, and lower limit. For each point on the line a row is generated in the table containing
the statistics of the values that occurred at that point during the specified simulation period.
You can specify that only a subset of the columns are to be output. This is done by listing the columns to be output in
the Additional Data column. This is most easily done using the Instructions Wizard.
The Range Graph Summary command gives a table having two rows, one for the overall minimum and one for the
overall maximum. Each row has 4 cells; two are label cells and the other two contain the overall minimum (or
maximum) value that occurred at any point on the line during the specified simulation period, and the arc length at
which it occurred.
The Range Graph Min and Range Graph Max commands output just the overall minimum or maximum value
respectively.
If you have loaded a simulation file then you must specify, in the Simulation Period column of the instruction, the
period of simulation for which you want results. Otherwise, if you have loaded a data file, you should leave this
column blank and the results for the static configuration are reported.
If the Additional Data column in the instruction is left blank then the results will apply to the whole line.
You can restrict these commands to only cover part of the line, by specifying a range of arc lengths, e.g. "20 to 50", in
the Additional Data column. The table will then only include results for points whose arc length is within the
specified range. You can also use ranges such as "<35" or ">60" to specify all arc lengths less than a point or all arc
lengths greater than a point. The length units used must be the same as those used in the OrcaFlex simulation file.
Alternatively, you can specify a section number in the Additional Data column to restrict results to that section.
5.2.8 Data commands
Get Data, Select
This command outputs the value of a data item. The object is specified in the Object Name column of the instruction
sheet and the data item is specified in the variable column.
The data item is specified using the batch script name of the data item. If the data item appears in a table in
OrcaFlex, then its row number must be given. The row number follows the data item name and is given as an index
enclosed by either square or round brackets (don't mix them on the same line). The index is always 1-based - i.e. [1]
is the first row of the table. For example if you wanted to output the number of segments in the 3rd section of a line
then the variable cell would be "NumberOfSegments[3]". For more details see batch script assignment.
Certain objects require special select commands to output certain data items. For example if you want to output
wave train data for the Environment and there is more than one wave train then you need to specify the particular
Automation, Post-processing
w

96
wave train. Likewise certain vessel type data requires you to specify a draught and/or an RAO type and direction.
Example commands to do this are given below:
Command Object Name Additional
Data
Simulation
Period
Variable
Select WaveTrain Environment Wave2
Get Data Environment WaveTrainType
Select WaveTrain Environment Wave3
Get Data Environment WaveTrainType
Select Draught VType1 Draught3
Get Data VType1 CurrentCoeffSurgeArea
Select RAOs VType1 Displacement
Select Direction VType1 30
Get Data VType1 RAOSwayAmplitude[3]
Select Direction VType1 60
Get Data VType1 RAOSwayAmplitude[2]
Select RAOs VType1 QTF
Select Direction VType1 45
Get Data VType1 RAOSurgeAmplitude[6]
Notes: The Select commands must be issued before the Get Data commands.
The Select commands are only needed for certain data items. For example the sea density data item
does not depend on wave train so it would not need a Select WaveTrain command.
5.2.9 Instructions Wizard
The Instructions Wizard allows you to create OrcaFlex spreadsheet instructions interactively. In many ways it is
the equivalent of the Select Results form in OrcaFlex. The Instructions Wizard is found on the Orcina menu in the
spreadsheet.
Instructions Wizard Tutorial
For a quick introduction to the Instructions Wizard we recommend the following tutorial.
Prepare a simple OrcaFlex simulation file and an empty OrcaFlex spreadsheet
For the purpose of this example you need a simulation file containing at least a vessel and a line. You could use one
of the standard OrcaFlex examples - see www.orcina.com/SoftwareProducts/OrcaFlex/Examples.
Now create an OrcaFlex spreadsheet and save it in the same directory as the simulation file. Then delete all the
sample instructions on the Instructions worksheet so that the spreadsheet looks like this:
w
Automation, Post-processing
97

Figure: Empty instructions table
Add a Load instruction using the Wizard
The instructions wizard creates and inserts instructions on the currently selected row. So the next step is to select
the first instruction row by clicking on a cell in row 5. Then open the Instruction Wizard by clicking on the Orcina
menu and selecting "Instructions Wizard".
In the Instructions Wizard click the drop down button and change the command to "Load". A file name field and a
browse button will now appear. Click the browse button and select the simulation file you saved in the first part of
this tutorial. The Instructions Wizard should now look as follows:

Figure: Load instruction in the Instructions Wizard
To add the instruction to the spreadsheet click the "Accept and Close" button and the spreadsheet should now look
as follows:
Automation, Post-processing
w

98

Figure: Load instruction on the Instructions Sheet
The Load instruction tells the spreadsheet to open the specified file.
Add results instructions using the Wizard
Now we need to add some more instructions which specify which results to extract from this simulation file. Open
the Instructions Wizard again and change the command to "Time History". In the Object list select an OrcaFlex Line
(if you are using the "A01 Catenary Riser.sim" example then select 10" Cat Constant EA) and then select Effective
Tension from the Variable list.
This time, to add the instruction click the "Accept and go to Next Row" button. You will see the instruction being
added to the worksheet but the Instructions Wizard will remain open allowing you to add yet more instructions.
More than one instruction can be added at once. Suppose that you want time histories of X, Y and Z for the line.
Select these from the Variable list using CTRL+CLICK or SHIFT+CLICK. The Variable list now looks as follows:

Figure: Multiple selection of results variables
Now click the "Accept and go to Next Row" button and you will see 3 instructions being added, one for each variable.
Now close the Wizard (by clicking the "Close" button) and process all the instructions. You should see 4 time
histories output on a new worksheet called "Results".
Setting Period and Additional Data for the instructions
The instructions added so far all specify the default simulation period of "Whole Simulation" and the default line
position of "Arclength 0".
w
Automation, Post-processing
99
In the Wizard you can specify a different simulation period by changing the Period drop down list. The available
options are: "Whole Simulation", "Latest Wave", "Specified Period", "Static State" and each stage of the simulation,
e.g. "Stage 0", "Stage 1". Try selecting different simulation periods and adding instructions. Notice how the values in
the Simulation Period column reflect your selections in the Wizard.
For OrcaFlex Lines you also need to specify a point on the line, e.g. End A, End B, arclength 50, node 12 etc. All these
options are available in the Wizard when you are specifying results for a line.
In addition, certain results require extra information.
- If you are extracting clearance results for Lines then you need to specify the clearance line.
- If you are extracting stress component results for Lines then you need to specify the cross-sectional position.
- If you are extracting Wing results for 6D Buoys then you need to specify the wing.
- If you are extracting position results for Winches then you need to specify the winch connection point.
- If you are extracting results for the Environment then you need to specify the position at which you want results
reported.
Other commands
So far we have just looked at time history results but the Wizard allows you to build other instructions. For example,
open the Wizard again and change the command to Range Graph. Notice how slightly different options are available
reflecting the fact that range graphs are specified in a slightly different way from time histories.
Try also experimenting with other commands like Linked Statistics, Sample Times, Spectral Density, Max, Standard
Deviation and so on.
There are even commands for reporting model data: Select and Get Data.
Labels, sheet name, output cell
The one part of the Instructions Wizard which we have not discussed is the section titled "Labels" as shown below:

Figure: Labels section of the Instruction Wizard
This section determines what gets written into the first 4 columns of the instructions table, namely Sheet Name,
Label Cell, Label and Output Cell.
If the Overwrite option is not checked then these columns are not altered when instructions are written by the
Wizard. If this option is checked then the Wizard will output values in each of these 4 columns as specified in the
relevant field.
You can choose to use a default label, in which case the label will be assembled based on the particular instruction it
is associated with. Alternatively you can choose to specify the label yourself.
When instructions are added the Label Cell and Output Cell values on the Instructions Wizard will be incremented
automatically. This automatic procedure will not always produce the values you require. However, it generally gives
a good first effort which you can modify later.
5.2.10 Duplicate Instructions
The Duplicate Instructions form allows you to duplicate sets of OrcaFlex spreadsheet instructions for multiple load
cases.
Automation, Post-processing
w

100
Suppose you are analysing a number of different load cases for a variety of environmental conditions. Once you have
built the spreadsheet instructions for a single load case you typically want to generate the same instructions for
each other load case. The Duplicate Instructions form automates this procedure.
The Duplicate Instructions form can be found on the Orcina menu in the spreadsheet. Before using it you should
create a set of instructions for the first load case - an example is shown below:

Figure: Instructions table with instructions for a single load case
You are now ready to use the Duplicate Instructions form. When it first opens it looks as follows:
w
Automation, Post-processing
101

Figure: The Duplicate Instructions form
Simulation file selection
If your load case files (either OrcaFlex simulation files or OrcaFlex data files) are generated by an OrcaFlex batch
script then you should set this option to From Script File and select the script file using the Browse button or by
typing the file name into the "Script File Name" field. A duplicate set of instructions is generated for each file which
is written by the script file. We strongly recommend that you use this option since script files make QA much more
manageable.
Alternatively, if your load case files are generated by some other means then you can choose the Specified option
and you will then be able to specify each load case file directly.
Duplication Method
Usually you will want results for each load case to appear on separate sheets. To do this you set this option to
Different Sheets. The results sheets will be assigned names based on the load case file name. If you want you can
also specify a prefix for the sheet name by filling in the Sheet Base Name field.
Sometimes, however, it is desirable for all the results to appear on a single sheet - this is achieved with the Single
Sheet option. The duplication process will generate new instructions with the same Sheet Name.
When you select the Single Sheet option you must also specify row and column offsets. These offsets allow you to
avoid the results from each load case overwriting other load case results. Suppose that the results from the first load
case took up 20 rows worth of space. In this case you would probably specify a row offset of 22 (to allow 2 rows of
whitespace between load case results) and a column offset of 0.
Duplicating the instructions
Once you have decided exactly how the instructions are to be duplicated you click the Duplicate button and the
instructions table will be modified to look something like this:
Automation, Post-processing
w

102

Figure: Instructions table with duplicated instructions for multiple load cases
Adding / removing instructions
Quite often you will find yourself wanting to add more instructions to the each load case. The easiest way to do this
is to delete all the instructions apart from those of the first load case. In the screenshot above this would mean
deleting all cells from row 9 and below. You can then add more instructions to the first load case. Finally you simply
repeat the duplication process outlined above and you will have the extra instructions for each load case.
5.2.11 Tips and Tricks
Here are some useful tips for setting up the instructions table of an OrcaFlex Spreadsheet.
Use Excel's "=" facility
If you have several instruction table cells that are equal to some other cell, A9 say, then set them to "=A9". That way
when you alter A9 then the other cells will automatically alter to match. For example if you have a block of 10
instructions that all output their result to sheet "Load Case 3" then set the first instruction's Worksheet cell, cell A9
say, to "Load Case 3" and then set the other Worksheet cells to "=A9". You can now change the destination sheet for
all the instructions by simply altering cell A9.
Use OffsetCell to specify output cells indirectly
You can do a similar thing with the Output Cell (and Label Cell) by using the special spreadsheet function
OffsetCell(PointerCell, ColOffset, RowOffset).
Suppose that, on your instruction sheet, the output cell D9 contains the address "C12"; i.e. D9 points to C12 (on the
output sheet). Then you can now use C12 as an Origin and set up some other output address relative to it. To do this
set the other output cell to "=OffsetCell(D9, 3, 4)", which means "the cell 3 columns right and 4 rows down from the
cell referenced in D9". The output will therefore be placed in cell F16 on the output sheet.
The advantage of this is that you can now easily redirect the output of a whole set of instructions by simply changing
the first one's output cell. The other instructions' output destinations stay fixed relative to the first's.
w
Automation, Batch Processing
103
Here's the formal definition of OffsetCell. It takes 3 parameters:
- PointerCell is the address of a cell that contains the address of an OriginCell.
- ColOffset and RowOffset are integers specifying an offset from that OriginCell.
The function returns the address of the cell that is ColOffset columns right and RowOffset rows down from the cell
that PointerCell points at.
5.2.12 Error Handling
In the OrcaFlex Spreadsheet, errors in instructions are handled by either displaying an error message window or by
writing an error message to the specified output cell. So when setting up new instructions:
- Check carefully that you have set all the instruction cells correctly.
- Then test the instructions by selecting them and using the Process Selected Instructions menu item.
- Then check that the specified Label Cells and Output Cells have been set correctly.
5.3 BATCH PROCESSING
5.3.1 Introduction
Simulations, script files and fatigue analyses can all be run in unattended mode, by using the Calculation | Batch
Processing menu item. This command opens a form that allows you to set up a list of jobs that are to be run. The list
can include any number and mixture of the following types of job:
1. Static analysis of pre-prepared OrcaFlex data files (.dat or .yml). OrcaFlex opens the data file, performs the static
analysis and then saves the results in a simulation file with the same name as the data file, but with a .sim
extension.
2. Dynamic analysis of pre-prepared OrcaFlex data files (.dat or .yml). OrcaFlex opens the data file, performs the
static analysis, runs the dynamic simulation and then saves the results in a simulation file with the same name
as the data file, but with a .sim extension.
3. Partially-run OrcaFlex simulation files (.sim). OrcaFlex opens the simulation file, finishes the dynamic
simulation and then saves the completed simulation, overwriting the original file.
4. A batch script file (.txt). This is a text file which contains OrcaFlex script commands. OrcaFlex opens the script
file and obeys the commands in turn. The most common use of script files is to perform a series of systematic
variations on a base data file.
5. A fatigue analysis file (.ftg). OrcaFlex performs the fatigue analysis and saves the results to an Excel compatible
spreadsheet of the same name but extension .xls.
6. An OrcaFlex Spreadsheet (.xls). OrcaFlex loads the spreadsheet in Excel and processes all the instructions on the
Instructions sheet.
When adding data files (.dat or .yml) you need to specify whether static or dynamic analysis is to be performed.
This choice is made from the Add Files file dialogue window, or from the popup menu.
OrcaFlex can auto-save partial completed dynamic simulations to file at regular intervals during the batch job. This
is useful if your computer is prone to failure (for example because of overnight power failures) since the part-run
simulation file can be loaded and continued, rather than having to re-run the whole simulation from scratch.
Multi-threading
The batch processing functionality can make use of multiple processor cores. So, for example, if you have a quad-
core machine then 4 simulation files can be run concurrently.
Since some batch tasks can depend on the output of other tasks OrcaFlex processes tasks in a very particular order,
as follows:
- The batch script files are all processed first. Because it is common to write scripts that output data files it is
important to complete all batch scripts before processing the data files.
- Any data or simulation files are processed next.
- Fatigue files are processed next. These use simulation files as input and so should not be started until all data or
simulation files have been processed.
Automation, Batch Processing
w

104
- Finally any OrcaFlex spreadsheet files are processed. These also cannot be started until all data or simulation
files have been processed.
The commands in batch script files are processed sequentially. Consequently any simulations that are processed
with Run commands cannot be performed in parallel. Because of this it is advisable to use the SaveData command
rather than the Run command when creating batch scripts. Such a script would create a number of OrcaFlex data
files which you could then process in the batch form using all available processor cores.
Batch Form User Interface
Close
Dismisses the batch form.
Add Files
Adds jobs to the list. The standard file dialogue window is displayed, where you select one or more files to be added
to the list.
Files can also be added by drag and drop. That is if you are browsing your file system then you can highlight files
and drag them onto the jobs list.
Remove Files
Removes any files highlighted in the jobs list.
Check Files
OrcaFlex opens each file in the jobs list, checks that they contain valid OrcaFlex data or script commands and reports
any errors. When checking OrcaFlex spreadsheet or fatigue files it simply confirms the file exists.
Run Batch
Processes the list of jobs. If a job fails then it is abandoned but other jobs are still attempted. Any errors are reported
once all jobs have been processed.
Pause Batch
Pauses the currently running batch jobs. This can be useful if you temporarily want another process on your
machine to have the processor resource that OrcaFlex is using.
Stop Batch
Terminate processing of batch jobs.
Warnings
Displays a window allowing you to review all warnings generated by OrcaFlex during a calculation. These warnings
are suppressed when you are operating in batch mode and this button allows you to review them once the
simulation has completed.
Close program when Batch completes
If checked then OrcaFlex will close once the processing of jobs completes. This feature is intended principally for
users with networked licences. It allows you to release your claim on an OrcaFlex licence as soon as the batch of jobs
is complete.
5.3.2 Script Files
OrcaFlex provides special facilities for running a series of variations on a base data file, using a script file. This
contains a sequence of commands to read a data file, make modifications to it, and run the modified file, storing the
results for later processing. The file can also include comments. The syntax for the instructions is described in the
next topic. For examples see the Batch Script Examples.
Script files can be written using any text editor. Alternatively, there are facilities in the OrcaFlex spreadsheet for
automatically generating script files for regular sets of cases.
5.3.3 Script Syntax
An OrcaFlex batch script is made up of commands, which are obeyed sequentially, and comments, which are
ignored. A comment is a line that is either blank or on which the first non-blank characters are "//". A command can
be:
w
Automation, Batch Processing
105
1. A directive followed by one or more arguments, optionally separated by white space (one or more spaces or
tabs). For example: load c:\temp\test.dat where load is the directive and c:\temp\test.dat is the
argument.
2. An assignment of the form VariableName=value, again with optional white space separators. For example:
Length = 55.0.
Note that:
- Directives, variable names, and model object names are all case independent.
- If your script includes a relative file name then it is taken to be relative to the directory from which the script
was loaded.
- File names, arguments, variables or values containing spaces or non-alphanumeric characters must be enclosed
in single or double quotes and they must not contain the same quote character as is used to enclose them. For
example '6" pipe' and "200' riser" are valid, but the following are not valid:
6 inch pipe - contains spaces, so needs to be enclosed in quotes;
6"pipe - contains a double quote, so needs to be enclosed in single quotes;
'6' pipe' - contains a single quote, so needs to be enclosed in double quotes instead of single.
5.3.4 Script Commands
The following batch script commands are currently available. You need to put quotes round file names or other
parameters that include spaces or non-alphanumeric characters.
Load <FileName>
Opens the OrcaFlex file named <FileName>. The file can be either a data file or a simulation file.
LoadData <FileName>
Opens the data from the OrcaFlex data file named <FileName>.
RunStatics <FileName>
Perform statics for the current model and save the resulting simulation to <FileName>. After the file is saved the
model is reset.
RunDynamics <FileName>
Run dynamics for the current model and save the resulting simulation to <FileName>. After the file is saved the
model is reset.
Run <FileName>
Identical to RunDynamics.
Save <FileName>
Save the current model to <FileName>.
If calculation results (either statics or dynamics) are available then a simulation file will be saved. Otherwise a data
file will be saved. When saving data, if the file extension is .yml then a text data file will be saved; otherwise a binary
data file will be saved.
SaveData <FileName>
Save the data from the current model to <FileName>.
If the file extension is .yml then a text data file will be saved; otherwise a binary data file will be saved.
Note: In the Load/LoadData, Save/SaveData and RunStatics/RunDynamics/Run commands, if
<FileName> is a relative path then it is taken to be relative to the directory from which the script
file was loaded.
ExtendSimulation <StageDuration>
Adds a new stage of length <StageDuration>. This command is equivalent to the Calculation | Extend Dynamic
Simulation menu item. You would normally follow this command with a Run command.
Automation, Batch Processing
w

106
Reset
Resets the current model. This command is equivalent to the Calculation | Reset menu item.
NewModel
Deletes all objects from the current model and resets data to default values. This command is equivalent to the File |
New menu item.
Create <ObjectType> [<ObjectName>]
Creates a new object of type <ObjectType>. The new object is automatically selected which means that subsequent
assignment commands apply to this new object.
The <ObjectType> parameter can be "Line Type", "Vessel Type", "Line", "Winch" etc. Select Edit | Add from the
Model Browser menu to see a list of possible values for this parameter.
Alternatively variable data sources can be created by setting the <ObjectType> parameter to "Bending Stiffness",
"Drag Coefficient" etc. This list of possible variable data source object types can be found in the Data Source Type
tree on the variable data form.
If the optional <ObjectName> parameter is included then the new object will be given that name.
Delete <ObjectName>
Deletes the object called <ObjectName>.
Select [<Object Type>] <ObjectName>
Specify the model object to which subsequent assignment commands will apply.
The <ObjectType> parameter is optional, and by default is 'object', meaning select the named model object.
<ObjectName> must then be either the name of an object that exists in the current model or one of the reserved
names 'General' (for the General data form) or 'Environment' (for the Environment data form).
Some examples of the select and assignment commands are given in Examples of setting data.
Other <ObjectType> values only need to be specified in the following special cases.
If the Environment has been selected and there is more than one wave train, then before you can specify any wave
train data you must give another select command to select the wave train. This second select command has the
form:
Select WaveTrain <WaveTrainName>
So, for example:
Select Environment
Select WaveTrain Primary
WaveDirection = 30.0
Similarly, if the Environment has been selected and there is more than one current data set, then you must select
one of them before specifying any current data. For example:
Select Environment
Select Current Current2
RefCurrentDirection = 270.0
Note that this is not the same as setting the Active Current. In fact, you should avoid setting up multiple current data
in batch scripts if possible: this is best done interactively on the Environment form.
If a vessel type has been selected and it has more than one draught, then before specifying any draught-dependent
data you must give another select command that selects the draught. This second select command has the form:
Select Draught <DraughtName>
Before specifying data for RAOs you need to specify the type of RAOs - this can be either Displacement, WaveLoad
or QTF. This is done with a command of the form:
Select RAOs <RAO type>
Similarly, before specifying vessel type data for a given wave direction you must give another select command to
select that direction. This takes the form:
Select Direction <Direction>
w
Automation, Batch Processing
107
So, for example:
Select "Vessel Type1"
Select Draught Transit
Select RAOs Displacement
RAOOriginX = 10
RAOOriginY = 0
RAOOriginZ = 2
Select Direction 45
RAOSurgeAmplitude[2] = 0.1
Select Direction 90
RAOSurgeAmplitude[2] = 0.16
Note: Indentation with spaces or tabs is optional, but makes scripts more readable.
Assignment
Assignment commands take the form
VariableName = Value
The VariableName on the left hand side must be one of the recognised variable names and the named variable must
exist in the currently selected model object. The Value on the right hand side must be in the appropriate form for
that variable (i.e. numeric or text) and it must be given in the same units as used in the current model.
For example:
Select Vessel1
Length = 110
Draught = "Operating draught"
If VariableName is the name of a variable that appears in a check box in OrcaFlex then the Value should be True or
False. For example:
Select Environment
CurrentRamp = True
If VariableName is the name of a variable that appears in a table in OrcaFlex, then its row number must be given.
The row number is given as an index enclosed by either square or round brackets (don't mix them on the same line),
and is always 1-based - i.e. [1] is the first row of the table. Note that this sometimes requires care, since in OrcaFlex
the table might not be 1-based. For example, when setting the prescribed motion for a vessel, the command
PrescribedMotionVelocity[2] = 4.8
sets the velocity in the 2nd row of the table, but in this case the first row of the table is stage 0 (the build-up stage)
so this command (slightly confusingly) sets the velocity for stage 1.
More examples of the select and assignment commands are given in Examples of setting data.
InvokeWizard
Sets the data for the selected object using either the Line Type Wizard or the Plasticity Wizard. The selected object
must be either a line type or a bend stiffness variable data source. The input data for the Wizard should first be set
using data assignment calls.
An example of how to use this command is given in Examples of setting data.
WaveSearch <FileName>
Exports the wave search spreadsheet to the specified file. The file can be an Excel spreadsheet (.xls), a tab delimited
file (.txt) or a comma separated file (.csv). The decision is taken based on the file extension that you specify.
SHEAR7DataFile <LineName> <FileName>
Exports to <FileName> a SHEAR7 data file for the line named <LineName>.
SHEAR7MdsFile <LineName> <FileName> [<FirstMode> <LastMode>]
Exports to <FileName> a SHEAR7 Mds file for the line named <LineName>.
The <FirstMode> and <LastMode> parameters are optional. If they are specified then mode numbers in the range
<FirstMode> to <LastMode> inclusive are exported. If these parameters are omitted then all modes are exported.
Automation, Batch Processing
w

108
Only the Transverse and Mostly Transverse modes are included in the exported file. If you have specified first and
last modes to export then these mode numbers refer to the transverse and mostly transverse modes. The program
takes the following steps:
1. Calculate all modes.
2. Sort the modes into order of decreasing period / increasing frequency.
3. Remove all modes which are not Transverse or Mostly Transverse.
4. Export the modes in the range <FirstMode> to <LastMode> inclusive.
SHEAR7OutFile <LineName> <FileName>
Exports to <FileName> the SHEAR7 .out file for the line named <LineName>. This command is only available if the
direct SHEAR7 interface is in use.
SHEAR7PltFile <LineName> <FileName>
Exports to <FileName> the SHEAR7 .plt file for the line named <LineName>. This command is only available if the
direct SHEAR7 interface is in use.
5.3.5 Examples of setting data
The Select command is probably the most difficult script command to use. To help understand how it works we
present some examples of its use below:
Simple examples
For many objects the script commands for setting data take the form:
1. Select the object using the command Select <ObjectName>.
2. Set the data using one or more commands of the form VariableName = Value.
The object name is most easily found on the Model Browser. The variable name is found by opening the relevant
data form, selecting the required data item and pressing F7.
Some examples of this procedure follow:
Select Link1
UnstretchedLength = 50

Select "3D Buoy1"
Mass = 4
Volume = 8
Height = 7.5

Select Line1
IncludeTorsion = Yes
Note: The name "3D Buoy" needs to be enclosed in quotes because it contains a space. If the name
contains a double quote and spaces then it should be enclosed with single quotes.
Data in tables and indices
Some data in OrcaFlex appears in tables. For example consider the Structure page of the Line Data form which
specifies how a Line is made up of a number of sections. Each section is specified by its Line Type, length etc. The
following example sets the number of sections of the line to be 2 and then sets data for both sections in turn.
Select Line1
NumberOfSections = 2

LineType[1] = Riser
Length[1] = 75
TargetSegmentLength[1] = 4

LineType[2] = Rope
Length[2] = 200
TargetSegmentLength[2] = 20
Note that we use blank lines to lay out the script. This is not essential but makes reading the script easier.
w
Automation, Batch Processing
109
Data which appears in tables is always set using the indexed notation used above. Having stated this rule, we
immediately break it in the section below!
Line Type, Clump Type and Flex Joint Type data
These data are set by first selecting the type by name and then assigning the data as illustrated below:
Select "Line Type1"
OuterDiameter = 0.28
InnerDiameter = 0.21
On the Line Types Data form there is an option to view the data for all Line Types at once or to view it by individual
Line Type. When the data is being viewed for all Line Types at once the data appears in tables with one row per Line
Type. However, the data must be set by first selecting the type by name and then assigning the data. You cannot set
Line Type using index notation.
Similar rules apply to Clump Type data and to Flex Joint Type data.
Drag Chain Type and Wing Type data
These data are also set by first selecting the type by name and then assigning the data. For example:
Select "Drag Chain Type1"
Length = 12

Select "Wing Type1"
NumberOfAngles = 12
Angle[2] = -80
Lift[2] = 0.2
Drag[2] = 0.15
Moment[2] = 0.5
Data found on the General Data form
Data found on the General Data form can be set as follows:
Select General
InnerTimeStep = 0.01
OuterTimeStep = 0.1
Data found on the Environment Data form
Data found on the Environment Data form can be set as follows:
Select Environment
SeaBedStiffness = 3000
SeaBedDamping = 80
For data specific to a particular wave train you must first select the Environment and then select the particular wave
train. This makes use of the alternative syntax for Select which is Select <Object Type> <ObjectName>. For a wave
train you replace <ObjectType> with WaveTrain and replace <ObjectName> with the name of the wave train as
defined on the Environment Data form. For example:
Select Environment
Select WaveTrain "Swell from SW"
WaveTrainDirection = 135
WaveTrainType = "Dean Stream"
WaveTrainHeight = 2.5
WaveTrainPeriod = 18
Select WaveTrain "Local Wind Sea""
WaveTrainDirection = 40
WaveTrainType = JONSWAP
WaveTrainHs = 5.7
WaveTrainPeriod = 9
Data for Current data sets
Multiple Current data sets can be defined. Again this requires the alternative syntax for Select as shown below:
Select Environment
MultipleCurrentDataCanBeDefined = Yes
NumberOfCurrentDataSets = 2
CurrentName[1] = "120deg"
Automation, Batch Processing
w

110
CurrentName[2] = "150deg"
Select Current "120deg"
RefCurrentDirection = 120
Select Current "150deg"
RefCurrentDirection = 150
ActiveCurrent = "150deg"
Vessel Type Data
Some Vessel Type data is set in a straightforward manner as follows:
Select "Vessel Type1"
Length = 120
PenWidth = 3
Symmetry = "XZ plane"
Note: Because the symmetry value (XZ plane) contains a space it must be enclosed in quotes.
However, the majority of Vessel Type data requires that you also specify which draught the data applies to. For
example:
Select "Vessel Type1"
Select Draught "Transit Draught"
CurrentCoeffSurgeArea = 1200
CurrentCoeffSwayArea = 1100
CurrentCoeffYawAreaMoment = 120E3
To set data for displacement RAOs, wave load RAOs and wave drift QTFs you must also specify which type of RAO
the data applies to. For example:
Select "Vessel Type1"
Select Draught "Survival Draught"

Select RAOs Displacement
RAOOriginX = 10
RAOOriginY = 0
RAOOriginZ = 2

Select RAOs WaveLoad
RAOOriginX = 0
RAOOriginY = 0
RAOOriginZ = 0

Select RAOs QTF
RAOOriginX = -3
RAOOriginY = 0
RAOOriginZ = 4
Note that the variable names are the same but different data is set depending on which type of RAOs has been
selected.
In addition, when setting RAO table data (for displacement RAOs, wave load RAOs and wave drift QTFs) you must
specify which direction the data applies to. For example:
Select "Vessel Type1"
Select Draught "Survival Draught"
Select RAOs Displacement
Select Direction 22.5
RAOYawAmplitude[2] = 0.13
Select Direction 45
RAOYawAmplitude[2] = 0.18
However, it is worth pointing out that situations where you would wish to specify RAO table data in a batch script
are rare. It is much more likely that you would import this data into OrcaFlex from some external source and then
save it as part of the base case data file.
Variable Data sources
Data for Variable Data sources can be set from the batch script, although once again we feel it is unlikely that you
would need to do this often. The procedure for setting variable data sources is illustrated below:
w
Automation, Batch Processing
111
Select Stiffness1
NumberOfRows = 3

IndependentValue[1] = 0
DependentValue[1] = 0

IndependentValue[2] = 0.2
DependentValue[2] = 1000

IndependentValue[3] = 0.4
DependentValue[3] = 5000
Note that IndependentValue and DependentValue are the variable names for the X and Y columns of the variable
data source. That is if you are setting data for a bending stiffness data source then IndependentValue denotes
curvature and DependentValue denotes bend moment.
Line Type Wizard
The Line Type Wizard can be used from batch script. First of all you must select the Line Type and set its Wizard
data. Once this is complete the Wizard is invoked using the InvokeWizard command as illustrated below:
Select "Line Type1"
WizardCalculation = "Homogeneous Pipe"
PipeMaterial = Steel
PipeOuterDiameter = 0.082
PipeWallThickness = 0.005
InvokeWizard

Select "Line Type2"
WizardCalculation = "Line with Floats"
FloatBaseLineType = "Line Type3"
FloatDiameter = 0.80
FloatLength = 1.2
FloatPitch = 5.5
InvokeWizard
Plasticity Wizard
The Plasticity Wizard can be used from batch script. First of all you must select the Bend Stiffness variable data
source and set its Wizard data. Once this is complete the Wizard is invoked using the InvokeWizard command as
illustrated below:
Select Stiffness1
StressOD = 0.30
StressID = 0.27
Type = "Ramberg-Osgood curve"
E = 230.0e6
RefStress = 385.0e3
InvokeWizard
Polar Coordinates data on the All Objects form
The All Objects data form allows end connection data to be specified as polar coordinates and this polar coordinates
data is only accessible from this form.
The data appears in a table containing all Line, Winch and Link connections. However, the data still belongs to each
individual object and the appearance of a table of data is purely presentational. This means that to set the data you
must first select the individual Line, Link or Winch and then set the data, as illustrated below:
Select Line1
PolarR[1] = 20.0
PolarTheta[1] = 45.0
PolarR[2] = 340.0
PolarTheta[2] = 45.0
Select Line2
PolarR[1] = 20.0
PolarTheta[1] = 90.0
PolarR[2] = 340.0
PolarTheta[2] = 90.0

Automation, Batch Processing
w

112
Select Winch1
PolarR[3] = 0.0
PolarTheta[3] = 90.0
PolarR[4] = 10.0
PolarTheta[4] = 90.0
For lines and links an index of 1 means End A and an index of 2 means End B. For winches the index identifies the
winch connection point.
Colour data
Drawing colour data items can be set through batch script in a variety of ways. The simplest is to use the pre-defined
colours as follows:
Select "Line Type1"
PenColour = Red
Select "Line Type2"
PenColour = Green
The full list of pre-defined colours is: Black, Maroon, Green, Olive, Navy, Purple, Teal, Gray, Silver, Red, Lime, Yellow,
Blue, Fuchsia, Aqua, MoneyGreen, SkyBlue, Cream, MedGray and White.
If you want more control over the colour then you can specify an RGB value as an integer. The following example has
the same effect as the previous one:
Select "Line Type1"
PenColour = 255
Select "Line Type2"
PenColour = 65280
Using decimal values for RGB value is impractical. Instead a neat trick is to specify the colour as a hexadecimal value
by prefixing it with a $ sign as follows:
Select "Line Type1"
PenColour = $0000FF
Select "Line Type2"
PenColour = $00FF00
Select "Line Type3"
PenColour = $FF0000
This sets the colours to red, green and blue respectively. Each pair of hex digits controls the amount of red, green
and blue. So white is $FFFFFF and black is $000000. A value of $C0C0C0 gives a light grey and $808080 produces a
darker grey.
Further examples
More examples of batch scripts can be found in the OrcaFlex examples J01 Batch Script.
5.3.6 Handling Script Errors
As with other computer programs, OrcaFlex batch script files can easily contain errors. It is therefore wise to check
your script file for errors before running it as a batch job. To check for errors in your scripts, use the "Check Files"
button on the OrcaFlex batch form. This will read and obey all the commands in the script files except those that
perform calculations or write files. It will then report any errors it finds, including the line number on which the
error occurs. You can then correct the problem before running the script. Example3.txt is an example containing
various errors, so to see how errors are reported use the "Check Files" button with this example.
Warning: If you misspell a variable name in an assignment statement then "Check Files" will report an error.
But if you incorrectly specify a variable name which is nevertheless valid then OrcaFlex cannot
detect the error. So you need to be very careful that you use the correct variable names for the data
items that you want to change.
5.3.7 Obtaining Variable Names
Each OrcaFlex data item has its own name that is used to specify it in a script file. The names of the data items are
based on the corresponding labels used on the data form. To find out the name of a data item, open the appropriate
data form, select the data item, and then open (e.g. by right click) the pop-up menu and select the Batch Script
Names command (or press F7). This displays the variable name of the selected data item and you can select and
copy+paste the name directly into your batch script.
w
Automation, Batch Processing
113
If the data item is in a table (or group) of data items then the Batch Script Names form displays the names of all the
data items in the table. The different columns in the table each have their own names; you then need to add an index
to specify which row you want. The exceptions to this are the 'Connections' data controls for Lines and Links, which
consist of two rows, one for End A and one for End B. For these, the Batch Script Names form lists the names for End
A only: those for End B may be obtained by simply replacing 'EndA' with 'EndB' in the name.
Finally, note that Batch Script Names are not available for an empty table - e.g. if you want the names for the
attachments table on the line data form, but there are currently no attachments. In this case you must add a row to
the table before you can use the Batch Script Names form.
5.3.8 Automating Script Generation
The OrcaFlex Spreadsheet has facilities for automating the generation of a script file for a regular set of cases. To use
this facility select the Script Table worksheet. On this sheet is a table of information which is used to create the
script file. Documentation of how to set up this table is also included on the worksheet.
An example is shown below:

Figure: Example table for automatic batch script generation.
The script generated by this table loads a base case from a file called "Base Case.dat". Because no path is specified
then this file is located in the same directory as the spreadsheet. Four cases are produced based on this data file with
current values of 0.5 and 0.8 and line lengths of 100 and 120.
Note: The cell containing the base case data file name has the file name surrounded by quotes. This is
because the file name contains a space. However, the quotes are not needed for the file names in
the last column because they do not contain spaces.
The script is generated as follows. First select the top left cell containing the text "Script Table". Then drop down the
Orcina menu contained in the main Excel menu and click "Create Batch Scripts". When you do this you are presented
with the following window:
Automation, Batch Processing
w

114

Figure: Automatically generated batch script
The script file has not been saved yet. You should check that the automatically generated script is as intended.
Should you wish to, you can modify the script file name at this point.
If there is a problem with the script you can click the Close button and correct the script table.
Save button
Saves the script file.
Save and Run button
Saves the script file and then processes it.
If the script has any Run commands then OrcaFlex is loaded and the script is processed by the standard OrcaFlex
batch form. Otherwise the script is processed from within Excel - progress is reported on the Excel status bar.
Save, Run and Submit button
Saves the script file and then processes it within Excel. Each data file saved by the script is then submitted to
Distributed OrcaFlex which runs and saves the simulation file.
Note: The Save, Run and Submit button is only available if Distributed OrcaFlex is installed on your
machine. In addition, it cannot be used if the script contains any Run commands.
Multiple script tables
You can have multiple copies of the script table within a workbook. To create all the batch scripts in one operation
select all the script tables and then click "Create Batch Scripts" in the Orcina menu.
How the script is generated
The Script Table worksheet contains documentation of how the script is generated.
w
Theory, Coordinate Systems
115
6 THEORY
6.1 COORDINATE SYSTEMS
OrcaFlex uses one global coordinate system GXYZ, where G is the global origin and GX, GY and GZ are the global axes
directions. In addition, there are a number of local coordinate systems, generally one for each object in the model. In
general we use Lxyz to denote a local coordinate system. Another coordinate system that we make widespread use
of is the Line End orientation which we denote Exyz.
All the coordinate systems are right handed, as shown in the following figure, which shows the global axes and a
vessel with its own local vessel axes Vxyz. Positive rotations are clockwise when looking in the direction of the axis
of rotation.
z
Sea Surface
Z
Y
X
G
V
y
x
Vessel Axes
Global Axes

Figure: Coordinate Systems
The global frame of reference must be a right-handed system and its Z-axis GZ must be positive upwards, but
otherwise it is chosen by the user. You can therefore choose the position of the global origin G and the horizontal
direction GX according to what suits the problem being analysed.
The local coordinate systems for each type of object are described in the section about that object, but typically the
origin is at a selected fixed point on the object and the axes are in special fixed directions, such as the surge, sway
and heave directions for a vessel. The seabed also has its own seabed origin and local axes, with respect to which the
seabed shape is defined.
The local axes are distinguished from the global axes by using lower case; for example the local object directions are
referred to as x, y and z . The global directions are referred to as the X, Y and Z. Whenever data or results are
coordinate system dependent, they are referred to as being either global-relative (and are labelled in upper case) or
object-relative (and are labelled in lower case).
You can ask OrcaFlex to draw the local axes on the 3D view. This enables you to see the local axes and check that
they are as wanted.
Most of the data and results are given relative to the global axes, including:
- Data defining the sea, such as the mean sea surface Z level and the current and wave direction.
- The positions of objects; for example the position of the vessel is defined by giving the global coordinates of the
vessel origin V.
The most common object-relative items are:
Theory, Direction Conventions
w

116
- The coordinates of points that move with the object, such as the vertices of a vessel or the connection point
when something is connected to a buoy.
- The direction-dependent properties of objects, such as drag and added mass coefficients, moments of inertia,
etc.
6.2 DIRECTION CONVENTIONS
Directions and Headings
Directions and headings are specified in OrcaFlex by giving the azimuth angle of the direction, in degrees, measured
positive from the x-axis towards the y-axis, as shown in the following figure.
y
x 0
30 150
330
180
270
90
210
Directions relative
to axes

Figure: Directions and Headings
Directions for waves, current and wind are specified by giving the direction in which the wave (or current or wind)
is progressing, relative to global axes. In other words for these directions the x and y-axes in the above figure are the
global GX and GY axes.
Vessel headings are specified as the direction in which the vessel Vx-axis is pointing, relative to global axes. So again,
for vessel headings the x and y-axes in the above figure are the global GX and GY axes.
Vessel responses to waves, and similarly for current and wind, depend on the wave direction relative to the vessel.
For example, vessel type RAOs and QTFs are given for a specified wave direction relative to vessel axes
(= Wave Direction relative to global axes - Vessel Heading). In other words for these vessel-relative directions the x
axis in the above figure is in the vessel heading direction. Hence a relative wave direction of 0 means a wave
coming from astern and a relative direction of 90 means one coming from starboard.
The slope direction for the seabed is specified as the direction that points up the steepest slope, relative to global
axes.
The slope direction of a plane shape that is Fixed or Anchored is specified relative to global axes.
The slope direction of a plane shape that is connected to another object is specified relative to that object's axes.
Azimuth and Declination
Directions are defined in OrcaFlex by giving two angles, azimuth and declination, that are broadly similar to those
used in navigation, gunnery, etc. As with positions, directions are sometimes defined relative to the global axes and
sometimes relative to the local object axes.
For directions defined relative to the object axes Oxyz, the azimuth and declination angles are defined as follows:
- Azimuth is the angle from the x axis to the projection of the direction onto the xy plane. The positive x axis
direction therefore has Azimuth = 0, and the positive y axis direction has Azimuth = 90.
- Declination is the angle the direction makes with the z axis. Therefore Declination is 0 for the positive z-
direction, 90 for any direction in the xy plane, and 180 for the negative z-direction. When Declination is 0 or
180, Azimuth is undefined (OrcaFlex reports Azimuth = 0 in these cases).
w
Theory, Object Connections
117
Directions relative to the global axes are defined in just the same way, simply replacing the local xyz directions
above with the global XYZ directions. A global declination of 0 therefore means vertically upwards, 90 means
horizontal and 180 means vertically downwards.
When a direction is being defined, the "sign" of the direction must also be defined. For example "vertical" does not
fully define a direction - it must be either "vertically up" or "vertically down" before the azimuth and declination
angles can be derived. The "sign" conventions used in OrcaFlex for directions are:
- For Lines, axial directions are always defined in the A to B sense, in other words from End A towards End B.
Thus a vertical line with End A at the top has declination 180.
- For Winches and Links, axial directions are defined in the sense 'from first end towards second end'. Thus a link
with end 1 directly above end 2 has declination 180.
6.3 OBJECT CONNECTIONS
Lines, links, winches and shapes are special objects that can be connected to other objects. First consider connecting
a line to another object. To enable connections to be made each line has two joints, one at each end, which are
drawn as small blobs on the ends of the line, when the model is in Reset state. To distinguish the two ends, the joint
at End A is drawn as a triangle and the joint at End B as a square.
Each of these line end joints can either be Free or else be connected to a Vessel, 3D Buoy, 6D Buoy, the Global Axes
or the seabed. Lines cannot be connected to themselves, to other lines, nor to a Link or Winch. When a line's joint is
Free, that end of the line is free to move and this is indicated by the joint being drawn in the same colour as the line.
When the joint is connected to another object, that end of the line becomes a slave and the object to which it is
connected becomes its master. The connection is then indicated by the joint being drawn in the colour of its master.
Links and Winches also have joints at each end (winches can also have extra intermediate joints) and these are
connected to other objects in the same way as with lines, but with the following exceptions.
- Link and winch joints cannot be Free - they must always be connected to some master.
- Link and winch joints can be connected to nodes on a line, as well as to Vessels, 3D Buoys, 6D Buoys, the Global
Axes or the seabed. This allows, for example, a winch to be attached to the end node of a line so that winching in
or out can be modelled.
Shapes have a single joint which can be connected to Vessels, 3D Buoys, 6D Buoys, the Global Axes or the seabed.
When a joint is connected to a master, the connection is made at a specified master-relative position and the master
object then determines the position of its slave - the slave is dragged around by its master as the master moves. In
response the slave applies forces and moments to its master - for a line these are simply the end force and moment
applied by the line.
Because neither the Global Axes nor the seabed move, a joint connected to either of them is simply fixed in one
position. The difference between them lies in how the connection point is specified. For a connection to the Global
Axes, the X, Y and Z coordinates of the connection point are specified relative to those axes and the joint is called
Fixed. For a connection to the seabed the X and Y coordinates are specified relative to the global axes, but the Z
coordinate is specified relative to the seabed Z level at that X,Y position; the joint is then referred to as being
Anchored. So for an Anchored joint, Z=0 means that the connection is exactly on the seabed and Z=1 means it is 1
unit above the seabed. By using anchored joints you can therefore avoid the need to calculate the seabed Z level at
the given X,Y position (not simple with sloping seabeds).
6.4 INTERPOLATION METHODS
OrcaFlex uses a number of different methods for interpolating data. These methods are described below:
- Linear. The data is assumed to follow a straight line between each (X,Y) pair. Linear interpolation is said to be
piecewise linear. Curves that are linearly interpolated are continuous but their first derivative is discontinuous
at each X data point.
- Cubic spline. Cubic spline interpolation fits a cubic polynomial over each interval in the data, so the fitted
interpolation curve is piecewise cubic. These cubics are chosen so that both the first and second derivatives are
continuous at each X data point. A consequence of this is that with cubic polynomial interpolation the (X,Y) data
specified at any given data point affects the interpolated curve over the whole range of X values, not just over
the intervals near that (X,Y) data point. In other words cubic spline gives a 'non-local' interpolation.
Theory, Interpolation Methods
w

118
- Cubic Bessel (also known as Parabolic Blending). Cubic Bessel interpolation is similar to cubic spline in that it
is also piecewise cubic. But for this method the cubics are chosen so that the only the first derivative is
continuous at each X data point. The second derivative is not, in general, continuous at the data points, which
can be a drawback for some purposes. However cubic Bessel interpolation has the advantage that it gives 'local'
interpolation - i.e. the (X,Y) values at any given data point only affects the interpolated curve over the intervals
near that point.
Choosing interpolation method
Sometimes OrcaFlex provides a choice of interpolation method. In general we would recommend that you use the
default interpolation method, but in some cases it may be appropriate to use a different method. To decide you need
to take into account what the interpolated data is used for and the different properties of the interpolation methods.
If continuity of first derivative is not required then linear interpolation is often appropriate. It has the advantage
that it is very simple. The other 2 methods are piecewise cubic and they both produce a smooth curve, i.e. one with
continuous first derivative. Cubic spline interpolation gives a curve that also has a continuous second derivative,
whereas cubic Bessel does not, but in many cases this is not important.
Both cubic spline and cubic Bessel produce curves that often have overshoots . For example the following graphs
show how each method interpolates a particular set of data. Although the greatest Y value specified in the data is 8,
the interpolated curves for cubic spline and cubic Bessel both exceed this value. How serious this overshoot is
depends on the data - it can be much more serious than illustrated here or sometimes there can be no problem at all.
The amount of overshoot is generally less with cubic Bessel than with cubic spline. But if you are using either of the
piecewise cubic interpolation methods then you should always check whether the interpolated curve gives an
appropriate fit to the data. If it does not then you usually need to supply more data points.


w
Theory, Static Analysis
119

Finally, cubic Bessel interpolation has the advantage that it gives a 'local' interpolation, in the sense that each
specified (X,Y) data point only affects the interpolated curve over the intervals near that point, whereas with cubic
spline the whole curve is affected to some extent by each of the (X,Y) data points.
6.5 STATIC ANALYSIS
There are two objectives for a static analysis:
- To determine the equilibrium configuration of the system under weight, buoyancy, hydrodynamic drag, etc.
- To provide a starting configuration for dynamic simulation.
In most cases, the static equilibrium configuration is the best starting point for dynamic simulation and these two
objectives become one. However there are occasions where this is not so and OrcaFlex provides facilities for
handling these special cases. These facilities are discussed later.
Static equilibrium is determined in a series of iterative stages:
1. At the start of the calculation, the initial positions of the vessels and buoys are defined by the data: these in turn
define the initial positions of the ends of any lines connected to them.
2. The equilibrium configuration for each line is then calculated, assume the line ends are fixed.
3. The out of balance load acting on each free body (node, buoy, etc.) is then calculated and a new position for the
body is estimated. The process is repeated until the out of balance load on each free body is zero (up to the
specified tolerance). For details see Statics of Buoys and Vessels.
For the majority of systems, the static analysis process is very quick and reliable. Occasionally, usually for very
complex systems with multiple free bodies and many inter-connections, convergence may be difficult to achieve. To
help overcome this problem, OrcaFlex provides facilities for the user to suppress some of the degrees of freedom of
the system and approach the true equilibrium by a series of easy stages. See Statics of Buoys and Vessels.
Finally, the static analysis can also be turned into a steady state analysis by specifying non-zero starting velocity on
the General Data form. This is useful when modelling towed systems or other systems that have a steady velocity.
6.5.1 Line Statics
When you do a static analysis OrcaFlex does static analyses for each line in the model.
Note: The lines are analysed in the order they appear in the by types view of the model browser. So if you
are having a problem with the static analysis of a particular line, and there are a lot of lines in the
model, then you can make investigation of the problem easier by dragging the line up to the top of
the list in the model browser.
The static analysis of a given line has two steps:
Line Statics Step 1
The first step calculates a configuration of the line (i.e. positions for all the nodes on the line), using the method
specified on the line data form (either Catenary, Spline, Quick, Prescribed, or User Specified).
Theory, Static Analysis
w

120
Line Statics Step 2
The second step, which is optional, is called Full Statics. If Full Statics is included, then it calculates the true
equilibrium position of the line. The calculation is iterative and hence it needs a starting configuration - for this it
uses the configuration found by step 1. If Full Statics is not included, then the line is simply left in the configuration
found by step 1, which (depending on the method chosen) may not be an equilibrium position.
Unstable equilibria
Sometimes Line Statics Step 2 finds an equilibrium configuration that is unstable. Everyday examples of unstable
equilibria include balancing a coin on its edge or balancing a pencil on its tip.
Very occasionally OrcaFlex statics converges on an unstable equilibrium. An unstable equilibrium can usually be
detected by the presence of large curvature spikes on a range graph. Typically a dynamic run will excite the line
enough to kick it out of the unstable equilibrium. However, statics and dynamics results from such unstable
equilibria are invalid.
Catenary
The Catenary method calculates the equilibrium position of the line, but it ignores the effects of bending and
torsional stiffness of the line or its end terminations.
The Catenary method also ignores contact forces between the line and any solid shapes in the model, but it does
include all other effects, including weight, buoyancy, axial elasticity, current drag and seabed touchdown (see
below) and friction.
Because bend stiffness (and other) effects are not included in the Catenary method, the position found is not, in
general, an equilibrium position. Therefore Full Statics should normally be included unless it is known that the
omitted effects are unimportant. Nevertheless, the Catenary position is often quite close to the true equilibrium
position, especially when bend stiffness is not a major influence.
The Catenary algorithm is robust and efficient for most realistic cases but it cannot handle cases where the line is in
compression. This is because, when bending stiffness is ignored, compression means the line is slack and there is no
unique solution.
The algorithm is an iterative process that converges on the solution. If necessary, you can control the maximum
number of iterations that are attempted, as well as other aspects of the convergence process - see Catenary
Convergence.
The Catenary solution has facilities for including seabed touchdown, with the following limitations:
- Seabed touchdown can only be included at End B of the line, not at End A. Therefore, if you want touchdown
then you should arrange it to be at End B.
- Touchdown is only included if End B is anchored exactly on, or else below, the seabed. If End B is above the
seabed, even if only by a small amount, then no touchdown will be modelled and the line may hang below the
seabed. This will be corrected when the simulation starts, since the nodes below the seabed will be pushed back
up by the seabed reaction forces. Alternatively, you should use the Full statics option, which can handle this
case.
- If End B is below the seabed, then the Catenary algorithm models touchdown by assuming that the line 'levels
out' at the level of End B. This will result in part of the line being below the seabed, but again this will be
corrected when the simulation starts, since the nodes below the seabed will be pushed back up by the seabed
reaction forces.
Spline
The Spline method gives the line an initial shape that is based on a user-defined smooth Bezier spline curve. It is
therefore not, in general, an equilibrium position, and so when it is used Full Statics should be included if you want
the equilibrium position to be found.
The Bezier curve is specified by the user giving a series of control points - it is a curve that tries to follow those
control points - and the Bezier curve and its control points (marked by +) can be seen on the 3D view when in Reset
state. The smoothness of the spline can be controlled using the spline order.
The Spline method puts the line into a position that, as far as possible, follows the Bezier curve. However the Bezier
curve may have the wrong length (depending on how accurately you have set up the control points), so the Spline
w
Theory, Static Analysis
121
method scales the Bezier spline curve up or down until the resulting line shape has the correct As Laid Tension, as
specified on the line data form.
Quick
The Quick method simply leaves the line in the position that it was drawn when in Reset state. This is a crude
catenary shape that (for speed reasons) ignores most effects, including buoyancy, drag, bending and torsional
stiffness, and interaction with seabed and solids. In fact the position set by the Quick method only allows for the
line's average weight per unit length and axial elasticity, so it is not usually an equilibrium position (though for
simple cases it may be quite close). The Quick method should usually be used only as a preliminary to Full Statics.
Prescribed
The Prescribed method is intended primarily for pull-in analyses. It provides a convenient way of setting the line up
in the as laid (i.e. pre pull-in) starting position, ready for a time simulation of the pull-in. The starting shape of the
line is specified by defining a track on the seabed (see Prescribed Starting Shape). The track is defined as a sequence
of track sections each of which is a circular arc of user-specified length and angle of turn and the line is laid along
this track. See Laying out the Line.
Y
X
Start
of track
End A
Azimuth = 10
Track Section 1
Length = 150
Turn = 0 Track section 2
Length = 100
Turn = -90
Track section 3
Length = 100
Turn = 90
Track Section 4
Length = 150
Turn = 0
Continuation of
last track section
10

Figure: Plan View of Example Track
User Specified Starting Shape
The User Specified Starting Shape statics method involves no calculation. Instead you specify a position for each
node and the node is placed there. If torsion is modelled then node orientations can also be specified.
This statics method allows you to restart calculations using line configurations that have been calculated by
separate OrcaFlex calculations. For example you could perform an in-place analysis of a line using its configuration
as calculated by an earlier pull-in analysis.
To perform a restart this way you usually need to disable Full Statics and Whole System Statics. One way to do this is
to set the statics convergence tolerances to large values, e.g. 1e6.
Warning: We recommend that User Specified Statics is only used in this way to perform restarts. Full Statics
or Whole System Statics used in conjunction with User Specified Statics commonly results in slow
and troublesome statics convergence.
Full Statics
The Full Statics calculation is a line statics calculation that includes all forces modelled in OrcaFlex. In particular it
includes the effects of bend stiffness and interaction with shapes. These effects are omitted from the Catenary
calculation, and this sometimes results in significant shock loads at the start of the simulation, when the effects of
bend stiffness and shapes are introduced. Because the Full Statics calculation includes these effects, no such shock
loads should occur when it is used. We therefore recommend using Full Statics for most cases.
Theory, Static Analysis
w

122
To use Full Statics set the Step 2 Statics Method to Full on the Line data form. Full statics needs a starting shape for
the line, and it uses the specified Step 1 Statics Method to obtain this; it then finds the equilibrium position from
there. You should therefore set the Step 1 Statics Method to give a reasonable starting shape, choosing either
Catenary, Prescribed, Quick or Spline.
Which Step 1 Statics Method you should choose depends on the model in question. In general you should choose the
method that gives the best initial estimate of the line's static position. For lines with no buoyant sections and no
interaction with shapes or the seabed, the Quick method may well suffice. If there is seabed interaction or a buoyant
section then Catenary might be better. For lines that interact with a shape, the Spline method is perhaps best since it
enables you to ensure that the line starts on the correct side of the shape.
Which method to use
The settings to use for the line data items Step 1 Statics Method and Step 2 Statics Method depend on the type of
system being modelled and the type of static position wanted.
The default settings (for a new line) are the Catenary method followed by Full Statics. This is often a good choice,
since the Catenary method is fast and in many case gives a good initial estimate of the equilibrium position. It
therefore often provides a good starting point for the Full Statics calculation, which then refines the position to take
into account the effects that the Catenary omits, such as bending and torsional stiffness and interaction with solids.
There are situations where you may need to use other settings. Some specific cases are described below, but first
here are some general points to bear in mind.
Full Statics should be included if you want the true equilibrium position to be found.
When Full Statics is included, the first stage Statics Method is only used to give the initial starting shape for Full
Statics. The choice of Statics Method is then, in principle, not important, since the final position found will be the
equilibrium position, irrespective of the initial starting position. However it is normally best to choose the Statics
Method that gives the best initial estimate of the desired equilibrium position, since this will give the best starting
position for Full Statics to work from.
There are some cases where the choice of Statics Method is important. Firstly, in cases where there may be more
than one equilibrium position, the Full Statics calculation will tend to find the one that is closest to the initial starting
position found by the Statics Method. Secondly, the Full Statics calculation is iterative and may have difficulty
converging if the initial Statics Method position from which it starts is a long way from the true equilibrium position.
In both these situations, it is generally best to choose the Statics Method that gives the best initial estimate of the
desired equilibrium position.
Catenary convergence failure
The Catenary method is iterative and may fail to converge. It may be possible to solve this by adjusting the Catenary
Convergence Parameters on the line data form. If this proves difficult, then an alternative is to use one of the other
statics methods. The Quick method may suffice, or alternatively the Spline method may be needed. Providing Full
Statics is included then the final static position found will be the same.
Full Statics Convergence Failure
Full Statics is also an iterative calculation and may sometimes fail to converge. The convergence process is
controlled by the Full Statics Convergence Parameters on the line data form so it may be possible to obtain
convergence by adjusting some of those parameters.
However, the problem may be due to the initial starting position obtained by the specified statics method being a
long way from the equilibrium position. In this case it may be necessary for the user to specify the Spline statics
method and specify control points that give a good starting shape for the Full Statics.
Note: When setting up the spline control points, it is often useful to first set Full Statics to "No". This
allows you to examine and refine the spline shape, by running the static analysis and adjusting the
control points until the spline shape is close to the desired shape. You can then set Full Statics back
to "Yes" in order to find the true equilibrium position.
Contact With Solids
The Catenary and Quick methods both ignore contact with solids and so they may well give a poor initial position for
the Full Statics to work on. As a result the Full Statics calculation may fail to converge, or else converge to the wrong
equilibrium position (e.g. one in which the line is on the wrong side of the solid). In both these cases it may be better
w
Theory, Dynamic Analysis
123
for the user to select the Spline method and then specify control points that give an initial shape that is close to the
desired equilibrium position.
Pipeline Pull-In
For a pipe lying on the seabed there are usually many equilibrium positions, since seabed friction will often be able
to hold the pipe in the shape it was originally laid. For pull-in analysis this originally-laid shape is generally known,
and the Prescribed method can be used to define this shape.
It is then optional whether Full Statics is included or not. Normally, it would not be included. If it is included then it
will have no effect if the Prescribed position is already in equilibrium - i.e. if friction is sufficient to hold the pipe in
that position. But if friction is not sufficient then Full Statics will tend to find a nearby position that is in equilibrium.
6.5.2 Buoy and Vessel Statics
Each buoy and vessel can be either included or excluded from the static analysis. This is controlled by the data item
Included in Static Analysis on the object's data form.
Notes: You can also use the Buoy Degrees of Freedom Included In Static Analysis data item, on the General
data form, to include or exclude all buoys with a single setting.
Also, for 6D Buoys, you can include just the translational degrees of freedom (X,Y,Z) and exclude the
rotational degrees of freedom. This is sometimes useful as an aid to convergence.
If a buoy is excluded from the static analysis, then when the static analysis is done OrcaFlex will simply place the
buoy in the Initial Position specified on the buoy data form. This will not, in general, be the equilibrium position. The
same applies to vessels.
If any buoys or vessels are included in the static analysis, then the static analysis finds the equilibrium position of
those buoys and vessels, using an iterative procedure.
This iterative procedure usually converges successfully, but in some cases there can be difficulties. To give the best
chance of convergence you should specify buoy and vessel initial positions that are good estimates of the true
equilibrium position. Often you can obtain good estimates by running static analyses of a simplified model and then
using the buoy positions found as the initial positions for the more complex model. There is a button on the general
data form for this purpose - see Use Calculated Positions.
Note: As an aid to static analysis, the out-of-balance forces on buoys and vessels can be drawn on the 3D
view.
If necessary, you can also control the buoy convergence process using the statics convergence parameters on the
general data form.
6.5.3 Vessel Multiple Statics
You can use the Multiple Statics command on the Calculation menu to perform a series of static analyses for a grid of
different positions of a vessel. This feature is mainly intended for use in mooring analyses.
The user specifies a series of regularly spaced positions for one vessel in the model and OrcaFlex then carries out
separate static analyses for each of these vessel positions. Key results, for example load-offset curves, are then made
available in the form of tables and graphs as a function of the offset distance.
The vessel positions are specified by a series of offsets about the vessel's initial position (see Vessel Multiple Statics
Data).
Note: If the offset vessel has "Included in Static Analysis" set to "Yes" then in Multiple Statics this setting
will be ignored (for the offset vessel only) and the vessel will be placed as specified by the offsets.
See Vessel Data.
If the static calculation fails to converge for a particular offset then this is noted in the Statics Progress Window and
the program continues to the next offset. No results are given for offsets with failed statics.
When the calculation is completed the program enters Multiple Statics Complete state. Results can only be viewed
in this state and are lost upon Reset. Results cannot be saved. A dynamic simulation cannot be carried out after
multiple statics - you must Reset first.
Theory, Dynamic Analysis
w

124
6.6 DYNAMIC ANALYSIS
The dynamic analysis is a time simulation of the motions of the model over a specified period of time, starting from
the position derived by the static analysis.
The period of simulation is defined as a number of consecutive stages, whose durations are specified in the data.
Various controlling aspects of the model can be set on a stage by stage basis, for example the way winches are
controlled, the velocities and rates of turn of vessels and the releasing of lines, links and winches. This allows quite
complex operational sequences to be modelled.
Before the main simulation stage(s) there is a build-up stage, during which the wave and vessel motions are
smoothly ramped up from zero to their full size. Ramping of current is optional (see Current Data). This gives a
gentle start to the simulation and helps reduce the transients that are generated by the change from the static
position to full dynamic motion. This build-up stage is numbered 0 and its length should normally be set to at least
one wave period. The remaining stages, simply numbered 1, 2, 3..., are intended as the main stages of analysis.
Time is measured in OrcaFlex in seconds. To allow you to time-shift one aspect of the model relative to the others,
different parts of the OrcaFlex model have their own user-specified time origins. See the diagram below.
For example, simulation time is measured relative to the simulation time origin, which is specified on the Wave page
on the environment data form. The simulation time origin is at the end of the build-up stage, so negative simulation
time is the build-up stage and the remaining stages are in positive simulation time. The figure below shows a
simulation using a build-up of 10 seconds, followed by two stages of 15 seconds each.
Each wave train also has its own time origin, and similarly for time-varying wind and any time history files that you
use. All of these time origins are defined relative to the global time origin (which is not user-specified), so if
necessary you can use the time origins to time-shift one aspect of the model relative to the others.
By default all of the time origins are zero, so all of the time frames coincide with global time. For most cases this
simple situation is all you need, but here is an example where you might want to adjust a time origin.
- You might want to arrange that a wave crest, or a particularly large wave in a random sea, arrives at your vessel
at a particular point in the simulation. If you use the View Profile facility and find that the wave arrives at the
vessel at global time 2590s, then you can arrange that this occurs at simulation time 10s (i.e. 10 seconds into
stage 1) by either setting the simulation time origin to 2580 or else setting the wave train time origin to -2580.
The former shifts the simulation forwards to when the wave occurs, whereas the latter shifts the wave back to
the period the simulation covers.
w
Theory, Dynamic Analysis
125
Simulation
Time
Origin
End of
Simulation
Stage 2 Stage 1
Static Starting
Position
30
-10 0 15
Simulation
Time t
Build-up
Global Time T
T=0
Global
Time
Origin
Time-history
Time
Origin
Time-history Time
0
Wave Train Time
0
Wave Train
Time
Origin

Figure: Time and Simulation Stages
6.6.1 Calculation Method
OrcaFlex implements two complementary dynamic integration schemes, Explicit and Implicit, as described below.
Equation of motion
The equation of motion which OrcaFlex solves is as follows:
M(p,a) + C(p,v) + K(p) = F(p,v,t)
where
M(p,a) is the system inertia load.
C(p,v) is the system damping load.
K(p) is the system stiffness load.
F(p,v,t) is the external load.
p, v and a are the position, velocity and acceleration vectors respectively.
t is the simulation time.
Both schemes recompute the system geometry at every time step and so the simulation takes full account of all
geometric non-linearities, including the spatial variation of both wave loads and contact loads.
Explicit integration scheme
The explicit scheme is forward Euler with a constant time step. At the start of the time simulation, the initial
positions and orientations of all objects in the model, including all nodes in all lines, are known from the static
analysis. The forces and moments acting on each free body and node are then calculated. Forces and moments
considered include:
- weight
- buoyancy
- hydrodynamic and aerodynamic drag
Theory, Dynamic Analysis
w

126
- hydrodynamic added mass effects, calculated using the usual extended form of Morison's Equation with user-
defined coefficients
- tension and shear
- bending and torque
- seabed reaction and friction
- contact forces with other objects
- forces applied by links and winches
The equation of motion (Newton's law) is then formed for each free body and each line node:
M(p)a = F(p,v,t) - C(p,v) - K(p)
This is not the system-wide equation of motion described above, but a local equation of motion for each free body
and each line node. This means that solving these equations of motion merely requires the inversion of 3 by 3 or 6
by 6 mass matrices.
This equation is solved for the acceleration vector at the beginning of the time step, for each free body and each line
node, and then integrated using forward Euler integration. Let us denote the position, velocity and acceleration at
time step t by pt, vt and at respectively. Then the values at the end of the time step, at time t+1, are given by:
vt+1 = vt + dt.at
pt+1 = pt + dt.vt+1
where dt is the time step.
At the end of each time step, the positions and orientations of all nodes and free bodies are again known and the
process is repeated.
The time step required for stable integration is typically very short and OrcaFlex gives guidance on an appropriate
time step. Hydrodynamic and aerodynamic forces typically change little over such a short time interval, and are
time-consuming to compute. To save computing time, these loads are updated only over a longer outer time step.
Both time steps are user-defined and may be set equal for critical cases.
Of the various objects available in OrcaFlex, Lines are the most computationally demanding. For most models that
include lines, the length of time required for dynamic analysis is approximately proportional to the total number of
nodes used multiplied by the total number of inner time steps in the whole simulation. If the time step is maintained
at the recommended value and nodes are distributed uniformly along the lines, then the run time is approximately
proportional to the square of the number of nodes.
Finite element models may contain spurious high frequency response, a feature inherent in the finite element
method. The Line Target Damping data can be used to damp out this high frequency noise.
Implicit integration scheme
For implicit integration OrcaFlex uses the Generalised- integration scheme as described by Chung and Hulbert.
The forces, moments, damping, mass etc. are calculated in the same way as for the explicit scheme. Then the system
equation of motion is solved at the end of the time step.
Because p, v and a are unknown at the end of the time step an iterative solution method is required. Consequently
each implicit time step consumes significantly more computation time than an explicit time step. However, the
implicit scheme is typically stable for much longer time steps than the explicit scheme and often this means that the
implicit scheme is faster.
Numerical damping of the integration scheme
Finite element models may contain spurious high frequency response, a feature inherent in the finite element
method. The Generalised- integration scheme has controllable numerical damping which is desirable since it
remove this spurious, non-physical high frequency response. This numerical damping also leads to much more
stable convergence and hence allows for longer time steps and much faster simulations.
Any integration scheme which includes numerical damping of high frequency response must be careful to avoid
damping response at lower frequencies. The Generalised- integration scheme is designed to minimise the low
frequency damping.
w
Theory, Friction Theory
127
The numerical damping is determined by specifying the level of high frequency dissipation, . OrcaFlex uses a
built-in value of 0.4 which has been chosen to give fast simulation run times without compromising accuracy.
6.6.2 Ramping
Simulation time is reduced by the use of a build up time at the beginning of the simulation. During the build-up time
the wave dynamics, vessel motions and optionally the current are built up smoothly from zero to their full level. This
gives a gentle start to the simulation which reduces transient responses and avoids the need for long simulation
runs. The build-up stage should normally be set to at least one wave period. Negative time is shown during the
simulation to indicate the build-up time; so time before time zero is build up time, time after time zero is normal
simulation with the full specified excitation.
When using a time domain VIV model, ramping is also used to smooth the handover from the standard Morison drag
force applied in statics to the force given by the VIV model.
The ramping factor is calculated as follows:
Ramping Factor = r
3
(6r
2
-15r + 10)
where r is the proportion of the build-up stage completed, given by:
r = (Time + Length of Stage 0) / (Length of Stage 0)
Note: Time is negative throughout the build-up stage.
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
r
R
a
m
p
i
n
g

F
a
c
t
o
r

Figure: The OrcaFlex ramping function
This particular ramping function has been chosen so that its first and second derivatives are zero at the beginning
and end of the build-up stage.
6.7 FRICTION THEORY
OrcaFlex provides a simple friction model that can give an approximate representation of contact friction. This is
commonly used to model seabed friction, friction on mid-water arches, guide tube friction etc.
Seabed friction
In reality seabed interaction is much more complicated than simple friction - it involves effects such as the soil being
displaced by the line as it moves, accumulation of soil in front of the line, etc. To model seabed interaction accurately
would require much more information about the soil structure and would involve modelling the soil itself which is
beyond the scope of OrcaFlex.
Theory, Friction Theory
w

128
Overview of the OrcaFlex friction model
OrcaFlex models friction for contact with the seabed or elastic solids. Hereafter we use the term solid to refer to
either the seabed or elastic solids. The objects which can contact with solids are Lines, 3D Buoys and 6D Buoys.
Note: Friction for contact with elastic solids is only included during dynamics.
Friction is modelled as Coulomb friction in the solid plane. Every object which is in contact with a solid keeps track
of a friction target position (discussed below) and a friction force is applied at which acts towards this target
position.
The standard Coulomb friction model states that a friction force of R is applied, where is the friction coefficient
and R is the contact reaction force. However, this model results in a discontinuous Force / Deflection relationship
which would be impossible for a program like OrcaFlex to solve. Instead we use a modified Coulomb model as
illustrated below:

Deflection

Force
R
R

-D
crit
+R
Deflection

Force
R
+D
crit

Figure: Standard Coulomb and modified Coulomb friction models
In the modified Coulomb friction model the transition from a friction force of -R to +R takes place as a linear
variation over the deflection range -Dcrit to +Dcrit. Here Dcrit is given by:
Dcrit = R / (KsA)
where
Ks is the shear stiffness data item.
A is the contact area.
The friction force can be thought of as being ramped from 0 to a maximum value of R as the deflection increases.
Higher values of Ks lead to the ramping taking place over a shorter distance, and vice versa.
Calculation of friction coefficient
The friction coefficient is defined as follows:
- For contact between Lines and the seabed the friction coefficient is defined on the Line Type data.
- For contact between 3D Buoys and the seabed the friction coefficient is defined on the 3D Buoy data.
- For contact between 6D Buoys and the seabed the friction coefficient is defined on the 6D Buoy data.
- For contact between Lines, 3D Buoys and 6D Buoys and elastic solids the friction coefficient is defined on the
Solid Friction Coefficients data form.
For line friction, both normal and axial coefficients can be defined. If these values are different, OrcaFlex uses a
single value of defined as:
w
Theory, Friction Theory
129
= magnitude of the vector nDn + aDa
where
D = unit vector in the plane of the solid, from the node towards the target position.
Dn, Da = the vector components of D in the node's normal and axial directions.
Target positions in statics
Friction is only applied in statics for contact between lines and the seabed.
If the Step 1 Statics Method is Prescribed then the target positions are laid out along the prescribed shape.
For all other Step 1 Statics Methods the target positions are laid along the seabed in the direction specified by the
Lay Azimuth direction.
The distance between each target position is determined by the unstretched segment length and the As Laid
Tension. If each node was to sit at its target position then the effective tension throughout the line would be the As
Laid Tension.
Target positions in dynamics
During dynamics, at the end of each time step, each friction target position is updated using the following rules:
- At the start of the dynamic simulation, for lines in contact with the seabed, the target position from statics is
used. Otherwise the target position is set equal to the contact position.
- If an object is not in contact then the target position is not defined since no friction is applied.
- If an object has just come into contact then the target position is set equal to the contact position.
- If the target position is a distance greater than Dcrit from the contact position then the target position is placed at
a distance exactly Dcrit from the contact position on the vector D, as shown in the following figure. This can be
thought of as 'dragging' the target position towards the contact position.
- Otherwise the target position is not modified.


Contact position
position


Vector D

Old Target position
Circle of
radius D
crit

New Target position

Figure: Updating friction target positions during dynamics
Moments induced by friction (Lines)
The friction force is applied at the point of contact with the solid.
For lines this is at the line outer edge as defined by the contact diameter. Moments in OrcaFlex are reported at the
centreline and so the moment arm effect of applying the friction force at the outer edge results in a moment being
applied to the node. The applied moment is given by the vector cross-product pF, where p is the point of contact
relative to the node origin and F is the applied friction force.
This frictional moment effect can most easily be visualised by considering a pipe being dragged laterally across a
surface with friction. It is intuitively obvious that the friction force will result in the pipe being twisted.
Note: This effect is only modelled if torsion is included in the model.
Theory, Spectral Response Analysis
w

130
Moments induced by friction (3D and 6D Buoys)
Since 3D Buoys do not have rotational degrees of freedom, no such moments are applied.
For 6D Buoys the friction force is applied at each vertex in contact with the solid. If the vertex if offset from the buoy
origin then the appropriate moment, about the buoy origin, will be generated.
Shear damping
Objects moving in the solid plane may also experience a damping force. Let d be the distance between the contact
position and the target position. If 0 d Dcrit then a damping force in the solid plane is applied to the object with
magnitude given by:
D = S.min(2(MKA)
1/2
Vs, R)
where
S is a scaling factor given by 1 - (d/Dcrit),
is percentage of critical contact damping / 100,
M is the mass of the object,
K is the solid normal stiffness,
A is the contact area,
Vs is the component of velocity in the solid plane.
6.8 SPECTRAL RESPONSE ANALYSIS
The Spectral Response Analysis capability of OrcaFlex provides a facility for determining the response
characteristics for any OrcaFlex results variable. This feature produces output similar to a frequency domain
package but the calculation is based on a random wave time domain simulation. The results of this simulation are
transformed into the frequency domain using a Fast Fourier Transform (FFT) and the spectral response is then
derived. The final output of the analysis is an RAO for the results variable of interest.
Time domain random wave for spectral response analysis
In order to calculate spectral response you must first perform a random wave time domain simulation of the system
of interest. To do this you must specify a single wave train with wave type of Response Calculation. The random
wave used has a truncated white noise spectrum, which has the energy spread evenly over a user-specified range of
frequencies.
Spectral response calculation details
The spectral response analysis starts from the time history of some results variable of interest. The time history
covers the response calculation simulation period as specified on the General Data form. The duration of this period
together with the logging interval, t, determine the total number of samples available for the FFT.
OrcaFlex does not necessarily use all the available samples. This is because the FFT calculation is slow when
presented with a time history whose size is a large prime, or is a product of large primes.
Suppose that N is the total number of available samples. OrcaFlex will choose M with the properties that that M N
and the FFT can be calculated quickly and efficiently for M samples. Having chosen M, OrcaFlex then selects the M
samples from the original time history that are closest to the end of the simulation.
OrcaFlex then calculates the power spectral density (PSD) of these M time history samples using the FFT. The PSD is
denoted as the sequence (fi, Pi) for i = 1, 2, , M/2 where Pi is understood to be the PSD for frequency fi. The values
of fi are integer multiples of the FFT's fundamental frequency, f = 1/tM, given by fi = if. The maximum frequency
equals M/2.f = 1/2t. This frequency is known as the Nyquist critical frequency.
The RAO is calculated as
Ri = (Pi/Si)
1/2
, for i = 1, 2, , M/2
where Ri is the RAO at frequency fi and S is the spectral density at frequency fi for the response calculation random
wave.
Notes: Provided that a Response Calculation wave type has been selected the Waves page of the
Environment data form reports the value of M. This takes the form of a text label which says "The
response calculation will use M data points".
w
Theory, Extreme Statistics Theory
131
Only the frequencies which lie in the target frequency range are used for wave components.
Because of this there may be fewer than M/2 wave components.
Spectral response random wave components
It is important that the random wave components have frequencies which match those produced by the FFT. This is
because of a phenomenon of the FFT known as frequency leakage which would occur if the random wave
component frequencies did not match the FFT frequencies. The effect of leakage is to make the output of the FFT
noisy.
The response calculation wave components are selected with frequencies that are also integer multiples of f. In this
way the frequency leakage effect is avoided.
Not all these frequencies are used in the response calculation random wave. This is because there could potentially
be so many frequencies (i.e. for large values of M/2) that the real-time required to simulate a wave with that many
components would be prohibitive. The user controls the range of frequencies to be used with the Target Frequency
Range data on the Environment data form.
Comparison with traditional frequency domain methods
For frequency domain approaches to calculating system responses each non-linearity in the system has to be
handled in special ways. However, by calculating the RAOs using a fully non-linear time domain simulation and then
transforming to the frequency domain using Fourier transform methods, the non-linearities are included in the
calculation automatically.
The advantage of the method used by OrcaFlex is that non-linearities can be handled implicitly without the need for
special, bespoke linearisation techniques.
6.9 EXTREME STATISTICS THEORY
The theory for the calculation of the extreme statistics results provided by OrcaFlex depends on which extreme
statistics distribution is chosen:
- The Rayleigh distribution method uses a direct calculation, based on the spectral moments of all the data.
- The Weibull and Generalised Pareto (GPD) distributions are fitted to selected extremes of the data, with the
extremes being selected using the peaks-over-threshold method, with declustering to reduce dependence
between the selected extremes. The Weibull or GPD distribution is then fitted to those extremes using the
maximum likelihood method.
Rayleigh Distribution
The derivation and use of spectral moments to fit the Rayleigh distribution is described in detail by Ochi (he terms it
the "exact method"). The conditions under which the Rayleigh distribution is appropriate for the peak responses are
that the response variable can be considered to be a stationary Gaussian process.
Ochi shows that, under the Gaussian assumption, the most probable maximum value occurring in storm duration T is
given by
+ [2ln(n)]
1/2

where n = T/Tz is the number of peaks and , and Tz are the mean, standard deviation and mean up-crossing
period, respectively, of the time history being analysed. OrcaFlex reports this most probable extreme value for the
specified storm duration.
Ochi goes on to show that, for low values of risk parameter , the extreme value which will be exceeded only with
probability is
+ [2ln(n/)]
1/2

However this latter formula is approximate and is valid only for low values of . So OrcaFlex instead calculates the
extreme value which will be exceeded with probability using the alternative formula
+ [2ln(-n/ln{1-})]
1/2

Ochi derives this formula using Cramr's approximation method in his paper On Prediction of Extreme Values, and it
gives good results over the whole range of values of risk factor .
Note that all the above formulae are for maxima, i.e. analysing the upper tail extremes. Corresponding formulae for
minima (lower tail) are trivially obtained by replacing the plus signs with minus signs in these formulae.
Theory, Extreme Statistics Theory
w

132
Weibull and Generalised Pareto Distributions
The Weibull and Generalised Pareto (GPD) distributions are both fitted using the maximum likelihood method. Both
distributions are fitted to extremes of the data that are selected using the peaks-over-threshold method with
(optional) declustering. They differ only in the actual statistical distribution that is fitted and then used to predict
the extreme values.
Maximum likelihood
Maximum likelihood estimation is a standard general-purpose statistical technique for fitting a given parametric
distribution to an arbitrary set of data. It fits the parameters of the distribution to the data by calculating the
parameters that make the observed data most likely under the chosen distribution. The technique is widely
described in statistical texts; in particular the book by Coles is particularly relevant, since he describes its
application to the GPD. Coles also documents the motivation for, and implementation of, the peaks-over-threshold
method and declustering.
Threshold models
When the object of primary interest is extrapolation into the tails of the data, it is safest to use a model that is fitted
only to the tails of the data. This is because models that are fitted to the entire dataset tend to be driven by features
in the body of the data, which may not be relevant to the tail behaviour. Mathematical theory (e.g. Coles) tells us that
as the size of the dataset and the threshold for fitting increase, the peaks over the threshold converge in distribution
to a Generalised Pareto distribution.
Declustering
An important assumption underpinning the maximum likelihood method is that the data are independent. However,
this is often not the case. Consider daily temperature for example, where one cold day is likely to be followed by
another: successive daily values are not independent, but values a week or a month apart might well be considered
independent. For OrcaFlex time history results this is even more important, since unless the log interval is
extremely long, then successive time history values will certainly not be independent.
We can get much closer to independence by sub-sampling the data, ensuring that the points we choose are
sufficiently far apart as to be approximately independent. The usual way to do this is declustering, and OrcaFlex uses
runs declustering as described by Coles.
The complete model-fitting process is then summarised as:
1. Use runs declustering to identify clusters of exceedences.
2. Determine the maximum excess within each cluster.
3. Assuming independence between these maxima, use maximum likelihood to fit the chosen distribution to them.
Weibull distribution
OrcaFlex fits the two-parameter Weibull distribution with distribution function
FW2(y) = 1 - exp{(-y/)

}
to the declustered excesses over threshold, y, where
= Weibull distribution scale parameter
= Weibull distribution shape parameter.
This is equivalent to applying the three-parameter Weibull distribution
FW3(x) = 1 - exp[{-(x-)/}

]
to the original values x unadjusted for the threshold (i.e. x=+y), where the location parameter is the user-
specified threshold value and is not fitted by the maximum likelihood calculation.
Generalized Pareto distribution
The Generalized Pareto distribution function, for the excesses y above threshold, is
FGPD(y) = 1 - (1+y/)+
-1/
for 0, where (1+y/)+ = max(0, 1+y/)
FGPD(y) = 1 - exp(-y/) for =0
where
= GPD scale parameter
w
Theory, Environment Theory
133
= GPD shape parameter.
6.10 ENVIRONMENT THEORY
6.10.1 Buoyancy Variation with Depth
The buoyancy of an object is normally assumed to be constant and not vary significantly with position. The
buoyancy is equal to Vg, where is the water density, V is the volume and g is the acceleration due to gravity. In
reality the buoyancy does vary due to the following effects:
- If the object is compressible then its volume V will reduce with depth due to the increasing pressure.
- The water density can vary with position, either because of the compressibility of the water, or else because of
temperature or salinity variations. Normally the density increases with depth, since otherwise the water column
would be unstable (the lower density water below would rise up through the higher density water above).
For buoys and lines these effects can be modelled in OrcaFlex.
Note: The bulk modulus and density variation facilities in OrcaFlex only affect the buoyancy of objects.
OrcaFlex does not allow for compressibility or density variation when calculating hydrodynamic
effects such as drag, added mass, etc. The calculation of hydrodynamic effects use the
uncompressed volume and a nominal sea density value, which is taken to be the density value at
the sea density origin.
Compressibility of Buoys and Lines
All things are compressible to some extent. The effect is usually not significant, but in some cases it can have a
significant effect on the object's buoyancy. To allow these effects to be modelled, you can specify the compressibility
of a 3D Buoy, 6D Buoy or Line Type by giving the following data on the object's data form.
Bulk Modulus
The bulk modulus, B, specifies how the object's volume changes with pressure. If we denote by V the compressed
volume of the object then V is given by:
V = V0(1-P/B)
where V0 is the uncompressed volume at atmospheric pressure, and P is the pressure excess over atmospheric
pressure.
The bulk modulus has the same units as pressure F/L
2
and the above formula can be thought of as saying that the
volume reduces linearly with pressure, and at a rate that would see the object shrink to zero volume if the pressure
ever reached B. For an incompressible object the bulk modulus is infinity, and this is the default value in OrcaFlex.
The above formula breaks down when P>B. In this case OrcaFlex uses a compressed volume V of zero. However, the
relationship between pressure and volume would become inaccurate well before the pressure exceeded the bulk
modulus. In practise B is normally very large, so the object normally only experiences pressures that are small
compared to B.
6.10.2 Current Theory
Extrapolation
In the presence of waves, the current must be extrapolated above the still water level; in OrcaFlex we adopt the
convention that the surface current applies to all levels above the still water level.
If a sloping seabed is specified, the boundary is inconsistent with a horizontal current. This effect is not usually
important and is uncorrected in OrcaFlex. The current at the greatest depth specified is applied to all greater depths.
Interpolated Method
Horizontal current is specified as a full 3D profile, variable in magnitude and direction with depth. The profile
should be specified from the still water surface to the seabed. Linear interpolation is used for intermediate depths. If
the specified profile does not cover the full depth then it is extrapolated (see Extrapolation above).
Power Law Method
Current direction is specified and does not vary with depth. Speed (S) varies with position (X,Y,Z) according to the
formula:
Theory, Environment Theory
w

134
S = Sseabed + (Ssurface - Sseabed) x ((Z-Zseabed) / (Zsurface-Zseabed)) ^ (1/Exponent)
where
Ssurface and Sseabed are the current speeds at the surface and seabed,
Exponent is the power law exponent,
Zsurface is the water surface Z level,
Zseabed is the Z level of the seabed directly below (X,Y).
Note: If Z is below the seabed (e.g. has penetrated the seabed) then the current speed is set to Sseabed
and if Z is above the surface (e.g. in a wave crest) then current speed is set to Ssurface.
6.10.3 Seabed Theory
The seabed reaction force is the sum of a penetration resistance force in the seabed normal direction and a friction
force in the direction tangential to the seabed plane and towards the friction target position. If explicit integration is
used in the dynamic analysis then, in addition, seabed damping forces are applied in the normal and tangential
directions.
The penetration resistance force depends on the choice of seabed model used - for details see either Linear Seabed
Model Theory or Non-linear Soil Model Theory. For details of the friction force see Friction Theory.
Objects Affected
3D buoys and 6D buoys, lines and drag chains interact with the seabed. Other objects are not affected by it.
A line interacts when one of its nodes penetrates the seabed. The seabed reaction forces are calculated using the
penetration of the lower outer surface of the line (based on the line type contact diameter) and the seabed forces are
applied at that point. The seabed lateral friction force is calculated using the line type seabed friction coefficient.
A 3D buoy interacts when the buoy origin penetrates the seabed. The seabed reaction forces are calculated using the
penetration of the buoy origin, and are applied at the buoy origin. The seabed friction force is calculated using the
buoy seabed friction coefficient.
A 6D buoy interacts when any of its vertices penetrates the seabed. Each penetrating vertex experiences its own
seabed normal reaction and lateral friction force, based on the penetration of that vertex and displacement of that
vertex from its friction target position, and the forces are applied at that vertex. This gives a model where each
vertex behaves rather like a pad (such as the landing pad on a lunar module).
Drag chain interaction with the seabed is calculated differently - see drag chain seabed interaction.
Linear Seabed Model Theory
In the Linear seabed model the seabed behaves as a linear spring in both the normal and tangential directions, with
spring strengths equal to the Normal and Shear seabed stiffnesses specified in the seabed data.
Normal Seabed Stiffness Force
The normal stiffness reaction force has magnitude = KnAd and is applied in the outwards normal direction, where:
Kn = seabed normal stiffness
A = penetrator contact area
d = depth of penetration into the seabed.
For details on how the penetrator contact area is calculated see 3D Buoy Theory, 6D Buoy Theory and Line
Interaction with Seabed and Solids.
Normal Seabed Damping Force
If implicit integration is used in the dynamic analysis then no seabed damping forces are applied. If explicit
integration is used in the dynamic analysis then, seabed damping forces are applied in the normal and tangential
directions, as follows.
The normal seabed damping force is only applied when the penetrating object is travelling into the seabed, not when
it is coming out of the seabed. It is applied in the seabed outward normal direction and has magnitude Dn given by:
Dn = .2(MKnA)
1/2
Vn if Vn > 0
Dn = 0 if Vn 0
w
Theory, Environment Theory
135
where
= seabed percent critical damping / 100
M = mass of the object (e.g. the mass of a node of a line)
Kn = seabed normal stiffness
A = penetrator contact area
Vn = component of velocity normal to the seabed, positive when travelling into the seabed and negative when
coming out.
The tangential seabed damping force, Dt, is applied in the direction opposing the tangential component of the
velocity of the penetrator. It is given by
Dt = - 2(MKtA)
1/2
Vt
where
Kt = seabed shear stiffness
Vt = vector component of penetrator velocity tangential to the seabed.
For details on how the penetrator contact area is calculated see 3D Buoy Theory, 6D Buoy Theory and Line
Interaction with Seabed and Solids.
6.10.4 Seabed Non-Linear Soil Model Theory
The non-linear soil model has been developed in collaboration with Prof. Mark Randolph (Centre for Offshore
Foundation Systems, University of Western Australia). It is a development from earlier models that proposed and
used a hyperbolic secant stiffness formulation, such as those proposed by Bridge et al and Aubeny et al.
For details of the data used by the non-linear soil model and its suitability for different seabed types see Non-linear
Soil Model.
Note: The non-linear soil model is currently experimental and we are working on comparing the model
against experimental results for pipe-seabed contact. Please contact Orcina if you have any
feedback and comments on the model or ideas for improvement.
The main aspects of the model are:
- It models the seabed normal resistance using four penetration modes, as shown in the diagram below.
- In each penetration mode the seabed reaction force per unit length, P(z), is modelled using an analytic function
of the non-dimensionalised penetration z/D, where z = penetration and D = penetrator contact diameter. See
Penetration Resistance Formulae below.
- In Not In Contact mode the resistance P(z) is zero. In the other 3 modes the formula for P(z) uses a term of
hyperbolic form, which provides a high stiffness response for small reversals of motion, but ensures that as the
penetration z increases or decreases from its value when this episode of penetration or uplift started, then the
resistance P(z) asymptotically approaches the soil ultimate penetration resistance (for penetration) or ultimate
suction resistance (for uplift) at that penetration depth.
These features are now described in more detail in the sections below.
Theory, Environment Theory
w

136
Penetration Modes

Uplift
Initial
Penetration
Repenetration
Not in Contact
First
contact
only Start of
first uplift
only
Second or
subsequent
contact
Start
repenetrating
when still in
contact
Start of second
or subsequent
uplift
Break
contact

Figure: Soil Model Penetration Modes
The penetration mode of a given penetrator (e.g. a node on a line, a vertex of a 6D buoy or the origin of a 3D buoy) is
determined by its penetration, z, and in the dynamic analysis by whether the penetration has increased or
decreased since the previous time step. The details are as follows.
- In the static analysis the Uplift and Repenetration modes are not used and the penetration mode is set to
Initial Penetration if the penetration is +ve or to Not In Contact otherwise. The effect of this is that the static
position found is based on the assumption that any static penetration occurred as a single progressive
penetration, and it does not allow for the effect any of uplift and repenetration that might have occurred during
first installation. OrcaFlex cannot allow for such effects since it only has limited information about how the line
was originally laid.
- The dynamic simulation starts from the results of the static analysis, so the penetrator starts the simulation in
either Not In Contact mode or Initial Penetration mode. If it starts in Not In Contact mode then it changes to
Initial Penetration mode the first time the penetration becomes +ve.
- Once initial penetration has occurred in the dynamic simulation, the penetrator then stays in Initial
Penetration mode until it starts to lift up, and it then changes to Uplift mode.
- The penetrator then stays in Uplift mode until either the penetration falls to zero, in which case it breaks
contact and changes to Not In Contact mode, or else until the penetration starts to increase again, in which case
it changes to Repenetration mode. Similarly, Repenetration mode persists until the penetrator starts to lift up
again, when it changes to Uplift mode. So if the penetrator stays in contact with the seabed but oscillates up and
down then it switches back and forth between Uplift and Repenetration modes.
- If the penetrator breaks contact and then later makes contact again then it enters Repenetration mode,
notInitial Penetration mode. This is because the model assumes that second and subsequent periods of contact
are making contact with the same area of seabed as was previously disturbed by the initial penetration.
Ultimate Resistance Limits
The resistance formulae are arranged so that as penetration z increases (for penetration) or decreases (for uplift)
then the resistance asymptotically approaches the ultimate penetration resistance Pu(z) (for penetration) or the
ultimate suction resistance Pu-suc(z) (for uplift). These ultimate penetration and suction asymptotic limits are given
by
w
Theory, Environment Theory
137
Pu(z) = Nc(z/D)su(z)D
Pu-suc(z) = -fsucPu(z)
where
- su(z) = undrained shear strength at penetration z. This is given by su(z) = su0 + z, where su0 is the undrained
shear strength at the mudline and is the undrained shear strength gradient, both of which are specified in the
Seabed Soil Properties data.
- D = penetrator contact diameter. For 3D Buoys and 6D Buoys the contact diameter is taken to be the square root
of the contact area (see 3D Buoy contact area and 6D Buoy Theory). For Lines the contact diameter is as
specified in the Line Type Contact Data.
- Nc(z/D) = bearing factor. For z/D 0.1 this is modelled using the power law formula Nc(z/D) = a(z/D)
b
, where a
and b are the non-dimensional Penetration Resistance Parameters of the model, as specified in the Soil Model
Parameters. For z/D < 0.1 the formula Nc = Nc(0.1)(10z/D)
1/2
is used instead, which gives a good approximation
to the theoretical bearing factor for shallow penetration.
- fsuc = non-dimensional Suction Resistance Ratio parameter of the model, as specified in the Soil Model
Parameters.
Penetration Resistance Formulae
In Not In Contact mode the penetration resistance P(z) is zero.
In the other three modes the resistance P(z) is modelled using formulae that involve the following variables:
- = z / (D/Kmax). This is the penetration, but non-dimensionalised to be in units of D/Kmax, where Kmax is the
Normalised Maximum Stiffness parameter of the model, as specified in the Soil Model Parameters.
- z0 = penetration z at which the latest episode of this contact mode started, i.e. the value at the time the latest
transition into this contact mode occurred.
- 0 = z0 / (D/Kmax) = non-dimensionalised penetration at which the latest episode of this contact mode started.
- P0 = resistance P(z) at which the latest episode of this contact mode started.
Initial Penetration Mode
For Initial Penetration mode the starting penetration and resistance values, z0 and P0, are both zero. The
penetration resistance is then given by
P(z) = HIP().Pu(z)
(1)
where
HIP() = / [1 + ]
The term HIP() is a hyperbolic factor that equals 0 when = 0 when initial penetration starts, equals when = 1,
i.e. when z = D/Kmax, and asymptotically approaches 1 as penetration gets large compared to D/Kmax. The purpose of
this factor is to provide a high initial stiffness while ensuring that the penetration resistance P(z) rises smoothly
from zero when contact first starts (when and z are both 0) and asymptotically approaches the ultimate
penetration resistance, Pu(z), if gets large (i.e. if z gets large compared to D/Kmax). This is illustrated by the blue
curve in the model characteristics diagram below, which approaches the ultimate penetration resistance limit
(upper grey curve) as penetration gets large compared to D/Kmax.
Uplift Mode
For Uplift mode the penetration resistance is given by
P(z) = P0 - HUL(0 - )(P0 - Pu-suc(z))
(2a)
but subject to a suction limit - see below. Here:
- HUL(0 - ) = ( 0 - ) / [ AUL(z) + (0 - ) ]
- AUL(z) = [P0 - Pu-suc(z)] / Pu(z0)
The term HUL(0 - ) is a hyperbolic factor that equals 0 when = 0 at the start of this uplift, and asymptotically
approaches 1 if the non-dimensional uplift (0 - ) gets large compared to AUL(z). So in uplift mode the resistance
given by equation (2a) drops from its value P0 when this uplift started, and asymptotically approaches the
Theory, Environment Theory
w

138
(negative) ultimate suction resistance Pu-suc(z) if the non-dimensional uplift (0 - ) gets large compared to AUL(z).
See the green curve in the model characteristics diagram below.
Suction Limit
Experiments (Bridge et al) have found that suction resistance can only be sustained for a limited displacement past
the point where the net resistance becomes negative, and suction then decays as uplift continues. To model this the
resistance given by equation (2a) is limited to be no less than (i.e. no more suction than) a negative lower bound
Pmin(z), given by:
Pmin(z) = EUL(z)Pu-suc(z)
(2b)
where
- EUL(z) = exp[Min{0, (z - zP=0) / (suc zmax)}]
- zmax = largest ever penetration z for this penetrator
- zP=0 = largest penetration z at which suction has started during any uplift
- suc = non-dimensional Normalised Suction Decay Distance parameter of the model, as specified in the Soil
Model Parameters.
The exponent in the expression for EUL(z) is zero or negative, so EUL(z) 1.EUL(z) equals 1 when z zP=0, but decays
towards zero if the penetration z is less than the largest penetration, zP=0, at which suction has ever occurred during
uplift. The effect of this is that the term Pmin(z) limits suction to be no more than Pu-suc(z) when the first uplift starts,
but as the penetrator lifts up higher (relative to the maximum penetration at which suction has ever occurred
during uplift) then the suction is limited more. This models the suction decay effect that experimental evidence has
found.
Repenetration Mode
For Repenetration mode the penetration resistance is given by
P(z) = P0 + HRP( - 0)(Pu(z) - P0)
(3a)
but subject to a repenetration resistance upper bound - see below. Here
- 0 and P0 = non-dimensional penetration and resistance at the start of this repenetration
- HRP( - 0) = ( - 0) / [ ARP(z) + ( - 0) ]
- ARP(z) = ( Pu(z)-P0 ) / Pu*
- Pu* = Pu(z) if P0 0, i.e. if this repenetration started from a zero or negative resistance
- Pu* = Pu(z*) if P0 > 0, where z* is the penetration when the preceding episode of uplift started
The term HRP( - 0) in equation (3a) is a hyperbolic factor that equals 0 when = 0 at the start of this repenetration,
and asymptotically approaches 1 if the non-dimensional repenetration ( - 0) gets large compared to ARP(z). So the
repenetration mode resistance given by equation (3a) rises from its value P0 when this repenetration starts, and
asymptotically approaches the ultimate penetration resistance Pu(z) if the non-dimensional repenetration ( - 0)
gets large compared to ARP(z). See the purple curve in the model characteristics diagram below.
Repenetration Resistance Reduction After Uplift
Experiments (Bridge et al) have found that when repenetration occurs following large uplift movement the
repenetration resistance is reduced until the previous maximum penetration is approached. To model this the
repenetration resistance given by equation (3a) is limited to be no more than an upper limit Pmax(z) given by:
Pmax(z) = ERP(z)PIP(z)
(3b)
where
- PIP(z) = penetration resistance that initial penetration mode would give at this penetration, as given by equation
(1)
- ERP(z) = exp[min{0, - rep + (z - zP=0) / (suc zmax)}]
- zmax = largest ever penetration z for this penetrator
- zP=0 = largest penetration z at which suction has started during any uplift
w
Theory, Environment Theory
139
- suc = non-dimensional Normalised Suction Decay Distance parameter of the model, as specified in the Soil
Model Parameters.
- rep = non-dimensional Repenetration Offset After Uplift parameter of the model, as specified in the Soil Model
Parameters.
The exponent in the expression for ERP(z) is zero or negative, so ERP(z) 1. The expression for ERP(z) gives a value <
1, and so limits the repenetration resistance to be less than the ultimate penetration resistance Pu(z), until the
penetration z exceeds zP=0 by a certain amount, quantified by rep. This models the effect that repenetration
following large uplift movement shows reduced resistance until the previous maximum penetration is approached.
Model Characteristics
The following diagram illustrates the effect of the above equations as penetration changes, for a catenary line
moving up and down on the seabed.

(5) suction releases
if repenetrates ..
5
Ultimate penetration
resistance, P
u

Normal
seabed
reaction
force
(3) Further uplift is
resisted by suction
Non-dimensional
Penetration,
(2) Uplift
(6) Further
repenetration
(1) Initial
penetration
(4) .. or if uplift
continues
O
-ve reaction
(ie suction)
Ultimate suction
resistance, P
u-suc

1 2 3 4 10 15 20 25

Figure: Soil Model Characteristics
The model starts in Initial Penetration mode and gives a resistance (blue curve, see note (1) in diagram) that
increases as the pipe sinks into the seabed, and asymptotically approaches the ultimate penetration resistance Pu
(upper dashed grey curve).
Then, when the pipe starts to lift up again the model enters Uplift mode and the resistance falls (green curve, see
note (2) in diagram) and asymptotically approaches the ultimate suction resistance Pu-suc (lower dashed grey curve).
In this case the uplift is enough that the resistance becomes negative - i.e. suction (note (3) in diagram).
If the uplift continues and the pipe lifts off the seabed then the model stays in Uplift mode and the model follows the
green curve further (note (4) in diagram). The suction reduces as the uplift continues, and drops to zero when the
penetration drops to zero.
If, however, the uplift ends and repenetration starts, then the model enters Repenetration mode (purple curve, note
(5) in diagram) and the suction rapidly falls and soon instead becomes +ve resistance. As repenetration continues
increases the resistance rises (note (6) in diagram) and again asymptotically approaches the ultimate penetration
resistance.
Theory, Environment Theory
w

140
Further cycles of uplift and repenetration would give further episodes of Uplift and Repenetration modes and so
give hysteresis loops of seabed resistance.
Soil Extra Buoyancy Force
The seabed resistance formulae given above model the resistance P(z) due to the soil shear strength. In addition to
this there is an extra buoyancy force due to the fact that the penetrator displaces soil that has a higher saturated
density than the water. To model this the following extra buoyancy force is applied, vertically upwards, in addition
to the resistance P(z).
Extra Soil Buoyancy Force = fbVdisp(soil - sea)g
where
- fb is a non-dimensional soil buoyancy factor, as specified on in Soil Model Parameters data.
- Vdisp = displacement volume = volume of the part of the penetrating object that is below the seabed tangent
plane.
- soil = saturated soil density, as specified in the Soil Properties data.
- sea = sea water density at the seabed origin, as specified in the sea density data.
- g = acceleration due to gravity for the units being used
The factor fb is normally greater than 1. This models the fact that when seabed soil is displaced it does not disperse
thinly across the seabed plane, but instead tends to heave locally around the penetrating object. The effect of this is
that the extra buoyancy is greater than the standard theoretical buoyancy force Vdisp(soil - sea)g that would apply if
the soil was fully fluid.
Soil Model Parameters
Several non-dimensional constants are used in the formulae given above for the seabed normal reaction force. These
are parameters that control how the soil response is modelled by the non-linear soil model. Their values can be
edited on the Seabed Soil Model page of the Environment data form, but we recommend that these parameters are
normally left at their default values. The effects of the parameters are now described.
Penetration Resistance Parameters
The parameters a and b control how the bearing factor Nc(z), and hence the ultimate penetration and suction
resistance limits Pu(z) and Pu-suc(z), vary with penetration z. See Ultimate Resistance Limits above.
Soil Buoyancy Factor
This is the factor fb that controls the modelling of the extra buoyancy effect that occurs when a penetrating object
displaces soil. See Soil Extra Buoyancy Force above. The buoyancy factor, fb, should normally be greater than 1, to
model the fact that the displaced soil tends to heave locally around the penetrating object.
Normalised Maximum Stiffness
This is the factor Kmax that determines the reference penetration, D/Kmax, that is used to calculate the non-
dimensional penetration values, and 0, that are used in the hyperbolic factors in the Penetration Resistance
Formulae above. It therefore controls the maximum stiffness during initial penetration or on reversal of motion, and
also how fast the penetration resistance asymptotically approaches its limiting value. A higher value means the
resistance more rapidly approaches the limit as penetration changes, and so gives a stiffer seabed model.
Suction Resistance Ratio
This is the factor fsuc that controls the ultimate suction resistance Pu-suc(z). See Ultimate Resistance Limits above. A
lower value gives less suction, a higher value gives more.
Normalised Suction Decay Distance
This is the factor suc that controls the suction decay limit term Pmin(z) in equation (2b) in Uplift mode. A lower value
gives less suction effect, by causing suction to decay after less uplift. A higher value causes suction to persist over
greater uplift distances. This parameter also affects the repenetration limit term Pmax(z) in equation (3b) in
Repenetration mode.
w
Theory, Environment Theory
141
Repenetration Offset After Uplift
This is the parameter rep that controls the penetration at which the repenetration resistance limit Pmax(z) in
equation (3b) in Repenetration mode merges with the bounding curve for initial penetration resistance, PIP(z). A
smaller value results in less penetration past zP=0 before the repenetration resistance after uplift merges with the
bounding curve of initial penetration resistance. A higher value leads to greater penetration before the bounding
curve is reached.
6.10.5 Morison's Equation
OrcaFlex calculates hydrodynamic loads on lines, 3D buoys and 6D buoys using an extended form of Morison's
Equation. See Morison, O'Brien, Johnson and Schaaf.
Morison's equation was originally formulated for calculating the wave loads on fixed vertical cylinders. There are
two force components, one related to water particle acceleration (the 'inertia' force) and one related to water
particle velocity (the 'drag' force). For moving objects, the same principle is applied, but the force equation is
modified to take account of the movement of the body.
The extended form of Morison's equation used in OrcaFlex is:
Fw = (.aw + Ca..ar) + ..Vr|Vr|.CD.A
where
Fw is the wave force
is the mass of fluid displaced by the body
aw is the fluid acceleration relative to earth
Ca is the added mass coefficient for the body
ar is the fluid acceleration relative to the body
is the density of water
Vr is the fluid velocity relative to the body
CD is the drag coefficient for the body
A is the drag area
The term in parentheses is the inertia force, the other is the drag force. The drag force is familiar to most engineers,
but the inertia force can cause confusion.
The inertia force consists of two parts, one proportional to fluid acceleration relative to earth (the Froude-Krylov
component), and one proportional to fluid acceleration relative to the body (the added mass component).
To understand the Froude-Krylov component, imagine the body being removed and replaced with an equivalent
volume of water. This water would have mass and be undergoing an acceleration aw. It must therefore be
experiencing a force .aw.
Now remove the water and put the body back: the same force must now act on the body. This is equivalent to saying
that the Froude-Krylov force is the integral over the surface of the body of the pressure in the incident wave,
undisturbed by the presence of the body. (Note the parallel with Archimedes' Principle: in still water, the integral of
the fluid pressure over the wetted surface must exactly balance the weight of the water displaced by the body.)
The added mass component is due to the distortion of the fluid flow by the presence of the body. A simple way to
understand it is to consider a body accelerating through a stationary fluid. The force required to sustain the
acceleration may be shown to be proportional to the body acceleration and can be written:
F = (m + Ca.).a
where
F is the total force on the body
m is the mass of the body
(Ca.) is a constant related to the shape of the body and its displacement
a is the acceleration of the body.
Theory, Environment Theory
w

142
Another way of looking at the problem is in terms of energy. The total energy required to accelerate a body in a
stationary fluid is the sum of the kinetic energy of the body itself, and the kinetic energy of the flow field about the
body. These energies correspond to the terms (m.a) and Ca..a respectively.
Trapped Water
The term (Ca.) has the dimensions of mass and has become known as the added mass. This is an unfortunate name
which has caused much confusion over the years. It should not be viewed as a body of fluid trapped by and moving
with the body. Some bodies are so shaped that this does occur, but this trapped water is a completely different
matter. Trapped water occurs when the body contains a closed flooded space, or where a space is sufficiently closely
surrounded to prevent free flow in and out. Trapped water should be treated as part of the body: the mass of the
trapped water should be included in the body mass, and its volume should be included in the body volume.
For a more complete description of Morison's equation and a detailed derivation of the added mass component see
Barltrop and Adams, 1991 and Faltinsen, 1990.
6.10.6 Waves
Wave Theory
Each wave train can be a regular wave, a random wave or specified by a time history file.
Regular Waves
OrcaFlex offers a choice of a long-crested, regular, linear Airy wave (including seabed influence on wave length) or
non-linear waves using Dean, Stokes' 5th or Cnoidal wave theories (see Non-linear Wave Theories). Waves are
specified in terms of height and period, and direction of propagation.
Random Waves
OrcaFlex offers five standard frequency spectra: JONSWAP, ISSC (also known as Bretschneider or modified Pierson-
Moskowitz), Ochi-Hubble, Torsethaugen and Gaussian Swell.
The program synthesises a wave time history from a user-determined number of linear wave components. The
wave components are chosen using an equal energy approach - see below. The phases associated with each wave
component are pseudo-random: a random number generator is used to assign phases, but the sequence is
repeatable, so the same user data will always give the same train of waves. Different waves from the same spectrum
can be obtained by shifting the simulation time origin relative to the wave time origin.
OrcaFlex provides special facilities to assist in selecting an appropriate section of random sea. These are available on
the Waves Preview page of the Environment data form. The facilities include:
- A profile graph plotting the wave elevation for a selected period and
- A table listing all the waves in a selected time interval whose height or steepness is large by comparison with
the reference wave Hs, Tz.
Wave components
An irregular wave train is constructed by linear superposition of a number of linear wave components. OrcaFlex
creates the components using an equal area approach as described below. We denote by rmin and rmax the minimum
and maximum relative frequency ranges, respectively, and by fmax the maximum component frequency range.
1. The overall frequency range considered is [rminfm, rmaxfm]. The nature of wave spectra means that the energy
outside the range is negligible, at least for the default values of rmin and rmax.
2. This overall frequency range is then broken up into n components [fi-, fi+] for i = 1 to n. Note that n is the user-
specified number of components, f1- = rminfm, fn+ = rmaxfm and fi+ = f(i+1)-.
3. The frequency ranges for the components are chosen so that each component contains the same amount of
spectral energy.
4. Any components [fi-, fi+] for which fi+ - fi- > fmax are further sub-divided using the equal energy approach. This
sub-division is applied recursively until all component frequency ranges are fmax. Any sub-division will result
in the number of components, n, increasing.
5. The frequency, fi, of each wave component is chosen so that there is equal spectral energy either side of it in the
component frequency range. In other words there is equal spectral energy in the ranges [fi-, fi] and [fi, fi+].
w
Theory, Environment Theory
143
The wave spectrum plotted below illustrates the effect of the equal energy approach. The vertical lines represent the
component frequency ranges. For simplicity we have only used 10 components but you would typically use a lot
more than this which would give a much better discretisation of the spectrum. In addition we have not applied the
maximum component frequency range fmax and the effect of this can be seen in the larger wave components at the
edges of the frequency range.
0
10
20
30
40
50
0 0.05 0.1 0.15 0.2 0.25 0.3
Frequency (Hz)
S
p
e
c
t
r
a
l

D
e
n
s
i
t
y

(
m
^
2
/
H
z
)

Figure: Equal energy approach to choosing wave components
The equal energy approach has two significant advantages over a discretisation using equal frequency spacing:
1. The component frequencies produced by the equal energy approach are not related to each other in a
multiplicative way. This means that the repeat frequency of the resulting wave train is effectively infinite.
2. The equal energy approach results in a finer discretisation being used around the spectral peak. To achieve the
same level of discretisation with an equal frequency spacing approach would result in a great deal many more
components being used. Since simulation runtimes are increased when more components are used the equal
energy approach gives an efficient use of wave components.
Directional spread spectrum
The directional spreading spectrum used by OrcaFlex is:
Sd() = K(s) cos
2s
(-p) for -/2 -p /2
where
K(s) =
-
(s+1) / (s+), a normalising constant,
2s is the spreading exponent,
is the wave direction and
p is the principal wave direction.
The total spectrum used by OrcaFlex S(f,) is then given by S(f,) = Sf(f).Sd() where Sf is the frequency spectrum.
Discretisation of the directional spectrum
The direction range -/2 -p /2 is discretised into the user-specified number of wave directions. OrcaFlex
discretises the directional spectrum using the same equal energy strategy as described above for the frequency
spectrum.
Kinematic Stretching
Kinematic stretching is the process of extending linear Airy wave theory to provide predictions of fluid velocity and
acceleration (kinematics) at points above the mean water level. It only applies to Airy waves and to random waves
(which are made up of a number of Airy waves).
Theory, Environment Theory
w

144
Linear wave theory in principle only applies to very small waves, so it does not predict kinematics for points above
the mean water level since they are not in the fluid. The theory therefore needs to be 'stretched' to cover such
points, and OrcaFlex offers a choice of three published methods: Vertical Stretching, Wheeler Stretching and
Extrapolation Stretching (see below).
Consider, for example, the horizontal particle velocity u. In Airy wave theory the formula for u at position (x,z) at
time t is:
u = E(z) a cos(t - - kx)
(1)
where a, , and k are the wave amplitude, angular frequency, phase lag and wave number, respectively, x is
distance downstream from the wave origin and z is measured positive upwards from the mean water level.
The term E(z) is a scaling factor given by E(z) = cosh(k(d+z))/sinh(kd), where d = mean water depth. It is an
exponential decay term that models the fact that the fluid velocity reduces as the point goes deeper. However for
z>0 (i.e. above the mean water level) E(z) is greater than 1 so it amplifies the velocity. This can give particle velocity
predictions that are unrealistically large (the problem being worst for high frequency waves). The various stretching
methods deal with this problem by replacing E(z) with a more realistic term.
Note that all the stretching methods apply not only to the scaling factor E(z) in the horizontal velocity formula (1),
but also to the scaling factors in the corresponding Airy wave theory formulae for the vertical velocity and the
horizontal and vertical acceleration.
Vertical Stretching
This is the simplest of the 3 methods. E(z) is left unchanged for z0, but for z>0, E(z) is replaced by E(0). This has
the effect of setting the kinematics above the mean water level to be equal to those at the mean water level.
Wheeler Stretching
This method stretches (or compresses) the water column linearly into a height equivalent to the mean water depth.
This is done by replacing E(z) by E(z') where
z' = d(d+z)/(d+) - d
and is the z-value at the instantaneous water surface. This formula for z' essentially shifts z linearly to be in the
range -d to 0.
Extrapolation Stretching
This method extends E(z) to points above the mean water level by using linear extrapolation of the tangent to E(z)
at the mean water level. In other words, for z0 equation (1) is left unchanged, but for z>0, E(z) is replaced by E(0) +
z.E'(0), where E' is the rate of change of E with z.
Wave Spectra
ISSC spectrum
The ISSC spectrum (also known as Bretschneider or modified Pierson-Moskowitz) is defined as:
S(f) = 5/16 Hs
2
fm
4
f
-5
exp(-5/4 [f/fm]
-4
)
where f is frequency. The other two parameters, the peak frequency fm and the significant wave height Hs are data
items.
For more details see Tucker 1991, page 107.
JONSWAP spectrum
The JONSWAP spectrum is defined as:
S(f) = (g
2
/16
4
) f
-5
exp(-5/4 [f/fm]
-4
)
b

where g is the gravitational constant, b = exp(-1/2
2
[f/fm - 1]
2
), = 1 for f fm, = 2 for f > fm and the other
parameters , , 1 and 2 are data items.
For more details see:
- Barltrop and Adams, page 277.
- Tucker 1991, page 108.
- Isherwood 1987.
w
Theory, Environment Theory
145
Ochi-Hubble spectrum
See the Ochi-Hubble paper for details of the spectral formula.
The Ochi-Hubble Spectrum allows two peaked spectra to be set up, enabling you to represent sea states that include
both a remotely generated swell and a local wind generated sea.
Example of Ochi-Hubble Spectrum
0
1
2
3
4
5
6
0 1 2 3 4
Relative Frequency r
S
(
r
)

[
m
^
2
]

The Ochi-Hubble wave spectrum is the sum of two separate component spectra - the example graph shows the two
components and their sum. The component spectrum with the lower frequency peak corresponds to the remotely
generated swell and the one with the higher frequency peak corresponds to the local wind generated sea. This is
why the Ochi-Hubble spectrum is often called a two-peaked spectrum; however in practice, the resulting total
spectrum typically has only one peak (from the remotely generated swell) plus a shoulder of energy from the local
wind generated sea.
The two component spectra are each specified by a set of three parameters - Hs1, fm1, 1 for the lower frequency
component and Hs2, fm2, 2 for the higher frequency component. See Data for Ochi-Hubble Spectrum.
In OrcaFlex you can either specify all these 6 parameters explicitly, or you can simply specify the overall significant
wave height Hs and tell OrcaFlex to automatically select the most probable 6 parameters for that value of Hs. In the
latter case, OrcaFlex uses 'most probable' parameters based on formulae given in the Ochi-Hubble paper (table 2b).
Torsethaugen spectrum
The Torsethaugen spectrum is another two-peaked spectrum, more suited to North Sea application than Ochi-
Hubble. See the Torsethaugen paper for details of the spectral formula.
Warning: The two-peaked Ochi-Hubble and Torsethaugen spectra make no allowance for the directionality
of the swell and wind components of the sea state. In reality the separate components frequently
come from different directions. However, an OrcaFlex wave train has a single principal direction.
Because of this it is more appropriate to model a two-peaked sea state using two separate OrcaFlex
wave trains, one for the swell component and one for the local wind generated component.
Gaussian Swell spectrum
The Gaussian Swell spectrum is based on the normal (or Gaussian) probability density function and is defined as:
S(f) = (Hs/4)
2

-1
(2)
-1/2
exp(-[f-fm]
2
/2
2
)
where Hs, fm and are the input data.
Non-linear Wave Theories
OrcaFlex models two types of waves, periodic regular waves and random waves. A regular wave is a periodic wave
with a single period. A random wave in OrcaFlex is a superposition of a number of regular linear waves of differing
heights and periods. We shall not discuss random waves here.
For very small waves in deep water, Airy wave theory (also know as linear wave theory) is valid. Many waves in
practical engineering use do not fall into this category, hence the need for non-linear wave theories. These include
Theory, Environment Theory
w

146
Stokes' 5th order theory, Dean's stream function theory and Fenton's cnoidal theory which are all available in
OrcaFlex. We shall give an outline of these theories here in the form of concise abbreviations of the relevant papers.
For an overview of all the theories considered here see Sobey R J, Goodwin P, Thieke R J and Westberg R J, 1987.
To fix notation we use the following conventions throughout. These conventions are different from those used in
OrcaFlex but we use them here in order to agree with the literature. We assume that the wave is long-crested and
travels in the x direction and we shall work only in the (x,z) plane. The seabed has z = 0 and the mean water level is
given by z = d, where d is the water depth (at the seabed origin). The wave is specified by wave height (H) and wave
period (T) and the wavelength (L) will be derived. The horizontal and vertical particle velocities are denoted by u
and v respectively. We assume a moving frame of reference with respect to which the motion is steady and x = 0
under a crest.
See Stokes' 5th, Dean's stream function theory and Fenton's cnoidal theory for a brief overview of each of the non-
linear wave theories available in OrcaFlex and for guidance on how to decide on which wave theory to use in
practice.
Dean Stream Function theory
A typical approach to wave theory makes use of the idea of a velocity potential. This is a vector field (x,z) whose
partial derivatives are the particle velocities of the fluid. That is:
/x = u and /z = v.
Chappelear devised a wave theory based on finding the best fit velocity potential to the defining wave equations.
This was quite complicated and Dean's idea was to apply the same idea to a stream function. A stream function is a
vector field (x,z) which satisfies
/x = -v and /z = u.
Dean's original paper Dean (1965) was intended to be used to fit stream functions to waves whose profile was
already known, for example a wave recorded in a wave tank. For the purpose of OrcaFlex the user provides
information on the wave train in the form of water depth, wave height and wave period and we wish to find a wave
theory which fits this data. Thus Dean's theory in its original form does not apply and we choose to follow the
stream function theory of Rienecker and Fenton (1981). This method is also known as Fourier approximation wave
theory.
The problem is to find a stream function which:
1. satisfies Laplace's equation
2
/x
2
+
2
/z
2
= 0, which means that the flow is irrotational,
2. is zero at the seabed, that is (x,0) = 0,
3. is constant at the free surface z = (x), say (x,) = -Q and
4. satisfies Bernoulli's equation [ (/x)
2
+ (/z)
2
] + = R, where R is a constant.
In these equations all variables have been non-dimensionalised with respect to water depth d and gravity g.
By standard methods, equations (1) and (2) are satisfied by a stream function of the form
(x,z) = B0 z + Bj [sinh (jkz) / cosh (jk)] cos (jkx)
where k is the wave number which is as yet undetermined, and the summation is from j = 1 to N. The constant N is
said to be the order of the stream function. The problem now is to find coefficients Bj and k which satisfy equations
(3) and (4).
Implementing stream function theory requires numerical solution of complex non-linear equations. The number of
these equations increases as N increases and there is a short pause in the program while these equations are solved.
For most waves the default value will suffice. However, for nearly breaking waves the solution method sometimes
has problems converging. If this is the case then it might be worth experimenting with different values.
Accuracy of method
Because the method is a numerical best fit method it does not suffer from the truncation problems of the Stokes' 5th
and cnoidal theories. For these methods, power series expansions are obtained and then truncated at an arbitrary
point. If the terms which are being ignored are not small then these methods will give inaccurate answers. In theory,
Dean's method should cope well in similar circumstances as it is finding a best fit to the governing equations. This
means that stream function wave theory is very robust. In very shallow water Fenton believes that his high order
cnoidal wave theory is best, although we would recommend stream function theory here. It is possible that, by their
very nature, Stokes' 5th and the cnoidal theories may give inaccurate results if applied to the wrong waves. In all
w
Theory, Environment Theory
147
circumstances the stream function method, if it converges, will give sensible results. Hence it can be used as a coarse
check on the applicability of other theories. That is if your preferred wave theory gives significantly different results
from Dean's, applied to the same wave, then it is probably wrong!
Stokes' 5th
The engineering industry's standard reference on 5th order Stokes' wave theory is Skjelbreia and Hendrickson
(1961). This paper presents a 5th order Stokes' theory with expansion term ak where a is the amplitude of the
fundamental harmonic and k = 2 / L is the wave number. The length a has no physical meaning and by choosing ak
as expansion parameter, convergence for very steep waves cannot be achieved. Fenton (1985) gives a 5th order
Stokes' theory based around an expansion term kH/2 and demonstrates that it is more accurate than Skjelbreia and
Hendrickson's theory. Thus it is Fenton's theory which we recommend, although both theories have been
implemented in OrcaFlex. It is worth noting that the linear theory of Airy is a 1st order Stokes' theory.
Assuming that the user supplies wave train information comprising water depth, wave height and wave period then
the wave number k must be computed before the theory can be applied. In order to do this a non-linear implicit
equation in terms of k is solved using Newton's method. This equation is known as the dispersion relationship. Once
k is known, a number of coefficients are calculated and these are used for power series expansions in order to find
the surface profile and wave kinematics.
Accuracy of method
Inherent in the method is a truncation of all terms of order greater than 5. Thus if the terms which are discarded are
significant then this theory will give poor results. See Ranges of applicability for the waves for which Stokes' 5th
theory is valid, but essentially this is a deep water, steep wave theory.
Cnoidal theory
This is a steady periodic water wave theory designed to be used for long waves in shallow water. The Stokes' 5th
order theory is invalid in such water as the expansion term is large and the abandoned terms due to truncation are
significant. The high-order cnoidal theory of Fenton (1979) has been regarded as the standard reference for many
years but it gives unsatisfactory predictions of water particle velocities. This work has been superseded by Fenton
(1990 and 1995).
Fenton's original paper gave formulae for fluid velocities based on a Fourier series expansion about the term
= H / d. In his later works Fenton discovered that much better results could be obtained by expanding about a
"shallowness" parameter . We follow this approach.
A 5th order stream function representation is used but instead of terms involving cos the Jacobian elliptic function
cn is used, hence the term cnoidal. The function takes two parameters, x as usual, and also m which determines how
cusped the function is. In fact when m = 0, cn is just cos and the Jacobian elliptic functions can be regarded as the
standard trigonometric functions. The solitary wave which has infinite length corresponds to m = 1 and long waves
in shallow water have values of m close to 1. Fenton shows that the cnoidal theory should only be applied for long
waves in shallow water and for such waves m is close to 1.
The initial step of the solution is to determine m and an implicit equation with m buried deep within must be solved.
As in the Stokes' theory this equation is the dispersion relationship. The solution is performed using the bisection
method since the equation shows singular behaviour for m 1 and derivative methods fail.
After m has been determined Fenton gives formulae to calculate surface elevation and other wave kinematics. In
practice m is close to 1 and Fenton takes advantage of this to simplify the formulae. He simply sets m = 1 in all
formulae except where m is the argument of an elliptic or Jacobian function. This technique is known as Iwagaki
approximation and proves to be very accurate.
Ranges of Applicability
Regular wave trains are specified in OrcaFlex by water depth, wave height and wave period. Which wave theory
should one use for any given wave train? For an infinitesimal wave in deep water then Airy wave theory is accurate.
For finite waves a non-linear theory should be used. In order to decide which wave theory to use one must calculate
the Ursell number given by
U = HL
2
/ d
3

See Non-linear Wave Theories for notation conventions used.
If U < 40 then the waves are said to be short and Stokes' 5th may be used. For U > 40 we have long waves and the
cnoidal wave theory can be used. The stream function theory is applicable for any wave. The boundary number 40
Theory, Environment Theory
w

148
should not be considered a hard and fast rule. In fact for Ursell number close to 40 both the Stokes' 5th theory and
the cnoidal theory have inaccuracies and the stream function method is recommended. In regions well away from
Ursell number 40 then the relevant analytic theories (Stokes' 5th or cnoidal) perform very well.
Our recommendations are:
Ursell number Recommended wave theory
<< 40 Dean or Stokes' 5th
~ 40 Dean
>> 40 Dean or Cnoidal
In general then, we would recommend the stream function wave theory in most cases. If another theory is being
used then it should be compared against the stream function theory to check its validity. This is a very important
point. OrcaFlex has no way of telling if a theory has been misapplied, other than giving warnings for obvious abuses
- it is up to the user to make sure they are using an applicable theory. By comparing with the stream function theory
a reliable check can be made - and if two theories give the same answers then one should be filled with confidence!
Breaking waves
All the regular wave theories are suspect for breaking or near breaking waves. In shallow water the height of a
breaking wave, HB= 0.14L, where L is the wave length. An expression which covers all depths, due to Miche, is
HB = 0.88k
-1
tanh(0.89kd)
where k=2/L is the local wave number as calculated by Airy wave theory. OrcaFlex reports a warning if the wave
height exceeds this breaking wave height HB.
Particle kinematics
An important consideration for computing the wave kinematics is whether to use apparent or real quantities. That
is, do we compute velocities and accelerations relative to a fixed point in the fluid (Eulerian) or relative to an
individual water particle (Lagrangian). For velocities there is no confusion as the two concepts coincide but there is
an issue for accelerations.
The accelerations are used by OrcaFlex in relation to Morison's Equation in order to compute pressure gradients
which in turn result in forces being applied to objects. Tucker (1991) gives an example of a Venturi tube with zero
apparent acceleration throughout the tube but a non zero pressure gradient! For the linear theory of Airy, which is
based on the assumption that the wave is very small, then apparent and real accelerations are effectively equal and
OrcaFlex computes apparent accelerations for Airy wave theory. For the non-linear theories, real accelerations are
used in all cases.
Handling of current
Each of the theories implemented allows for a uniform Eulerian current but none is designed to deal with current
profiles. Because we are dealing with non-linear waves it is not possible to analyse the wave assuming zero current
and then add in the current afterwards, as we do for Airy waves. So we have to reach some compromise. The
convention chosen is as follows:
The current profile is defined as usual and the current used to analyse the wave is taken to be the component of
current in the wave direction at the mean water level. Call this current component CW. To calculate the fluid velocity
V at any given point in time we must take into account the fluid velocity VW containing uniform current CW together
with the current C at the point in question, as specified by the current profile. The formula is:
V = VW - CW + C.
A similar formula is used during the build up. If the wave factor is then
V = (VW - CW ) + C.
Seabed Slope
In the case of a sloping seabed in OrcaFlex, we adopt the following convention for wave theories. We assume that
the water depth is that at the seabed origin for the purpose of deriving the wave information (wave number, stream
function etc.) We define the fluid motion for a point (x,y,z) where z < 0 to be the fluid motion for the point (x,y,0).
w
Theory, Vessel Theory
149
Physically implausible solutions
The non-linear wave theories implemented in OrcaFlex each have their own ranges and limitations as previously
discussed. However, it is sometimes possible to obtain a solution for a particular wave train which is physically
implausible. For example if the stream function or Stokes' 5th theories are misapplied then they may predict wave
profiles with multiple crests. Whilst these are valid solutions to the mathematical problem, they are not realistic.
Also it is sometimes predicted by each theory that the horizontal fluid velocities under a crest increase with depth.
This also is physically implausible. OrcaFlex warns if such unrealistic solutions occur. It is then up to the engineer to
judge the validity of the results.
It has not been possible to guard against all such anomalies, in particular the Stokes' 5th theory can predict wave
profiles with points of inflection other than at crest and trough.
6.11 VESSEL THEORY
6.11.1 Vessel Rotations
The orientation of a vessel is specified by 3 rotation angles that are called Euler angles. There are various different
ways of defining Euler angles and the conventions used by OrcaFlex are documented below. In all cases positive
rotation angle means rotating clockwise about the relevant axis direction.
To provide flexibility, a vessel in OrcaFlex can be given two types of motion, primary and superimposed. In many
cases only one of the two types is needed. The total motion of the vessel is the combination of the two. To
distinguish between the primary, superimposed and total motion, different names are used for the 3 rotation angles,
as follows:
- For primary motion the rotation angles are called Primary Rotation 1, Primary Rotation 2 and Primary Rotation
3. The initial orientation of the vessel specifies the initial values of the primary rotation angles, and these are
called the initial Heel, Trim and Heading.
- For displacement RAOs and harmonic motion they are called Roll, Pitch and Yaw.
- The total motion results report the combination of the primary and superimposed motion. For this the angles
are called Rotation 1, Rotation 2 and Rotation 3.
Order of application of rotations
For each of these sets of vessel rotation angles, the rotations are applied in the 'reverse' order. That is, the rotation
about the z-axis is done first, followed by the rotation about the new y-axis, and then finally the rotation about the
new x-axis.
Here is more detail of how the vessel rotations are applied.
The rotations start with the vessel axes Vx, Vy, Vz aligned with the global axes directions GX, GY, GZ.
The primary motion rotation angles are applied first, in reverse order. That is, Primary Rotation 3 is applied about
the initial Vz-direction (= global GZ direction), then Primary Rotation 2 is applied about the resulting new Vy
direction, and finally Primary Rotation 1 is applied about the resulting new Vx direction.
Note: The first of these 3 primary rotations is about the vertical, so it sets the heading of the vessel. The
vessel axes directions after this first rotation are called the Primary Heading Axes, and these
directions are used later (see below) for displacement RAO and harmonic motion rotations.
The superimposed motion is then applied. The superimposed motion rotations are called roll, pitch and yaw. These
rotations are applied starting from the vessel orientation resulting from the primary motion.
For superimposed displacement RAOs and harmonic motion the rotations are applied about the primary heading
directions (see above) and the 'reverse' order is used. So, first the yaw rotation is applied as a rotation about the
primary heading z direction (= vertically upwards direction = global GZ direction), then the pitch rotation is applied
as a rotation about the new primary heading y axis direction, and finally the roll is applied as a rotation about the
new primary heading x axis direction.
For superimposed time history motion the rotations are applied about the vessel axes. Once again, the 'reverse'
order of application is used.
Notes: The order of application of rotations is not significant when all the angles are small. However for
vessels the heading angle rotation about z can be large, in which case the order of application of
the rotations is more significant.
Theory, Vessel Theory
w

150
The 'reverse' order of application of rotations described above is the most commonly used
convention for vessel motions. It has the advantage that the z rotation, which is most likely to be
large, is always applied about a vertical axis.
OrcaFlex 8.5 (and earlier versions) applied the roll, pitch and yaw for superimposed motion in the
'forward' order, i.e. roll about x direction, then pitch about new y direction, then yaw about final z
direction. But this order had the disadvantage that when vessel yaw is large it was applied about
an axis that could have already been rolled or pitched and so would no longer be horizontal. The
change in order of application of rotations changes results for cases with non-zero roll or pitch. See
What's New in 8.6 for details.
6.11.2 RAOs and Phases
Displacement RAOs
Vessel motions in waves are defined by displacement Response Amplitude Operators (RAOs). Each displacement
RAO, or just RAO for short, consists of a pair of numbers that define the vessel response, for one particular degree of
freedom, to one particular wave direction and period. The two numbers are an amplitude, which relates the
amplitude of the vessel motion to the amplitude of the wave, and a phase, which defines the timing of the vessel
motion relative to the wave.
Example: A surge RAO of 0.5 in a wave of height 4m (and hence wave amplitude 2m) means that the
vessel surges to and fro -1m to +1m from its static position; a pitch RAO of 0.5 per metre in the
same wave means that the vessel pitches from -1 to + 1.
The vessel has 6 degrees of freedom: 3 translations (surge, sway, heave) and 3 rotations (roll, pitch, yaw), so the
RAO data consists of 6 amplitude and phase pairs for each wave period and direction. The RAO amplitude and phase
vary for different types of vessel, and for a given vessel type they vary with draught, wave direction, forward speed
and wave period (or frequency). It is important to obtain accurate values for the RAO amplitude and phase if the
dynamics of the system are to be correctly modelled.
RAOs can be obtained either from model tests or from specialist computer programs. The data may be presented in
tabular or graphical form: tables of numbers are better for our purposes since they can be imported directly into
OrcaFlex (see Import RAOs from Text Files).
There are many different conventions for defining RAOs. There have been attempts at standardisation but these
have not been successful so there remain differences between the main computer programs and model basins: some
establishments even use different conventions for reporting model and computed data. The only safe course is to
obtain a complete description of the system used for the data in each case.
The Orcina convention is to use the amplitude of response (in length units for surge, sway, heave, in degrees for roll,
pitch, yaw) per unit wave amplitude, and to use the phase lag from the time the wave crest passes the RAO origin
until the maximum positive excursion is reached (in other words, the phase origin being at the RAO origin).
Mathematically, this is given by:
x = R.a.cos (t - )
where
x is the vessel displacement (in length units for surge, sway, heave, in degrees for roll, pitch, yaw)
a, are wave amplitude (in length units) and frequency (in radians/second)
t is time (in seconds)
R, are the RAO amplitude and phase.
However, OrcaFlex can accept RAO data using a wide range of different conventions so you can input your RAO data
in its original form and simply tell OrcaFlex what conventions apply to that data.
In addition to the actual RAO data you therefore also need to know:
- The coordinates of the RAO origin and of the phase origin.
- The system used to define wave direction. In OrcaFlex 0 means waves approaching the vessel from astern and
90 means waves coming from the starboard side, but if a different convention applies to your data then you
must allow for this when entering the data.
w
Theory, Vessel Theory
151
- The coordinate system used to define vessel motions and, in particular, which direction is positive. That is
whether surge is positive forward or aft, whether heave is positive up or down and whether pitch is positive
bow up or bow down.
- Whether the rotational RAO data are in degrees (or radians) of rotation per metre (or foot) of wave height, or in
degrees (radians) per degree (radian) of wave slope or wave steepness.
- The reference time for phase angles, and the reporting convention used (e.g. whether phases are reported as
lags or leads). Again, OrcaFlex allows a range of options.
Although OrcaFlex allows the RAO input data to use a wide range of systems, all OrcaFlex results use a right-handed
system in which the positive movements are as follows:
Surge positive Forward
Sway positive to Port
Heave positive Up
Roll positive Starboard Down
Pitch positive Bow Down
Yaw positive Bow to Port
Wave Load RAOs
RAOs, as described above, can also be used to represent the load (force and moment) on a vessel due to waves,
rather than to directly specify its motion. In this case, the amplitude represents the magnitude of the force (in the
surge, sway or heave direction) or moment (in the roll, pitch or yaw direction); the meaning of the phase remains
unchanged.
Example: A surge force RAO of 300 kN/m in a wave of height 6m (and hence wave amplitude 3m) means
that a vessel experiences a surge force varying harmonically between -900kN and +900kN over
each wave cycle; a pitch moment RAO of 1E6 kN.m/m in the same wave means that the vessel
experiences a moment about the y axis varying from -3E6 kN.m to +3E6 kN.m.
Wave load RAOs do not completely define the vessel motion as do displacement RAOs: they merely define the force
and moment which a wave exerts on the vessel. OrcaFlex uses these forces and moments, together with any other
loads on the vessel and data on the vessel's mass and inertia, to determine the vessel motion from its equation of
motion.
The description of RAO conventions above, for displacement RAOs, carries over to wave load RAOs with just one
minor difference: rotational wave load RAOs must be expressed per unit of wave height, and they will have
dimensions of moment per unit length.
6.11.3 RAO Quality Checks
RAOs (particularly the phases) are difficult, abstract concepts which makes them difficult to check. It is extremely
important to check them, since the same difficulty applies to the people who derived the data in the first place. RAOs
and phases, even from the most respected sources, are notoriously error-prone!
Fortunately, there are a few natural points of reference where we know what must be going on. The most obvious
and useful ones are responses at very short and very long wave periods.
Displacement RAOs
In very short period waves, the vessel inertia suppresses response, so for all degrees of freedom the expected
displacement RAO amplitude is zero (and phase is then irrelevant).
In very long waves (typically wave periods over 20 seconds for ships or 30 seconds for semisubmersibles) the
vessel will move like a raft on the wave surface. The tables below give the expected displacement RAO amplitudes
and phases for a free-floating vessel in very long waves.
Expected RAOs for a vessel in very long waves
From ahead
(180)
From astern
(0)
From port
(270)
From starboard
(270)
Amp. Phase Amp. Phase Amp. Phase Amp. Phase
Surge 1 -90 1 +90 0 ~ 0 ~
Theory, Vessel Theory
w

152
Sway 0 ~ 0 ~ 1 -90 1 +90
Heave 1 0 1 0 1 0 1 0
Roll 0 ~ 0 ~ 1 -90 1 +90
Pitch 1 +90 1 -90 0 ~ 0 ~
Yaw 0 ~ 0 ~ 0 ~ 0 ~


Towards direction
Amplitude Phase
Surge | cos() | +90 if cos()>0
-90 if cos()<0
Sway | sin() | +90 if sin()>0
-90 if sin()<0
Heave 1 0
Roll | sin() | +90 if sin()>0
-90 if sin()<0
Pitch | cos() | -90 if cos()>0
+90 if cos()<0
Yaw | sin(2) | 180 if sin(2)>0
0 if sin(2)<0
Warning: The expected yaw RAOs given in the above table only apply to slender ships.
Notes: In these tables, the translational amplitudes are non-dimensionalised against wave amplitude and
the rotational amplitudes are non-dimensionalised against maximum wave slope.
The phases given are lags relative to the wave crest so that +90 means that the maximum positive
motion occurs 90 after the wave crest passes the vessel. In these tables we use the conventions of
positive surge is forward, positive sway is to port, positive heave is up, positive roll is starboard
down, positive pitch is bow down and positive yaw is bow to port.
When the amplitude is zero the phase value is irrelevant; this is indicated in the tables by '~' .
You can check RAOs in two ways. First, OrcaFlex provides RAO graphs that help spot errors, see Checking RAOs.
Second, you can run quick simulations with only the vessel in the model and then check that the motions you see are
sensible.
Consider a ship in waves coming from ahead. Set up a simple OrcaFlex model with the vessel only - nothing else - set
the vessel's primary motion to None, secondary motion to RAOs + Harmonic, and run a short simulation (say 10
seconds build up plus 2 wave periods). Use a large wave height (20m) and long time step - say 0.05 seconds for both
inner and outer time steps. When the run is finished (a few seconds only for such a trivial case) replay the last wave
period and watch to see whether the motion of the ship is realistic. The best view direction is horizontal, normal to
the direction of travel of the waves. With the waves coming from the right on screen, then in the wave crest the ship
should be at maximum heave up and moving to the left, and vice versa in the trough. At the point of maximum wave
slope as the crest approaches, the ship should be at maximum surge forwards into the wave and maximum pitch
angle with the bow up. If the phase convention has been misunderstood (e.g. leads have been read as lags) then the
motion is obviously wrong and you should go back and re-examine the data, or confirm your interpretation with the
data source.
This is an excellent check for phases, which are usually the most troublesome to get right. It is not quite so good for
amplitudes, but it is nevertheless worth pursuing. If the wave is very long compared to the ship, then the ship should
move like a small particle in the water surface. Heave amplitude should be equal to wave amplitude and pitch
motion should keep the deck of the ship parallel to the water surface. Surge amplitude should also be equal to wave
amplitude in deep water, but will be greater in shallow water in which the wave particle orbits are elliptical.
The check can be extended to other wave directions. Broadly speaking, we may expect the motion to be
predominantly in the wave direction, with the phasing of surge and sway such that the components in the wave
w
Theory, Vessel Theory
153
direction reinforce each other. Similarly, roll and pitch phasing should be such that the components of rotation
about an axis normal to the wave direction reinforce each other. Yaw phasing for a ship in seas off the bow should
be such that the ship yaws towards the broadside on position as the wave crest passes: this is easiest to see in a
near-plan view. Generally speaking, if it looks right in long waves, it probably is right. If not, then think again!
Wave Load RAOs
Since we can relate wave load RAOs to displacement RAOs, we can similarly determine the long-wave limit for wave
load RAOs. OrcaFlex does this for the RAO graphs to facilitate checking wave load RAOs.
The simple model-building exercise described above also works well for wave load RAOS: just set primary motion to
Calculated (6 DOF), superimposed motion to None.
Note: You may need to run a longer simulation, with smaller time steps, for calculated vessel motion than
for displacement RAOs, to allow the model to 'settle down'.
6.11.4 Hydrodynamic and Wind Damping
These loads are an important source of damping when modelling vessel slow drift. For a discussion of the various
damping sources see Damping Effects on Vessel Slow Drift.
The hydrodynamic and wind damping loads on a vessel are calculated using the data specified on the Hydrodynamic
and Wind Damping pages on the vessel type data form. The damping loads are split into those due to translational
relative velocity, yaw rate and roll rate.
Drag Loads due to Translational Relative Velocity
The drag loads due to translational velocity of the sea and air past the vessel are calculated using the standard
OCIMF method, which is outlined below. For further details see Oil Companies International Marine Forum, 1994.
The OCIMF method is for calculating the surge, sway and yaw drag loads on a stationary vessel. OrcaFlex extends the
method to cover a moving vessel by replacing the current (or wind) velocity used in the OCIMF method by the
relative translational velocity of the current (or wind) past the vessel.
More precisely, the relative velocity used is the current (or wind) velocity, relative to the primary motion of the
vessel, at the specified current (or wind) load origin. In other words the relative velocity includes the current but
not the waves, and it includes the primary motion of the vessel, but not the superimposed motion.
Note that the OCIMF method does not include any drag due to yaw angular velocity of the vessel, since there is none
for a stationary vessel. OrcaFlex's extension of OCIMF does not add these yaw rate drag terms, since the OCIMF
method has no framework for them. They are therefore calculated separately in OrcaFlex - see Drag Loads due to
Yaw Rate below.
Notes: The OCIMF method is intended for tankers, but could be applied to other vessel types providing
suitable data is obtained.
The wind load is only included if the Include wind loads on Vessels option is enabled in the
Environment data.
Warning: The current and wind loads are based on theory for surface vessels and are not suitable for
submerged vessels.
The drag loads due to surge and sway relative velocity are calculated as given by the following OCIMF formulae.
Surge Force = CsurgeV
2
Asurge
Sway Force = CswayV
2
Asway
Yaw Moment = CyawV
2
Ayaw
where
Asurge, Asway and Ayaw are the surge and sway areas and the yaw area moment. For current these correspond to
the exposed areas below the waterline, and for wind to the exposed areas above the waterline.
Csurge, Csway and Cyaw are the surge, sway and yaw coefficients for the actual current or wind direction relative
to the vessel.
is the water density (for hydrodynamic drag) or air density (for wind drag).
Theory, Vessel Theory
w

154
V is the magnitude of the relative velocity of the sea or air past the vessel. For wind loads, V is based on the
wind velocity specified in the data (i.e. the wind velocity at 10m above mean water level). For hydrodynamic
drag, V is based on the current velocity relative to the vessel at the instantaneous position of the load origin
(if this is above the water surface, then the current velocity at the surface is used). In both cases V includes
allowance for the translational velocity of the load origin due to any primary motion of the vessel, but does
not include any superimposed motion.
The surge force, sway force and yaw moment act at the current or wind load origin. The surge and sway forces act in
the vessel Vx and Vy-directions, respectively, and the yaw moment acts about the vessel Vz-direction.
Note: The OCIMF standard method uses L
2
D for the yaw area moment for current loads, and LAsway for
the yaw area moment for wind loads, where L is the length between perpendiculars and D is the
draught. For current loads (not wind loads) the OCIMF standard method uses LD for both the surge
and sway areas.
Drag Loads due to Yaw Rate
A vessel rotating in yaw will generate a drag moment resisting the yaw rate, but the OCIMF method described above
does not include this drag load (since the OCIMF method is designed for stationary vessels).
For wind drag these yaw rate terms are insignificant and so are omitted by OrcaFlex. But for hydrodynamic drag
they are important, so OrcaFlex models them using the following formulae.
Surge Force = (||)Ksurge
Sway Force = (||)Ksway
Yaw Moment = (||)Kyaw
(1)
where
Ksurge, Ksway, Kyaw are the yaw rate drag factors (specified on the Hydrodynamic Drag page on the vessel type
data form).
is the vessel yaw rate, in radians per second, due to any primary motion of the vessel
is the water density.
These yaw rate drag loads are then applied at the hydrodynamic load origin.
Estimating the Yaw Rate Drag Factors
The above formulae (1) are based on a simple strip theory estimate of the drag loads on a yawing vessel, as given by
Wichers (1979). Consider the simplest situation where the vessel centre is stationary but the vessel is yawing at rate
about that centre. Let us also assume that the area exposed to sway drag is a simple rectangle of height D (the
draught) and length L (the length between perpendiculars), and that for simplicity we choose to put the load origin
at the centre of that area.
We now divide the drag area into vertical strips of width x and consider the sway drag load on the strip at distance
x forward of the centre. The strip's area is Dx and its sway velocity due to the yaw rate is x, so we can estimate
the sway drag load on it by CdDx(x)|x| where Cd is the drag coefficient, which we assume to be the same for
all the strips.
These sway drag loads from each strip, and their moments about the centre, are then integrated to give the total
sway force and a contribution to yaw moment. When we do this integral the sway forces from corresponding strips
forward and aft of centre have the same magnitude but opposite direction, so they cancel and the total sway drag
force is therefore zero. However the yaw moment terms from forward and aft of centre have the same magnitude
and same direction, so they reinforce, giving a significant yaw drag moment. In fact the integral gives the following
yaw moment.
Yaw Moment = (
2
)(CdDL
4
/32)
(2)
The same argument can be applied to the drag forces in the surge direction, with length L being replaced by width
W. But for a slender vessel W is much less than L, so the surge force contribution to yaw moment is generally
negligible.
Comparing equations (1) and (2) we see that the Kyaw corresponds to the bracketed term (CdDL
4
/32) in equation (2).
This is in fact a combination of a drag coefficient and the 3rd moment of drag area about the centre.
w
Theory, Vessel Theory
155
This strip theory argument therefore concludes that for a slender ship, with the hydrodynamic drag load origin at
the centre, then we can estimate the yaw rate drag factors by:
Ksurge = Ksway = 0
Kyaw = (CdDL
4
/32)
where Cd is some appropriate drag coefficient. However, there are a lot of questionable assumptions in the strip
theory argument. Indeed Wichers (1979) found that the strip theory results significantly underestimated the actual
yaw drag measured in model tests, unless the Cd value was increased to about 5, which is rather high for a drag
coefficient. So if more specific data is available, e.g. from model test, then we recommend setting the yaw rate drag
factors to values that best fit your data.
Interaction with sway rate
Further complications arise if the vessel is swaying as well as yawing. In this case the integral in the above strip
theory argument turns out to give an extra term involving v. This is an interaction between sway velocity and yaw
rate and its effect is to significantly increase the yaw moment.
OrcaFlex does not yet include this interaction effect. The reason for this is that it is difficult to model. Wichers
(1979) included them in his strip theory model, but as described above the model's results did not match
experimental results particularly well. He returned to the problem in his PhD thesis (Wichers, 1988) and developed
a more accurate empirical approach based on model test data. However the method has some theoretical difficulties,
since the formulae break down when is zero.
Orcina is studying this, with a view to implementing a more accurate yaw rate drag model in a future release of
OrcaFlex. In the meantime we recommend that you specify yaw rate drag factors that are appropriate to the
conditions prevailing in the case being modelled. See the papers by Wichers for further information.
Damping Loads due to Roll Rate
OrcaFlex allows you to model roll damping by including a roll damping moment M defined by:
M = kLv + kQv|v|
where v is the roll component of angular velocity, kL is the linear roll damping coefficient and kQ is the quadratic roll
damping coefficient.
6.11.5 Stiffness, Added Mass and Damping
The stiffness load, and constant-frequency added mass and damping loads, are calculated using the formulae given
below. The calculation of the frequency-dependent added mass and damping loads is rather more complicated: the
theory is given in Vessel Theory: Impulse Response and Convolution, but the units given below apply in both cases.
All these loads are applied at the reference origin.
Stiffness Load
The heave, roll and pitch components of the hydrostatic stiffness matrix, K, are specified on the Vessel Types form.
(The hydrostatic stiffness components for the surge, sway and yaw directions are all zero.)
The vessel equilibrium position, E, is specified by giving its Z, heel and trim, relative to global axes.
The stiffness load is calculated from the vessel primary position, P, using the following matrix equation:
[Fheave,Mroll,Mpitch]
T
= K.[Oheave,Oroll,Opitch]
T

where
Fheave, Mroll and Mpitch are the heave force, roll moment and pitch moment, respectively.
O = P - E is the offset of the primary position from the equilibrium position, at the specified reference origin.
Here the angular offsets Oroll and Opitch are in radians, so the units of the stiffness matrix are:
heave roll/pitch
heave F/L F/radian
roll/pitch (F.L)/L (F.L)/radian
where F and L denote the units of force and length, respectively.
Theory, Vessel Theory
w

156
Damping Load
The damping load is equal to -D.V, where D is the specified damping matrix and V is the (6 degree of freedom) vector
of vessel velocity and angular velocity relative to the earth at the specified reference origin.
The damping load is calculated using the following matrix equation:
[Fx,Fy,Fz,Mx,My,Mz]
T
= -D.[vx,vy,vz,x,y,z]
T

where
Fx, Fy, Fz, Mx, My and Mz are the components of the resulting damping force and moment.
vx, vy, and vz are the components of the vessel velocity at the specified reference origin.
x, y and z are the components of the vessel angular velocity.
Note: All components referred to here are in the directions specified by the conventions data. For details
see added mass, damping and stiffness data.
The angular velocities here are in radians per unit time, so the units of the damping matrix elements are:
surge/sway/heave roll/pitch/yaw
surge/sway/heave F / (L/T) F / (rad/T)
roll/pitch/yaw (F.L) / (L/T) (F.L) / (rad/T)
where F, L and T denote the units of force, length and time, respectively. To see this, consider the surge-surge
element as surge force per unit surge velocity, surge-sway as surge force per unit sway velocity, etc; surge-roll as
surge force per unit roll rate; roll-surge as roll moment per unit surge velocity; and roll-roll as roll moment per unit
roll rate. 'Unit roll rate' means a roll rate of 1 radian/sec.
Added Mass Load
The added mass load is calculated as described above for the damping load, but using the specified added mass
matrix instead of the damping matrix, and using the vessel acceleration at the reference origin, instead of the vessel
velocity.
The angular accelerations are expressed in radians/T
2
, so the units of the added mass matrix elements are:
surge/sway/heave roll/pitch/yaw
surge/sway/heave M M.L
roll/pitch/yaw M.L M.L
2

where M, L and T denote the units of mass, length and time, respectively.
Note: If the vessel's Primary Motion is set to Calculated (3 DOF) then reduced added mass and damping
matrices are used, having only surge, sway and yaw components, and the damping and added mass
loads are not calculated in the heave, roll and pitch directions. The stiffness matrix, having only
heave, roll and pitch components, is not used at all in this case.
6.11.6 Impulse Response and Convolution
To implement frequency-dependent added mass and damping in the time domain, OrcaFlex uses a method proposed
by Cummins (1962), and implemented by Wichers (1979). This method involves calculating the Impulse Response
Function (IRF) for the vessel and then applying the IRF at each time step using a convolution integral to account for
the past motion of the vessel.
At the start of a simulation, OrcaFlex calculates the IRF (a 6x6 matrix) from the given frequency-dependent damping
data {B(fi), i=1,2,3,...,m}, as
IRF(t) = 4 Integral(0 to infinity) B(f) cos(2ft) df.
To calculate this integral, we make the following assumptions about the form of the damping:
- It is assumed to vary linearly between the given frequencies {fi}, i=1,2,3,...,m.
- It is assumed to decay to zero at zero frequency.
- It is assumed to decay as f
-3
beyond the highest frequency given in the data.
w
Theory, Vessel Theory
157
At the start of a simulation, OrcaFlex estimates the so-called infinite-frequency (or frequency-independent) added
mass matrix A. This is done by calculating an estimate Ai for each frequency fi, from the added mass data {A(fi),
i=1,2,3,...,m} and IRF, as
Ai = A(fi) + 1/(2fi) Integral(0 to Tc) IRF(t) sin(2fit) dt
and then taking A to be the mean value of all the Ai over i=1,2,3,...,m.
Then, during the simulation, at each outer time step t the damping load on the vessel, in six degrees of freedom, is
calculated as
F(t) = A x''(t) + Integral(0 to Tc) IRF(s) x'(t-s) ds
where
x'' and x' are the vessel acceleration and velocity respectively, relative to the global origin and with respect
to the vessel primary heading
Tc is the cutoff time specified by the user
s is a time lag integration variable.
This load is applied at the reference origin.
Consistent Added Mass and Damping
The added mass and damping data are not independent. In fact, added mass and damping are mathematically
related through the Kramers-Kronig relations (see Kotik and Mangulis).
OrcaFlex uses the damping data to determine the IRF, and then uses the IRF in conjunction with the added mass
data to estimate the infinite-frequency limit of the added mass.
If the data are consistent, i.e. obey the Kramers-Kronig relations, then the graphs of added mass against frequency
should appear to be converging, with increasing frequency, to the estimated infinite frequency added mass A. If they
appear to be converging to a limit which differs significantly from the estimated value A, then this may indicate that
the data are not consistent. In these circumstances, the results of the calculation may not be reliable.
6.11.7 Wave Drift Loads
For a detailed description of the theory see Faltinsen's book. Here we give a summary and the formulae used in
OrcaFlex.
The wave loads on a vessel can be expressed as a sum of first order, second order and even higher order terms. The
linear first order terms are the largest. The second order terms are non-linear effects that are much smaller, but
they can be significant in some cases. The higher order terms are even smaller and are neglected.
The first order terms generate the vessel's first order motion and this may be modelled in OrcaFlex by the vessel's
displacement RAOs or load RAOs. The second order terms are quadratic and they are made up of three components:
- Difference frequency terms, which have frequencies given by the differences between combinations of different
wave component frequencies.
- A constant term, called the mean wave drift force. This term is really the limiting case of the difference
frequency term when the two frequencies are equal.
- Sum frequency terms, which have frequencies given by the sums of combinations of wave component
frequencies.
The constant and difference terms are collectively known as the wave drift loads; these are both included in
OrcaFlex. The constant term is called the mean wave drift load and this is applied in OrcaFlex in both the static and
dynamic analyses; it can cause significant mean offset. The difference frequency terms are only included in the
dynamic analysis; they can cause significant slow drift motion if their frequencies are near to a vessel surge, sway or
yaw natural frequency. The sum frequency terms are not included in the OrcaFlex calculation, since they are high
frequency terms whose effect on a massive moored vessel is normally negligible.
Wave Drift Load Theory
Wave drift loads are calculated based on the non-dimensional Quadratic Transfer Functions (QTFs) specified in the
user's wave drift data.
Theory, Vessel Theory
w

158
QTFs are similar to RAOs in so far as they are scaling factors that are applied to wave components. But whereas an
RAO is applied to a single component, a QTF is applied to a pair of wave components - and, like wave load RAOs, it
gives a wave drift force or moment.
The full QTF is a complex-valued function Q(1, 2) of a pair of wave angular frequencies 1 and 2. There are
separate QTFs for each of the 6 vessel degrees of freedom, so we use the following notation:
Q1(1, 2) = Surge QTF,
Q2(1, 2) = Sway QTF,
Q3(1, 2) = Heave QTF,
Q4(1, 2) = Roll QTF,
Q5(1, 2) = Pitch QTF,
Q6(1, 2) = Yaw QTF.
Consider a vessel exposed to a pair of wave components, of angular frequencies 1 and 2, and let the wave
elevation at the vessel's QTF origin due to those components be:
Z1 = A1cos(1t - 1) = Real part of A1exp[1t - 1]
Z2 = A2cos(2t - 2) = Real part of A2exp[2t - 2]
Then the wave drift load (F1, F2, F3, M1, M2, M3) due to the difference term from those 2 components is given by:
Fi = Real part of (gL)Qi(1, 2)A1A2exp[(1-2)t - (1-2)]
Mi = Real part of (gL
2
)Qi+3(1, 2)A1A2exp[(1-2)t - (1-2)]
for i = 1,2,3.
The first bracketed term on the right hand side of each equation is a dimensionalising factor that gives a non-
dimensional definition of Q. The factors involve the water density , the acceleration due to gravity g, and the vessel
type length L.
The total wave drift load is then the sum of these loads, over all pairs of frequencies (1, 2) present in all the wave
trains specified. The terms involved in this sum can be viewed as being made up of two types:
- The diagonal terms (i.e. those where 1 and 2 are equal) each give a constant load. The sum of these terms is
the mean wave drift load, and this is applied in both the static and dynamic analysis in OrcaFlex.
- The off-diagonal terms (i.e. those where 1 and 2 differ) each give a harmonically time-varying load. The sum
of these terms is the dynamic wave drift load and this is only calculated and applied in the OrcaFlex dynamic
analysis. These terms are not included in the static analysis since their time-average value is zero.
OrcaFlex uses Newman's Approximation to Calculate the Wave Drift Loads
The above theory uses the full QTF matrix, but it is not normally practical for the user to specify the QTF values for
all possible pairs of frequencies (1, 2). Because of this, in OrcaFlex (as in most programs) the user specifies in the
QTF data only the diagonal values of the function, Q(, ), and only for a set of discrete frequencies .
OrcaFlex then uses linear interpolation to obtain the diagonal QTF values for intermediate frequencies, and a form
of Newman's approximation to obtain the off-diagonal values.
Newman's approximation (Newman 1974) is to take the off-diagonal QTF value Q(1, 2) to be an average of the
corresponding diagonal values Q(1, 1) and Q(2, 2). There are different forms of Newman approximation,
depending on the type of average used. OrcaFlex uses what is called the geo-mean approximation, which is
documented in the paper by Standing, Brendling and Wilson, and is given by:
Q(1, 2) = Sign(Q(1))|Q(1)Q(2)|
1/2
if Sign(Q(1))=Sign(Q(2)),
Q(1, 2) = 0 otherwise.
Here Abs is the absolute value function (i.e. Abs(x) = x if x0, -x if x<0), and Sign is the sign function (i.e. Sign(Q) = +1
if Q>0, -1 if Q<0, and 0 if Q=0).
The diagonal QTF values must be real. They are the terms that give the constant mean wave drift load. However we
also need to calculate the oscillatory part of the wave drift load, which arises from the off-diagonal terms, and the
Newman approximation is a way of estimating those off-diagonal terms from the diagonal terms.
w
Theory, Line Theory
159
The justifications for the various forms of Newman approximation are twofold. Firstly, the important difference
terms are those with low frequency, which arise from the near-diagonal terms in Q. The far-from-diagonal values
give much higher frequency difference terms which have little effect on a vessel of sufficiently large inertia.
Secondly, on theoretical grounds, the function Q should be continuous in both 1 and 2, so the near-diagonal term
Q(1, 2) should be well-approximated by the mean of Q(1, 1) and Q(2, 2).
Notes: OrcaFlex includes the wave drift load contributions due to the interaction of two different wave
components, even if they come from two different wave trains that have different directions.
It is not clear how Newman's approximation should be applied to wave components in this
situation. In OrcaFlex it is done as follows. Let the vessel heading be H and consider two wave
components, of frequencies 1 and 2, from two different wave trains whose directions are D1 and
D2, respectively. Then OrcaFlex will derive (from the specified QTF data, using interpolation if
necessary) the diagonal QTF coefficients Q(1,1) and Q(2,2), for (relative) directions (D1-H)
and (D2-H), respectively. OrcaFlex will then calculate the geometric mean of Q(1,1) and Q(2,2)
and use it as the estimate of the off-diagonal QTF coefficient Q(1,2), which is then used to
calculate the wave drift load due to the interaction of the two components.
6.12 LINE THEORY
6.12.1 Overview
OrcaFlex uses a finite element model for a line as shown in the figure below.
Theory, Line Theory
w

160
Segment 1
Segment 2
Segment 3
Node 3
Actual Pipe Discretised Model
End A
End B
Node 2
Segment 2
Segment 3
Node 1
Segment 1

Figure: OrcaFlex Line model
The line is divided into a series of line segments which are then modelled by straight massless model segments with
a node at each end.
The model segments only model the axial and torsional properties of the line. The other properties (mass, weight,
buoyancy etc.) are all lumped to the nodes, as indicated by the arrows in the figure above.
Nodes and segments are numbered 1,2,3,... sequentially from End A of the line to End B. So segment n joins nodes n
and (n+1).
Nodes
Each node is effectively a short straight rod that represents the two half-segments either side of the node. The
exception to this is end nodes, which have only one half-segment next to them, and so represent just one half-
segment.
Each line segment is divided into two halves and the properties (mass, weight, buoyancy, drag etc.) of each half-
segment are lumped and assigned to the node at that end of the segment.
Forces and moments are applied at the nodes - with the exception that weight can be applied at an offset. Where a
segment pierces the sea surface, all the fluid related forces (e.g. buoyancy, added mass, drag) are calculated allowing
for the varying wetted length up to the instantaneous water surface level.
w
Theory, Line Theory
161
Segments
Each model segment is a straight massless element that models just the axial and torsional properties of the line. A
segment can be thought of as being made up of two co-axial telescoping rods that are connected by axial and
torsional spring+dampers.
The bending properties of the line are represented by rotational spring+dampers at each end of the segment,
between the segment and the node. The line does not have to have axial symmetry, since different bend stiffness
values can be specified for two orthogonal planes of bending.
This section has given only an overview of the line model. See structural model for full details.
6.12.2 Structural Model Details
The following figure gives greater detail of the line model, showing a single mid-line node and the segments either
side of it. The figure includes the various spring+dampers that model the structural properties of the line, and also
shows the xyz-frames of reference and the angles that are used in the theory below.
Node
Torsion spring
+ damper
Bending springs
+ dampers
Axial spring
+ damper
Ny
Nx
Nz (axial direction)
End B
Sy
1
Sx
2
Sz
Sx
1
Sz
Sx
1
t
o
2
o
1
Sy
2

Figure: Detailed representation of OrcaFlex Line model
As shown in the diagram, there are 3 types of spring+dampers in the model:
- The axial stiffness and damping of the line are modelled by the axial spring+damper at the centre of each
segment, which applies an equal and opposite effective tension force to the nodes at each end of the segment.
- The bending properties are represented by rotational spring+dampers either side of the node, spanning
between the node's axial direction Nz and the segment's axial direction Sz.
Theory, Line Theory
w

162
- If torsion is included (this is optional) then the line's torsional stiffness and damping are modelled by the
torsional spring+damper at the centre of each segment, which applies equal and opposite torque moments to
the nodes at each end of the segment. If torsion is not included then this torsional spring+damper is missing and
the two halves of the segment are then free to twist relative to each other.
6.12.3 Calculation Stages
OrcaFlex calculates the forces and moments on a mid-node in 5 stages:
1. Tension Forces.
2. Bend Moments.
3. Shear Forces.
4. Torsion Moments.
5. Total Load.
6.12.4 Calculation Stage 1 Tension Forces
Firstly the tensions in the segments are calculated. To do this, OrcaFlex calculates the distance (and its rate of
change) between the nodes at the ends of the segment, and also calculates the segment axial direction Sz, which is
the unit vector in the direction joining the two nodes.
Linear axial stiffness
In the case of linear axial stiffness the tension in the axial spring+damper at the centre of each segment is calculated
as follows. It is the vector in direction Sz whose magnitude is given by:
Te = EA. + (1 - 2)(PoAo - PiAi) + EA.e(dL/dt)/L0
where
Te = effective tension
EA = axial stiffness of line, as specified on the line types form (= effective Young's modulus x cross-section
area)
= total mean axial strain = (L - L0) / (L0)
L = instantaneous length of segment
= expansion factor of segment
L0 = unstretched length of segment
= Poisson ratio
Pi, Po = internal pressure and external pressure respectively (see Line Pressure Effects)
Ai, Ao = internal and external cross section areas respectively (see Line Pressure Effects)
e = damping coefficient of the line, in seconds (this is defined below)
dL/dt = rate of increase of length.
Note: The effective tension Te can be negative, indicating effective compression. For the relationship
between effective tension and pipe wall tension see Line Pressure Effects.
This effective tension force vector is then applied (with opposite signs) to the nodes at each end of the segment.
Each mid-node therefore receives two tension forces, one each from the segments on each side of it.
Non-linear axial stiffness
When the axial stiffness is non-linear then the tension calculation is as follows. It is the vector in direction Sz whose
magnitude is given by:
Te = Var Tw() + (1 - 2)(PoAo - PiAi) + EAnom.e(dL/dt)/L0
where
Var Tw is the function relating strain to wall tension, as specified by the variable data source defining axial
stiffness.
EAnom is the nominal axial stiffness which is defined to be the axial stiffness at zero strain.
w
Theory, Line Theory
163
As in the linear case the effective tension force vector is then applied (with opposite signs) to the nodes at each end
of the segment. Each mid-node therefore receives two effective tension forces, one each from the segments on each
side of it.
Damping coefficient e
The damping coefficient e represents the numerical damping in the line. It is calculated automatically based on the
Axial Target Damping value specified on the general data form.
e = e(critical) . (Target Axial Damping) / 100
where
e(critical) = (2.SegmentMass.L0/EA)
1/2
is the critical damping value for a segment
and SegmentMass includes the mass of any contents but not the mass of any attachments.
Notes: This numerical damping term is only included when using the explicit integration scheme.
If the axial stiffness is non-linear then we use the nominal axial stiffness EAnom in the formula for e.
6.12.5 Calculation Stage 2 Bend Moments
The bend moments are then calculated. There are bending spring+dampers at each side of the node, spanning
between the node's axial direction Nz and the segment's axial direction Sz. Each of these spring+dampers applies to
the node a bend moment that depends on the angle between the segment axial direction Sz and the node's axial
direction Nz.
These axial directions are associated with the frames of reference of the node and segment. The node's frame of
reference Nxyz is a Cartesian set of axes that is fixed to (and so rotates with) the node. Nz is in the axial direction
and Nx and Ny are normal to the line axis and correspond to the end x- and y-directions that are specified by the
Gamma angle on the line data form (see End Orientation).
The segment has two frames of reference: Sx1, y1, z at the end nearest End A, and Sx2, y2, z at the other end. These
two frames have the same Sz direction, which was calculated in step 1 above, so the bend angle 2 between Nz and
Sz can now be calculated. The effective curvature vector C is then calculated: it is the vector whose direction is the
binormal direction, which is the direction that is orthogonal to Sz and Nz, and whose magnitude is 2 / (L0), where
L0 is the unstretched length of segment.
Linear, isotropic bending stiffness
In the case of linear, isotropic bending stiffness the bend moment, M2, generated by the bending spring+damper is
calculated. Isotropic bend stiffness means that the bend stiffnesses for the x and y-directions are equal. The bend
moment M2 is the vector in the binormal direction whose magnitude is given by:
M2 = EI.|C| + D.d|C|/dt
where
EI = bending stiffness, as specified on the line types form
D = (/100).Dc
Dc = the bending critical damping value for a segment = L0(SegmentMass.EI.L0)
1/2

= target bending damping, as specified on the general data form.
The bend angle (1) and bend moment vector (M1) on the other side of the node are calculated similarly, so the node
experiences two bend moments, one each from the segments on each side of it.
Linear, non-isotropic bending stiffness
If the bend stiffnesses for bending about the x and y-directions are different, then the above equation is separated
into its components in the Sx2 and Sy2 directions, giving:
component of M2 in the Sx2 direction = EIx.Cx + Dx.dCx/dt
component of M2 in the Sy2 direction = EIy.Cy + Dy.dCy/dt
where
EIx, EIy = bending stiffnesses of segment, as specified on the line types form
Cx, Cy = components of the curvature vector C in the Sx2 and Sy2 directions
Theory, Line Theory
w

164
Dx = (/100)L0(SegmentMass.EIx.L0)
1/2

Dy = (/100)L0(SegmentMass.EIy.L0)
1/2
.
The curvature used in the calculation of bending moments is the value in the true plane of bending, taking full
account of the 3D motions of the adjacent nodes. The bending damping term D represents the effect on bending of
the structural damping in the line; its level is set by the Target Bending Damping data item on the general data form.
The bend angle (1) and bend moment vector (M1) on the other side of the node are calculated similarly.
Non-linear, isotropic bending stiffness (Elastic or Hysteretic)
In this case the bend moment M2 is given by:
M2 = Var BM(2 / [ L0]) + D'.d|C|/dt
where
Var BM is the function relating curvature to bend moment.
D' = (/100).D'c
D'c = the bending critical damping value for a segment = L0(SegmentMass.EInom.L0)
1/2

EInom is the nominal bending stiffness which is defined to be the bending stiffness at zero curvature.
Var BM can be specified by either:
- A tabular variable data source that defines the bending stiffness. The variable data source can be specified as
either hysteretic or elastic as described below.
- A non-linear stress-strain relationship for a homogeneous pipe. This approach results in a non-linear elastic
bend stiffness model.
The bend angle (1) and bend moment vector (M1) on the other side of the node are calculated similarly.
Elastic or Hysteretic Bending Model
For non-linear bend stiffness you can choose whether the curvature-moment data is interpreted hysteretically or
not.
Non-hysteretic
Non-hysteretic means that the data is applied using a simple elastic model. In this case the bend moment function
Var BM in the above equation is simply the specified function of the current curvature magnitude, without any
allowance for the history of curvature. So if the curvature increases and then decreases again then the bend moment
goes up and down the same non-linear moment-curvature curve. This is illustrated in the following diagram which
shows the bend moment M that results when the non-hysteretic model is used and a simple sinusoidally varying
curvature C is applied.
w
Theory, Line Theory
165
C
M

Figure: Elastic Non-linear Bend Stiffness
Hysteretic
The hysteretic model includes hysteresis effects, i.e. effects of the history of curvature applied. The data is taken to
specify the bend moment that results when the line is bent with slowly increasing curvature. But that if the
curvature reduces again then the bend moment does not come back down the same curve. Instead when the
curvature reduces again the bend moment comes down the curve that is obtained by first undoing and reversing the
first bit of curvature (i.e. the first increment of curvature that was applied), then the second bit of curvature, etc. In
other words the hysteretic model treats curvature as being made up of a series of curvature increments and
corresponding moment increments, and it undoes them on a first in first out basis, as opposed to the last in first out
basis that non-hysteretic bend stiffness uses.
The effect of this hysteretic model is that the bend moment follows a hysteresis curve, as shown in the following
diagrams. The left hand diagram shows the bend moment that results from a sinusoidal curvature history; the
arrows on the curve show the direction of change of the curvature and moment. The right hand diagram shows what
happens if a small curvature cycle is followed by another curvature cycle of greater amplitude.
C
M

C
M

Figure: Hysteretic Non-linear Bend Stiffness
Theory, Line Theory
w

166
The hysteresis model is described in detail by Tan, Quiggin and Sheldrake (2007).
Warning: You must check that the hysteretic model is suitable for the line type being modelled. It is not
suitable for modelling rate-dependent effects. It is intended for modelling hysteresis due to
persisting effects such as yield of material or slippage of one part of a composite line structure
relative to another part.
6.12.6 Calculation Stage 3 Shear Forces
Having calculated the bend moments at each end of the segment, the shear force in the segment can be calculated.
Each model segment is a straight stiff rod in which the bend moment vector varies from M1 at one end (the end
nearest End A of the line) to M2 at the other end, where these bend moments are calculated as described above.
Because the model segment is stiff in bending, the bend moment varies linearly along the segment and the shear
force in the segment is the constant vector equal to the rate of change of bend moment along the length. The shear
force is therefore given by:
Shear Force Vector = (M2 - M1) / L
where L is the instantaneous length of the segment. Note that M1 and M2 are vectors, so this is a vector formula that
defines both the magnitude and direction of the shear force.
This shear force vector is applied (with opposite signs) to the nodes at each end of the segment.
6.12.7 Calculation Stage 4 Torsion Moments
The torsion is then calculated (providing torsion has been included). To do this, the directions Sx1, Sy1, Sx2 and Sy2
must first be calculated, since so far only the segment axial direction Sz has been found.
The directions Sx2 and Sy2 at the end of the segment are determined from the orientation Nxyz of the adjacent node,
by rotating Nxyz until its z-direction is aligned with Sz. This rotation is therefore through angle 2 and it is a rotation
about the binormal direction (i.e. the direction that is orthogonal to both Nz and Sz). (Note that rotations about the
binormal direction are bending rotations only - i.e. they involve no twisting.) The directions Sx1 and Sy1 at the other
end of the segment are derived in the same way, but starting from the orientation of the node at that other end of
the segment.
The twist angle in the segment can then be calculated - it is the angle between the directions Sx1 and Sx2. Note that
this twist angle is also the angle between Sy1 and Sy2. In other words the orientations Sx1, y1, z and Sx2, y2, z, at the
two ends of the segment, differ by just a twist through angle .
Linear torsional stiffness
In the case of linear torsional stiffness the torque generated by the torsion spring+damper can then be calculated - it
is a moment vector whose direction is the segment axial direction Sz and whose magnitude is given by:
Torque = K. / L0 + C.(d/dt)
where
K = torsional stiffness, as specified on the line types form
= segment twist angle (in radians), between directions Sx1 and Sx2
L0 = unstretched length of segment
d/dt = rate of twist (in radians per second)
C = torsional damping coefficient of the line (this is defined below)
Te = effective tension in the segment
This torque moment vector is then applied (with opposite signs) to the nodes at each end of the segment.
Non-linear torsional stiffness
If the torsional stiffness is non-linear then the calculation of torque is as follows. It is a moment vector whose
direction is the segment axial direction Sz and whose magnitude is given by:
Torque = Var Torque(/L0) + C.(d/dt)
where
w
Theory, Line Theory
167
Var Torque is the function relating twist per unit length to torque as specified by the variable data source
defining torsional stiffness.
Damping coefficient C
The damping coefficient C represents the torsional effect of structural damping in the line. It is calculated
automatically based on the Target Torsional Damping value specified on the general data form using the formula
C = C(critical).(Target Torsional Damping) / 100
where C(critical) is the critical damping value for a segment, given by
C(critical) = (2IzK/L0)
1/2
.
Here, Iz is the rotational moment of inertia of the segment about its axis, allowing only for the structural mass of the
line, not the mass of any contents (since the contents are assumed to not twist with the pipe).
Note: If the torsional stiffness is non-linear then we use the nominal torsional stiffness Knom in the
formula for C. In this case we define Knom to be the torsional stiffness at zero twist per unit length.
6.12.8 Calculation Stage 5 Total Load
As described above, each mid-node experiences two tension forces, two bend moments, two shear forces and two
torque moments (one each from the segments either side of the node). These loads are then combined with the
other non-structural loads (weight, drag, added mass etc.) to give the total force and moment on the node. OrcaFlex
then calculates the resulting translational and rotational acceleration of the node, and then integrates to obtain the
node's velocity and position at the next time step. See Calculation Method.
6.12.9 Line End Orientation
At line ends, we usually need to define not only the axial direction of the end fitting but also the twist orientation
about that axial direction. This is done by first specifying the azimuth and declination of the axial direction and then
specifying the twist orientation by giving a third angle called gamma. See End Orientation.
Together, the 3 angles azimuth, declination and gamma fully define the rotational orientation of the end fitting. To
define how this is done we need to define a frame of reference Exyz for the end fitting, where:
- E is at the connection point.
- Ez is the axial direction of the fitting, using the "A to B" convention - i.e. Ez is into the line at End A, but out of the
line at End B.
- Ex and Ey are perpendicular to Ez.
The 3 angles, Azimuth, Declination and Gamma, specify the orientation of Exyz relative to the local axes Lxyz of the
object to which the end is connected, as follows. (If the line end is not connected to another object, then it is either
Fixed, Anchored or Free. In these cases the angles define Exyz relative to the global axes GXYZ.)
- Start with Exyz aligned with Lxyz.
- Then rotate Exyz by Azimuth degrees about Ez (= Lz at this point).
- Now rotate by Declination degrees about the resulting Ey direction.
- Finally rotate by Gamma degrees about the resulting (and final) Ez direction.
In all these rotations, a positive angle means rotation clockwise about the positive direction along the axis of
rotation, and a negative angle means anti-clockwise.
Three-dimensional rotations are notoriously difficult to describe and visualise. When setting the azimuth,
declination and gamma, it is best to check that the resulting Exyz directions are correct by drawing the local axes on
the 3D view.
Here are some examples of the effect of various values of (Azimuth, Declination, Gamma) for a Fixed end. For ends
connected to other objects, replace GXYZ by Lxyz in these examples.
- (0,0,0) sets Exyz to be aligned with GXYZ.
- (0,30,0) sets Ex at 30 below GX (in the GXZ plane), Ey along GY, Ez at 30 to GZ, towards GX.
- (0,180,0) sets Ex along -GX, Ey along GY, Ez along -GZ.
- (90,90,0) sets Ex along -GZ, Ey along -GX, Ez along GY.
Theory, Line Theory
w

168
- (90,90,90) sets Ex along -GX, Ey along GZ, Ez along GY.
End Direction Results
If the end orientation Exyz is defined, then OrcaFlex offers various results relative to those axes. For a given vector V
(such as the end force) these include the components of V relative to Exyz and the angles that V makes with the
various axes of Exyz (see Line Results: Angles). The angles offered are as follows:
- The "Ez-Angle" is the angle between V and the Ez-direction (i.e. axial direction). This measures how far V is
away from the end fitting axial direction.
- The "Ezx-Angle" is the angle from Ez to the projection of V onto the Ezx plane (measured positive from Ez
towards Ex). This is the angle V makes with Ez when viewing the zx-plane.
- The "Ezy-Angle" is the angle from Ez to the projection of V onto the Ezy plane (measured positive from Ez
towards Ey). This is the angle V makes with Ez when viewing the zy-plane.
- The "Exy-Angle" is the angle between the Ex-direction and the projection of V onto the Exy plane (measured
positive from Ex towards Ey). This is the angle V makes with Ex when viewing the xy-plane.
6.12.10 Line Local Orientation
At any point P, the line orientation is defined by its local axes Pxyz. Pz is in the axial direction, towards End B, and is
reported by the azimuth and declination angles. Px and Py are normal to the line axis.
At the ends of the line, these local axes are referred to as the end axes Exyz, and their directions are specified by the
end orientation angles on the line data form.
At other points on the line the calculation of the local orientation depends on whether torsion is included:
- If torsion is included then the local Pxyz directions are calculated using the specified torsional properties of the
line.
- If torsion is not included then the local directions at P are calculated by assuming that no twisting occurs
anywhere along the line between End A and P. In more detail, OrcaFlex calculates the local orientation at P by
starting with the orientation at End A (as specified by its end orientation angles) and then stepping along the
line from node to node, using the no-twist assumption at each step to calculate the next node's local orientation.
Note: If End A is free or if it is released then the local orientations are calculated as if End A was
connected to an object aligned with the global axes. Accordingly you should exercise caution when
interpreting results which depend on the local orientations of the line.
6.12.11 Treatment of Compression
A segment is said to experience compression if the effective tension is negative. OrcaFlex has two modes for handling
this, depending on the setting of the Limit Compression data item on the line types form.
Limit Compression: No
The segment is treated as a strut which can support unlimited elastic compression. This is the preferred model
except where the bend stiffness is insignificant.
Limit Compression: Yes
The segment is treated as an elastic Euler strut; the compression is limited to the segment Euler load value for the
segment
2
EI/L0
2
, where EI is the bending stiffness of the pipe and L0 is segment unstretched length. This correctly
models a chain or very flexible rope, which can support little or no compression. In the case of a chain, the bending
stiffness is set to zero, and the segment Euler load limit is also zero.
The segment Euler load provides a check on the ability of the model to represent compressive loads and the
deformations which result. Compression causes the line to deform laterally, the deformation being controlled by
bending. Given adequate segmentation, OrcaFlex will correctly represent this deformation. If compression exceeds
the segment Euler load of an individual segment, this indicates that the wavelength of deformation is shorter than
can be represented by the chosen segmentation and the results may be unreliable. The model should be re-run with
shorter segments in the affected area. The segment Euler load is shown on effective tension range graphs and
infringement warnings are given on the results form and in the statistics tables.
For more details see Modelling Compression in Flexibles and "Limit Compression" Switch.
w
Theory, Line Theory
169
6.12.12 Contents Flow Effects
Introduction
Contents flow effects are normally neglected when modelling pipes in OrcaFlex. However for pipes carrying high
contents density at rapid flow rates the flow effects can be significant. The published literature show that there are
three extra forces introduced by contents flow - a centrifugal force, a Coriolis force and a flow friction force.
OrcaFlex includes the facility to specify the contents mass flow rate on the line data form. If this is non-zero then the
resulting centrifugal and Coriolis effects are included. Note that the flow friction effects are not included in OrcaFlex.
Note that these flow effects apply only to the dynamic simulation, not to any of the static calculations performed by
the program. The mass flow rate is increased smoothly through the build-up period of the simulation, using the
same algorithm employed for 'ramping' wave height. Since the duration of the build-up period is under the user's
control, this feature can be used to determine the transient effect of different start-up rates.
Theory
This section documents the theory behind the modelling of the centrifugal and Coriolis forces in OrcaFlex. This
theory is technical and specific to the way pipes are modelled in OrcaFlex.
Notation
contents density
r mass flow rate
a internal cross-sectional area
l segment length
p position of node relative to fixed axes
v velocity of node relative to fixed axes
u unit vector in downstream direction of line
angular velocity of moving frame relative to fixed frame
dx/dt rate of change of any variable x relative to fixed axes
x' rate of change of any variable x relative to moving axes
The contents mass per unit length is a so the flow velocity is r/(a).
Centrifugal force on a node due to flow through a node
First consider a node with flow arriving from one direction, uin say, and leaving in another direction, uout. For a mid-
node uin and uout are simply the unit vectors in the directions of the segments before and after the node. For the first
node uin is the end direction - this is taken to be the same as uout if the end is free and otherwise is taken to be the no-
moment direction. Similar treatment is applied to uout at the last node.
Similarly let ain and aout denote the internal cross sectional areas on the input side and output side, respectively. ain
for the first node, and aout for the last node, are taken to be the same as the internal cross section area of the end
segment - i.e. we assume no change in internal cross sectional area at the line ends.
Then contents flow into the node at mass flow rate r and velocity r/(ain)uin so the rate of input of momentum is
r
2
/(ain)uin. The output mass flow rate is also r but the output velocity is r/(aout)uout so the rate of output of
momentum is r
2
/(aout)uout. The force on the contents that is required to achieve this change in flow direction must
therefore be the rate of output of momentum minus the rate of input of momentum, i.e.
r
2
/(aout)uout - r
2
/(ain)uin
The resulting centrifugal force on the node must be equal and opposite to this, so
Centrifugal Force on Node = (r
2
/)( uin / ain - uout / aout ).
We can check this result in two ways. Firstly, it has the correct units:
Units = [(M/T)
2
] / [(M/L
3
).(L
2
)] = ML/T
2
= F.
Secondly, it matches the centrifugal term included in equation 10 - see Gregory & Paidoussis, 1996.
Theory, Line Theory
w

170
Coriolis force due to movement of a segment
Now consider a segment between two nodes n1 and n2 and consider two frames of reference - a fixed global frame
and a moving local frame whose origin moves with node n1 and whose z-axis always points in direction u = unit
vector from n1 towards n2.
Consider the contents of a segment. Its velocity relative to the moving axes is
p' = (r/a)u
So its velocity relative to the fixed axes is
v1 + dp/dt
= v1 + p' + p
Therefore its acceleration relative to fixed axes is
d( v1 + p' + p) )/dt
= (v1 + p' + p)' + (v1 + p' + p)
= 0 + 0 + 'p + p' + v1 + p' + (p)
= 'p + 2p' + v1 + (p)
and of these terms the only new one, i.e. that is dependent on the rate of flow p' rather than p, is the term 2p' =
2(r/a)u. When multiplied by the mass of contents in the segment, la, this gives the Coriolis force on the
segment, i.e. 2lr (u).
But is given by
= u(v2 - v1) / l
so the Coriolis force is given by
2r (u (v2 - v1)) u
= 2r ( (u.u)(v2 - v1) - (u.(v2 - v1))u )
= 2r ( (v2 - v1) - (u-direction component of (v2 - v1)) )
= 2r . (component of (v2 - v1)) normal to u).
We then apportion this total Coriolis force on the segment into two equal parts - i.e. a force of
r . (component of (v2 - v1)) normal to u)
on each of the two nodes at the ends of the segment.
Note: A mid node therefore receives two Coriolis force contributions - one each from the segments either
side - but an end node only receives one such contribution.
The above result has the correct units:
Units = (M/T) . (L/T) = ML/T
2
= F.
and it agrees with the Coriolis term included in equation 10 - see Gregory & Paidoussis, 1996.
Other references:
Paidoussis M P, 1970
Paidoussis M P & Deksnis E B, 1970.
Paidoussis M P & Lathier B E, 1976.
6.12.13 Line Pressure Effects
OrcaFlex reports two different types of tension - the effective tension (Te) and the wall tension (Tw). These two
tensions are related by the formula
Tw = C1.(Te + PiAi - PoAo)
where
- Pi = internal pressure. Pi is calculated from the contents pressure, allowing for the static pressure head due to
the instantaneous height difference between the point and the specified reference Z level.
w
Theory, Line Theory
171
- Po = external (i.e. surrounding fluid) pressure. Po is assumed to be zero at and above the mean water level.
Below there it is calculated allowing for the static pressure head due to the instantaneous height difference
between the point and the mean water level.
- Ai, Ao = internal and external cross section areas of the stress annulus, respectively, given by Ai = .ID
2
/4 and Ao
= .OD
2
/4, where ID and OD are the stress diameters of the line type.
- C1 = tensile stress loading factor. By default this equals 1.
Note: Where the stress ID or OD differ from the corresponding line type diameter, OrcaFlex (except
release 8.6a - see What's New) uses the stress diameters, not the line type diameters, to calculate Ai
and Ao. This is equivalent to assuming that the annulus between the stress OD and line type OD
carries an axial load which matches the ambient external pressure, and the annulus between the
stress ID and the line type ID carries an axial load which matches the ambient internal pressure.
Warning: Before using the wall tension and stress results you should confirm that this model is suitable for
the case you are modelling. We believe it is suitable for many cases of attached buoyancy and for
non-structural linings, but it may not be suitable for bonded buoyancy or structural linings. If it is
not suitable you should do your own separate calculation of wall tension and stresses.
Explanation of Wall Tension Formula
To understand this formula and the difference between effective tension and wall tension, consider the forces acting
axially at the mid-point of a segment. The nodes either side represent a length of pipe plus its contents. More
importantly, the forces on them are calculated as if the length of pipe represented had end caps which hold in the
contents and which are exposed to the internal and external pressure. The diagram below illustrates this and shows
the tension and pressure forces present; the equation above is simply the force balance equation for this diagram.

P
i
A
i

P
o
A
o

T
e

T
w
P
i
A
i

P
o
A
o

T
e

T
w

segment mid-point
node n
node n+1

Figure: Tension and Pressure forces
Notes: Both effective tension and wall tension are relevant to the question of pipe buckling. For buckling
of the pipe as an Euler strut, effective tension is the governing parameter - when it is negative the
strut is in effective compression. On the other hand, local buckling of the pipe wall is determined by
wall tension. (Note that OrcaFlex does not model local buckling, which depends critically on details
of the pipe construction and is therefore beyond the scope of the program.)
For cables, umbilicals and ropes, the internal pressure term PiAi does not apply. However, the
external pressure term PoAo is still applicable, and the actual tension in the cable is the wall tension
as defined above.
For chains, which are inherently discontinuous, the pressure terms do not apply and the effective
tension is the true tension in the chain.
6.12.14 Pipe Stress Calculation
OrcaFlex provides stress results that apply only to simple pipes. More precisely, the stress calculation assumes that
the loads on the line are taken by a simple cylinder whose inside and outside diameters are given by the stress
diameters specified on the line-types form. It also assumes that the cylinder is made of a uniform material. The pipe
stress results are therefore only valid for things like steel or titanium pipes - they do not apply to composite
structure flexible pipes.
Consider a cross-section through a mid-segment point, as shown in the following diagram. The diagram shows the
frame of reference used for the cross-section, which has origin O is at the pipe centreline, Oz along the pipe axis
(positive towards End B) and Ox and Oy normal to the pipe axis (and so in the plane of the cross-section).
Theory, Line Theory
w

172
x (Theta=0)
y (Theta=90)
Stress ID
Stress OD
r
z
P
y
Theta
Cross-Section Side View
End A O
C
R
O

Figure: Frame of Reference for Stress Calculation
The program calculates, at the cross-section, the following values:
- Internal and external pressures, Pi and Po respectively.
- Effective tension and resulting wall tension. These are both vectors in the z-direction, with magnitudes Te and
Tw respectively.
- Curvature, which is a vector in the xy-plane, with components Cx and Cy in the Ox and Oy directions, respectively.
- Bend Moment, which is a vector in the xy-plane, with magnitude M and components Mx and My in the Ox and Oy
directions, respectively.
- Shear force, which is also a vector in the xy-plane, with magnitude S and components Sx and Sy in the Ox and Oy
directions, respectively.
- Torque, which is a vector in the z-direction with magnitude .
In addition we define the following terminology:
- ODstress and IDstress = stress diameters, as specified on the line types form.
- A = cross-sectional stress area = (/4).(ODstress
2
- IDstress
2
)
- Ixy = 2
nd
moment of stress area about Ox (or Oy) = (/64).(ODstress
4
-IDstress
4
)
- Iz = 2
nd
moment of stress area about Oz = 2Ixy
- C1, C2, C3, C4 = stress loading factors (C1 = tensile, C2 = bending, C3 = shear, C4 = torsional), as specified on the line
types form.
The stress generated by the above loads varies across the cross-section. Consider the point P in the cross-section
shown as a black dot in the diagram, which can be identified by its polar coordinates (r, ). At P, we define a local set
of axes (R,C,Z) where R is radially outwards, C is in the circumferential direction (positive in the direction of Theta
increasing) and Z is parallel to Oz.
With respect to these axes, the stress at P is a symmetric 3x3 matrix of stress components (see Pipe Stress Matrix).
OrcaFlex calculates this matrix and then derives stress results from it.
6.12.15 Pipe Stress Matrix
The pipe stress matrix at point P (see Pipe Stress Calculation) can be written as:
RR RC RZ
RC CC CZ
RZ CZ ZZ
These stress components are calculated as follows. For terminology see Pipe Stress Calculation.
w
Theory, Line Theory
173
Diagonal Terms
The 3 diagonal entries of the stress matrix, RR, CC and ZZ, are the radial, circumferential (or hoop) and axial (or
longitudinal) stresses, respectively.
Radial and Hoop Stresses
RR and CC are due to the internal and external pressure. They are calculated using Lame's equation for a thick-
walled cylinder whose internal and external diameters are IDstress and ODstress, as specified on the line types form.
This gives:
RR = Radial Stress = a - b/r
2

CC = Hoop Stress = a + b/r
2

where a and b are the values that satisfy
a - b/(IDstress/2)
2
= -Pi and
a + b/(ODstress/2)
2
= -Po.
Notes: IDstress and ODstress are by default equal to the ID and OD specified on the line type form. However,
they can be set to be different to ID and OD. In this case the above calculation is equivalent to
assuming that the material in between ID and IDstress, and between ODstress and OD, is transparent
to pressure. The internal pressure therefore applies right through to the IDstress and the external
pressure applies right through to ODstress.
If IDstress is zero, then OrcaFlex assumes that external pressure applies throughout the structure -
i.e. that RR = CC = -Po.
Axial Stress
ZZ is the axial stress and is given by:
ZZ = Direct Tensile Stress + Bending Stress
where the Direct Tensile Stress is the contribution due to wall tension and Bending Stress is the contribution due to
bend moment. The wall tension is assumed to be uniformly distributed across the stress area, so its contribution is
given by:
Direct Tensile Stress = Tw/A
The contribution due to bend moment varies across the cross-section and is given by:
Bending Stress = C2r(Mxsin - Mycos)/Ixy
Axial Stress (non-linear stress-strain)
For a homogeneous pipe with non-linear stress-strain ZZ cannot be split into tensile and bending components
because of non-linearity. Instead it is calculated directly from (), the specified stress-strain relationship:
ZZ = (ZZ)
where
t is the direct tensile strain
ZZ is the axial strain, ZZ = t + r(Cxsin - Cycos)
Off-Diagonal Terms
The 6 off-diagonal terms are the shear stresses, but there are in fact only 3 independent terms, since the matrix is
symmetric. They are given by:
RC = 0
RZ = C2(Sxcos + Sysin)/A
CZ = C3r/Iz + C2(Sycos - Sxsin)/A
The contribution C3r/Iz in the above equation is the shear stress contribution due to torque. If torsion is not
included in the model, then it is zero. The other contributions are both due to the shear force, which is assumed to
be uniformly distributed across the stress area.
Finally, for two useful references on this subject, see Sparks (1980) and Sparks (1983).
Theory, Line Theory
w

174
6.12.16 Hydrodynamic and Aerodynamic Loads
Drag
Both hydrodynamic and aerodynamic drag forces, using Morison's Equation are applied to the line. The same drag
formulation is used for hydrodynamic and aerodynamic drag forces.
Note: Aerodynamic drag is only included if the Include wind loads on Lines option is enabled in the
Environment data.
The drag forces applied to a line are calculated using the cross flow principle. That is, the fluid velocity relative to
the line Vr is split into its components Vn normal to the line axis, and Vz parallel to the line axis. The components of
drag force normal to the line axis are then based on Vn, and its x and y-components Vx, Vy. The component of drag
force parallel to the line axis is based on Vz.
The drag force formulae use drag coefficients, Cdx, Cdy and Cdz, and the drag areas appropriate to each direction. The
drag coefficients are specified on the line type data form, but can also be modified to model wake interference from
other lines upstream.
For the directions normal to the line axis (x and y) the drag area is taken to be the projected area DnL where Dn is the
normal Drag / Lift diameter and L is the length of line represented by the node. For the axial direction the drag area
is taken to be the skin surface area DaL where Da is the axial Drag / Lift diameter.
There is a choice of the following three possible drag formulations for the drag force components (Fx, Fy, Fz) in the
local line directions. The formulations differ in how the drag force components vary with the incidence angle
between the flow and the line axial direction. The formulations are reviewed in Casarella and Parsons.
In the formulae below
= fluid density
P = proportion wet or proportion dry, as appropriate.
Standard Formulation
Fx = P( (DnL)CdxVx|Vn| )
Fy = P( (DnL)CdyVy|Vn| )
Fz = P( (DaL)CdzVz|Vz| )
This formulation is the most commonly-used and was the formulation used by versions of OrcaFlex before a choice
of formulation was introduced. It has been proposed or used by various authors, including Richtmyer, Reber and
Wilson. It is appropriate for general flow conditions.
Pode Formulation
Fx = same as standard formula for Fx, above
Fy = same as standard formula for Fy, above
Fz = +/- P( (DaL)Cdz|V|
2
)
where the sign of Fz, i.e. whether it is towards End A of the line or towards End B, is the same as the axial component
of the relative flow vector.
This formulation is preferred by some analysts for systems with near-tangential flow.
Warning: The Pode formula for Fz is discontinuous at = 90, since then the axial component of the flow
vector is zero and so the direction of Fz is undefined. In this case OrcaFlex sets Fz to zero.
Eames Formulation for bare cables
Fx = P( (DnL)CdxVx|Vn| + (DaL)CdzVx(|V| - |Vn|) )
Fy = P( (DnL)CdyVy|Vn| + (DaL)CdzVy(|V| - |Vn|) )
Fz = P( (DaL)CdzVz|V| )
Drag Force Variation with Incidence Angle
The above formulae for the drag force components can be re-written in a form that highlights how the drag force
varies with incidence angle.
w
Theory, Line Theory
175
Consider the case where the line is axially symmetric, i.e. Cdx = Cdy = Cdn say, and let be the incidence angle
between the flow vector V and the line axis. Then Vz = Vcos and Vn = Vsin . Also, let:
R = P( (DL)Cdn|V|
2
)
= Cdz/Cdn = (drag force in axial flow) / (drag force in normal flow of same velocity)
Fn = the normal component of the drag force.
Then the formulations can be expressed as follows.
Standard: |Fn| = Rsin
2
|Fz| = R.cos
2

Pode: |Fn| = Rsin
2
|Fz| = R
Eames: |Fn| = R{(1-)sin
2
+ sin } |Fz| = Rcos
Drag coefficient variation with Reynolds number and Height above seabed
The normal drag coefficients Cdx and Cdy can be specified to vary with Reynolds number. The variable data table
specifies the drag coefficient as a function of Reynolds number, Cd(Re).
Reynolds number can be calculated in a number of different ways, as specified by the Reynolds number calculation
data. You should set the Reynolds number calculation data to match the data source used for your variable drag
coefficient data.
Alternatively the normal drag coefficients can be specified to vary with Height above Seabed, h. We define h to be
the vertical height above the seabed of the underside of the node, allowing for contact diameter. The actual drag
coefficient used by the OrcaFlex calculation is given by:
Cd = Cd2 + (1-)Cd1
where
Cd1 is the Drag Coefficient on the Seabed,
Cd2 is the Drag Coefficient away from the Seabed,
is the Drag Variation Factor.
These data are all defined on the variable data form.
The drag variation factor is a function of the normalised height above the seabed, h/Dn. For nodes lying on the
seabed Cd should equal Cd1. In this case h/d=0 and so (0) should equal 0. Similarly, for nodes well away from the
seabed we expect Cd to be equal to Cd2 and so should equal 1 for large values of h/Dn.
The drag coefficients Cd1 and Cd2 can be specified as varying with Reynolds number which allows specification of a
drag force which varies with both Reynolds number and Height above seabed.
Lift
The hydrodynamic lift force is defined to be:
FLIFT = P|un uz|((DnL)Cl|Vt|
2
)ul
where
un is the unit vector in the seabed outward normal direction.
uz is the unit vector in the node z-direction.
ut is the flow direction for lift purposes = (un uz)/|un uz|. This is the transverse direction that is normal to
the line axis and in the seabed plane.
ul is the lift force direction = uz ut. This is the direction normal to the line axis and in the plane of that axis
and the seabed normal.
Cl is the lift coefficient.
Vt is component of Vr in the transverse direction ut.
The lift force magnitude has been scaled by |un uz|. This scaling factor is equal to cos where is the angle of the
line axis to the seabed plane. The purpose is to scale down the lift force as the line axis becomes more inclined to the
seabed plane. If the line axis is parallel to the seabed plane this factor is 1 and so it has no effect. But as the line axis
inclines to the seabed plane the factor reduces, until when = 90 the factor is zero and so no lift force is applied.
Theory, Line Theory
w

176
Another way of thinking about this factor is that it generalizes the standard lift force formula FLIFT = (DnLCl|Vt|
2
)ul
to cases where the line axis is inclined to the seabed. The effect of factor is equivalent to assuming that the standard
lift force formula gives the lift force per unit projected length, instead of per unit arc length. By projected length we
mean the length of the projection of the node onto the seabed plane.
Lift coefficient variation with Reynolds number and Height above seabed
The lift coefficient can be specified to vary with Reynolds number in an identical manner to drag coefficients.
Reynolds number can be calculated in a number of different ways, as specified by the Reynolds number calculation
data. You should set the Reynolds number calculation data to match the data source used for your variable lift
coefficient data.
Alternatively the lift coefficient can be specified to vary with Height above Seabed. In this case the actual lift
coefficient used by the OrcaFlex calculation is given by:
Cl = Cl1
where
Cl1 is the Seabed Lift Coefficient,
is the Lift Coefficient Decay Factor.
These data are all defined on the variable data form.
The lift coefficient decay factor is a function of the normalised height above the seabed, h/Dn. For nodes lying on
the seabed Cl should equal Cl1. In this case h/d=0 and so (0) should equal 1. For nodes well away from the seabed
the lift effect dies away and we expect Cl to be equal to 0. So should equal 0 for large values of h/D.
The lift coefficient Cl1 can be specified as varying with Reynolds number which allows specification of a lift force
which varies with both Reynolds number and Height above seabed.
Added Mass
The added mass effects on a line are calculated separately for the local x, y and z-directions. For each of these
directions, the line is subject to two added mass effects:
Its effective mass is increased by
Ca.(Displaced Mass)
where Displaced Mass is the mass of the fluid displaced (taking into account the proportion wet) and Ca is the added
mass coefficient specified for that direction. As a result, if the line accelerates then it experiences an extra inertial
force (due to added mass) given by
-Ca.(Displaced Mass).AL
where AL is the component (in that direction) of the acceleration of the line (relative to the earth).
If the fluid is accelerating then the line experiences a fluid acceleration force given by
(1+Ca).(Displaced Mass).AF
where AF is the component (in that direction) of the acceleration of the fluid (relative to the earth).
The fluid acceleration force is sometimes written as:
Cm.(Displaced Mass).AF
where Cm = 1 + Ca. It can also be split into two terms:
(Displaced Mass).AF + Ca.(Displaced Mass).AF
where the first term is called the Froude Krylov force and the second term is called the added mass force.
Fluid Flow
If the mass flow rate of the Line is non-zero then the centrifugal and Coriolis effects due to this flow are included.
6.12.17 Drag Chains
A drag chain is an attachment to a line that applies a force to the node to which it is attached. The force consists of
the tension in the drag chain and so is in the direction in which the chain is hanging. This direction is determined by
w
Theory, Line Theory
177
the relative velocity of the water past the chain - the faster the flow then the greater the angle of the drag chain to
the vertical. This is now described in more detail.
u
V
n
V
a
V
W
W
n
W
a
180-u
Drag Chain
o =u-90
Connection
to Line
A

Figure: Drag Chain
Consider the drag chain shown in the above diagram.
Let
D = drag chain effective diameter
L = drag chain length
= drag chain declination from vertical
V = horizontal relative velocity = (horizontal fluid velocity at A) - (horizontal node velocity at A).
Then the incidence angle between the horizontal relative velocity vector V and the drag chain is = - 90 and the
normal and axial drag forces are given by:
Fn = normal drag force = 0.5..L.D.Cdn().Vn.|Vn|
Fa = axial drag force = 0.5...L.D.Cda().Va.|Va|
where
Vn = normal component of relative velocity = |V|sin
Va = axial component of relative velocity = |V|cos
= water density
Cdn(), Cda() = normal and axial drag coefficients for this incidence angle.
The inertia of the drag chain is assumed to be small enough to be neglected, so we assume that the drag chain is
always in equilibrium under the action of 3 forces:
- The chain's wet weight, W.
- The fluid drag on the chain.
- The tension being applied by the line at the top of the chain.
Because the tensile force being applied by the line is axial to the chain, the components of wet weight and drag
normal to the chain must balance. In other words, the direction in which the drag chain hangs is that in which the
chain is in force balance in the direction normal to the chain. The remaining net force on the chain in the axial
direction, Fa, is then applied to the line.
OrcaFlex therefore hangs the chain in the same vertical plane as the relative velocity vector V and at angle to the
vertical. OrcaFlex calculates the angle by iterating until the sum of the normal components of drag force and wet
weight is zero.
Theory, Line Theory
w

178
Drag Chain Seabed Interaction
Drag chains, in OrcaFlex, interact with the seabed in a fairly simplistic way that is designed to achieve the following
two primary effects of seabed interaction:
- Firstly, that as the chain is lowered down onto the seabed, the wet weight of the chain is steadily reduced as the
chain becomes supported by the seabed.
- Secondly, that if the chain is dragged across the seabed then an opposing friction force R is generated, where
is the friction coefficient and R is the seabed reaction.
The seabed interaction model used is as follows:
- At any given time, OrcaFlex first calculates how much of the drag chain would be supported by the seabed. It
assumes that the chain hangs vertically straight down from the line. The drag chain is then considered as being
made up of two parts - the supported part and the remaining hanging part.
- The hanging part of the chain is then analysed as described above.
- The supported part of the chain is modelled as if it is lying on the seabed directly beneath the node to which the
chain is attached. As the node moves laterally, the supported chain also moves laterally (but below the node)
and so generates a friction force that is then applied to the node.
Note that the division of the drag chain into a hanging length and a supported length is done before the hanging
length is analysed, and so is done with the chain vertical. This means that if current drag causes the chain to hang at
an angle to the vertical then the supported length will generally have been overestimated and the hanging length
correspondingly underestimated. This is an inaccuracy that cannot easily be avoided at the moment.
6.12.18 Line End Conditions
Except for Free Ends, the connection at the line end is modelled as an isotropic 'ball-joint' with a rotational stiffness
and a preferred 'no-moment' direction. A rotational stiffness of zero simulates a freely rotating end, and a value of
Infinity simulates a clamped end.
The inclusion of end stiffness allows the program to calculate the curvature and bending moment at the termination.
If the curvature is large, the calculated value is accurate only if sufficiently short segments have been used to model
the line near its end.
OrcaFlex reports a value for End Force and End Ez-Angle. These are the magnitude of the end force, and the
magnitude of the angle between the end force vector and the no-moment direction. Vessel motion is automatically
accounted for. The end force and angle values provide the basis for the design of end fittings such as bend stiffeners.
See Modelling Line Ends.
6.12.19 Interaction with the Sea Surface
OrcaFlex Lines are subdivided into segments, and the various forces are attributed to nodes at each end. For a
partially submerged segment, the hydrostatic and hydrodynamic forces are proportioned depending on how much
of the segment is submerged - the Proportion Wet (PW). Proportion Wet is available as a line result variable. We
also define Proportion Dry (PD) as PD = 1 - PW.
For a segment whose axis is normal to the surface, the Proportion Wet could be calculated from the intersection of
the segment centreline axis with the free surface. However, this simple approach breaks down when the segment is
tangent to the surface.
For this reason, OrcaFlex uses a simple but effective modification of this concept. Instead of using the centreline axis,
we use the diagonal line joining the highest point on the segment circumference, at the 'dry' end, with the lowest
point at the 'wet' end; see the diagonal line in the figure below. As the segment passes through the tangent position,
the diagonal line switches corners but the proportion wet varies continuously. The intersection of the diagonal line
with the surface continues to give the appropriate Proportion Wet result, and the hydrostatic and dynamic forces
are attributed to the appropriate node.
w
Theory, Line Theory
179
B
A
Proportion Wet = B / (A+B)

Figure: Proportion Wet for a surface-piercing segment
This surface-piercing model enables OrcaFlex to model systems such as floating hoses, containment booms and
wave suppression systems. However please note the following points when modelling such systems:
- A consequence of this model is that a hose floats in still water as a wall-sided body; in other words OrcaFlex
does not take account of the variation in water plane area with draft that arises from the circular cross-section.
For cases of practical dynamics, this simplification is of minor importance, but it does mean that if you check the
immersion depth of a hose in still water you may find the answer slightly wrong if the hose is very buoyant, or
just awash.
- When modelling floating hoses, it is important to have enough segments to model the local curvature. If your
hose is flexible, and the waves are short, then you will need at least ten and preferably twenty segments per
wave to model the curvature properly. However a stiff hose tends to bridge the wave troughs, and fewer
segments are required.
- The program uses constant drag and added mass coefficients for the floating hose, and the user has to select
appropriate values based on the average immersion depth. Unfortunately the literature is of limited help - if you
know of any good data source, we would be very pleased to hear of it.
6.12.20 Interaction with Seabed and Shapes
Nodes are also subjected to reaction forces from the seabed and any Shapes with which they come into contact. The
contact occurs at the outer edge of the line, as specified by the contact diameter. The reaction force is given by:
Reaction = K.A.d
where
K = stiffness of the seabed or shape,
d = depth of penetration, allowing for the contact diameter,
A = contact area, which is taken to be contact diameter multiplied by the length of line represented by the
node.
In addition, nodes experience a damping force. For details see Seabed Theory and Shapes Theory.
Finally, friction forces can also be included.
6.12.21 Clashing
OrcaFlex includes the capability to model clashing between lines. To include clash modelling between two lines, you
must set Clash Check to "Yes" and set the Contact Stiffness to a non-zero value, for both lines. You can also specify
the Contact Damping value.
The facility to suppress clash modelling (by setting Clash Check to "No") has been included because the clashing
algorithm is time consuming. It is therefore best to suppress clash modelling on all sections that will never clash
with other lines, or if you are not interested in the effects of clashing.
OrcaFlex assumes constant spring stiffness and damping values, and neglects friction. The force algorithm is
described below. It pushes lines apart again if they try to pass through another, and it permits lines to separate
again after contact. Multiple contact points along the line length are allowed for, but clashes of one part of a line with
another part of the same line are not modelled at present.
Theory, Line Theory
w

180
Clashing behaviour can be difficult to understand and it is not always obvious what the results mean and how they
should be used in practice. This is a developing area and we would appreciate feedback from users. The following
notes expand on the way the calculations are carried out by the software and give our suggestions on interpretation.
Note: Line clashing is not modelled during statics.
Calculating the Clash Force
OrcaFlex checks for clashing between each line segment and every segment in every other line in the OrcaFlex
model (providing check checking is enabled and the contact stiffness is non-zero, for both segments involved). Note
that OrcaFlex does not check for clashing between two segments of the same line, so it does not model clash contact
of a line with itself.
The clash check between segment S1 (on line L1) and segment S2 (on a different line L2) is done as follows. Let the
radii of the two segments be r1 and r2 (as defined by the line type contact diameter). First OrcaFlex calculates the
shortest separation distance, d, between the centrelines of the two segments. If d (r1 + r2) then the lines are not in
contact and no contact force is applied.
If d < (r1 + r2) then the lines are in contact. In this case OrcaFlex applies equal and opposite clash contact forces to
the 2 segments to push them apart, as follows. Let p1 and p2 be the two points of closest proximity - i.e. p1 is on the
centreline of segment S1 and p2 is on the centreline of segment S2, and these are the two points that are minimum
distance d apart. Also, let u be the unit vector in the direction from p1 towards p2. Then the magnitude of the clash
contact force applied is given by:
F = (Stiffness Term) + (Damping Term)
where the two terms on the right are documented below. A force of this magnitude F is applied to segment S1, at p1,
in direction -u. And the equal and opposite force is applied to segment S2, at p2, in direction +u.
The stiffness term is given by:
Stiffness Term = k.(d - [r1 + r2])
where k = 1 / (1/k1 + 1/k2) is the combined contact stiffness of the segments. Here k1 and k2 are the contact
stiffnesses of the two segments, as specified in the Line Types data.
The damping term is based on the rate of penetration, v, which is the u-direction component of p1's velocity relative
to p2. If v0 then the two segments are moving apart and then no damping force is applied. If v>0 then the
penetration is increasing and the damping term is then given by:
Damping Term = cv
where c is the combined contact damping value of the two segments, which is given by:
c = 0 if c1=0 or c2=0
c = 1 / (1/c1 + 1/c2) otherwise.
Here c1 and c2 are the contact damping values of the two segments, as specified in the Line Types data.
How the Clash Force is Applied and Reported
In general, clashing will take place between one segment of one line and one segment of another (the probability of a
clash occurring exactly at a node is very small unless you take special measures to make it happen). OrcaFlex
determines the force as just described, and reports the force as a segment variable - i.e. when you ask for the clash
force at a particular arc length along the line, the force reported is the clash force for the segment which contains the
specified point.
If multiple clashes occur simultaneously on the same segment then the Line Clash Force reported is the magnitude
of the vector sum of the clash forces involved.
In the OrcaFlex model, all forces act at the nodes, so the clash force has to be divided between the two nodes at the
ends of the segment in which the force acts. The force is divided in such a way that the moments of the two forces
about the contact point are equal and opposite.
Interpreting the Results
Contact between lines can be a violent impact at high relative velocity, or a gentle drift of one line against another, or
anything in between. We need to view the results in different ways for different sorts of contact. The following notes
give some general guidance based on our experience, but in difficult cases it is essential that users develop their own
understanding of the underlying physics, and confirm it by sensitivity analysis.
w
Theory, Line Theory
181
OrcaFlex provides three measures of the severity of a clash event:
- Clash force.
- Clash impulse (integral of contact force times time - a measure of momentum transfer).
- Clash energy (calculated by integrating the magnitude of clash force with respect to depth of penetration).
There are 3 types of OrcaFlex results which can be used for analysing clashing:
1. Time Histories of Clash force and Clash impulse.
2. Range Graphs of Clash force.
3. The Line Clashing Report contains Clash force, Clash impulse and Clash energy, together with a host of other
details about clash events.
Low Speed Contact
Where one line drifts quite slowly against another as a result of weight or drag forces, then the contact is essentially
quasi-static. The clash force at the point of contact is the best measure of what is happening, and will be insensitive
to segmentation and contact stiffness.
High Speed Impact
The case of violent impact at high speed is much more complicated. Contact forces arrest the relative movement of
the lines over a very short time interval. Momentum is transferred from the faster moving to the slower moving line.
Kinetic energy at the moment of impact is converted partly to local strain energy at the point of contact, and partly
to axial and bending strain energy elsewhere in the lines.
If the discretisation of the lines is sufficiently fine, the contact stiffness value is correct, and contact damping is small,
then OrcaFlex models the impact correctly, and all the reported results (force, impulse, energy) are correct. In
practice, however, contact stiffness is rarely known with any precision, and it may not be practicable to discretise
the line sufficiently to represent the deformation of the line axially, or particularly in bending, following a violent
impact. (Deformation of the colliding cross sections is represented by the contact stiffness.) Under these
circumstances, we need a measure of clash severity which is both meaningful for engineering purposes, and
insensitive to discretisation and contact stiffness. Of the three measures available:
- Maximum clash force reduces with reducing contact stiffness and is usually the least reliable measure.
- Impulse is generally insensitive to changes in contact stiffness, though this may be masked where the change in
stiffness causes a change in the character of the impact. (For example, a high contact stiffness may give rise to a
single impact followed by a large rebound. Reducing stiffness can reduce the rebound to such an extent that the
single impact is replaced by a double impact.) Impulse is also fairly insensitive to changes in segmentation.
Unfortunately, however, impulse is not a convenient measure for engineering purposes.
- Energy is the most convenient practical measure of potential damage. This may be sensitive to contact stiffness,
where there is a fairly equal distribution of strain energy between contact and other elastic deformations of the
system, but if contact strain energy is the dominant component, then sensitivity is reduced. Contact strain
energy is also sensitive to discretisation: longer segments give higher values of contact strain energy. This
means that the reported strain energy for a coarsely segmented model is generally conservative. In practical
cases, it may be possible to reduce segment length sufficiently to show that contact strain energy is below
damaging levels, without needing to go to the very fine discretisation which might be required for an accurate
value.
Damping
Linear damping is included in the OrcaFlex contact model, and contributes to the reported clash force, impulse and
energy results.
6.12.22 Modal Analysis
The model analysis calculates the undamped natural modes of a single line. These modes are given in decreasing
order of period and are numbered starting from 1.
The analysis calculates the natural modes of the discretised model, not those of the real continuous line. However
the discretised modes are close to the continuous ones and for a mode number the accuracy improves as more and
more elements are used to model the line. For any given level of discretisation the accuracy is better for the lower
modes and progressively worsens as you go to higher and higher modes. The highest numbered modes are unlikely
to be realistic since they are oscillations whose wavelengths are of the same order as the segment length.
Theory, 6D Buoy Theory
w

182
If the line hangs in one of the global axis planes then you can often distinguish whether a mode is in-plane or out-of-
plane by looking at the pattern of zeros in the table of displacements. For example if the line hangs in the XZ plane
then the out-of-plane modes have non-zero Y-displacements but zero (or very small) X- and Z-displacements, and
the in-plane modes have the opposite pattern of zeros.
Outline Theory
Modal analysis is a standard technique that is well-documented in the literature, but here is a brief outline. First
consider a single degree of freedom system consisting of a mass attached to a linear spring. The undamped equation
of motion is:
Mx''(t) = -Kx(t)
where x(t) is the offset (at time t) from mean position, x''(t) is the acceleration, M is its mass and K is the stiffness of
the spring. Since this analysis neglects any damping the results are referred to as the undamped modes.
The solution of the equation is known to be simple harmonic, i.e. of the form x(t) = a.sin(t), where a and are
unknowns to be found by solving the equation. Differentiating x(t) gives:
x''(t) = -
2
.a.sin(t)
so when we substitute into the equation of motion we obtain:
-M.
2
.a.sin(t) = -K.a.sin(t) (1)
which can be rearranged to give:
= (K/M)
1/2
.
This is the angular frequency of the oscillation and so the natural period T is given by:
T = 2(M/K)
1/2

For this simple harmonic oscillator there is just a single undamped natural mode, corresponding to the single degree
of freedom. For a continuous riser there are an infinite number of degrees of freedom, and hence an infinite number
of undamped natural modes, but computers work with discretised models with finite numbers of degrees of
freedom.
Consider a discretised line in OrcaFlex with N degrees of freedom. In this situation the above equations still apply,
but they now have to be interpreted as matrix/vector equations where and T remain scalars, a, x and x'' become
vectors with N elements, and M and K become NN matrices.
Equation (1) is an eigen-problem with N solutions, the i
th
solution being i and ai, say, where i is a scalar and ai is a
vector with N elements. This i
th
solution is called the i
th
natural mode. It is an oscillation of the line in which all the
degrees of freedom oscillate at the same angular frequency i. But different degrees of freedom have different
amplitudes, given by the components of ai. This amplitude variation is called the mode's shape.
Seabed friction
The theory outlined above requires that the mass and stiffness matrices are symmetric which is not always the case
in an OrcaFlex model. The most important example of this is the friction model. Friction is a non-conservative effect
and non-conservatism equates to non-symmetric terms in the stiffness matrix. Clearly this presents a problem.
The non-conservatism of the standard OrcaFlex friction model arises when a node is slipping, that is when the
deflection from its friction target position exceeds Dcrit. When performing modal analysis OrcaFlex assumes that
nodes on the seabed are restrained by a linear stiffness effect determined by the seabed's shear stiffness, Ks and the
node's contact area, A. This stiffness term corresponds to the stiffness of a linear spring acting in the plane of the
seabed, connecting the node and its target position, and with a stiffness of KsA.
This has the effect of restraining movement of the nodes on the seabed, in the plane of the seabed which is desirable
for a modal analysis of a system with seabed contact. This modification to the seabed friction model results in a
symmetric, conservative system and hence enables modal analysis to be performed successfully.
6.13 6D BUOY THEORY
6.13.1 Overview
This and subsequent topics give the formulae used for the forces and moments applied to a 6D buoy. Note that for a
spar buoy there is also more detailed documentation available - ask Orcina for the article 'Spar Buoy Equation of
Motion'.
w
Theory, 6D Buoy Theory
183
The buoy is treated as a rigid body with 6 degrees of freedom, 3 translational and 3 rotational. The equation of
motion has the following contributions.
Weight
The weight force of Mass . g is applied at the centre of mass.
Buoyancy
Lumped buoys
The buoyancy force on a lumped buoy is given by:
Buoyancy Force = . g . WettedVolume
where:
- is the sea density.
- WettedVolume is given by PW.Volume where Volume is as specified on the buoy data form.
- PW is the 'proportion wet' for the lumped buoy. This is taken to be 1 when the centre of volume is Height / 2 or
more below the water surface, 0 when the centre of volume is Height / 2 or more above the water surface, and
varies linearly with immersion between these two limits.
This buoyancy force is applied vertically upwards at the centre of wetted volume, which is taken to be
Height.(1-PW) / 2
below the specified centre of volume.
Warning: For Lumped Buoys there is no contribution to roll and pitch stiffness from free surface effects when
the buoy pierces the surface, since OrcaFlex has no information regarding the actual body
geometry. Static stability of a floating Lumped Buoy is therefore not correctly represented.
Spar buoys and Towed Fish
For spar buoys and towed fish, separate buoyancy forces are calculated and applied to each cylinder. The buoyancy
force on an individual cylinder is given by:
Buoyancy Force = . g . WettedVolume
where WettedVolume is the volume of that part of the cylinder that is below the water surface. This force is applied
vertically upwards at the centroid of that wetted volume.
Note: If added mass and damping of a stacked buoy is specified by Values for Each Cylinder then the
instantaneous water surface is used for this buoyancy calculation. But if the added mass and
damping is specified by RAOs and Matrices for Buoy then the (horizontal) mean water surface is
used; this excludes wave buoyancy effects, which are assumed to be included in the RAOs.
Hydrodynamic Loads
In general, the hydrodynamic loads are calculated using Morison's equation with additional components as
discussed below. The exception to this is if the added mass and damping effects on a spar buoy are specified by
giving wave load RAOs and added mass and damping matrices.
For a lumped buoy the hydrodynamic loads on the buoy are calculated and applied at the buoy centre of volume.
These loads are scaled by the buoy Proportion Wet and applied at the buoy centre of volume. For details see
Lumped Buoy Theory: Added Mass, Damping and Drag.
For a spar buoy or towed fish the calculation of hydrodynamic loads depends on the form of added mass and
damping chosen.
- If the added mass and damping are specified by Values for each cylinder, then all the hydrodynamic loads are
calculated and applied separately on each cylinder. The hydrodynamic load on a cylinder is applied at the
centroid of wetted volume of the cylinder and is scaled by the Proportion Wet of the cylinder. The water surface
is assumed to be the tangent plane to the instantaneous wave surface directly above the centre of the cylinder;
this therefore allows for the buoyancy variation due to the wave.
- If the added mass and damping are specified by RAOs and matrices, then the wave loads, added mass and
damping are calculated for the whole buoy, using the specified RAOs and matrices, and they are applied at the
Theory, 6D Buoy Theory
w

184
specified RAO, Added Mass and Damping Origin. The buoyancy and drag loads are calculated and applied for
each cylinder, as described above, except that in this case the buoyancy load is calculated using the (horizontal)
mean water surface instead of the instantaneous wave surface. The effect of this is to exclude the wave
contribution to buoyancy load, which is assumed to be included in the specified wave load RAOs.
For details see Spar Buoy and Towed Fish Theory: Added Mass and Damping and Spar Buoy and Towed Fish Theory:
Drag.
Hydrodynamic Damping (linear)
You can apply additional damping forces and moments that are directly proportional to the fluid velocity and
angular velocity relative to the buoy. See Lumped Buoy Damping and Spar Buoy and Towed Fish: Added Mass and
Damping.
The main use of these terms is to represent wave radiation damping for surface buoys. Values may be obtained
theoretically from a 3D diffraction model of the body or, more commonly, from empirical results such as a roll decay
test.
Hydrodynamic Moments
Rotation of the body relative to the fluid generates hydrodynamic moments which are analogous to the
hydrodynamic forces given by Morison's equation. OrcaFlex includes facilities for calculating these moments.
For Lumped Buoys, rotational hydrodynamic properties are included for damping, drag and added inertia
components. For Spar Buoys, drag moment data only are included.
In all cases, the fluid moments are calculated by reference to the local angular velocity and acceleration of the fluid,
defined as the angular velocity and acceleration of the local water isobar. The resulting moments are correct for
rotational motions of the body itself, and give a good representation of moments due to waves where the moments
derive from vertical-facing areas, e.g. discus buoys. However, the formulation gives a poor representation of wave-
induced moments which derive from horizontally-facing areas. The difficulty arises because there is no unique
definition of fluid angular velocity and angular acceleration at a point.
If you are in any doubt as to the correctness of the model, then we recommend setting the moment terms to zero.
Hydrodynamic moments will then be omitted completely for a Lumped Buoy. For a Spar Buoy represented by
several cylindrical sections, moments will be generated automatically as a result of the distribution of hydrodynamic
forces along the buoy axis.
Estimation of Hydrodynamic Properties
See technical note Buoy Hydrodynamics.
6.13.2 Lumped Buoy Added Mass, Damping and Drag
Added Mass and Inertia
Specified by diagonal values
The buoy inertia for translational motion is increased, for each local axis direction, by:
Added Mass = PW . Ca . HydroMass
where HydroMass and Ca are the reference hydrodynamic mass and added mass coefficient for translations in that
direction.
The buoy inertia for rotational motion is increased, for each local axis direction, by:
Added Inertia = PW . Ca . HydroInertia
where HydroInertia and Ca are the reference hydrodynamic inertia and added mass coefficient for rotations about
that direction.
Specified by full matrices
The buoy inertia, considered with respect to local axes, is increased by:
Added Mass = PW . AM
where AM is the full 6x6 added mass matrix.
w
Theory, 6D Buoy Theory
185
Fluid Inertia Loads
Specified by diagonal values
The fluid inertia force applied in each local axis direction is given by:
Force = PW . Cm . HydroMass . A
where HydroMass and Cm are the reference hydrodynamic mass and Cm coefficient for that direction, and A is the
component, in that direction, of the local water particle acceleration relative to the earth.
The fluid inertia moment applied about each local axis direction is given by:
Moment = PW . Cm . HydroInertia . B
where HydroInertia and Cm are the reference inertia and Cm coefficient for rotation about that direction, and B is
the component, in that direction, of the rotational acceleration of the local water isobar relative to the earth.
Specified by full matrices
The fluid inertia load applied, considered with respect to local axes, is given by the matrix equation:
Load = PW . IM . af
where
Load is the vector [fx, fy, fz, mx, my, mz]
T
where fx, fy, fz, mx, my and mz are the components of force and
moment with respect to local axes,
IM is the full 6x6 fluid inertia matrix,
af is the vector of fluid acceleration components [Ax, Ay, Az, Bx, By, Bz]
T
,
Ax, Ay and Az are the components of the local water particle acceleration relative to the earth with respect to
local axes,
Bx, By and Bz are the components of the rotational acceleration of the local water isobar relative to the earth
with respect to local axes.
Damping
The damping force applied in each local axis direction is given by:
Force = PW . UnitDampingForce . Vr
where UnitDampingForce is the Unit Force for that direction and Vr is the component, in that direction, of the water
velocity relative to the buoy.
Similarly, the damping moment applied about each local axis direction is given by:
Moment = PW . UnitDampingMoment . Wr
where UnitDampingMoment is the Unit Moment for rotation about that direction and Wr is the component in that
direction, of the angular velocity of the local water isobar relative to the buoy.
Drag
The drag force applied in each local axis direction is given by:
Force = PW...Cd.A.Vr.|Vr|
where A and Cd are the Drag Area and Drag Coefficient for that direction and Vr is the component, in that direction,
of the water velocity relative to the buoy.
The drag moment applied about each local axis direction is given by:
Moment = PW...Cd.AM.Wr.|Wr|
where AM and Cd are the Moment of Area and drag coefficient for rotation about that axis and Wr is the component,
in that direction, of the angular velocity of the local water isobar relative to the buoy.
6.13.3 Spar Buoy and Towed Fish Added Mass and Damping
The first order hydrodynamic loads on a spar buoy or towed fish can be modelled in a choice of two ways: either by
values for each cylinder or by wave force RAOs and matrices for the whole buoy.
Theory, 6D Buoy Theory
w

186
Loads specified by Values for Each Cylinder
Added Mass
The added mass force and moment applied to a cylinder have the following components relative to buoy axes Bxyz:
x Force = DMn . Ax + Can . DMn . Arx
y Force = DMn . Ay + Can . DMn . Ary
z Force = DMa . Az + Caa . DMa . Arz
x Moment = DIn . Wx + PW. AIn . Wrx
y Moment = DIn . Wy + PW. AIn . Wry
z Moment = DIa . Wz + PW. AIa . Wrz
where
The first term in these equations is known as the Froude Krylov force or moment, and the second term is the
added mass force or moment
DMn and DMa are the instantaneous displaced mass for flow normal and axial to the cylinder, respectively
DIn and DIa are the normal and axial moments of inertia of the instantaneous displaced mass of the cylinder
Can and Caa are the normal and axial added mass coefficients specified by the user
PW is the proportion wet for this cylinder
AIn and AIa are the normal and axial added moments of inertia specified by the user
Ax, Ay, Az are the components (in buoy axes directions) of the local water particle acceleration relative to
global axes
Arx, Ary, Arz are the components (in buoy axes directions) of the local water particle acceleration relative to
the buoy
Wx, Wy, Wz are the components (in buoy axes directions) of the angular acceleration of the local water
isobar relative to global axes
Wrx, Wry, Wrz are the components (in buoy axes directions) of the angular acceleration of the local water
isobar relative to the buoy.
Note: If the cylinder inner diameter is zero then DMn and DMa are both simply the instantaneous
displaced mass of the wetted part of the cylinder. But if the cylinder is hollow then DMn is taken to
be the instantaneous displaced mass of the wetted cylinder and contents, whereas DMa is taken to
be the instantaneous displaced mass of the wetted cylinder annulus only, excluding the
displacement of the contents. Similarly if the cylinder is hollow then DIn includes the normal
moment of inertia of the contents, but DIa excludes the axial moment of inertia of the contents.
These values are based on the assumption that the contents are free to translate and rotate axially
relative to the cylinder, but not free to move normal to the cylinder axis.
Note: If the added inertia (AIn or AIa) is zero, then the Froude Krylov moment term is omitted for that
direction, so no moment is applied about that direction. This does not apply to the Froude Krylov
force terms - they are still applied even if the added mass coefficient for that direction is zero.
Damping Forces and Moments
The components, relative to buoy axes, of the damping force and moment applied to a cylinder are given by:
x Damping Force = PW . UDFn . Vrx
y Damping Force = PW . UDFn . Vry
z Damping Force = PW . UDFa . Vrz
x Damping Moment = PW . UDMn . Wrx
y Damping Moment = PW . UDMn . Wry
z Damping Moment = PW . UDMa . Wrz
where
w
Theory, 6D Buoy Theory
187
PW is the proportion wet for this cylinder
UDFn and UDFa are the Unit Damping Forces for the normal and axial directions, respectively
UDMn and UDMa are the Unit Damping Moments for the normal and axial directions, respectively
Vrx, Vry and Vrz are the components (in local buoy axes directions) of the water velocity relative to the buoy
Wrx, Wry and Wrz are the components (in local buoy axes directions) of the angular velocity of the local
water isobar, relative to the buoy.
Loads specified by RAOs and Matrices
Note: This option is only available for Spar Buoys.
With this option the added mass and damping effects are calculated from the specified wave force and moment
RAOs and added mass and damping matrices. In addition, the buoyancy force is calculated using the mean water
level, rather than the instantaneous water surface. This excludes the wave-related buoyancy effects, since these are
assumed to be accounted for in the loads specified by the RAOs.
Warning: The drag force is also calculated using the mean water level, although (non-linear) drag can't be
completely accounted for in (linear) RAOs.
The RAOs are used to calculate force and moment vectors that are proportional to the amplitude of the wave
component. They are applied at the instantaneous position of the RAO, Added Mass and Damping Origin, but are
specified relative to a frame of reference that has x horizontal in the wave direction, y horizontal and normal to the
wave direction, and z vertically upwards. The surge RAO therefore specifies a force that acts at the RAO, Added Mass
and Damping Origin in the wave direction, the heave RAO specifies a vertical force, and the pitch RAO specifies a
moment acting about the horizontal line normal to the wave direction.
The added mass and damping matrices are also applied at the RAO, Added Mass and Damping Origin. And they are
applied in the buoy axes directions - i.e. the surge added mass is applied in the buoy local x-direction, etc.
The added mass matrix is simply added into the buoy's inertia (also known as the virtual mass matrix).
The damping load is calculated using the following matrix equation:
[Fx,Fy,Fz,Mx,My,Mz]
T
= -D [vx,vy,vz,x,y,z]
T

where
Fx, Fy, Fz, Mx, My and Mz are the components, with respect to local axes, of the resulting damping force and
moment.
D is the damping matrix.
vx, vy, and vz are the components, with respect to local axes, of the buoy velocity at the RAO, Added Mass
and Damping Origin, relative to the current.
x, y and z are the components, with respect to local axes, of the buoy angular velocity, relative to the
current. Since the current has no angular velocity this is the same as the buoy angular velocity relative to the
earth.
Note: The fluid velocity due to waves is excluded here since the damping effects due to waves are
assumed to be included in the RAOs.
6.13.4 Spar Buoy and Towed Fish Drag
The second order hydrodynamic loads on Spar Buoys and Towed Fish are calculated and applied separately for each
cylinder. The loads on each cylinder are calculated as follows. The proportion wet PW, referred to below, is
calculated for each cylinder according to its level of immersion.
Drag Forces
The drag forces are calculated using the "cross-flow" assumption. In the local x and y directions, i.e. normal to the
cylinder axis, the drag forces are given by:
x Drag Force = PW . . . Cdn . An . Vrx . |Vrxy|
y Drag Force = PW . . . Cdn . An . Vry . |Vrxy|
where
Theory, 6D Buoy Theory
w

188
An is the drag area for the normal direction
Cdn is the drag coefficient for the normal direction
Vrx and Vry are the x and y-direction components of the water velocity relative to the buoy
|Vrxy| is the absolute magnitude of the relative velocity in the x-y plane.
And in the z direction, i.e. parallel to the cylinder axis, the drag force is given by:
z Drag Force = PW . . . Cda . Aa . Vrz . |Vrz|
where
Aa is the drag area for the axial direction
Cda is the drag coefficient for the axial direction
Vrz is the z direction component of the water velocity relative to the buoy
|Vrz| is its absolute magnitude.
Drag Moments
Drag moments are also calculated using the cross-flow assumption.
About the local x and y directions the drag moments are given by:
x Moment = PW . . . Cdn . An . Wrx . |Wrxy|
y Moment = PW . . . Cdn . An . Wry . |Wrxy|
where
An is the drag area moment for the normal direction.
Cdn is the drag moment coefficient for the normal direction
Wrx and Wry are the x and y components of the angular velocity of the local water isobar relative to the buoy
|Wrxy| is the absolute magnitude of the component in the xy plane of the angular velocity of the local water
isobar relative to the buoy.
And about the local z direction the drag moment is given by:
z Moment = PW . . . Cda . Aa . Wrz . |Wrz|
where
Aa is the drag area moment for the axial direction.
Cda is the drag moment coefficient specified for the axial direction
Wrz is the z component of the angular velocity of the local water isobar relative to the buoy
|Wrz| is its absolute magnitude.
Drag Area Moments
The drag area moments in the above equations are the rectified 3rd moments of drag area about the axis of rotation.
So drag area moment = Sum(A.|r|
3
) where A is an element of drag area at an (absolute) distance |r| from the axis of
rotation. The modulus |r| arises from the drag term in Morison's equation. The area moment should have
dimensions L
5
. Note that the axial Area Moment is about the cylinder axis, and the normal Area Moment is about the
normal to that axis through the cylinder centre.
We have derived the following results for simple bodies:
- For a rectangle of length L and width W, the 3rd moment of area about the line in the plane of the rectangle and
through its centre in the length direction is (L.W
4
) / 32. And the 3rd moment of area about the line in the plane
of the rectangle and through its centre in the width direction is (W.L
4
) / 32.
- For a circular disc of diameter D, the 3rd moment of area about a line in the plane of the disc and through its
centre = (D
5
) / 60.
- We can use the two results above to calculate reasonable Drag Area Moment values to use for a cylinder in a
spar buoy. Let L be the length of the cylinder and D be the diameter, and first consider the Area Moment for the
Normal direction, i.e. about a line through the cylinder centre and normal to the cylinder axis. If the curved
w
Theory, 6D Buoy Theory
189
surface of the cylinder is exposed to drag then we can account for its contribution to the Area Moment by using
its projection onto the plane made by the line and the cylinder axis. This projected area is a rectangle of length L
and width D and the line crosses it in the width direction, so the contribution to the Area Moment is (D.L
4
) / 32.
If either of the end discs of the cylinder are also exposed to drag then we also need to account for their
contribution to the Area Moment.
Calculation of Sea Angular Velocity
In order to calculate the relative angular velocity, OrcaFlex has to determine a local angular velocity for the water.
This is not defined by standard wave theory, so OrcaFlex uses the angular velocity of the local isobar (at the surface
this is the angular velocity of the water surface). The resulting drag moments due to waves are approximately
correct for a buoy with large horizontal extension - e.g. a discus shape.
For a long vertical SPAR buoy, the calculated pitch/roll drag area moment is actually in the wrong direction. Instead
the buoy should be divided into several cylinders and the required moments are generated by distributing the
hydrodynamic loading between them. The drag area moments for the individual cylinders should be set to zero.
For an object which has significant dimensions both vertically and horizontally, the drag area moments are a mix of
roughly correct and incorrect parts. The problem relates only to drag moments due to waves - moments resulting
from body angular velocity in still water are correctly calculated.
Munk Moment
Slender bodies in near-axial flow experience a destabilising moment called the Munk moment. This emerges from
potential flow and is distinct from (and additional to) any moments associated with viscous drag. It is only well
defined for a fully submerged body.
Newman (1977, page 341) derives the term and points out that it "acts on a non-lifting body in steady translation".
Thwaites (1960, pages 399-401) gives an alternative derivation and provides numerical values for spheroids.
Note that for bluff bodies the flow tends to separate over the afterbody. This has the effect of reducing the Munk
moment to a value less than the potential flow theory would suggest. See Mueller (1968).
The Munk moment effect can be modelled in OrcaFlex by specifying a non-zero Munk moment coefficient for a Spar
Buoy or Towed Fish. OrcaFlex then applies a Munk moment given by:
Munk Moment = Cmm . M . . sin(2) . V
2

where
Cmm is the Munk moment coefficient
M is the mass of water currently displaced. If the buoy is surface-piercing then this allows for the proportion
of the buoy that is in the fluid. However, note that the value of Cmm is ill defined for a partially submerged
body. Moreover, the true effects of breaking surface, for instance planing and slamming, are much more
complex than this and are not modelled.
V is the flow velocity relative to the buoy, at the point on the stack axis that is half way between the ends of
the stack.
is the angle between the relative flow velocity V and the buoy axis.
The moment is applied about the line that is normal to the plane of the buoy axis and the relative flow vector, in the
direction that tries to increase the angle .
6.13.5 Contact Forces
Contact Forces from Interaction with Shapes
Interactions with shapes and the seabed are calculated as if the buoy consists of a series of lumps, one at each
vertex.
Notes: For a lumped buoy you can specify the number and location of the vertices. If you specify no
vertices then the 6D Buoy will not react to contact with the seabed or with any solids.
For a spar buoy or towed fish, the vertices used are the vertices which are automatically created
for the Draw square cylinders drawing option. These vertices are used even if the Draw circular
cylinders option is selected.
Whenever a vertex penetrates a shape, it then experiences a reaction force from the shape given by
Theory, 3D Buoy Theory
w

190
Reaction = KAvd
where K is the Stiffness of the Solid, Av is the contact area (see below) associated with each vertex and d is the depth
of penetration of the vertex into the solid.
Because the vertices are (in general) offset from the buoy origin, this reaction force gives a reaction moment about
the buoy origin.
A damping force is also included - see Shapes Theory for details.
Finally, friction forces can also be included.
Contact area
The total contact area, At, is specified on the buoy data form. The contact area for each vertex, Av, is calculated by
dividing At equally amongst all vertices. If At is set to zero then the buoy experiences no contact forces. If At is set to
'~' then OrcaFlex calculates At using default values based on the buoy geometry as described below.
Lumped Buoy default total contact area
For a Lumped Buoy the default total contact area is given by:
At = Volume / Height
where Volume and Height are as specified on the buoy data form.
Spar Buoy and Towed Fish default total contact area
For Spar Buoys and Towed Fish the default total contact area is given by:
At = max(Aaxial, Alateral)
where
Aaxial is the maximum cylinder cross-sectional area.
Alateral is the sum, over all cylinders, of the projected lateral area = cylinder diameter cylinder length.
Contact Forces from Interaction with Seabed
Interaction with the seabed is treated in exactly the same way as with shapes. The seabed reacts to penetration by
the vertices of the buoy and applies a reaction force at the vertex, giving a moment about the buoy origin. See
Seabed Theory for details.
6.14 3D BUOY THEORY
The effects included for a 3D Buoy are weight, buoyancy, drag, added mass and reactions from shapes. All of the
fluid related effects are calculated allowing for what proportion of the buoy is currently immersed in the sea. This is
done by calculating a proportion wet, PW, and then scaling all of the fluid related forces by this proportion. In the
following equations, the water density is denoted by .
The forces applied are as follows.
Weight and Buoyancy
Weight = Mass . g vertically downwards
Buoyancy = . g . PW . Volume vertically upwards.
Drag
Drag forces are calculated separately for each of the global X, Y and Z directions. For the X direction (and similarly
for the Y and Z directions) the drag force applied is
Drag Force = PW . . . CdX . AX . VrX . |Vr|
where
CdX and AX are the Drag Coefficient and Drag Area, respectively, for the X direction
Vr is the velocity vector of the fluid relative to the buoy and |Vr| is its absolute magnitude
VrX is the component of Vr in the X direction.
w
Theory, Winch Theory
191
Fluid Inertia Effects
Fluid acceleration force = (1+Ca) . . PW . Volume . A
in each of the global axes directions, where
Ca is the Added Mass Coefficient for that direction
A is the acceleration of the fluid in that direction.
This force is often considered as being made up of two parts:
1. The Froude-Krylov force = . PW . Volume . A
2. The added inertia force = Ca . . PW . Volume . A.
In addition, the inertia of the buoy in each of the global axes directions is increased by:
Added mass = . Ca . PW . Volume
where
Ca is the Added Mass Coefficient for that direction.
Contact Forces
Finally, 3D Buoys are also subjected to a reaction force from the seabed and any elastic solid with which they come
into contact, given by:
Reaction = KAd
where
K is the Stiffness of the seabed or elastic solid
A is the contact area
d is the depth of penetration of the buoy origin B.
In addition to this reaction force, 3D Buoys receive a contact damping force. For details see Seabed Theory and
Solids Theory.
Finally, friction forces can also be included.
6.15 WINCH THEORY
Static Analysis
If the Statics winch control mode is set to Specified Length then for the static analysis the unstretched length of wire
paid out, L0, is set to the Value specified, the wire tension t is then set to:
t = (L-L0) . (Wire Stiffness)/L0
(1)
where
L is the total length of the winch wire path,
Wire Stiffness is specified in the data,
the winch drive force f is set to equal t.
Alternatively, if the Statics winch control mode is set to Specified Tension then for the static analysis the winch
drive force f and the wire tension t are both set to the given Value, and the unstretched length paid out, L0, is then set
to match this wire tension according to equation (1) above.
Dynamic Analysis
If Specified Payout is specified (length control mode) for a stage of the simulation, then the unstretched length of
winch wire paid out, L0, is steadily increased or decreased during that stage so that the total change during the stage
is the Value specified. Positive Value means pay out, negative Value means haul in.
The winch wire tension t (which is applied to each point on the wire) is then given by
t = [(L-L0) + (Wire Damping).(dL/dt - dL0/dt)]. (Wire Stiffness) / L0
(2)
where
Theory, Winch Theory
w

192
L is the total length of the winch wire path
Wire Damping and Wire Stiffness are as specified in the data.
Note: The winch wire is not allowed to go into compression, so if the value for t given by equation (2) is
negative then the winch wire is considered to have gone slack and t is set to zero.
If Specified Tension mode is specified for a stage of the simulation, the Value specified in the data is used as a
target nominal constant tension that the winch drive attempts to achieve.
For Simple winches the winch drive is always assumed to achieve the target tension, so the Value specified is used
for the actual winch wire tension.
For Detailed winches the winch drive tries to achieve the target tension by applying a drive force to one side of the
winch Inertia, opposing the wire tension being applied to the other side. The drive force f applied is then given by:
if dL0/dt < 0: f(V) = f(0) - Deadband + A.V - C.V
2

if dL0/dt = 0: f(V) = f(0)
if dL0/dt > 0: f(V) = f(0) + Deadband + B.V + D.V
2

(3)
where
V = rate of payout = dL0/dt
Deadband = the winch drive deadband data item
A, B = the winch drive damping term data items
C, D = the winch drive drag term data items.
f(0) = Value + Stiffness.(L0 - L00)
Value = the nominal constant tension Value given
Stiffness = the winch drive stiffness data item
L00 = original value of L0 at the start of the simulation (set by the static analysis)
Drive Force f
Payout Speed V
(-ve = hauling in)
Deadband
Deadband
0
f(V) = f(0) - Deadband
+ A.V - C.V
2
f(V) = f(0) + Deadband
+ B.V + D.V
2
f(0) = Nominal Tension
+ Stiffness

(Payout since
simulation started)

Figure: Force Control Mode for Detailed Winches
If the winch Inertia M is non-zero, then the winch wire tension is set as in equation (2) above and the winch inertia
reacts by paying out or hauling in wire according to Newton's law:
Md
2
L0/dt
2
= t - f
so the wire tension therefore tends towards the winch drive force and is hence controlled by the given Value.
w
Theory, Shape Theory
193
If the winch inertia is set to zero, then the winch is assumed to be instantly responsive so that
f = t at all times
(4)
Given the current value of L0, the common value of f and t is then found by solving the simultaneous equations (2),
(3) and (4) for the payout rate dL0/dt. The unstretched length of winch wire out, L0, is then altered at the calculated
rate dL0/dt as the stage progresses.
Note: If the winch inertia is set to zero then at least one of the damping and drag terms A, B, C, D should
be non-zero, since otherwise the simultaneous equations (2), (3) and (4) may have no solution. A
warning is given if this is attempted.
6.16 SHAPE THEORY
Elastic Solids
The reaction force on an object penetrating an elastic solid is in the direction of the outward normal of the nearest
surface of the shape with magnitude equal to K.A.d where
K = stiffness of the material,
A = contact area,
d = depth of penetration.
Also there is a damping force D, in the same direction, given by:
D = 2(MKA)
1/2
Vn
where
is percentage of critical damping / 100,
M is the mass of the object,
Vn is the normal component of object velocity.
The damping force is only applied when the object is travelling into the shape (i.e. when Vn is positive).
For details of the way the contact area is calculated, see: Line Interaction with Seabed and Solids, 3D Buoy Theory
and 6D Buoy Theory.
Care is needed when using elastic solids - some of the issues involved are listed below:
- Elastic solids are only taken into account in the static analysis for those lines with the Full Statics calculation.
- Elastic solids are intended only for modelling the overall limitation on movement that a physical barrier
presents; they are not intended to model an object's interaction with the barrier in detail. For example the
calculation of the contact area and penetration depth are very simplistic and do not allow for the detailed
geometric shape of the object. The value given for Stiffness is therefore not normally important, providing it is
high enough to keep penetration small. On the other hand, although the actual stiffness of real barriers is usually
very high, the Stiffness should not be set too high since this can introduce very short natural periods which in
turn require very short simulation time steps.
- Lines only interact with elastic solids by their nodes coming into contact, so elastic solids that are smaller than
the segment length can "slip" between adjacent nodes. The segment length in a line should be therefore be small
compared with the dimensions of any elastic solid with which the line may make contact.
Trapped Water
Inside a trapped water shape the fluid motion is modified as follows:
- The fluid translational velocity and acceleration are calculated on the assumption that the trapped water moves
and rotates with the shape. So if the trapped water shape is Fixed or Anchored then no fluid motion occurs
inside the shape. But if the shape is connected to a moving vessel, for example, then the trapped water is
assumed to move and rotate with the vessel.
- The fluid angular velocity and acceleration of the local water isobar are both taken to be zero. (These angular
motions are only used for calculating moments on 6D buoys.)
Theory, Shape Theory
w

194
Notes: If the shape intersects the water surface then the surface is assumed to pass through the shape
unaltered. Thus a wave in the open sea also appears inside the shape. We make this assumption
because of the difficulty in predicting, for realistic cases, how the surface will behave inside the
trapped water volume.
For example, a moonpool with an open connection at the bottom will suppress most of the wave
and current action. However there will be some flow in and out of the moonpool, depending on the
size of the opening to the sea, pressure difference effects and the local geometry. The surface
elevation in the moonpool therefore does respond to the wave outside, but it is attenuated to some
extent and lags behind the surface outside.
w
System Modelling - Data and Results, Modelling Introduction
195
7 SYSTEM MODELLING - DATA AND RESULTS
7.1 MODELLING INTRODUCTION
To analyse a marine system using OrcaFlex, you must first build a mathematical model of the real-world system,
using the various modelling facilities provided by OrcaFlex. The model consists of the marine environment to which
the system is subjected, plus a variable number of objects chosen by the user, placed in the environment and
connected together as required. The objects represent the structures being analysed and the environment
determines the current, wave excitation, etc. to which the objects are subjected.
The following types of objects are available in OrcaFlex. (Detailed descriptions of each type of object are given later.)
Vessels
are used to model ships, floating platforms, barges etc. They are rigid bodies whose motions are prescribed
by the user. The motion can be specified in a number of ways: directly by a time history motion data file or
specifying Response Amplitude Operators (RAOs) for each of 6 degrees of freedom (surge, sway, heave, roll,
pitch and yaw), or indirectly by giving first order wave load RAOs or second order wave drift QTFs; or a
combination of the two. They can also be driven around the sea surface, at user specified velocities and
headings, during the course of the simulation.
3D Buoys
are simple point bodies with just 3 degrees of freedom - the translational degrees of freedom (X,Y and Z).
Unlike a vessel, whose response to waves is defined by the data, the motion of a buoy is calculated by
OrcaFlex. 3D buoys are not allowed to rotate and are intended only for modelling objects that are small
enough for rotations to be unimportant.
6D Buoys
are much more sophisticated than 3D buoys - they are rigid bodies with the full 6 degrees of freedom. That
is, OrcaFlex calculates both their translational and rotational motion. Several different types of 6D Buoy are
available, for modelling different sorts of marine object.
Note: Although called buoys, 3D and 6D buoys do not need to be buoyant and so can readily be used to
model any rigid body whose motion you want OrcaFlex to calculate.
Lines
are catenary elements used to represent pipes, flexible hoses, cables, mooring lines, etc. Line properties may
vary along the length, for example to allow a buoyant section to be represented. Line ends may be fixed or
free, or attached to other objects such as Vessels or Buoys, and ends can be disconnected in the course of a
simulation.
Each line can also have a number of attachments. These are elements attached to lines at user-specified
locations, and provide a convenient way of modelling items such as floats, clump weights, or drag chains.
Links
are mass-less connections linking two other objects in the model. Two types are available: Tethers are
simple elastic ties, Spring / Dampers are combined (linear or non-linear) spring + damper units.
Winches
are also mass-less connections linking two (or more) objects in the model. The connection is by a winch
wire, which is fed from and controlled by a winch drive mounted on the first object. The winch drive can be
operated in either constant speed mode, in which it pays out or hauls in the winch wire at a user-specified
rate, or else in constant tension mode, in which it applies a user-specified tension to the winch wire.
Shapes
are geometric shapes and two types are available - Solids or Trapped Water. Trapped Water Shapes can be
used to model parts of the sea, such as moonpools, that are shielded from the waves. Solids can be used to
act as physical barriers to restrict the movement of the other objects in the system; they are made of an
elastic material and so apply a reaction force to any object that penetrates them. However, by specifying zero
stiffness, you can also use a solid purely for drawing purposes, for example to see on the 3D view the
position of a piece of equipment.
System Modelling - Data and Results, Data in Time History Files
w

196
Several different elementary shapes (cuboids, planes and cylinders) are available and a number of shapes
may be placed together to build up more complex compound shapes. They may be fixed or attached to other
objects such as Vessels or Buoys.
Of these various object types, the lines, links and winches have the special property that they can be used to connect
together other objects. Assembling the model therefore consists of creating objects and then using the lines, links
and winches to connect the other objects together, as required. See Object Connections for details.
The number of objects in the model is only limited by the memory and other resources available on the computer
being used. Similarly, there are no built-in limits to the number of lines, links or winches that are attached to an
object. As a result very complex systems can be modelled, though of course the more complex the model the longer
the analysis takes. Example files are provided with OrcaFlex.
Computer programs cannot exactly represent every aspect of a real-world system - the data and computation
required would be too great. So when building the model you must decide which are the important features of the
system being analysed, and then set up a model that includes those features. The first model of a system might be
quite simple, only including the most important aspects, so that early results and understanding can be gained
quickly. Later, the model can be extended to include more features of the system, thereby giving more accurate
predictions of its behaviour, though at the cost of increased analysis time.
Once the model has been built, OrcaFlex offers three types of analysis:
Modal Analysis
is only available for lines. It calculates and reports the undamped natural modes of a line.
Static analysis
in which OrcaFlex calculates the static equilibrium position of the model; current drag loads can be included
but not waves.
Dynamic analysis
in which OrcaFlex carries out a time simulation of the response of the system to waves, current and a range
of user-defined inputs.
7.2 DATA IN TIME HISTORY FILES
For certain data you can use time history files to specify time-varying values. This is available for wave elevation,
wind speed and vessel motion, and allows you full control over how the variable changes with time.
If you want to specify time-varying data for more than one object (e.g. for both the wave and wind, or for the wave
and a vessel) then you can either put all the data in one file (using multiple columns in a single table) or you can use
separate time history files for the different objects.
Time history file data is specified on a multi-page control:

Figure: Time history data
w
System Modelling - Data and Results, Data in Time History Files
197
Source page
The Input File is the name of the time history input file that contains the data. You can either specify the full path or
a relative path.
For Vessel time history files you must specify an Interpolation Method. For most purposes we recommend using
Cubic Spline interpolation, since it gives continuity of vessel velocity and acceleration. Cubic Bessel interpolation
typically gives step changes in acceleration at the specified time samples, and Linear interpolation gives zero
acceleration between the times specified and then an infinite acceleration when the velocity changes at a specified
time sample. Such acceleration effects can manifest themselves as steps or spikes in the inertial forces on any
objects attached to the vessel.
The Time Origin gives you control of how the times given in the time history file relate to the times in OrcaFlex. The
time origin is specified relative to the OrcaFlex global time origin, so it specifies the global time that corresponds to
zero time in the time history file. The simulation time origin is also specified relative to global time, so you can
simulate different periods of the time history by adjusting either the time history origin or the simulation time
origin.
So, for example, if the time history file's time origin is set to 100s and the simulation time origin is set to 400s, then a
simulation consisting of 40s of build-up (i.e. simulation time -40 to 0) followed by 200s of simulation (simulation
time 0 to 200) will cover time history time from 260s to 500s. Note that the time history file must contain data to
cover the whole of the simulation.
Note: If you are using more than one time history file (e.g. one for a wave train and one for motion of a
vessel) then they each have their own time origins, which you can use to time shift each time
history independently of the others.
The Minimum time sample interval can be useful to smooth time history data in some situations:
- if the time history values have been truncated to a small number of significant figures, or
- if the sample interval in the file is very small.
If either of these conditions hold (or worse, if both do) then you may find that the interpolated time history values
cause the simulation to contain unrealistic noise.
Using a non-zero minimum time sample interval results in the time history data being sub-sampled at the specified
period. For example if the time history file contained data sampled at 0.01s intervals and the minimum time sample
interval was 0.2s then OrcaFlex would use every 20
th
row of time history data.
This sub-sampling technique has proved to be very effective at smoothing interpolated time histories and so
improving the quality and stability of simulations.
Note: If you do not wish to sub-sample the time history input file then you should use a value of 0.
Data page
You must tell OrcaFlex which columns in the time history file contain the relevant data. This is done on the Data
page using a series of drop down lists. To help with this OrcaFlex displays the time history data in a spreadsheet.
Preview page
The preview page presents graphs of the data contained in the time history file. This can provide a quick check that
the column data has been correctly specified.
Each graph contains two vertical lines to represent the beginning and end of the simulation. The time axis of the
graphs use the raw data contained in the input file. As described above the time history origin and the simulation
time origin can be used to control of how the times given in the time history file relate to the times in OrcaFlex.
These graphs can therefore be used to check that the time origin data items are set correctly.
Note: The values plotted on the graphs are the raw data contained in the time history input file. No
interpolation is applied before plotting the curves, but if you have a large number of data points
(>1000) the data (on the preview graph only) may be subsampled.
Time History File Format
Time History files must conform to the following formatting rules:
System Modelling - Data and Results, Variable Data
w

198
- The file must be a tab-delimited text file; in other words it must be a text file in which the time history data
columns are separated by single tab characters. Files of this format can easily be produced with commercial
spreadsheet programs by using "Save As" and selecting tab-delimited text format.
- The data values must be in standard decimal or scientific form.
- One column must contain the time values and these must be given in ascending order.
- The data must be given in the same units as used in the OrcaFlex model.
- For a wave time history the time values must be equally spaced since a fast Fourier transform is used which
requires equal spacing. But for wind velocity or vessel motion time history files variable time intervals can be
used since the interpolation methods used do not require equal spacing.
The data is assumed to start at the first numeric entry in the time column and blank rows are not allowed once the
data has started. This means that textual information about the file (titles etc.) can precede the data but once the
data begins it cannot be interrupted with any more text.
Note: If you generate your time history text file from a spreadsheet program such as Excel, please note
that the number of significant figures in the text file will depend on the number format of the cells
in the spreadsheet. Before saving the text file, it is therefore important to set the number format to
one that displays all the significant figures, since otherwise the time history text file will lose some
significant figures. In Excel you can get all significant figures by selecting all the cells and then
using the Format Cells command (on the Format menu) to set the number format to scientific with
15 decimal places.
7.3 VARIABLE DATA
Most OrcaFlex data is constant - i.e. its value, y say, is a fixed specified value. But for some numerical data items you
can choose to instead specify variable data. Typically the data item's value y is then specified as being a function of
some other value x, and the actual value y(x) used by OrcaFlex then depends on the value of x at the time. If x varies
during the simulation then y varies accordingly.
As an example consider the drag coefficient of a line. In the real world this isn't a fixed constant value - it depends on
the Reynolds number. For many applications this variation is not significant so a fixed constant drag coefficient is
sufficient. But sometimes the Reynolds number variation is important, so you can then specify the drag coefficient to
be a function of Reynolds number. Then, each time the drag coefficient is needed OrcaFlex will first calculate the
Reynolds number (the x in the above description) and then derive and use the corresponding drag coefficient y(x).
Note that some data items use variable data in a slightly different way. For example the axial stiffness of a line type
is the slope of the tension-strain curve, so in this case constant data specifies dy/dx, rather than y, where y is
tension and x is axial strain. In this context constant means constant slope, i.e. linear, and the constant value you
specify is dy/dx, whereas variable means non-linear and you specify y as a function of x. Cases like this are
documented in the description of each data item.
Using Variable Data
Variable data can only be used for certain data items. These are the numerical data items that have a small down-
arrow button to the right of the data item value. For these you can either specify a fixed constant numerical value in
the usual way. Or you can specify the name of a variable data source, either by typing the name in or by selecting it
using the down-arrow button. The named data source must already have been defined - see the next section.
Different data items can use the same variable data source much in the same way that different sections of a Line
can use the same Line Type.
Setting up Variable Data Sources
All the variable data sources are specified on the Variable Data form. This form can be opened using the model
browser or using the pop-up menu on any data form.
Each table on the Variable Data form is given a name and the tables are grouped according to the type of data they
contain. For example data for drag coefficients is kept separate from data for axial stiffness.
This structure is indicated by the layout of the form, which is designed to be used from left to right. So first select the
type of data you want, using the tree view in the left hand section of the form.
The centre section of the form then shows how many data sources have already been defined for that selected type
of data, and their names. To add a new table, increment the Number of Data Sources. To edit the name of a data
w
System Modelling - Data and Results, Variable Data
199
source double click the name or select the name and then press F2. To delete a data source select it and press the
DELETE key.
The right hand section of the form is where the data for the data source is entered. What form these data take varies.
The different possibilities are described below.
Tabular Data Sources
These data sources are specified by giving a table of corresponding values (x1,y1), (x2,y2), .., (xn,yn), where the table's
left hand column is the independent variable x and its right hand column is the dependent variable y. The data will
be automatically sorted into order of increasing x when the data is used or when you use the Profile button.
This table defines a function y(x). For intermediate values of x OrcaFlex interpolates. For values of x outside the
range specified OrcaFlex either extrapolates or else truncates. Truncation means that OrcaFlex uses y1 for all x x1
and yn for all x xn (the table already having been sorted so that x1 is the lowest x-value specified and xn is the
highest). The variable data form reports the method of interpolation and whether extrapolation or truncation is
used.
The Profile button displays a graph of the currently selected data. This is useful for data checking purposes. Where
appropriate, log scales are used.
Horizontal Variation Factor Data Sources
These data sources specify a variation along a user-prescribed axis. This axis is defined by the X,Y coordinates of an
origin and an azimuth direction. Together with the axis you also specify a table of values defining the horizontal
variation factor as a function of distance along the axis. This table is specified in the same way as for tabular data
sources.
7.3.1 External Functions
External Function Data Sources are yet another variety of variable data source. These data sources allow data to
be specified by a user-defined function provided in an external DLL. This function is called repeatedly during the
OrcaFlex simulation and is passed the current value of the variable data item. The function must then recalculate
and update the value of the variable data item.
The following data items are required to specify an external function data source:
DLL Name
The file name of the DLL containing the external function. If the full path to the DLL is not specified then the
standard Windows conventions are used when searching for the file. Full details of these conventions are given in
the documentation of the LoadLibrary Windows API function.
Note: When LoadLibrary is called the current directory is set to be the directory containing the latest
OrcaFlex file that you have opened or saved. If there is no such file (because it is a new model which
has not yet been saved) then the current directory is set to be the current directory when the
program started.
Function Name
The name of the external function exported by the external DLL. For details on how to implement external functions
please refer to the OrcaFlex programming interface documentation.
Initial Value
When OrcaFlex calls the external function for the first time it passes this value to the function. The function can use
this value as its starting value if it so chooses. Alternatively it can ignore this value and substitute a different value.
Note: This value is used by OrcaFlex when drawing the model in Reset state.
Time Step
This specifies how frequently the external function is called to update the value of the variable data item. You can
use either the inner time step, the outer time step or a user-specified time step. If you choose a user-specified time
step then you input a target time step and the program uses the nearest whole multiple of the inner time step.
External Function Parameters
The external function facility provides a general purpose method of passing parameters to external functions.
System Modelling - Data and Results, General Data
w

200
For an example of why this is desirable consider an external function which implements a PID controller used to
model the active control system for a heave compensating winch. A PID controller has a number of parameters and
these could be hard coded into the external function.
However, in OrcaFlex you may want to experiment by varying these parameters to see how they affect a simulation.
If the parameters are hard coded then the external function DLL will have to be recompiled each time you
experiment by changing the parameters.
Instead OrcaFlex allows you to specify parameters for the external function as part of the OrcaFlex data. These
parameters are passed to the external function. The parameters are specified as a free form multi-line text field. This
means that the external function has to do some work to decode and interpret the text before it can access the
parameters. However, this also means that there is a great deal of flexibility in the parameter passing mechanism.
Whenever an OrcaFlex object (e.g. a Winch, a 6D Buoy, a Vessel, the Environment etc.) uses an external function then
a page titled External Functions is available on that object's data form. The external function parameters are
specified in the text field contained in this page.
The external function parameters are passed to the external function in the lpObjectParameters member of the
TExternalFunctionInfo data structure. For more details please refer to the OrcaFlex programming interface
documentation.
The External Function Examples illustrate the procedure involved in passing parameters to external functions.
Data which can be controlled by External Functions
The following data items can be controlled by External Functions:
- Vessel and 6D Buoy applied loads.
- Wing orientation angles.
- Winch tension and winch payout rate.
- Current reference speed and reference direction.
- Bend stiffness for Line Types.
External Function Examples
A selection of example external functions are supplied on the OrcaFlex CD. Alternatively these example functions
can be downloaded from www.orcina.com/Support.
7.4 GENERAL DATA
The General Data form gives data that applies to the whole model.
Comments
A free form multi-line text field that can be used to store notes about the model. OrcaFlex does not use this text.
Units Data
This may be SI, US or User Defined (multiple choice). Units are defined for length, mass, force, time and
temperature.
Selecting SI gives length in metres, mass in tonnes, force in kN, time in seconds and temperature in Celsius. Selecting
US gives length in feet, mass in kips, force in kips, time in seconds and temperature in Fahrenheit.
If neither of these systems meets your requirements then select User Defined. You may then select individually
from the length, mass, force, time and temperature units on offer and in addition you can specify the value of g
(gravitational acceleration).
If the units are changed, then OrcaFlex converts all the data in the model into the new units.
Non-Inertial Units Systems
For any given length, force and time units there is a corresponding inertial mass unit, which is the mass that would
be accelerated at 1 unit of acceleration when one unit of force was applied. For example in the US units system the
unit of acceleration is 1 ft/s
2
and the unit of force is 1 kip force, so the inertial mass unit is 1 'kiloslug' (= 1000 slugs
= approximately 32000 pounds mass), since a 1 kip force applied to a 1000 slug mass would give an acceleration of
1 ft/s
2
.
w
System Modelling - Data and Results, General Data
201
US units, and many of the possible User Defined units systems, use mass units that are not the inertial mass unit
corresponding to the length, force and time units. When using such a system you should note that the equations in
this manual, as in most text books, are written in a form that assumes the any terms that involve mass units (e.g.
mass, moment of inertia, mass per unit length, density etc.) are expressed in the inertial mass unit, not the 'non-
inertial' mass unit used by the unit system. OrcaFlex automatically allows for this when you use US units or any User
Defined system where the mass unit is not the inertial mass unit.
7.4.1 Statics
Statics Method
OrcaFlex includes two system statics methods: Whole System statics and Separate Buoy and Line statics. They
are functionally equivalent but you will likely find cases which converge with either one of the methods but not the
other.
We recommend that you use the default method of Whole System statics because it is, in general, much faster and
more robust than Separate Buoy and Line statics.
Whole System statics solves the entire system in a single integrated iterative method. The program calculates the
system Jacobian matrix analytically. Conceptually this method is identical to the Full Statics method for Lines, except
that it operates on all objects in the model.
Separate Buoy and Line statics is a hybrid statics 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. While
this method works reasonably well in many cases, it can perform poorly for cases containing large numbers of
Buoys and/or Vessels. This hybrid method uses a perturbation technique to calculate the system Jacobian matrix
which is both slower and less accurate than calculating it analytically.
Note: Whole system statics cannot yet be used with models that use externally calculated bend moments.
This limitation will be removed in a future release of OrcaFlex.
Buoy Degrees of Freedom Included in Static Analysis
Buoys can either be included or excluded from the static analysis. When a buoy is included OrcaFlex calculates the
static equilibrium position of the buoy; when it is excluded OrcaFlex simply places the buoy at the position specified
by the user.
Which buoys are included in the static analysis is determined by the data item "Buoy Degrees of Freedom Included
in Static Analysis" on the General Data form, together with individual settings on each buoy's data form, as described
below:
- A value of None means that OrcaFlex does not find the true static equilibrium position of the buoys in the
model, but instead simply places the buoys at the initial starting position specified in the data.
- A value of X, Y, Z includes all buoys in the static calculation, but excludes rotational degrees of freedom for 6D
Buoys.
- A value of Individually Specified allows you to specify individually on each buoy data form, whether that buoy
should be included in the static equilibrium calculation. For 6D Buoys you can also choose whether the
rotational degrees of freedom are included or excluded.
- This data item should normally be set to All, in which case the static analysis will attempt to find the static
equilibrium position of all the buoys in the model, as well as finding the static equilibrium position of the other
objects.
There are several cases where this data item should be set to None. The first is if you are not using Catenary Statics
or Full Statics for any lines in the model (see Static Analysis). In this case, the line is not in true static equilibrium
and so OrcaFlex cannot find the static equilibrium position of any buoy to which such lines are attached. If any such
lines exist then all the buoys must be excluded from the static analysis by setting this data item to None.
The second case where this item may need to be set to None is if the model is statically indeterminate, for example a
free floating buoy, or if the static analysis fails to converge. The static analysis is an iterative calculation and for
some complex systems this calculation may fail to converge, especially if the initial estimated position given in the
data is far from being an equilibrium position. If this happens you can exclude some or all buoys (or, for 6D buoys,
just the rotational degrees of freedom) from the static analysis; this simplifies the static analysis and should enable
convergence. Although the simulation then starts from a non-equilibrium position, it does allow the simulation to
proceed and the initial non-equilibrium errors will normally be dissipated during the build-up stage of the
System Modelling - Data and Results, General Data
w

202
simulation, provided a reasonable length build-up stage is specified. In fact the simulation can then often be used to
find the true static equilibrium position, by running a simulation with no waves; once it is found, the true static
equilibrium positions of the buoys can then be input as their starting positions for subsequent runs.
Finally, you may specifically want the simulation to start from a non-equilibrium position. One example of this is to
use the simulation to determine the damping properties of the system, by running a simulation with no waves and
starting from a non-equilibrium position.
Starting Velocity
Specifies the velocity of the whole model for the static analysis and for the start of the simulation. It is defined by
giving the speed (i.e. magnitude) and direction.
Normally the starting speed is zero. If a non-zero speed is specified (e.g. for modelling a towed system) then the
static analysis becomes a steady state analysis that finds the steady state equilibrium position in which the whole
model is moving with the specified velocity. The static position is therefore then referred to as a steady state
position, and the calculation of this position allows for any drag loads due to differences between the starting
velocity and the current velocity.
Note: The model will start the simulation from the calculated steady state; i.e. with the specified starting
velocity. So you should normally ensure that each vessel in the model has its prescribed motion for
stage 0 (the build up stage) set to match the specified starting velocity. Otherwise the simulation
will start with a sudden change in vessel velocity, which will cause a "kick" which may take some
time to settle down.
Statics Convergence Parameters
When buoys or vessels are included in the static analysis, their equilibrium positions are calculated using an
iterative algorithm that is controlled by the convergence parameters on the General data form. They do not normally
need to be altered. However if the static calculation fails to converge it is sometimes possible to improve the
behaviour by adjusting the convergence parameters.
Max Iterations
The calculation is abandoned if convergence has not been achieved after this number of steps. For some difficult
cases simply increasing this limit may be enough.
Tolerance
This controls the accuracy of the solution. See 3D Buoy statics accuracies, 6D Buoy statics accuracies and Vessel
statics accuracies.
Min Damping, Max Damping
For some cases it is necessary to control the convergence process by damping down (i.e. reducing) the step taken at
each stage. The program includes an automatic damping system that chooses a suitable damping factor for each
iteration, but the user can set the minimum damping and maximum damping factors that are used.
Normally the default values will suffice but for difficult cases the default values can be altered. For cases that appear
to make the convergence unstable (e.g. giving very bad line positions on the screen) try increasing the Min
Damping factor to a value greater than 1, say values in the range 1 to 10. You can also try increasing the Max
Damping factor, say to values in the range 10 to 100.
Note: Convergence will be slower with larger damping values so you should use the smallest values that
result in statics converging.
Mag. of Std. Error, Mag. of Std. Change
For some cases it may be necessary to reduce one or both of these values from their defaults. Doing so is likely to
slow down the convergence, but it may be necessary in order to achieve convergence!
7.4.2 Dynamics
Simulation Stages
The simulation proceeds in a Number of Stages each of a given Duration. See Figure: Time and Simulation Stages
in Dynamic Analysis.
w
System Modelling - Data and Results, General Data
203
Before the first stage is a Build-Up Period during which the sea conditions are slowly ramped up from zero in order
to avoid sudden transients when starting a simulation. Time during the build up stage is reported by the program as
negative, so that the first stage proper starts at time t=0.
When using regular waves, it is usual to define the whole simulation as a single stage and results are presented on a
cycle-by-cycle basis. In random waves there is no meaningful "wave cycle". By dividing the simulation time into
stages you are free to collect results for specific time periods of interest.
Logging
OrcaFlex stores the results of a simulation by sampling at regular intervals and storing the samples in a temporary
log file. When you save the simulation OrcaFlex writes the data to the simulation file, followed by a copy of the log
file, so that the sampled values can be read back in again at a later date.
You can control the time interval between log samples by setting the Target Sample Interval on the general data
form. The Actual Sample Interval will be the nearest whole multiple of the inner time step. You can obtain more
information about the logging by using the Properties command on the popup menu on the general data form. This
reports the number of log samples that will be taken and the size of the resulting simulation file.
Logging Precision
You can also control the Precision with which samples are logged.
Single precision uses 4 bytes to represent each value and gives about 7 significant figures, which is quite accurate
enough for almost all applications. Double precision uses 8 bytes per value, giving about 16 significant figures but
uses twice as much disk space.
Double precision logging is usually only needed in very particular cases. We therefore recommend that you use
single precision logging unless you see signs of precision problems in the results. The typical signs of precision
problems are that the curvature or bend moment time histories for a line look more like a step function than a
smooth curve. If you see such results then try using double-precision logging to see if precision is the cause.
The typical case where precision problems can occur is where the model contains a pipe or riser that has an
extremely high bend stiffness and which experiences large displacements during the simulation. The reason is that
OrcaFlex logs the positions of each node but in order to save space in the simulation file it does not log the
curvature, bend moment etc. Instead OrcaFlex recalculates results like curvature and bend moment from the node
positions whenever you request these results. When both the bend stiffness and the node displacements are very
large then this calculation can greatly amplify the small steps in node position (8th significant figure) that are
present in a single precision log, giving a bend moment graph that has steps rather than being smooth.
7.4.3 Integration & Time Steps
Integration Method
OrcaFlex implements two complementary integration schemes: Explicit and Implicit. Theoretical details are given
in Dynamic Analysis: Calculation Method.
Explicit Integration
The explicit scheme used by OrcaFlex is forward Euler. Like all explicit schemes this is conditionally stable. In
practice this means that in order to achieve stability the time step must be small compared to the shortest natural
nodal period. By default OrcaFlex will automatically set the time step.
Implicit Integration
For implicit integration OrcaFlex uses the Generalised- integration scheme which is unconditionally stable for
linear systems. Constant and variable time step options are available. OrcaFlex provides two results variables
(Implicit solver iteration count and Implicit solver time step) which can be used to track the performance of the
implicit integration scheme.
Limitations of Implicit Integration
Some of OrcaFlex's features have not yet been adapted for the implicit scheme. Because of this implicit integration
cannot yet be used with models that use any of the following features:
- Vessels with 3 calculated degrees of freedom. Note that vessels with 6 calculated degrees of freedom can be
modelled.
System Modelling - Data and Results, General Data
w

204
- Vessels which use both primary motion of Calculated (6 DOF) and superimposed motion of Displacement RAOs
+ Harmonic Motion.
- Tension-controlled detailed winches with non-zero inertia.
- External functions.
- Time domain VIV models.
Also, note that implicit integration does not (yet) include seabed damping, solid damping or line clash damping. For
cases where the level of such damping might matter you should check implicit integration results against those from
explicit integration to ensure the effect is not significant.
We plan to remove these limitations, where possible, in future releases of OrcaFlex.
Advantages and disadvantages of the two integration schemes
The explicit scheme is extremely robust and flexible. Its main drawback is that the stability requirements can result
in very short time steps and correspondingly long computation times. This tends to be most significant for stiff
systems, or for systems with fine segmentation. For such systems the implicit scheme can be faster, sometimes by
orders of magnitude.
It is essential to consider accuracy as well as computation time. For the explicit scheme, if the simulation is stable
then, in our experience, it is rare for the results to be inaccurate. We recommend that you conduct time step
sensitivity studies to confirm this.
Implicit schemes, on the other hand, can quite easily achieve stability and yet produce inaccurate results. For rapidly
varying physical phenomena (e.g. snatch loads, impact, sudden line on line clashing etc.) results accuracy is more
likely to be an issue. We recommend that time step sensitivity studies are carried out to ensure accuracy of results.
Comparisons with the explicit scheme are particularly useful for this purpose.
7.4.4 Explicit Integration
InnerTime Step, Outer Time Step
For efficiency of computation, OrcaFlex uses 2 integration time steps in the dynamic simulation: an inner time step
and a larger outer time step. Most calculations during the simulation are done every inner time step, but some
parameters (the more slowly-varying values such as wave particle motion and most hydrodynamic and
aerodynamic forces) are only recalculated every outer time step. This reduces the calculations needed and so
increases the speed of simulation.
The usual effect of setting one of the time steps too large is that the simulation becomes unstable, in the sense that
very large and rapidly increasing oscillations develop, usually very near the start of the simulation. OrcaFlex detects
and reports most such instabilities; the time steps can then be reduced and the simulation retried. However, it is
generally worth repeating important simulations with smaller step sizes to ensure that no significant loss of
accuracy has occurred.
Note: High values of Seabed stiffness may shorten the natural period of parts of the system lying on it.
This in turn leads to shorter inner time steps being required. Beware that the effects of seabed
stiffness will not be accounted for if touchdown does not occur until dynamics are run.
Recommendations for setting time steps
Both time steps must be short enough to give stable and accurate simulation. Experience indicates that the inner
step should not exceed 1/10th to 1/20th of the shortest natural nodal period of motion for any degree of freedom in
the model. The shortest natural nodal period is reported in the Full Results for statics.
The outer step can usually be set to 10 times the inner time step; this gives a good saving in computing time without
risking instability. In addition, the outer time step should generally not be more than 1/40th of the wave period (or
1/40th of the zero crossing period for a wave spectrum). If you are using a Wake Oscillator VIV model then we
recommend that the outer time step is no more than 1/200th of the minimum Wake Oscillator Strouhal Period.
Always use recommended time steps
OrcaFlex helps you set the simulation time steps using the above criteria. There are 2 modes of operation:
If Always use recommended time steps is checked (the default setting) then OrcaFlex will calculate recommended
time steps and use these values directly. This means that any values that you specify will be overwritten.
w
System Modelling - Data and Results, General Data
205
The main advantage of using this option comes during the design phase. If you make changes to the model's
properties which alter the shortest natural nodal period then OrcaFlex automatically modifies the time steps
accordingly. This is particularly useful when you make a change that allows the use of longer time steps. When not
using this option it is all too easy to forget to lengthen the time steps and suffer unnecessarily long simulation run
times.
The other significant benefit of this mode of operation comes when preparing a large number of similar simulations
using batch script methods. Suppose that the different models involved have differing shortest natural nodal
periods. The Always use recommended time steps option allows you to use appropriate time steps for each
individual model without having to set them manually.
Alternatively, if Always use recommended time steps is not checked then OrcaFlex first of all calculates the
recommended time steps. If these are shorter than the values specified on the General Data form then OrcaFlex
issues a warning and gives you the option of using the recommended values. You are free to disregard the warnings
if desired, but if either time step (though especially the inner step size) is set too large there is danger of instability
or inaccuracy in the simulation.
The main situation where this mode of operation is to be preferred is when OrcaFlex recommended time steps are
too long and lead to an unstable simulation. Sometimes the only solution is to set the time steps manually and this
option gives you that flexibility.
Recommended time step settings
Inner time step (fraction of shortest natural period)
Our experience is that for most cases the inner time step can safely be set to 1/10th of the shortest natural nodal
period. However, for some models you may find you need to use a shorter time step to achieve a stable simulation.
By changing this data item you can control what fraction of the shortest natural nodal period OrcaFlex uses to
calculate the recommended inner time step. The default value is 10, which equates to a recommended inner time
step of 1/10th of the shortest natural nodal period. A value of 20 would give a recommended inner time step of
1/20th of the shortest natural nodal period, and so on.
Outer time step (multiple of inner time step)
The recommended outer time step will be no greater than this value times the inner time step.
Outer time step (fraction of wave period or Tz)
The recommended outer time step will be no greater than T divided by this value, where T is either the wave period
(for regular waves) or Tz (for random waves).
Outer time step (fraction of Wake Oscillator Strouhal period)
This data item is only available if you are using a Wake Oscillator VIV model. The recommended outer time step will
be no greater than the minimum Wake Oscillator Strouhal Period divided by this value.
7.4.5 Implicit Integration
Implicit Integration Parameters
Use variable time step
For the implicit solver OrcaFlex offers both constant and variable time step algorithms.
The default is to use a constant time step and in general this is to be preferred. Variable time step schemes can
introduce high frequency noise into a system which in turn can lead to inaccurate results, for example noisy time
histories, non-physical spikes in results etc. Note that this is a feature of all variable time step algorithms. For the
majority of systems no problems arise when using a variable time step. However, if you are using variable time steps
then we do recommend that you check the quality of your results.
The variable time step algorithm chooses the time step based on the number of iterations used for previous time
steps. If a large number of iterations were required for previous time steps then the time step is reduced.
Conversely, if a small number of iterations were required then the time step is increased. The results variables
Implicit solver iteration count and Implicit solver time step can be used to track the performance of the variable
time step algorithm.
System Modelling - Data and Results, General Data
w

206
Time step / Maximum time step
If you are using a constant time step then this data item determines that time step. OrcaFlex has a default value of
0.1s. However, different systems will require shorter time steps and indeed some systems can give perfectly
accurate answers with longer time steps. If you wish to optimise run times then you may need to experiment with
different time step values.
If you are using a variable time step then this data item limits the time step used by OrcaFlex and it will never
exceed this value.
Warning: Implicit solvers can produce inaccurate results, even for stable simulations, if the time step is
chosen to be too large. Because of this we strongly recommend that you carry out sensitivity
studies on your time step to ensure accuracy. A very useful additional technique is to compare
results from the implicit solver and the explicit solver.
Maximum number of iterations
The implicit integration scheme uses an iterative method to solve the dynamic equilibrium equations. The
calculation is abandoned if convergence has not been achieved after this number of iterations.
If you are using a variable time step then this results in the time step being reduced rather than the simulation being
aborted. Accordingly we recommend that a relatively small value is used, we recommend using the default value of
20. This allows OrcaFlex to abandon the current iteration quite early and try again with a shorter time step.
Conversely if you are using a constant time step then the simulation is aborted if convergence cannot be achieved
inside this number of iterations. Because of this we recommend using a larger value than for variable time steps.
The default value of 100 is usually a good choice.
Tolerance
A non-dimensional value which controls the accuracy of the solution. Increasing this value can result in reduced
computation time since fewer iterations are needed to solve the dynamic equilibrium equations. However, doing so
may also result in inaccurate results.
Notes: We recommend that you use the default tolerance value. Should you choose to increase it then we
strongly recommend that you perform sensitivity studies to confirm the accuracy of your results.
For systems where the only responses are extremely slowly varying (e.g. drift motions, Spar VIM)
you might need to use a smaller tolerance than the default value to obtain accurate results.
7.4.6 Numerical Damping
Line Target Damping
Finite element models may contain spurious high frequency response, a feature inherent in the finite element
method. Line Target Damping specifies damping whose effect is usually only to damp down this high frequency
noise. The data specifies the % critical damping level that will be achieved for oscillations at the shortest natural
period of each node. These oscillation periods are typically very short and depend on the segment length and
stiffness values of the line section involved.
The % critical damping generated for longer oscillation periods is inversely proportional to the period, and for
typical response periods (usually much longer) the damping level is usually insignificant. To achieve a significant
level of damping at wave period usually requires that a very high Line Target Damping data value to be calculated
and specified, and this often also requires shorter time steps and so longer simulations. Because of this we
recommend that you use Rayleigh Damping to model the effects of structural damping.
The target damping can be specified independently for tension, bending and torsion. Within broad limits, this
damping has little influence on the results of a simulation unless the system is subject to very rapid variations in
tension or bending, for example when snatch loads occur. A value between 5% and 50% of target damping is usually
assumed. For details on the use of this data, see the theory documentation for tension, bending and torsion.
Note: This data is only available when using the explicit integration scheme. The implicit integration
scheme has built-in numerical damping.
w
System Modelling - Data and Results, General Data
207
7.4.7 Response Calculation
Simulation Period used for Response Calculations
These data items determine the period of the simulation to be used for the Spectral Response Analysis.
This period is specified by giving From and Tosimulation times. A value of '~' for the From time is interpreted as
simulation time 0. A value of '~' for the To time is taken to mean the simulation time at the end of the simulation.
These are the default values and in most cases are the values which you should use.
Note: These data items are only available when you have selected the Response Calculation wave type.
7.4.8 Properties Report
The General Data properties report is available from the popup-menu on the data form. It reports the following:
Simulation duration including build-up
The sum of the stage durations.
Target log sample interval, Actual log sample interval, Total number of log samples
Target log sample interval is the data item specified on the data form. Actual Sample Interval is the nearest whole
multiple of the inner time step. Total number of log samples equals Simulation duration including build-up / Actual
log sample interval
Log sample frequency
This equals 1 / Actual log sample interval.
Log samples per wave cycle
This is only available when the Wave Data specifies a single regular wave train. It equals Wave Period / Actual log
sample interval.
Estimated simulation file size
An estimate of the simulation file size. For certain models the estimate may be inaccurate. In particular the size of
simulation files for models using vortex tracking and which log vortices are difficult to estimate. This is because the
number of vortices is variable and depends on the simulation.
Log file location(s)
This reports the location of any log files used by an OrcaFlex simulation. Small log files are stored in memory to
improve performance and larger files are stored in your machine's temporary directory.
7.4.9 Drawing
Pen
The pen used to draw the global axes, the view axes, the scale bar and the compass in 3D Views.
North direction
If this direction is defined then a compass is drawn on the 3D View. The compass is only drawn for plan views.
The direction is an azimuth direction. So a value of 0 is the positive X direction, a value of 90 is the positive Y
direction etc.
7.4.10 Results
For details on how to select results variables see Selecting Variables.
The available variables are:
Time
The simulation time.
Implicit solver iteration count
The number of iterations used by the implicit integration scheme to solve the dynamic equilibrium equations.
System Modelling - Data and Results, Environment
w

208
Implicit solver time step
The time step used by the implicit integration scheme. This is most useful when you are using a variable time step.
7.5 ENVIRONMENT
The environment defines the conditions to which the objects in the model are subjected; it consists of the sea,
current, waves and seabed.
Wave Direction
G
Still water
surface
Z
Y
X
Global Axes
Seabed Origin
Datum Current
Direction
Seabed Direction
of Slope
Surface
Z-level
Water
Depth

Figure: Environment
As shown above, the environment is defined relative to the global axes. So for example the seabed and the current
and wave directions are specified relative to the global axes.
7.5.1 Sea Data
Sea Surface Z
Specifies the global Z coordinate of the mean (or still) water level.
Kinematic Viscosity
This data is used to calculate Reynolds number. The viscosity can either be a constant or vary with temperature. In
the latter case the user can either input their own table of viscosity variation against temperature, or else use one of
the tables supplied in the OrcaFlex default data.
The tables supplied in the OrcaFlex default data are for 0% (freshwater) and 3.5% salinity, as given on page 337 of
the book Principles of Naval Architecture (PNA). For other salinity values that book recommends using interpolation
between the freshwater and 3.5% salinity tables.
Temperature
The temperature of the water can either be constant or vary with depth below the mean water level.
The temperature can affect the kinematic viscosity (if that is specified as varying with temperature), which in turn
affects the Reynolds number. This, in turn, can affect the drag and lift coefficients used for a line.
Reynolds number calculation
Reynolds number, Re, is a measure of the flow regime defined as
Re = VL/
where V and L are velocity and length parameters chosen to characterise the flow, and is the kinematic viscosity of
the fluid. Different values of Re result from different selections of characteristic velocity and length.
w
System Modelling - Data and Results, Environment
209
OrcaFlex calculates Reynolds number in order to calculate drag and lift coefficients for lines that are specified as
varying with Reynolds number. Accordingly the characteristic velocity is based on the relative flow velocity at a
node, Vr = Vfluid - Vnode and the characteristic length is always related to the normal drag / lift diameter of the node, D.
OrcaFlex offers the following options for characteristic velocity and length:
- Nominal Re, Renom, is defined by setting V = |Vr| and L = D. That is Renom = |Vr|D/.
- Cross Flow Re, Recross, is defined by setting V = |Vn| and L = D where Vn is the component of Vr normal to the
line. If we define to be the angle between the relative flow direction and the normal to the line then can write
Recross = |Vr|Dcos()/ since |Vn| = |Vr|cos().
- Flow Direction Re, Reflow, is defined by setting V = |Vr| and L = D/cos(), the length of the line cross section in
the relative flow direction. This gives Reflow = |Vr|D/cos().
These can all be related by the equation Recross/cos() = Renom = Reflowcos(), from which it follows that Recross
Renom Reflow.
Reynolds number is available as a line results variable.
Notes: Which method you select for calculating Reynolds number is in many ways arbitrary. The key
factor is that the method chosen matches the data source used for the variable drag and lift
coefficient data. For example, ESDU 80025 provides curves relating drag and lift coefficients to
Reflow. Different data sources may make different choices.
Older versions of OrcaFlex did not allow the user to specify the Reynolds number calculation
method and implicitly used Cross Flow Re.
7.5.2 Sea Density Data
Sea Density
The sea density can be constant at all positions in the sea or it can vary with depth and/or horizontal position.
By default the sea density is constant. This is the most common value to use, since in most models the effects of
density variation are not significant. For some systems, however, density variation is important because it causes
buoyancy variation.
Note: Density variation only affects the buoyancy of objects. OrcaFlex does not allow for density
variation when calculating hydrodynamic effects such as drag, added mass, etc. For these effects a
nominal sea density value is used, which is taken to be the density value at the sea density origin.
Vertical Density Variation
Vertical Density Variation specifies whether, and how, the water density varies with depth. The vertical density
variation can be set to Constant, Interpolated or Bulk Modulus.
Constant allows you to specify a single density value that applies at all depths.
Interpolated allows you to specify a density profile as a table giving the density at a series of depth levels. Linear
interpolation is used to obtain the density at intermediate levels, and at levels beyond the ends of the table the
density value at the end of the table is used.
Bulk Modulus specifies that the density varies with depth purely because of the compressibility of the water. You
must specify the water's Surface Density and Bulk Modulus. The water's bulk modulus specifies how a given mass of
water shrinks under pressure, using the same volume formula as for buoys and line types - see Bulk Modulus.
OrcaFlex then derives the density variation with depth on the assumption that the water column has the given bulk
modulus and is at uniform temperature and salinity.
A dry land system can be modelled by using Constant density and setting the density to zero.
Horizontal Density Variation
Density variation with horizontal position can also be modelled. This is specified as a dimensionless multiplicative
factor. Where a variation of density with depth has been defined the factor will be applied at all depths.
To neglect density variation with horizontal position this data item should be set to '~'. Using a numeric value (e.g.
0.5) allows you to apply a scaling factor to the vertical density profile.
System Modelling - Data and Results, Environment
w

210
To model density variation with horizontal position you must define a Horizontal Variation Factor variable data
source. The horizontal variation factor is assumed to be constant in the direction normal to the axis.
Sea Density Origin
As explained above, for all hydrodynamic calculations other than buoyancy OrcaFlex uses a single sea density value.
This is the sea density value at the sea density origin which is defined as follows:
If there is no horizontal density variation then the sea density origin is defined to be (0, 0, Sea Surface Z). Since there
is no variation of density with horizontal position the choice of X and Y coordinates here is arbitrary. Thus, the sea
density value used is the sea density at the still water level.
If there is horizontal density variation then the sea density origin is defined to be (X, Y, Sea Surface Z). Here X and Y
are the origin coordinates for the horizontal variation axis.
7.5.3 Seabed Data
The seabed data divides into two groups:
- Data specifying the shape of the seabed surface.
- Data specifying the seabed resistance model that OrcaFlex uses to calculate the forces acting on objects that
contact the seabed.
Seabed Shape Data
Shape Type
Three types of seabed shape are available:
- A Flat seabed is a simple plane, which can be horizontal or sloping.
- A Profile seabed is one where the shape is specified by a 2D profile in a particular direction. Normal to that
profile direction the seabed is horizontal.
- A 3D seabed allows you to specify a fully general 3D surface for the seabed, by specifying the depth at a series of
X,Y positions, with a choice of linear or cubic polynomial interpolation in between.
Seabed Origin, Depth
The seabed origin is a point on the seabed and it is the origin relative to which the seabed data is specified. It can be
chosen by the user and is specified by giving its coordinates with respect to global axes. For a Flat seabed you can
type in either the seabed origin Z coordinate or the water depth at the seabed origin, and the other of those two
values is updated to match, based on the specified Sea Surface Z. For Profile and 3D seabeds the Z coordinate and
water depth at the seabed origin are displayed but they are not specified directly, since they are determined from
the Z values specified in the profile or 3D geometry data and the specified Sea Surface Z.
Direction
The Seabed Direction is measured positive anti-clockwise from the global X axis when viewed from above (see
Directions). The meaning of this data depends on the type of seabed in use:
- For a flat seabed the direction specified is the direction of maximum upwards slope. For example, 0 means
sloping upwards in the global X direction and 90 means sloping up in the in the global Y direction.
- For a profile seabed the direction specified is the direction in which the 2D profile is defined.
- For a 3D seabed the direction and the seabed origin together define a frame of reference, relative to which the
seabed data points are specified.
Warning: The depth at the seabed origin is used for all the wave theory calculations, so if the water is shallow
and the depth varies then the seabed origin should normally be chosen to be near the main wave-
sensitive parts of the model.
Flat seabed data
Slope
This is the maximum slope upwards, in degrees above the horizontal. A flat seabed is modelled as a plane passing
through the seabed origin and inclined upwards at this angle in the seabed direction. The model is only applicable to
w
System Modelling - Data and Results, Environment
211
small slopes. The program will accept slopes of up to 45 but the model becomes increasingly unrealistic as the
slope increases because the bottom current remains horizontal.
Profile seabed data
Profile
The profile table defines the seabed shape in the vertical plane through the seabed origin in the seabed direction.
The shape is specified by giving the either the seabed Z coordinate relative to global axes, or else the Depth, at a
series of points specified by their Distance From Seabed Origin. If a Z coordinate is entered then the Depth is
updated to match, and vice versa. The Distance From Seabed Origin is measured from the seabed origin in the
seabed direction (negative values can be given to indicate points in the opposite direction).
Seabed Z values in between profile points are obtained by interpolation, with a choice of Interpolation Method.
Beyond the ends of the table the seabed is assumed to be horizontal. The seabed is assumed to be horizontal in the
direction normal to the seabed profile direction.
Warning: Linear interpolation can cause difficulties for static and dynamic calculations. If you are having
problems with static convergence or unstable simulations then you should try one of the other
interpolation methods.
Note: You cannot model a true vertical cliff by entering 2 points with identical Distance from Seabed
Origin but different Z coordinate - the second point will be ignored. However you can specify a
near-vertical cliff. If you do this, note that to avoid interpolation overshoot you may need to specify
several extra points just either side of the cliff, or else use linear interpolation. See Choosing
Interpolation Method.
View Profile
The View Profile button provides a graph of the seabed profile. The specified profile points are shown, together with
the interpolated shape in between profile points. The seabed is horizontal beyond the ends of the graph.
You should check that the interpolated shape is satisfactory, in particular that the interpolation has not introduced
overshoot - i.e. where the interpolated seabed is significantly higher or lower than desired. Overshoot can be solved
by adding more profile points in the area concerned and carefully adjusting their coordinates until suitable
interpolation is obtained.
3D seabed data
The 3D seabed is defined by specifying a set of x, y and Z coordinates of the seabed. The x and y coordinates are
given with respect to a right-handed frame of reference with origin at the seabed origin, Z vertically upwards, x-axis
horizontal in the specified seabed direction and y-axis horizontal and normal to that x-direction. The Z coordinate is
specified relative to the global model origin. Note that the Z coordinate can, for convenience, alternatively be
specified as a Depth. (If a depth is entered then the Z coordinate is updated to match, and vice versa.)
The program forms a triangulation of the input data and then uses either Linear or Cubic Polynomial interpolation
methods. We would normally recommend using the cubic polynomial interpolation method. This provides a smooth
interpolation which makes both static and dynamic calculations more stable and robust.
The linear method has been provided for the special case of an analysis where your seabed data consists only of
depth and slope at each line anchor point. The linear interpolation method allows you to build a seabed which is
effectively a number of different flat sloping seabeds for each line.
The minimum edge triangulation angle, , provides a degree of control over the triangulation. Some data sets (for
example concave data sets) can result in strange artifacts around the edges of the data. In this case you may find that
specifying >0 helps. When >0 the program removes any triangles at the edge of the triangulation that have
internal angles less than . On the other hand you may find that specifying >0 results in significant portions of your
seabed being removed. If this is the case then you should set to 0 which results in no edge triangles being
removed.
Note: The seabed generated by OrcaFlex only extends as far as the data specified, and at any horizontal
position outside the area specified the sea is considered to be infinitely deep. So you must specify
seabed data that covers the whole area of seabed that any object in the model might contact.
Seabed Model Data
Two types of seabed model are available, a Linear model and a Non-linear Soil model:
System Modelling - Data and Results, Environment
w

212
- The Linear model gives a seabed that behaves as a simple linear spring in both the seabed normal direction and
the directions tangential to the seabed plane. The stiffness for the seabed normal direction can be specified
independently of the stiffness for the tangential directions.
- The non-linear soil model gives a more sophisticated model of the seabed resistance in the normal direction,
since it models the non-linear and hysteretic behaviour of seabed soil in the normal direction, including
modelling of suction effects when a penetrating object rises up sufficiently. For the directions tangential to the
seabed plane the non-linear model behaves as a linear spring with user-specified stiffness, as with the linear
model.
The linear model can be tuned to give specified uniform stiffness responses in the normal and tangential directions,
but it is unlikely to give any useful information on embedment.
For information on the suitability of the non-linear soil model see Non-linear Soil Model below.
Linear Model
The Linear model treats the seabed as a simple linear spring in both the seabed normal direction and the seabed
shear directions (i.e. the axial and lateral directions in the seabed tangent plane). This gives a seabed normal
resistance that is proportional to the penetration, and a seabed lateral resistance that is proportional to the lateral
displacement of the contact point (e.g. a node on a line) from its undisturbed position. The linear spring stiffnesses
in the normal and lateral directions can be different.
When explicit integration is used, the Linear model also includes linear dampers in the normal and lateral
directions, which give an extra damping resistance that is proportional to the rate of penetration (for the normal
direction) or the rate of lateral movement (for the lateral directions). The linear damper in the normal direction
only acts when penetration is increasing, not when penetration is reducing, so the model does not model any suction
effect. Also, note that there is no seabed damping contribution when implicit integration is used.
Linear Model Data
The Normal Seabed Stiffness is the constant of proportionality of the spring force in the seabed outward normal
direction. The stiffness equals the spring reaction force, per unit area of contact, per unit depth of penetration. A
high value models a surface such as rock; a low value models a soft surface such as mud.
The Shear Seabed Stiffness is used by the friction calculation. A value of '~' results in the Normal Seabed Stiffness
being used.
The Seabed Damping is the constant of proportionality of the damping force, and is a percentage of critical
damping. Seabed damping is always zero when using the implicit integration scheme.
Warning: If you use the explicit integration scheme then note that a high seabed stiffness will shorten the
natural periods of parts of the system lying on it, and this may require the use of a smaller
simulation time step. Beware that the shorter natural periods will not be reported in the statics
results table if touchdown only occurs during the simulation.
See Linear Seabed Model Theory for details of how this data is used to model the seabed reaction force.
Non-linear Soil Model
The non-linear soil model has been developed in collaboration with Prof. Mark Randolph (Centre for Offshore
Foundation Systems, University of Western Australia). It is a development from earlier models that proposed and
used a hyperbolic secant stiffness formulation, such as those proposed by Bridge et al and Aubeny et al.
The non-linear soil model is more sophisticated than the Linear model. It models the non-linear and hysteretic
behaviour of seabed soil in the normal direction, including modelling of suction effects when a penetrating object
rises up sufficiently. The non-linear modelling only applies to the seabed normal direction. In the seabed lateral
directions the seabed is modelled in the same way as described above for the Linear model.
Note: The non-linear soil model is currently experimental and we are working on comparing the model
against experimental results for seabed contact. Please contact Orcina if you have any feedback
and comments on the model or ideas for improvement.
The non-linear soil model is suited to modelling soft clays and silty clays, and it is particularly relevant for cases
(such as typical deepwater seabeds) where the mudline undrained shear strength is only a few kPa or less and the
seabed stiffness response to catenary line contact is dominated by plastic penetration rather than elastic response.
w
System Modelling - Data and Results, Environment
213
Note that the non-linear model is not suitable for caprock conditions, and is not suitable for modelling sand without
very careful choice of soil data and model parameters to reflect sand response.
For further details see Non-linear Soil Model Data, Seabed Theory and Non-linear Soil Model Theory.
Note: For dynamic analysis using implicit integration you might find that you need to use a shorter time
step with the non-linear soil model than with the Linear model.
Non-linear Soil Model Data
The data for the non-linear soil model divides into three groups:
Soil Properties
These specify the undrained shear strength and saturated density of the seabed soil. They should be obtained from
geotechnical survey of the site.
The shear strength is specified by giving the undrained Shear Strength at Mudline, su0, and the undrained Shear
Strength Gradient, . The undrained shear strength at any given penetration distance z is then taken to be
su(z) = su0 + .z.
The Saturated Soil Density specifies the density of the seabed soil when fully saturated with sea water. It is used by
the non-linear seabed model to model the extra buoyancy effect that arises when a penetrating object displaces
seabed soil. See Soil Extra Buoyancy Force for details.
Site-specific data should be used. Typical saturated soil densities are in the range 1.4 to 1.6 te/m
3
. Typical
deepwater sediments have essentially negligible undrained shear strength at mudline (0 to 5 kPa) and an undrained
shear strength gradient of 1.3 to 2 kPa/m. For shallow water the seabed soils are typically stronger than in deep
water.
Shear Stiffness and Damping
These specify the strength of the lateral linear spring+damper that is used to model the lateral resistance. This data
is the same as described above for the linear model. The lateral damper is only used for explicit integration; for
implicit integration the lateral damper strength is zero.
The shear stiffness can be specified as '~', in which case a default shear stiffness value is used, and this is based on
the specified soil shear strength properties. This default shear stiffnes used is equal to 20/D times the soil undrained
shear strength at a penetration depth of z = D, where D is the contact diameter of the penetrating object, so it is
given by:
Default Shear Stiffness = (20/D).[ su0 + .(D) ]
Seabed Soil Model Parameters
These appear on a separate page on the Environment data form. They are non-dimensional parameters that control
how the seabed soil is modelled. See Soil Model Parameters.
See Non-linear Soil Model Theory for details of how this data is used to model the seabed reaction force.
7.5.4 Wave Data
Number of Wave Trains
You can define a number of different wave trains and the overall sea conditions are the superposition of the wave
trains. In most cases a single wave train is sufficient, but multiple wave trains can be used for more complex cases,
such as a crossing sea (i.e. a superposition of locally generated waves in one direction and distant storm-generated
swell in a different direction).
Each wave train can be given a name and a specified direction. And each wave train can be either a regular wave
(with a choice of wave theory) or a random wave (with a choice of spectrum), or else be specified by a time history
file.
Simulation Time Origin
The simulation time origin allows you to control the period of time that the dynamic simulation covers. It defines the
global time that corresponds to simulation time t = 0, so changing the simulation time origin allows you to shift the
period of global time that is simulated. Altering the simulation time origin shifts the simulation time relative to all of
the wave trains; alternatively, you can also time shift an individual wave train by altering its wave time origin. See
Dynamic Analysis for details of the time frames used in OrcaFlex.
System Modelling - Data and Results, Environment
w

214
Data for a Wave Train
Each wave train is specified by the following data.
Wave Direction
For both regular and random waves, this is the direction that the wave is progressing, measured positive anti-
clockwise from the global X-axis when viewed from above. So, for example, 0 degrees means a wave travelling in the
positive X-direction, and 90 means a wave travelling in the positive Y-direction.
If you are using a directional spreading spectrum then the wave direction is taken to be the principal direction.
With multiple wave trains the direction of the first wave train is taken to be the primary direction and this is
reflected in both the way the sea is drawn and the Sea Axes.
Wave Type
Each wave train can be any of the following types:
- Airy, Dean, Stokes' 5th or Cnoidal. These are various different wave theories for regular waves. See Data for
Regular Waves.
- JONSWAP, ISSC (also known as Bretschneider or modified Pierson-Moskowitz), Ochi-Hubble, Torsethaugen,
Gaussian Swell or User Defined Spectrum. These are various different spectra for random waves.
- Time History allows you to specify the wave in the form of a time history input file. See Data for Time History
Waves.
- User Specified Components allows you to specify the wave train as the sum of a number of sinusoidal
components. This wave type gives you complete control over the wave train and would typically be used to
compare OrcaFlex results with results produced by a different program. See Data for User Specified
Components.
- Response Calculation is a special type of random wave with a truncated white noise spectrum which is used
for Spectral Response Analysis. A truncated white noise spectrum has energy spread evenly over a user-
specified range of frequencies. See Data for Response Calculation.
For regular waves we recommend the Dean wave - this is a non-linear wave theory using a Fourier approximation
method and it is suitable for all regular waves. The Airy wave theory is a simple linear wave theory that is only
suitable for small waves. The Cnoidal wave theory is only suitable for long waves in shallow water. The Stokes' 5th
wave theory is only suitable for short waves in deep water.
There are two Stokes' 5th order theories implemented in OrcaFlex which we have called Stokes' 5th (SH) and
Stokes' 5th. The former is the standard method of Skjelbreia and Hendrickson whilst the latter theory is due to
Fenton. Fenton's work is the better choice primarily because it deals with currents more accurately.
If the specified wave is not suitable for the selected wave theory, OrcaFlex will give a warning or may report that the
wave calculation has failed. If this happens please check that the wave theory selected is suitable. For further details
see Ranges of Applicability.
Kinematic Stretching Method
Kinematic stretching is the process of extending linear Airy wave theory to provide predictions of fluid velocity and
acceleration (kinematics) at points above the mean water level. OrcaFlex offers a choice of three methods: Vertical
Stretching, Wheeler Stretching and Extrapolation Stretching. For details see Kinematic Stretching Theory.
Note: Random waves are modelled by combining a number of linear Airy waves, so kinematic stretching
also applies to random waves.
The Horizontal Velocity preview graph can be used to see the effect of the different kinematic stretching methods.
Wave Origin and Wave Time Origin
Each wave train has its own spatial origin and time origin. The spatial origin is specified relative to the global origin
and the time origin is specified relative to the global time origin.
The wave train's data specify the wave train relative to its own origins, so you can shift a given wave train in space
or time, independently of the other wave trains, by adjusting its origins.
w
System Modelling - Data and Results, Environment
215
For a regular wave train the wave time origin is the time at which a wave crest passes the wave origin. You can
therefore use the origins to arrange that a wave crest passes a particular point at a particular time during the
simulation.
For a random wave train, the phases of the wave components that make up the wave train are randomly distributed,
but they are fixed relative to the wave time origin. You can therefore arrange that the simulation covers a different
piece of the random wave train by changing the wave time origin. This can be useful for two purposes:
- You may want to select a particularly significant event in the wave train, such as a large wave. OrcaFlex has
special facilities to make this easy - see Wave Preview.
- Secondly, you may want to do a series of runs with the same wave train data but different random phases for
the wave components. This can be done by specifying randomly chosen wave time origins for the different runs,
since randomly selecting different periods of the wave train is statistically equivalent to choosing different
random phases for the wave components.
7.5.5 Data for Regular Waves
A regular wave is a single wave component defined by wave Direction, Height and Period. Wave height is
measured from trough to crest.
Stream Function Order
For the Dean wave theory only, you can set the order of stream function to be used. For most waves the default
value will suffice. However, for nearly breaking waves the method sometimes has problems converging. If this is the
case then it might be worth experimenting with different values.
7.5.6 Data for Random Waves
Random waves are specified by giving the energy spectrum of the random sea. The Wave Type specifies the type of
spectrum and the spectral data then defines the actual spectrum within that type. See:
- JONSWAP and ISSC Spectra,
- Ochi-Hubble Spectrum,
- Torsethaugen Spectrum,
- Gaussian Swell,
- User-Defined Spectrum.
For a given spectrum, sea state and simulation time origin, different wave conditions can be obtained by shifting the
wave time origin. For more information, see Setting up a Random Sea.
Number of wave directions and Spreading exponent
This data allows you to model a directional spread spectrum. You specify the number of discrete wave directions to
be used together with an exponent for the spreading function. If the number of wave directions is set to 1 then no
spreading is applied.
OrcaFlex uses a cos
n
spreading function where n (which must be even) is the specified spreading exponent. Full
details are given in the wave theory topic.
Number of Components and Seed
Random wave trains are represented by a user-defined number of component waves whose amplitudes and periods
are selected by the program to give a sea state having the specified spectrum. If a maximum component frequency
range is specified then the actual number of components can be greater than the number of components specified
here.
If you are using a directional spreading spectrum then you specify the number of wave components per direction.
Otherwise you specify the total number of wave components for the wave train.
The phases associated with each wave component are pseudo-random. OrcaFlex uses a random number generator
and the user-defined seed to assign phases. The sequence is repeatable, so the same seed will always give the same
phases and consequently the same train of waves.
If User specified seeds is checked then the user must specify a seed for each wave train. Otherwise the program
chooses a seed automatically.
System Modelling - Data and Results, Environment
w

216
Spectrum discretisation method
This data item was introduced in version 9.3.
If the New option is selected the program uses a better algorithm for discretising the wave spectrum. In particular
the minimum and maximum relative frequency ranges and the maximum component frequency range can be
specified by the user.
If the Legacy option is selected then the program reverts to the algorithm used in versions 9.2 and earlier. The
minimum and maximum relative frequency ranges are hard-coded to 0.5 and 1.0, respectively and no maximum
component frequency range is applied.
The Legacy option has been retained to allow you to reproduce sea-state realisations generated by earlier versions
of the program. However, we recommend that new analyses use the New option, primarily because it allows a
maximum component frequency range to be specified.
Minimum and maximum relative frequency ranges (rmin, rmax)
These data determine the range of frequencies considered by the spectral discretisation algorithm. The default
values of rmin = 0.5 and rmax = 10.0 are usually sufficient to produce a good representation of the spectrum.
Maximum component frequency range (fmax)
The maximum component frequency range places an upper limit on the frequency range represented by each wave
component. All wave components are constrained to cover a frequency range no greater than fmax.
The equal energy discretisation algorithm used by OrcaFlex can result in the lowest frequency and highest
frequency wave components covering too large a range. This data item is used to limit that range. A value of '~'
means that the component frequency range is not limited in this way.
Wave components covering large frequency ranges can result in poor modelling of system responses. Since the
energy in the wave component is concentrated at a single frequency that energy can either over-excite a system
response, or indeed fail to excite an important system response. Consequently we recommend that you do limit the
frequency range.
Spectrum graphs and tables
The View Frequency Spectrum button produces a graph of energy spectrum. If you are using a directional
spreading function then you can plot it using the View Direction Spectrum button.
The View Wave Components button outputs a spreadsheet giving details of the wave components that OrcaFlex
has used to represent a random or time history wave train.
For a random wave train the spreadsheet also reports the following properties of the spectrum:
- Spectral moments m0, m1, , m4.
- Spectral bandwidth parameter = {1 - m2
2
/(m0m4)}
1/2
.
- Mean period T1 = m0/m1. Note that T1 is sometimes denoted by Tm.
- Peak period and frequency Tp and fm. These are the period and frequency at which the spectrum has the greatest
spectral density.
7.5.7 Data for JONSWAP and ISSC Spectra
For the ISSC spectrum you specify Hs and Tz (or alternatively the linked parameters Tp or fm) and the program
calculates the other spectral parameters.
For the JONSWAP spectrum you have the following options for setting the spectral parameters:
- Automatic: You specify Hs and Tz and the program calculates the other parameters.
- Partially Specified: You specify Hs, Tz (or alternatively the linked parameters Tp or fm) and and the program
calculates the other parameters.
- Fully Specified: You specify all the spectral parameters (, , 1, 2 and Tp or fm) and the program calculates and
reports Hs and Tz.
The various spectral parameters are documented below:
w
System Modelling - Data and Results, Environment
217
Hs, Tz, fm, Tp
Hs is the significant wave height. Tz is the zero crossing period. Tp and fm (=1/Tp) are the spectral peak period and
peak frequency, i.e. those with largest spectral energy.
For the ISSC spectrum Tz, Tp and fm are tied together, so setting any one of them sets the other two to match.
For the JONSWAP spectrum how these data are used depends on the selected parameter option:
- For Automatic parameters you set Hs and Tz and the program calculates and reports Tp and fm.
- For Partially Specified parameters Tz, Tp and fm are tied together, so setting any one of them sets the other two
to match. You must also set Hs.
- For Fully Specified parameters Tp and fm are tied together, so setting one of them sets the other to match. The
program calculates and reports Hs and Tz.
Peak enhancement factor ()
For the ISSC spectrum is always 1.
For the JONSWAP spectrum is automatically calculated by the program using formulae given by Isherwood, 1987 if
the parameters are calculated using the Automatic option. Otherwise you can specify the value.
For Partially Specified parameters you must be careful about the order in which you set parameters. The
relationship between Tz, Tp and fm depends on . We treat Tz as the master data item which means that you must set
before setting Tp or fm.
Spectral width parameters (1, 2)
These only apply to the JONSWAP spectrum. If the parameters are calculated using the Fully Specified option you
can specify these values. Otherwise they are fixed at the standard values of 0.07 and 0.09 respectively.
Spectral energy parameter ()
For the ISSC spectrum is calculated by the program to give a sea state with the specified Hs and Tz.
For the JONSWAP spectrum if the parameters are calculated using the Fully Specified option you can specify and
the program reports the corresponding Hs. Otherwise is calculated by the program to give a sea state with the
specified Hs and Tz.
7.5.8 Data for Ochi-Hubble Spectrum
The Ochi-Hubble formulation allows 2-peaked spectra to be set up, enabling you to represent sea states that include
both a remotely generated swell and local wind-generated waves.
Hs and Tz
Hs is the significant wave height and Tz is the zero crossing period. Their values depend on whether you specify Auto
or User.
Auto: In this case Hs is specified by the user and the program selects the most probable spectral parameters for that
value of Hs. The resulting Tz is then derived and displayed, but cannot be edited.
User: In this case the user specifies the spectral parameters explicitly. The resulting Hs and Tz values are displayed,
but neither can be edited.
Hs1, fm1, 1, Hs2, fm2 and 2
The Ochi-Hubble spectrum is the sum of 2 component spectra, each of which is specified by a set of three
parameters: Hs1, fm1, 1 for the lower frequency component and Hs2, fm2, 2 for the higher frequency component.
Parameters Hs1 and Hs2 are the significant wave heights of the component spectra; the overall significant wave
height Hs = (Hs1
2
+ Hs2
2
)
1/2
. Parameters fm1 and fm2 are the modal frequencies of the two components. Finally, 1 and
2 are shape parameters that control the extent to which the spectral energy is concentrated around the modal
frequency - larger values give more concentrated component spectra.
You can specify these spectra parameters in two alternative ways:
If you select Automatic the program calculates the parameters of the most probable spectrum, based on the overall
significant wave height Hs that you have specified. The parameters used are as given in the Ochi-Hubble paper, table
2b.
System Modelling - Data and Results, Environment
w

218
If you select Specified you must specify all 6 parameters. The program then derives and displays the corresponding
overall Hs and Tz values.
Notes: The modal frequency of the first component, fm1, must be less than that of the second, fm2. It is also
recommended that fm2 is greater than 0.096.
The significant wave height of the first component, Hs1, should normally be greater than that of the
second, Hs2, since most of the wave energy tends to be associated with the lower frequency
component.
Warning: The Ochi-Hubble spectrum makes no allowance for the directionality of the swell and wind
components of the sea state. In reality the separate components frequently come from different
directions. However, an OrcaFlex wave train has a single principal direction. Because of this it is
more appropriate to model a two-peaked sea state using two separate OrcaFlex wave trains, one
for the swell component and one for the local wind generated component.
7.5.9 Data for Torsethaugen Spectrum
The Torsethaugen spectrum is a double peaked spectrum best suited to North Sea conditions. It enables you to
represent sea states that include both a remotely generated swell and local wind-generated waves.
Full details of the formulation used are found in the Torsethaugen and Haver paper.
Hs, fm and Tp
The Torsethaugen spectrum is specified by Hs and Tp. The fm and Tp data items are linked by the relationship fm =
1/Tp. If you enter one the other will be updated according to this equality.
Warning: The Torsethaugen spectrum makes no allowance for the directionality of the swell and wind
components of the sea state. In reality the separate components frequently come from different
directions. However, an OrcaFlex wave train has a single principal direction. Because of this it is
more appropriate to model a two-peaked sea state using two separate OrcaFlex wave trains, one
for the swell component and one for the local wind generated component.
7.5.10 Data for Gaussian Swell Spectrum
The Gaussian Swell spectrum is typically used to model long period swell seas.
Hs, fm, Tp and
The Gaussian Swell spectrum is specified by Hs, fm and . The fm and Tp data items are linked by the relationship fm =
1/Tp. If you enter one the other will be updated according to this equality.
7.5.11 Data for User Defined Spectrum
A user defined spectrum is specified by giving a table of values of S(f), where S(f) is the spectral energy as a function
of frequency f.
The values of f specified do not need to be equally spaced. For intermediate values of f (i.e. between those specified
in the table) OrcaFlex uses linear interpolation to obtain the spectral ordinate S(f). And for values of f outside the
range specified in the table OrcaFlex assumes that S(f) is zero. Your table should therefore include enough points to
adequately define the shape you want (important where S(f) is large or has high curvature) and should cover the full
range over which the spectrum has significant energy.
OrcaFlex reports on the data form Hs and Tz that correspond to the spectrum specified. These are calculated using
the standard formulae:
Hs = 4m0
1/2
.
Tz = (m0/m2)
1/2
.
where m0 and m2 are the zeroth and second spectral moments.
7.5.12 Data for Time History Waves
A time history wave train is defined by a separate text file that contains the wave elevation as a function of time. To
use this you need to do the following:
- Create a suitable time history text file defining the wave elevation as a function of time. The time values in the
file must be equally spaced and in seconds. The elevation values must be the elevation at the global origin used
w
System Modelling - Data and Results, Environment
219
in the OrcaFlex model, measured positive upwards from the still water level specified in the OrcaFlex model,
and using the same units as those in the OrcaFlex model.
- Setup the time history data as described in Data in Time History Files.
- Set the Wave Time Origin to position the required section of wave time history within the simulation period.
You can use the View Profile button (on the Waves Preview page on the environment data form) to see the wave
elevation as a function of simulation time.
- Set the Minimum Number of Components. This affects the number of Fourier components that will be used to
model the time history wave. It should be set high enough to give desired accuracy, but note that using a very
large number of components may significantly slow the simulation. More details are given below.
How Wave Time History Data is Used
Briefly, OrcaFlex uses a Fast Fourier Transform (FFT) to transform the data into a number of frequency components.
Each component is then used to define a single Airy wave and these Airy waves are then combined to give the wave
elevation and kinematics at all points. The View Wave Components and View Spectrum buttons on the data form
show (in tabular and power spectral density graph form respectively) the Airy wave components that OrcaFlex will
use to model the waves.
Note that the FFT requires the number of samples it uses from the time history file, N say, to be a power of 2, and it
produces N/2 components. Because of this, the time history file must contain a sequence of N samples that covers
the period of the simulation, where N is a power of 2 that is at least twice the specified minimum number of
components.
Warning: If the time history file does not contain enough samples to achieve this, then zero-padding will be
used to extend the time history until it does. This is likely to introduce spurious high frequencies
into the waves, so we recommend that this is avoided by providing more actual samples.
Here are more details.
1. OrcaFlex first selects the elevation values that cover the simulation period
To do this OrcaFlex searches the time history file and selects the time samples that cover the simulation period.
These will be the time samples from time
(T0 - BuildUpDuration) to (T0 + SimulationDuration)
where BuildUpDuration is the length of the build-up stage of the simulation, SimulationDuration is the length of the
remaining stages and T0 = SimulationTimeOrigin - WaveTimeOrigin. These time origin settings allow you, if you
want, to shift the simulation relative to the time history.
2. OrcaFlex then includes more samples, if necessary
Let n be the number of samples selected in step 1. In order to achieve the specified minimum number of
components, m say, OrcaFlex needs at least 2m samples. So if n is less than 2m then OrcaFlex selects more samples
from the file (taken equally from earlier and later in the file, if possible) until it has 2m samples. If OrcaFlex runs out
of samples in the file while doing this then an error message is given; you must then either provide more samples in
the time history file or else reduce the minimum number of components requested.
However OrcaFlex also needs the number of samples to be a power of 2, since that is needed in order to use a fast
Fourier transform. So if 2m is not a power of 2 then OrcaFlex again selects more samples from the file (taken equally
from earlier and later in the file, if possible) until the number of selected samples is a power of 2. If OrcaFlex runs
out of samples in the file while doing this then it zero-pads (i.e. it adds extra samples of value zero); you will be
warned if this happens.
3. OrcaFlex uses a fast Fourier transform to obtain Fourier components
The selected time history samples, N of them say, are converted into frequency domain form using a Fast
FourierTransform (FFT). This gives N/2 sinusoidal Fourier components. The View Wave Components button
reports their numerical values and the View Spectrum shows their spectrum.
4. OrcaFlex models the time history wave as the superposition of Airy waves
N/2 Airy waves are created, with periods, amplitudes and phases that match the Fourier components. The time
history wave is then modelled as the superposition of these Airy waves.
System Modelling - Data and Results, Environment
w

220
Warning: This last step effectively uses Airy wave theory to extrapolate from the global origin, where the
surface elevation has been defined, to derive surface elevation at other points and to derive fluid
kinematics from the surface elevation readings. This extrapolation introduces errors, which
become worse the further you go from the global origin. It is therefore recommended that the
global origin (= the point the time history file data applies to) is placed close to the main wave-
sensitive parts of the model.
7.5.13 Data for User Specified Components
The User Specified Components wave type allows you to specify the wave train as the sum of a number of
sinusoidal components. For each component you specify:
Frequency or Period
You may specify either of these and the other is automatically updated using the relationship Period = 1 /
Frequency.
Amplitude
The single amplitude of the component - that is half the peak to trough height.
Phase lag
The phase lag relative to the wave train time origin.
7.5.14 Data for Response Calculation
Hs
The significant wave height of the truncated white noise spectrum used for the Spectral Response Analysis. A
truncated white noise spectrum has energy spread evenly over the a specified range of frequencies.
The total energy of the spectrum is determined by Hs using the standard formula m0 = (Hs/4)
2
where m0 is the
zeroth spectral moment, that is the total spectral energy. OrcaFlex also reports Tz = (m0/m2)
1/2
.
A more detailed discussion of the issues involved in choosing Hs is given in Load Cases Data for Spectral Analysis.
Target Frequency Range
These data items determine the frequency range of the truncated white noise spectrum used for the Spectral
Response Analysis.
The wave components that OrcaFlex uses to represent this spectrum are carefully chosen. They are selected to
match the frequencies produced by the Fast Fourier Transform(FFT) used to calculate the spectral response. This
process is described in more detail in the Spectral Response Analysis theory section.
It is possible for the range of FFT frequencies not to cover the Target Frequency Range. If this happens then as much
of the target range is used as is possible. You will be warned if the actual frequency range cannot achieve the Target
Frequency Range.
7.5.15 Waves Preview
When using a random wave or a time history wave, OrcaFlex provides two preview facilities to aid selection of the
wave, namely List Events and View Profile. These are provided on the Waves Preview page on the environment data
form and are documented below.
Notes: These commands work in terms of global time, rather than simulation time. This enables you to
search through a period of global time looking for an interesting wave event and then set the time
origins so that the simulation covers that event.
If you are using multiple wave trains then these commands report the combined sea state from all
of the wave trains.
See also Setting up a Random Sea.
Position
This is the point to which the List Events, View Profile and Horizontal Velocity commands apply. Since wave trains
vary in space as well as time you should normally set this point to be close to a system point of interest, such as a
riser top end position.
w
System Modelling - Data and Results, Environment
221
View Profile
This plots a time history of wave elevation at the specified Position over the specified interval of global time.
An example of the use of these commands is to use List Events to scan over a long period of global time (e.g. 10000
seconds or more), look for large waves and then use View Profile to look in more detail at short sections of interest.
Having decided which part of the wave train to use, the simulation time origin can then be set to just before the
period of interest, so that the simulation covers that period.
List Events
This command searches for individual waves within a random sea which satisfy specified criteria. All wave events in
the specified interval of global time and at the specified Position which match the specified criteria are reported.
The criteria are be specified in one of two ways, determined by the Wave Search Method:
- If the Height or Steepness option is selected then program searches for rises or falls that exceed the specified
height H, or (providing there is only a single wave train) that the wave steepness exceeds the specified
steepness S. The steepness criterion S is not used if there is more than one wave train specified. This is because
steepness is measured in the wave direction and when multiple wave trains are present there is not necessarily
a unique wave direction.
- If the Height or Period option is selected then the program searches for wave events matching (up to specified
tolerance levels) both the specified wave height H and the specified wave period T.
For each event, the height (total rise or fall) is given and an equivalent period is derived from the time interval
between the peak and trough. These are then used to calculate, for this water depth, an Airy wave of the same height
and period, and the length and steepness of this equivalent Airy wave are given.
If there is only one wave train then, for comparison purposes, a reference wave is reported at the top of the table.
This reports the Airy wave whose height and period match the Hs and Tz of that single wave train.
Finally, various wave elevation statistics are reported for the position and period of time specified. These include
the largest rise and fall, the highest crest and lowest trough, the number of up and down zero-crossings and the
sample's estimated Hs and Tz values. These statistics enable you to measure how "typical" this wave elevation
sample is, compared with the overall parent spectrum.
Horizontal Velocity
This plots how the water horizontal velocity (due to current and waves) varies with depth, at the specified (X,Y)
Position and specified global time.
7.5.16 Setting up a Random Sea
This section gives information on how to set up a random sea using OrcaFlex's modelling facilities. For a detailed
description of these, see Wave Data.
The most common requirement is to produce a realistic wave train which includes a "design wave" of specified
height Hmax and period Tmax. However alternative requirements are possible and it is sometimes useful to impose
additional conditions for convenience in results presentation, etc.
The height and period of the maximum design wave may be specified by the client, but on occasion we have to
derive the appropriate values ourselves, either from other wave statistics (for example a wave scatter table, giving
significant wave heights Hs and average periods Tz) or from a more general description of weather (such as wind
speed). See Wave Statistics for guidance.
Having decided what values of Hmax and Tmax are required, we select an appropriate wave train as follows, using the
facilities available in OrcaFlex.
- Set the significant wave height (Hs) and average period (Tz) for the design storm, and the wave spectrum - ISSC,
JONSWAP, Ochi-Hubble, Torsethaugen and Gaussian Swell options are available. See Setting the Sea State Data
for details.
- Set the number of wave components (typically 100). See Setting the Number of Components for details.
- Search through the time history of wave height and looking for a particular wave rise (trough to crest) or fall
(crest to trough) which has the required total height and period. If no wave of the required characteristics can
be found, then adjust Hs and Tz slightly and repeat. See Finding a Suitable Design Wave Event for details.
System Modelling - Data and Results, Environment
w

222
- When the required design wave has been located, you can set the simulation time origin and duration so that
the design wave occurs within the simulation time, with sufficient time before and after to avoid starting
transients and collect all important responses of the system to the design wave. A typical random sea simulation
may represent 5 or 6 average wave periods (say 60-70 seconds for a design storm in the North Sea) plus a build
up period of 10 seconds. If the system is widely dispersed in the wave direction, then the simulation may have
to be longer to allow time for the principal wave group to pass through the whole system. Since short waves
travel more slowly than long ones, this affects simulations of mild sea states more than severe seas.
Setting the Sea State Data
The ISSC spectrum (also known as Bretschneider or modified Pierson-Moskowitz) is appropriate for fully-developed
seas in the open ocean. The JONSWAP spectrum is a variant of the ISSC spectrum in which a "peak enhancement
factor", , is applied to give a greater concentration of energy in the mid-band of frequencies. The Ochi-Hubbleand
Torsethaugen spectra enable you to represent sea states that include both a remotely generated swell and a local
wind generated sea.
JONSWAP is commonly specified for the North Sea. Two parameters are sufficient to define an ISSC spectrum - we
use Hs and Tz for convenience. For the JONSWAP spectrum, five parameters are required, Hs, Tz, , and two
additional parameters a and b (denoted 1 and 2 in OrcaFlex), which define the bandwidth over which the peak
enhancement is applied. If you choose JONSWAP then you can either specify or let the program calculate it (see
formulae given by Isherwood). The bandwidth parameters are set automatically to standard values). For the North
Sea it is common to set = 3.3. If you have to do a systematic series of analyses in a range of wave heights, there are
advantages in keeping constant. Note that a JONSWAP spectrum with = 1.0 is identical to the ISSC spectrum with
the same Hs and Tz.
Choice of wave spectrum can cause unnecessary pain and suffering to the beginner. For present purposes, the
important point is to get the "design wave" we want embedded in a realistic random train of smaller waves. The
spectrum is a means to this end, and in practice it matters little what formulation is used. The one exception to this
sweeping statement may be 2-peaked spectra (e.g. Ochi-Hubble or Torsethaugen).
Setting the Number of Components
OrcaFlex generates a time history of wave height by dividing the spectrum into a number of component sine waves
of constant amplitude and (pseudo-random) phase. The phases associated with each wave component are pseudo-
random. OrcaFlex uses a random number generator and the seed to assign phases. The sequence is repeatable, so
the same seed will always give the same phases and consequently the same train of waves. The wave components
are added assuming linear superposition to create the wave train. Ship responses and wave kinematics are also
generated for each wave component and added assuming linear superposition. OrcaFlex currently allows you to
specify the number of wave components to use; more components give greater realism but a greater computing
overhead.
The time history generated is just one of an infinite number of possible wave trains which correspond to the chosen
spectrum - in fact there are an infinite number of wave trains which could be generated from 100 components, a
further infinite set from 101 components and so on.
Strictly speaking, we should use a full Fourier series representation of the wave system which would typically have
several thousand components (the number depends on the required duration of the simulation and the integration
time step). This is prohibitively expensive in computing time so we use a much reduced number of components, as
noted above. However, this does involve some loss of randomness in the time history generated. For a discussion of
the consequences of this approach, see Tucker et al (1984).
Finding a Suitable Design Wave
A frequent requirement is to find a section of random sea which includes a wave corresponding in height and period
to a specified design wave. OrcaFlex provides preview facilities for this purpose. If you are looking for a large wave
in a random sea, say Hmax = 1.9Hs, then use the List Events command (on the Waves Preview page of the
environment data form) to ask for a listing of waves with height > H=1.7Hs, say. It is worth looking over a reasonably
long period of time at first - say t = 0s to 50,000s or even 100,000s. OrcaFlex will then search that time period and
list wave rises and falls which meet the criterion you have specified.
Suppose that the list shows a wave fall at t = 647s which is close to your requirement. Then you can use the View
Profile command to inspect this part of the wave train, by asking OrcaFlex to draw the sea surface elevation for the
period from t = 600s to t = 700s, say. You will then see the large wave with the smaller waves which precede and
follow it.
w
System Modelling - Data and Results, Environment
223
Note that when you use the preview facility you have to specify both the time and the location (X,Y coordinates). A
random wave train varies in both time and space, so for waves going in the positive X direction (wave direction =
0), the wave train at X = 0 differs from that at X = 300m.
You can use the preview facility to examine the wave at different critical points for your system. For example, you
may be analysing a system in which lines are connected between Ship A at X = 0 and Ship B at X = 300m. It is worth
checking that a wave train which gives a design wave at Ship A does not simultaneously include an even higher wave
at Ship B. If you want to investigate system response to a specified design wave at both Ship A and Ship B, then you
will usually have to do the analysis twice, once with the design wave at Ship A and once at Ship B.
If no wave of the required characteristics can be found, then adjust Hs and Tz slightly and repeat. As we noted above,
the important point is to get the design wave we want embedded in a realistic random train of smaller waves. This is
often conveniently done by small adjustments to Hs and Tz. We need make no apology for this. In the real world,
even in a stationary sea state, the instantaneous wave spectrum varies considerably and Hs and Tz with it. For
further discussion see Tucker et al (1984).
If you are using an ISSC spectrum, or a JONSWAP spectrum with constant , then you can make use of some useful
scaling rules at this point. In these 2 cases, provided the number of wave components and the seed are held
constant, then:
- For constant Tz, wave elevation at any time and any location is directly proportional to Hs. For example, if you
have found a wave at time t which has the period you require but is 5% low in height, increasing Hs by 5% will
give you the wave you want, also at time t.
- For constant Hs, the time between successive wave crests at the origin (X = 0, Y = 0) is proportional to Tz. For
example, if you have found a wave at the origin at time t which has the height you require but the period
between crests is 5% less than you want, increasing Tz by 5% will give you the wave you want, but at time 1.05t.
Note: This rule does not apply in general except at the origin of global coordinates.
These scaling rules can be helpful when conducting a study of system behaviour in a range of wave heights. We can
select a suitable wave train for one wave height and scale to each of the other wave heights. This gives a systematic
variation in wave excitation for which we may expect a systematic variation in response. If the wave trains were
independently derived, then there would be additional scatter.
Wave Statistics
The following is based on Tucker (1991).
Deriving Hmax from Hs
Hmax/Hs = K.[(loge N)/2]
where N is the number of waves in the period under consideration and K is an empirical constant. Since wave
statistics are usually based on measurements made every 3 hours, N is usually taken as the number of waves in 3
hours:
N = 10800/Tz.
For extreme storms, K may be taken as 0.9, but for moderate wave conditions as used for fatigue analysis, K = 1 is
usually assumed.
In extreme storm conditions, it is common to assume a "significant wave steepness" of 1/18, i.e.
S = (2Hs)/(gTz
2
) = 1/18
hence
Tz = [(2Hs)/(gSs)] = 3.39Hs
for
Ss = 1/18 (Hs in metres, Tz in seconds.)
Deriving Tmax from Tz
Generally, it can be assumed that
1.05Tz < Tmax < 1.4Tz.
A common assumption is
System Modelling - Data and Results, Environment
w

224
Tmax = 1.28Tz.
7.5.17 Current Data
Multiple Current Data Sets
Multiple sets of current data can be defined. However, only one set of current data is active at any one time. This
capability is intended to help when you are analysing a series of load cases with differing current data. You can
define the different current data sets in the base data file. Then, in the batch script which generates the load case
simulations, you simply set the active current to be one of the pre-defined current data sets.
Multiple sets of current data can be defined
This data item must be checked if you wish to define multiple sets of current data. If it is not checked then you define
just a single current data set.
Active current
Specifies which of the multiple current data sets is active in the model. This data item is only available if you have
enabled multiple current data sets.
To define the current data sets click on the Edit Current Data Sets button. This opens a separate data form where
the current data sets can be defined and named.
Data for a single Current Data Set
Ramp During Build-Up
If selected then the static position will be calculated without the effects of current. Then, during the build-up stage of
dynamics the current is ramped up to its full value. If not selected (the default) then the current is used in
calculating the static position and full current is applied throughout.
This facility to omit current effects from the static calculation and introduce them during the build up is useful
where the current may cause lines to come into contact. For example, consider a case where a flexible line is to the
left of a stiff pipe but current pushes the flexible up against the pipe. Since the OrcaFlex static analysis does not
include the effects of contact between lines, if current was included in the static analysis then it would find a static
position where the flexible line was to the right of the pipe. The simulation would then start with the flexible on the
wrong side of the pipe.
This problem can be overcome by setting the current to ramp during build up and setting clash checking for the two
lines. The static position will exclude the effect of current and so will leave the flexible to the left of the pipe. The
build-up stage will then introduce the current effects but will also include the effect of contact between the two
lines.
Vertical Current Variation
Current Method
Can be Interpolated or Power Law. The Interpolated method uses a full 3D profile with variable speed and direction.
The Power Law method uses an exponential decay formula.
Data for Interpolated Method
Speed and Direction
The magnitude and direction of a reference current, generally taken as a surface current. The actual current at a
given Z level is then defined relative to this reference current by a current profile.
The direction specified is the direction the current is progressing - for example, 0 and 90 mean currents flowing in
the X and Y directions, respectively.
The speed and direction can either be fixed, vary with simulation time or be given by an external function.
Profile
A current profile may be defined by specifying factors and rotations at various depths, relative to reference. At each
Depth in the table the current speed is the reference current speed multiplied by the Factor for that depth; the
Direction is the reference direction plus the rotation specified. Current speed and direction are interpolated
linearly between the specified levels. The current at the greatest depth specified is applied to any depth below this,
w
System Modelling - Data and Results, Environment
225
for example when a sloping seabed is specified. Similarly, the current at the least depth specified is applied to any
depth above this.
Negative factors can be used which allow you to model reversing currents.
Note: OrcaFlex interpolates rotations over the shortest route. For example if consecutive rows in the
table specify rotations of 350 and 10 then the program interpolates passing through 355, 0 and
5.
If you prefer to enter current speeds and directions directly, rather than using a reference current and reference-
relative profile, simply set the reference current speed to 1 and the reference direction to 0.
Data for Power Law Method
Speed at Surface and at Seabed
The current speed at the still water level and at the seabed level.
Note: Speed at Seabed cannot be greater than Speed at Surface.
Direction
When using the power law current method, the current direction is the same at all levels. The direction specified is
the direction the current is progressing, measured positive from the global X-axis towards the global Y-axis. For
example, 0 and 90 mean currents flowing in the X and Y directions, respectively.
Exponent
This determines how the current decays. With a smaller value, the decay is spread more evenly across the water
depth. With a higher value, the decay mostly occurs close to the seabed.
View Vertical Profile Graph, View Vertical Profile 3D View
The Vertical Profile Graph plots Z against current speed which can be useful to help visualise and check your vertical
current speed variation.
The Vertical Profile 3D View shows a 3D View with a number of arrows showing the current velocity vectors at a
range of depths. The vectors are non-dimensionalised. This means that you cannot use them to tell absolute current
speeds but the speed of the current at a particular depth can be compared relative to the speed at other depths. This
view is most useful for visualising and checking your current profile rotation data.
Horizontal Current Variation
Current speed variation with horizontal position can also be modelled. This is specified as a dimensionless
multiplicative factor. Where a variation of current speed with depth has been defined the factor will be applied at all
depths.
To neglect current speed variation with horizontal position this data item should be set to '~'. Using a numeric value
(e.g. 0.5) allows you to apply a scaling factor to the vertical current speed profile.
To model current speed variation with horizontal position you must define a Horizontal Variation Factor variable
data source. The horizontal variation factor is assumed to be constant in the direction normal to the axis.
Negative factors can be used which allow you to model reversing currents.
7.5.18 Wind Data
The Wind page on the Environment data form contains data for modelling wind. The wind data is used to calculate
wind loads on:
- Vessels - see Vessel Theory: Hydrodynamic and Wind Damping.
- Lines - see Line Theory: Hydrodynamic and Aerodynamic Loads.
- 6D Buoy Wings - see 6D Buoys: Wing Type Data.
Include wind loads on Vessels, Lines and 6D Buoy Wings
Specifies whether wind loads are included for Vessels, Lines and 6D Buoy Wings.
When new models are created in OrcaFlex wind loads are included on Vessels, Lines and 6D Buoy Wings - that is all
3 options are ticked.
System Modelling - Data and Results, Environment
w

226
These options are primarily intended to maintain compatibility with some older versions of OrcaFlex. Version 8.3
and earlier did not include wind loads on Lines or 6D Buoy Wings. When files produced with such versions are
loaded the options for Lines and 6D Buoy Wings are not ticked.
Air Density
The air density is assumed to be constant and the same everywhere.
Air Kinematic Viscosity
This is used to calculate Reynolds number. This value is fixed and cannot be edited.
Wind Direction
The direction specified is the direction in which the wind is progressing - see Direction and Headings. In all cases the
wind is unidirectional.
Wind Speed
Wind speed is assumed to be the same everywhere. The speed specified should be the value at an elevation of 10m
(32.8 ft) above the mean sea surface, since that is the height used by the OCIMF vessel wind load model. If you have
the wind speed V(h) at some other height h (in metres), then the wind speed V(10) at 10m can be estimated using
the formula: V(10) = V(h) (10/h)^(1/7).
You can choose to specify wind speed in various ways, by setting the Wind Type to one of the following.
Constant
The wind speed is then constant in time.
Random
The wind speed varies randomly in time, using a choice of either the American Petroleum Institute spectrum (API)
or the Norwegian Petroleum Directorate spectrum (NPD).
In both cases:
- The spectrum is determined by specifying the Mean Speed and the spectrum then determines the statistical
variation about that mean. The View Spectrum button shows a graph of the spectrum.
- The wind speed is modelled by a sum of a number of components. The components are sinusoidal functions of
time whose amplitudes and frequencies are chosen by OrcaFlex to match the spectral shape. OrcaFlex uses a
'equal energy' algorithm to choose the amplitudes and frequencies. This gives all the components the same
energy, and therefore the same amplitude, but their frequencies are chosen so that the components are more
closely spaced where the spectral energy density is high, and more widely spaced where the spectral energy is
low.
- You can specify the Number of Components to use. You should specify enough to give a reasonable
representation of the spectrum.
- The phases of the components are chosen using a pseudo-random number generator that generates phases
which are uniformly distributed. The phases generated are repeatable - i.e. if you re-run a case with the same
data then the same phases will be used - but you can choose to use different random phases by altering the Seed
used in the random number generator. This can be any integer in the range -2
32
to +2
32
-1.
- The View Components button gives a report of the components that OrcaFlex has chosen.
- The View Profile button shows the resulting wind speed time history, as a function of global time. If you want
to simulate a particular section of that time history then you can use the wind Time Origin to time shift that
section into the simulation period. See Time Origins for details.
Time History (Speed)
The wind speed variation with time is specified explicitly in a file. For details see Data in Time History Files. Linear
interpolation is used to obtain the wind speed at intermediate times.
Time History (Speed & Direction)
The wind speed and direction variation with time is specified explicitly in a file. For details see Data in Time History
Files. Linear interpolation is used to obtain the wind speed and direction at intermediate times.
w
System Modelling - Data and Results, Environment
227
Vertical Wind Variation
Wind speed variation with height above the mean water level (MWL) can also be modelled. This is specified as a
dimensionless multiplicative factor. This allows a vertical wind profile to be modelled.
To model vertical wind speed variation you must define a Vertical Variation Factor variable data source.
To neglect vertical wind speed variation this data item should be set to '~'. Negative factors can be used which allow
you to model reversing wind profiles.
View Profile
The View Speed Profile and View Direction Profile buttons display time history graphs showing the wind speed
and direction that will be used. The graphs cover the specified Duration, starting at the specified Start time. This
Start time, and the graphs' time axes, are both global times.
7.5.19 Drawing Data
This data allows you to control the drawing of the various components which make up the OrcaFlex Environment.
For a more general discussion of drawing in OrcaFlex see How Objects Are Drawn.
Sea Surface Pen
Determines how the sea surface, current direction arrow and wave direction arrows are drawn. The current
direction arrow is an arrow next to the view axes which points in the direction of the current. This arrow is only
drawn if the current speed is not zero and if the Draw Environment Axes preference is ticked. The wave direction
arrows are explained below.
Secondary Wave Direction Pen
When the Draw Environment Axes preference is ticked a wave direction arrow is drawn in the direction of the wave.
If there are multiple wave trains whose directions are not equal then a wave direction arrow is drawn in the
direction of each wave train. The first wave train uses the sea surface pen since it is regarded as the dominant one
for drawing purposes. All subsequent wave trains' direction arrows are drawn in the Secondary Wave Direction Pen.
Wind Direction Pen
Determines how the wind direction arrow is drawn. This is an arrow next to the view axes which points in the
direction of the wind. This arrow is only drawn if the wind speed is not zero and if the Draw Environment Axes
preference is ticked.
Seabed Pen
The seabed grid is drawn in this pen.
Seabed Profile Pen
If you are using a profile seabed then an extra grid line is drawn along each data point used to specify the profile.
This can be used to emphasise the seabed profile data.
Sea Surface and Seabed Grid Density
The density of the grid is specified in terms of the length of the scale bar on the 3D view; a density of d means that
there are d lines per scale bar length, so higher density values give a finer grid (but takes longer to draw).
Draw 3D seabed data points
This options allows you to omit 3D seabed data points from the wire frame drawing. This can sometimes be useful
for models with extremely large numbers of 3D seabed data points. Such models can take a very long time to draw
and drawing performance can be improved by omitting the drawing of the data points.
Shaded Drawing Sea Surface and Seabed Translucency
Controls how translucent the sea surface and seabed appear in the Shaded Graphics mode. A value of 0% gives a
solid surface and all objects behind the surface will not be visible. A value of 100% specifies transparency and leads
to a completely see-through surface.
System Modelling - Data and Results, Environment
w

228
7.5.20 External Functions
Parameters
This data item specifies the External Function Parameters, a free form multi-line text field which is passed to any
external function used by the Environment.
7.5.21 Results
Summary and Full Results
Results tables are available for the Environment reporting Wave length, Wave number, Ursell number and
theoretical Breaking wave height.
Time History, Statistics and Linked Statistics
For details on how to select results variables see Selecting Variables.
For Environment results you must specify the global X,Y,Z coordinates of the point for which you want results. A
value of '~' for the Z coordinate is interpreted as meaning the instantaneous sea surface elevation.
Results are for the sea conditions that apply during the simulation and therefore include the build-up of wave
motion during the build-up stage.
Elevation
The global Z-coordinate of the sea surface at the specified global X,Y position.
Velocity, X, Y, Z-Velocity,
Acceleration, X, Y, Z-Acceleration
The magnitude and global X,Y and Z components of the water particle velocity (due to current and waves) and
acceleration (due to waves) at the specified global X,Y,Z position. If the specified Z position is above the water
surface then zero is reported. If the specified Z is below the seabed then the value applicable at the seabed is given.
Current Speed and Current Direction
The speed and direction of the current at the specified global X,Y,Z position.
Wind Speed and Wind Direction
The wind speed and direction. Note that this does not depend on the specified global X,Y,Z position.
Static Pressure
The pressure due to the static head of water at the specified global X,Y,Z position.
Density
The density of the water at the specified global X,Y,Z position.
7.5.22 Wave Scatter Conversion
Introduction
The wave scatter conversion tool converts a scatter table of sea states to a scatter table of regular (i.e. individual)
waves. The conversion method uses the formula of Longuet-Higgins, 1983. This gives the joint probability density of
individual waves in a random sea. This probability density is determined by the first 3 spectral moments m0, m1
and m2 using the formula of Longuet-Higgins, 1983. Full details of the calculations involved are given in the theory
section.
One of the most useful features of the tool is the ability to create batch script and fatigue analysis files corresponding
to the calculated regular wave scatter table.
As an alternative you can input directly the regular wave scatter table. This allows you to take advantage of the
automatic export of batch script and fatigue analysis files.
The wave scatter conversion tool is run by selecting the Wave Scatter Conversion command from the OrcaFlex
Calculation menu. It is essentially a self-contained sub-program within OrcaFlex, with its own menus, data and
output. Any OrcaFlex process active in the main window is paused until the wave scatter form is closed and the
wave scatter conversion tool has no effect on existing OrcaFlex data.
w
System Modelling - Data and Results, Environment
229
File Menu commands
The commands on the file menu allow you to save, and then reload, the data relating to the wave scatter conversion.
New
Clears previously entered Wave Scatter data and resets data to default values.
Open
Open a Wave Scatter file (.sct).
Save
Save the data to the currently selected file name (shown in title bar of the window).
Save As
This is the same as Save, but allows you to specify the file name to save to.
Most Recent Files List
List of the most recently used files. Selecting an item on the list causes the file to be loaded. The size of the list can be
adjusted from the Preferences form.
Exit
Closes the wave scatter form.
Data
The wave scatter conversion tool requires the following data. This data can be saved to a file.
Regular Wave Scatter
If Calculated from irregular wave scatter is selected then the regular wave scatter table is derived from a random
sea state scatter table using the formula of Longuet-Higgins, 1983. Full details of the calculations involved are given
in the theory section.
If User specified is selected then the regular wave scatter table is input directly. This option is useful where the
regular wave scatter table is pre-determined but you still want to take advantage of the automatic export of batch
script and fatigue analysis files.
Units
You can select the units of length to be used for the wave scatter data.
Sea State Table
These data specify the random sea state scatter table. If the Regular Wave Scatter option is User specified then
these data are not required.
Spectral Form
All the sea states are assumed to be of the same spectral form which can be either JONSWAP or ISSC.
Note: The Longuet-Higgins, 1983 method is valid only for narrow-banded spectra. Thus the Ochi-Hubble
and Torsethaugen spectra are not available for this type of conversion.
Spectral Parameters
If you select the JONSWAP spectral form you have 3 options for specifying the spectral parameters: Automatic,
Partially Specified or Fully Specified. This setting applies to all sea states.
Sea States
You must specify the spectrum for each sea state in your scatter table.
If you have selected the ISSC spectral form then you enter Hs and one of Tz, Tp or fm.
If you have selected the JONSWAP spectrum the required parameters depend on the selected parameter option:
System Modelling - Data and Results, Environment
w

230
- For Automatic parameters you set Hs and Tz and the program calculates and reports Tp and fm.
- For Partially Specified parameters Tz, Tp and fm are tied together, so setting any one of them sets the other
two to match. You must also set Hs.
- For Fully Specified parameters Tp and fm are tied together, so setting one of them sets the other to match. The
program calculates and reports Hs and Tz. You must also set Gamma, Alpha, Sigma1 and Sigma2.
Number of Occurrences
For each sea state in your scatter table you must also specify the number of occurrences of that sea state. This data
is required to determine the relative likelihood of occurrence of each sea state.
Normally this data comes from a sea state scatter table where it is usually presented in parts per thousand.
Regular Waves (scatter table calculated from irregular wave scatter table)
These data specify how the regular wave scatter table is discretised into bins.
Wave Heights, Wave Periods
These are the regular wave heights and wave periods that you wish to analyse. OrcaFlex automatically constructs
bins around these values. The output from the wave scatter conversion tool includes a table listing these bins.
Total Duration
This is the total duration to be covered by the regular wave scatter table.
Occurrence threshold
Some of the bins in the regular wave scatter table can have very small occurrence values. In order to reduce the
amount of computation time required to analyse all the load cases it is customary to ignore such bins. Any bin which
has an occurrence value lower than this threshold will be ignored. If you do not wish to ignore any bins then you
should set the threshold to 0.
Regular Waves (user specified regular wave scatter table)
These data specify a complete regular wave scatter table.
Number of bins
The number of bins in the regular wave scatter table.
Wave Height, Wave Period, Number of Occurrences
These are specified for each bin in the regular wave scatter table.
Output
To perform the wave scatter conversion you simply click the Show Regular Wave Scatter Table button which is
found on the Regular Waves page. This command is also available from the Action menu. Note that this button is not
available if you have a user specified regular wave scatter table.
The output is presented in a spreadsheet window which, like all such windows in OrcaFlex, can be saved as an Excel
file. The spreadsheet is made up of the following sheets:
Sea State Table
This sheet contains the input data which specified the sea state scatter table.
Regular Wave Bins
The regular wave height and wave period bins are listed here.
Regular Wave Scatter Table
This sheet contains the main output from the wave scatter conversion - a table listing the number of occurrences of
waves in each regular wave bin. Any bins which have occurrences below the occurrence threshold are omitted.
This sheet also displays the total number of bins and the total probability covered by the table. This latter value
provides an important check that your bins extend far enough along the wave height and period axes. If the value is
significantly less than 1 then your bins need to be extended.
w
System Modelling - Data and Results, Environment
231
Batch Script
Once you have obtained the regular wave scatter table you will usually want to generate a regular wave simulation
file for each regular wave bin. The Export Batch Script button can be used to write an OrcaFlex batch script file to
automate the generation of these simulation files. Alternatively the Create Script Table Spreadsheet button can be
used to create a script table spreadsheet which can be pasted into an OrcaFlex Excel spreadsheet.
To use these options you need to specify the following things.
Base Case File Name
The name of an OrcaFlex data file on which all the load cases are to be based. This data file should specify a regular
wave. The batch script file sets the wave height and period together with the simulation duration.
If you have already saved the wave scatter data then relative paths can be used when locating this file.
Simulation File Name Template
Each load case simulation file (corresponding to a single regular wave bin) is given a name in the batch script file.
These names are based on this template. Special format strings can be used to customise the simulation file names
as follows:
- %N will be replaced with the load case number. Each load case is assigned a unique number.
- %H will be replaced with the wave height for that load case.
- %T will be replaced with the wave period for that load case.
The default value of the template is "Case #%N, H=%H, T=%T" and this will lead to simulation files named, for
example: "Case #01, H=0.5, T=3.sim", "Case #02, H=0.5, T=5.sim" and so on for all load cases.
Note: You do not need to use all 3 format strings in your template. However, you must use enough of
them to make the simulation file names unique. OrcaFlex will display an error message if the
simulation file names are not unique.
Batch script load case action
- If Run and save simulation is selected then the batch script will be written using the Run command. This
option should be checked if you plan to generate all the load cases on a single machine.
- If Save Data file is selected then the batch script will be written using the SaveData command. This option is
intended for use with Distributed OrcaFlex. When run, the script produces an OrcaFlex data file for each regular
wave load case and these load cases can then be submitted to Distributed OrcaFlex.
Simulation Duration
Specifies the duration of the Build-up Stage and Stage 1 for each load case simulation file in the batch script. Because
different load cases have different wave periods these data are specified as multiples of that wave period.
Override base case log interval and Target number of log samples per wave period
These data allow you to set the simulation log interval for each load case simulation file by specifying the number of
log samples in each wave period. This allows load cases with longer wave periods to use a coarser logging interval
than for those with shorter wave periods and hence reduce the sizes of the simulation files.
Fatigue
Having generated a regular wave simulation file for each regular wave bin you will commonly want to perform a
fatigue analysis. Clicking the Export Fatigue Analysis File button produces an OrcaFlex fatigue analysis file.
This file lists each load case together with the corresponding number of occurrences for that load case. The file
produced is not complete and other data, such as the S-N curve data, will need to be input. However, it provides a
good starting point for performing the fatigue analysis.
The Fatigue Line Name data item can be used to specify the corresponding fatigue analysis data item.
Theory
Notation
Let the list of sea state spectra and associated durations be denoted Zl and Dl respectively, for l = 1, , k where k is
the number of sea states.
System Modelling - Data and Results, Environment
w

232
Note that the sea state duration is only used to specify the distribution of sea states. The probability of occurrence of
sea state q is given by P(Zq) = Dq / l Dl. From this formula it can be seen that the absolute values of Dl are not
important; rather it is their relative values which are significant.
Regular wave bins
The specified regular wave heights and periods are denoted Hi for i = 1, , m and Tj for j = 1, , n, respectively. These
wave heights and periods are ordered to be strictly increasing.
The wave height bins are denoted by [Hi
lower
, Hi
upper
] for i = 1, , m. The first bin is taken to be
[H1
lower
, H1
upper
] = [0, (H1+H2)/2].
It is clearly important that 0 is contained in the bin. However this also means that H1 may not fall in the middle of
the bin. This should not matter provided that the bin is small enough. The last bin is taken to be
[Hm
lower
, Hm
upper
] = [(Hm-1+Hm)/2, Hm + (Hm-Hm-1)/2]
so that Hm falls in the middle of the last bin.
Finally the other bins are chosen to be
[Hi
lower
, Hi
upper
] = [(Hi-1+Hi)/2, (Hi+Hi+1)/2]
for i = 2, , m-1.
The wave period bins [Tj
lower
, Tj
upper
] for j = 1, , n are chosen in an analagous fashion.
We now have mn individual wave height and period bins which we denote by Bij for i = 1, , m and j = 1, , n. Each
bin Bij represents individual waves whose heights and periods fall in the ranges [Hi
lower
, Hi
upper
] and [Tj
lower
, Tj
upper
]
respectively.
Joint probability for individual waves
This section is based on Barltrop and Adams section 6.6.3. Following their lead we use the formula of Longuet-
Higgins, 1983. This gives the joint probability density p(R, S, Z) of individual waves in a given random sea state as
follows:
p(R, S, Z) = L()exp(-R
2
{1 + [1 - 1/S]
2
/
2
}).2R
2
/(S
2
)
where
Z = spectrum of given random sea state,
mi = i
th
spectral moment of Z,
Tm = m0/m1,
Tz = (m0/m2)
1/2
,
S = T/Tm,
Hrms = Hs/2,
R = H/Hrms,
= (Tm
2
/Tz
2
- 1)
1/2
and
L() = 2 / (1 + {1+
2
}
-1/2
).
Individual wave scatter
For each sea state Zl we can calculate the probability of occurrence of each individual wave height and period bin,
denoted by P(Bij, Zl) as follows:
P(Bij, Zl) = p(R, S, Zl) dS dR
where
the integral is evaluated over the region Ri
lower
R Ri
upper
, Sj
lower
S Sj
upper
,
Ri
lower
= Hi
lower
/ Hrms,
Ri
upper
= Hi
upper
/ Hrms,
Sj
lower
= Tj
lower
/ Tm and
Sj
upper
= Tj
upper
/ Tm.
w
System Modelling - Data and Results, Solid Friction Coefficients Data
233
Thus, the probability of occurrence P(Bij ) of each individual wave height and period bin is calculated as follows:
P(Bij) = l P(Zl) P(Bij, Zl)
OrcaFlex does not report these probabilities; instead it reports the total number of occurrences Oij for each bin Bij .
This is given by Oij = P(Bij) Dtotal / Tj where Dtotal is the total duration as specified on the Regular Waves page.
7.6 SOLID FRICTION COEFFICIENTS DATA
This data is used to specify friction coefficients for contact between Elastic Solids and Lines, 3D Buoys and 6D Buoys.
Because each Elastic Solid can come into contact with any number of Lines and Buoys, and vice versa, the
specification of this data is necessarily more complex than that for the seabed friction coefficients.
Note: Friction for contact with elastic solids is only included during dynamics.
The data comprises three tables as follows:
- The Line Types table defines friction coefficients for contact between Lines and Elastic Solids.
- The 6D Buoys table defines friction coefficients for contact between 6D Buoys and Elastic Solids.
- The 3D Buoys table defines friction coefficients for contact between 3D Buoys and Elastic Solids.
Line Types table
The table contains a user-defined number of rows specifying friction coefficients and each row has the following
data:
Line Type and Shape
The specified friction coefficients will be used for contact between the specified shape and any node which uses the
specified line type.
The Line Type can be specified as "all line types". Any node in the model, irrespective of the line type it is based on,
will use the specified friction coefficients when in contact with the specified shape. Similarly the Shape can be
specified as "all shapes".
Friction Coefficients
Normal and axial friction coefficients. If the axial coefficient is set to '~' then the normal friction coefficient is used
for all directions of motion.
For full details of the friction calculation see Friction Theory.
6D Buoys table and 3D Buoys table
These tables are entirely analogous to the Line Types table. Instead of Line Type you specify 3D Buoys or 6D Buoys
and there is only a single friction coefficient because Buoy friction in OrcaFlex is isotropic.
How the data are interpreted
For the most part it should be clear how the data are interpreted. The exception to this statement is when multiple
rows specify friction coefficients for the same elastic solid and contacting object. For example consider the table
below:

Figure: Solid Friction Coefficients Line Types data table
If a node which uses "Line Type1" comes into contact with "Shape1" then OrcaFlex has two choices for friction
coefficient since this particular contact satisfies both rows of the table. OrcaFlex deals with this ambiguity by
choosing the more specific combination, that is the second row which specifies "Line Type1".
A row with named line type and named shape is the most specific combination and the friction coefficients from
such an entry will always be chosen over any other entries.
System Modelling - Data and Results, Vessels
w

234
A row with "all line types" and "all shapes" is the least specific combination and other entries will always be chosen
over this.
The other possibilities are:
1. Rows with "all line types" and a named shape.
2. Rows with a named line type and "all shapes".
OrcaFlex regards such rows as equally specific. Accordingly the program does not allow you to have rows of both
type 1 and 2 in the same table.
Similarly if there are multiple rows with identical Line Type and Shape entries then the program will issue a error
message. This is because OrcaFlex has no way of choosing one set of friction coefficients over another.
If no friction coefficients are specified for a particular combination of Line Type and Shape then no friction will be
modelled. For example, with the data specified in the figure above, any contact between nodes and any shape other
than "Shape1" will not include friction effects.
The data in the 6D Buoys table and the 3D Buoys table are interpreted in exactly the same way.
7.7 VESSELS
A Vessel is used to model a ship, floating platform, barge, or similar rigid body. A vessel's primary motion can be
prescribed (by prescribed motion. or by a Time History file) or calculated (using first order wave load Response
Amplitude Operators (RAOs) and/or second order Quadratic Transfer functions (QTFs)); its superimposed motion
(i.e. superimposed onto the primary motion) may be defined by a set of displacement RAOs and/or other harmonic
motions, or by a Time History file.
vertex 3
vertex 5
edge joining
3 to 5
pitch
z (heave)
y (sway)
x (surge)
V
yaw
roll

Figure: Vessel Model
Each vessel has a Vessel Type that determines its RAO and drawing data. To illustrate this, consider a model of a
pipe being towed by two identical tugs. This is modelled by creating a vessel type called 'Tug' and then creating two
vessels, each of type 'Tug'. The drawing data (defining the tug outline) are data of the Tug vessel type, since they
apply to both tugs. Similarly, the RAOs are data of the vessel type, since again they are the same for both tugs. On the
other hand the two tugs differ in their positions and prescribed motion, so these are properties of the individual
vessel objects.
w
System Modelling - Data and Results, Vessels
235
Note: The vessel also has extra drawing data - this is to allow you to set up vessel-specific drawing. For
example the lead tug may have a special tow-point fitting that you want to draw. When the vessel
is drawn, OrcaFlex first draws the vessel type wire frame and then draws the vessel wire frame.
These two wire frames can have different colours, so you can highlight application-specific
drawing.
The vessel is defined relative to a right-handed system of local vessel axes Vxyz, where:
- V is the vessel origin for this vessel type. This is chosen by the user when the vessel type is set up. However note
that if you specify that the vessel type has symmetry then the vessel origin must be placed on the plane of
symmetry or at the centre of circular symmetry; see Vessel Types: Conventions for details.
- Vx, Vy and Vz must be the directions of surge, sway and heave, respectively, for this vessel type. Note that these
directions must therefore be the directions to which the RAOs apply.
Points on the vessel, for example where cables or risers are connected, are then defined relative to these vessel axes.
These points then move with those axes as the vessel moves and rotates relative to the global axes, and OrcaFlex
calculates these motions automatically.
The vessel is drawn, in 3D views of the model, as a "wire frame" of user-specified vertices and edges. This allows a
simple visual check that amplitudes, phases etc. are consistent with the applied wave. The vessel wire frame can also
be used to do a visual check for interference between lines and vessel structure. As with all points on the vessel, the
vertices are defined relative to the vessel axes Vxyz.
7.7.1 Vessel Data
Name
Used to refer to the Vessel.
Type
Specifies the Vessel Type. The Vessel Types button allows you to view and edit the Vessel Type Data.
Draught
Specifies which set of RAOs to use from the specified vessel type. See Draughts.
Length
Specifies the length of this vessel. The default value '~' means that this vessel is the same length as the vessel type. If
you specify a length that differs from the vessel type length, then OrcaFlex will scale all the vessel type's data to
allow for the scaling factor VesselLength / VesselTypeLength. This is useful if you have data for a 70m ship, for
example, but want to use a 50m ship that is otherwise very similar.
The scaling is done using Froude scaling (see Rawson and Tupper). Froude scaling scales all items of data by a factor
that depends on the units of that data. If R = ratio of vessel length to vessel type length, then the scaling factor
applied is as follows:
- All lengths are scaled by R.
- All masses (and added masses) are scaled by R
3
.
- All times are scaled by R
0.5
.
Data items with other units are scaled by writing the units in terms of the fundamental units of mass, length and
time, and then applying the above factors. For example force data has units equivalent to Mass*Length/Time
2
, so
force data is scaled by (R
3
).(R) / ((R
0.5
)
2
) = R
3
. Dimensionless items such as translational RAOs (surge, sway, heave),
QTFs and phase angles are unchanged by the scaling process, but note that Froude scaling does apply to the periods
(or frequencies) specified for RAO and QTF data. Note also that rotational RAOs (roll, pitch, yaw) are often given in
dimensional terms (degrees per metre) and these also scale.
These scaling rules are the same as those used in deriving full scale ship performance from physical model tests, and
are correct if the vessel is a perfect scaled replica of the vessel type in all respects.
Warnings: If the vessel does not scale uniformly in all dimensions, then this type of scaling introduces errors
and should not normally be used. Instead, accurate data specific to this vessel should be obtained.
System Modelling - Data and Results, Vessels
w

236
However, for ships in head and stern seas the RAO scaling errors may be acceptable, since the RAOs
for these wave directions depend mainly on vessel length. For other cases the RAO scaling is likely
to be poor, so OrcaFlex issues a warning if scaling is used and the wave direction is not close to a
head or stern sea.
Initial Position and Orientation
These specify the vessel's static position relative to the global axes. The Initial Position defines the position of the
vessel origin V. The Initial Orientation defines the orientation of the vessel axes Vxyz as three rotations, Heading,
Trim and Heel. The static orientation of Vxyz is that which results from starting with Vxyz aligned with the global
axes and applying the Heading rotation about Vz, then the Trim rotation about Vy and finally the Heel rotation about
Vx.
If the vessel is not included in the static analysis then this Initial Position is taken to be the static position of the
vessel. If the vessel is included in the static analysis, then this Initial Position is used as an initial estimate of the
vessel position and the statics calculation will move the vessel from this position iteratively until an equilibrium
position is found.
Note: The vessel Z coordinate can only be changed by editing on the vessel data form. Dragging in the Z
direction with the mouse is prevented.
Warning: If you have included any harmonic motion on the vessel (see Harmonic Motion) then the phases of
the harmonic motions will normally depend on the vessel Initial Position, so if you change the
Initial Position you may need to change the harmonic motion phases accordingly.
Calculation Data
The following settings (on the Calculation page on the vessel data form) control how the vessel's static position and
dynamic motion are determined.
Included in Static Analysis
You can control whether the OrcaFlex static analysis calculates the static equilibrium position of the vessel, or
simply places the vessel in the user-specified initial position.
OrcaFlex first places the vessel at the initial position and orientation specified by the user. If Included in Static
Analysis is set to None then OrcaFlex leaves the vessel in this user-specified position. This is not necessarily an
equilibrium position.
If Included in Static Analysis is set to 3 DOF then OrcaFlex starts from the user-specified position and adjusts the
vessel's X, Y and Heading until an equilibrium position is reached. Note that only these 3 free degrees of freedom of
the vessel (X, Y and Heading) are included in the calculation. The other three degrees of freedom (Z, Heel and Trim)
are assumed to be constrained and so are left at the values specified by the user. This means that the Z component of
resultant force may be non-zero in the equilibrium position. Likewise the resultant Heel and Trim moments may be
non-zero in the equilibrium position.
If Included in Static Analysis is set to 6 DOF then OrcaFlex starts from the user-specified position and adjusts all
six degrees of freedom until an equilibrium position is reached. In this case, all of the X, Y, Z forces and Heel, Trim,
Heading moments will be zero at the equilibrium position.
Note: If multiple statics are being performed on the vessel then no equilibrium calculation is performed
on the vessel and its placement is determined by the multiple statics data. Other vessels in the
model are included in the static analysis as specified by their own data.
Dynamic Analysis
The motion of a vessel during the dynamic analysis can be specified in a variety of ways. OrcaFlex allows the vessel
motion to be made up of two parts, called the Primary motion and the Superimposed motion. Broadly, the Primary
motion is aimed at modelling the steady or low frequency motion of the vessel, whereas the Superimposed motion is
aimed at modelling the higher frequency motion, such as that generated by waves.
As an example, consider a ship being driven under power along a specified course. In the absence of waves it moves
steadily along its course and this would be modelled by the Primary motion. But when waves are present the
primary motion is augmented by wave-generated motion that would often be modelled in OrcaFlex as
Superimposed motion specified by RAOs. OrcaFlex superimposes this latter motion on the primary motion to give
the total combined motion of the vessel.
w
System Modelling - Data and Results, Vessels
237
You can specify the Primary and Superimposed motions in a number of ways, as follows. See examples below of how
these options can be used.
Primary Motion
The Primary motion determines what OrcaFlex refers to as the primary position of the vessel. It can be one of the
following options.
- None. In this option there is no primary motion and the primary position of the vessel remains fixed at the
position determined by the static analysis.
- Prescribed. This option allows you to drive the vessel around the sea surface, for example to model the vessel
moving station during the simulation. The vessel's speed and course is specified using the data on the
Prescribed Motion page on the vessel data form.
- Calculated (3 DOF). In this option OrcaFlex calculates the vessel primary motion in only 3 degrees of freedom
(surge, sway, yaw) based on the included loads plus loads from any lines or other objects that are attached to
the vessel. There is no primary motion in the other 3 degrees of freedom (heave, roll, pitch). The added mass
and damping matrices of the vessel type must be specified, plus the data for all the included loads.
- Calculated (6 DOF). In this option OrcaFlex calculates the vessel motion in all 6 degrees of freedom, based on
the included loads, plus loads from any lines or other objects that are attached to the vessel. The added mass,
damping, stiffness and equilibrium position of the vessel type must be specified, plus the data for all the
included loads.
- Time History. In this option the user specifies the primary motion in a time history file that defines, as a
function of time, the vessel Primary X, Primary Y, Primary Z, Primary Rotation 1, Primary Rotation 2 and
Primary Rotation 3. See the vessel's Time History data.
Superimposed Motion
The Superimposed motion is applied as an offset from the position given by the primary motion. It can be one of the
following options.
- None. In this option there is no offset and the vessel position is equal to the primary position at all times.
- RAOs + Harmonic. In this option the vessel's position oscillates harmonically about the primary position. The
harmonically varying offset comes from two sources. Firstly, if waves are present and you specify non-zero
displacement RAOs for the vessel type, then the offset will include the wave-generated harmonic motions
specified by those RAOs. Secondly, the vessel's superimposed offset also includes any harmonic motions that
you specify on the Harmonic Motions page on the vessel data form.
- Time History. In this option the user specifies the offset in a time history file that defines the vessel Surge,
Sway, Heave, Roll, Pitch and Yaw as a function of time. See the vessel's Time History data.
Typical Examples of Primary and Superimposed Motion
Here are some typical examples of how primary and superimposed motion can be combined to achieve various
things.
- Primary motion set to None and superimposed motion set to RAOs + Harmonic can be used to model a simple
steady (e.g. moored) vessel whose motion is due to the 1st order wave effects only.
- Prescribed or Time History primary motion can be used to model a vessel being driven over a predetermined
course, and the superimposed motion set to RAOs + Harmonic to model the 1st order wave induced motion.
- Calculated (3 DOF) primary motion can be used to model the low frequency slow drift of a vessel in the
horizontal plane (due to 2nd order wave loads, wind and current drag, etc.), with the superimposed motion set
to RAOs + Harmonic to model the superimposed 1st order wave induced motion.
- Calculated (6 DOF) primary motion can be used to model the whole motion of a vessel, optionally including 1st
and 2nd order wave loads, current and wind drag loads, applied loads, and always including loads from any
attached lines or other objects. In this case the superimposed motion would normally be None, since all motion
has already been accounted for in the primary motion, and the displacement RAO data would therefore not be
used.
- Time History primary motion (or Time History superimposed motion but not usually both) can be used to
completely specify the motion of a vessel.
System Modelling - Data and Results, Vessels
w

238
Included Effects
You can choose which vessel loads are included and which are ignored by ticking the corresponding checkboxes. If a
box is checked then that load will be calculated and applied to the vessel, and its value will be available as a result. If
a box is not checked, then that load will not be calculated and it will be taken as zero.
Note: Loads that are included will only affect the vessel motion if the primary motion is set to one of the
Calculated options. Otherwise the vessel motion is specified, for example by prescribed motion or by
superimposed motion based on the displacement RAOs.
Prescribed Motion
The prescribed motion data only applies if the vessel's Primary Motion is set to Prescribed. It enables you to drive
the vessel around the sea surface along a predetermined path, by specifying how the vessel's primary position and
heading change during the simulation.
The vessel is driven by specifying, for each stage of the simulation, the velocity (speed and direction) of the primary
position and the rate of change of the heading.
Warning: The Prescribed Motion facility can cause discontinuities of velocity at stage boundaries and these
may cause transients in the system. OrcaFlex issues warnings at the start of the simulation if the
data specifies a discontinuous velocity.
Speed of Motion
For each simulation stage the speed of the motion can be specified as either a Constant Speed or a Speed Change.
If Constant Speed is selected then that speed applies throughout the stage.
If Speed Change is selected then the speed is incremented linearly by the specified amount during the stage. For
example, an increment of 1m/s during a stage of length 10 seconds causes an acceleration of 0.1m/s
2
to be applied
throughout the stage, so that if the vessel starts at rest then at the start of the next stage the vessel is travelling at
1m/s.
Note: Negative speeds can be specified.
Direction of Motion
For each simulation stage the direction of the motion can be specified as either relative to the Global X direction or
relative to the Vessel heading.
The direction value is interpreted as an azimuth. So, a value of 90 relative to the Global X direction would result in
the motion being in the global Y direction. Likewise, if the vessel's heading was 130 and the direction of motion was
50 relative to the Vessel heading then the motion would be an azimuth of 130 + 50 = 180 relative to global, that
is in the global -X direction.
Note: The direction of motion is not restricted to be in the same direction as the vessel heading.
Rate of Turn
In addition to varying the velocity of the mean position, you can specify a Rate of Turn for each stage. This is the
angle change per second to be applied to the vessel's heading throughout the stage.
If the Direction of Motion is specified relative to the Vessel heading and the Rate of Turn is non-zero, then the vessel
velocity direction varies during the stage. In addition, if the direction is 0 relative to Vessel heading then the vessel
velocity, whilst varying, is always in the Vessel heading direction.
If the direction is specified relative to the Global X direction then the vessel velocity direction is not affected by the
Rate of Turn.
Harmonic Motion
The Harmonic Motion page (on the vessel data form) only applies if the vessel's superimposed motion is set to RAOs
+ Harmonic. It allows you to specify a number of harmonic motions of the vessel.
The harmonic motions are in addition to any wave-generated motion specified by the RAO data, so if you only want
the wave-generated motion then you should set the number of harmonic motions to zero.
Each harmonic motion is a single-period sinusoidal motion of the vessel, specified by giving:
w
System Modelling - Data and Results, Vessels
239
- the Period of the harmonic motion; this applies to all 6 degrees of freedom,
- the Amplitude and Phase of the motion for each of the 6 degrees of freedom of the vessel. If you are modelling
slow drift, then note that slow drift normally only applies to surge, sway and yaw, in which case the amplitudes
for heave, roll and pitch should be set to zero.
Note: The harmonic motion amplitudes (unlike the RAO responses of the vessel) are not specified relative
to a wave amplitude - they are specified directly in length units (for surge, sway and heave) or
degrees (for roll, pitch and yaw).
Similarly, the phases are not specified relative to the phase of a wave - they are the phase lags from the global time
origin T=0 until the maximum harmonic motion occurs. More precisely, the phase that should be specified for the
harmonic motion is given by
360 ((Tmax / P) mod 1)
where P is the period of the harmonic motion and Tmax is the global time at which you want the maximum of the
motion to occur.
Warning: Harmonic motions can be used to model pre-calculated vessel slow drift. If you do this, then if you
move the vessel's Initial Position in the wave direction, or if you change the data for the waves
(other than changing the simulation time origin), then you will normally also then have to adjust
the phases of the slow drift. This is because such changes affect the global time at which a
particular part of the wave train will reach the vessel and hence will also affect the global time at
which maximum slow drift motion is achieved.
Time History
The Time History pages (on the vessel data form) only apply if the vessel's primary or superimposed motion, or
both, are set to Time History. It allows you to specify the motion by giving a time history file. To do this:
- On the Calculation page set the primary motion or superimposed motion data item (or both) to Time History.
- Create a tab-delimited text file containing the time history motion you want, as described below.
- On the appropriate Time History page, setup the time history data as described in Data in Time History Files.
Contents of Time History File
The time history file must contain a time column and columns for all 6 degrees of freedom of the vessel. For primary
time history motion these are Primary X, Primary Y, Primary Z, Primary Rotation 1, Primary Rotation 2 and Primary
Rotation 3, measured relative to the global axes.
For superimposed time history motion the degrees of freedom that must be specified are Surge, Sway, Heave, Roll,
Pitch and Yaw. They are measured relative to the primary position of the vessel, as specified by the vessel's primary
motion.
For details of how rotations are applied, see order of application of rotations.
The time values in a vessel time history file need not be equally spaced. The units used for all the columns must be
the same as those used in the OrcaFlex model, so the time values must be in seconds and angles in degrees.
For further details of the file format see Time History Files.
Notes: If there is any wave-generated motion present in a vessel's time history motion then the OrcaFlex
wave data needs to match the wave that generated that motion. If you have suitable data for the
wave elevation then you can use that to specify the wave by time history. This can be done either in
a separate time history file for the wave or else in an extra column in the vessel's time history file.
The position and velocity specified by a time history file for the start of the simulation (i.e. for
SimulationTime = -BuildUpDuration) will not, in general, match the static state from which
OrcaFlex starts the simulation. To handle this OrcaFlex uses ramping during the build-up stage to
smooth the transition from the static state to the position and motion specified in the time history
file.
Applied Loads
You can optionally include applied loads on a vessel.
System Modelling - Data and Results, Vessels
w

240
You can apply to the vessel external Global Loads that do not rotate if the vessel rotates. These are specified by
giving the components of Applied Force and Applied Moment relative to global axes. These components can be
constant, vary with simulation time or be given by an external function. If the vessel rotates then the loads do not
rotate with it.
In addition, you can specify external Local Loads that do rotate with the vessel. These are specified by giving the
components of Applied Force and Applied Moment relative to vessel axes. Again these components can be constant,
vary with simulation time or be given by an external function. If the vessel rotates then the loads do rotate with it.
These are suitable for modelling thrusters, for example.
In both cases the Point of Application of the load is specified by giving its x,y,z coordinates relative to vessel axes.
Note: Applied loads will only affect vessel static position if the corresponding degree of freedom is
included in the static analysis, and will only affect the motion if the Primary Motion is set to one of
the calculated options which includes the degree of freedom.
Multiple Statics
The offsets for multiple statics calculations are specified here. Offsets are from the vessel's initial position and are
specified by giving a range of azimuth and offset values. For example:

The Azimuths table determines which directions are to be analysed. The Offsets table specifies how far in the given
direction the vessel is to be placed. With the above data, the offsets analysed by the multiple statics calculation are
as illustrated by the dots in the diagram below:
w
System Modelling - Data and Results, Vessels
241
0m 20m 40m 60m 80m 100m
180 deg
135 deg
90 deg
45 deg
0 deg
Vessel Initial
Position
X
Y

Figure: Example Offsets
A diagram showing the selected offsets is drawn on the Vessel Offsets data form, to help visualise which offsets will
be analysed.
Drawing
Vessels are drawn as wire frames defined in the data as a set of Vertices and Edges. The Vertices are defined by
giving their coordinates relative to the vessel axes Vxyz. The Edges are lines drawn between two vertices.
For shaded graphics views, by default, the vessel is drawn using a solid, filled-in shape based on the vertices and
edges. As an alternative you can use the vertices and edges to define a frame like structure. If the edge diameter is
'~' then that edge will be used to build a filled in shape, otherwise that edge is drawn as a cylinder with the specified
diameter. Note that you can use a mixture of edge diameters (some defined, some set to '~') to combine both filled
in and framework shapes.
You can define wire frame drawing data in two places - for the vessel and also for its vessel type. The vessel is drawn
by first drawing a wire frame based on the vertices, edges and pen specified for its vessel type (see the vessel types
data form). Then a further vessel-specific wire frame may be drawn, using any vertices, edges and pen that you
specify on the vessel's data form.
This allows you to specify a wire frame drawing of the basic vessel type, and then optionally add to it (possibly in a
different colour) a wire frame drawing of some equipment that is specific to that vessel. If the vessel length differs
from the vessel type length, then the vessel type wire frame is scaled accordingly. Note that either, or both, of these
wire frames can be empty (i.e. no edges) if desired.
The drawing data do not affect the mathematical model in any way - they are purely for drawing 3D views. The
vertices and edges follow the motions of the vessel, and thus may be used to improve understanding of the motion
of the model. They can also be used to represent a spar or other equipment attached to the vessel, so that you can
then look for clashing with other parts of the system. For example during a simulation replay you can adjust the
viewpoint to look exactly along the edge of interest, and check visually if other parts of the model pass through it.
Shaded Drawing
By default, for shaded 3D Views, vessels are drawn using the wire frame data.
The wire frame drawing data comprises vertices and edges, but OrcaFlex needs a solid surface for the shaded
graphics representation. OrcaFlex uses the following procedure to generate this surface from the wire frame
vertices and edges.
System Modelling - Data and Results, Vessels
w

242
First any edges with specified diameters (i.e. diameters not equal to '~') are drawn as cylinders. This allows you to
use such edges to visualise parts of the structure that are not solid, e.g. crane boom latticework. These edges are
now handled and are excluded from the remainder of the procedure.
The remaining edges are used to partition the vertices into sets of connected vertices. Two vertices are deemed to
be connected if there exists a path of edges between the two vertices.
Finally, for each set of connected vertices, the smallest convex hull enclosing the set is drawn.
This algorithm does not always generate the shaded drawings that you might expect. Consider the following two
wire frame vessels. When drawn in wire frame mode they look the same, but in shaded mode they differ.

Figure: Wire Frame and Shaded Drawing
For the green vessel the superstructure and the hull share vertices and so all vertices are connected. This results in a
single convex hull for all vertices being drawn. In the red vessel, the superstructure and hull do not share vertices
w
System Modelling - Data and Results, Vessels
243
and so there are two distinct sets of connected vertices. This results in two separate convex hulls and a better
representation.
Alternatively the object can be represented by an imported 3D model by specifying the Shaded Drawing File. This
must be a Direct X format file, usually with the .x file extension. If you use a relative path then the path will be taken
as relative to the folder containing the OrcaFlex file.
The Browse button allows you to specify the Shaded Drawing File quickly and also provides quick access to the
Orcina sample drawings via the Navigate to Orcina sample drawings button.
The Use Culling option is normally selected since it can provide a useful performance benefit. However, in order to
work it requires that the triangles defined in the .x file have their outward facing directions defined correctly. In the
unusual situation where the outward facing directions are not defined correctly then the .x file will not display
correctly. If this happens then typically sections of the model will be missing when drawn by OrcaFlex. Disabling the
Use Culling option resolves this problem.
Draw Size is provided to allow you to scale the drawing. All directions are scaled equally to arrange that the longest
side in the drawing is drawn to the specified Draw Size. This longest side is calculated by first fitting the smallest
possible cuboid around the vertices of the shaded drawing (these are defined in the .x file). This cuboid is aligned
with the shaded drawing's local axes. Then the length of the longest side of this cuboid is found.
Specify a value of '~' to display the drawing using the absolute coordinates as specified in the .x file.
Note: If you use a value of '~' for Draw Size then OrcaFlex uses the coordinates in the .x file directly. If
these coordinates use a different length units system from your OrcaFlex model then you should
specify the units used in the .x file by including an auxiliary file called AdditionalInformation.txt.
Examples of this can be found in the sample shaded drawings provided by Orcina.
Shaded Drawing Origin is provided because the shaded drawing and the vessel may have different origins. The
Shaded Drawing Origin defines the origin of the shaded drawing with respect to the vessel's local axis system.
Similarly Shaded Drawing Orientation allows you to reorient the shaded drawing to match the vessel's axis
system.
External Functions
Parameters
This data item specifies the External Function Parameters, a free form multi-line text field which is passed to any
external function used by the Environment.
Properties Report
The Vessel properties report is available from the popup-menu on the data form. It reports the following:
Length
The length of the vessel.
Wave direction relative to vessel
The relative wave direction. If there is more than one wave train then the direction of the first wave train is used.
Statics force accuracy, Statics moment accuracy
These are only reported if the vessel is included in statics.
The static analysis searches for an equilibrium position for the vessel - that is a position for which the resultant
force and moment on the vessel is zero. We refer to the resultant force and moment as the out of balance load.
Because computers have limited numerical precision the static analysis cannot always find a configuration where
the out of balance load is exactly zero. OrcaFlex accepts a position as a static equilibrium position if the largest out of
balance load component is less than the statics accuracy.
The Statics force accuracy equals Tolerance * vessel typical force and the Statics moment accuracy equals Tolerance
* vessel typical moment. The vessel typical force and moment are based on the forces and moments applied by
connected objects.
Reducing the Tolerance value will give a more accurate static equilibrium position, but will take more iterations.
OrcaFlex may not be able to achieve the Tolerance specified if it is too small, since the computer has limited
numerical precision.
System Modelling - Data and Results, Vessels
w

244
Note: The statics accuracies change during the static analysis because the forces and moments applied
by connected objects vary with the position of the vessel. The statics accuracies reported in Reset
state may be quite different from those used for the final equilibrium position and should be
treated as rough approximations to the true statics accuracies.
7.7.2 Vessel Types
Each vessel has a vessel type that determines a lot of its data and which is defined on the vessel types form. You can
define a number of different vessel types and each type is given a name, which is then used on the vessel data form
to specify the type of that particular vessel.
Two different vessels can have the same type. To illustrate this, consider a model of a pipe being towed by two
identical tugs. This is modelled by creating a vessel type called 'Tug' and then creating two vessels, each of type
'Tug'. The RAOs, for example, are data of the 'Tug' vessel type, since they apply to both tugs. On the other hand the
two tugs differ in their positions and any prescribed motion, so these are properties of the individual vessel objects.
You don't have to use all, or even any, of the vessel types you define. For example you can set up a data file that
defines a number of vessel types but has no vessels. Such a file can then act as a library of vessel types that can be
imported into other OrcaFlex data files.
Vessel Type Data
For each Vessel Type you can enter data for several different draughts, each draught having a user-specified Name.
Each vessel in the model must specify (on its vessel data form) which draught to use. It is not possible to use
different draughts at different times during the same simulation.
Some of the vessel type data apply to all draughts, but a lot of the data is draught-dependent and so separate data is
defined for each defined draught. See the following list of the main classes of vessel type data.
- Geometry and drawing data. Applies to all draughts.
- Conventions define the meaning of any RAO and wave drift QTF data. The conventions apply to all draughts.
- RAO data. Separate RAOs are specified for each different draught. There is a Check RAOs facility that provides
RAO graphs that help detect errors.
- Hydrodynamic and Wind Damping data. Separate values are specified for each different draught.
- Wave Drift data. Separate values are specified for each different draught.
- Inertia and Damping data. Separate values are specified for each different draught.
Default Vessel Type Data
When you create a new vessel type, it is given initial default data that corresponds to a tanker. You should replace
this with accurate data for the vessel you are modelling.
If your vessel is similar to the default data tanker then you might find the default data useful if you have no better
data available. However note that the default vessel tanker has a significant heave resonance in beam seas at 7s
period.
The default data was obtained as follows.
- The default structure data, displacement RAOs, wave load RAOs, wave drift QTFs, stiffness, added mass and
damping data all come from an NMIWave diffraction analysis of a 103m long tanker in 400m water depth. The
tanker used in this analysis had the following properties: Breadth 15.95m, Draught 6.66m, Transverse GM
1.84m, Longitudinal GM = 114m, Block Coefficient 0.804. The diffraction analysis used 8% extra damping in roll
about CG.
- The default hydrodynamic and wind drag coefficients are based on graphs given in the standard OCIMF book.
Note that the OCIMF book gives different coefficients for different vessel types and draughts. The default vessel
type data are approximate averaged deepwater coefficients, and they have been rounded to only 1 or 2
significant figures.
- The hydrodynamic and wind drag areas and area moments are set for the above 103m tanker. The wind drag
areas are based on an assumed average upperworks height of 12m for surge and 9m for sway.
- The origin for these default data is on the centreline at midships and at the mean water level.
w
System Modelling - Data and Results, Vessels
245
OrcaFlex automatically Froude scales vessel type data to the vessel length you specify. So this default data might
sometimes still be useful if your vessel is a different length to the tanker described above, but is otherwise similar.
Structure
Vessel Type Length
The length to which the vessel type RAO and drawing data apply. This may be left unspecified ('~'). If a value is
specified, then it may be used to scale the vessel type data to the length of the vessel. See Vessel Length for details.
The remaining data on the Structure page (on the vessel type form) are only used if the vessel Primary Motion is set
to Calculated (3 DOF) or Calculated (6 DOF). Note that these data are draught-specific.
Mass and Moments of Inertia
The vessel type's mass and its moments of inertia about axes through the CG in the vessel x, y and z directions. This
should include the structural and contents mass and inertia, but not the added mass.
Centre of gravity (CG)
The coordinates of the vessel type's centre of mass, relative to vessel axes.
Conventions
The conventions page (on the vessel types data form) contains settings that define the meaning of the RAO, QTF, and
(in the case of the direction conventions) stiffness, added mass and damping data. This enables you to enter these
data directly from many other programs without having to convert the values between different sets of conventions.
Instead you can tell OrcaFlex the conventions that apply to those data and OrcaFlex will then automatically allow for
those conventions when it uses the data.
Warning: In general, the conventions apply to all RAO and QTF data. You cannot mix data with differing
conventions in the same model (but see rotational RAOs below).
Although RAOs are simple enough in principle, a number of complications make them notoriously error-prone and
difficult to check in practice. The main issues are:
- Different coordinate systems.
- Different definitions of phase angle and rotational RAOs.
- Use of vessel symmetry, e.g. to obtain motions in seas from the port side given data for seas from the starboard
side.
OrcaFlex provides easy ways of handling these problem areas.
The use of differing coordinate systems and conventions by different suppliers of data is the main source of
confusion. It is vital that you know the conventions that apply to the RAO tables that you are using. Unfortunately,
not all RAO tables fully document the conventions used: see RAO data checklist for help finding out what
conventions apply to your data and see Checking RAOs to check that the conventions are set correctly.
Translational RAO Conventions
Translational displacement RAOs are always non-dimensional (e.g. metres/metre or feet/foot).
Translationall load RAOs are always given as force per unit wave amplitude (e.g. kN/m).
Rotational RAO Conventions
Roll, pitch and yaw displacement RAOs may be specified using one of the following three possible conventions.
- As rotation angles per unit wave amplitude. The values are dimensional, e.g. in degrees/metre or radians/foot.
- As rotation angles per unit maximum wave slope. Maximum wave slope is the true maximum slope of the
wave surface, which is .Waveheight/Wavelength radians (= 180.Waveheight/Wavelength degrees). The values
are non-dimensional, which can be thought of as either degrees/degree or radians/radian, which of course are
equivalent.
- As rotation angles per unit wave steepness. Wave steepness is a commonly used angular measure of a wave,
defined by steepness = Waveheight/Wavelength radians (= (180/).Waveheight/Wavelength degrees). The
values are again non-dimensional, i.e. either degrees/degree or (equivalently) radians/radian, but of course the
RAOs are numerically larger (by a factor of ) than those using the maximum wave slope convention.
System Modelling - Data and Results, Vessels
w

246
In each case, the angles of rotation may be given in either degrees or radians; the convention on the data form
should be specified accordingly. For the two non-dimensional cases, the units (degrees or radians) of the max wave
slope or wave steepness must be the same as those for the angles of rotation. Note that, so long as the units are
consistent in this way, the actual numerical values for these non-dimensional RAOs are the same regardless of
whether the unit selected is degrees or radians.
Rotational load RAOs must be given as moment per unit wave amplitude (e.g. kN.m/m), and rotational QTFs (i.e. the
yaw QTF) are non-dimensional. Therefore, the degrees/radians switch and the unit amplitude / steepness /
maximum slope switch do not apply to load RAOs. This is the exception to the above rule that the conventions apply
to all RAOs and QTFs.
Warning: If rotational displacement RAOs are given relative to wave slope or steepness, then OrcaFlex
(internally) converts them to be relative to wave amplitude using the deep water wavelength, not
the wavelength for the water depth specified in the model.
Waves are referred to by
The RAO and QTF data can be specified by period in seconds, or by frequency in radians/second or Hertz (cycles per
second).
Note: If you import RAO or QTF data from a text file, the setting specified here will be overridden by that
defined in the text file - see Importing RAO Data and Importing QTF Data for details.
RAO Phases
The RAO Phase convention is specified by 3 data items:
1. Phases are either leads or lags.
2. Phases are specified either in degrees or radians.
3. The phase defines the time at which the maximum positive value of the motion occurs. This is relative to the
time at which the wave crest, trough, zero up-crossing or zero down-crossing passes the phase origin.
Note: Wave Drift QTFs are not affected by this convention, since they are entered without any phase
information.
Directions
You must specify the directions that correspond to positive motion or load in the RAO and QTF data, and in the
stiffness, damping and added mass matrices. The most common convention is as given by the default OrcaFlex
vessel type: a right-handed system with Z upwards and clockwise rotations being positive.
Symmetry
You can specify symmetry of the vessel type. OrcaFlex will then use the user-specified RAO/QTF tables for wave
directions on one side of the symmetry plane to derive tables for the reflected directions on the other side of the
plane.
The Symmetry can be set to:
- None: The vessel type has no symmetry. The directions specified must cover all the wave directions used in the
simulation.
- XZ plane (or YZ plane): This specifies that the XZ (or YZ) plane through the RAO origin is a plane of symmetry.
For each direction given OrcaFlex uses symmetry to derive tables for the reflected direction on the other side of
the plane.
- XZ & YZ planes: This specifies that both the XZ and YZ planes through the RAO origin are planes of symmetry.
For each direction given OrcaFlex uses symmetry to derive tables for the reflected directions in the other 3
quadrants.
- Circular: This specifies that the vessel has circular symmetry about the RAO origin. RAO/QTF tables can only be
given for one wave direction, and OrcaFlex uses symmetry to derive tables for all other directions.
Warning: If you specify some planes of symmetry then the RAO origin must be on all the planes of symmetry.
Or if you specify circular symmetry then the RAO origin must be at the centre of symmetry.
w
System Modelling - Data and Results, Vessels
247
RAOs
OrcaFlex uses two different types of RAO (response amplitude operator): Displacement RAOs and Wave Load
RAOs.
Displacement RAOs are specified on the RAOs page on the vessel type data form. They define the 1st order motion
of the vessel in response to waves of given period and amplitude. They are only used if the vessel superimposed
motion is set to RAOs+Harmonic. In the dynamic analysis the vessel moves harmonically, in all 6 degrees of freedom,
about its primary position. These harmonic motions are specified by giving the RAO amplitudes and phases, for all
six degrees of freedom, usually for a range of wave periods and directions. For further information see RAOs and
Phases.
Wave load RAOs are specified on the Load RAOs page on the vessel type data form. They define the 1st order wave
force and moment on the vessel due to waves of given period and amplitude. They are only used if the 1st order
wave loads are included for the vessel and they only affect the motion if the vessel primary motion is set to one of
the calculated options.
The 2 types of RAOs are specified in very similar ways, using the following data.
RAO Origin
The RAO origin is the point on the vessel whose motion is defined by the RAOs. The RAO origin is specified by giving
its coordinates with respect to the OrcaFlex vessel axes (not the directions specified on the Conventions page). It is
commonly, but does not need to be, at the centre of gravity. Different draughts can use different RAO origins.
RAO Phase Origin
The RAO phase origin is the point on the vessel that the RAO phase values are relative to. It is specified by giving its
x and y-coordinates with respect to the OrcaFlex vessel axes (not the directions specified on the Conventions page).
The phase values given in the RAOs must be relative to the time that the wave crest or trough (depending on the
RAO phase conventions specified) passes the specified RAO phase origin.
Often the phase origin is the same as the RAO origin, i.e. the phases are relative to the time the crest or trough passes
the point whose motion the RAOs define. In this case the phase origin can be set to '~', meaning 'same as RAO
origin'. But note that some programs (one example being Moses) generate RAOs where the phase origin is not
necessarily the same as the RAO origin.
RAO Data
RAO data can be specified for a number of different wave directions relative to the vessel, using the OrcaFlex
direction convention. This relative wave direction is labelled on the page at the bottom of the RAO table. It is the
direction in which the wave is progressing, measured positive from the vessel x-direction towards the vessel y-
direction.
To change the wave direction for one of the RAO tables, select that table and edit the Selected Direction. To insert a
new wave direction after an existing direction, select the existing direction's page and click the Insert Direction
button. Similarly, the Delete Direction button deletes the currently selected direction.
For each direction, the RAO table covers a range of wave periods or frequencies, as specified in the conventions data.
The periods/frequencies need not be entered in order - they will be sorted before use.
In the case of a circular symmetric vessel, RAOs are specified for only one wave direction - OrcaFlex will derive
RAOs for all other directions.
RAO Interpolation/Extrapolation
You must provide RAO tables that include or span the wave direction(s) involved in the simulation. If RAOs are
required for a wave direction for which an RAO table has not been supplied, then OrcaFlex will use linear
interpolation to obtain an RAO table for that direction.
For regular wave analysis, RAO data is only needed for the appropriate wave period, or for wave periods either side
of that period. For random sea simulations, RAO data should be specified for a wide enough range of wave periods to
cover the spectrum. The View Wave Components button (on the Waves page of the environment data form) reports
the wave frequencies that OrcaFlex will use to represent the spectrum.
Note: If the vessel length differs from the vessel type length then the RAO periods specified on the vessel
type form are Froude scaled, and it is these Froude scaled periods that must cover the actual wave
period(s).
System Modelling - Data and Results, Vessels
w

248
Linear interpolation is used if RAOs are required for a period that is between the periods given in the table. We
strongly recommend that your RAO tables provide data for periods that include or span all the wave periods that
will be involved in the simulation. However if RAOs are required for a period outside the range of periods given then
OrcaFlex will use linear extrapolation; a warning is given if this occurs.
You can avoid the need for extrapolation by providing RAOs for periods zero and Infinity. The RAOs for the zero
period limit must be all zero (since no object can respond to an infinite frequency wave). For the Infinity period limit
the RAOs of a free-floating vessel can be derived from the knowledge that the vessel must follow the surface in a
sufficiently long wave. See RAO Quality Checks for details.
Warning: Interpolation is likely to be poor if the interval involved is large. We therefore recommend that the
RAO directions defined cover all the wave directions that will be used and in steps of 30 or less.
Complex valued Interpolation and Extrapolation
Note that RAO interpolation and extrapolation is done using the complex value representation of the RAOs, in which
the RAO with amplitude A and phase lag P is represented by the complex number:
C(A,P) = A.(cos(P)+i.sin(P)).
For example, given RAOs (A1,P1) for direction D1 and (A2,P2) for direction D2, the interpolated RAO for the
intermediate direction D=(D1+D2)/2 is (A,P), where:
C(A,P) = ( C(A1,P1) + C(A2,P2) ) / 2
This gives better results than interpolating the amplitude and phase separately.
OrcaFlex first interpolates on direction, to obtain an RAO table appropriate to the wave direction. It then
interpolates (or extrapolates) that table to obtain the RAO for the appropriate wave period. Both of these stages are
done using complex valued interpolation or extrapolation.
Obtaining the data
All of the above data can generally be obtained from the results of a diffraction program. OrcaFlex can import these
data from the output files of some specific programs (AQWA and WAMIT) and from generic text files with OrcaFlex-
specific markers added. There are two different ways to do this import.
The easiest and most reliable way is to import all the hydrodynamic data for an appropriate vessel modelled in
AQWA or WAMIT, via the Import Hydrodynamic Data button on the Vessel Types data form. The Vessel Type
conventions will be set in accordance with those used by the diffraction program.
Alternatively, you may use the Import RAOs button to import only the RAO data. This may be useful if your data
come from a different source. Note, however, that RAO and phase origins are not imported and the Vessel Type
conventions are not set by this method.
Stiffness, Added Mass and Damping
Reference Origin
The origin to which the stiffness, added mass and damping matrices all refer, specified as coordinates with respect
to the OrcaFlex vessel axes.
Equilibrium Position
The Z above mean water level and the heel and trim (relative to global axes) of the reference origin when the vessel
is in hydrostatic equilibrium for this draught. Note that Z above mean water level (rather than Z relative to global
axes) is specified, so that the vessel type data is independent of mean water level or choice of position of global
origin.
Added Mass, Damping and Hydrostatic Stiffness
All these matrices must be specified with respect to axes through the given Reference Origin in the conventions
directions, i.e. with respect to the directions specified on the conventions page of the vessel types form.
For details of the units, and the theory used, see Vessel Theory: Stiffness, Added Mass and Damping.
w
System Modelling - Data and Results, Vessels
249
Hydrostatic Stiffness
The hydrostatic stiffness matrix is only specified for heave, roll and pitch directions. It is applied in Statics only if the
vessel's Static Analysis includes 6 DOF, and in dynamics only if the vessel's Primary Motion is set to "Calculated (6
DOF)".
Added Mass and Damping
The added mass and damping matrices are specified in all 6 degrees of freedom. They are always applied to the
vessel, but will only influence the motion of the vessel if the Primary Motion is set to one of the calculated modes.
Added Mass and Damping Method
If you choose Constant for the Added Mass and Damping method, then single-valued added mass and damping
matrices will be used.
If you choose Frequency Dependent, then you may specify a number of added mass and damping matrices, each
pair corresponding to a particular given frequency or period. Whether you specify period or frequency values is
determined by the Waves are referred to by setting on the Vessel Type Conventions page.
If you use the Constant (i.e. frequency independent) method, then you should specify values that are appropriate to
the frequency of vessel motion you expect. To calculate slow drift motion of the vessel it is normally appropriate to
enter low frequency values. Otherwise values corresponding to the dominant wave frequency are perhaps more
appropriate. Clearly, if the vessel experiences a wide range of frequencies, the frequency-dependent method is more
appropriate and would be expected to give better results.
If you use the Frequency Dependent method then you need to specify both the added mass and damping matrices,
and for a range of frequencies. Also. the added mass and damping data should be consistent in the sense that they
obey the Kramers-Kronig relations - see Consistent Added Mass and Damping for details.
Cutoff Time
When you use frequency-dependent added mass and damping, OrcaFlex applies the frequency-dependent data in
the time domain by calculating and applying the vessel's Impulse Response Functions (IRF). See Vessel Theory:
Impulse Response and Convolution for details.
Realistic IRFs decay to zero with increasing time lag. So to improve the calculation speed OrcaFlex truncates the
Impulse Response Function at the time lag specified by the Cutoff Time. The IRF is assumed to be zero for time lags
greater than the Cutoff Time.
Larger Cutoff Time values might give more accurate results but require more calculation. In order to choose the
Cutoff Time, you may find it useful to use the Report Vessel Response window to view the graphs of the components
of the IRF. From the graphs you could decide the time lag at which the function has decayed sufficiently close to zero
as to have little or no effect on the calculation.
Note 1: Frequency-dependent added mass and damping can be quite time-consuming to compute. For this
reason, it is not calculated for vessels which do not have calculated primary motion: in this case,
the added mass and damping load is simply set uniformly to zero.
Note 2: The damping matrix given by a diffraction program models wave radiation damping. However
there is another, often more important, source of damping, namely wave drift damping. See
Damping Effects on Vessel Slow Drift. Wave drift damping can be modelled in OrcaFlex by
adjusting the diagonal entries in the damping matrix.
Note 3: In OrcaFlex 8.5a, and earlier releases, added mass, damping and stiffness matrices were specified
with respect to OrcaFlex vessel axes. Whereas in OrcaFlex 8.5b, and later releases, they are
specified with respect to the conventions directions. We have made this change since the data
typically comes from the same source as the RAOs (e.g. from a diffraction program) and the
conventions directions specify the directions that the RAOs are defined with respect to.
When you use OrcaFlex 8.5b (or later) to open a file written by one of those earlier releases then
OrcaFlex automatically changes the data to be with respect to the conventions directions. (The
effect of the change is that the (i,j) element of the matrix changes sign if the conventions directions
are opposite to the OrcaFlex vessel axes directions for degree of freedom i or degree of freedom j,
but not both. There is therefore no change unless some of the conventions directions are opposite to
the OrcaFlex vessel directions, in which case some of the off-diagonal terms change sign.)
System Modelling - Data and Results, Vessels
w

250
Because OrcaFlex automatically handles the change for you, there is no need for you to take any
action, assuming that your data was previously specified correctly with respect to OrcaFlex vessel
directions. However we recommend that you check that your data is now correctly specified with
respect to the conventions directions. If the data has come from the same source as the RAOs, and
the conventions directions specify the directions used by that source, then the matrices in OrcaFlex
should match those from the source, with no changes.
Obtaining the data
All of the above data can generally be obtained from the results of a diffraction program: OrcaFlex provides various
facilities for their import.
The easiest and most reliable way is to import all the hydrodynamic data for an appropriate vessel modelled in one
of the packages supported by OrcaFlex (presently AQWA and WAMIT). This is done via the Import Hydrodynamic
Data button on the Vessel Types data form. As much as is possible of the relevant data will be imported, and the
Vessel Type conventions will be set in accordance with those used by the diffraction program.
The output from other packages may be imported from text files with the addition of appropriate markup to
indicate the data to OrcaFlex. To do so (and only with the frequency-dependent method selected), click on the
Import Data button and select the appropriate filename.
Hydrodynamic and Wind Damping
Hydrodynamic and wind damping loads on a vessel are loads due to the relative velocity of the fluid past the vessel.
They can be modelled using the data on the Hydrodynamic Damping and Wind Damping pages on the vessel type
data form. If the length of the vessel differs from that of the vessel type then the vessel type data will be scaled
accordingly.
These loads are an important source of damping when modelling vessel slow drift. For a discussion of the various
damping sources see Damping Effects on Vessel Slow Drift.
The velocity used to calculate the drag loads is the relative velocity of the fluid past the vessel. This includes any
current or wind velocity and the vessel velocity due to any primary motion. The drag forces and moments due to
translational motion are modelled using the standard OCIMF method. The drag forces and moments due to any
vessel rate of yaw are modelled using yaw rate drag load factors. For details of how the loads are calculated, see
Vessel Theory: Drag Loads.
Warning: The current and wind loads are based on theory for surface vessels and are not suitable for
submerged vessels.
Load Origin
The coordinates (relative to vessel axes) of the point on the vessel at which the hydrodynamic or wind drag loads
are calculated and at which they will be applied. This need not be at the vessel origin. It is normally best to place the
load origin at the centre of the vessel.
The velocity used in the hydrodynamic drag load calculation is the current velocity at the load origin, minus any
velocity of the load origin due to primary motion of the vessel. Note that if the load origin is above the water surface
then the current velocity used is that at the water surface.
The velocity used in the wind load calculation is the wind velocity (as specified on the Wind page on the
environment data form), minus any velocity of the wind load origin due to primary motion of the vessel. Note that
the wind velocity specified should be that at 10m above mean water level, since that is the height used by the OCIMF
vessel wind load model (see Wind Speed for more details).
Load Symmetry
Specifies what symmetry the vessel type has below (for hydrodynamic damping) or above (for wind damping) the
water line, about the load origin. For XZ and YZ symmetry, OrcaFlex will use the symmetry to derive load
coefficients for extra directions generated by reflection in the specified vessel axes planes. For circular symmetry,
you must specify coefficients for one direction only and OrcaFlex will use symmetry to derive coefficients for all
other directions.
Note: The symmetry for hydrodynamic drag, wind drag and RAOs (see RAO Symmetry) need not be the
same, though of course the symmetry for hydrodynamic drag would normally be the same as that
for RAOs.
w
System Modelling - Data and Results, Vessels
251
Areas and Area Moment
The surge and sway areas and yaw area moment that will be used to calculate the current or wind loads. For details
see Vessel Theory: Drag Loads.
Coefficients
Load coefficients are specified for the vessel surge, sway and yaw directions. They depend on the direction of the
current or wind, relative to the vessel (direction 0 meaning from astern, 90 meaning from starboard, etc.).
OrcaFlex uses any symmetry specified to derive coefficients for other directions and then uses linear interpolation
to derive coefficients for intermediate directions.
Note: When the symmetry is XZ and YZ the yaw moments must be zero, so OrcaFlex forces zero yaw
coefficients in this case.
The View Coefficients button allows you to view the coefficients that will be used - the blobs on the graph show the
coefficients you have specified plus any that OrcaFlex has derived using reflection, and the curve shows the
interpolated coefficients that will be used for intermediate directions. You should specify sufficient directions to
define the shape of the curve and to cover the range of directions that the vessel will experience.
Yaw Rate Drag Factors (hydrodynamic damping only)
The yaw rate drag factors determine the yaw drag moment, and any surge and sway drag forces, that result if the
vessel has a non-zero rate of yaw.
For a slender ship, and if the load origin has been placed at the centre of the vessel, then the surge and sway drag
factors can usually be taken to be zero, and then yaw drag factor can be estimated based on the vessel length and
draught. See Drag Loads due to Yaw Rate for details.
Roll Damping (hydrodynamic damping only)
These coefficients allow you to include a roll damping moment that is proportional to the roll component of angular
velocity. Both linear and quadratic terms can be modelled. See Roll Damping for details.
Wave Drift Loads
The Wave Drift page on the vessel type form contains the Quadratic Transfer Functions (QTFs) that OrcaFlex uses to
calculate a wave drift load (sometimes called the slow drift load).
Note: The wave drift load is only calculated for a vessel if the Wave Drift Load (2nd Order) option is
checked in the list of vessel Included Effects, and will only affect the vessel motion if the vessel
primary motion is set to one of the Calculated options. See Modelling Vessel Slow Drift for details.
See Wave Drift Load Theory for details of how OrcaFlex calculates the wave drift loads.
QTF Origin
The QTF origin is the point on the vessel to which the QTFs apply. The wave drift loads are calculated based on the
wave conditions at this point and they are applied at this point. The QTF origin is specified relative to the OrcaFlex
vessel axes (not the directions specified on the Conventions page) and different draughts can use different origins.
There is no need to specify the z-coordinate of the point since the loads are calculated and applied only for the surge,
sway and yaw degrees of freedom.
Wave Drift QTFs
The QTF are specified in non-dimensional form. For translational QTFS the value specified is the wave drift force
from a wave of unit amplitude, divided by gL, where is the nominal sea density, g is the acceleration due to
gravity and L is the vessel length. For rotational QTFs the value specified is the wave drift moment from a wave of
unit amplitude, divided by gL
2
. For further details see Wave Drift Load Theory.
No phases are required because only the diagonal terms of the full QTF matrix are entered in OrcaFlex, and these
diagonal terms always have zero phase. OrcaFlex uses Newman's approximation to obtain the off-diagonal QTFs
from the diagonal QTFs specified. See Wave Drift Load Theory for details.
The way QTF data is entered in OrcaFlex has many similarities with RAO data. In particular:
- For each draught, QTF tables are specified for each of a number of wave directions, specified using the Orcina
direction convention. To insert a new table use the Insert Direction button and to delete a table select that
System Modelling - Data and Results, Vessels
w

252
table's page and then click the Delete Direction button. To change the direction associated with a table, select
that table's page and then edit the Selected Direction value.
- Some of the RAO conventions apply to the QTFs.
- If the vessel type has some symmetry (see the conventions page) then OrcaFlex automatically generates QTF
tables for all the reflected directions implied by that symmetry. You must provide QTF tables for enough
directions for OrcaFlex to have data (either user-specified or generated based on symmetry) for directions that
cover the wave directions the vessel will experience.
- Each QTF table consists of data for a range of wave periods or frequencies (depending on the convention
specified). You should provide data for periods that (after allowing for Froude scaling if the vessel length differs
from the vessel type length) cover the wave periods the vessel will experience.
Warning: The settings on the conventions page apply to all draughts and they apply to both the vessel type's
RAOs and to its wave drift QTFs. If your RAO and QTF data use different conventions you will
therefore need to transform your QTFs into the conventions of the RAOs (or vice versa) before using
them in OrcaFlex.
Obtaining the data
Wave drift QTF data can be imported into OrcaFlex, via the Import QTFs button, from text files from a variety of
different sources:
- AQWA or WAMIT output files
- NMIWAVE output files
- Generic text files.
Specific program output files
OrcaFlex can import QTFs directly from AQWA and WAMIT output files, as described under Importing
Hydrodynamic Data. Note, however, that in this case (using the Import QTFs button) the QTF origin is not imported
and the Vessel Type conventions are not set. You may also, depending on the way that you use this Vessel Type,
need to obtain RAOs and added mass and damping data for it. Note, however, that the conventions must be set
correctly and must be consistent across the different data.
All existing QTF data for the selected draught will be overwritten. If the units used in the data file differ from those
currently defined in OrcaFlex, then the RAOs will be scaled to the OrcaFlex units automatically. The QTFs will also be
adjusted automatically for the non-dimensional scaling used by OrcaFlex.
NMIWAVE files
NMIWAVE text output files may also be imported, with the addition of a line containing the string NMIWAVE Wave
Drift at the start of the file. Here is an example:
*** NMIWAVE Wave Drift Data ***
Scaled Tanker: Lpp, B, T (m) =310.90 ,48
0.31090E+03, -0.10000E+01, 0.10250E+04
45.00
1
0.50000E+01, 0.30000E-01
0.10000E+02, 0.10000E-02
0.15000E+02, 0.00000E+00
-0.10000E+01, 0.00000E+00
2
0.50000E+01, 0.90000E-01
0.10000E+02, 0.50000E-02
etc.
Note that NMIWAVE uses the ITTC conventions, which are surge +ve forward, sway +ve to starboard, heave +ve
down, roll +ve starboard down, pitch +ve bow up, yaw +ve bow to starboard. These are not set automatically on
importing these data. If your RAOs also use these conventions then they can be set on the Conventions page.
Otherwise you will need to modify the data to allow for convention differences.
The wave heading convention used by NMIWAVE is that wave heading is measured +ve clockwise when viewed
from above, and zero wave heading means a stern wave. This is the same as OrcaFlex uses, except that OrcaFlex
w
System Modelling - Data and Results, Vessels
253
measures +ve anti-clockwise. OrcaFlex automatically handles this by changing the sign of the wave headings when
an NMIWAVE file is imported.
OrcaFlex also automatically handles the conversion of NMIWAVE's dimensional data to the non-dimensional form
required. This conversion uses the vessel length given in the NMIWAVE data file to perform the scaling.
Generic text files
Standard format is similar to the text format used to import RAOs. Here is a simple example:
*** OrcaFlex QTF Start Data ***
Draught Transit
Direction 45
WP surge sway yaw
0.0 0.030 0.090 -0.006
5.0 0.030 0.090 -0.006
10.0 0.001 0.005 -0.002
15.0 0.000 0.001 -0.001
Infinity 0.000 0.000 0.000
*** OrcaFlex QTF End Data ***
The QTF format differs from that for RAOs in two ways: (i) the identifier line is OrcaFlex QTF Start Data instead of
OrcaFlex RAO Start Data, and (ii) the column headers are surge, sway, heave, roll, pitch and yaw instead of X, Y,
Z, RX, RY and RZ respectively. Otherwise, the format follows that for importing RAOs.
The example above only includes the horizontal degrees of freedom surge, sway and yaw. Data in this form is
common for vessels with large water plane areas, e.g. barges, tankers etc. If you do not specify heave, roll and pitch
QTFs then OrcaFlex will set them to 0 when the data is imported.
If you are importing data with all QTFs for 6 degrees of freedom then the above example can be extended in the
obvious way.
Drawing
Drawing Data
Each vessel of this type is drawn as a wire frame, based on vertices and representing the vessel type, plus a wire
frame representing vessel-specific features. See Drawing.
Edge diameter (used only for shaded drawing)
For shaded graphics views, by default, the vessel is drawn using a solid, filled-in shape based on the vertices and
edges.
As an alternative you can use the vertices and edges to define a frame like structure. If the edge diameter is '~' then
that edge will be used to build a filled in shape, otherwise that edge is drawn as a cylinder with the specified
diameter. Note that you can use a mixture of edge diameters (some defined, some set to '~') to combine both filled
in and framework shapes.
System Modelling - Data and Results, Vessels
w

254

Figure: Wire frames with different edge diameter. A value of '~' is used for the wire frame on the left
and a value of 1m is used for the wire frame on the right.
Shaded Drawing
By default, for shaded 3D Views, vessels are drawn using the wire frame data.
The wire frame drawing data comprises vertices and edges, but OrcaFlex needs a solid surface for the shaded
graphics representation. OrcaFlex uses the following procedure to generate this surface from the wire frame
vertices and edges.
First any edges with specified diameters (i.e. diameters not equal to '~') are drawn as cylinders. This allows you to
use such edges to visualise parts of the structure that are not solid, e.g. crane boom latticework. These edges are
now handled and are excluded from the remainder of the procedure.
The remaining edges are used to partition the vertices into sets of connected vertices. Two vertices are deemed to
be connected if there exists a path of edges between the two vertices.
Finally, for each set of connected vertices, the smallest convex hull enclosing the set is drawn.
This algorithm does not always generate the shaded drawings that you might expect. Consider the following two
wire frame vessels. When drawn in wire frame mode they look the same, but in shaded mode they differ.
w
System Modelling - Data and Results, Vessels
255

Figure: Wire Frame and Shaded Drawing
For the green vessel the superstructure and the hull share vertices and so all vertices are connected. This results in a
single convex hull for all vertices being drawn. In the red vessel, the superstructure and hull do not share vertices
and so there are two distinct sets of connected vertices. This results in two separate convex hulls and a better
representation.
Alternatively the object can be represented by an imported 3D model by specifying the Shaded Drawing File. This
must be a Direct X format file, usually with the .x file extension. If you use a relative path then the path will be taken
as relative to the folder containing the OrcaFlex file.
The Browse button allows you to specify the Shaded Drawing File quickly and also provides quick access to the
Orcina sample drawings via the Navigate to Orcina sample drawings button.
The Use Culling option is normally selected since it can provide a useful performance benefit. However, in order to
work it requires that the triangles defined in the .x file have their outward facing directions defined correctly. In the
System Modelling - Data and Results, Vessels
w

256
unusual situation where the outward facing directions are not defined correctly then the .x file will not display
correctly. If this happens then typically sections of the model will be missing when drawn by OrcaFlex. Disabling the
Use Culling option resolves this problem.
Draw Size is provided to allow you to scale the drawing. All directions are scaled equally to arrange that the longest
side in the drawing is drawn to the specified Draw Size. This longest side is calculated by first fitting the smallest
possible cuboid around the vertices of the shaded drawing (these are defined in the .x file). This cuboid is aligned
with the shaded drawing's local axes. Then the length of the longest side of this cuboid is found.
Specify a value of '~' to display the drawing using the absolute coordinates as specified in the .x file.
Note: If you use a value of '~' for Draw Size then OrcaFlex uses the coordinates in the .x file directly. If
these coordinates use a different length units system from your OrcaFlex model then you should
specify the units used in the .x file by including an auxiliary file called AdditionalInformation.txt.
Examples of this can be found in the sample shaded drawings provided by Orcina.
Shaded Drawing Origin is provided because the shaded drawing and the vessel type may have different origins.
The Shaded Drawing Origin defines the origin of the shaded drawing with respect to the vessel type's local axis
system. Similarly Shaded Drawing Orientation allows you to reorient the shaded drawing to match the vessel
type's axis system.
Vessel length scaling
If the vessel length and the vessel type length are different then the shaded drawing is scaled accordingly. This
scaling is applied in addition to the scaling of the shaded drawing specified by the Draw Size.
Importing Hydrodynamic Data
The Import Hydrodynamic Data button on the vessel types form enables the import of data, in the form of results
from common ship response calculation packages, into OrcaFlex. Presently, OrcaFlex can import data which has
been output by AQWA and WAMIT.
When you click this button, you will be prompted for the name of an AQWA or WAMIT results file. In each case,
OrcaFlex will attempt to import as much data as possible from the file to the appropriate data items on the vessel
types form, for the presently selected draught. These data are: displacement RAOs, load RAOs, QTFs, added mass
and damping, and hydrostatic stiffness. The vessel type conventions will also be set to match those of the imported
data. Mass & inertia and hydrostatic equilibrium position are not always output by these packages, but will be
imported by OrcaFlex if they are available. The remaining vessel type data are not typically calculated by such
programs, so will need to be obtained from another source. Any previously-entered OrcaFlex data for which there
are not any corresponding data in the imported file will not be changed.
If the import fails for any reason, OrcaFlex will report an error and reinstate the vessel type data to that which was
present before the import began. If the data in the file are ambiguous, OrcaFlex will prompt you for clarification. At
the end of the import process, OrcaFlex will warn you of anything noteworthy (for example if no QTFs were present
in the file, or if a damping matrix was non-symmetric).
Importing data from AQWA
AQWA results are output in a text file with a .lis extension. The data are in dimensional form.
Units
OrcaFlex first attempts to determine the units in use in the file, from the values of g (acceleration due to gravity) and
(water density), and the knowledge that the unit of time is the second. If this is successful, then OrcaFlex will
convert the data (if necessary) from the units in use in the file to the units of the OrcaFlex model. If the units cannot
be determined, or if they are a mixture of SI and US, OrcaFlex will be unable to convert the data in this way: in this
case, the raw data will be imported from the file unchanged and a corresponding warning will be issued.
Reference origins
All of the AQWA data have their reference origin at the vessel centre of gravity. So OrcaFlex sets the RAO origins,
QTF origin, and reference origin for stiffness, added mass & damping to the value of the centre of gravity given on
the vessel types Structure page. You will need to ensure that this value is appropriate before importing the AQWA
data. RAO phase origins, likewise, are at the vessel centre of gravity, so are set appropriately by OrcaFlex.
w
System Modelling - Data and Results, Vessels
257
Added mass and damping
AQWA outputs the whole 6x6 matrices for added mass and damping, but OrcaFlex uses only the upper right triangle
of each. You will receive a warning if any of these matrices, in the imported file, are significantly non-symmetric,
since OrcaFlex is unable to handle this.
Note: Frequency-independent added mass and damping are not imported. If you have such data, you
may wish to pre-process your AQWA file to add them to each frequency-dependent item before
importing into OrcaFlex.
RAOs
Displacement RAOs are imported in a straightforward way. Load RAOs are imported including the Froude-Krylov
contribution. Since AQWA and OrcaFlex use the same conventions for vessel headings, RAO (and QTF) directions are
read in directly and require no adjustment.
QTFs
Wave drift QTFs are presented non-dimensionally in OrcaFlex. The dimensional data in the imported file are
therefore scaled as part of the import process: see Wave drift QTFs for details of the scaling factors involved.
Stiffness and equilibrium position
The heave, roll and pitch components of the hydrostatic stiffness matrix are imported. Again, only the upper right
triangle is used, and a warning is issued if the AQWA data are non-symmetric. The Z-component of the equilibrium
position is imported. Since AQWA does not give the heel and trim values at the equilibrium position, these values are
set to zero: if necessary, you should edit these values yourself.
Note: AQWA may output the stiffness matrix twice, under the hydrostatic and hydrodynamic headings. If
so, and if the two matrices are not the same, a warning will be given and the 'hydrostatic' form will
be imported.
Mass and inertia
Mass and moments of inertia are imported, the latter from the diagonal elements of the inertia matrix output by
AQWA.
Importing data from WAMIT
WAMIT results are output in a text file with an .out extension. The data are almost all non-dimensional, the main
exceptions to this being g, acceleration due to gravity, and L, WAMIT's length scale which is used to non-
dimensionalise the data. Please note that OrcaFlex is unable to import WAMIT data representing multi-body
problems.
Units
The length unit in use in the file will be determined, if possible, from the value of g and the knowledge that the unit
of time is the second. If this is successful, then OrcaFlex will convert the data from non-dimensional to the units of
the OrcaFlex model, using WAMIT's length scale (converted to the length unit of the OrcaFlex model) and the
current OrcaFlex values of g (acceleration due to gravity) and (nominal water density), using the scaling factors
defined in the WAMIT user manual. If the length unit cannot be determined then the raw data will be imported from
the file unchanged and a corresponding warning will be issued.
Reference origins
All of the WAMIT data have their reference origin at WAMIT's vessel origin. OrcaFlex determine the position of this
origin, with respect to OrcaFlex's vessel origin, from the difference in the centre of gravity as given in the two
coordinate systems, and sets the RAO origins, QTF origin, and added mass & damping origin to have this value. (If
you choose the OrcaFlex vessel origin to be the same as the WAMIT vessel origin, then the coordinates of the centre
of gravity will coincide and the reference origins will all be zero).
In WAMIT, the phase origin is at the global origin, so the OrcaFlex RAO phase origins are represented by the
coordinates of the WAMIT global origin relative to the OrcaFlex vessel origin. We determine this by (i) expressing
the WAMIT global origin relative to the WAMIT vessel origin (i.e. in "body-fixed axes"), using the values of XBODY,
YBODY, ZBODY and PHIBODY in the WAMIT output file, and (ii) translating this value to be relative to the OrcaFlex
vessel origin, using the difference between the centres of gravity in the two systems.
System Modelling - Data and Results, Vessels
w

258
You will therefore need to ensure that the centre of gravity is set appropriately in OrcaFlex before importing the
WAMIT data.
Note: In some cases, WAMIT does not output the horizontal position of the centre of gravity. If so, then
OrcaFlex will warn you of this, and you will need to set these reference origins yourself.
Added mass and damping
WAMIT outputs added mass and damping as a list of (i,j) components. OrcaFlex imports these values, but uses only
the upper right triangle of each matrix. You will receive a warning if any of these matrices, in the imported file, are
significantly non-symmetric, since OrcaFlex is unable to handle this. Components for which an (i,j) value is not given
are assumed to be zero. The non-dimensional WAMIT values for added mass (a) and damping (b) are scaled to
dimensional (A,B respectively) values according to the formulae
Aij = L
k
aij
Bij = L
k
bij
where
k = 3 for i,j=1,2,3;
k = 4 for i=1,2,3, j=4,5,6 or i=4,5,6, j=1,2,3;
k = 5 for i,j=4,5,6 and
is the frequency in rad/s.
RAOs
Displacement RAOs are imported in a straightforward way. They are re-dimensionalised by multiplying by the
factor L
k
, k = 0 for i = 1,2,3; k = 1 for i = 4,5,6. WAMIT may calculate load RAOs in one of two ways, and either or both
methods (labelled "Haskind" and "Diffraction") may be present in the file. If both are given, OrcaFlex will prompt
you to choose one method and will import the data for that method only. The re-dimensionalising factor for load
RAOs is g L
k
, k = 2 for i=1,2,3; k = 3 for i=4,5,6. The RAO directions (also for QTFs) in OrcaFlex are relative to the
vessel, and are determined by subtracting the value of PHIBODY in the WAMIT input file (the vessel heading at rest)
from each of the values of wave heading, which are given in WAMIT with respect to global axes.
QTFs
Wave drift QTFs are presented non-dimensionally in OrcaFlex - see Wave drift QTFs for details of the scaling factors
involved. Note that the length used in this scaling is the OrcaFlex vessel type length, which may differ from the
WAMIT length scale. To import these data, therefore, OrcaFlex must re-dimensionalise them using the WAMIT
length scale L and then non-dimensionalise them again with OrcaFlex's vessel type length.
WAMIT may calculate QTFs in a number of different ways: Momentum Conservation, Pressure Integration, and
Control Surface. OrcaFlex is presently unable to import data resulting from the Momentum Conservation calculation,
so this method is disregarded. As with load RAOs, if data from more than one of the remaining methods is present,
then you will be prompted to choose just one of them.
Notes: WAMIT outputs QTFs for pairs of wave headings. OrcaFlex allows only unidirectional QTFs, so
imports only the data for which the two headings coincide.
WAMIT outputs QTFs as amplitude and phase pairs. OrcaFlex requires that the phase is zero, so
converts values with phase = 180 by negating the amplitude. If any phase is not 0 or 180 (to
within 2), OrcaFlex will report an error and the import will be stopped.
Stiffness and equilibrium position
The heave, roll and pitch components of the hydrostatic stiffness matrix are imported. The equilibrium position is
not specified by WAMIT, so you should edit this value yourself.
Mass and inertia
Mass and moments of inertia are not imported from WAMIT files. You should enter these data yourself.
Importing Added Mass and Damping Data
Added mass and damping matrices may be imported using the Import Data button on the vessel types form. Data
may be imported directly from AQWA or WAMIT output files, and with the addition of some markup text from
w
System Modelling - Data and Results, Vessels
259
Moses, Ariane/Hydrostar and Wadam output files. The form of this markup also allows for import of reasonably-
formatted 6x6 added mass and damping matrices from any generic text file.
Direct import from specific program output
OrcaFlex can import data directly from AQWA and WAMIT output files, as described under Importing
Hydrodynamic Data. Note, however, that in this case the reference origin is not imported and the Vessel Type
conventions are not set. You may also, depending on the way that you use this Vessel Type, need to obtain RAO and
QTF data for it, in which case the conventions must be set correctly and must be consistent across the different data.
All existing added mass and damping data for the selected draught will be overwritten. If the currently defined
OrcaFlex units differ from those used in the data file, then the imported data will be scaled to the OrcaFlex units
automatically.
Import from marked-up text files
With the addition of some tags indicating the start and end of the data, and others defining which vessel properties
should receive the imported data, data may be imported from the plain ASCII text files which are written by a
number of analysis programs in addition to AQWA and WAMIT. The form of these tags is given below for each such
program. Common to each is a line of the form "Draught [DraughtName]" specifying the vessel type draught into
which the data are to be imported. If DraughtName already exists, the existing added mass and damping data will
be overwritten; if not, then it will be created and all the other data will be set to those of the OrcaFlex default vessel
type. Moses output
Added mass and damping may be output in two forms by Moses:
(i) Diagonal elements only
The standard Moses output file may contain tables of the diagonal elements (surge-surge, sway-sway, yaw-yaw etc
terms only) of the added mass and damping matrices, listed against period or frequency. OrcaFlex will import these
values, setting the off-diagonal elements to zero. These data are identified to OrcaFlex by the addition of a line
containing the phrase "OrcaFlex Added Mass Table Start" (analogously for Damping), followed by a draught
specifier and a line containing one of the strings "WP", "WFR" or "WFH" to indicate that the data are given in the
Moses file by period, frequency in radians/sec, or frequency in Hz respectively. These lines must immediately
precede the table of data, after any column headings, and each table must be terminated by a corresponding
"OrcaFlex Added Mass Table End" (or Damping) line. The use of this markup is illustrated in this truncated example
(ii) Full matrices
Moses will also optionally output the full 6x6 matrices to a PPO file: in general, if you have this file you should
import the data from here in preference to the diagonal values only. In this case, the required tags are "OrcaFlex
Added Mass Matrix Start" (again, analogously for Damping), followed by a draught specifier and one of "WP x",
"WFR x" or "WFH x", where x is the value of the period or frequency, at the beginning of each matrix, and the
corresponding End tag immediately after each matrix. This sample demonstrates the use of these tags.
In both cases, Moses presents added mass and damping values which are scaled by mass. Since OrcaFlex requires
non-normalized data, the import process must account for this scaling factor. To do so, note that towards the
beginning of each of the two examples above is a section of the form
OrcaFlex Scaling Factor Start 1381.8 OrcaFlex Scaling Factor End
The number 1381.8 here is the mass of the vessel, as given in the standard output file. OrcaFlex will scale all the
imported data by this value.
Note: Moses uses encounter period or frequency, to account for the effect of the speed of the vessel on the
apparent wave period or frequency. OrcaFlex does not take this into account, so if possible your
vessel in your Moses model should not have any forward speed.
Ariane/Hydrostar output
Full 6x6 added mass and damping matrices are output, without any normalising or scaling factors. Other than the
lack of scaling factors, the tags required by OrcaFlex are the same as those for Moses 6x6 matrices: you will need
Start and End tags surrounding each matrix and a "Draught" line, and a "WP x", "WFR x" or "WFH x" line, where x is
the value of the period or frequency, at the beginning of each matrix. Note that OrcaFlex will allow, as necessary, for
the row and column headings 1, 2, ..., 6 if they are present. A short example of marked-up Hydrostar output is given.
Note: As with Moses, Ariane takes account of the effect of the speed of the vessel in determining the added
mass and damping. Your vessel in your Ariane model should not have any forward speed.
System Modelling - Data and Results, Vessels
w

260
WADAM output
WADAM also outputs full 6x6 added mass and damping matrices, but these are non-dimensional. The tags required
for each matrix are as for Ariane/Hydrostar as above; in addition, the non-dimensionalising factors must be
specified in the file. Since the data are fully non-dimensional, the scaling is rather more complex than Moses' scaling
by mass alone: the factors differ between the added mass and damping matrices, and each matrix requires a
different factor for each constituent 3x3 sub-matrix (since their units differ). Full details of the calculation of these
factors are given in the WADAM output file itself (search for the string 'non-dimensional'); see this edited example,
which shows the relevant text and the corresponding markup text required by OrcaFlex.
Output from other programs
OrcaFlex should be able to import added mass and damping data from other programs, not listed above, so long as
they are presented in text files as 6x6 matrices. As in the above examples, you will need to: add the appropriate text
strings in the file to delimit the data, nominate the draught into which the data are to be imported, and indicate the
wave period or frequency for each matrix. If the matrices are non-dimensional, either partially or fully, you will need
to enter the scaling factors into the file. Note that these factors may be entered multiple times and will be updated
each time - this may be useful if, say, they depend on frequency.
Importing RAOs
RAOs may be imported using the Import RAOs button on the vessel types form. Data may be imported from:
- AQWA or WAMIT output files
- Generic text files.
- OrcaMotion .rao files (displacement RAOs only).
On clicking the Import RAOs button, you will be prompted for a filename. Select the file you require and OrcaFlex
will read the file, extract the RAO data, and enter these values on the OrcaFlex data form for you.
Import RAOs from specific program output
OrcaFlex can import RAOs directly from AQWA and WAMIT output files, as described under Importing
Hydrodynamic Data. Note, however, that in this case RAO and phase origins are not imported and the Vessel Type
conventions are not set. You may also, depending on the way that you use this Vessel Type, need to obtain QTFs and
added mass and damping data for it. Note, however, that the conventions must be set correctly and must be
consistent across the different data.
All existing RAO data for the selected draught will be overwritten. If the units used in the data file differ from those
currently defined in OrcaFlex, then the RAOs will be scaled to the OrcaFlex units automatically.
Import RAOs from generic text files
You can use generic text files to import RAO data from, for example, a ship response calculation program or model
test results.
Note: When you import RAOs from a text file, any RAO data previously present in OrcaFlex for the
draughts given in the text file will be deleted. (Other data for these draughts, e.g. wind and
hydrodynamic damping data, will not be affected.) So for each draught you import, all the RAOs for
that draught must be in a single file. You can therefore either put all the RAOs in a single file, or
else have separate files for separate draughts.
RAO data in a text file can be imported providing that the data appears in tabular form and markers are first
inserted into the file to identify the data to OrcaFlex. This saves the laborious and error prone job of typing in a large
table of RAO data. The markers, described below, can be inserted using a text editor or word processor; if using a
word processor, note that the file must be saved as an ASCII text file and not as a word processor document.
A text RAO file must contain the RAO data in the following form. It is usually easy to create a suitable file by adding a
few lines to your original response data file. See the examples.
- The RAO data must appear in the file in one or more tables, each table being for one draught and direction. To
enable OrcaFlex to find the tables, each table must be preceded by a line containing the string OrcaFlex RAO
Start Data and must be immediately followed by a line containing the string OrcaFlex RAO End Data. There must
not be any blank lines between these two marker lines. Any mixture of upper and lower case is accepted.
w
System Modelling - Data and Results, Vessels
261
Note: OrcaFlex does not distinguish between text files containing displacement RAOs and those
containing wave load RAOs. You must take care to import them into the correct location.
- Immediately following the line containing the OrcaFlex RAO Start Data string there must be two lines (in either
order) specifying the draught and direction that applies to that table. The line specifying the draught must be of
the form Draught DraughtName, where DraughtName is the name of the draught. If the name contains spaces,
then DraughtName must be enclosed in quotes. The line specifying the direction must be of the form Direction n,
where n is a number specifying the direction the wave is progressing, in degrees, measured positive from
forward towards the port side. So direction 0 means waves coming from astern and direction 90 means waves
coming from the starboard side.
- Following these two lines, the first line of the table must be a set of headers defining the subsequent columns.
This headers line consists of a number of character strings, separated by spaces. The strings indicate the
contents of the columns; the following header strings are recognised by OrcaFlex; otherwise the corresponding
column is ignored. See Header Strings for Text RAO Tables
- If you want OrcaFlex to ignore a column, for example because it contains irrelevant or superfluous data, then
insert a header string, (e.g. "N/A" or "~") that is not listed in the above table. In particular, if the table contains
both wave period and frequency you must indicate that one of these is to be ignored, since OrcaFlex will not
accept two columns specifying the same information.
- The remaining lines in the table must contain numbers, one for each header in the headers line, separated by
tabs and/or spaces. Please note that it is the order of the columns that matters, not their actual position across
the page. Hence, although it is natural to align the headers above the columns of numbers, this is not in fact
necessary.
- There is no provision for specifying the associated conventions (other than whether the RAOs are given by
period or frequency) in the text file: the conventions data must be set to correspond to the imported data. Since
the conventions apply to all RAO data for the vessel type, the period/frequency convention specified by the
header (WP or WFH or WFR) must be consistent throughout the file. Similarly, the input origin and phase origin
to which the RAOs apply is not read in, but must be set on the Vessel Type form.
Import RAOs from .rao files
OrcaMotion is an Orcina DOS program (now obsolete) for transforming and reporting RAOs.In this case please note
the following:
- Each OrcaMotion file contains data for one wave direction, but the direction is not defined in the file. Therefore,
to import from an .rao file, you must select the draught and direction to which the .rao file applies and then click
the Import button. The imported data will overwrite the RAO table for the currently selected draught and
direction.
- Because the data in .rao files always use the Orcina standard conventions, the conventions data in OrcaFlex will
be set to these standard conventions.
Warning: These conventions apply to all RAO data for this vessel type, so any existing data that does not
conform to the standard Orcina conventions, will be invalidated by importing an .rao file.
Header Strings for Text RAO Tables
When importing RAOs from a text file, the following strings can be used in the headers line.
Header string Column contains
WP Wave period in seconds
WFH Wave frequency in Hz (cycles per second)
WFR Wave frequency in radians/second
XA Surge amplitude
XP Surge phase
YA Sway amplitude
YP Sway phase
ZA Heave amplitude
ZP Heave phase
System Modelling - Data and Results, Vessels
w

262
Header string Column contains
RXA Roll amplitude
RXP Roll phase
RYA Pitch amplitude
RYP Pitch phase
RZA Yaw amplitude
RZP Yaw phase
(In these header strings X, Y and Z represent the vessel axes, 'A' denotes amplitude, 'P' denotes phase and 'R'
rotation about the given axis.)
RAO Data Checklist
To derive vessel point motions, you need to obtain data giving both RAOs and phases for the vessel for the relevant
wave period. You also need to know what conventions apply to your data; these may be documented with the data,
but sometimes you may have to deduce what they are. You should have answers to all the following questions:
To what point on the vessel do the data apply?
This is the RAO origin and is often the vessel centre of gravity, but you need to be sure. If it is not specified check
with your data supplier.
To what point on the vessel are the phases relative?
This is the RAO phase origin and is usually - but not always - the same as the RAO origin.
Are the responses in dimensional or RAO form?
RAO form (i.e. for unit wave amplitude) is the most common; data giving dimensional form would have to also give
the associated wave amplitudes/heights. OrcaFlex will only accept RAO form.
In what form are the rotational roll, pitch and yaw RAOs?
Units such as degrees/metre or radians/metre (displacement RAOs), or kN.m/m (wave load RAOs), almost always
mean the rotational motions are relative to waves of unit amplitude.
Very rarely, rotational RAO amplitudes are given per unit wave height (i.e. double amplitude) - check your data
source. In this case you will have to divide the RAOs by 2 manually, before entry to OrcaFlex.
Units such as degrees/degree, radians/radian, or no units (displacement RAOs), or kN.m/radian (wave load RAOs),
imply rotational RAOs relative to waves of unit steepness or maximum slope.
For long wave periods in deep water, the rotational displacement RAOs in the wave plane (e.g. pitch in head or stern
seas) should tend to 1 for RAOs relative to unit maximum slope, or to pi for RAOs relative to unit steepness.
Are the phases in degrees or radians?
Unless you only have a small amount of data, this should be obvious from the range of phase values.
What directions are positive for surge, sway, heave, roll, pitch and yaw?
Often they are surge positive forward, sway positive to port, heave positive up, but some authors use heave positive
downwards. Roll, pitch and yaw are usually positive when clockwise about the positive surge, sway and heave
directions.
Most data sources use right-handed axes, but not all. OrcaFlex allows complete generality in its data input, but you
must find out how your data are defined.
To what phase time origin are the phases relative?
OrcaFlex allows you to specify that the phases to be relative to the time the wave crest, trough, zero up-crossing or
zero down-crossing passes the phase origin. The passage of the crest past the RAO origin is the most common phase
time origin, but you need to check and tell OrcaFlex - see note on phase leads/lags below.
Are the phases leads or lags?
Phase conventions are sometimes documented by giving the formula used to represent the harmonic motion.
Commonly used ones are:
w
System Modelling - Data and Results, Vessels
263
- A.cos(.t - P) or A.cos(P - .t) imply that phase P is a lag.
- cos(.t + P') implies that phase P' is a lead.
Using sine rather than cosine in the above formulae has no effect on whether the phases are leads or lags.
Checking RAOs
The Check RAOs button on the vessel types form allows a visual check on the RAO data for either displacement
RAOs or wave load RAOs. For a given draught and wave direction, it displays graphs (one for each vessel degree of
freedom) showing how the RAO and phase vary with wave period.
There are 3 types of graph available:
- Complex Values
- Amplitude
- Phase
Amplitude and Phase Graphs
These graphs provide a straightforward graphical representation of the RAO data as input on the Vessel Types data
form. The amplitude or phase is plotted on the Y axis of the graph. For the X axis you have the choice of plotting
period, frequency in rad/s or frequency in Hz.
Complex Value Graphs
The graphs initially show the RAOs for the currently selected draught and direction. You can switch to other
draughts and directions, either by using the navigation buttons at the bottom of the form to step through the data,
else or by selecting from the drop-down lists. You can change the scale of the graphs (double click on the graph and
change the ranges of the axes). This is useful if the curve does not initially fit on the graph.
0
0
R
|

Figure: Complex Value RAO Graph for Amplitude (R) and phase ()
The graphs depicts the RAO data specified by the user for the specified RAO origin. The graph has two parts:
- A curve showing the RAO data specified by the user as a series of points joined in order of increasing period.
The curve starts from the 'short' wave response, which should have zero or very small amplitude, so the curve
should start from near the origin. Moving along the curve away from the origin corresponds to the wave period
increasing from zero. For surge, sway and heave, the other end of the curve is the 'long' wave RAO data specified
for period 'Infinity'. For roll, pitch and yaw, the RAO data for period 'Infinity' cannot (for technical reasons) be
included in the curve, so instead the other end of the curve is the RAO data for the largest finite period specified.
- A solid circle representing the expected long wave response limit for a freely floating vessel. See RAO Quality
Checks for details of the expected long wave RAOs.
Warning: The expected long wave response limits calculated by OrcaFlex only apply to free-floating vessels.
Also, the yaw response limit only applies to slender vessels (i.e. vessels that are long in the x-
direction and narrow in the y-direction).
The purpose of the graph is help you check your RAO data - the curve should normally be reasonably smooth and
tend towards the expected limit shown by the solid circle. See How to Check RAO Data for details.
System Modelling - Data and Results, Vessels
w

264
The graph represents RAOs as points in polar coordinates (R,), where:
- R is the non-dimensional amplitude. For surge, sway and heave R is the vessel motion amplitude divided by the
wave amplitude. And for roll, pitch and yaw, R is the rotational response normalised with respect to maximum
wave slope - i.e. it is vessel rotation amplitude divided by the maximum wave slope.
- is the phase lag, from the time the wave crest passes the user-specified phase origin until the maximum
positive motion occurs.
Note: Positive here means as in the OrcaFlex conventions (not necessarily the same as the vessel type RAO
conventions). So positive surge is forward, positive sway is to port, positive heave is up, positive roll
is starboard down, positive pitch is bow down and positive yaw is bow to port.
This polar coordinates way of representing RAOs is better than drawing separate graphs of amplitude and phase,
since it presents all the information on a single graph and also the resulting curves are smooth, whereas phase
graphs frequently show phase jumps.
How to Check RAOs
For each draught and wave direction, you should check that the curves on the Complex Value RAO graphs are
reasonably smooth and approach the circle, which is the expected long-wave limit for a free-floating vessel. Note
that:
- The curve may not approach the expected long wave limit if the RAO data does not include values for any long
waves. Wave periods over 20 seconds for ships, or 30 seconds for semisubmersibles, are considered to be
sufficiently long for this purpose.
- The curve might also not approach the circle if the vessel is not free-floating. For example the heave
displacement RAO amplitude of a tension leg platform will not approach the usual long wave limit of 1.
- The circle on the yaw graph only applies to slender vessels (i.e. long in the x-direction and narrow in the y-
direction).
- Smooth graphs can only be expected if the data includes RAOs for reasonably closely spaced periods.
As examples, consider the following three example graphs:
w
System Modelling - Data and Results, Vessels
265
1.5 1 0.5 0 -0.5 -1 -1.5
1.5
1
0.5
0
-0.5
-1
-1.5
1.5 1 0.5 0 -0.5 -1 -1.5
1.5
1
0.5
0
-0.5
-1
-1.5
System Modelling - Data and Results, Vessels
w

266
1.5 1 0.5 0 -0.5 -1 -1.5
1.5
1
0.5
0
-0.5
-1
-1.5

The first graph shows a typical, well-behaved set of displacement RAO data - the curve is smooth and the long-wave
limit agrees with the expected value marked by the circle.
For a freely floating vessel, the second graph is clearly in error, since the curve does not lead to the expected long
wave limit. The RAO data for long waves (represented by the end of the curve) has the correct amplitude, but its
phase differs by 180 from the expected long-wave value (represented by the circle). There are two likely causes - it
may be that the phase lead/lag convention data has been set wrongly (this would give a phase angle sign error) or
else that the convention data for the direction of positive motion has been set wrongly (this would give a phase
error of 180).
The curve on the third graph approaches the expected long wave limit, but then suddenly goes to zero. This suggests
that the RAO data for period 'Infinity' has not been set correctly and is zero.
Common Problems
It is not unusual to be given RAO data for a vessel but not be given all the conventions that apply to the data. Below
are some common problems and their symptoms. But beware that several common problems have very similar
symptoms, so it is not possible to be sure what the problem is unless you are sure about most of the data's
conventions and only unsure about one. It is therefore important to get as much information as possible from the
original RAO data supplier.
- The quoted wave direction might be measured clockwise (viewed from above) from the x-direction, rather than
anticlockwise (which is the OrcaFlex convention). The effect would be a 180 shift in the sway, roll and yaw
phases.
- The quoted wave direction may be the direction the wave is coming from, rather than the direction it is
progressing towards (which is the OrcaFlex convention). The effect would be to negate all the phase values.
- The phases may be leads instead of lags (OrcaFlex will accept either - see RAO Phase Conventions). The effect of
an error here would be to negate all the phase values.
7.7.3 Modelling Vessel Slow Drift
When a vessel is exposed to waves it experiences wave loads that can be split into first order and second order
terms. The first order terms generate motion at wave frequency and this is modelled in OrcaFlex using RAOs to
specify either the displacement or the load. The second order terms are much smaller but they include loads with a
much lower frequency. These low frequency terms are called the wave drift loads and they can cause significant
slow drift motions of the vessel if their frequencies are close to a natural frequency of the vessel.
One common situation where the wave drift loads can matter is with a moored vessel. The vessel's natural
frequencies in surge, sway and yaw are typically quite low and so the low frequency wave drift loads can generate
quite significant slow drift excursions.
w
System Modelling - Data and Results, Vessels
267
If you have already calculated the vessel slow drift motion then that motion can be applied in OrcaFlex using
harmonic motion or a time history file. But OrcaFlex can calculate and apply the slow drift motion for you. To do this
you need to do the following:
- Specify QTF data on the wave drift page of the vessel type form (the wave drift loads are calculated based on
this data). Also, ensure that Wave Drift Load (2nd Order) is in the vessel's Included Effects. This tells OrcaFlex
to apply the mean wave drift load to the vessel during the static analysis, and then in the dynamic analysis to
apply the time varying wave drift load.
- Optionally, specify appropriate data for hydrodynamic and wind damping and any applied load, etc., and include
these loads in the vessel's Included Effects. OrcaFlex will automatically include loads from added mass and
damping and loads from any lines or other objects that are connected to the vessel.
- On the Structure page on the vessel type form, specify the vessel centre of gravity, mass, moments of inertia data
for the appropriate draught. And on the Stiffness, Added Mass and Damping page, specify the added mass and
damping matrices and the reference origin to which they apply. The stiffness and hydrostatic equilibrium
position data are not required for 3DOF analyses, since they only apply in the heave, roll and pitch directions.
- On the vessel form, include 3 degrees of freedom in the static analysis. The OrcaFlex static analysis will then
calculate the equilibrium position allowing for the mean wave drift load. And set the primary motion to
Calculated (3DOF). The OrcaFlex simulation will then calculate the vessel surge, sway and yaw motion that
results.
- Set the vessel's superimposed motion according to whether and how you want to model first order wave
frequency motion.
In the dynamic simulation OrcaFlex will then calculate all the loads on the vessel and the resulting slow surge, sway
and yaw motion.
Damping Effects on Vessel Slow Drift
Drag and damping loads have an important effect on vessel slow drift motions. The following discussion documents
the various damping effects and how they are modelled in OrcaFlex. See CMPT (1998) section 3.12.
- Hydrodynamic drag and skin friction on the vessel hull. This is modelled in OrcaFlex using a combination of
the OCIMF approach, a yaw drag moment proportional to (yaw rate)
2
and roll damping terms (both linear and
quadratic). See the Hydrodynamic Damping data on the vessel type data form. For details of the theory see
Vessel Theory: Hydrodynamic and Wind Damping. Note that OrcaFlex does not yet have the dependency of yaw
drag on sway velocity proposed by Wichers, 1979.
- Wind drag on the vessel hull. This is the aerodynamic drag due to wind and any vessel velocity. It is modelled
in OrcaFlex based on the OCIMF approach. See the Wind Damping data on the vessel type data form. For details
of the theory see Vessel Theory: Hydrodynamic and Wind Damping.
- Hydrodynamic drag on the risers/moorings. This is modelled in OrcaFlex by the drag force part of the
Morison force on the lines that model the risers/moorings.
- Wave radiation damping. This is not usually very significant at low frequencies, because the asymptotic limit
of the wave frequency damping is zero. It can be modelled in OrcaFlex using the constant damping matrix on the
vessel type form.
- Wave drift damping. This arises because the wave drift loads vary with vessel velocity. It can be modelled in
OrcaFlex by including it in the constant damping matrix on the vessel type data form. See CMPT (1998) page 3-
78 and Faltinsen (1990) page 161.
- Material damping in the risers/moorings. This is the structural damping in the material of the risers and
mooring lines. This can be modelled in OrcaFlex by the line target damping value. However Triantafyllou et al
(1994) concluded that its effect is negligible.
- Seabed soil friction on the risers/moorings. This arises from the frictional force acting on the part of a
mooring/riser that is lifting off and touching down on the seabed. It is modelled in OrcaFlex by the friction
between the seabed and the line used to model the mooring/riser. However Triantafyllou et al (1994)
concluded that its effect is negligible.
7.7.4 Vessel Response Reports
The vessel response window can be opened using the Results Menu or using the Report Vessel Response button on
the vessel data form. It offers two pages: Displacement Response, and Impulse Response, Added Mass and Damping.
System Modelling - Data and Results, Vessels
w

268
Displacement Response
The Displacement Response page gives access to two spreadsheet reports, one giving displacement RAOs and one
giving spectral values, of the vessel's response to waves, based on its vessel type's displacement RAOs. It can be
accessed from the Results menu or from the Vessel data form.
Directions and Output Points
You specify one or more vessel-relative wave directions, and one or more points on the vessel, for which the RAOs
and spectral response will be reported.
If you specify a direction of '~' then the direction of the wave relative to the vessel is used. If there is more than one
wave train then the direction of the first wave train is used.
The output points are specified by giving their coordinates relative to vessel axes.
Report RAOs
The RAO report gives a separate worksheet for each specified direction, containing the RAOs for each of the
specified output points, derived from the displacement RAOs of its vessel type.
The reported RAOs allow for the following effects:
- They allow for the position of the output point relative to the RAO origin to which the vessel type RAOs apply.
- They give the RAOs for the specified wave direction, relative to the vessel. If this is not one of the directions for
which RAOs are specified, then the RAOs are derived by interpolation on direction.
- They allow for Froude scaling if there is a difference between the vessel type length and the vessel length. This
affects the periods at which the RAOs are reported.
RAOs are given for the position, velocity and acceleration of the output points, for all 6 degrees of freedom and for Z
Above Wave.
The RAO report covers the wave periods specified on the vessel type data form, plus (if appropriate) the regular
wave period specified on the environment data form.
Phase Origin
You can choose the Phase Origin to use for reporting phases, the options being:
- RAO Phase Origin. The phases will then be reported relative to the time that the wave (crest or trough, as
specified in the vessel type RAO conventions) passes the RAO phase origin specified on the vessel type form.
- Each Point. The phases will then be reported relative to the time the wave (crest or trough, as specified in the
vessel type RAO conventions) passes that particular output point.
The translational RAOs depend on the position of the output point. The rotational RAO amplitudes do not depend on
the position of the output point, since the roll, pitch and yaw of a vessel are the same everywhere on it. The
rotational RAO phases depend on the position of the output point only if you specify the Phase Origin to be Each
Point.
Conventions
You can choose for the RAOs to be reported either using the same RAO conventions as specified for this vessel's type
or using Orcina standard conventions.
Z Above Wave
Z Above Wave reports the heave of the vessel relative to the water surface. This can be useful when evaluating
whether an object at some point on the vessel will contact the water surface and if so with what relative velocity.
Warning: Z Above Wave does not take account of wave surface disturbance due to the presence of the vessel.
Report Spectral Response
The spectral response report contains a separate worksheet for each specified direction and each random wave
train specified on the Environment data form. The worksheet contains tables of spectral values for position, velocity
and acceleration, for all 6 degrees of freedom and for Z Above Wave. Separate tables are given for each of the
specified output points.
Notes: The spectral response report is not available if no random wave trains are specified.
w
System Modelling - Data and Results, Vessels
269
It is also not available if (for any of the specified directions and for any degree of freedom) the
vessel has a non-zero RAO amplitude for the zero wave period limit. This is because some of the
spectral integrals do not converge in such cases. Such RAO data is not realistic, since no vessel can
respond to infinitely high frequency waves.
The following spectral values are reported.
- The significant amplitude.
- The most probable maximum amplitude for a period of the specified Storm Duration.
- The average period of the response. This is the mean period between zero up-crossings.
Note: The significant and maximum values are reported as single amplitudes, i.e. the motion is +/- the
value reported.
Warnings: Wave directional spreading spectra are not taken into account. The calculation assumes that all
the spectral energy is in the specified direction for each wavetrain.
The standard formulae used to calculate the spectral values (see below) are based on the further
assumptions that the spectrum is narrow-banded and Gaussian, and that the extremes are
Rayleigh distributed. They are also based purely on small amplitude linear theory.
The storm duration should be short-term, ie of the order of hours rather than days or years, since
the sea-state, as represented by (Hs,Tz), is assumed to remain constant over this duration.
These spectral values are calculated as follows:
The spectrum of the wave train is combined with the vessel response specified by its RAOs, to obtain the response
spectrum for each degree of freedom. The zeroth and second spectral moments, m0 and m2, of the response
spectrum are then calculated. The spectral values are then given by:
Significant Amplitude = As = 2m0
1/2

Average Period = Tave = (m0/m2)
1/2

Max Amplitude = As(ln(D*60*60/Tave))
1/2

where As is the significant amplitude, D is the specified Duration (in hours) and Tave is the average period (in
seconds). See, for example, Faltinsen, pages 24-27, or Ochi, pages 151-152.
Notes: For Z Above Wave, no spectral values can be reported for acceleration and only the significant
amplitude can be reported for velocity. This is because the RAO of Z Above Wave does not decay to
zero as wave period goes to zero, so some of the integrals for the spectral moments do not
converge. For velocity of Z Above Wave you could perhaps estimate the expected maximum
amplitude by assuming that the ratio of maximum amplitude to significant amplitude is roughly
the same for velocity as for position.
All these reports are based on the vessel type displacement RAOs. Any wave load RAO data are
ignored.
Impulse Response, Added Mass and Damping
The Impulse Response, Added Mass and Damping page has only one button: Show Graphs. This button is enabled
only if the Vessel Type and Draught used by the vessel have Added Mass and Damping Method set to Frequency-
Dependent. Clicking the button will open a form showing:
- A graph of the Impulse Response Function (IRF) for the vessel.
- Graphs of the original frequency-dependent added mass or damping data.
The scale of the time lag axis for the IRF is determined by the cutoff time chosen. This graph may be useful in judging
what value should be selected for this cutoff time: a shorter cutoff time will allow for faster calculation, but too short
may mean significant IRF values are discarded and accuracy lost as a result.
The graph of Added Mass against frequency has superimposed on it a horizontal intercept representing the
calculated value of the "infinite-frequency" added mass. So long as the data are given to sufficiently high frequency,
this is an indicator of the consistency of the added mass and damping data.
Note that the values of added mass and damping shown may have been Froude scaled according to Vessel length.
System Modelling - Data and Results, Vessels
w

270
7.7.5 Vessel Results
For details on how to select results variables see Selecting Variables.
Motion Results
The vessel motion is split into two components, the primary and superimposed motions. Both the total overall
motion and these two components are available as time history results.
X, Y, Z, Rotation 1, Rotation 2, Rotation 3 and Sea Surface Clearance
The position, orientation and sea surface clearance of the vessel, relative to global axes, due to the combination of
the primary and superimposed motion.
X, Y and Z are the global coordinates of a user specified point P on the vessel. The point P is specified in vessel local
coordinates. If P=(0,0,0) then the global X, Y and Z coordinates of the vessel origin are reported.
Sea Surface Clearance is the vertical clearance of point P from the instantaneous sea surface. A positive value
indicates the point P is above the sea surface.
Rotation 1, 2 and 3 define the final orientation relative to global axes. The 3 rotations (called Euler angles) are 3
successive rotations that take the global axes directions to the final axes directions. Rotation 2 is in the range -90 to
+90. Range jump suppression is applied to the Rotation 1 and Rotation 3 angles (so values outside the range -360
to +360 might be reported).
Velocity, GX-Velocity, GY-Velocity, GZ-Velocity
The magnitude and components of the velocity of the vessel, relative to global axes, due to the combination of the
primary and superimposed motion. These results are reported at a user specified point P on the vessel. The point P
is specified in vessel local coordinates.
Angular Velocity, x-Angular Velocity, y-Angular Velocity, z-Angular Velocity
The magnitude and components of the angular velocity of the vessel, relative to vessel axes, due to the combination
of the primary and superimposed motion.
Acceleration, GX-Acceleration, GY-Acceleration, GZ-Acceleration
The magnitude and components of the acceleration of the vessel, relative to global axes, due to the combination of
the primary and superimposed motion. These results are reported at a user specified point P on the vessel. The
point P is specified in vessel local coordinates.
Acceleration (incl. g), x-Acceleration (incl. g), y-Acceleration (incl. g), z-Acceleration (incl. g)
The magnitude and components (with respect to vessel axes) of the vector a - g where a is the acceleration of the
vessel and g is the acceleration due to gravity, a vector pointing vertically downwards. These results are reported at
a user specified point P on the vessel. The point P is specified in vessel local coordinates.
These results can be used to compare against accelerometer readings.
Angular Acceleration, x-Angular Acceleration, y-Angular Acceleration, z-Angular Acceleration
The magnitude and components of the angular acceleration of the vessel, relative to vessel axes, due to the
combination of the primary and superimposed motion.
Primary X, Primary Y, Primary Z, Primary Rotation 1, Primary Rotation 2 and Primary Rotation 3
The primary position of the vessel, as produced by any primary motion, relative to global axes. So Primary X,
Primary Y and Primary Z are the global X,Y,Z coordinates of the primary position of the vessel origin, and Primary
Rotation 1, Primary Rotation 2 and Primary Rotation 3 are the primary orientation of the vessel, again relative to
global axes.
Primary Rotation 2 is in the range -90 to +90. Range jump suppression is applied to Primary Rotation 1 and
Primary Rotation 3 (so values outside the range -360 to +360 might be reported).
Surge, Sway, Heave, Roll, Pitch and Yaw
The offset of the vessel, due to any superimposed motion, relative to the primary position of the vessel. They are
usually, therefore, the wave-generated part of the motion, so Surge, Sway and Heave are the offsets from the
primary position to the final position and are measured in the primary vessel axes directions. And Roll, Pitch and
Yaw are the wave-generated rotations and are relative to the primary vessel axes directions.
w
System Modelling - Data and Results, Vessels
271
Pitch is in the range -90 to +90. Range jump suppression is applied to the Roll and Yaw angles (so values outside
the range -360 to +360 might be reported).
Sea Surface Z
The global Z coordinate of the sea surface directly above the instantaneous vessel primary position.
Force and Moment Results
For each load on the vessel, so long as it is not explicitly excluded from the list of that vessel's Included Effects, time
history results are available for the magnitude of the force and moment, and for each component of the force or
moment. All these results are reported in vessel axes directions, with moments taken about the vessel origin. If a
load is excluded then it will not be calculated and will not appear in the list of available results.
Total Load
The magnitude and components (in vessel axes directions) of the sum of the constituent loads on the vessel which
are included in the calculation.
Connections Load
The sum of the loads from all attached lines, links, winches, shapes, etc. Available only if at least one such object is
attached to the vessel. For convenience, the components of Connection Force and Moment are also available in
Global axes directions (GX,GY,GZ). Details of the loads exerted by each individual object are available as results
tables, and can also be found under the results for each object itself.
Applied Load
The sum of all the local and global applied loads. Available only if Applied Loads is in the list of the vessel's included
effects.
Hydrodynamic Damping Load
The hydrodynamic damping force and moment on the vessel. Available only if Hydrodynamic Damping is checked
in included effects.
Wind Damping Load
The wind damping force and moment on the vessel. Available only if Wind Damping is checked in included effects
and Include Wind Loads on Vessels is checked on the Wind data page of the Environment data form.
Wave Drift Load
The wave drift force and moment exerted on the vessel. These results are available only if Wave Drift Load (2nd
order) is included.
Added Mass & Damping Load
The force and moment on the vessel due to added mass and damping.
Hydrostatic Stiffness Load
The Hydrostatic stiffness force and moment on the vessel.
Wave Load RAO Force and Moment
The force and moment on the vessel due to the wave load RAOs. Available if Wave Load (1st Order) is checked in
included effects.
Multiple Static Results
For multiple statics calculations the results variables available are as follows. The loads reported are the total loads,
including those from current, wind, applied loads and attached lines and other objects.
Restoring Force
The magnitude of the horizontal component of the total force applied to the vessel. Note that this force is not
necessarily in the offset direction.
Vertical Force
The vertically downwards component of the total force applied to the vessel.
System Modelling - Data and Results, Lines
w

272
GZ-Moment
The total moment, about the vertical, applied to the vessel.
Worst Tension
The largest tension in any segment of any Line connected to the Vessel.
7.8 LINES
Lines are flexible linear elements used to model cables, hoses, chains or other similar items. Lines are represented in
OrcaFlex using a lumped mass model. That is, the line is modelled as a series of lumps of mass joined together by
massless springs, rather like beads on a necklace. The lumps of mass are called nodes and the springs joining them
are called segments. Each segment represents a short piece of the line, whose properties (mass, buoyancy, drag
etc.) have been lumped, for modelling purposes, at the nodes at its ends. See the figure below, which shows an
example line spanning from a Vessel to a Buoy.
w
System Modelling - Data and Results, Lines
273
End positions and no-moment directions are defined
relative to the objects to which the ends are connected
and move with those objects.
x
y
z
V
x
y
z
B
End B
End A
Clump
section 1
(3 segments)
section 3
(9 segments)
section 2
(7 segments)

Figure: Line Model
The properties of a Line are specified by dividing it up into a number of consecutive sections that are chosen by the
user. For each section you must define its length, the Line Type of which it is made and the number of segments into
which it should be divided for modelling purposes. A Line Type is simply a set of properties (for example the
diameter, mass per unit length and bend stiffness) given a name so that they can be called by that name. The Line
Types are defined separately, on the Line Types data form. This allows the same set of line properties to be used for
a number of different sections of the line, or for different lines. There is also a Line Type Wizard tool that helps you
set up Line Types representing common structures like chains, ropes, etc.
In addition, a number of attachments may be specified, to represent items that are connected to the Line. For
example, attachments may be used to model clump weights, drag chains or buoyancy bags attached to the line. Two
types of attachment are available - clumps (buoyancy or heavy) and drag chains.
System Modelling - Data and Results, Lines
w

274
Each attachment attached to the Line is specified by giving the Attachment Type and the arc length, measured from
End A, at which it should be attached. The attachment is then attached to the nearest node to that arc length.
Attachment Types are similar to Line Types - they are simply named sets of attachment properties. The properties
themselves are then given separately, on the Attachment Types data form. This allows the same set of attachment
properties to be used for a number of different attachments.
The two ends of a Line are referred to as End A and End B and each end can be Free, Fixed, Anchored or else
connected to a Vessel or Buoy. The two ends of a line are treated in essentially the same way, but some aspects of
the line are dependent on which end is which. In particular the numbering of parts of a Line is always done starting
at End A.
7.8.1 Line Data
For every line in the system there is a data form defining its structure and interconnection. It is on these data forms
that the system is built up by connecting lines between the objects that have been defined.
Name
Used to refer to the Line.
Include Torsion
Torsional effects can be included or ignored, for each line in the model. If torsion is included then the line type
torsional properties must be specified. See Torsional Stiffness.
To see the line orientation visually on the 3D views, select Draw Node Axes on the View menu. OrcaFlex then draws
the node axes Nxyz at each node, and these axes allow you to see how the line is behaving torsionally.
Notes: The node axes are drawn using the node pen, specified on the line data form.
If torsion is included for a line, you must specify the torsional orientation at each end of the line.
This is done by setting the Gamma angle of the end connections on the line data form. The Gamma
angle determines the torsional position of the line end - for details see Line End Orientation. To
check visually that you have the orientation you expect, select Draw Node Axes on the View menu.
If torsion is included for a line, the static analysis should also include the effects of torsion -
otherwise the simulation will start from a position that is not in torsional equilibrium and an
unstable simulation may result. We recommend that the Full Statics option is selected because this
is the only statics option in OrcaFlex that includes the effects of torsion.
Top End
This data item is used to give OrcaFlex information about the sense of the Line. Various calculations performed by
the program need to know which end of the line (End A or End B) is at the top, and which end is at the bottom. You
specify which end is at the top, and the program assumes that the other end is at the bottom.
Suppose you have a line with the top end connected to a vessel, and the bottom end anchored to the seabed. If you
wish to measure arc length from the vessel then you should connect End A to the vessel, make End B anchored and
set Top End to End A. On the other hand, if you wish to measure arc length from the seabed then you should connect
End B to the vessel, make End A anchored and set Top End to End B.
The setting of the Top and Bottom Ends is used by the program as follows:
- The Lay Azimuth data defines a lay direction starting from the Bottom End and moving towards the Top End.
- The Touchdown results point is determined by starting at the Top End and then moving towards the Bottom
End until the first node in contact with the seabed is found.
- The Contents Pressure Reference Z level can be set to '~' (indeed this is the default value) which OrcaFlex
interprets as the Z level of the Top End in the reset state.
- The Line Setup Wizard uses the bottom end when calculating anchor positions and also for the layback
calculation.
If the Line is not in contact with the seabed then this data is somewhat arbitrary. You are free to make whatever
choice suits your model, but remember that the contents pressure will be referenced from the Top End. If the entire
Line is in contact with the seabed then again you are free to make whatever choice of Top and Bottom Ends suits
your model.
w
System Modelling - Data and Results, Lines
275
Connections
The line end connection data specifies whether the line ends are connected to other objects, the position, angle and
stiffness of the connection, and whether the end is released during the simulation.
You can view and edit an individual line's connection data on the line's data form. Or you can view and edit the
connection data for all the lines together on the All Objects Data Form.
Connect to Object
The line spans from End A to End B and each end may be connected to another object in the model, such as a buoy or
vessel, or else Fixed, Anchored or left Free.
Object Relative Position
Defines the position of the centre of the node at the line end.
- If the end is connected to another object this defines the coordinates of the connection point relative to that
other object's local axes.
- If the end is Fixed this defines the coordinates of that point relative to global axes.
- If the end is Anchored this defines the X and Y coordinates of the anchor relative to global axes, plus the Z-
coordinate relative to the seabed level at that (X,Y) position.
- If the end is Free then this defines the coordinates of the estimated equilibrium position of the line end, relative
to global axes.
Height above seabed
This data item is only available for Anchored connections and specifies the vertical height above the seabed of the
pipe underside. This value is coupled to the Object Relative z coordinate - changing either one results in the other
being changed to match.
To understand how this data item should be used consider, for simplicity, a line end anchored to a flat horizontal
seabed. The Object Relative z coordinate specifies the position of the centreline. If it is set to 0 then the end node will
penetrate the seabed by a distance of D, where D is the contact diameter.
The net result of this is that the end node is 'buried' in the seabed and receives a large seabed reaction force.
Because it is anchored this force cannot displace the end node, but the adjacent node is free to move and it will try to
take up a position sitting on top of the seabed. This in turn will lead to unrealistic values of curvature, bend moment
etc. at the end.
If, however, you set Height above seabed to 0 then the end node centreline will have a z coordinate of D, relative to
the seabed. The node sits just in contact with the seabed and the above problems are removed.
If the seabed is not horizontal then the mathematics is slightly more complicated as it has to take into account the
slope of the seabed. However, the recommendation of setting Height above seabed to 0 remains valid.
End Orientation
When a line is connected to an object, it is connected into an end fitting that is rigidly attached to that object and you
specify the orientation of this connection by giving its Azimuth, Declination and Gamma angles.
These angles define the end fitting orientation relative to the object, so for objects that rotate (e.g. vessels and 6D
buoys) the fitting rotates with the object. For Fixed or Anchored ends the end orientation is defined relative to
global axes. For Free ends the end orientation is not used.
Azimuth, Declination and Gamma define the end fitting orientation by specifying the directions of the axes (Ex, Ey,
Ez) of its frame of reference, where E is the end fitting origin - the point to which the line end is connected. See Line
End Orientation.
The direction of Ez is defined by specifying its Azimuth and Declination angles. Ez is the end fitting axial direction;
when the end segment is aligned with Ez then no bending moment is applied by the joint, so Ez is sometimes called
the no-moment direction. Note that Ez must be specified using the End A to End B convention, i.e. Ez is into the line
at End A, but out of the line at End B.
Ex and Ey are perpendicular to Ez and they are defined by specifying the Gamma angle, which is a rotation about Ez.
The Ex and Ey directions are used for reporting results (e.g. the 2 components of shear force). And if the line has
System Modelling - Data and Results, Lines
w

276
torsion included and the joint twisting stiffness is non-zero, then Ex and Ey also define the line end orientation at
which no torsional moment is applied by the joint.
The connection at a line end is modelled as a ball-joint with this orientation being the preferred "no-moment"
orientation, i.e. the orientation of the line end that gives rise to no moment from any rotational stiffness of the
connection.
If all of the end connection stiffness values are zero, e.g. to model a ball joint that is completely free to rotate, then
the end orientation angles have no effect on the line behaviour. The angles then only serve to define the local x, y
and z-directions that are used to define results (e.g. shear and bend moment components, stress components, etc.)
that depend on the local axes directions.
Bending and Twisting Stiffness
The connection at a line end is modelled as a joint with the specified rotational stiffness. The restoring moments
applied by the joint depend on the deflection angle, which is the difference between the end fitting orientation and
the orientation of the line. The end orientation is therefore the orientation of the line that corresponds to zero
moment being applied by the joint.
The connection stiffness is the slope of the curve of restoring moment against deflection angle.
The bending and twisting connection stiffnesses can be set to:
- Zero: free to rotate with no resistance.
- Non-zero, finite: can rotate but with resistance.
- Infinity: a rigid connection.
- Variable: non-linear (for bending connection stiffness only).
The x bending and y bending values specify the connection bending behaviour for rotation about the end Ex and Ey
directions, respectively. For an isotropic ball joint the two values must be equal; this can conveniently be specified
by setting the y-bending value to '~', meaning 'same as x-value'. A non-isotropic ball joint can be modelled by giving
different x and y bending values; in this case the line must include torsion.
The x bending and y bending behaviour can either be linear or non-linear, as follows:
- For a simple linear behaviour, specify the bending stiffness to be the constant slope of the curve of restoring
moment against deflection angle.
- For a non-linear behaviour, use variable data to specify a table of restoring moment against deflection angle.
OrcaFlex uses linear interpolation for angles between those specified in the table, and linear extrapolation for
angles beyond those specified in the table. The restoring bend moment must be zero at zero angle.
The Twisting Stiffness value is only relevant if torsion is included for the line. It specifies the rotational stiffness
about the end Ez direction. For the twisting stiffness this variation is always modelled as linear so the twisting
stiffness you specify should be the slope of the linear angle-moment curve.
A flex joint can be modelled by setting the stiffness values to be non-zero and finite.
Warning: Avoid specifying large connection stiffness values (except the special value Infinity) since they
require very short simulation time steps.
Release at Start of Stage
If desired each line end can be disconnected at the start of a given stage of the simulation. If no release is wanted
then set this item to "~", meaning "not applicable".
Structure
Each line can be made up of up a number of sections with different properties, the sections being defined in
sequence from End A to End B.
Line Type
This determines the properties of the section.
w
System Modelling - Data and Results, Lines
277
Section Length
The unstretched length of the section. This is the unstressed length (i.e. zero wall tension) at atmospheric pressure
inside and out. Length changes due to external and internal pressure, and allowing for the Poisson ratio effect, are
calculated and allowed for by OrcaFlex.
If the line type is profiled then the section length is determined by the profile data and so cannot be edited here.
Expansion Factor
The expansion factor allows you to model time-varying changes in unstretched length, for example due to thermal
expansion or contraction.
A value of '~' means that no expansion factor is applied - this is equivalent to a value of 1. Other positive values can
be used, in which case the unstretched length remains constant throughout the simulation.
Alternatively the expansion factor can be a variable data source which specifies a table of expansion factor against
simulation time. It specifies a multiplicative factor which is applied to the unstretched length when calculating axial
strain which in turn is used to calculate effective tension (see Line Theory: Calculation Stages).
Note: Expansion factor is only used in the calculation of strain. It has no effect on mass, buoyancy, drag,
added mass etc.
Target Segment Length, Number of Segments
These data items determine the segmentation of the section.
If Target Segment Length is set to ~ then the number of segments in the section is set by Number of Segments.
Otherwise, the segmentation is chosen based on Target Segment Length. The Number of Segments is not editable
and reports the actual number of segments used which is given by the formula:
Number of Segments = Round(Section Length / Target Segment Length)
where Round is the function that rounds a floating point value to the nearest integer.
Note: It is usually preferable to determine segmentation by specifying Target Segment Length. This
allows you to alter section lengths without altering segment length.
Clash Check
Clash modelling is included when this data item is set to Yes. If it is set to No then the section will be ignored for
clashing purposes.
Notes: Line clashing is not modelled during statics.
Clash checking is quite time-consuming, so you should only set this item to Yes for those sections
for which you need clash modelling to be included. See Line Clashing.
Cumulative Length, Cumulative Segments
These columns report the cumulative length and cumulative number of segments counted from the first section. The
values are for reporting purposes only and cannot be edited.
Profile Graph
The profile graph plots the inner and outer radii of the line as they vary with arc length. This is especially useful to
check that stress joint and bend stiffener data has been correctly input.
Pre-bend
Pre-bend is only available when torsion is modelled. Pre-bend is provided for modelling lines which are not straight
when unstressed, e.g. spool pieces.
The pre-bend is defined for each section by specifying the pre-bent curvature (in radians per unit length) of the
section. The pre-bent curvature is the curvature of the pipe in its unstressed state. For lines which are straight when
unstressed then pre-bend should be specified to be zero - which is the default setting.
Pre-bend can be specified in both the line local x and y directions. However, to simplify data preparation and
interpretation of results we recommend that you arrange the line's local axes such that the pre-bend is entirely in
either the local x or local y direction.
System Modelling - Data and Results, Lines
w

278
Note: When pre-bend is modelled curvature and bend radius results are reported relative to the pre-bent
curvature.
Warning: Pre-bend breaks the assumptions of the stress results and fatigue analysis.
Attachments
A number of attachments may be added to each line. Each attachment can either be of a specified Attachment Type
or else be a clone of a specified 6D buoy.
Attachment Type
Can be a Clump Type, a Drag Chain Type, a Flex Joint Type, a Stiffener Type or an existing 6D Buoy.
If you specify a 6D buoy as the attachment type then the attachment is a clone of that 6D buoy and changing the
properties of the 6D buoy also changes the properties of the attachment. The 6D buoy from which the attachment is
cloned cannot be deleted, without first deleting all the attachments that are clones of it.
6D buoy attachments are useful when you want a number of identical 6D buoys attached to a line. To attach 20
identical buoys to a line, for example, first create the first buoy separately from the line and then connect it to the
line by setting its connection data item on the buoy data form. This first buoy acts as the master from which all the
other attachment buoys are cloned. Then, on the line data form, specify 19 attachments and set their attachment
type to be the first 6D buoy.
Note: 6D Buoy attachments can only be used when the Line includes torsion.
Position
The x, y and z coordinates specify the position of the attachment relative to the line.
The z coordinate specifies the arc length at which the attachment is connected and this arc length may be measured
relative to either End A or End B as specified by the user.
- For Clumps, Drag Chains, Flex Joints and Stiffeners the x and y coordinates must be zero and the z coordinate is
the arc length. These attachments are connected at the node nearest to this arc length.
- For Stiffeners the z coordinate specifies the arc length of the stiffener connection point.
Note: If the attachment is a clump then it is also offset vertically from the node by the offset distance
specified in the clump type data. Beware that the sign convention for this offset varies depending
on whether the clump is net buoyant (positive offset is upwards) or heavy (positive offset is
downwards).
- For 6D Buoy attachments the z coordinate specifies the arc length at which the buoy should be connected to the
line. The buoy will be connected to the nearest node to that arc length. The buoy will be connected with an offset
(relative to that node's axes) that is given by (x, y, 0). See 6D Buoy Initial Position for more details.
Orientation
For 6D Buoy attachments only. Rotation 1, Rotation 2 and Rotation 3 determine the Initial Attitude of the attached
buoy.
Name
For 6D Buoy and Drag Chain attachments only. This is the name of the attached object and is used to select results
for that object.
Contents
Contents Density
If any section of the line is of a line type that is hollow, i.e. has non-zero inner diameter, then its mass is increased
by:
Density . Inner Cross Sectional Area . Section Length.
Mass Flow Rate
The rate of flow of mass through the line. If it is non-zero then it is used to calculate the centrifugal and Coriolis
forces due to flow of fluid in the line. Positive values mean flow from End A to End B; negative values mean flow
w
System Modelling - Data and Results, Lines
279
from End B towards End A. To convert between mass flow rate, volume flow rate and flow velocity use the following
simple formulae:
Volume flow rate = Mass flow rate /
Flow velocity = Mass flow rate / (d
2
/4)
where is the contents density and d is the internal diameter of the line.
Contents Pressure and Reference Z level
The contents pressure specifies the internal pressure in the line at a specified fixed reference Z level (specified
relative to global axes). The internal pressure at this Z level is assumed to remain constant throughout the
simulation. The internal pressure at other levels is calculated allowing for the static pressure head due to differences
in Z level. See Line Pressure Effects for details of contents pressure modelling.
The reference Z level can be set to '~' and this is taken to mean the Z level of the Top End of the line in the reset
state.
All pressures in OrcaFlex are gauge pressures, not absolute pressures. That is, they are relative to atmospheric
pressure and so can be as low as minus 1 atmosphere (-101.325 kPa).
Statics
The line static calculation is performed in 2 steps as described in Statics of Lines.
Included in Statics
This switch allows you to exclude certain lines from the statics calculation. This is mainly useful when building a
model and a particular line is not converging. In this situation you could exclude all other lines from statics (this is
easiest from the All Objects Data Form). This would allow you to experiment with different statics convergence
parameters for the problematic line without having to wait for all the other lines to converge each time you tried a
new set of convergence parameters.
Note: Results are not available for such lines and dynamics is disabled if you have any lines which are
excluded from statics.
Step 1 Statics Method
This can be either Catenary, Spline, Quick, Prescribed or User Specified.
The normal setting is Catenary, in which case the static analysis finds the equilibrium catenary position of the line,
allowing for weight, buoyancy, drag, but not allowing for bend stiffness or interaction with shapes. See Catenary
Statics.
The Catenary solution has some limitations and some systems, such as those with slack or neutrally buoyant lines,
can be troublesome. For such lines you can instead specify Spline, in which case the line is instead set to a 3D spline
curve based on spline control points specified by the user. See Spline Data and Spline Statics.
The Quick method leaves the line in the rough catenary shape used in the Reset state. See Quick Statics.
For pull-in analysis the Prescribed option has been provided. Here the user specifies the starting position of the line
as a sequence of straight line or curved sections on the seabed. See Prescribed Starting Shape.
The User Specified option allows you to specify the position for each node on the line. No calculation is performed,
the nodes are merely placed at the specified positions. See User Specified Starting Shape and User Specified Statics.
Step 2 Statics Method (Full Statics)
This can be either None or Full Statics.
If None is selected then the position obtained by the Step 1 Statics Method is used.
The Full Statics calculation finds a full equilibrium position for the model. Unlike the Step 1 Catenary method, bend
stiffness and interaction with shapes are included. Full statics needs a starting shape for the line, and it uses the Step
1 Statics Method to obtain this; it then finds the equilibrium position from there. You should therefore set the Step 1
Statics Method to give a reasonable starting shape. See Full Statics.
For more details of the Statics Calculation see Statics Analysis.
Warning: If you do not use Full Statics, then the starting position will not (in general) be an equilibrium
position.
System Modelling - Data and Results, Lines
w

280
Note: It is only possible to include buoys in the static analysis (see Buoy Degrees of Freedom Included in
Static Analysis) if either the Catenary method or Full Statics is used for all lines in the model.
Include Friction
Friction can be included in the static analysis only if the Step 1 Statics Method is Catenary or if Full Statics is used for
the Step 2 Statics Method.
With seabed friction present there is not, in general, a unique static position for the line, since the position it adopts
depends on how it was originally laid and its history since then. In order to define a unique solution, we therefore
need to make some assumptions about how the line was originally laid and friction is then assumed to act towards
this position.
If the Step 1 Statics Method is Prescribed, then this 'originally laid' position is assumed to be the position defined by
the Prescribed track. Otherwise, the 'originally laid' position is defined by specifying the Lay Azimuth and As Laid
Tension values.
Lay Azimuth
This data is only used when seabed friction is included in the static analysis and the Step 1 Statics Method is not
Prescribed. It then defines the position in which the line is assumed to have been originally laid, and friction is then
assumed to act towards this position. When Statics Method is not Prescribed, it is assumed that:
1. The line was originally laid, with the specified As Laid Tension, starting with the Bottom End at its specified
position (or at the point on the seabed directly below, if the Bottom End is not on the seabed).
2. The line was then laid in the Lay Azimuth direction, leading away from the Bottom End position and with the
specified As Laid Tension.
3. The line was laid following the profile of the seabed.
4. The Top End was then moved slowly from that original position to its specified position.
To help set this data item, there is a button on the form marked Set. This button sets the Lay Azimuth value to be the
direction from the Bottom End towards the Top End, based on their current positions.
Notes: Whilst the program will accept any Lay Azimuth, we would expect the statics convergence routine
to have increasing difficulty in finding a solution as the angle between the Lay Azimuth direction
and the vertical plane through the line ends increases. For example, if we have a line top at X=0,
Y=0, and anchor at X=100, Y=0, we would expect trouble for a Lay Direction of 90.
The Line Setup Wizard also uses the Lay Azimuth direction.
As Laid Tension
This data specifies the effective tension with which the line was originally laid. OrcaFlex uses this to determine the
as-laid node positions, which are used as the friction target positions towards which friction acts in the static
analysis. This data is therefore only used if friction is included in statics.
If the Step 1 Statics Method is set to Prescribed starting shape, then the statics friction target positions are laid out
along the prescribed shape with a strain determined by the axial stiffness and this As Laid Effective Tension value.
If the Step 1 Statics Method is not Prescribed, then this data is used as described in the Lay Azimuth section above.
Catenary Convergence
If the Catenary statics method is chosen, then an iterative catenary calculation is used to determine the static
position of the line. This calculation is controlled by a number of convergence parameters which can normally be left
at their default values. However sometimes the calculation can fail to converge. If this happens, first check your data
for errors and check for the following common causes of convergence failure:
- Does the solution have a slack segment? This can happen in lines that touch down on the seabed almost at right
angles or in lines that hang in a very narrow U shape. The catenary calculation cannot handle lines with slack
segments - try increasing the number of segments in the relevant section of the line.
- For lines that touch down on the seabed, is the Lay Azimuth value specified correctly? It is the azimuth direction
leading away from End B and it is easy to get it wrong by 180.
w
System Modelling - Data and Results, Lines
281
- Is the line buoyant, either deliberately or by mistake. The catenary calculation has problems with floating lines -
you may need to use the Spline statics method instead.
- Does the line have a surface-piercing buoyant clump attached? If the clump is short then the catenary
calculation is more difficult.
If the calculation still fails to converge, then it is sometimes possible to obtain convergence by changing one or more
of the convergence parameters, as outlined below.
Max Iterations
The maximum number of iterations that OrcaFlex will make before treating the calculation as having failed to
converge. Increasing this value can sometimes help.
Tolerance
The non-dimensional accuracy to which the calculation is done, before the calculation is treated as having
converged. Increasing the tolerance increases the chances of convergence but reduces the accuracy.
Min Damping
The minimum damping factor to be used in the calculation. Convergence can sometimes be achieved by increasing
this parameter to a value greater than 1 - try values in the range 1.1 to 2.0. The minimum damping should not be set
to less than 1.
Mag. of Std. Error, Mag. of Std. Change
These parameters control the maximum size of the change, in the estimated solution, this is allowed in a single step.
Reducing these values can sometimes help, but the calculation will then usually require more iterations.
The remaining parameters should not normally be changed. For further information contact Orcina.
Full Statics Convergence
The numerical method used to solve for the static position is an iterative process in which the program tries to
converge on the solution in a series of steps. This process is controlled by a number of convergence parameters,
found on the Line data form.
Convergence Control Method
Either Line Search or Mag. of Std. Error / Change. We recommend using the default value, Line Search, but if this
fails then the alternative Mag. of Std. Error / Change may succeed.
Max Iterations
The calculation is abandoned if convergence has not been achieved after this number of steps. For some difficult
cases simply increasing this limit may be enough.
Tolerance
This controls the accuracy of the solution. The program accepts the line position as a static equilibrium position if
the largest out of balance force component on any node is less than Tolerance * total weight in air.
When torsion is included the static equilibrium position must also satisfy the condition that the largest out of
balance moment component on any node is less than Tolerance * total weight in air * ODmax where ODmax is the
maximum diameter, contact diameter, stress diameter or normal drag diameter over the entire line.
Reducing the Tolerance value will give a more accurate static equilibrium position, but will take more iterations.
OrcaFlex may not be able to achieve the Tolerance specified if it is too small, since the computer has limited
numerical precision.
Delta
This is a perturbation size, used to calculate the Jacobian matrix for the problem. Delta should always be less than
the tolerance specified.
Note: This parameter is only used when torsion is included.
System Modelling - Data and Results, Lines
w

282
Min Damping, Max Damping
For some cases it is necessary to control the convergence process by damping down (i.e. reducing) the step taken at
each stage. The program includes an automatic damping system that chooses a suitable damping factor for each
iteration, but the user can set the minimum damping and maximum damping factors that are used.
Normally the default values will suffice but for difficult cases the default values can be altered. For cases that appear
to make the convergence unstable (e.g. giving very bad line positions on the screen) try increasing the Min
Damping factor to a value greater than 1, say values in the range 1 to 10. You can also try increasing the Max
Damping factor, say to values in the range 10 to 100.
Note: Convergence will be slower with larger damping values so you should use the smallest values that
result in statics converging.
Mag. of Std. Error, Mag. of Std. Change
These parameters are only available when the Mag of Std. Error / Change convergence control method is selected.
For some cases it may be necessary to reduce one or both of these values from their defaults. Doing so is likely to
slow down the convergence, but it may be necessary in order to achieve convergence!
Spline Starting Shape
The following data is only used if the Spline statics method is specified.
Order
This sets the smoothness of the spline shape; generally order 3 is reasonable. If a higher order is chosen, a smoother
curve results. The order cannot exceed the number of spline points.
Control Points
The line shape is specified by a number of Control Points. The first and last control points are automatically placed
at the line ends A and B respectively and OrcaFlex generates a smooth curve between the first and last control
points and passing near to the intermediate control points. These intermediate control points may be adjusted to
'pull' the curve into the desired shape.
The first and last control points correspond to line ends A and B respectively. The line is stretched to the specified
As Laid Tension and laid out following the spline curve starting at End A and working towards End B.
For a line with a Free end the line is laid out along the curve until End B is reached. If the length around the curve is
not equal to the stretched line length then the end will either fall short of the end Estimated Position or lie beyond it
(along the continuation of the curve along its 'final' direction).
For a line with a Fixed end, Anchor or attached to some object the curve is automatically expanded or contracted to
allow the end to lie at the specified end position. An error is reported if this process fails.
Prescribed Starting Shape
This data is only used if the Prescribed method is used for Step 1 statics. It can be found in the Prescribed Starting
Shape page on the line data form and can be edited in several ways:
- By editing the Length and Turn values of a track section on the line data form. OrcaFlex then creates an arc of
the specified Length and Turn, and the X and Y coordinates of the end of this section, and all subsequent
sections, are automatically adjusted to match.
- By editing the X and Y coordinates of the ends of a track section on the line data form. OrcaFlex then creates the
(unique) circular arc (or straight line) that is a smooth continuation of the previous section and passes through
the new (X,Y) point. The Length and Turn values for this section, and the X and Y coordinates for subsequent
sections, are then automatically adjusted to match.
- By dragging the end points of the track sections on a 3D view using the mouse. The track and the track section
end points are drawn on the 3D views. Dragging a track section end point is equivalent to editing its X and Y
values, as described above.
The individual data items (see Figure: Plan View of Example Track) are as follows:
End A Azimuth
The initial direction of the track.
w
System Modelling - Data and Results, Lines
283
Track Sections
The number of sections used to define the track.
Section Length
The length of the circular arc (or straight line if Section Turn = 0).
Section Turn
The amount by which the track azimuth increases over this section. A positive value denotes a turn to the left, when
viewed from above, and a negative value denotes a turn to the right. A value of zero can be entered to specify a
straight track section.
Section Radius
The radius of curvature of the circular arc. The radius equals (180L)/(T), where L is the section length and T is the
absolute value of section turn, in degrees. For straight sections (i.e. if Section Turn = 0) the radius is reported as
Infinity.
Notes: This is a reported value, not an editable data item, and is hence always shown in grey.
With a profiled or sloping seabed the actual track on the seabed will have a slightly different radius
of curvature - see Laying out the Line.
Section X and Y
The global X and Y coordinates of the end of this track section. You can either edit these X and Y coordinates
explicitly, on the line data form, or else by dragging the end point on a 3D view. If you edit X or Y then OrcaFlex fits a
circular arc (starting at the previous section's end point) through the new end point and the Section Length and
Section Turn are automatically updated to match this new arc.
Section Z
The global Z coordinate of the section end point on the seabed. This is a reported value, not an editable data item,
and is hence always shown in grey.
Section Arc Length
The total arc length to the end of the section. This is a reported value, not an editable data item, and is hence always
shown in grey.
Section Azimuth
The azimuth direction at the end of the section. This is a reported value, not an editable data item, and is hence
always shown in grey.
Track Pen
This controls how the track is drawn. You can switch between the options of drawing the track in the chosen pen
and not drawing it at all.
Laying out the Line
The track data defines a sequence of straight lines and circular arcs in the horizontal plane, which are then projected
vertically onto the seabed to define the track itself. The program then lays the line out along the track, allowing for
any As Laid Tension specified by the user on the line data form.
Because the line is modelled as a series of straight segments, when the line is laid out along a curved track it will
repeatedly 'cut corners' and so the length of line laid along a given curved track section will be slightly shorter than
the length of that section. The size of this discrepancy reduces as more segments are used.
If End A is above the seabed then the height above the seabed varies linearly between End A and the first track
section point, reaching the seabed at the end of the first track section. If the end of the last track section is reached
before all the line has been laid out, then the rest of the line is laid out in a straight line in the direction of the end of
the track.
Sloping and profiled seabeds
The track on the seabed is obtained by projecting the specified circular arcs or straight sections vertically down onto
the seabed. With a horizontal seabed this vertical projection has no effect on the shape of the track. But with a
System Modelling - Data and Results, Lines
w

284
sloping seabed the vertical projection does not preserve distances and this causes some effects that users should
note:
- The section lengths and arc lengths that appear in the prescribed starting shape data table are lengths in the
horizontal plane, i.e. before projection down onto the seabed. With a sloping seabed the true section and arc
lengths on the seabed will differ, the difference depending on the slope of the seabed. The actual arc lengths can
be obtained by running the static analysis and looking at the Full Results table for the line.
- The section radius reported in the prescribed starting shape data table is that of the circular arc in the
horizontal plane, i.e. before projection down onto the seabed. When the circular arc is projected down onto a
sloping seabed the resulting track section is slightly elliptical rather than circular, so again the actual radius of
curvature will differ. The actual radii of curvature can be obtained by running the static analysis and looking at
the Full Results table for the line.
User Specified Starting Shape
Starting Shape
The User Specified Starting Shape statics method places each node at the position specified in this table. If torsion is
modelled then node orientations can also be specified.
Drag and Wake
Drag Formulation
A number of authors have proposed formulae to model how the drag force on a line varies with the incidence angle.
OrcaFlex offers the choice of the Standard, Pode or Eames formulations. All of these use drag coefficients that are
specified on the Line Types data form.
For details of the formulations see the Line Theory section.
Line Wake Interference
To include wake interference modelling you must first define one or more wake interference models. See the Wake
Models button on the Line data form.
You must then specify which line sections to include in wake modelling, by either being included as a wake
generator (an 'upstream' section) or as a section that reacts to wake (a 'downstream' section), or both (a
downstream section that reacts to wake generated further upstream, but also generates its own wake that further
downstream sections might react to). For details see the Line Wake Interference Data on the Drag & Wake page of
the Line Data Form.
Note: Wake modelling is only included in the static analysis if the Statics Method is set to Whole System
Statics. It is not included if the Separate Buoy and Line Statics method is specified. This is
because wake effects require that the static positions of the lines involved are calculated together,
not separately.
How Wake Effects Are Modelled
The wake models are steady state models of wake effects. Also OrcaFlex does not model the effect that wake takes
time to convect downstream. OrcaFlex therefore only attempts to model the steady wake effects.
Wake is generated when there is fluid velocity relative to the upstream cylinder, so both fluid motion and upstream
cylinder motion can contribute to the wake. Therefore the velocity OrcaFlex uses as the input to the wake model is
the steady relative velocity Vs given by
Vs = [undisturbed current velocity vector at upstream cylinder centre] - [any steady starting velocity
specified for the model]
The wake effects therefore do not include any effects of wave motion, or of any changes in upstream cylinder
velocity during a simulation.
w
System Modelling - Data and Results, Lines
285
Note: OrcaFlex does not model combined wake effects. If a given 'downstream' node is in the modelled
wake of more than one 'upstream' node, then OrcaFlex chooses to apply the wake effects of the
upstream node that gives the strongest wake effect at that downstream position when the wake
effects from other upstream nodes (which give weaker wake effects at that point) are ignored. So if
you are modelling riser arrays, for example, then the wake effects at any given point are modelled
as if they came from the upstream wake-generating node that gives largest wake effect in
isolation, i.e. with the other upstream nodes were absent.
The strength of a given node's wake decays with distance downstream and also with distance in the transverse
direction, as specified by the wake model. But in addition OrcaFlex also makes the wake strength decay in the axial
direction of the upstream line, so that the strongest wake selected comes from the upstream node that is axially
closest to the downstream node. More details are given in the paper by Wu et al.
Line Wake Interference Data
Wake modelling requires significant computation, so to avoid slowing simulations unnecessarily OrcaFlex enables
you to only include wake modelling for sections of line where you think wake effects might be significant. This is
done on the Drag & Wake page of the line data form, by specifying which line sections generate modelled wake (the
'upstream' sections) and which line sections react to modelled wake (the 'downstream' sections).
The fluid forces applied to sections that react to modelled wake will include the strongest wake effect from the
sections that generate modelled wake. The following two data items specify which sections generate and/or react
to wake:
Wake Generated
This can be set to one of the defined wake models, in which case OrcaFlex will model wake generated by that line
section acting as an 'upstream' line. Or it can be set to None, in which case OrcaFlex will not model wake generated
by that line section.
Three types of wake model are available.
- The Huse model is an analytic wake model that models the velocity reduction and hence drag reduction on the
downstream object, but does not model the wake lift effect.
- The Blevins model is an analytic model that models the both the drag reduction and the wake lift force that
tends to draw the downstream object into the centre of the wake.
- The User Specified model allows you to model both the drag reduction and wake lift effect using your own data,
by specifying the drag and wake lift coefficients as a function of the position of the downstream object relative
to the wake of the upstream object.
See the Wake Models section for details.
Reacts to Wake
If Reacts to Wake is turned on then each node in the section will act as a 'downstream' cylinder in the wake
modelling. Those nodes will then be subject to the strongest wake effects (i.e. strongest at that downstream
position) from any upstream node that generate modelled wake. Sections with Reacts to Wake turned off will
ignore any modelled wake generated by upstream sections.
So to summarise, the wake modelling will include the strongest wake effects on downstream sections that have
Reacts to Wake turned on, due to modelled wake from upstream nodes with Wake Generated set to a wake model.
Note: A line section is allowed to be both a 'downstream' section, i.e. Reacts to Wake is turned on, and at
the same time also act as an 'upstream' section, i.e. generate modelled wake that further
downstream line sections can react to. However the wake effects of such a section will be based on
the undisturbed steady relative flow velocity, so the wake effects of this wake-generating section
will not take into account any velocity reduction due to it in turn being in the wake of another
wake-generating section further upstream.
Wake Models
The Wake Model Data form enables you to define one or more models of wake interference. The wake interference
model specified determines how the flow velocity, wake drag reduction and wake lift force on a downstream
cylinder varies as a function of the (x,y) position of the downstream cylinder centre relative to the wake frame of
reference of the upstream cylinder.
System Modelling - Data and Results, Lines
w

286
You can define more than one wake model, for example if you want to use different wake models to model the wake
generation by different lines. A wake model that isn't used by any line in the model will be ignored, so you can define
wake models and then decide later which (if any) to use to model wake generation.
Wake frame of reference
The wake modelling is done relative to a wake frame of reference that is based on the steady relative fluid velocity
vector Vs at the upstream cylinder, and is given by:
- The wake frame origin is at the upstream cylinder centre.
- The wake frame x-axis is in the direction of the steady relative fluid velocity vector Vs.
- The wake frame z-direction is the direction obtained by projecting the upstream cylinder axial direction normal
to Vs. It is therefore the direction normal to Vs and in the plane formed by the Vs and the cylinder axial direction.
The +ve wake z-direction is towards end B of the upstream line.
- The wake frame y-axis is the direction that completes the orthogonal right-hand triad of wake axes x,y,z. It is
therefore normal to the plane formed by Vs and the cylinder axial direction.
The wake model theory below uses the following key variables. Upper case subscript 'D' denotes 'drag', lower case
subscripts 'u' and 'd' denote 'upstream' and 'downstream', and subscript '0' denotes 'undisturbed', i.e. ignoring any
wake effects.
Vd(x,y) is the disturbed fluid velocity vector at downstream position (x,y) relative to the upstream cylinder
wake, allowing for wake effects.
Vd0(x,y) is the undisturbed fluid velocity vector at position (x,y).
Vu0 is the undisturbed fluid velocity at the upstream cylinder centre.
Du, Dd and CDu0, CDd0 are the normal drag diameter and undisturbed drag coefficient of the upstream and
downstream cylinders, respectively, as specified on the line type data form. Note that the wake modelling
does not allow for any non-isotropic aspects of the drag coefficients. If different drag coefficients have been
specified for the line x- and y-directions then the wake modelling uses the mean of the two values.
Wake Model Data
Each wake model is given a user-specified Name. And each model can be one of three types - Huse model, Blevins
model or User-Specified model, as described below.
Huse Model
This is an analytic model proposed by Huse (1993). It models the wake velocity reduction, and hence drag
reduction, but does not give any wake lift force.
In the Huse model the wake fluid flow velocity Vd(x,y) at a given position (x,y) in the wake is given by:
Vd(x,y) = Vd0(x,y) - k2Vu0[CduDu/xs]
1/2
exp[-k3(y/b)
2
]
where
xs = x + 4Du/Cdu
b = k1[CduDuxs]
1/2

and the other terms are defined above.
k1, k2 and k3 are user-editable non-dimensional model parameters. They should normally be left as the default
values, since these give the original Huse model. (Note that the parameter k3 is mis-printed in Huse, 1993 as 0.639
and was corrected in a later paper to 0.693.) Changing these model parameters from their default values will give a
variant of the Huse model.
Blevins model
The Blevins model is an analytic model that models velocity and drag reduction, and also models the wake lift force
that tends to draw the downstream object into the centre of the wake. See the Appendix of Blevins OMAE 2005
paper for the theory of the model.
The model has 3 non-dimensional model parameters a1, a2, a3 that are user-editable. They should normally be left as
the default values, since these are the values given by Blevins. Changing these model parameters from their default
values will give a variant of the Blevins model.
w
System Modelling - Data and Results, Lines
287
User Specified model
This option allows you to define a model (of both wake drag reduction and wake lift effect) by specifying drag and
lift coefficient factors as a function of the position of the downstream object relative to the wake of the upstream
object.
The wake effects are specified by giving a table of wake drag and lift coefficient factors for the downstream
cylinder, as a function of the downstream cylinder position relative to the upstream cylinder wake, as follows. See
above for notation.
- The Position columns of the table define, in non-dimensional form, a number of downstream cylinder centre
positions relative to the upstream cylinder wake frame of reference. This is done by specifying non-
dimensionalised distances L/Du (downstream) and T/Du (transverse) from the upstream cylinder centre to the
downstream cylinder centre, where Du is the normal drag diameter of the upstream cylinder.
- The Coefficient Factor columns of the table define the wake effects at the given (L/Du, T/Du) positions, by
specifying drag and lift coefficient factors. Note that these data are scaling factors, not the drag and lift
coefficients themselves. The drag factors are non-negative scaling factors that are applied to the reference drag
coefficient CDd0 that is specified on the line type data form. The lift coefficient factors are signed scaling factors
that are applied to the Reference Wake Lift Coefficient CLd0, which is specified on the wake models data form.
A +ve lift coefficient factor means a lift force in the +ve wake frame y-direction, so the lift coefficient factor at a
given T/Du position will normally have the opposite sign to the T/Du value, since wake lift effects are normally
towards the centre line of the wake.
Wake drag effects are normally symmetric, and wake lift effects anti-symmetric, either side of the wake centre line.
So to avoid the need to specify in the table both +ve and -ve values of T/Du you can tell OrcaFlex to Reflect Data. In
this case you must only specify table rows for one half of the wake plane, i.e. either for T/Du>= 0 only, or for T/Du<=
0 only. For a wake frame position (x,y) that is on the other side of the wake centre line OrcaFlex will then
automatically use the drag and lift coefficient factors defined for the symmetric position (x,-y), but with the lift
coefficient factor negated.
OrcaFlex uses linear triangular interpolation to obtain the drag and lift coefficient factors to use for wake frame
positions between those specified in the table.
Results
Log Results
This option is checked by default and this means that simulation results at all points on the Line are available. If this
option is unchecked then no simulation results are available for this Line.
OrcaFlex stores simulation results in an efficient way, only logging a minimal set of variables to the simulation file.
Other results variables which have not been logged are then derived when the results are requested. Usually this
means that simulation files are a reasonable size and we recommend that this value is checked.
Should you need to reduce the size of simulation files then this option can be unchecked for those lines for which
you do not need results.
Arc length axis, Arc length axis inverted, Value axis inverted
These data items allow you customise the way range graphs are displayed. The Arc length axis setting allows you to
control whether the arc length axis is horizontal or vertical. The latter option would typically be used for vertical
risers.
Normally the axes on an OrcaFlex graph display increasing values to the right (for a horizontal axis) or upwards (for
a vertical axis). The axis inverted options allow you to reverse the axes. Again this would typically be used for
vertical risers to arrange that up and down on the arc length axis of the graph matched up and down in the physical
system being modelled.
Since changes to these settings are usually motivated by the physical layout of the line in question, each line in an
OrcaFlex model has its own copies of these settings.
These data items can also be set on the results form.
System Modelling - Data and Results, Lines
w

288
Drawing
Nodes
You can define the colour, line style and thickness of the pens used for drawing the nodes and sections of the line.
See How Objects Are Drawn. You can also choose to draw nodes as circular discs with diameter equal to the contact
diameter.
Segments
There is a choice for which pen is used to draw the segments. You may either specify the pen explicitly on the Line
Data form, in which case it will be used for all segments of that line. This allows you to use different pens to
distinguish between different lines. Alternatively, you can choose to have the segments drawn using the appropriate
Line Type Pen defined on the Line Types form. This allows you to use different pens to distinguish sections of
different line types.
Node axes
Node axis directions (x, y, z) can be given individual colours. This helps distinguish between x and y directions thus
making component results easier to interpret. The node axes directions are drawn optionally and can be controlled
by the Draw Node Axes preference or by pressing CTRL+ALT+Y.
Contact
You can define a contact pen which is used when drawing nodes and segments which are in contact with the seabed,
elastic solids and other lines. Should you wish you can choose to disable the contact drawing.
Prescribed Statics Method (Track)
For Lines with Prescribed Statics Method you can control how the track is drawn. You can switch between the
options of drawing the track in the chosen pen and not drawing it at all.
Spline Starting Shape
For the Spline Starting Shape you can switch between the options of drawing the unscaled spline in the chosen pen
and not drawing it at all.
VIV Drawing
The VIV Drawing page is visible when a time domain VIV model is used. For details see the VIV Drawing topic.
Properties Report
The Line properties report is available from the popup-menu on the data form. It reports the following:
Total length
The sum of all the section lengths.
Total weight in air
The force due to gravity of the entire line. The contents are included but the weight of any attachments is excluded.
Total displacement
The weight of water displaced by the entire line's volume. The displacement of any attachments is excluded. The
reported value uses the water density at the sea surface.
Total weight in water
Equals Total line weight in air - Total line displacement.
Full Statics force accuracy, Full Statics moment accuracy
Full Statics force accuracy is only reported if the line uses the Full Statics method. Full Statics moment accuracy is
only reported if the line uses the Full Statics method and torsion is included.
The Full Statics method finds an equilibrium configuration - that is a set of node positions for which the resultant
force and moment on each node is zero. We refer to the resultant force and moment as the out of balance load.
Because computers have limited numerical precision the static analysis cannot always find a configuration where
the out of balance load is exactly zero. OrcaFlex accepts a position as a static equilibrium position if the largest out of
balance load component is less than the statics accuracy.
w
System Modelling - Data and Results, Lines
289
The Full Statics force accuracy equals Tolerance * line typical force and the Full Statics moment accuracy equals
Tolerance * line typical moment. The line typical force is defined to be the total weight in air. The line typical
moment is defined to be total weight in air * total length.
Reducing the Tolerance value will give a more accurate static equilibrium position, but will take more iterations.
OrcaFlex may not be able to achieve the Tolerance specified if it is too small, since the computer has limited
numerical precision.
7.8.2 Line Types
Data
The Line Types form defines the properties of a number of named line types, which can then be used to specify the
structure of the Lines used in the model.
The line types form must include all the line types referred to on all of the Lines forms, but it can also include other
line types that are not currently in use in the model. This allows you to build up a library of standard line types
which can then be easily used when building Lines.
There is not enough room on the screen to show all the properties of all the line types, so OrcaFlex offers different
view modes:
- Individual mode shows one line type at a time, but shows you all its properties.
- All mode shows all the line types, but different types of properties are shown in different tables.
- Code Checks mode shows data used for post-processing code checks.
- External Function Parameters mode shows the data used by any external functions referenced by the Line
Type.
The Line Type Wizard is available to help set up line type data to represent commonly used structures such as
chains, ropes etc.
Line Type Name
Used to refer to the Line Type.
Category
Can be either:
- Homogeneous Pipe: This option is appropriate for a pipe constructed from a single homogeneous material, for
example a metal riser, or when modelling stress joints and bend stiffeners. The pipe's structural properties are
defined by specifying Young's modulus, material density and pipe diameters. When modelling stress joints and
bend stiffeners the outer diameter can be specified as varying with arc length.
- General: This option is used in all other situations. The axial, bending and torsional stiffnesses are directly
input instead of being calculated from E. Similarly the mass is specified as mass per unit length as opposed to
being calculated from a material density. This approach allows analysis of flexible risers, umbilicals, hoses,
mooring chains, ropes, wires, bundles, seismic arrays, power cables, nets etc.
Geometry & Mass Data
Outer and Inner Diameter
Used to define buoyancy and mass of contents per unit length respectively.
These data can also be used for other purposes as follows:
- If the Stress Diameters are set to '~' then these diameters are used for wall tension and stress results
calculations.
- If the Contact Diameter is set to '~' then the outer diameter is used for contact calculations.
- If the Drag / Lift Diameters are set to '~' then the outer diameter is used for drag calculations.
Profiled line types (homogeneous pipe only)
For homogeneous pipes the outer diameter can vary with arc length. To do this you first specify the profile in a Line
Type Outer Diameter variable data source which is then referenced by the outer diameter data of the line type.
System Modelling - Data and Results, Lines
w

290
This feature is used when modelling stress joints and bend stiffeners. Arc length is defined relative to the start of the
line section which uses this line type and increases from End A towards End B.
CG Offset
The x and y coordinates of the centre of gravity (CG) relative to the centreline. These data items are only used when
torsion is being modelled. Note that if the line has contents then the contents CG is assumed to be at the centreline
and is not affected by this CG Offset.
Bulk Modulus
Specifies the compressibility of the line type. If the line type is not significantly compressible, then the Bulk Modulus
can be set to Infinity, which means incompressible. See Buoyancy Variation.
Material Density (homogeneous pipe only)
The density of the material.
Mass per Unit Length
The mass of the line or pipe structure, excluding contents, per unit length. For homogeneous pipes the material
density is used to calculate the structural mass and therefore the mass per unit length data item cannot be edited.
Coatings & Linings Data
Coatings and Linings are available for homogeneous pipe only.
They are typically used with steel pipes to model the additional mass and displacement of concrete coatings, plastic
linings etc. They contribute mass, weight and displacement and also modify the pipe's inner and outer diameters.
However, they contribute no additional structural strength and are assumed not to be load bearing. Stress results
are calculated based on stress diameters equal to the underlying pipe diameters.
Thickness and Material Density
The thickness specifies the physical dimension of the coating or lining. For a coating the buoyancy diameter, contact
diameter and drag diameters are all increased by twice the coating thickness. Similarly the pipe's inner diameter is
reduced by twice the lining thickness which has the effect of reducing the contents mass and weight.
The material density is used, together with the thickness, to calculate the additional mass and weight of the coating
or lining.
Multiple layers
The data on the Line Type data form only allow single coating or lining layers to be specified. It is, however, also
possible to specify multiple layers of coatings or linings. To do this you define Coatings or Linings variable data
sources which are then referenced by the thickness data on the Line Type data form.
These data sources specify a list of layers defined by thickness and material density. The layers are listed in the
order of application. In other words the first layer is immediately adjacent to the pipe, the second layer is next to the
first layer, and so on.
Limits Data
Limit Compression
The program has two modes for handling slack segments, i.e. when the distance between two adjacent nodes
becomes less than the original unstretched segment length:
No: means that the segment is treated as a strut which can support unlimited compression. This is the preferred
model except where bend stiffness is insignificant.
Yes: means that the segment is treated as an elastic Euler strut - the compression is limited to the segment Euler
load. This is a better model for cases where the bend stiffness is insignificant, such as for chains and soft ropes.
The segment Euler load is given by
2
.EI/L0
2
where EI is the bending stiffness of the pipe and L0 is the unstretched
length of the segment. In all cases, whenever a segment has been compressed to or beyond the segment Euler load,
then a warning of this is given on the results form and in the statistics table.
w
System Modelling - Data and Results, Lines
291
For items such as mooring chain, the bending stiffness is zero, and the segment Euler load is also zero. In this case
"Limit Compression" should be set to "Yes" - this correctly models a chain or very flexible rope, which cannot
support any compression. The segment Euler load warning is then simply a warning that the line has gone slack.
For a line with non-zero bend stiffness the Euler load warning is effectively a warning that the segments at that
point are too long to accurately model the bending that is occurring. Effectively, bending is occurring at a scale that
is less than the segment length, so shorter segments are needed to model it accurately. Using shorter segments in
that area will give a larger segment Euler load, and to obtain an accurate solution you should, ideally, use sufficiently
short segments that the resulting segment Euler load is not reached. See Line Compression and Modelling
Compression in Flexibles for details.
Maximum Tension
The maximum permitted tension for this type of line. This value is only used to draw a limit curve on Tension Range
Graphs; it does not limit the tension achieved in the line. If no limit curve is wanted then you may input the tilde
character "~" (meaning not applicable) instead of a number.
Minimum Bend Radii (MBR)
You can specify the minimum permitted radii of curvature for bending about the x and y-directions. These values
are optional - they are only used to draw "allowable" curves on range graphs and in the calculation of Normalised
Curvature results. They do not limit the bend radius of the line. If you do not want these curves then set the x-radius
to "~" (meaning "not applicable") and the y-value to "~" (meaning "same as x-value").
Often the radii for the x and y-directions are equal and this can be specified by setting the y-radius to "~" which
means "same as x-radius".
The specified values are used to draw "allowable curvature" curves on the x- and y-Curvature range graphs, and also
(if the x and y-minimum radii are equal) on the Curvature range graph. In addition, they are used (together with the
specified bend stiffness) to derive "allowable bend moment" curves which are drawn on the x- and y-Bend Moment
range graphs, and also (if the x and y-values are equal) on the Bend Moment range graph. The MBR is also used to
calculate normalised curvature.
Notes: MBR can be specified as a variable data item - defined as a table relating MBR to effective tension.
A typical example of this would be a steel core umbilical. A variable MBR is used solely in the
calculation of normalised curvature.
The "allowable" curve may not be visible on the range graph, since it may be outside the range
covered by the graph. To see the "allowable" curve in this case you will need to modify the graph to
increase the range of values covered.
Structure Data
Young's Modulus (homogeneous pipe only)
The Young's modulus of the material which can be constant or variable.
- A constant value results in linear material properties.
- A variable data item specifies a non-linear stress-strain relationship which results in a bending stiffness with
non-linear elastic behaviour. Note however that the axial and torsional stiffnesses are still assumed to be linear.
For homogeneous pipes the Young's modulus determines the axial, bending and torsional stiffnesses. These stiffness
data items are reported on the data form, although they cannot be edited.
Bend Stiffness
The bend stiffness is the slope of the bend moment-curvature curve. You can specify separate values for bending
about the x and y-directions, but often these are equal. This can be achieved by setting the y-bend stiffness to '~'
which means 'same as x-bend stiffness'.
The bend stiffness specified may be zero, for example for chains. It can also be very large values, for example for
steel pipes, but this will often result in short natural periods in the model and hence require short simulation time
steps. See Inner and Outer Time Steps.
You can specify the bend stiffness to be linear, elastic non-linear, hysteretic non-linear or externally calculated,
as follows. See Calculating Bend Moments for further details of the bending model used.
System Modelling - Data and Results, Lines
w

292
Linear Bend Stiffness
For normal simple linear behaviour, specify the bend stiffness to be the constant slope of the bend moment-
curvature relationship. This slope is the equivalent EI value for the line, where E is Young's modulus and I is the
moment of area of the cross-section. The bend stiffness equals the bend moment required to bend the line to a
curvature of 1 radian per unit length.
Non-Linear Bend Stiffness
For non-linear behaviour, use variable data to specify a table of bend moment magnitude against curvature
magnitude. OrcaFlex uses linear interpolation for curvatures between those specified in the table, and linear
extrapolation for curvatures beyond those specified in the table. The bend moment must be zero at zero curvature.
For homogeneous pipes the Plasticity Wizard may be useful to help set up the table.
With non-linear bend stiffness you must also specify whether the hysteretic bending model should be used.
- Non-hysteretic means that the non-linear stiffness is elastic. No hysteresis effects are included and the bend
moment magnitude is simply the specified function of the current curvature magnitude.
- Hysteretic means the bend moment includes hysteresis effects, so that the bend moment depends on the history
of curvature applied as well as on the current curvature. Also note that if the hysteretic model is used then the
line must include torsion effects.
Warning: You must check that the hysteretic model is suitable for the line type being modelled. It is not
suitable for modelling rate-dependent effects. It is intended for modelling hysteresis due to
persisting effects such as yield of material or slippage of one part of a composite line structure
relative to another part.
If you use the hysteretic bending model then the simulation speed may be significantly slowed if there are a large
number of points specified in the table of bend moment against curvature. You might be able to speed up the
simulation, without significantly affecting accuracy, by removing superfluous points in areas where the curve is very
close to linear.
In addition hysteretic bend stiffness usually requires shorter time steps than non-hysteretic modelling, when using
implicit integration.
Note: If you are using non-linear bend stiffness, then the mid-segment curvature results reported depend
on whether the bend stiffness is specified to be hysteretic or not. If the bend stiffness is not
hysteretic then the mid-segment curvature reported is the curvature that corresponds to the mid-
segment bend moment (which is the mean of the bend moments at either end of the segment). If the
bend stiffness is hysteretic then the mid-segment curvature cannot be derived in this way (because
of possible hysteresis effects) so the mid-segment curvature reported is the mean of the curvatures
at the ends of the segment. This difference may be significant if the bend stiffness is significantly
non-linear over the range of curvatures involved.
For further details see non-linear bend stiffness theory.
Externally Calculated Bend Moment
This option allows the bend moment to be calculated by an external function. If this option is used then the line must
include torsion effects. The external function can be written by the user or other software writers. For details see
the OrcaFlex programming interface (OrcFxAPI) and the OrcFxAPI documentation.
Warning: Non-linear behaviour breaks the assumptions of the stress results and fatigue analysis in OrcaFlex.
You should therefore not use these facilities when there are significant non-linear effects.
Axial Stiffness
The axial stiffness is the slope of the curve relating wall tension to strain. The data specifies the behaviour in the
unpressured state, i.e. atmospheric pressure inside and out. Pressure effects, including the Poisson ratio effect, are
then allowed for by OrcaFlex.
You can either specify linear or non-linear behaviour, as follows:
- For a simple linear behaviour, specify the axial stiffness to be the constant slope of the line relating wall tension
to strain. This slope is the equivalent EA value for the line, where E is Young's modulus and A is the cross section
area. It equals the force required to double the length of any given piece of line, assuming perfectly linear elastic
behaviour. (In practice, of course, lines would yield before such a tension was reached.)
w
System Modelling - Data and Results, Lines
293
- For a non-linear behaviour, use variable data to specify a table of wall tension against axial strain. OrcaFlex uses
linear interpolation for strains between those specified in the table, and linear extrapolation for strains beyond
those specified in the table. The wall tension is allowed to be non-zero at zero strain.
Note: Axial strain is defined to equal (L - L0) / L0, where L and L0 are the stretched and unstretched
length of a given piece of pipe. Here 'unstretched' means the length when unpressured and
unstressed. When a pipe is pressured its tension at this 'unstretched' length is often not zero
because of strains due to pressure effects. For a homogeneous pipe this can be modelled by
specifying the Poisson ratio. For a non-homogeneous pipe (e.g. a flexible) the Poisson ratio may not
be able to capture the pressure effects.
Warning: Non-linear behaviour breaks the assumptions of the stress results and fatigue analysis.
See Calculating Tension Forces for details of the tension model used.
Note: If you use explicit integration for dynamic simulation then the axial stiffness specified here will
have a major effect on how long the dynamic simulation will take. This is because very large axial
stiffness values lead to very small natural periods for the nodes, and this in turn requires very small
simulation time steps when using explicit integration. See Inner and Outer Time Steps.
Fortunately, the value of axial stiffness used is often not very important, providing it is large
enough that the axial strains produced are small. The exception to this is where snatch loads occur,
since the axial stiffness directly affects the peak tension that results. It is therefore normally quite
acceptable to specify a much smaller axial stiffness value than applies to the real line, so enabling
much faster simulations. We recommend that artificially low axial stiffness values are specified,
particularly for early investigative simulations. The effect of this can easily be investigated later by
re-running a selection of important simulations with the actual axial stiffness value.
Poisson Ratio
This specifies the Poisson ratio of the material that makes up the wall of the line type. It is used to model any length
changes due to the radial and circumferential stresses caused by contents pressure and external pressure.
A Poisson ratio of zero means no such length changes. For metals such as steel or titanium the Poisson ratio is about
0.3 and for polyethylene about 0.4. Most materials have Poisson ratio between 0.0 and 0.5.
Note: The Poisson ratio effect is calculated assuming that the line type is a pipe made from a
homogeneous material. It is not really applicable to complex structures such as flexibles, whose
length changes due to pressure are more complex. However for such cases an effective Poisson
ratio could be specified as an approximation.
Torsional Stiffness
The torsional stiffness is used only if torsion is included on the line data form.
The torsional stiffness specifies the relationship between twist and torsional moment (torque). You can specify
linear or non-linear behaviour, as follows:
- For a simple linear behaviour, specify the torsional stiffness to be the constant slope of the torsional moment-
twist per unit length relationship. This slope is the equivalent GJ value for the line, where G is the shear modulus
and J is the polar moment of inertia. It equals the torque which arises if the line is given a twist of 1 radian per
unit length.
- For a non-linear behaviour, use variable data to specify a table of torque against twist per unit length. OrcaFlex
uses linear interpolation for curvatures between those specified in the table, and linear extrapolation for values
outside those specified in the table. The torque must be zero at zero twist.
See Calculating Torsion Moments for details on how this data is used.
Note: When defining non-linear torsional stiffness you should specify values for both positive and
negative twist per unit length. This allows you, for example, to have different stiffnesses for positive
and negative twisting. If the behaviour is mirrored for positive and negative twist then you must
specify the full relationship - OrcaFlex does not automatically reflect the data for you.
Warning: Non-linear behaviour breaks the assumptions of the stress results and fatigue analysis.
System Modelling - Data and Results, Lines
w

294
Drag, Lift & Added Mass Data
Drag Coefficients
The drag coefficients for the normal (x and y) directions and axial (z) direction are specified on the line type data
form. For the x and y directions the drag coefficients can be one of the following options:
- A fixed constant value.
- A value that varies with Reynolds number.
- A value that varies with Height above Seabed.
- A value that varies with both Reynolds number and Height above Seabed.
Often the coefficients for the x and y-directions are equal and this can be specified by setting the y-coefficient to "~",
which means "same as x-coefficient". OrcaFlex also offers a choice (on the line data form) of different formulations
for how the drag force components vary with the incidence angle.
If wake interference effects are being modelled for a given line, then these normal drag coefficients on the line type
data form specify the undisturbed drag coefficient. And the drag force will be calculated using a drag coefficient
that is modified from this value according to the wake model used.
For further details see the Line Theory section.
Lift Coefficient
The lift coefficient is used to specify a lift force which acts in the direction normal to the line axis and in the plane of
that axis and the seabed normal. It can be one of the following options:
- A fixed constant value.
- A value that varies with Reynolds number.
- A value that varies with Height above seabed.
- A value that varies with both Reynolds number and Height above seabed.
For further details see the Line Theory section.
Drag / Lift Diameters
These are used when calculating drag area and lift area. A value of '~' results in the outer diameter being used.
Note: OrcaFlex calculates the normal drag / lift area to be DnL and the axial drag area to be DaL where
Dn is the normal drag / lift diameter, Da is the axial drag diameter and L is the element length. Note
that different programs handle these calculations in different ways. For example it is common for
programs to use a single drag / lift area for both normal and axial flow and in addition some
programs do not include the factor of in the axial drag area. Because of these differences you
must be careful when comparing or transferring data between different programs.
Added Mass Coefficients
The added mass coefficients Ca for normal (x and y-directions) and axial (z-direction) flow. Often the coefficients for
the x and y-directions are equal and this can be specified by setting the y-coefficient to "~" which means "same as x-
coefficient".
For each flow direction, the inertia coefficient, Cm, is automatically set to equal 1+Ca. See Added Mass for details.
Contact Data
Contact Diameter
Contact between lines and the seabed, elastic solids or other lines accounts for the diameter of the line. This value
specifies the diameter to be used. If a value of '~' is specified then the line outer diameter is used.
This value is also used in the calculation of Line Contact Clearance results and as the drawing diameter for shaded
graphics views.
Contact Stiffness and Damping
The stiffness and damping values used by the clashing algorithm. See Line Clashing.
w
System Modelling - Data and Results, Lines
295
Damping is always zero when using the implicit integration scheme.
Stress Data
Stress Outer and Inner Diameter
The stress diameters are the inside and outside diameters of the load-bearing cylinder. They are used in the wall
tension and stress results calculations, which are based on the assumption that the loads in the line are taken by a
simple homogeneous cylinder. For simple cases, the stress diameters can be set to '~', in which case they will be
taken to be the same as the pipe diameters. For more complex cases, for example where the pipe outside diameter
allows for added buoyancy modules that are not load bearing, the stress diameters can be set separately. See Line
Results - Forces.
Allowable Stress
The maximum allowable stress for this type of line. This value is only used to draw a limit curve on Stress Range
Graphs; it does not limit the stress achieved in the line. If no limit curve is wanted then you may input the tilde
character "~" (meaning not applicable) instead of a number.
Stress Loading Factors
These are used to specify what proportion of the loads (tension, bend moment, shear and torque) are to be used
when calculating wall tension and stress results. The effective tension, bend moment, shear force and torque are
multiplied by the appropriate stress loading factor when they are used to calculate the wall tension and stress
results.
For many cases, e.g. when modelling a simple homogeneous pipe that carries all the loads, these load factors should
be set to 1, the default value.
In some cases, values less than 1 may be suitable. For example, consider a case where the line models a composite
structure that consists of a main carrier pipe and an external piggyback pipe. You might estimate that the main pipe
takes all of the tensile and torsional loads, but only carries 70% of the bending loads, the other 30% being taken by
the piggyback pipe. Then to obtain stress estimates for the main pipe you could set the Stress Outer and Inner
Diameters to '~' and set the bending and shear stress loading factors to 0.7.
Note: The Allowable Stress and Stress Loading Factors only affect the wall tension results, stress results
and fatigue analyses. These results are derived after the simulation has run, and because of this
OrcaFlex allows these data items to be modified after a simulation has been run.
Friction Data
Seabed Friction Coefficients
OrcaFlex applies Coulomb friction between the line and the seabed. The friction force applied never exceeds R
where R is the seabed reaction force and is the friction coefficient. See Seabed Friction Data for published friction
data.
Lines lying on the seabed often move axially more readily than they move laterally. To enable this effect to be
modelled, you can specify different friction coefficients for motion normal (i.e. lateral) and axial to the line. For
intermediate directions of motion OrcaFlex interpolates between these two values to obtain the friction coefficient
to use. If the axial friction coefficient is set to '~' then the normal friction coefficient is used for for all directions of
motion. This provides a convenient way of using the same friction coefficient for all directions of motion.
See Friction Theory for further details of the friction model used.
Note: The friction coefficient for contact with elastic solids is specified on the Solid Friction Coefficients
data form.
Structural Damping Data
Rayleigh Damping Coefficients
A named Rayleigh Damping Coefficient data set. This data item can be set to "(no damping)", in which case no
Rayleigh damping will be applied for this Line Type.
This data is only available when using the implicit integration scheme.
System Modelling - Data and Results, Lines
w

296
Code Checks Data
The code check data can be found by setting the Line Type view mode to Code Check.
API RP 2RD
Data used for the API RP 2RD stress calculation.
Design case factor Cf
See API RP 2RD, section 4.4, table 2 and section 5.2.3.1.
Minimum wall thickness
The minimum wall thickness, denoted tmin in API RP 2RD, section 5.2.4.4. A value of '~' results in the nominal wall
thickness, (OD-ID)/2, being used.
SMYS
The material minimum yield strength (SMYS), denoted y in API RP 2RD, section 5.2.3.1.
Drawing Data
Pen
Defines the colour, line style and thickness of the pen used for drawing this line type. See How Objects Are Drawn.
For each line there is a choice, on the Line Data form, of whether to draw the sections of the line using these Line
Types pens, or whether to define a specific pen to use for all the sections of the line.
External Functions
Parameters
This data item specifies the External Function Parameters, a free form multi-line text field which is passed to any
external function used by the Line Type.
Plasticity Wizard
OrcaFlex allows you to specify non-linear bend stiffness for Line Types. The data is given as a table of bend moment
against curvature. If you are modelling a uniform, homogeneous pipe you can use the Plasticity Wizard to create
this table.
Once you have entered the appropriate data as described below, click the Calculate button and the curvature / bend
moment relationship is generated. The Bend Stiffness variable data source that is created is initialised to be
hysteretic.
The Plasticity Wizard is opened by clicking the "Plasticity Wizard" button on the Variable Data form.
Note: Before you can open the Plasticity Wizard you must have created and selected a Bend Stiffness
variable data source.
Plasticity Wizard Data
The Plasticity Wizard requires the following data:
Stress Diameters
The inside and outside diameters of the load-bearing cylinder.
Direct Tensile Strain
The Plasticity Wizard calculates bend moment curvature relationship by integrating the stress profile across the
pipe cross-section. This calculation requires a direct tensile strain to be specified - this data item serves that
purpose.
Stress-Strain relationship
The relationship between stress and strain can be specified by either Ramberg-Osgood curve or Stress-Strain
table.
w
System Modelling - Data and Results, Lines
297
Material E, Reference Stress (y), K, n (Ramberg-Osgood curve only)
These data define the relationship between stress () and strain () in terms of a Ramberg-Osgood curve as follows:
() = /E + K(/y)
n
.
The reference stress parameter is usually taken to be the yield stress, which is why it is denoted y here. Note that
there is an alternative parameterisation of the Ramberg-Osgood equation. It is straightforward to convert between
the two forms of the equation but please take care to ensure that the data you input correspond to the
parameterisation used by OrcaFlex.
Stress, Strain (Stress-Strain table only)
This table directly specifies the relationship between stress and strain. The table is interpolated linearly and for
values of strain outside the table linear extrapolation will be used.
Maximum curvature for derived data source
The Bend Stiffness variable data source is defined for curvature values between 0 and Cmax = max/Ro where Ro is the
radius to the outer fibre. The outer fibre strain corresponding to Cmax is denoted max and is defined as follows:
- For a Ramberg-Osgood curve max = max{0.05, 5(y)}. So the value used for max will be 5 times the strain
corresponding to the reference stress or 5%, whichever is larger.
- For a Stress-Strain table max is simply the largest value of strain specified in the table.
Properties Report
The Line Type properties report is available from the popup-menu on the data form. It reports the following:
Weight in air
The force due to gravity acting on the line type's mass.
Displacement
The weight of water displaced by the line type's volume. The reported value uses the water density at the sea
surface.
Weight in water
Equals Weight in air - Displacement.
Diam/Wt Ratio
Equals Outer Diameter / Weight in water.
Note: For Line Types that have a non-zero bore you must specify the contents density to be used in the
calculation of the above properties, since this will affect the properties that involve weight.
Used in, Contents Density
The names and contents densities of each line that uses that line type.
7.8.3 Attachments
Attachment Types
The Attachment Types form defines the properties of a number of named attachment types. Attachments with these
properties can then be connected to lines. Attachment Types can be either Clump Types, Drag Chain Types, Flex
Joint Types or Stiffener Types.
The attachment types form must include all the attachment types referred to on all of the Lines data forms, but it can
also include other attachment types that are not currently in use in the model. This allows you to build up a library
of standard attachment types that can then be easily used when building Lines.
Clumps
A clump is a concentrated attachment that is connected to a node on a Line. It can be buoyant or heavy and is a small
body that experiences forces (weight, buoyancy, drag etc.) exactly as for a 3D Buoy. But instead of being free to
move it is constrained to move with the node and the forces acting on it are transferred to that node. A clump
therefore adds to the mass, buoyancy and hydrodynamic force of the node to which it is attached.
System Modelling - Data and Results, Lines
w

298
Clumps only have 3 degrees of freedom - X,Y and Z - which are determined by the position of the node to which they
are attached. Clumps can be aligned with the global axes directions or alternatively they can be aligned with the
node to which they are attached.
Each clump is assigned a height and an offset from the node which are used to determine the Z coordinate of the
clump for the purposes of evaluating buoyancy and hydrodynamic forces: no moment is applied to the node by the
clump. Where the clump pierces the water surface, buoyancy and hydrodynamic forces are applied in proportion to
the immersed length of the clump.
Each clump is of a named clump type, from which it inherits all its properties. The clump types are specified on the
Attachment Types form and have the following data.
Clump Type Name
Used to refer to the Clump Type.
Mass
Mass or weight in air.
Volume
Used to calculate buoyancy and added mass for each clump of this type on a line. Clumps may be either net buoyant
or heavy as desired.
Height
Used for drawing the clump and also to determine how much of the clump is below the water surface.
If the clump is aligned with global axes then it is centred at the Offset position above the node, and extends for half
its Height above and below this point.
If the clump is aligned with Line axes then it is centred at the node, and extends for half its Height either side of this
point in the node's axial direction.
Offset
A clump may be offset vertically from the line, for example to represent a line supported below the surface by floats.
The connection is not modelled fully: the clump is always treated as being at the specified offset vertically above
(offset positive) or below (offset negative) the node to which it is attached.
If the clump is aligned with Line axes then the clump offset is forced to be zero.
Align with
Determines whether the clump is aligned with Global Axes or Line Axes.
This setting determines the clump's local directions. If it is aligned with global axes then the clump's local directions
are the same as the global axis system. If it is aligned with Line axes then its local directions are the same as the node
to which it is connected.
Drag
Drag forces are calculated in clump local directions for each clump on a line.
drag force = PW . . Water Density . (velocity)
2
. Cd . Drag Area
where
Cd is Drag Coefficient as specified here,
Drag Area is specified here,
velocity is the velocity of the fluid relative to the clump in the appropriate direction.
Added Mass Coefficients
Added mass in clump local directions is given by
Added mass = PW . Ca . Water Density . Volume
where
Ca is the Added Mass Coefficient as specified here.
w
System Modelling - Data and Results, Lines
299
Pen
Defines the colour, line style and thickness of the pen used for drawing this clump type. See How Objects Are Drawn.
Clump Type Properties Report
The Clump Types properties report is available from the popup-menu on the data form. It reports the following:
Weight in air
The force due to gravity acting on the clump's mass.
Displacement
The weight of water displaced by the clump's volume. The reported value uses the water density at the sea surface.
Weight in water
Equals Weight in air - Displacement.
Drag Chains
Drag chains are attachments to a line that model straight chains that hang down from the line. They apply weight,
buoyancy and drag forces to the node to which they are attached, but not any added mass effects. For details see
Drag Chain Theory.
Drag chains include two facilities that can be important in modelling towed systems. Firstly, the chain's drag
coefficients can vary with the incidence angle of the relative flow; this enables modelling the effect that as the
relative flow increases the chain hangs at a greater angle to the vertical and so fluid drag generates more lift, which
is applied to the line. Secondly, drag chains interact with the seabed (in a simple manner); if the node comes closer
to the seabed than the chain length, then the seabed provides a supporting reaction force and a friction force, both of
which are applied to the node.
Each drag chain is of a named drag chain type, from which it inherits all its properties. The drag chain types are
specified on the Attachment Types form and have the following data.
Name
Used to refer to the Drag Chain Type.
Length
Length of the drag chain.
Effective Diameter
Effective diameter of the drag chain. This is the diameter of the cylinder that has the same displaced mass per unit
length.
Mass
Mass per unit length. Mass is assumed to be uniformly distributed along the length of the drag chain.
Friction Coefficient
Coefficient of friction for contact with the seabed. This coefficient is used for all directions of friction. The value can
be set to '~', in which case the drag chain will instead use the axial friction coefficient of the node to which the drag
chain is attached.
Drawing
Defines the colour, line style and thickness of the pen used for drawing drag chains of this type. See How Objects Are
Drawn.
Drag Coefficients
The fluid drag forces on the chain are specified by giving a table of the normal and axial drag coefficients, as a
function of the incidence angle between the relative velocity vector and the drag chain. So = 0 means flow
axially along the drag chain and = 90 means flow normal to the drag chain.
Coefficients are specified for a range of incidence angles between 0 and 90 and linear interpolation is used to
obtain coefficients for intermediate angles. The Graph button shows the resulting coefficient variation. Symmetry is
used to obtain coefficients for angles outside the range 0 to 90.
System Modelling - Data and Results, Lines
w

300
Note: To be realistic, the normal drag force should increase monotonically as the incidence angle
increases from 0 to 90. This turns out to require that the gradient of the normal drag coefficient
curve Cdn() should be greater than -2.Cdn() / tan() for all . OrcaFlex warns if the drag
coefficient data does not satisfy this.
See Drag Chain Theory for further details.
Drag Chain Type Properties Report
The Drag Chain Types properties report is available from the popup-menu on the data form. It reports the following:
Length, Diameter
The data as specified on the data form.
Total Mass
The total mass of the drag chain given by Length Mass per unit Length.
Total weight in air
Equals Total Mass g.
Total displacement
The weight of the volume of fluid displaced by the drag chain. The volume is given by Length D
2
/4 where D is the
effective diameter as specified on the data form.
Total wet weight
Equals Total weight in air - Total displacement.
Flex Joints
Flex joints are attachments to a line that add additional bending stiffness to a particular node (specified by the
attachment's z-position). This additional local stiffness acts in series with the stiffness of the underlying line type
bend stiffness. If, for example, you set the stiffness for the flex joint to zero, then you effectively make that node pin-
jointed.
Each flex joint has properties determined by a named Flex Joint Type. The Flex Joint Types are specified on the
Attachment Types form and have the following data:
Name
Used to refer to the Flex Joint Type.
Bend Stiffness
Specifies the bend stiffness of the Flex Joint Type. You can specify separate values for bending about the x and y-
directions. A y-bend stiffness value of '~' is interpreted as 'same as x-bend stiffness'.
Similarly to line end connection stiffness the bend stiffness is specified in terms of moment per degree of deflection.
Drawing
Defines the colour, line style and thickness of the pen used for drawing flex joints of this type. See How Objects Are
Drawn.
Stiffeners
Stiffeners are attachments to a line intended for use modelling bend stiffeners. Each stiffener has properties
determined by a named Stiffener Type. The Stiffener Types are specified on the Attachment Types form and have
the following data:
Name
Used to refer to the Stiffener Type.
Line Type
Determines the physical properties of the stiffener. Usually this will be a profiled homogeneous pipe.
w
System Modelling - Data and Results, Lines
301
Because the stiffener properties are included in addition to the product line properties this line type should just
specify the properties of the stiffener.
Length
Defines the length of the stiffener. If the line type is profiled then the length is determined by the profile data and so
cannot be edited here.
Connection Arc Length, Relative to
Defines the point on the stiffener which corresponds to the product line attachment position. This correspondence
is illustrated in the following table which assumes a stiffener length of 10:
Product line
attachment
arclength
Stiffener
connection
arclength
Product line
protected arc length
range
0 0 0-10
5 0 5-15
10 5 5-15
50 10 40-50
For a bend stiffener at End A of a line the connection arc length would set to 0 relative to End A. Similarly for a bend
stiffener at End B of a line the connection arc length would set to 0 relative to End B.
Axial load/inertia transfer
Specifies how the axial loads and axial inertia are transferred from the stiffener to the product line.
If at connection point is specified then the axial loads and axial inertia for the entire stiffener line are transferred to
the product at the connection point. This option is suitable when you wish to neglect the axial effects of friction due
to contact between product and stiffener.
If over full length is specified then the axial loads and axial inertia are transferred and shared across the full length
of the stiffener. If the contact friction means that the product line effectively carries the axial loads and inertia of the
stiffener then this option should be used.
For a stiffener which is connected to the product line by means of a full length friction grip, e.g. a Cumberland Grip,
then you should use the over the full length option for axial load/inertia transfer.
More technical details of how this data item is used are given in Modelling Bend Stiffeners.
7.8.4 Rayleigh Damping
Rayleigh damping is used to model structural damping for Lines and is only available when using the implicit
integration scheme.
Classical Rayleigh damping
Classical Rayleigh damping uses a system damping matrix C defined as:
C = M + K
where
is the mass proportional Rayleigh damping coefficient.
is the stiffness proportional Rayleigh damping coefficient.
M is the system structural mass matrix.
K is the system structural stiffness matrix.
With this formulation the damping ratio is the same for axial, bending and torsional response.
Classical Rayleigh damping results in different damping ratios for different response frequencies according to the
following equation:
= 0.5(/ + )
where
is the damping ratio (a value of 1 corresponds to critical damping).
System Modelling - Data and Results, Lines
w

302
is the response frequency in rad/s.
It can be seen from this that the mass proportional term gives damping ratio inversely proportional to response
frequency and the stiffness proportional term gives damping ratio linearly proportional to response frequency.
Separated Rayleigh damping
In addition to classical Rayleigh damping OrcaFlex offers a separated Rayleigh damping model where C is defined as:
C = M + aKa + bKb + tKt
where
a is the stiffness proportional Rayleigh damping coefficient for axial deformation.
b is the stiffness proportional Rayleigh damping coefficient for bending deformation.

t
is the stiffness proportional Rayleigh damping coefficient for torsional deformation.
Ka is the system structural stiffness matrix corresponding to axial deformation.
Kb is the system structural stiffness matrix corresponding to bending deformation.
Kt is the system structural stiffness matrix corresponding to torsional deformation.
Note that K = Ka + Kb + Kt.
The separated model allows for different damping ratio in axial, bending and torsional response.
Data
Each Line Type has structural damping properties determined by a named Rayleigh Damping Coefficient data set.
Multiple Rayleigh Damping Coefficient data sets can be defined, each with the following data.
Rayleigh damping mode
OrcaFlex offers four distinct methods for specifying the Rayleigh damping coefficients:
- Stiffness proportional.
- Mass and stiffness proportional.
- Coefficients (classical).
- Coefficients (separated).
Stiffness proportional and Mass and stiffness proportional methods
These methods allow you to specify structural damping in terms of % critical damping ratio. In addition you need
to specify response periods at which the damping ratio will be achieved. For Stiffness proportional damping only
one response period can be specified.
If Response Period 1 is set to '~' then OrcaFlex will choose response periods automatically based on the wave
period, or peak period Tp for a random wave. This method is generally recommended and is particularly useful if
you are running a batch of cases with varying wave conditions.
OrcaFlex uses the classical Rayleigh damping model and reports the mass and stiffness proportional coefficients
and .
Coefficients (classical) and Coefficients (separated) methods
For these methods you specify the damping coefficients directly.
Damping ratio graph
The damping ratio graph plots the damping ratio that will be achieved for a range of response frequencies. The
graph's x-axis can be either period of frequency.
Guidance
Variation of damping ratio
Rayleigh damping is viscous damping that is proportional to a linear combination of mass and stiffness. The
damping matrix C is given by C = M + K where M, K are the mass and stiffness matrices respectively and , are
constants of proportionality.
w
System Modelling - Data and Results, Lines
303
Rayleigh damping does afford certain mathematical conveniences and is widely used to model internal structural
damping. One of the less attractive features of Rayleigh damping is that the achieved damping ratio varies as
response frequency varies. The stiffness proportional term contributes damping that is linearly proportional to
response frequency and the mass proportional term contributes damping that is inversely proportional to response
frequency. Mathematically, these frequency dependencies can be seen in the formula for damping ratio = (/f +
f) where f is the response frequency.
The plot below illustrates how the separate mass and stiffness damping terms contribute to the overall damping
ratio:
0%
1%
2%
3%
4%
5%
6%
0 1 2 3 4 5
Response angular frequency (rad/s)
(=0.025, =0.023)
D
a
m
p
i
n
g

r
a
t
i
o
Mass and Stiffness Mass term Stiffness term

Figure: Variation Of Damping Ratio With Frequency
Artificial over-damping of system response
Consider a system which has two primary responses: one at the wave frequency and the other at a much lower
frequency, for example due to vessel drift. Clearly Rayleigh damping constants must be chosen carefully to avoid the
mass proportional term resulting in over-damping of the low frequency response.
It is common practice to do this by using the stiffness proportional term only. For example the DNV dynamic riser
code DNV-OS-F201 (Appendix A, K103) makes the following recommendation: "It should also be observed that the
mass proportional damping would give damping due to rigid body motions. The mass proportional damping is
therefore normally neglected for compliant structures undergoing large rigid body motions." In other words the
recommendation for such systems is to use stiffness proportional damping (the red curve above).
This is a good argument. However, an analogous argument can also be made about any high frequency response. If
only stiffness proportional damping is used then any high frequency response will be over-damped. It is quite
common for systems to have responses at frequencies higher than the wave frequency. Since high frequency
responses are often damaging to a system it is important to model them accurately. Stiffness proportional damping
is very effective at artificially removing high frequency responses from an analysis and this is a danger that must be
avoided.
Avoiding over-damping of system response
We recommend the following procedure for applying Rayleigh damping:
1. Identify a number of critical load cases.
2. Run these cases without Rayleigh damping.
3. Identify the minimum and maximum frequencies present in the system response, fmin and fmax.
4. Apply mass and stiffness proportional Rayleigh damping with response periods set to 1/fmin and 1/fmax.
System Modelling - Data and Results, Lines
w

304
This technique will apply the specified damping ratio at responses with frequency fmin and fmax. For frequencies
between fmin and fmax the damping ratio will be less than the specified damping ratio which ensures that artificial
over-damping is avoided.
Note: Since this approach leads to a damping ratio less than the specified damping ratio for frequencies
between fmin and fmax it could be argued that the response will be under-damped. Generally this
conservative under-damping is far less significant than the non-conservative over-damping that we
are trying to avoid.
If your system response is concentrated at the wave frequency for all critical design cases then it is safe to apply
stiffness proportional damping.
Discussion
The above procedure will help you avoid non-conservative over-damping of high or low frequency responses in
your system. However, it is quite laborious and time-consuming. Can we adopt a simpler approach?
For a great many of the systems that are analysed by OrcaFlex it turns out that structural damping has little or no
effect on system performance. For subsea lines the structural damping is usually negligible in comparison with the
damping due to hydrodynamic drag. For this reason Rayleigh damping can usually be ignored for analysis of subsea
lines. For systems which show significantly different responses when Rayleigh damping is applied you should check
that this is not due to the over-damping issues described above.
For in-air lines (e.g. jumper hoses) the situation is different. These lines have no hydrodynamic damping and so the
structural damping can be significant. For such lines it is very easy for resonant responses to be excited and if no
damping is modelled then these responses do not decay. In this situation Rayleigh damping can be very useful. It is,
of course, important to apply it carefully as described above.
One common phenomenon that is sometimes modelled with Rayleigh damping is the damping due to internal
friction between layers of a pressurised, unbonded flexible riser. This effect is strongly amplitude dependent and is
poorly represented by Rayleigh damping. The problem is that the damping ratio depends on the amplitude of
response. This makes the damping ratio very difficult to set and it will differ for different load cases. Instead we
recommend that you use a hysteretic bend stiffness which gives a more accurate model of the riser.
7.8.5 Line Results
This section describes the line results that are available for the static and dynamic analyses. These results are
available using the Results Selection form.
Results from the modal analysis and fatigue analysis are described elsewhere - see the Modal Analysis and Fatigue
Analysis sections.
Selecting which Categories of Line Results are Shown
For Lines there are a large number of results variables available on the Results form. So OrcaFlex groups the results
variables into the following categories:
- Positions.
- Motions.
- Angles.
- Forces.
- Moments.
- Contact.
- Pipe Stress / Strain.
- End Loads.
To ease results selection the Show boxes on the results form allow you to choose which of these categories of
variables are shown in the Variable list. To get the full list of available variables simply select all the categories. But
normally there are several categories of variable that you do not currently need, in which case de-selecting them
reduces the displayed list of variables to a more manageable set.
w
System Modelling - Data and Results, Lines
305
Specifying the Position on the Line
For line results you need to specify the position on the line at which you want results. This is done by setting the
entries in a row in the Position table on the results form. You are then offered the Variables that are available for
the point specified by the currently-selected row.
Each row in the table specifies one point on the line. There are multiple rows in the table, so you can set up rows
specifying a number of different points of interest and then easily switch between them by choosing which row you
select. In a row that you don't want to use you can set the Node or Arclength column to '~', meaning 'unspecified'.
Three rows in the table are dedicated to special arc lengths on the line:
- The first and last rows in the Position table are dedicated to the line's end points A and B.
- The next to last row in the table is dedicated to the Touchdown point. This is defined to be the first node on the
seabed (starting from the Top End). If the results variable selected is a segment variable (i.e. is only available at
mid-segment points) then the value reported for the touchdown point is the mid-segment valued in the segment
that precedes the Touchdown node. When there are no nodes on the seabed then the results variable is reported
as N/A (meaning 'not available') and the graph shows no value.
Arclength and Node Columns
The Arclength column specifies how far along the line the point is, measured from zero at End A. For information, if
you set the Arclength column then the adjacent Node cell is set to the number of the nearest node to that arclength.
The Node column can also be used as an alternative way of setting the arclength. You can set the Node column to the
number of a node on the line. The adjacent Arclength cell will then be set to the arclength to that node. The node
number must be in the range 1 (the node at End A) to N+1 (the node at End B), where N is the total number of
segments in the line.
Note: The actual arc length for which line results are reported may not be exactly the specified arclength.
OrcaFlex reports results for the 'nearest appropriate' result point. See Result Points below.
R and Theta Columns
For some variables (e.g. stress components) you must also specify the position of the point within the cross section
through the specified arclength. Whenever one of these variables is selected in the Variables list, two extra columns
become visible in the Position table. These extra columns specify the polar coordinates (R,Theta) of the point
within the cross section; see the diagram in the Pipe Stress Calculation section. The R column can only be set to
either Inner or Outer, meaning the radii corresponding to the Stress ID or Stress OD respectively. Results are not
available for points between these two radii.
Clearance Results
Clearance results can be reported either as clearances from this line to all other lines or from this line to a specified
other line. You choose which of the options is used from the drop-down list labelled "Clearances are reported as
clearances from".
Result Points
OrcaFlex uses a discretised model and so results are only available at nodes, mid-segment points and line ends; we
call these points 'result points'. The available result points depend on which variable you request, they are
documented in the description of the variable.
When you ask for a variable at a specified arclength OrcaFlex gives the value for the 'nearest appropriate' result
point. The phrase 'nearest appropriate' here means that OrcaFlex considers the available result points that are in the
same section as the arclength you specified and then chooses the one that is nearest to the arclength you specified. If
you specify an arclength that is exactly at the boundary of two sections then OrcaFlex uses the section that starts at
that arclength.
OrcaFlex always labels results with the actual arclength to the result point to which they apply, so you can check to
ensure that you are getting results at the result point you want.
Positions
X, Y and Z
Available at nodes. The global coordinates of the selected node.
System Modelling - Data and Results, Lines
w

306
Layback
Available at nodes. The horizontal component of distance between the selected node and the touchdown point.
Layback is not defined (N/A) if there is no touchdown point, that is if there are no nodes on the seabed. Likewise, if
the selected node is after the touchdown point, then Layback is not defined.
Proportion Wet
Available at nodes. The proportion of the part of the line that the node represents, that is submerged in the sea. The
value is in the range 0 to 1, a value of 0 meaning no submersion and 1 meaning is completely submerged. For details
see Line Interaction with the Sea Surface.
Sea Surface Z
Available at nodes. The global Z coordinate of the sea surface directly above the instantaneous position of the
selected node.
Depth
Available at nodes. The depth of the node beneath the sea surface (= Surface Z - Node Z).
Sea Surface Clearance
Available at nodes. The vertical clearance from node centre to the instantaneous sea surface. Negative values mean
that the node is submerged.
Arc Length
Available at nodes. The arc length from End A to the selected point. This is normally only useful for the touchdown
point, since for other points it is constant. For the touchdown point it gives the arc length from End A to the first
node on the seabed, or zero if there is no touchdown.
Expansion Factor
Available at mid-segments. The expansion factor of the selected segment.
Transverse VIV Offset
Available at nodes. This is the node's offset from the non-VIV node position, in the transverse VIV direction.
Estimated Transverse A/D
Available only at nodes that use one of the time domain VIV models from the VIV Toolbox. The amplitude of the
oscillation in the transverse VIV direction divided by the node's VIV diameter.
Motions
Velocity, GX-Velocity, GY-Velocity, GZ-Velocity,
Acceleration, GX-Acceleration, GY-Acceleration, GZ-Acceleration
Available at nodes. The magnitude and components (with respect to global axes) of the velocity and acceleration of
the node.
Warning: The velocity results are derived by numerically differentiating the logged positions of the node with
respect to time, using the central difference scheme. The acceleration results are derived by a
further such numerical differentiation. Because of this the accuracy of the results (especially the
accelerations) will depend on the log sample interval. If the log sample interval is large then the
results will not show higher frequency components of velocity and acceleration. If the log sample
interval is small then the results may be inaccurate due to loss of precision due to subtraction.
Acceleration (incl. g), x-Acceleration (incl. g), y-Acceleration (incl. g), z-Acceleration (incl. g)
Available at nodes. The magnitude and components (with respect to node axes) of the vector a - g where a is the
acceleration of the node and g is the acceleration due to gravity, a vector pointing vertically downwards.
These results can be used to compare against accelerometer readings.
w
System Modelling - Data and Results, Lines
307
Relative Velocity, Normal Relative Velocity, Axial Relative Velocity
Available at nodes. Relative Velocity is the velocity of the fluid relative to the node, i.e. Vfluid - Vnode. The results
reported are the magnitude of the relative velocity and its normal and axial components (relative to the line). For
the axial component, a positive value means that the fluid is moving (relative to the line) towards End B.
The fluid velocity used is the velocity of the principal fluid affecting the node. The principal fluid is defined as
follows:
1. If proportion dry > 0.5 and the Include wind loads on Lines option is enabled in the Environment data then the
principal fluid is the air.
2. Otherwise the principal fluid is the sea.
Note: For a node that is above the water surface OrcaFlex reports a relative velocity based on the fluid
velocity at the surface.
Warning: The relative velocity results are derived using the node velocity results, so see the accuracy warning
given above.
Reynolds Number
Available at nodes. The Reynolds number is a measure of the flow regime. OrcaFlex offers a number of different
options for the calculation of Reynolds number, specified on the Environment data form.
x-Drag Coefficient, y-Drag Coefficient, z-Drag Coefficient, Lift Coefficient
Available at nodes. These are the drag and lift coefficients used in the calculation.
For constant coefficients then these results report the values given in the user's data, except for a node at the
junction between two sections with different coefficients, where an effective average value is used.
If the line's drag or lift coefficients vary with Reynolds number or Height above Seabed then these results report the
computed value that was used.
If the line uses a wake oscillator VIV model with inline drag amplification then the amplification factor is included in
these results. The inline drag amplification factor is also available as a separate result.
Wake Velocity Reduction Factor, Wake Cd, Wake Cl
Available at nodes only, for lines which include sections that react to wake effects.
Wake Velocity Reduction Factor is the factor applied to the velocity at the node as a result of upstream wake effects.
Wake Cd and Wake Cl are the drag and lift coefficients respectively, used to calculate the hydrodynamic forces at the
node as a result of any upstream wake effects.
Note: Wake Cl is positive when the lift force is applied in the y direction of the upstream wake's frame of
reference and negative when the lift force is applied in the -y direction of the upstream wake's
frame of reference.
Angles
Azimuth, Declination and Gamma
Available at mid-segment points and line ends. These angles report the local orientation of the line relative to global
axes. The gamma angle is defined as for line ends - see Line End Orientation.
Declination is in the range 0 to 180. Range jump suppression is applied to Azimuth and Gamma (so values outside
the range -360 to +360 might be reported).
Ez-Angle, Exy-Angle, Ezx-Angle, Ezy-Angle
Available at mid-segment points and line ends. The direction angles of the mid-segment point, relative to the end
axes of the nearest line end. See End Direction Results.
Ez-Angle is in the range 0 to 180. Range jump suppression is applied to Exy-Angle, Ezx-Angle and Ezy-Angle (so
values outside the range -360 to +360 might be reported).
Twist
Available at mid-segment points. The twist per unit length experienced by the segment.
System Modelling - Data and Results, Lines
w

308
Fluid Incidence Angle
Available at nodes. The angle between the relative velocity direction and the line axial direction. A value in the range
0 to 90.
No-Moment Azimuth, No-Moment Declination
Available at line ends. The azimuth and declination angles, relative to global axes, of the no-moment direction at the
end, allowing for any motion of the object to which the line is attached. These results are only available if the end
orientation angles are defined.
No-Moment Declination is in the range 0 to 180. Range jump suppression is applied to No-Moment Azimuth (so
values outside the range -360 to +360 might be reported).
End Force Azimuth, End Force Declination
Available at line ends. The azimuth and declination of the end force vector, relative to global axes.
End Force Declination is in the range 0 to 180. Range jump suppression is applied to End Force Azimuth (so values
outside the range -360 to +360 might be reported).
End Force Ez-Angle, End Force Exy-Angle, End Force Ezx-Angle, End Force Ezy-Angle
Available at line ends. The direction angles of the end force vector, with respect to the frame of reference of the line
end. See End Direction Results. These results are only available if the end orientation angles are defined.
End Force Ez-Angle is in the range 0 to 180. Range jump suppression is applied to the other 3 end force angles (so
values outside the range -360 to +360 might be reported).
VIV Stagnation Point, VIV Neg Separation Point, VIV Pos Separation Point
Available only at nodes that use one of the vortex tracking VIV models from the VIV Toolbox. The values reported
are the angular positions of the stagnation and separation points.
Forces
Effective Tension and Wall Tension
Available at mid-segment points and line ends. The structural force along the line axis. Positive values denote
tension and negative values denote compression.
For details of the difference between the effective tension and the wall tension see the Line Pressure Effects section.
In particular see the warning in that section if the line type stress diameters differ from the outer and inner
diameters.
Normalised Tension
Available at mid-segment points and line ends. Defined to be Effective Tension divided by Maximum Tension.
Shear Force, x-Shear Force, y-Shear Force, Shear Force component, In-plane Shear Force, Out-of-plane Shear Force
Available at mid-segment points and line ends. The magnitude of structural force normal to the line axis, its
components in the local x and y-directions, its component in the user specified local direction theta and its
components in the in-plane and out-of-plane directions.
The in-plane direction is normal to both the line's axis (at the specified arc length) and the vertical direction. The
out-of-plane direction is normal to both the line's axis and the in-plane direction.
If the line's axis is vertical then these directions are ill-defined and therefore no values can be reported.
Vortex Force Magnitude,
Inline Vortex Force, Transverse Vortex Force,
GX-Vortex Force, GY-Vortex Force, GZ-Vortex Force
Available only at nodes that use one of the time domain VIV models from the VIV Toolbox. The magnitude of the lift
and drag force per unit length of line, and its components in the VIV directions and global axes directions. For
details, see the documentation of the relevant time domain VIV model.
Inline Drag Amplification Factor
Available only at nodes that use one of the wake oscillator VIV models from the VIV Toolbox. The instantaneous
value of the Inline Drag Amplification Factor.
w
System Modelling - Data and Results, Lines
309
Moments
Bend Moment, x-Bend Moment, y-Bend Moment, Bend Moment component, In-plane Bend Moment, Out-of-plane Bend
Moment
Available at mid-segment points and line ends. The magnitude of bend moment, its components in the local x and y-
directions, its component in the user specified local direction theta and its components in the in-plane and out-of-
plane directions.
The in-plane direction is normal to both the line's axis (at the specified arc length) and the vertical direction. The
out-of-plane direction is normal to both the line's axis and the in-plane direction.
If the line's axis is vertical then these directions are ill-defined and therefore no values can be reported.
Curvature, x-Curvature, y-Curvature, Curvature component, In-plane Curvature, Out-of-plane Curvature
Available at mid-segment points and line ends. The magnitude of curvature, its components in the local x and y-
directions, its component in the user specified local direction theta, the in-plane and out-of plane-components and
its components in the in-plane and out-of-plane directions, as defined above.
When pre-bend is modelled curvature results are reported relative to the pre-bent curvature.
Note: When using non-linear bend stiffness, the reported mid-segment curvature depends on whether the
bend stiffness is specified to be hysteretic or not. For details see the note in the Non-linear Bend
Stiffness section.
Warning: Curvature results are accurate only if the segment length is sufficiently short. The accuracy can be
estimated by performing a sensitivity study on segment length in the area of interest.
Normalised Curvature
Available at mid-segment points and line ends. Defined to be Curvature divided by Allowable Curvature.
If minimum bend radius (MBR) is specified as varying with effective tension then this variation is taken into account
when calculating Normalised Curvature.
Bend Radius, x-Bend Radius, y-Bend Radius, Bend Radius component, In-plane Bend Radius, Out-of-plane Bend Radius
Available at mid-segment points and line ends. The magnitude of bend radius, its components in the local x and y-
directions, its component in the user specified local direction theta and its components in the in-plane and out-of-
plane directions, as defined above.
When pre-bend is modelled these results are reported relative to the pre-bent curvature.
Notes: Bend radius is defined to be 1 / curvature. If the curvature is 0 then a value of 'Infinity' is reported.
When using non-linear bend stiffness, the reported mid-segment curvature depends on whether the
bend stiffness is specified to be hysteretic or not. For details see the note in the Non-linear Bend
Stiffness section.
Warning: Bend radius results are accurate only if the segment length is sufficiently short. The accuracy can
be estimated by performing a sensitivity study on segment length in the area of interest.
Torque
Available at mid-segment points and line ends only, and available only for lines with torsion included. The
component of structural moment along the line axis.
Contact
Note: As well as the results variables documented below OrcaFlex also provides a Line Clashing Report.
Line Centreline Clearance, Line Contact Clearance
Available at mid-segment points and line ends. The line clearance variables report shortest distances between lines.
These distances can be either the shortest distance between centrelines (Line Centreline Clearance) or the shortest
distance between outer edges (Line Contact Clearance). The results selection form lets you choose to report
clearances either:
- from this line to all other lines or
System Modelling - Data and Results, Lines
w

310
- from this line to a specified other line.
In the text below we refer to the other lines used in the clearance calculations as the clearance lines, be they all other
lines or a single specified other line.
Line Centreline Clearance reports the centreline clearance from this line to the clearance lines. More precisely, the
clearance reported for a segment is the shortest distance from the centreline of the segment to the centreline of any
segment on the clearance lines. Note that the clearance reported therefore does not allow for the radii of the lines
involved. When clearance is reported for a line end it reports the shortest distance from the centreline of the point
at the end node to the centreline of any segment on the clearance lines.
Line Contact Clearance is similar but it reports the clearance between line outer edges allowing for their contact
diameters.
Note: Line Contact Clearance can report negative values. This means that the segments in question are
penetrating each other. If clashing is being modelled for both segments then a clash force will
result from this penetration.
The line clearance variables are useful for checking for clashing between lines. They are available in both range
graph and time history form. The range graph, for a given period of the simulation, enables you to see where on the
line clashing may be a problem. You can then examine the time history of line clearance for that point on the line, to
see when closest approach occurs. You can then use the replay to examine which other line is coming closest.
It is sometimes worth choosing carefully which line to check for clearance. An example is checking for clashing
between a single mooring line and one or more of a number of closely spaced flowlines. Let us assume that you are
reporting clearances from all other lines. The clearance graphs for the flowlines will include clearance to the other
flowlines, between which clashing may not be a concern. The mooring line clearance is probably more useful, since
it only includes clearance to the flowlines.
Line clearance only checks against other lines, not against edges of vessels, buoys, etc. However you can check
clearance against part of a vessel, for example, by attaching a dummy single-segment line to the vessel, spanning
across the area of interest. The line clearance graphs for that dummy line will then show how close other lines come
to that area of the vessel.
Notes: For mid-segment points the segment used is the one containing the selected arclength.
Line clearance results are only available if there are at least 2 lines in the model.
Warning: For complex models, building and updating clearance graphs can be slow. Having "live" clearance
graphs open while a simulation is running can significantly slow down the simulation.
Seabed Clearance
Available at nodes. The clearance is the shortest distance between the node and any point on the seabed, allowing
for the contact diameter. The value reported is for the node that is nearest the specified arc length. A negative value
indicates that the node is in contact with the seabed.
This result is not available for 3D seabeds because it is difficult to calculate. Instead you should use Vertical Seabed
Clearance.
Vertical Seabed Clearance
Available at nodes. The clearance is the vertical distance between the node and the seabed, allowing for the contact
diameter. The value reported is for the node that is nearest the specified arc length. A negative value indicates that
the node is in contact with the seabed.
Line Clash Force
Available at mid-segment points. The magnitude of the clash force between this segment and other lines. Please note
that this variable is only available if clash checking has been included for the lines concerned. See Line Clashing for
details.
Line Clash Force is given for the segment containing the selected arclength and results are available in the form of
time histories and range graphs. If multiple clashes occur simultaneously on the same segment then the value
reported is the magnitude of the vector sum of the clash forces involved.
Line Clash Impulse
Available at mid-segment points. The integral of Line Clash Force with respect to time.
w
System Modelling - Data and Results, Lines
311
Line Clash Energy
Available at mid-segment points. Clash energy is calculated by integrating the magnitude of clash force with respect
to depth of penetration.
Suppose that this segment is denoted by S1 and segment S2 is another segment which S1 is in contact with. The
clash energy for the spring/damper representing contact between these 2 segments is calculated by integrating the
magnitude of clash force with respect to depth of penetration. This then is the potential energy in the
spring/damper.
If multiple clashes occur simultaneously on the same segment then the value reported is the sum of all individual
clash energies between this segment and other segments.
Solid Contact Force
Available at nodes. The magnitude of the force per unit length due to contact with elastic solids.
Seabed Normal Penetration/D
Available at nodes. The component of seabed penetration normal to the seabed, divided by the contact diameter.
Seabed Normal Resistance, Seabed Normal Resistance/D
Available at nodes. Seabed Normal Resistance is the component of seabed resistance normal to the seabed, where
seabed resistance means the seabed reaction force per unit length of line. Seabed Normal Resistance/D is the
Seabed Normal Resistance divided by the contact diameter.
The forces due to both seabed stiffness and seabed damping are included.
Warning: The damping force depends upon node velocity. This is derived by numerically differentiating the
logged positions of the node with respect to time, using the central difference scheme. Because of
this the accuracy of the results will depend on the log sample interval. See Motions results for more
details.
Pipe Stress / Strain
Stress and strain results are available at mid-segment points and at line ends. For terminology see Pipe Stress
Calculation.
The stress calculations make the following assumptions:
- At each point along the line all the loads are taken by a single simple cylinder of the specified Stress OD and
Stress ID and made of a homogeneous material.
- The stresses included are those due to tension, bending, shear and hoop stress.
- The loads (tension, bend moment, shear and torque) which are used in stress calculations are scaled by the
stress loading factors before being used.
- Internal pressure in the line generates wall tension in the line as it would do in a sealed cylinder.
- Shear stress is assumed to be uniformly distributed across the cross section. Although this is not strictly the
case, the shear stress is normally negligible so this simplifying assumption is reasonable.
- The hoop stress due to static internal and external pressure at the current Z-level is included, and is calculated
using the standard Lam equation for thick walled cylinders. However the effect of dynamic variations in
pressure, for example from the passage of the wave, are not included.
Limitations of stress calculations
The assumptions described above mean that the stress calculations are only valid for pipes such as steel or titanium
risers, not for composite flexible risers, ropes chains, etc.
If the pipe has non-linear stiffness then the program cannot, in general, accurately calculate pipe stresses. The
program uses the same formulae for stress calculation as it does for linear stiffness. For example the bending stress
is calculated as Mr/Ixy. An exception to this is made for a homogeneous pipe with non-linear stress-strain. In this
situation stress results can be calculated accurately by using the stress-strain data.
If the line type stress diameters differ from the outer and inner diameters then see the warning in the Line Pressure
Effects section.
System Modelling - Data and Results, Lines
w

312
The program does not, and indeed cannot, allow for the complex stress concentrations that can occur at joints or at
the top and bottom of a riser.
Direct Tensile Strain
Available at mid-segment points and line ends. This is the component of axial strain due to wall tension (which
includes the effects of internal and external pressure).
Max Bending Strain
Available at mid-segment points and line ends. This is the axial strain due to bending at the outer fibre on the
outside of the bend.
Worst ZZ Strain
Available at mid-segment points and line ends. This equals whichever of Direct Tensile Strain Max Bending Strain
has the larger absolute value.
ZZ Strain
Available at mid-segment points. This equals Direct Tensile Strain + Bending Strain. ZZ Strain varies across the
cross-section and so its value is reported at a specified (R,) position.
Internal and External Pressure
Available at mid-segment points and line ends. The internal and external static pressures, Pi and Po. See Line
Pressure Effects for details.
Pressures in OrcaFlex are gauge pressures, not absolute pressures. That is, they are relative to atmospheric pressure
and so can be as low as minus 1 atmosphere (-101.325 kPa).
Net External Pressure
Available at mid-segment points and line ends. Defined as P
i
- P
o
.
Direct Tensile Stress
Available at mid-segment points and line ends. This is the axial stress due to wall tension (which includes the effects
of internal and external pressure). It is constant across the cross-section and equals Tw/A. A positive value indicates
tension; a negative value indicates compression.
Max Bending Stress
Available at mid-segment points and line ends. This is the maximum value that the Bending Stress takes anywhere
in the section. It is given by
Max Bending Stress = (C2.M.ODstress/2) / Ixy
and this maximum occurs at the extreme fibre on the outside of the bend.
For a homogeneous pipe with non-linear stress-strain
Max Bending Stress = (zz) - Direct Tensile Stress = (zz) - Tw/A
where () is the specified stress-strain relationship and zz is the axial strain at the extreme fibre on the outside of
the bend data.
Worst Hoop Stress
Available at mid-segment points and line ends. The Hoop Stress is due to internal and external pressure. It varies
across the section and can be positive (tension) or negative (compression), and by the Worst Hoop Stress we mean
the hoop stress of greatest magnitude. It is obtained by finding the point in the cross-section where the unsigned
magnitude of the Hoop Stress is largest; this must be either at the inside or outside fibre of the stress area. The Hoop
Stress at this point is called the Worst Hoop Stress.
Max xy-Shear Stress
Available at mid-segment points and line ends. The value (RZ
2
+ CZ
2
)
1/2
is called the xy-Shear Stress. This varies
across the cross-section, and OrcaFlex reports the maximum value that occurs anywhere in the cross-section. This is
the Max xy-Shear Stress and it is given by
Max xy-Shear Stress = (C4..ODstress/2) / Iz + C3.S / A
w
System Modelling - Data and Results, Lines
313
von Mises Stress, Max von Mises Stress
Available at mid-segment points and line ends. The von Mises stress, vm, is a stress measure that is often used as a
yield criterion. It is a combination of all the components of the stress matrix and in terms of principal stresses it is
given by:
vm = [{(1-2)
2
+ (2-3)
2
+ (3-1)
2
}/2]
1/2

where 1, 2 and 3 are the principal stresses, i.e. the eigenvalues of the 3 by 3 stress matrix.
The von Mises Stress varies across the cross-section, so its value is reported at a specified (R,) position.
The Max von Mises Stress is an estimate of the maximum value of the von Mises Stress over the cross-section. The
way it is calculated depends on whether the line includes torsion or not, as follows.
- If torsion is not included, then OrcaFlex assumes that the torque is zero. In this case the maximum value of the
von Mises stress must occur in the plane of bending. OrcaFlex also assumes that the maximum occurs at either
the inner or outer fibre. (This is a commonly-used assumption that is almost always valid, since if the internal
pressure stress contribution is dominant then the maximum will be at the inner fibre, whereas if bending stress
is dominant then it will occur at the outer fibre.) OrcaFlex therefore calculates the von Mises stress at 4 points
(R = IDstress/2 and ODstress/2, in the plane of bending) and reports the largest value.
- If torsion is included, then the maximum value of the von Mises stress can, in general, occur anywhere in the
pipe wall. So OrcaFlex calculates the von Mises stress at a grid of points across the pipe wall and reports the
largest value found. Currently, the grid comprises 36 -values (i.e. every 10 around the pipe circumference) at
each of 5 R-values across the pipe wall.
API RP 2RD Stress, API RP 2RD Utilisation
Available at mid-segment points and line ends.
API RP 2RD Stress, API, is a von-Mises type stress defined in section 5.2 of API RP 2RD as:
API = max [{(pr-p)
2
+ (p-pz)
2
+ (pz-pr)
2
}/2]
1/2

where
pr = - (Po.ODstress + Pi.IDstress) / (ODstress + IDstress)
p = (Pi - Po)ODstress/2tmin - Pi
pz = Tw/A M(ODstress - t)/2Ixy
tmin is the minimum wall thickness
t is the nominal wall thickness, (ODstress - IDstress)/2
The max in the formula for API accounts for the fact that the sign in the formula for pz makes pz double-valued.
API RP 2RD Utilisation, UAPI, is reported as a percentage and is defined to be:
UAPI = API / (CfCay)
where
Cf is the design case factor
Ca is 2/3
y is the material minimum yield strength (SMYS)
The strength check for API RP 2RD code is therefore equivalent to the inequality UAPI 1.
RR Stress, CC Stress, ZZ Stress, RC Stress, RZ Stress, CZ Stress
Available at mid-segment points and line ends. These are the individual stress components at a point in the cross-
section. The point is specified by its polar coordinates (R,) within the cross section. See Pipe Stress Calculation and
Pipe Stress Matrix for details.
End Loads
The line end load results are based on the end force and end moment vectors at the line end. There are 3 groups of
end load results:
System Modelling - Data and Results, Lines
w

314
- Standard results like Effective Tension, Bend Moment, etc. are available at line ends as well as at mid-segment
points. For example to obtain the end tension at End A you can ask for the Effective Tension (or Wall Tension) at
End A.
- Magnitude and other components of the end force and end moment vectors.
- Bend Restrictor Load, which is a special end load result useful for bend restrictor design.
Sign Convention
When considering the sign of end load components the question arises as to whether the load reported is that
applied by the line to its connection or vice versa. The OrcaFlex convention is that the load reported at any point is
that applied by the B side of that point to the A side. So at End A we report the end load applied by the line to its
connection (e.g. a vessel), but at End B we report the end load applied to the line by its connection. This is in keeping
with the OrcaFlex convention for specifying the no-moment direction.
Treatment of Links and Winches attached to the end node
Normally, the end force and end moment are the total load acting between the end node and the object to which it is
connected. This includes forces from any links or winches attached to the end node.
However if the line end is free, or has been released, then it is not connected to any object. In this case the end
moment is zero and the end force is taken to be the total force acting between the line end and any links or winches
attached to the end node. If there are no attached links or winches, or they have been released, then the end force is
zero.
Standard Results
Effective Tension, Wall Tension,
Shear Force, x-Shear Force, y-Shear Force,
Bend Moment, x-Bend Moment, y-Bend Moment,
Curvature, x-Curvature, y-Curvature
These results variables are available at the line end nodes, as well as at mid-segment points. Whether you are given
end values or mid-segment values depends on the point at which you ask for the results. If you ask for these results
at EndA or EndB, or at an arc length that is closer to a line end than to the nearest mid-segment arc length, then the
values at the line end will be given. Otherwise the values for the nearest mid-segment point will be given.
For mid-segment values see Line Results: Forces, Line Results: Moments and Line Results: Pipe Stresses.
At a line end they report the components of the end loads in the local node directions of the end node, as follows:
- Effective tension is the component of the end force vector in the end node axial direction (= Nz direction).
- Wall tension is derived from the effective tension at the line end, using the pressure effects formula.
- Shear is the component of the end force vector normal to the end node axial direction.
- x-Shear and y-Shear are the components of the end force vector in the end node Nx and Ny directions.
- Torque is the component of the end moment vector in the end node axial direction.
- Bend moment is the component of the end moment vector normal to the end node axial direction.
- x-Bend Moment and y-Bend Moment are the components in the end node Nx and Ny directions.
- Stress results are based on the end load components in the end node axes directions.
Differences between End Loads and End Segment Loads
The end values of these results differ from the corresponding values for the end segment for two reasons.
Firstly, they include the loads (weight, buoyancy, drag etc.) on the last half segment adjacent to the end.
Secondly, they are components in the local node directions (Nx,Ny,Nz) at the end node, whereas the end segment
values are components with respect to the segment directions (Sx,Sy,Sz). The end node is often not aligned with the
end segment because end connection stiffness turns it towards the end orientation direction. For example:
- If the end connection stiffness is zero, or if the line end is free or has been released, then the end node directions
are aligned with the end segment directions. The end node values then differ from the end segment values only
by the loads on the end half segment.
w
System Modelling - Data and Results, Lines
315
- If the end connection stiffness is Infinity (and the end is not free or released) then the end node directions stay
aligned with the line end axes Ex, Ey, Ez. The end node values are then usually in different directions to the end
segment values.
- For intermediate values of end connection stiffness, the end node directions will be somewhere between the
two. They will tend to be nearer to the end fitting directions if the end connection stiffnesses are stronger than
the line bend stiffness and torsional stiffness, but nearer to the end segment directions if it is weaker.
End Load Magnitude and Components
End Force, End Moment,
End GX-Force, End GY-Force and End GZ-Force, End GX-Moment, End GY-Moment, End GZ-Moment,
End Lx-Force, End Ly-Force and End Lz-Force, End Lx-Moment, End Ly-Moment, End Lz-Moment,
End Ex-Force, End Ey-Force and End Ez-Force, End Ex-Moment, End Ey-Moment, End Ez-Moment
These results report the magnitude of the end force and end moment vectors, and their components in the following
directions:
- The directions of the global axes GX, GY, GZ.
- The directions of the local axes Lx, Ly, Lz of the object to which the line end is connected. For example if the line
end is connected to a vessel, the Lx, Ly, Lz are the directions of the vessel axes.
- The directions of the line end axes Ex, Ey, Ez. See Line End Orientation.
Bend Restrictor Load
This is defined as Bend Restrictor Load = End Force*(1 - cos(End Force Ez-Angle)). Another commonly used name
for this variable is "pseudo-curvature".
7.8.6 Drag Chain Results
For details on how to select results variables see Selecting Variables.
For Drag Chains the following results variables are available.
Azimuth and Declination
The azimuth and declination of the drag chain, relative to global axes.
Supported Length and Hanging Length
The supported length is the length deemed to be supported by the seabed. The hanging length is the length of the
rest of the drag chain. The supported length plus the hanging length equals the total length of the drag chain. See
Drag Chain Seabed Interaction for details on how these values are calculated.
Drag Force
The magnitude of the drag force acting on the drag chain. This includes both the axial and normal components of the
drag force.
Axial Drag Force, Normal Drag Force
The components of drag force axial and normal to the drag chain.
Horizontal Drag Force, Vertical Drag Force
The horizontal and vertical components of the drag force. For the vertical drag force a positive value indicates an
upwards force.
See Drag Chain Theory for details on how the drag force is calculated.
7.8.7 Flex Joint Results
For details on how to select results variables see Selecting Variables.
For Flex Joints the following results variables are available.
Bend Moment, x-Bend Moment, y-Bend Moment
The magnitude of bending moment at the Flex Joint and its components in the local x and y-directions.
System Modelling - Data and Results, Lines
w

316
7.8.8 Modal Analysis
The modal analysis form enables you to calculate and view the undamped natural modes of a line in the model. To
open this form, see the Modal Analysis command on the Results menu. Note that the analysis is only available when
the static position of the model has been calculated.
For full details of the calculation see the Modal Analysis theory section.
Performing modal analysis
To perform a modal analysis you need to specify the following:
- Which line you want to analyse.
- Which modes you want to calculate. You can ask for All modes or a specified range of modes. See Modal Analysis
Theory for details.
- Whether you want to calculate the mode shapes or just the natural periods. If you exclude the mode shapes then
the analysis only calculates the natural periods of the line, not the shapes of the natural modes. If you include
the mode shapes then the analysis takes longer.
When you have made your selections click the Calculate button. The modal analysis will then calculate the
undamped natural periods and, if requested, the mode shapes. Each mode is normalised to have largest offset
magnitude equal to 1, i.e. the offsets vectors are scaled so that largest offset vector is a unit vector. The modes are
numbered in order of increasing frequency.
Mode Table
The Table page then displays a spreadsheet giving the results in numerical form. If you do not calculate the mode
shape then the table reports only the periods of the requested natural modes. If you calculate the mode shapes then
the table also gives the shape in the form of the displacements of each free node. Mode shapes can be reported with
respect to either global axes directions or node axes directions.
If mode shapes are calculated then the table includes the following information:
- Offset distribution displays a measure of how inline, transverse and axial the mode is. For details see Offset
Distribution below.
- Mode type classifies each mode according to the offset distribution. Transverse means that the transverse
component is more than 90% of the total, Mostly transverse means that it is between 50% and 90%, and
similarly for inline, mostly inline, axial and mostly axial. Mixed means that none of the components are more
than 50% of the total.
Note: The Offset Distribution and Mode Type information is only available if there is relative flow normal
to the line. So, if the line is entirely above the water, or there is no current defined then this
information will not be available.
Mode View
If you requested the mode shapes then the View page displays a 3D view of the line showing one selected mode
shape superimposed on the static position of the line. The current direction is also shown on the view, and you can
control the view angle, zoom etc., as on any 3D view. You may need to zoom out in order to see the line, and you may
need to adjust the view angle to suit the mode that you are viewing. For example an out of plane mode is best
viewed by looking along the plane of the line.
You can use the mode drop-down list to control which mode is shown on the view. Note that when that drop-down
list has the focus (click it to give it the focus) then you can use the arrow keys to quickly increment or decrement the
mode shape number that is displayed.
The drawing exaggeration value allows you to vary the amplitude of the drawn mode shape. The animate mode
shape and draw node axes options allow further control of the mode shape drawing.
If the mode shape is being animated then there is a further choice to make, the animation period. If you select the
mode period option then the animation has a cycle period equal to the mode period. However, for modes with
either very long or very short periods, this option can make visualisation of the mode shape quite difficult. The
alternative option, fixed, animates the mode with a 5s cycle period.
The offset distribution and mode type for the selected node is also shown, provided that there is relative flow
normal to the line.
w
System Modelling - Data and Results, Lines
317
VIV Page
The VIV facilities related to modal analysis are not yet available for lines that have torsion included.
If you requested that mode shapes be calculated then the View page displays a table of information relating to VIV.
Each row of the table refers to a single mode and contains the following information:
- The mode number.
- The mode's period and frequency.
- The mode's offset distribution and mode type.
- Export to SHEAR7 Mds file determines whether or not the mode will be included in the exported SHEAR7 Mds
file.
Offset Distribution
For a given mode, let V be the mode offset vector at a given node, let Vi, Vt and Va be V's components in the local
inline, transverse and axial directions and let L be the length of line represented by that node. Then OrcaFlex
calculates the inline, transverse and axial components of the overall mode shape as follows:
Mode shape inline component = Mi = ( LVi
2
)
1/2

Mode shape transverse component = Mt = ( LVt
2
)
1/2

Mode shape axial component = Ma = ( LVa
2
)
1/2

where the summations are over all nodes in the line.
OrcaFlex then reports these 3 mode shape components as percentages of their sum, i.e. the offset distribution values
reported by OrcaFlex are Mi/M, Mt/M and Ma/M where M = Mi + Mt + Ma. These values are only used to provide some
measure of how inline, transverse and axial the mode is.
The root sum of squares formulation used above is the multi-dimensional equivalent of the standard 3D formula |V|
= (Vi
2
+ Vt
2
+ Va
2
)
1/2
. The scaling by L is there so that the values are independent of the level of discretisation.
Export SHEAR7 Mds File
This button exports a SHEAR7 .Mds file.
7.8.9 Line Setup Wizard
Intended principally for mooring analyses, this wizard adjusts line configuration to achieve specified tension,
declination or layback. The wizard is available when the current simulation is in Reset state and is opened by
clicking the Calculation | Line Setup Wizard menu item.
System Modelling - Data and Results, Lines
w

318

Figure: The Line Setup Wizard
Calculation Mode
The Wizard has two modes of operation: Calculate Line Lengths or Calculate Anchor Positions.
The Calculate Line Lengths option operates by varying the length of the specified section of each included line until
the target top value is achieved. Because the section length is altered by the Calculate Line Lengths option we
recommend that you specify the segmentation using Target Segment Length rather than Number of Segments. Thus
if the wizard lengthens the line then the program will automatically add more segments to meet the Target Segment
Length.
The Calculate Anchor Positions option operates by varying the position of the Bottom End of each included line
until the target value is achieved. The Bottom End position is constrained to be on a line in the Lay Azimuth
direction so you must set these data items before using the wizard.
Note: These calculations use a numerical method which is not 100% robust. We recommend that you set
up your model so that your top tension / top declination values are quite close to your exact target
values before using the wizard. If you do this the wizard is more likely to be able to find a solution.
Target Values
To use the wizard you must first specify the target tensions or declinations. The wizard presents a list of all Lines in
the model.
The Include this Line option determines which Lines are included in the calculation which allows you to exclude
certain Lines. For example, you may be modelling both moorings and flow lines in the same OrcaFlex file. Typically
you would only include the moorings in this calculation.
w
System Modelling - Data and Results, Lines
319
The Target Variable option allows you to switch between the following options:
- End A Tension or End B Tension.
- End A Horizontal End Force or End B Horizontal End Force.
- End A Declination or End B Declination.
- Layback, defined to be the horizontal component of distance between the Top End of the line and the
touchdown point.
- No Target, which means that the line will be included in the static calculation but that its data is not to be
modified. This is particularly useful if you are analysing buoyed systems where the upper and lower catenaries
are modelled with different Lines.
Finally you specify Tension, Horizontal End Force, Declination or Layback values, as applicable, in the Target Value
field.
Line section to be modified
Specifies which section on the line is to have its length modified when using the Calculate Line Lengths mode.
Convergence Parameters
The Wizard performs an iterative calculation and these parameters can be used to help convergence.
The calculation is abandoned if convergence has not been achieved after the number of steps specified by Max
Iterations. For some difficult cases simply increasing this limit may be enough.
The non-dimensional Tolerance parameter determines when the calculation is deemed to have converged. The
calculation has converged once the following conditions are satisfied:
- Calculated Value < Tolerance Typical Force for tension and end force targets. Typical Force for a line is defined
as to be the total dry weight of the line.
- Calculated Value < Tolerance for declination targets.
- Calculated Value < Tolerance Target Value for a layback target.
The Min Damping and Max Damping parameters can sometimes be used to help difficult problems converge. Try
increasing the Min Damping factor, say values in the range 1.5 to 10. You can also try increasing the Max Damping
factor, say to values in the range 10 to 100.
7.8.10 Line Type Wizard
The Line Type Wizard is a tool that helps you set up a Line Type that represents one of the following commonly used
structures:
- Chain.
- Rope/Wire.
- Line with Floats.
- Homogeneous Pipe.
- Hose.
- Umbilical.
What the Wizard does is ask you for the basic data of the structure - e.g. the bar diameter for a chain - and then
calculate for you as much of the line type data as it reasonably can for representing that structure. The Wizard
leaves you to set other data - e.g. friction coefficients - where there is no formula on which to base the data.
Warning: The values generated by the Wizard are offered in good faith, but due to variations in properties
between products they cannot be guaranteed. Please use suppliers' data where this is available.
How The Line Type Wizard Works
The Wizard works on the currently selected line type on the line types form, so you should first create, name and
select the Line Type that you want to set up. You can then open the Wizard using the Wizard button on the Line
Types form.
System Modelling - Data and Results, Lines
w

320
The first time you use the Wizard on a given line type you must be in reset state, since you will be setting data. You
then tell the Wizard the category of structure that you want to model (chain, rope etc.) and the data for that
structure (e.g. chain bar diameter). This information is called the Wizard data, and from it the Wizard derives line
type data to correspond to that Wizard data. If necessary you can then manually adjust the derived line type data.
Once you have used the Wizard to set up data for a given line type, then the Wizard remembers the Wizard data you
gave it. If you re-open the Wizard when in reset state then you can edit the Wizard data and the Wizard will
calculate corresponding new derived line type data. Any manual adjustments will need to be done again.
You can also re-open the Wizard when in other states (e.g. in static state or when a simulation is active) but only in
order to view the Wizard data. You cannot edit Wizard data or re-derive line type data except in reset state.
Note: Remember that the current line type data might not correspond to the current Wizard data, since
you might have manually edited the line type data after it was derived by the Wizard.
Using the Line Type Wizard
The Wizard has three stages, with Next and Back buttons so that you can move between stages to set up the data
you want.
Stage 1 displays the name of the selected Line Type and asks you to specify the special category that you want. You
can then click Next to proceed to the second stage.
Stage 2 presents 3 frames of information. The top left frame asks you for the basic data of the special category you
have selected. The bottom left frame displays the resulting derived Line Type data - you should check that the values
are reasonable.
The right hand frame displays other properties of the resulting Line Type, which are often useful as a check. In some
cases these depend on contents density, in which case you can specify the contents density to be used for the
calculation of properties. If there are any errors then a message will be displayed. When everything is correct you
can click Next to proceed to the last stage.
Stage 3 displays all of the Line Type data. Bold text is data that has been derived for you by the Wizard, based on the
special line type data you specified. Non-bold text is data that has not been set by the Wizard - this data will be as
you last set it. You can adjust any of the data at this stage, overriding the values derived by the Wizard if you wish.
You can also still go back to previous stages of the Wizard if further modifications are required. When everything is
correct you can click the Finish button, in which case the new data will be written, overwriting the previous data for
that line type. Alternatively, you can Cancel to leave the line type unchanged, but then any newly entered special
category data will also be lost.
7.8.11 Chain
A chain can be modelled in OrcaFlex by using a Line Type with its various properties set to suitable values. This note
derives the values to use for anchor chain of nominal (i.e. bar) diameter D, as shown in the Figure: Chain Geometry.
The properties of an equivalent line type are given below.
Studless Studlink
OD 1.80D 1.89D
ID 0 0
Contact diameter 3.35D 3.6D
Mass/Length 19.9D
2
21.9D
2
te/m for D in m
Axial stiffness 0.854x10
8
D
2
1.01x10
8
D
2
kN for D in m
Bend stiffness 0 0
Limit Compression yes yes
Normal drag coefficient 1.0 1.0
Normal drag diameter 2.10D 2.26D
Axial drag coefficient 0.4 0.4
Axial drag diameter 0.54D/ 0.60D/
Normal added mass coefficient 1.0 1.0
Axial added mass coefficient 0.08 0.07
w
System Modelling - Data and Results, Lines
321
Studless Studlink
Stress diameters '~' '~'
Allowable stress '~' '~'
Friction coefficient typically 0.4 - 0.8 depending on the seabed
Reference
Puech A, 1984.
Geometry

3.35D (studless)
3.6D (studlink)
6D
3.35D (studless)
3.6D (studlink)
D = Nominal Diameter
A
EDGE

A
FACE


Figure: Chain Geometry
Data
Chains are widely used in a variety of offshore applications, most obviously in mooring. The Line Type Wizard helps
derive a line type to represent a chain based on the following input data.
Bar Diameter
The diameter of the metal bar that forms the links.
Link Type
Can be either studlink or studless.
Mechanical Properties
Catalogue Data
When modelling mooring chain the Line Type Wizard aims to derive data for a line type whose characteristics are
equivalent to that of a chain.
Warning: The values generated by the Wizard are approximate only and are intended as first estimates for
preliminary use. They are offered in good faith, but due to variations in properties between
products they cannot be guaranteed. Please use suppliers' data where this is available.
In deriving these some of the available catalogue data will prove useful and we outline here the relevant aspects.
The Mooring Chain figure shows the geometry of a pair of chain links. The values are given in terms of the nominal
bar diameter of the chain (D), assumed to be in metres, and are given for both a studless chain and, where different,
for a studlink chain. The geometry given in the figure is based on catalogue data available from the chain
manufacturer Scana Ramnas (1990 & 1995), as is the following expression for mass per metre:
Mass per metre (M) = 19.9D
2
te/m (studless) or 21.9D
2
te/m (studlink).
The catalogue also gives the following value for the Young's Modulus of the chain that has been deduced from stress-
strain relationships in which the cross-sectional area of two bars is taken to be the load bearing area:
E = 5.44 x 10
7
kN/m
2
(studless) or 6.40 x 10
7
kN/m
2
(studlink).
System Modelling - Data and Results, Lines
w

322
Minimum Breaking Loads
For information, the properties window displays minimum breaking loads that depend on the nominal diameter and
chain grade. They are derived using the following relationship, which was obtained from the manufacturer's
catalogue:
Min Breaking Load = c.D
2
.(44 - 80D) kN
where c is a grade-dependent constant, given in the catalogue data as Grade 2: 1.37e4, Grade 3: 1.96e4, ORQ: 2.11e4,
R4 - 2.74e4.
Studless and Studlink chains with the same nominal diameters are stated to withstand the same break- and proof-
loads.
Derived Data
It will be useful to know the centreline length of bar needed to make a single link. We can obtain this by noting that,
for a long chain, there is one chain link every 4D length of chain. Hence, the number of links per metre of chain is N =
1/(4D), and thus for a single link:
Mass per link = M / N = 79.6D
3
te (studless) or 87 6D
3
te (studlink).
Assuming that the chain is made from steel, and using s as density of steel (= 7.8 te/m
3
), this then leads to:
Volume per link = (M / N) / s = 10.2D
3
m
3
(studless) or 11.2D
3
m
3
(studlink).
But, by considering the geometry of a link, we also have
Volume = L . D
2
/4,
where L is centreline length of bar needed to make a single link (including the stud in the case of the studlink chain).
Hence:
L = Volume / (D
2
/4) = 13.0D m (studless) or 14.3D m (studlink).
Outer, Inner and Contact Diameter
The Line Type Wizard sets up diameters for a chain as follows:
Outer Diameter
The effective outer diameter of the equivalent line is obtained using a similar argument to that deployed in
obtaining the overall length of bar per link. Firstly, note that the volume per metre can be expressed as both:
Volume per metre = M/s
and also as
Volume per metre = OD
2
/4
where OD is the equivalent diameter for a line with constant volume along its length. Equating these expressions
leads to:
Outer Diameter = [4M/(s)]
1/2
= 1.80D m (studless) or 1.89D m (studlink).
Inner Diameter
Chains do not have any contents, so the Inner Diameter is set to zero.
Contact Diameter
The contact diameter is set to the chain link envelope diameter. That is Contact Diameter = 3.35D m (studless) or
3.6D m (studlink).
Axial and Bending Stiffness
The Line Type Wizard sets up Axial and Bending Stiffness and Limit Compression for a chain as follows:
Axial Stiffness
As detailed in Mechanical Properties of Mooring Chains we have values for the Young's Modulus for both studlink
and studless chains from catalogue data. Taking A to be the combined cross-sectional area of two bars, that is:
A = 2(D
2
/ 4) m
2

w
System Modelling - Data and Results, Lines
323
leads to:
EA = 0.854 x 10
8
D
2
kN (studless) or 1.01 x 10
8
D
2
kN (studlink).
Bending Stiffness
For both studlink and studless chains the bending stiffness is set to zero as the chains are assumed to bend when
subjected to very small moments.
Limit Compression
In conjunction with a zero value for bend stiffness, Limit Compression is set to 'yes'.
Axial Added Mass Coefficient
The Line Type Wizard sets up Axial Added Mass Coefficient for a chain as follows.
As for axial drag, the parts attracting added mass in axial flow are the projecting lobes only - see the figure. Each pair
of lobes are simply a link with the middle section (and stud if present) removed, and can be viewed roughly as an
ellipsoid split down the centre with the following dimensions:
length 6D, width D and height 2.35D (studless) or 2.60D (studlink).
J N Newman (1977) (page 147, Fig 4.8) gives added mass coefficients for spheroids. We approximate the ellipsoid as
a spheroid with a lenbgth of 6D (the link length) and a mean width of (D+2.35D)/2 = 1.675D for studless), or
(D+2.60D)/2 = 1.80D for studlink. This gives an aspect ratio (width/length) of about 0.3 in both cases.
For this aspect ratio and axial flow Newman gives an added mass coefficient of 0.1. This is for use with a reference
volume equal to the spheroid volume, which in this case is the volume of the lobes only. But OrcaFlex uses the total
displaced volume as the reference volume, so a suitable scaling of Newman's coefficient is needed to allow for this
difference in reference volume.
For a studless link the non-lobe length of bar is 2D (the middle section) out of a total of 13D, so the lobes represent
11D/13D = 84.6% of the total link volume. For a studlink chain the non-lobe length of bar is 2D + 1.6D (the stud) our
of a total of 14.3D, so the lobes represent 10.7D/14.3D = 74.8% of the total link volume. So we scale Newman's
added mass coefficient 0.1 by these factors and round to give OrcaFlex axial added mass coefficients of
Caa = 0.08 (studless) or 0.07 (studlink).
Axial Drag
The Line Type Wizard sets up the axial drag coefficient and axial drag diameter for a chain as follows.
Generally, axial drag is very low for smooth pipes, being due to skin friction only. However, for a chain there is some
projected area present even in axial flow and we consider the drag force due to this effect. We ignore the effect of
skin friction in the derivation outlined below.
As in the calculation for normal flow we consider two adjacent links and calculate their projected area. The
projected area, normal to the flow, for axial flow consists of the four "lobes" only, since the central part is effectively
shielded from the flow - see the figure.
Hoerner (1965), page 5-8, Fig 14c, gives Cda = 0.32 for a hemispherical rivet head projecting from a plane. The lobes
here are similar - more elongated in the flow direction (implying a lower Cda) but on a less smooth body (implying a
higher Cda). Hence, we assume:
Cda = 0.40.
The reference drag area that corresponds to this is the axial projected area of the lobes. Each lobe is (3.35D - D)/2 =
1.175D long for studless, or (3.6D - D)/2 = 1.30D long for studlink, consisting of a semicircle of diameter D on the
end of a rectangle of width D and length 1.175D - 0.5D = 0.675D (studless), or 1.3D - 0.5D = 0.8D (studlink). And
each pair of links gives 4 lobes, so the total axial projected area per metre of chain (= 1/8D pairs of links) is given by:
4 . (D
2
/8 + 0.675D
2
) / (8D) = 0.54D for studless
4 . (D
2
/8 + 0.8D
2
) / (8D) = 0.60D for studlink.
However for axial drag OrcaFlex uses a reference drag area equal to Da, where Da is the axial drag diameter. So the
axial drag diameter for OrcaFlex is:
Da = 0.54D/ (studless)
Da = 0.60D/ (studlink).
System Modelling - Data and Results, Lines
w

324
Normal Drag
The Line Type Wizard sets up the Normal Drag Coefficient for a chain as follows:
We first calculate the drag force on a chain in normal flow, for which we require a value for its projected area
(normal to the flow). To calculate this we must consider the chain as a collection of pairs of adjacent links, one face
on to the flow, with projected area AFACE, and one edge on, with projected area AEDGE - see Figure. The overall
projected area per metre will be a multiple of the sum of these two areas.
AFACE = L D - 2D
2
= 11.0 D
2
m
2
(studless) or 12.3D
2
m
2
(studlink)
and
AEDGE = 5D D + 2(D
2
/4)/2 = 5.79 D
2
m
2
.
There are 1/(4D) links per metre and hence 1/(8D) such pairs of links per metre. Hence, the total projected area per
metre (normal to the flow) is given by the following expression:
ANORMAL = (AFACE + AEDGE) (1/(8D)) = 2.10D m (studless) or 2.26D m (studlink).
So, we are now able to calculate the drag force per metre length of chain as:
Drag force = v
2
Cdn ANORMAL
for a given drag coefficient Cdn, where is the density of seawater and v is the flow velocity. For irregular shaped
bluff bodies such as chain links, of either type, a suitable value for Cdn is 1.0.
The drag force per metre length as calculated by OrcaFlex is given by:
Drag force = v
2
Cdn Dn
where Dn is the normal drag diameter. Equating the two equations for drag force leads to:
Dn = ANORMAL = 2.10D m (studless) or 2.26D m (studlink).
Normal Added Mass Coefficient
The Line Type Wizard sets up the Normal Added Mass Coefficient for a chain as follows:
When a line is accelerated in water it requires an impulse in excess of that needed for the same acceleration in air.
This is due to the extra force required to displace the water in the vicinity of the submerged part of the line. An
added mass term is used to reflect this and it is found to be proportional to the volume of displaced fluid:
Added mass = Ca . . Vol
where
is density of water,
Vol is the displaced volume.
The parts of a line displacing the fluid are said to be attracting added mass. For asymmetrical bodies the parts
attracting added mass will differ in different directions. Hence, we consider the effect due to fluid flow exerting a
force in, first, the normal and then the axial directions.
For a circular cylinder in flow normal to its axis:
Can = 1.0.
The situation for a chain is more complicated as, for flow normal to a link, parts of the link are shielded from the
flow but there is also some entrapped water within each edge-on link. An accurate calculation is very problematic
and is unlikely to give a value for the normal added mass coefficient far distant from 1.0. Hence we assume:
Can = 1.0.
Stress Diameters and Allowable Stress
These are not relevant for chains which have no contents and so are set to '~', the default values. Any available
stress or wall tension results should be ignored.
w
System Modelling - Data and Results, Lines
325
7.8.12 Rope/Wire
D = Nominal rope diameter
Wire with Fibre core Wire with Wire core Fibre rope
D

Figure: Rope/Wire Geometry
Ropes and wires have many applications in the offshore industry including towing, mooring and winching. The Line
Type Wizard can be used to derive Line Type data to represent five different types: Nylon (8-strand Multiplait);
Polyester (8-strand Multiplait); Polyethylene (8-strand Multiplait); 6x19 Wire Rope with Fibre Core; and 6x19 Wire
Rope with Wire Core.
Most of the calculations of the derived line properties are based on data from a catalogue published by Marlow
Ropes Ltd (1995). All quantities are expressed as a function of the rope's nominal diameter D. Note that this
documentation uses the SI units system, so D is in metres in this documentation, but the program automatically
adjusts the formulae to match the units specified by the user.
Warning: The values generated by the Wizard are approximate only and are intended as first estimates for
preliminary use. They are offered in good faith, but due to variations in properties between
products they cannot be guaranteed. Please use suppliers' data where this is available.
Data
The Line Type Wizard can be used to create line types representing a variety of ropes and wires. The input data
required consists of the following:
Rope/Wire Nominal Diameter
The overall diameter of the rope or wire. The majority of the derived line type data are functions of this diameter.
Warning: The line type outer diameter derived by the wizard is less than this nominal diameter, in order to
give the correct buoyancy. You need to allow for this when setting the line type drag and added
mass coefficients, since the coefficients correspond to the derived line type outer diameter, not the
nominal diameter.
Construction
Can be one of:
- Nylon (8-strand Multiplait).
- Polyester (8-strand Multiplait).
- Polyethylene (8-strand Multiplait).
- 6x19 Wire with Fibre Core (8-strand Multiplait).
- 6x19 Wire with Wire Core (8-strand Multiplait).
The construction affects both the mass per unit length of the line type and the strength of the line type.
Mass per unit length
The Line Type Wizard sets up Mass for a Rope/Wire as follows:
System Modelling - Data and Results, Lines
w

326
The quantity Mass per unit length is available from catalogue data for ropes. The nominal rope diameter and
nominal mass are available for a variety of rope constructions. A simple statistical analysis of the available data
leads to the following expressions:
Mass Per Metre = 0.6476 D
2
te/m (for Nylon ropes).
Mass Per Metre = 0.7978 D
2
te/m (for Polyester ropes).
Mass Per Metre = 0.4526 D
2
te/m (for Polypropylene ropes).
Mass Per Metre = 3.6109 D
2
te/m (for Wire ropes with fibre core).
Mass Per Metre = 3.9897 D
2
te/m (for Wire ropes with wire core).
Outer and Inner Diameters
The Line Type Wizard sets up outer and inner diameters for a Rope/Wire as follows.
The inner diameter is set to zero for all rope construction types. The line type outer diameter, OD, is set as follows:
OD = 0.85 D (for Nylon ropes).
OD = 0.86 D (for Polyester ropes).
OD = 0.80 D (for Polypropylene ropes).
OD = 0.82 D (for Wire ropes with fibre core).
OD = 0.80 D (for Wire ropes with wire core).
where D is the specified rope diameter.
These outer diameters are effective diameters that give the line type a displaced volume per unit length that equals
the estimated displaced volume per unit length of the rope/wire. The line type then has the appropriate buoyancy.
Note that this effective diameter is less than the specified rope diameter, because there are gaps between the fibres
and so not all of the specified nominal diameter contributes to buoyancy.
The above formulae for the line type OD were derived by equating the line type displaced volume per unit length,
OD
2
/4, to the displaced volume per metre, M/, where M is the rope/wire mass per unit length and is the average
density of the material.
The following average material densities (in te/m
3
) were assumed: Nylon 1.14; Polyester 1.38; Polypropylene
0.91; Wire with fibre core 6.87; Wire with Wire core 7.85. The average material density for the Wire with fibre core
was estimated by assuming a ratio of 6:1 between the wire and fibre volume, with the fibre taken to have the same
density as (fresh) water.
Axial and Bending Stiffness
The Line Type Wizard sets up Axial and Bending Stiffness and Limit Compression for a Rope/Wire as follows
Axial Stiffness
The expressions for axial stiffness are calculated in different ways for the two groups of fibre ropes and wire ropes.
For Fibre Ropes we use the catalogue data. Load/extension characteristics depend on previous load history,
whether the rope is wet or dry, and the rate of application of the load. To reflect the likely working environment of
the rope we use data associated with ropes that have been tested under the following conditions:
- the rope has been pre-worked - loaded to 50% of breaking load and then rested for 24 hours (this causes the
rope to bed down so that its elastic behaviour is more consistent and repeatable)
- subjected to slowly varying loads (for loads varying at wave frequency, stiffness should be about twice the value
shown)
- a wet rope - pre-soaked in water (this is most significant for Nylon ropes which suffer a loss in performance
when wet)
- we use figures for the average performance when the mean extension is 10% (by taking the tangent of the
stress-strain curve at 10%).
Incorporating all of the factors indicated above we can produce values of axial stiffness for a range of rope
diameters. Once again using simple statistical techniques we obtain the following expression for axial stiffness of
fibre ropes:
w
System Modelling - Data and Results, Lines
327
Axial Stiffness = 1.18 x 10
5
D
2
kN (for Nylon ropes).
Axial Stiffness = 1.09 x 10
6
D
2
kN (for Polyester ropes).
Axial Stiffness = 1.06 x 10
6
D
2
kN (for Polypropylene ropes).
Axial stiffness for Wire Ropes is calculated directly, rather than estimated from empirical relationships. We assume
a value for Young's Modulus, for the 6x19 strand group, of:
E = 1.03 x 10
8
kN/m
2
(for Wire ropes with fibre core).
E = 1.13 x 10
8
kN/m
2
(for Wire ropes with wire core).
and work on an assumed metallic area of:
A = 0.455 (D
2
/4) m
2
(for both wire ropes).
Both of these quantities have been obtained from the HER Group Marine Equipment & Wire Rope Handbook. Note
that for wire ropes with a wire core the additional axial stiffness is accounted for in the enhanced Young's modulus.
This leads to:
Axial Stiffness = 3.67 x 10
7
D
2
kN (for Wire ropes with fibre core).
Axial Stiffness = 4.04 x 10
7
D
2
kN (for Wire ropes with wire core).
Bending Stiffness
For all rope construction types the bending stiffness offered by the Wizard is zero. For systems where bend stiffness
is a significant factor you should override this value with the true value obtained from the rope supplier.
Limit Compression
In conjunction with a zero value for bend stiffness Limit Compression is set to yes.
Stress Diameters and Allowable Stress
The Line Type Wizard sets the stress diameters and allowable stress for a Rope/Wire to '~' since the OrcaFlex stress
analysis is not applicable to complex structures such as ropes or wires. Any available stress or wall tension results
should be ignored.
Minimum Breaking Loads
The properties window in the line type wizard displays approximate minimum breaking load (MBL) values for
ropes and wires. These may be useful for setting the Maximum Tension data item for the line type.
The MBL values displayed are calculated using the following functional formulae, where D is rope/wire nominal
diameter in metres:
Nylon ropes (dry) 163950.D
2
kN
Nylon ropes (wet) 139357.D
2
kN
Polyester ropes 170466.D
2
kN
Polypropylene ropes 105990.D
2
kN
Wire ropes with fibre core 584175.D
2
kN
Wire ropes with wire core 633358.D
2
kN
These formulae were derived from manufacturer's catalogue data, which consist of minimum (dry) strength against
nominal diameter for each of the five rope/wire constructions. The formulae were derived using least squares
fitting, and they were found to give a good fit to the manufacturer's data, except that they tend to underestimate
MBL for small diameter non-wire ropes.
Note: Nylon ropes lose some strength when wet; the formula given for wet nylon ropes is based on the
manufacturer's statement that they can lose up to 15% of their (dry) strength when wet.
7.8.13 Line with Floats
You can model floats or buoyancy modules attached to a line by using buoyant Clumps attached at the relevant
points. However when a number of floats are supporting a length of line it is often easier to model the buoyancy as if
it were smeared, i.e. spread out evenly, along that part of the line. This allows the length and segmentation of the
buoyed section to be varied easily without having to add and remove individual floats.
System Modelling - Data and Results, Lines
w

328
To use this 'smeared properties' approach you need to do the following.
- Create a new line type.
- Set the new line type's properties to be equivalent to those of the original pipe+floats. This is done by spreading
each float's buoyancy, drag, etc. uniformly over the length of pipe from Sf/2 before the float centre to Sf/2 after
the float centre, where Sf is the float pitch, i.e. the spacing between float centres (see diagram below). The result
is a uniform circular section line which will experience the same forces per unit length as the original line plus
floats. The line type wizard will automatically set up this 'equivalent' line type for you.
- Set up a line section to model the length of line supported by the floats. The section's line type should be set to
the equivalent line type and its length should be N x Sf, where N is the number of floats and Sf is the float pitch.
Note that this length is a little more than the length between the start of the first float and the end of the last
one, since each float is effectively being smeared equally both ways from its centre; see the diagram below,
which show the situation when N=3.
We describe below how the Line Type Wizard derives the properties of the equivalent line type. Note that this
approach is also suitable for modelling a regularly weighted section of line.
Warning: The values generated by the Wizard are based on current best practice, but more specific project
data should be used where this is available.
Dp
Df
Sf Sf Sf
Floats

Figure: Geometry of Line and Floats
We first define the notation to represent the underlying line onto which the floats are to be attached, which we refer
to as the Base Line Type - see Base Line Type Notation. We then specify the quantities required to represent the
floats - see Float Notation.
The following properties are all deemed to be unaffected by the addition of floats to the base line and so are set to
have the same values as those of the base line.
- Axial and Bending Stiffness
- Limit Compression
- Maximum Tension
- Minimum Bend Radius
- Torsional Stiffness
Data
Adding floats to a line to produce extra buoyancy is a common requirement. The Line Type Wizard helps you to
quickly derive such a line type by specifying both the existing underlying base line type, onto which the floats will be
added, and various properties of the floats:
Base Line Type
The line type on which the floats are mounted.
w
System Modelling - Data and Results, Lines
329
Float Diameter
The outside diameter of each float. It must be greater than the outside diameter of the underlying base line type.
Float Length
The axial length of each float.
Float Pitch
The average distance between the centres of successive floats.
Float Material Density
The density of the material forming the floats, excluding additional items such as fixing material.
Float Hardware Mass
This accounts for the extra mass due to the addition of the floats above that due to the material density and covers
such items as the clamping/fixing mechanisms.
Float Normal Drag Coefficient
The drag coefficient associated with the float for flow normal to the line.
Float Axial Skin Drag Coefficient
The drag coefficient associated with the floats, due to the floats' skin friction, for flow along the axis of the line.
Float Axial Form Drag Coefficient
The drag coefficient associated with the float, due to the projected annulus area of the end of the float, for flow along
the axis of the line.
Float Normal Added Mass Coefficient
The added mass coefficient for flow normal to the line.
Float Axial Added Mass Coefficient
The added mass coefficient for flow along the axis of the line.
The Line Type data that are derived, and the associated underlying expressions, are detailed in Modelling Lines with
Floats.
Properties of Base Line Type
For modelling lines with floats the line without floats is referred to as the base line type and the following notation is
used. The line without floats is assumed to be of circular cross-section and have the following characteristics:
- ODp - outer diameter.
- IDp - inner diameter.
- Mp - mass per unit length.
- Cdnp - drag coefficient in normal flow.
- Cdap - drag coefficient in axial flow.
- Canp - Added mass coefficient in Normal flow (commonly taken as 1.0 for circular section).
- Caap - Added Mass coefficient in Axial flow (commonly taken as zero).
Properties of the Floats
For modelling lines with floats the following notation is used for the floats. The floats are assumed to be short
cylinders fitted co-axially on the line at constant spacing:
Lf length
Df diameter
f float density
Sf float pitch
System Modelling - Data and Results, Lines
w

330
mfh float hardware mass (e.g. fixing clamps, bolts, etc.)
Cdnf drag coefficient, normal flow
Cdaf1 drag coefficient, axial flow due to form
Cdaf2 drag coefficient, axial flow due to skin friction
Canf added mass coefficients in normal flow
Caaf added mass coefficient in axial flow
With the above information we can calculate the volume occupied by an individual float as:
Vf = /4 (Df
2
- ODp
2
) Lf
which leads to the mass of the float being calculated as follows:
M
f
= V
f
.
f
+ m
fh
.
Outer, Inner and Contact Diameter
The Line Type Wizard sets up diameters for a Line with Floats as follows:
Outer Diameter
The Outer Diameter (OD) of the equivalent line is calculated by equating two equivalent expressions for the volume
per unit length of the line:
Vol per unit length = /4.OD
2
(equivalent line)
Vol per unit length (V) = /4.ODp
2
+ Vf /Sf (line with floats)
This leads to:
Outer Diameter (OD) = (4V/)
1/2

Inner Diameter
The Inner Diameter is unaffected by the addition of floats and so is set to be the same as that of the base line.
Contact Diameter
The Contact Diameter is set to equal the float diameter Df. This allows float clearance to be reported using the Line
Contact Clearance result.
Mass per Unit Length
The line type mass per unit length is calculated by allowing for the fact that there is one float for every Sf length of
the section and hence (1/Sf) floats per unit length, giving:
Mass per unit length = Mp + Mf / Sf
Axial Drag Coefficient
The Line Type Wizard sets up the Axial Drag Coefficient for a Line with Floats as follows.
To derive the drag coefficient when flow is axial to the line we adopt a similar approach to that used above for
normal flow.
When considering the equivalent line, with the additional buoyancy smeared along it's outer surface, the drag force
per unit length, when flow is axial to the line, is due solely to skin friction and can be expressed as:
Drag Forcea = v
2
Cda ( OD)
in which the reference area is the circumference of the equivalent line and where r is the density of seawater and v
is the flow velocity.
As in the case for flow normal to the line, we can also express the drag force per unit length experienced by the
equivalent line as the sum of the drag forces experienced by the floats and the drag forces experienced by the part of
the line not hidden by the floats. However, the drag forces experienced by the floats are slightly more complicated in
axial flow as there will be a drag force due to the exposed annulus on the end of each float and a drag force due to
skin friction.
Drag Forcea = Drag Forcea-FLOATS + Drag Forcea-EXP LINE
w
System Modelling - Data and Results, Lines
331
= v
2
[Cdaf1.Drag Area1a-FLOATS + Cdaf2.Drag Area2a-FLOATS + Cdap.Drag Areaa-EXP LINE]
in which the reference drag area, due to the annulus, for the floats in axial flow is given by:
Drag Area1a-FLOATS = /4 (Df
2
- ODp
2
).1/ Sf
the reference drag area, due to the skin, for the floats in axial flow is given by:
Drag Area2a-FLOATS = DfLf / Sf
and the reference drag area, due to the skin, for the exposed line in axial flow is given by:
Drag Areaa-EXP LINE = ODp (1-Lf/Sf).
Equating these two expressions leads to:
Cda = [Cdaf1.Drag Area1a-FLOATS + Cdaf2.Drag Area2a-FLOATS + Cdap.Drag Areaa-EXP LINE]/(OD).
Normal Drag Coefficient
The Line Type Wizard sets up the Normal Drag Coefficient for a Line with Floats as follows:
The drag force per unit length of the equivalent line when flow is normal to the line's axis can be expressed as:
Drag Forcen = v
2
Cdn OD
in which the reference drag area per unit length, normal to the flow, is given by OD and where is the density of
seawater and v is the flow velocity.
We can also express the drag force per unit length experienced by the equivalent line as the sum of the drag forces
experienced by the floats and the drag forces experienced by the part of the line not hidden by the floats:
Drag Forcen = Drag Forcen-FLOATS + Drag Forcen-EXP LINE
= v
2
[Cdnf.Drag Arean-FLOATS + Cdnp.Drag Arean-EXP LINE]
in which the reference drag area for the floats in normal flow is given by:
Drag Arean-FLOATS = Df Lf/Sf
and the reference drag area for the exposed line in normal flow is given by:
Drag Arean-EXP LINE = ODp (1-Lf/Sf).
Equating these two expressions leads to:
Cdn = [Cdnf.Drag Arean-FLOATS + Cdnp.Drag Arean-EXP LINE] / OD.
Added Mass Coefficients
The Line Type Wizard sets up Normal and Axial Added Mass Coefficients for a Line with Floats as follows:
Normal Added Mass Coefficient
Added mass coefficients are calculated in a similar way to the drag force coefficients. For flow normal to the axis of
the line the added mass per unit length is given by:
Added Massn = /4 OD
2
Can
in which the reference volume is the volume of the equivalent line and where is the density of seawater.
We can also express the added mass term of the equivalent line as the sum of the added masses due to the floats and
due to the underlying line:
Added Massn = (Canf AMVolFLOATS + Canp AMVolEXP LINE)
in which the reference volume per unit length for the floats (and the portion of line they cover) is given by:
AMVolFLOATS = /4 Df
2
Lf/Sf
and the reference volume per unit length for the exposed part of the line is given by:
AMVolEXP LINE = /4 ODp
2
(1-Lf/Sf)
Equating these two expressions leads to:
Can = (Canf AMVolFLOATS + Canp AMVolEXP LINE)/(/4 OD
2
).
System Modelling - Data and Results, Lines
w

332
Axial Added Mass Coefficient
The added mass coefficients follow in a similar way to above. The reference volumes for the equivalent line and for
the floats and exposed part of the underlying base line are taken to be the same in axial flow as in normal flow.
Hence, we can take the above expression for the added mass coefficient in normal flow and replace the coefficients
for normal flow with those for axial flow:
Caa = (Caaf AMVolFLOATS + Caap AMVolEXP LINE)/(/4 OD
2
).
Stress Diameters and Allowable Stress
The stress diameter and allowable stress are set to be the values used by the base line, since it is the base line which
is load bearing.
7.8.14 Homogeneous Pipe
N N
O
O

Figure: Homogeneous Pipe
The Line Type Wizard for Homogeneous Pipe creates data for a General Category Line Type with properties
appropriate to a pipe constructed from a single homogeneous material, for example a metal riser.
Note: If you are modelling a homogeneous pipe then it is normally better to do so using a Homogeneous
Pipe Category Line Type. This allows you to specify material density, Young's modulus etc. directly.
The derived properties are based on the following input data:
material density
E Young's Modulus
Poisson Ratio
OD Outer Diameter
ID Inner Diameter = OD-2t where t is the wall thickness
The properties of the derived equivalent line type are given below.
Mass per Unit Length
Mass per unit length = (/4) (OD
2
- ID
2
) where is the material density specified.
Outer and Inner Diameters
The line type outer and inner diameters are set to the pipe diameters specified by the user.
Axial Stiffness
The line type axial stiffness is given by:
Axial Stiffness = EA
w
System Modelling - Data and Results, Lines
333
where E is the Young's Modulus and A is the cross sectional area, hence:
Axial Stiffness = E(/4) (OD
2
- ID
2
).
Bending Stiffness
The line type bending stiffness is given by:
Bending Stiffness = EI
where I is the second moment of area, about an axis in the plane of the cross-section through the centroid (e.g. NN'),
and leads to:
Bending Stiffness = E(/64) (OD
4
- ID
4
).
Limit Compression
As the bending stiffness is significant this is set to 'no'.
Torsional Stiffness
The line type torsional stiffness is set as follows. The torque experienced by a pipe of length l when twisted through
an angle is given by:
Torque = (G/l)J
where J is the second moment of area about the axial axis OO' (often called the polar moment of inertia) and G is the
Shear Modulus (sometimes called the modulus of rigidity). For homogeneous pipes J = 2I. The quantity G is related to
the Young's Modulus (E) and Poisson Ratio () of the material through the following relationship:
G = E/{2(1+)}.
The Torsional Stiffness, representing the Torque resisting a twist of 1 radian, per unit length, is therefore given by:
Torsional Stiffness = GJ = E/{2(1+)} (/32) (OD
4
- ID
4
).
Stress Outer and Inner Diameters
The line type stress diameters are set to '~', since they are the same as the pipe diameters.
Stress Loading Factors
These are set to one, the default value, as a simple homogeneous pipe carries all the loads.
Data
The Line Type Wizard helps build a line type to represent a homogeneous pipe, based on the following data:
Material
The Wizard provides 3 standard materials for a homogeneous pipe: Steel; Titanium and High Density
Polyethylene. For these standard materials OrcaFlex automatically sets Material Density, Young's Modulus and
Poisson Ratio.
There is also an option to enter User Specified as the Material. In this case you must set Material Density, Young's
Modulus and Poisson Ratio.
Material Density
This is the density of the material used in the construction of the pipe.
Outer Diameter, Wall Thickness
These data specify the geometry of the pipe cross-section.
Young's Modulus
The ratio of the tensile stress to the tensile strain.
Poisson Ratio
The amount of lateral strain experienced by a material subjected to tensile strain as a negative proportion of the
tensile strain.
The Line Type data that are derived, and the associated underlying expressions, are detailed in Modelling
Homogeneous Pipes.
System Modelling - Data and Results, Lines
w

334
7.8.15 Hoses and Umbilicals
The Line Type Wizard estimates typical properties for hoses and umbilicals based on project data.
Warning: The values generated by the Wizard are approximate only and are intended as first estimates for
preliminary use. They are offered in good faith, but due to variations in properties between
products they cannot be guaranteed. Please use suppliers' data where this is available.
There are three categories of hose available:
- High pressure which covers high pressure flexible risers and flowlines of unbonded construction with inside
diameters in the range 2 to 15 inches (50 to 380mm).
- Low pressure which covers low pressure floating hoses of bonded rubber construction with inside diameter
from 2 to 20 inches (50 to 500 mm).
- Fold-flat which covers low pressure, fold-flat hoses with steel reinforcement; inside diameter around 6 inches
(150 mm).
The umbilical properties assume construction with steel wire armour and thermoplastic hoses and outside diameter
up to 250mm.
The properties derived by the Wizard are obtained from empirically estimated relationships with the diameter of
the hose/cable. They have been estimated from a limited amount of data covering only the range of diameters
indicated above. For simplicity, only those relationships of the form:
Y = aX
b
,
where b is an integer, were considered.
In the details below the diameter is assumed to be in metres and the SI units system is applied throughout.
The amount of data available for low pressure hoses and fold-flat hoses is very small.
There is quite a bit more data for high pressure hoses and umbilicals but it is found to have quite a large spread. To
demonstrate this spread, the ratio of the observed value to the fitted value, expressed as a percentage, is calculated
and the largest and smallest of these is given.
The OrcaFlex stress analysis is not applicable to complex structures such as hoses and umbilicals. Any available
stress or wall tension results should therefore be ignored.
Data for Umbilicals
The Line Type Wizard can help build a line type to represent umbilical. Umbilical cables have many applications
including the carrying of electrical communication wires and hydraulic connectors to submersibles. The Line Type
data quantities that the wizard derives have been estimated from a limited amount of project data. The single item
of input data is:
Umbilical Diameter
The outer diameter of the umbilical. Each derived line type property is a function of this diameter.
Data for Hoses
The Line Type Wizard helps you build a line type to represent a hose, based on the following data. A limited amount
of available project data has been collated and used to derive purely empirical relationships between the diameter
of types of hose and certain line type data quantities. The input data consists of:
Hose Inner Diameter
Each derived line type property is a function of the hose inner diameter.
Hose Type
The Hose Type can be one of high pressure, low pressure or fold-flat. These categories roughly cover the available
project data.
Outer and Inner Diameters
The Line Type Wizard sets up Outer and Inner Diameters for hoses and umbilicals as follows:
w
System Modelling - Data and Results, Lines
335
Hoses
The inner diameter (ID) is specified by the user and the outer diameter (OD) is a function of the inner diameter:
OD = 1.40 ID m (for High Pressure) [90% 150%],
OD = 1.28 ID m (for Low Pressure),
OD = 1.34 ID m (for Fold-Flat).
Umbilicals
The inner diameter (ID) is set to zero and the outer diameter (OD) is specified by the user.
Mass per unit length
The Line Type Wizard sets up mass for hoses and umbilicals as follows:
Hoses
For each type of hose the mass per metre has been estimated as a function of inner diameter giving:
Mass per metre = 0.7523 ID te/m (for High Pressure) [55% 145%],
Mass per metre = 0.3642 ID te/m (for Low Pressure),
Mass per metre = 0.1844 ID te/m (for Fold-Flat).
Umbilicals
For the umbilicals the mass per metre has been estimated as a function of outer diameter giving:
Mass per metre = 1.8 OD
2
te/m (for Umbilical) [35% 170%].
Axial and Bending Stiffness
The Line Type Wizard sets up Axial and Bending Stiffness and Limit Compression for hoses and umbilicals as
follows:
Axial Stiffness
For each type of hose the axial stiffness has been estimated as a function of inner diameter giving:
Axial Stiffness = 2.80 x 10
6
ID kN (for High Pressure) [40% 160%],
Axial Stiffness = 3.40 x 10
4
ID kN (for Low Pressure),
Axial Stiffness = 6.56 x 10
3
ID kN (for Fold-Flat).
For the umbilicals the axial stiffness has been estimated as a function of outer diameter giving:
Axial Stiffness = 1.44 x 10
6
OD kN (for Umbilical) [15% 415%].
Bending Stiffness
For each type of hose the bending stiffness has been estimated as a function of inner diameter giving:
Bending Stiffness = 3 x 10
4
ID
4
kN.m
2
(for High Pressure) [45% 300%],
Bending Stiffness = 6 x 10
2
ID
3
kN.m
2
(for Low Pressure),
Bending Stiffness = 1 x 10
3
ID
3
kN.m
2
(for Fold-Flat).
For the umbilicals the bending stiffness has been estimated as a function of outer diameter giving:
Bending Stiffness = 3 x 10
3
OD
3
kN.m
2
(for Umbilical) [55% 240%].
Limit Compression
As the bending stiffness is significant this is set to 'no'.
7.8.16 Modelling Stress Joints
A tapered stress joint is a riser joint with a tapered cross-section. Stress joints are used to spread loads over a
critical section of the riser. Stress joints are typically fabricated from steel or titanium.
Stress joints are modelled in OrcaFlex using profiled line types. To model a stress joints you need to take the
following steps:
System Modelling - Data and Results, Lines
w

336
1. Create a line type with the homogeneous pipe category and set the inner diameter, material data (Young's
modulus, Poisson ratio, material density), hydrodynamic properties etc.
2. Create a Line Type Outer Diameter variable data source which defines the stress joint profile.
3. Set the line type outer diameter to refer to the variable data source of the profile.
4. Set the Line Type data item on the structure page of the line data form to refer to the profiled line type created
above.
Segmentation
OrcaFlex line segments are straight, that is the diameter is constant over the length of the segment. Each segment in
a profile line section has a diameter defined by evaluating the profile data at the mid-point of the segments.
Because of this you typically need to use quite short segments to model the taper accurately. However, note that a
stress joint is usually placed in a region of concentrated stress. Such regions also require short segments for
accurate modelling and so the use of straight segments to model the profile does not in practice turn out to be a
significant limitation.
In order to determine segment length we recommend that you perform sensitivity studies on segment length.
Arc length convention
Profile arc length is defined relative to the start of the line section and increases from End A towards End B. To
illustrate this consider a stress joint defined by the following profile:

Figure: Stress joint profile
A stress joint specified this way would commonly be used in the first section of a line. If, however, your stress joint is
located adjacent to End B of the line, then the End A to End B convention means that the stress joint would be
incorrectly configured. This is easy to check with the profile graph available on the line data form:

Figure: Stress joint profile at End B, incorrectly modelled
w
System Modelling - Data and Results, Lines
337
The problem is that the taper is now in the wrong direction. The thicker end of the taper should be adjacent to End B
of the line. In order to fix this we simply need to reverse the profile data. This is very simple to do using the Reverse
button on the variable data form. The result looks like this:

Figure: Stress joint profile at End B, corrected
The line profile graph when using the reversed profile now shows that the data is now applied as intended:

Figure: Stress joint profile at End B, correctly modelled
7.8.17 Modelling Bend Restrictors
We begin by introducing some terminology. A bend restrictor is any device that controls bending at a line end. A
bend limiter is a bend restrictor that has no effect until a certain curvature is reached, and then curvature is
prevented from going above that value. A bend stiffener is a bend restrictor that provides increased bend stiffness
near the line end in order distribute more evenly the bending near the end.
Modelling Bend Limiters
Non-linear bend stiffness can be used to model a bend limiter. See example G08.
Modelling Bend Stiffeners
Bend stiffeners are modelled in OrcaFlex using two separate lines to represent the stiffener and the line which it
protects, which we refer to as the product. The region of the product which is covered by the stiffener is called the
protected region.
The two line approach enables reporting of separate results for the product and stiffener. In particular this makes
fatigue analysis of the product quite simple since the reported loads and stresses for the product do not include the
contributions of the stiffener.
The product can have non-linear elastic or hysteretic bending properties. The stiffener is modelled as a profiled
homogeneous pipe. The stiffener can have non-linear elastic material properties.
System Modelling - Data and Results, Lines
w

338
Data
Although the stiffener is modelled as a separate line you do not need to create this line manually OrcaFlex creates
it automatically as an attachment. The procedure for setting up a bend stiffener is as follows:
1. Create a Line Type which defines the material, structural and hydrodynamic properties of the stiffener. Usually
this will be a profiled homogeneous pipe.
2. Create a Stiffener type which uses this Line Type.
3. Create a line attachment based on this Stiffener Type.
4. Set the line attachment position and the Stiffener Type connection arc length so that the stiffener is attached at
the desired location on the product line.
If you have multiple product lines which all use identical bend stiffeners then you can create a single Stiffener Type
which can be re-used on each product line.
The stiffener profile uses the convention that profile arc length increases from End A towards End B of the stiffener.
If you have a bend stiffener connected at End B of a line then you will need to define the profile so that the arc length
0 refers to the tip of the stiffener. The Modelling Stress Joints topic illustrates this issue in some more detail.
Although the discussion there centres on stress joints many of the points covered are equally applicable to bend
stiffeners.
We strongly recommend that you use the Profile Graph available from the Line Data form to check that the stiffener
is connected at the correct location on the line with the profile defined as you intended.
Segmentation
The stiffener line that OrcaFlex creates is modelled with constant segment length that is every segment in the
stiffener has the same length. The segment length is determined by the segment length of the product line in the
protected region.
The stiffener modelling (see below) requires that each node on the stiffener line is associated with a node on the
product line. Each stiffener node is effectively clamped to its associated product node.
These constraints have the following implications for the segmentation of the product line:
1. The protected region of the product must have constant segment length.
2. The stiffener length must be an exact multiple of the segment length.
One simple way to satisfy these requirements is to model the protected region of the product as a single section with
length equal to the stiffener length.
Note that it is not essential for the protected region to be a single section. The protected region could comprise
multiple sections each using different line types, so long as you satisfy the two rules above.
Drawing and Results
The stiffener line is drawn using the drawing data of the product line to which it is attached. Note that the stiffener is
not drawn when the program is in reset state; it is only drawn after the static or dynamic analysis has started.
Results are available for the stiffener line exactly as they are for any other OrcaFlex line.
OrcaFlex reports results separately for product line and stiffener line and this does need some explanation. For
example, consider bend moment at a particular location in the product line and at the corresponding location in the
stiffener line. Suppose that the bending stiffnesses are EIp and EIs for product and stiffener respectively (we are
assuming linear bend stiffness for simplicity). The bend moment carried by the product and stiffener ensemble is
given by BMtotal = C(EIp + EIs) where C is the curvature at this location. For the product line OrcaFlex reports the local
product line bend moment BMp = C.EIp and likewise for the stiffener line OrcaFlex reports BMs = C.EIs. It is
straightforward to see that BMtotal = BMp + BMs.
The total load is also split into separate product and stiffener loads for effective tension, wall tension, shear force,
torque and stress results. However, the method for doing this varies for axial components as explained in the next
section.
Modelling details
As mentioned above the stiffener is modelled as a separate OrcaFlex line which is created automatically by OrcaFlex
as an attachment. The stiffener line inherits a number of properties from its product line, namely:
w
System Modelling - Data and Results, Lines
339
- Include Torsion.
- Segment length.
- Statics friction data.
- Drag formulation and wake interference data.
- VIV data.
- Drawing data.
- Results data.
The stiffener line does not have any free degrees of freedom. Instead each node on the stiffener is clamped to and
moves and rotates with its associated node on the product line. The stiffener line calculates its loads and inertia and
then transfers them to the product line. How this transfer is performed is governed by the Axial load/inertia
transfer data of the Stiffener Type.
All components of load and inertia normal to the stiffener are transferred directly from each stiffener node to its
associated product node. This, of course, enables the stiffener to perform its job of spreading the bend loads over the
protected region.
If the axial load/inertia transfer is specified to occur at the connection point then components of axial load/inertia
are transferred to the product node at the connection point. Typically this connection point is at the end of the
product line and the axial loads and inertia are thus transferred to the product lines end connection. This modelling
option effectively neglects any axial friction due to contact between stiffener and product.
If the axial load/inertia transfer is specified to occur over the stiffener's full length then components of axial
load/inertia are transferred directly from each stiffener node to its associated product node. This corresponds to the
assumption that the axial contact friction is sufficient that there is no axial slipping. The axial load will be shared
between product and stiffener as determined by their relative axial stiffnesses, just as the bend moment is shared.
Bend Stiffener design using OrcaFlex
The modelling approach described above applies where a bend stiffener has already been designed, and one of the
objectives of the analysis is to confirm that the stiffener provides the required protection. However, in many cases
the stiffener design does not yet exist and the analysis is needed in order to define design loads. If this is the case,
then run a preliminary analysis with no bend stiffener included. The line should be modelled with a pinned end (i.e.
zero bending stiffness at the line end connection). The load information required for bend stiffener design then
consists of paired values of tension and angle at the pinned end. These can be extracted in the form of an X-Y plot
showing Effective Tension against Ez Angle for the first segment. In practice, it is often sufficient to consider just
three points on this graph, corresponding to maximum tension, maximum angle and maximum bend restrictor load:
these can be extracted as linked statistics.
As an example, see example A01. The top end of the riser (End A) is pinned to the ship near the bow. Turn on the
Draw Local Axes option and note the direction of the line z axis at End A. The Ez Angle for the first segment is the
angle between this direction and the segment direction. An X-Y graph of Effective Tension at End A vs Ez Angle at
End A gives the information required. Recall that Ez Angle is an absolute magnitude and therefore always takes a
positive value. If a signed value is required (e.g. to define out-to-out load cycles for fatigue analysis), then use the Ezx
or Ezy angle as appropriate.
It is usually necessary to combine results from several analysis runs in order to fully define the bend stiffener design
loading. This is most conveniently done by exporting the Effective Tension vs Ez Angle results as a table of values for
each analysis case, combining into a single Excel spreadsheet and using the plotting facilities in Excel to generate a
single plot with all results superimposed. A simplified set of load cases representing the overall loading envelope
can then be selected for use in stiffener design. The export to Excel can be done manually or automated through the
Results spreadsheet.
Bend Stiffener design using OrcaBend
The task of bend stiffener design is usually left to the manufacturer, since the actual stiffener shape selected is
governed in part by the manufacturing process, availability of tooling, etc., as well as by the load cases. The Orcina
program OrcaBend has been developed to assist this process. There is a demonstration version of OrcaBend on the
OrcaFlex CD - see CD:\Demo_CD\ReadMe for details. For further information contact Orcina.
System Modelling - Data and Results, Lines
w

340
7.8.18 Modelling non-linear homogeneous pipes
A non-linear stress-strain relationship is most commonly used to model either:
- non-linear behaviour of elastomeric bend stiffeners, or
- plastic deformation of steel pipes during installation.
OrcaFlex can also model non-linear bend stiffness for General Category Line Types. However there are a number of
advantages of using the homogeneous pipe approach if it is applicable:
- The data are entered directly and there is no need to use the Line Type Wizard for Homogeneous Pipe or the
Plasticity Wizard which makes data checking simpler.
- The effects of a diameter profile and a non-linear material (e.g. bend stiffener) are handled automatically by the
program.
- The effects of direct tensile strain variation are again handled automatically by the program (see below).
- Stress results are derived using the stress-strain relationship.
On the other hand if you wish to model hysteretic bending behaviour then you must use the General Category Line
Types approach.
Data
Stress-Strain Relationship variable data sources are used to define non-linear elastic material properties for
homogeneous pipes.
Stress-Strain relationship
The relationship between stress and strain can be specified by either Ramberg-Osgood curve or Stress-Strain
table.
Material E, Reference Stress (y), K, n (Ramberg-Osgood curve only)
These data define the relationship between stress () and strain () in terms of a Ramberg-Osgood curve as follows:
() = /E + K(/y)
n
.
The reference stress parameter is usually taken to be the yield stress, which is why it is denoted y here. Note that
there is an alternative parameterisation of the Ramberg-Osgood equation. It is straightforward to convert between
the two forms of the equation but please take care to ensure that the data you input correspond to the
parameterisation used by OrcaFlex.
Stress, Strain (Stress-Strain table only)
This table directly specifies the relationship between stress and strain. The table is interpolated linearly and for
values of strain outside the table linear extrapolation will be used.
Model building
OrcaFlex uses the stress-strain relationship to generate a table of bend moment against curvature using the same
algorithm as the Plasticity Wizard. Each segment in the OrcaFlex model uses a distinct bend moment / curvature
table which is clearly necessary if the line type has a diameter profile.
The use of distinct bend moment / curvature tables also allows OrcaFlex to account for the variation of direct tensile
strain within a line. The bend moment / curvature relationship depends upon:
- The stress-strain relationship (as described above).
- The inner and outer diameter (as specified in the Line Type data).
- The direct tensile strain.
The direct tensile strain can have a significant effect on the non-linear bending behaviour if it is large. To see why
this is so consider a steel pipe under tension such that the direct tensile strain equals the yield strain. When the pipe
is in this state then any small amount of curvature will yield the pipe outer fibres. On the other hand consider an
unstressed steel pipe, where the direct tensile strain is zero. In this state the pipe can withstand significant
curvature before the outer fibres yield.
w
System Modelling - Data and Results, Lines
341
In principle the bend moment / curvature relationship could be recalculated at each time step of an OrcaFlex
calculation. However this would incur a significant performance cost. Instead we make the assumption that the
effect of dynamic variation of direct tensile strain on the bend moment / curvature relationship is small.
This allows us to use a constant value of direct tensile strain for the purpose of deriving the bend moment /
curvature relationship. Note that each segment in the model has a distinct bend moment / curvature relationship
based on a distinct value of direct tensile strain. By "constant" we mean that we do not update the bend moment /
curvature relationship during the dynamic simulation. Note also that this discussion of direct tensile strain only
pertains to the generation of bend moment / curvature relationships. The program does, of course, account for
dynamic variation of direct tensile strain when calculating wall tension, effective tension etc.
The program chooses the value of direct tensile strain by first performing a static calculation under the assumption
that direct tensile strain is 0. Non-linear bend moment / curvature relationships are created for each segment under
this assumption. The direct tensile strain values from this initial static solution are then used to update the non-
linear bend moment / curvature relationships. Finally the static calculation is repeated to obtain a solution which
accounts for the effects of direct tensile strain.
Stress results
The non-linear stress-strain relationship is also used to calculate certain stress results from strain values. Non-
linear stress-strain leads to a non-linear elastic bend stiffness, but the axial and torsional stiffnesses are still
assumed to be linear. This means that the only stress results affected are those that depend on bending: Max
Bending Stress, von Mises Stress, Max von Mises Stress and ZZ Stress.
7.8.19 Line Ends
Lines in OrcaFlex run from End A to End B. Travelling from A to B, the orientation of any segment in the line is
defined in terms of Azimuth and Declination angles, relative to global axes. Azimuth is measured in the X-Y plane,
Declination is measured downwards from the Z axis. See No-Moment Direction.
No-moment Direction
Associated with each end is a stiffness, and a no-moment direction which is described in terms of azimuth and
declination. This too uses the End A to End B convention, so if we hang up a catenary of line, and then freeze the
ends, the no-moment directions are as shown below:
System Modelling - Data and Results, Lines
w

342
x
z
y
Declination
Angle
Azimuth
Angle
No moment direction
( Az = 0, Dec = 160 )
No moment direction
( Az = 0, Dec = 45 )
End A
End B

Figure: Directions
If the line end is attached to a body which can move (a Vessel or Buoy), then the no-moment direction is defined
relative to the body axes and therefore moves with the body. Otherwise, it is defined in global axes.
End Stiffness
The stiffness associated with the end can be used to represent an item such as a flexjoint, whose stiffness is in units
of moment per unit angle, e.g. kN.m/degree. More commonly, the line end is either free to rotate or fully restrained.
In the first case, the end stiffness is set to zero; in the second case, the end stiffness is set to Infinity. Note that it is
never necessary (or correct) to 'convert' the line stiffness into an end stiffness: the program includes the line
stiffness for you automatically.
Free-to-rotate or Fully-restrained Ends
In many practical cases, the line ends are neither completely free nor fully restrained. Nevertheless, we recommend
that you should usually choose one of these conditions. When should you use one rather than the other? The
following notes offer a brief guide:
1. Many systems modelled using OrcaFlex consist of relatively long flexible lines where bend stiffness plays only a
minor role in determining the overall forces on and movements of the system. In such systems, line ends may
safely be modelled as free-to-rotate.
2. An exception to this rule is systems which include one or more 6D buoys. The rotational motions of the buoy
may then be influenced by moment transfer from the ends of lines attached to it, particularly where buoy
rotational inertias are small. In such cases, the end connections to the buoy should be fully restrained.
3. A further exception is systems where the flexible lines are relatively short and stiff, e.g. a large diameter under-
buoy hose in shallow water. Bend stiffness, including end moments, may have a significant influence on overall
system behaviour in such cases, and the end connections should be fully restrained.
4. Where fully restrained ends are used, it is necessary to pay more attention to the modelling of the line close to
the end. In particular make allowance for the additional stiffness of a bend stiffener, if one is fitted and use
shorter segments near the line ends so as to represent the moments with sufficient accuracy.
w
System Modelling - Data and Results, Lines
343
5. Roll-on/roll-off contact (e.g. stern rollers, pipelay stingers, mid-water arches for riser systems). A pinned
connection at the average contact point is often sufficient. For a more exact representation, use one or more
solids to represent the supporting surface, but remember that there must be sufficient nodes at the line end to
interact with the solid.
End Force and End Force Ez-Angle
The figure below shows the end connection of a flexible line fitted with a bend stiffener. The line applies a load
(tension) T as shown. If the local loads (weight, drag, etc.) on the end part of the line, including the bend stiffener,
are small by comparison with T, then the reaction force F is equal and opposite to T, and the bend moment at the
end fitting is M = T.h.
OrcaFlex reports the End Force, F, and the End Force Ez-Angle, , as shown. The "No moment direction" is defined in
the input data. When the reaction force F acts in the no moment direction, then the reaction moment M is zero.
It is clear from this that
1. End Force and End Force Ez-Angle are the same whether the end condition is defined as free-to-rotate, fully
restrained, or some intermediate condition;
2. The bend moment at the end fitting, M, is a function of the lever arm, h, which depends not only on the end
condition but also on the bend stiffness distribution in the line/bend stiffener.
No moment direction
h
T
F
M
u

Figure: End connection of a flexible line fitted with a Bend Stiffener
Design Loads for End Fittings
For design of end fittings, including bend restrictors, the principal parameters provided by OrcaFlex are End Force
and End Force Ez-Angle. The moment at the end can then be determined by a local (static) analysis which can be
developed to incorporate as much detail as required.
This approach is usually sufficient, except where End Force is very small. This occurs when the line tension T comes
close to zero. The direction of the end force is then no longer dominated by the line tension, and other loads (shear,
local drag and inertia loads etc.) which are usually negligible become important. In these conditions, the reported
End Force Ez-Angle is misleading and a more appropriate estimate should be made from the system geometry. This
can be done using the Ez-Angle results variable. Ez-Angle for any segment gives the angle of that segment relative to
the No Moment Direction at the adjacent line end, including allowance for the motion of line end where the line is
attached to a vessel or buoy. Ez-Angle for a point near the end of the bend restrictor is a reasonable alternative
where End Force Ez-Angle is not suitable.
Results
When examining results at line ends note that if a stiff pipe goes into compression, line tension becomes negative
but End Force remains positive, and End Force Ez-Angle may approach 180.
System Modelling - Data and Results, Lines
w

344
Curvature is calculated in OrcaFlex by dividing the angle change at any node by the sum of the half-segment lengths
on each side of the node: bend moment is curvature multiplied by bend stiffness. At the end, OrcaFlex takes the
angle change between the end segment of the line and the no-moment direction, and reports the corresponding
curvature and bend moment based on the half length of the end segment. Where bend stiffness at the line end is
zero (pinned end or a zero stiffness line), curvature and bend moment are reported as zero.
Design Data for Bend Restrictors
We classify bend restrictors into 3 types:
- Bellmouths: curved surfaces which support the flexible and maintain acceptable curvature.
- Bend Limiters: articulated devices which rotate freely to a specified curvature, then stop.
- Bend Stiffeners: elastomeric devices which provide a tapered additional bend stiffness.
Different design information is required for each type:
Bellmouth
The principal design requirement is that bellmouth angle should be greater than the maximum value of End Force
Ez-Angle. For cases where the bellmouth is not radially symmetrical, OrcaFlex reports components of End Force
Angle in the local XZ and YZ planes. End Force Ezx-Angle is the component in the local xz plane; End Force Ezy-Angle
is the component in the local yz plane.
Bend Limiter
There are two design requirements:
1. The limiter length must be not less than a*R where a is End Force Ez-Angle and R is the limiter locking radius.
2. The limiter must be capable of withstanding the maximum bend moment M given by M = R*F*(1-cos(a)) where
F, a are simultaneous values of End Force and End Force Ez-Angle. OrcaFlex reports Bend Restrictor Load P =
F*(1-cos(a)) as an aid to bend limiter design. P is sometimes called "pseudo-curvature".
Bend Stiffener
The design process for a stiffener is more complex than for a bellmouth or a bend limiter, and the critical design load
cases are not always self-evident. An X-Y graph of F against a (End Force against End Force-Ez Angle) provides a
complete definition of the loading for one analysis case, with each (F,a) pair defining a load case. The bend stiffener
should be designed to prevent infringement of the permitted curvature for any (F,a) pair. In practice, it is often
sufficient to consider just the three (F,a) pairs corresponding to maximum values of End Force F, End Force Ez-
Angle a and Bend Restrictor Load P.
Once the stiffener design is known the stiffener can be modelled using a bend stiffener attachment.
7.8.20 Modelling Compression in Flexibles
When a flexible line experiences compression, it responds by deflecting transversely: the magnitude of the
deflection is controlled by bend stiffness. Under static conditions, the behaviour of an initially straight section of line
under pure axial loading is described by classic Euler buckling theory. This defines the maximum compressive load -
the "Euler load" - which a particular length of line can withstand before transverse deflection occurs. The Euler load
is a function of the length of the straight section, the bend stiffness and the end conditions. For a simple stick of
length L, bend stiffness EI, with pin joints at each end, the Euler load is
2
EI/L
2
. The Euler load is derived from a
stability analysis: it tells us the value of axial load at which transverse deflection will occur but nothing about the
post-buckling behaviour.
Under dynamic loading conditions, the transverse deflection is resisted by a combination of inertia and bending.
OrcaFlex is fully capable of modelling this behaviour provided the discretisation of the model is sufficient, i.e.
provided the segments are short enough to model the deflected shape properly. Another way of saying the same
thing is that the compressive load in any segment of the line should never exceed the Euler load for the segment.
Why are these two statements equivalent? Imagine the real line replaced by a series of rigid sticks connected by
rotational springs at the joints - this is essentially how OrcaFlex models the line. Under compression, the line
deflects: the sticks remain straight and the joints rotate. Provided the wavelength of the deflection is longer than the
length of the individual sticks then the rigid stick model can approximate it: shorter sticks give a better
approximation.
w
System Modelling - Data and Results, 6D Buoys
345
If the compressive load reaches the Euler load for an individual stick, then the real line which the stick represents
will start to deform at a shorter wavelength, and deflections within the stick length become significant. Clearly, this
stick model is no longer adequate. By replacing each long stick by several short ones, we can make the Euler load for
each stick greater than the applied compressive load. Each stick will then remain straight, but we now have more
sticks with which to model the deflected shape.
This gives us a convenient way of checking the adequacy of our model: provided the compressive load in each
segment always remains less than the Euler load for that segment, then we can have confidence that the behaviour
of the line in compression is adequately modelled. OrcaFlex makes this comparison automatically for all segments
and reports any infringements in the Statistics tables. The segment Euler load is also plotted in tension range graphs
(as a negative value - compression is negative) so that infringements are clearly visible.
If the segment Euler load is infringed during a simulation, then we have to decide what to do about it. If
infringement occurs only during the build-up period, perhaps as a result of a starting transient, then we can safely
ignore it. If it occurs during the main part of the simulation, then we should examine the time histories of tension in
the affected areas. Where infringements are severe and repeated or of long duration the analysis should be repeated
with shorter segments in the affected area. However it may be acceptable to disregard occasional minor
infringements of short duration on the following grounds:
- Transverse deflection caused by compression takes some time to occur because of inertia.
- The segment Euler load used in OrcaFlex as a basis for comparison is the lowest of the various alternatives, and
assumes pinned joints with no bend stiffness at each end of the segment. This is a conservative assumption.
- Whether or not to disregard an infringement is a decision which can only be taken by the analyst in the context
of the task in hand.
Limit Compression Switch
For each line type, the data includes a Limit Compression switch.
The usual setting is "No". This means that each segment of this line type is treated as a strut capable of taking
whatever compressive loads arise in the course of the simulation.
For some special cases, such as chains and soft ropes with little bend stiffness, this is not the most useful model and
OrcaFlex offers an alternative. Lines of this sort cannot take compression at all, so the "Limit Compression" switch
can be set to "Yes". OrcaFlex then does not allow compressive loading greater than the segment Euler load (which is
zero if the bend stiffness is zero).
Note: In either case, if the segment Euler load is reached then a Warning is given on the result form and
in the statistics table.
7.9 6D BUOYS
6D Buoys are objects having all six degrees of freedom - 3 translational (X,Y and Z) and 3 rotational (Rotation 1,2
and 3). The forces acting on a buoy are mass, buoyancy, added mass and damping and drag in the three principal
buoy directions. Corresponding moments are applied for the rotational degrees of freedom. Buoys can be surface-
piercing, and have a notional height; this allows the hydrostatic and hydrodynamic forces to be proportioned
depending on the depth of immersion.
6D Buoys can have wings attached to them. A wing is a rectangular surface, attached to the buoy at a specified
position and orientation, which experiences lift and drag forces, and a moment, due to the relative flow of the sea
past the wing.
Lines attached to a 6D Buoy can thus experience both moment effects and translations as the buoy rotates under the
influence of hydrodynamics and applied loads. Lines can be attached to an offset position on a buoy - this allows the
direct study of line clashing, including the separation introduced by spaced attachment points.
Three types of 6D Buoy are available, the differences being the way in which the geometry of the buoy is defined.
Lumped Buoys
The first type, Lumped Buoys, are specified without reference to a specific geometry. This necessarily restricts the
accuracy with which interactions with the water surface are modelled. Where a lumped buoy pierces the surface it is
treated for buoyancy purposes as a simple vertical stick element with a length equal to the specified height of the
buoy (thus buoyancy changes linearly with vertical position without regard to orientation). This model does not
provide the rotational stiffness that would be experienced by most surface piercing buoys.
System Modelling - Data and Results, 6D Buoys
w

346
Interactions with the seabed and with shapes are also modelled in a fairly simple manner, and friction effects are not
included. Arbitrary hydrodynamic and physical properties are modelled by deriving equivalent terms.
Spar Buoys
The second type, called Spar Buoys, are intended for modelling axi-symmetric buoys whose axis is normally
vertical, particularly where surface piercing effects are important (such as for a CALM buoy).
Spar Buoys are modelled as a series of co-axial cylinders mounted end to end along the local z-axis (see Spar Buoy
and Towed Fish Properties). This allows you to provide some information about the buoy geometry, by specifying
the number of cylinders and their lengths and diameters. A conical or spherical shape can be approximated as a
series of short cylinders of gradually increasing or diminishing diameter.
Spar Buoys model surface-piercing effects in a much more sophisticated way than Lumped buoys. Effects such as
heave stiffness and righting moments in pitch and roll are determined by calculating the intersection of the water
surface with each of the cylinders making up the buoy, allowing for the instantaneous position and attitude of the
buoy in the wave. However note that OrcaFlex does not calculate radiation damping (a linear damping term
resulting from the creation of surface waves as the buoy oscillates) or impact loads (slamming).
Because they are modelled as a stack of concentric cylinders, Spar Buoys are often not suitable for fully submerged
objects with more complex geometry.
As with Lumped Buoys, the modelling of seabed interaction is simplistic and friction effects are not included.
Hydrodynamic loads on Spar Buoys are calculated using Morison's equation. Added mass and drag forces are
applied only to those parts of the buoy which are in the water at the time for which the force is calculated. For partly
immersed cylinders, added mass and drag are proportioned according to the fraction of the cylinder which is
immersed. The use of Morison's equation implies that the buoy diameter is small compared to the wavelength
(usually the case for CALM buoys and the like) but means that some load terms are not represented.
Towed Fish
The third type, called Towed Fish, are intended for modelling bodies, such as towed fish, whose principal axis is
normally horizontal. Towed Fish buoys are identical to Spar Buoys except that the stack of cylinders representing
the buoy is laid out along the x-axis of the buoy, rather than along the z-axis.
7.9.1 Wings
6D buoys can have a number of wings attached; these are useful for representing lift surfaces, diverters etc. Each
wing has its own data and results available.
A wing is a rectangular surface, attached to the buoy at a specified position and orientation, which experiences lift
force, drag force and drag moment, due to the relative flow of fluid past the wing. These drag loads depend on user-
specified coefficients that depend on the incidence angle of the relative fluid flow.
The fluid referred to here can be the sea, the air, or both, as follows.
- Whenever the wing is completely below the instantaneous water surface, then the lift and drag loads are
calculated using the sea density, velocity and incidence angle.
- Whenever the wing is completely above the water surface, and if you have selected to include wind loads on
wings (on the Wind page on the Environment data form), then instead air lift and drag loads are calculated and
applied, using the same formulae and coefficients, but using the air density, velocity and incidence angle.
- When the wing is partially submerged, OrcaFlex calculates what proportion of the wing rectangle area is below
the instantaneous water surface, i.e. its 'proportion wet' PW. OrcaFlex then calculates the water lift and drag
loads as if the wing was fully submerged, but then scales them by PW before they are applied. In addition, if you
have selected to include wind loads on wings, then OrcaFlex also calculates the air lift and drag loads (as if the
wing was not submerged) and scales them by 1-PW, i.e. the 'proportion dry', before they are applied. When this
happens, therefore, both water and air lift and drag loads are applied, each appropriately scaled. The wing lift,
drag and moment results then report the water loads whenever the wing is more than half submerged and the
air loads whenever it is less than half submerged.
Wings do not have any mass, added mass or buoyancy associated with them. Therefore any mass, added mass or
buoyancy due to wings should be added into the properties specified for the buoy itself.
The drag force on a wing is the force applied in the direction of relative flow. The lift force is the force at 90 to that
direction. The moment represents the moment (about the wing centre) that arises due to the fact that the centre of
pressure may not be at the wing centre. These loads are applied at the wing centre and are specified by giving lift,
w
System Modelling - Data and Results, 6D Buoys
347
drag and moment coefficients as a function of the incidence angle between the relative velocity vector (flow
velocity relative to wing) and the wing plane.
Wy
Wx
Span
Chord
Wz Principal
Wing Axis
Flow Velocity V
(relative to wing)
o
+ve lift
-ve lift
W
Leading
edge

Figure: Wing Model
Each wing has its own set of local wing axes, with origin W at the wing centre and axes Wx, Wy and Wz.
- Wy is normal to the wing surface and points towards the positive side of the wing, i.e. the side towards which
positive lift forces act.
- Wx and Wz are in the plane of the wing. The wing is therefore a rectangle in the Wxz plane, centred on W.
- Wz is the principal axis of the wing. It is the axis about which the wing can easily be pitched, by adjusting the
wing gamma angle.
- Wx is in the plane of the wing, normal to the axis Wz, so that (Wx,Wy,Wz) form a right-hand triad.
- We normally choose Wz and Wx so that Wx is towards the leading edge of the wing. With this arrangement,
increasing the wing gamma angle moves the leading edge in the direction of positive lift.
We refer to the wing's length in the Wz direction as its span and its width in the Wx direction as its chord.
If the wing is not completely submerged, then the forces and moments applied by OrcaFlex are scaled down
according to the proportion of the wing area that is below the surface. However, note that the true effects of
breaking surface, for instance planing and slamming, are much more complex than this and are not modelled.
7.9.2 Common Data
All types of 6D Buoy use a local coordinate system with the origin at the centre of gravity. The following data items
are common to all types.
Name
Used to refer to the 6D Buoy.
Type
Three types of buoy are available: Lumped Buoys, Spar Buoys and Towed Fish.
Connection
A 6D Buoy can either be Free, Fixed or connected to a Vessel, 6D Buoy or a Line (provided that line includes
torsion).
System Modelling - Data and Results, 6D Buoys
w

348
- If the buoy is Free then it is free to move in response to wave loads, attached lines etc. In this case the buoy's
Initial Position and Attitude are specified relative to global axes.
- If the buoy is Fixed then it cannot move. Its Initial Position and Attitude are specified relative to global axes.
- If the buoy is connected to a Vessel, 6D Buoy or a Line, then it is rigidly connected to that object and so moves
and rotates with it. All resulting forces and moments on the buoy are transmitted to the object. In this case the
buoy's Initial Position and Attitude are specified relative to the object to which it is connected.
Initial Position and Attitude
Specifies the initial position of the buoy origin (which must be the centre of gravity) and its initial orientation.
If the buoy is Free or Fixed then its initial position is specified by giving the X, Y and Z coordinates of the buoy
origin B, relative to the global axes. And its initial orientation is specified by giving 3 angles Rotation 1, Rotation 2,
Rotation 3, which are successive rotations that define the orientation of the buoy axes Bxyz, relative to global axes,
as follows. First align the buoy with global axes, so that Bxyz are in the same directions as GXYZ. Then apply
Rotation 1 about Bx (=GX), followed by Rotation 2 about the new By direction, and finally Rotation 3 about the new
(and final) Bz direction.
If a Free buoy is not included in the static analysis then this initial position is taken to be the static position of the
buoy. If the buoy is included in the static analysis, then this initial position is used as an initial estimate of the buoy
position and the static analysis will move and rotate the buoy from this position until an equilibrium position is
found. See Degrees of Freedom Included in Static Analysis.
If the buoy is connected to a Line, then the Initial Position and Attitude specify where on the line it is connected, and
with what orientation, as follows:
- The Initial Position z-coordinate specifies the arc length at which the buoy should be connected to the line. The
buoy will be connected to the nearest node to that arc length. This arclength may be measured relative to either
End A or End B as specified by the user.
- The buoy will be connected to that node, but with an offset relative to that node's axes that is given by (x, y, 0).
- The buoy orientation relative to the node axes is specified by the Initial Attitude angles.
Degrees of Freedom Included in Static Analysis
Determines which degrees of freedom are calculated by the static analysis. This data item only applies to Free buoys
and it can be set to one of:
- None: the buoy position and orientation are not calculated by the static analysis - they are simply set to the
initial position and orientation specified on the buoy data form.
- X,Y,Z: the buoy position is calculated by the static analysis, but its orientation is simply set to the initial
orientation set on the buoy data form.
- All: the buoy position and orientation are calculated by the static analysis.
Normally this data item should be set to All so that the static analysis calculates the true equilibrium position and
orientation of the buoy. However it is sometimes useful to fix the buoy position or orientation, for example if the
static analysis is unable to find the equilibrium position or orientation.
Mass
Mass or weight in air.
Mass Moments of Inertia
The solid moments of inertia of the buoy about the local x, y and z axes directions through its centre of mass.
Centre of Mass
The centre of mass of the buoy, relative to the buoy origin. The weight force, mass and moments of inertia are
applied at this point.
Bulk Modulus
Specifies the compressibility of the buoy. If the buoy is not significantly compressible, then the Bulk Modulus can be
set to Infinity, which means 'incompressible'. See Buoyancy Variation for details.
w
System Modelling - Data and Results, 6D Buoys
349
Seabed Friction Coefficient
OrcaFlex applies Coulomb friction between the buoy and the seabed. The friction force applied never exceeds R
where R is the seabed reaction force and is the friction coefficient.
See Friction Theory for further details of the friction model used.
Note: The friction coefficient for contact with elastic solids is specified on the Solid Friction Coefficients
data form.
Total Contact Area
Used to determine contact forces when the buoy comes in to contact with the seabed and with elastic solids. If a
value of '~' is specified then OrcaFlex calculates a default value for total contact area based on the buoy geometry.
See Contact Forces for details.
Specifying a value of zero allows you to disable contact for the buoy.
7.9.3 Applied Loads
You can apply to the buoy external Global Loads that do not rotate if the buoy rotates. These are specified by giving
the components of Applied Force and Applied Moment relative to global axes. These components can be constant,
vary with simulation time or be given by an external function. If the buoy rotates then the loads do not rotate with it.
In addition, you can specify external Local Loads that do rotate with the buoy. These are specified by giving the
components of Applied Force and Applied Moment relative to buoy axes. Again these components can be constant,
vary with simulation time or be given by an external function. If the buoy rotates then the loads do rotate with it.
These are suitable for modelling thrusters, for example.
In both cases the Point of Application of the load is specified by giving its x,y,z coordinates relative to buoy axes.
7.9.4 Wing Data
6D buoys can have a number of wings attached, each having its own data and type.
Name
Used to refer to the wing.
Span
The length of the wing, in the local Wz direction.
Chord
The width of the wing, in the local Wx direction.
Centre of Wing
The position of the wing origin, relative to buoy axes. The wing is drawn is drawn as a simple rectangle centred on
this origin, the rectangle's dimensions being the specified Chord and Span.
Note that this origin is the point at which the relative velocity is calculated and at which the resulting wing lift and
drag forces are applied. It should therefore normally be at the centre of pressure, which may not be at the centre of
area (even though OrcaFlex draws the wing as being centred at this point).
Orientation
The orientation of the wing is specified by giving 3 angles - azimuth, declination and gamma - relative to the buoy
axes. The angles can be fixed, or can vary with simulation time, or can vary and be given by an external function.
The angles define the orientation of the local wing axes relative to the buoy axes as follows:
- Start with the wing axes Wxyz aligned with the buoy axes Bxyz and then rotate Wxyz about Bz by the azimuth
angle. This leaves Wz aligned with Bz but Wx now points in the direction towards which the declination is to be
made.
- Now rotate by the declination angle about the new direction of Wy. This declines Wz down into its final
direction, i.e. Wz now points along the direction whose azimuth and declination angles are as specified.
- Finally rotate by the gamma angle about this final Wz direction. This is a rotation about the principal wing axis,
so it allows you to adjust the pitch of the wing.
System Modelling - Data and Results, 6D Buoys
w

350
For each of these rotations, positive angles mean clockwise rotation and negative angles mean anti-clockwise
rotation, when looked at along the axis of rotation.
When setting these orientation angles, it is easiest to first set the azimuth and declination values to give the desired
Wz-direction. This is the direction of the axis about which the wing pitch is set. Then set gamma to give the correct
pitch of the wing. This process is best done with the Draw Local Axes option set on (see the View menu or the
Tools | Preferences menu) since the wing axes are then visible on the 3D view and you can check that the resulting
orientation is correct.
Wing Type
Determines the properties of the wing. You can define a number of wing types - click the "Wing Types" button to
access the wing types data form.
7.9.5 Wing Type Data
6D buoys can have a number of wings attached, each having its own data and type.
Name
Used to refer to the wing type.
Wing Type Properties
The properties of each wing type are specified by giving a table of lift, drag and moment coefficients as a function of
the incidence angle of the flow relative to the wing.
A 'Graph' button is provided, which displays a graph of the 3 coefficients so that you can visually check your data.
Incidence Angle
The incidence angle is the angle, , that the relative flow vector makes to the wing surface. This equals 90 minus the
angle between Wy and the relative flow vector.
The incidence angle is always in the range -90 to +90, where positive values mean that the flow is towards the
positive side of the wing (i.e. hitting the negative side) and negative values mean that the flow is towards the
negative side of the wing (i.e. hitting the positive side).
The incidence angles in the table must be given in strictly increasing order and the table must cover the full range of
incidence angles, so the first and last angle in the table are set to -90 and +90 and cannot be changed. Linear
interpolation is used to obtain coefficients over the continuous range of angles.
Note: The wing lift, drag and moment are assumed to depend only on the incidence angle, not on the
angle of attack in the wing plane. OrcaFlex will therefore use the same lift, drag and moment
coefficients for flow (with the same incidence angle) onto the front, the side or the back of the wing,
even though your data may only apply over a limited range of in-plane attack angles. You can
check that the angle of attack in the wing plane stays within the range of your data by examining
the Beta angle result variable.
Lift, Drag and Moment Coefficients
These define the hydrodynamic and aerodynamic loads applied to the wing. Aerodynamic loads are only applied if
the Include wind loads on 6D Buoy Wings option is enabled in the Environment data.
The lift coefficient Cl() defines the lift force applied to the wing, as a function of incidence angle . The lift
coefficients can be positive or negative and the lift force is given by:
Lift Force = P .Cl()..A.V
2

where
P is the proportion wet or proportion dry as appropriate.
is the fluid density,
A is the area of wing that is inside the fluid and
V is the relative flow velocity at the wing centre.
The lift force is applied at the wing centre, along the line that is at 90 to the relative flow vector and in the plane of
that vector and Wy. For = 90 this line is ill-defined and the lift coefficient must be zero. Positive lift coefficients
mean lift pushing the wing towards its positive side (the +ve Wy side).
w
System Modelling - Data and Results, 6D Buoys
351
The drag force is defined by the drag coefficient Cd() using the formula:
Drag Force = P .Cd()..A.V
2

The drag coefficient cannot be negative, so the drag force is always in the relative flow direction.
The moment coefficient Cm() defines a moment that is applied to the wing. This moment represents the fact that
the position of the centre of pressure may depend on the incidence angle .
The moment coefficients can be positive or negative and the moment is given by:
Moment = P .Cm()..A.V
2
.Chord
This moment is applied about the line that is in the wing plane and is at 90 to the relative flow vector. For = 90
this line is ill-defined and the moment coefficient must be zero. Positive moment coefficients mean that the moment
is trying to turn the wing to bring Wy to point along the relative flow direction. Negative moment coefficients mean
the moment tries to turn the wing the opposite way.
Pen
This controls which pen is used to draw a Wing which uses this Wing Type. If it is set to Use Buoy's pen then the 6D
Buoy pen will be used. If it is set to Use this pen then the specified pen is used.
Shaded Drawing
By default, for shaded 3D Views, wings are drawn as plates with the specified span and chord.
Alternatively the object can be represented by an imported 3D model by specifying the Shaded Drawing File. This
must be a Direct X format file, usually with the .x file extension. If you use a relative path then the path will be taken
as relative to the folder containing the OrcaFlex file.
The Browse button allows you to specify the Shaded Drawing File quickly and also provides quick access to the
Orcina sample drawings via the Navigate to Orcina sample drawings button.
The Use Culling option is normally selected since it can provide a useful performance benefit. However, in order to
work it requires that the triangles defined in the .x file have their outward facing directions defined correctly. In the
unusual situation where the outward facing directions are not defined correctly then the .x file will not display
correctly. If this happens then typically sections of the model will be missing when drawn by OrcaFlex. Disabling the
Use Culling option resolves this problem.
Draw Size is provided to allow you to scale the drawing. All directions are scaled equally to arrange that the longest
side in the drawing is drawn to the specified Draw Size. This longest side is calculated by first fitting the smallest
possible cuboid around the vertices of the shaded drawing (these are defined in the .x file). This cuboid is aligned
with the shaded drawing's local axes. Then the length of the longest side of this cuboid is found.
Specify a value of '~' to display the drawing using the absolute coordinates as specified in the .x file.
Note: If you use a value of '~' for Draw Size then OrcaFlex uses the coordinates in the .x file directly. If
these coordinates use a different length units system from your OrcaFlex model then you should
specify the units used in the .x file by including an auxiliary file called AdditionalInformation.txt.
Examples of this can be found in the sample shaded drawings provided by Orcina.
Shaded Drawing Origin is provided because the shaded drawing and the wing may have different origins. The
Shaded Drawing Origin defines the origin of the shaded drawing with respect to the wing's local axis system.
Similarly Shaded Drawing Orientation allows you to reorient the shaded drawing to match the wing's axis system.
System Modelling - Data and Results, 6D Buoys
w

352
7.9.6 Lumped Buoy Properties

pitch
roll
z (heave)
y (sway)
x (surge)
B
(B=buoy origin)
yaw
Vertices

Figure: Lumped Buoy
A Lumped Buoy is specified relative to its own local frame of reference Bxyz. The Centre of Mass is specified
relative to Bxyz.
The forces and moments are calculated as follows ( is water density, g is acceleration due to gravity). Each degree
of freedom is calculated independently.
Geometry
Volume is the total volume of the buoy, with its centre at the Centre of Volume, defined relative to the local buoy
axes Bxyz.
Height is the buoy vertical dimension, assumed equally spaced about the centre of volume. Height is assumed to be
independent of buoy rotation.
The Height is used for two main purposes:
- To calculate the contact area used to calculate forces of contact with shapes and the seabed.
- To calculate the ProportionWet, which is used to scale the hydrostatic and hydrodynamic forces and to
determine the centre of wetted volume, which is the point at which they are applied.
Damping
Hydrodynamic damping forces and moments may be applied to the buoy. These are loads that are directly
proportional to the relative velocity, or angular velocity, of the sea past the buoy. For each of the local buoy axes
directions, you specify the magnitude of the Unit Force that is applied when the relative velocity is
1 length unit/second. OrcaFlex then scales these magnitudes according to the actual relative velocity and applies the
resulting force or moment. Similarly you can specify a Unit Moment that is applied when the relative angular
velocity is 1 radian/second.
Drag
Hydrodynamic drag forces and moments may be applied to the buoy. These are loads that are proportional to the
square of the relative velocity, or angular velocity, of the sea past the buoy.
The drag force properties are specified by giving, for each of the local buoy axes directions, the Drag Area that is
subject to drag loading in that direction and the corresponding Drag Coefficient.
Drag moment properties are specified in a similar way, except that instead of specifying a drag area you must
specify a Moment of Area.
w
System Modelling - Data and Results, 6D Buoys
353
Note: Drag Area Moment is the 3rd absolute moment of drag area about the axis. Separate Cd values are
given for force and moment calculations.
Fluid Inertia
Fluid inertia properties are those that are proportional to the acceleration of the sea and the buoy. These
accelerations have two main effects. Firstly, they result in forces and moments being applied to the buoy - these are
referred to as the fluid acceleration loads. Secondly, the buoy experiences an increase in inertia - this is known as
the added mass.
Full details of the calculation are presented in the Lumped Buoy Added Mass, Damping and Drag topic.
The fluid inertia properties can be specified either by providing the Diagonal values or Full matrices.
Fluid Inertia specified by diagonal values
These properties are specified separately for translational and rotational motions and also separately for each local
axis direction.
The translational fluid inertia properties of the buoy are specified, for each of the local buoy axis directions, by
giving a reference Hydrodynamic Mass together with the two inertia coefficients, Ca and Cm. The translational Cm
values can be set to '~' to mean 1 + Ca.
The translational Hydrodynamic Mass values can be set to '~', meaning equal to the fully submerged displaced
mass.(= volume x water density). This is often a convenient reference mass to use.
Fluid Inertia specified by full matrices
The added mass and fluid inertia properties are specified as full 6x6 symmetric matrices. The added mass matrix is
simply added in to the buoy's virtual mass matrix. The fluid inertia matrix is multiplied by the instantaneous fluid
acceleration vector to produce the fluid acceleration loads.
The units of the added mass and fluid inertia matrices are as follows, where M, L and T indicate the units of mass,
length and time:
- The upper-left 3x3 block of cells has units M.
- The upper-right and lower-left 3x3 blocks have units M.L.
- The lower-right 3x3 block of cells has units M.L
2
.
7.9.7 Lumped Buoy Drawing Data
Vertices and Edges
This defines a "wire frame" representation of the buoy. The wire frame representation of the buoy is used to draw
the buoy. It is also used to calculate the interaction of the buoy with shapes and the seabed. See Contact Forces for
details.
The vertices are specified by giving their coordinates with respect to buoy axes Bxyz, and the edges are specified by
giving the vertex numbers of the vertices they connect.
Edge diameter (used only for shaded drawing)
For shaded graphics views, by default, the Lumped Buoy is drawn using a solid, filled-in shape based on the vertices
and edges. As an alternative you can use the vertices and edges to define a frame like structure. If the edge diameter
is '~' then that edge will be used to build a filled in shape, otherwise that edge is drawn as a cylinder with the
specified diameter.
System Modelling - Data and Results, 6D Buoys
w

354

Figure: Wire frames with different edge diameter. A value of '~' is used for the wire frame on the left
and a value of 1m is used for the wire frame on the right.
7.9.8 Spar Buoy and Towed Fish Properties
The figure below shows the geometry of a Spar Buoy. The buoy is specified relative to its own local frame of
reference Bxyz. The Centre of Mass is specified relative to Bxyz.
A Spar Buoy is modelled as a series of co-axial cylinders mounted end to end along the local z-axis. The geometry of
a Towed Fish is identical except that the buoy axis is aligned with the x-axis of the buoy.
The cylinders are numbered from the top downwards. So in the tables on the buoy data form the cylinder at the base
of the stack (lowest x or z) appears at the bottom of the table.
If you are modelling a CALM or SPAR buoy then see also Modelling a Surface-Piercing Buoy.
w
System Modelling - Data and Results, 6D Buoys
355

Buoy Axis
Stack Base Position
Cylinder 1 Length
Cylinder 1 OD
pitch
z (heave)
y (sway)
x (surge)
B
(B=buoy origin)
yaw
roll

Figure: Spar Buoy
Geometry
The shape of a Spar Buoy or Towed Fish is specified by the following data on the Geometry page on the buoy data
form.
Stack Base Centre Position
The centre of the base of the stack, relative to buoy axes.
Cylinders: Outer Diameter, Inner Diameter and Length
The diameters of the cylinder and its length measured along the axis.
System Modelling - Data and Results, 6D Buoys
w

356
These parameters define the buoy geometry from which buoyancy forces and moments are determined. When the
buoy pierces the water surface, OrcaFlex allows for the angle of intersection between the sea surface and the buoy
axis when calculating the immersed volume and centre of immersed volume, and includes the appropriate
contributions to static stability.
If the inner diameter is greater than zero then the cylinder is actually a hollow cylindrical pipe. The internal region
of the cylinder contains sea water if the buoy is submerged. In this case then the contained water contributes to the
buoy's inertia. These inertial effects are only included in directions normal to the buoy.
The remaining parameters determine the hydrodynamic loads acting on each cylinder. Loads are calculated for each
cylinder individually, then summed to obtain the total load on the buoy.
Hydrodynamic Loads
See the Added Mass and Damping and Drag pages on the buoy data form.
7.9.9 Spar Buoy and Towed Fish Added Mass and Damping
There is a choice of how to model these first order effects, on the Added Mass and Damping page of the spar buoy
data form. They can either be specified by giving added mass and damping values for each cylinder, or else by giving
RAOs and matrices for the whole buoy.
Values for Each Cylinder
With this option, the added mass and damping effects are calculated separately for each cylinder using Morison's
Equation.
Added Mass
Translational added mass effects are calculated using the displaced mass as the reference mass for each cylinder.
Separate added mass coefficients are given for flow normal (x and y directions) and axial (z direction) to the
cylinder.
Rotational added inertia is specified directly (so no reference inertia is involved). Separate values can be given for
rotation about the cylinder axis and normal to that axis.
See Spar Buoy Theory.
Damping Forces and Moments
Damping forces and moments are the hydrodynamic loads that are proportional to fluid velocity (angular velocity
for moments) relative to the cylinder. They are specified by giving the Unit Damping Force and Unit Damping
Moment for the normal and axial directions. These specify the force and moment that the cylinder will experience, in
that direction, when the relative fluid velocity (angular velocity for moments) in that direction is 1 unit. See
Damping Forces and Moments for details.
RAOs and Matrices for Buoy
In this option the linear hydrodynamic effects are specified by giving wave force and moment RAOs, and added mass
and damping matrices. Normally this data would come from a separate program, such as a diffraction program.
Note: This option is only appropriate for circularly-symmetric spar buoys whose axis undergoes only
small oscillations about vertical. It was developed primarily for CALM buoys with diameter in the
range 5m to 15m. It is therefore not available for towed fish.
Warning: The RAOs and added mass and damping matrices specified must apply to the mean position of the
buoy. They are not modified to account for any variations in buoy attitude or immersion, so this
option is only suitable for buoys that undergo small oscillations about their mean position.
RAO, Added Mass and Damping Origin
This specifies the coordinates, with respect to buoy axes, of the point on the buoy at which the RAOs and added
mass and damping matrices are applied. This means that:
- The RAOs are applied to the wave conditions at this point to give the wave loads, which are then applied at this
point.
- The damping matrix is multiplied by the current velocity relative to the buoy at this point to give the damping
load, which is applied at this point.
w
System Modelling - Data and Results, 6D Buoys
357
- The added mass matrix is applied at this point.
Wave Force and Moment RAOs
The RAOs are specified in a table giving the amplitudes and phases of the surge force, heave force and pitch moment
RAOs, as a function of wave angular frequency. RAOs must be specified for both of the limiting cases, i.e. for long and
short waves, and for at least one other frequency.
The RAOs must be specified using the following Orcina conventions. The force and moment amplitudes must be the
forces and moments that are applied at the buoy origin when a unit amplitude wave is applied. The phases must be
lags, in degrees, from the time the wave crest passes the buoy origin until the maximum positive force or moment
occurs.
Added Mass and Damping Matrices
In reality the added mass and damping matrices are frequency-dependent, but in OrcaFlex you can only enter the
matrices for one frequency. You should give the values for the principal frequency of excitation expected.
The added mass and damping matrices are 6 x 6 symmetric matrices, so only the cells on and above the leading
diagonal are editable. The cells below the leading diagonal are non-editable and always equal the corresponding cell
values above the diagonal.
The units of the added mass and damping matrices are as follows, where M, L and T indicate the units of mass,
length and time:
- Added mass matrix. The upper-left 3x3 block of cells has units M. The upper-right and lower-left 3x3 blocks
have units M.L. The lower-right 3x3 block of cells has units M.L
2
.
- Damping matrix. The upper-left 3x3 block of cells has units F/(L/T). The upper-right 3x3 block has units
F/(rad/T). The lower-left 3x3 block of cells has units (F.L)/(L/T). The lower-right 3x3 block of cells has units
(F.L)/(rad/T).
Because the buoy is assumed to be axi-symmetric these matrices should both have the following axi-symmetric
form:
|
|
|
|
|
|
|
|
.
|

\
|

e
d b
d b
c
b a
b a
0 0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0 0
0 0 0 0
0 0 0 0

OrcaFlex warns at simulation time if the matrices are not of this form.
7.9.10 Spar Buoy and Towed Fish Drag
Munk Moment Coefficient
Slender bodies in near-axial flow experience a destabilising moment called the Munk moment. This effect can be
modelled by specifying a non-zero Munk moment coefficient.
Drag Forces and Moments
Drag loads are the hydrodynamic loads that are proportional to the square of fluid velocity relative to the cylinder.
For details of the drag load formulae see Spar Buoy and Towed Fish Theory. For information when modelling a
SPAR or CALM buoy see Modelling a Surface-Piercing Buoy.
The drag forces are calculated on each cylinder using the "cross flow" assumption. That is, the relative velocity of the
sea past the cylinder is split into its normal and axial components and these components are used, together with the
specified drag areas and coefficients, to calculate the normal and axial components of the drag force.
The drag forces are specified by giving separate Drag Area and Drag Coefficient values for flow in the normal
direction (local x and y directions) and in the axial direction (local z direction). The Drag Area is a reference area
that is multiplied by the Drag Coefficient in the drag force formula. You can therefore use any positive Drag Area that
suits your need, but you then need to give a Drag Coefficient that corresponds to that specified reference area.
System Modelling - Data and Results, 6D Buoys
w

358
The Drag moments are specified and calculated in a similar way to the drag forces, except that the reference drag
area is replaced by a reference Area Moment. This and the Drag Coefficient are multiplied together in the drag
moment formula, so again you can use any positive Area Moment that suits your need, providing you then specify a
Drag Coefficient that corresponds to the specified Area Moment.
There are two alternative methods that you can adopt when specifying the drag data. The first method is to set the
OrcaFlex data to get best possible match with real measured results for the buoy (e.g. from model tests or full scale
measurements). This is the most accurate method, and we recommend it for CALM and discus buoys - see Modelling
a Surface-Piercing Buoy for details. Because the Drag Area and Drag Coefficient data are simply multiplied together,
you can calibrate the model to the real results by fixing one of these two data items and then adjusting the other. For
example, you could set the axial Drag Coefficient to 1 and adjust the axial Drag Area until the heave response decay
rate in the OrcaFlex model best matches the model test results. Or, you could set the axial Drag Area to a fixed value
(e.g. 1 or some appropriate reference area) and then adjust the axial Drag Coefficient until the heave response decay
rate in OrcaFlex best matches the model test results.
The second method is to set the drag data using theoretical values or given in the literature. It is less accurate but
can be used if you cannot get any real buoy results against which to calibrate. To use this method, set the data as
follows.
Set the Drag Areas to the projected surface area that is exposed to drag in that direction and then set the Drag Force
Coefficients based on values given in the literature (see Barltrop & Adams, 1991, Hoerner,1965 and DNV, 1991).
Note that the drag area specified should be the total projected area exposed to drag when the buoy is fully
submerged, since OrcaFlex allows for the proportion wet in the drag force formula. For a simple cylinder of
diameter D and length L the total projected drag area is D.L for the normal direction and (.D
2
)/4 for the axial
direction, but if the buoy has attachments that will experience drag then their areas must also be included.
Set the Drag Area Moments to the 3rd absolute moments of projected area exposed to drag in the direction
concerned; see Drag Area Moments for details. And then set the Drag Moment Coefficients based on values given in
the literature.
7.9.11 Spar Buoy and Towed Fish Drawing
There are two alternative methods of drawing the Spar Buoy and Towed Fish cylinders:
1. Draw square cylinders. If this option is selected then each cylinder is drawn as a square-based cuboid. OrcaFlex
automatically generates the vertices and edges. There are eight vertices per cylinder and the square base has a
side length equal to the diameter of the actual circular cylinder.
2. Draw circular cylinders. With this option selected the circular cylinders are drawn as such. You can specify pens
for the outside and inside of the cylinders. In addition you specify how many lines are drawn. Increasing this
number makes the buoy drawing more realistic but increases the time taken to draw the buoy.
Notes: The selected drawing method only affects the way the object is drawn. It does not affect
calculations in any way.
The vertices of the square-based cuboids are used for calculation of any contact with the seabed or
shapes. This applies even if you choose for presentation purposes to draw circular cylinders.
7.9.12 Shaded Drawing
By default, for shaded 3D Views, Spar Buoys and Towed Fish are drawn as solid objects using the specified cylinder
geometry. Lumped Buoys are drawn using the wire frame data.
The wire frame drawing data comprises vertices and edges, but OrcaFlex needs a solid surface for the shaded
graphics representation. OrcaFlex uses the following procedure to generate this surface from the wire frame
vertices and edges.
First any edges with specified diameters (i.e. diameters not equal to '~') are drawn as cylinders. This allows you to
use such edges to visualise parts of the structure that are not solid, e.g. crane boom latticework. These edges are
now handled and are excluded from the remainder of the procedure.
The remaining edges are used to partition the vertices into sets of connected vertices. Two vertices are deemed to
be connected if there exists a path of edges between the two vertices.
Finally, for each set of connected vertices, the smallest convex hull enclosing the set is drawn.
This algorithm does not always generate the shaded drawings that you might expect. Consider the following two
wire frame vessels. When drawn in wire frame mode they look the same, but in shaded mode they differ.
w
System Modelling - Data and Results, 6D Buoys
359

Figure: Wire Frame and Shaded Drawing
For the green vessel the superstructure and the hull share vertices and so all vertices are connected. This results in a
single convex hull for all vertices being drawn. In the red vessel, the superstructure and hull do not share vertices
and so there are two distinct sets of connected vertices. This results in two separate convex hulls and a better
representation.
Alternatively the object can be represented by an imported 3D model by specifying the Shaded Drawing File. This
must be a Direct X format file, usually with the .x file extension. If you use a relative path then the path will be taken
as relative to the folder containing the OrcaFlex file.
The Browse button allows you to specify the Shaded Drawing File quickly and also provides quick access to the
Orcina sample drawings via the Navigate to Orcina sample drawings button.
The Use Culling option is normally selected since it can provide a useful performance benefit. However, in order to
work it requires that the triangles defined in the .x file have their outward facing directions defined correctly. In the
System Modelling - Data and Results, 6D Buoys
w

360
unusual situation where the outward facing directions are not defined correctly then the .x file will not display
correctly. If this happens then typically sections of the model will be missing when drawn by OrcaFlex. Disabling the
Use Culling option resolves this problem.
Draw Size is provided to allow you to scale the drawing. All directions are scaled equally to arrange that the longest
side in the drawing is drawn to the specified Draw Size. This longest side is calculated by first fitting the smallest
possible cuboid around the vertices of the shaded drawing (these are defined in the .x file). This cuboid is aligned
with the shaded drawing's local axes. Then the length of the longest side of this cuboid is found.
Specify a value of '~' to display the drawing using the absolute coordinates as specified in the .x file.
Note: If you use a value of '~' for Draw Size then OrcaFlex uses the coordinates in the .x file directly. If
these coordinates use a different length units system from your OrcaFlex model then you should
specify the units used in the .x file by including an auxiliary file called AdditionalInformation.txt.
Examples of this can be found in the sample shaded drawings provided by Orcina.
Shaded Drawing Origin is provided because the shaded drawing and the buoy may have different origins. The
Shaded Drawing Origin defines the origin of the shaded drawing with respect to the buoy's local axis system.
Similarly Shaded Drawing Orientation allows you to reorient the shaded drawing to match the buoy's axis system.
7.9.13 Other uses
6D Buoys are frequently used for non-standard purposes. For example they can be used to connect Lines together.
Sometimes they are used as frame of reference objects where the properties are provided by various other objects
(usually single segment Lines) connected to the 6D Buoy.
For such uses the 6D Buoy needs negligible structural and hydrodynamic properties. Because this is such a common
thing to do we have provided a facility on the 6D Buoy data form to set up appropriate properties. Clicking on the
Give Buoy negligible properties button has the following effects:
- Buoy Type will be set as Lumped Buoy.
- Mass will be set to a negligible value.
- Height will not be modified since it cannot be set to zero. Because other properties are set to zero its value is not
significant.
- All other Lumped Buoy properties are set to zero.
- Any existing Wing, Applied Load and Drawing data is not modified.
7.9.14 External Functions
Parameters
This data item specifies the External Function Parameters, a free form multi-line text field which is passed to any
external function used by the Environment.
7.9.15 Properties Report
The 6D Buoy properties report is available from the popup-menu on the data form. It reports the following:
Weight in air
The force due to gravity acting on the buoy's mass.
Displacement
The weight of water displaced by the buoy's volume. The reported value uses the water density at the sea surface.
Weight in water
Equals Weight in air - Displacement.
Volume
The volume of the buoy.
Centre of volume
Reported with respect to the buoy frame of reference.
w
System Modelling - Data and Results, 6D Buoys
361
x-mass radius of gyration, y-mass radius of gyration, z-mass radius of gyration
Equals (Mass Moment of Inertia / Mass).
Total contact area
Reports the Total contact area data. If a value of '~' is set on the data form then the value reported here is the default
value calculated by OrcaFlex.
Number of vertices
The number of vertices in the wire frame drawing. Contact for 6D Buoys is calculated at each of these vertices.
Contact area per vertex
Equals Total contact area / Number of vertices.
Statics force accuracy, Statics moment accuracy
These are only reported if the buoy is included in statics.
The static analysis searches for an equilibrium position for the buoy - that is a position for which the resultant force
and moment on the buoy is zero. We refer to the resultant force and moment as the out of balance load. Because
computers have limited numerical precision the static analysis cannot always find a configuration where the out of
balance load is exactly zero. OrcaFlex accepts a position as a static equilibrium position if the largest out of balance
load component is less than the statics accuracy.
The Statics force accuracy equals Tolerance * buoy typical force and the Statics moment accuracy equals Tolerance *
buoy typical moment. The buoy typical force and moment are based on the weight in air, the height of the buoy and
the forces and moments applied by connected objects.
Reducing the Tolerance value will give a more accurate static equilibrium position, but will take more iterations.
OrcaFlex may not be able to achieve the Tolerance specified if it is too small, since the computer has limited
numerical precision.
Note: The statics accuracies change during the static analysis because the forces and moments applied
by connected objects vary with the position of the buoy. The statics accuracies reported in Reset
state may be quite different from those used for the final equilibrium position and should be
treated as rough approximations to the true statics accuracies.
7.9.16 Results
For details on how to select results variables see Selecting Variables.
6D Buoy Results
For 6D Buoys the available variables are:
X, Y and Z
The position of a user specified point P on the buoy, relative to global axes. The point P is specified in buoy local
coordinates. If P=(0,0,0) then the global X, Y and Z coordinates of the buoy origin are reported.
Rotation 1, Rotation 2 and Rotation 3
Define the orientation of the buoy relative to global axes. They are 3 successive rotations that take the global axes
directions to the buoy axes directions. See Initial Position and Attitude for the definition of these angles.
Rotation 2 is in the range -90 to +90. Range jump suppression is applied to Rotation 1 and Rotation 3 (so values
outside the range -360 to +360 might be reported).
Azimuth, Declination
The azimuth and declination of the local z axis.
Velocity, GX-Velocity, GY-Velocity, GZ-Velocity
The magnitude and components of the velocity of the buoy, relative to global axes. These results are reported at a
user specified point P on the buoy. The point P is specified in buoy local coordinates.
Angular Velocity, x-Angular Velocity, y-Angular Velocity, z-Angular Velocity
The magnitude and components of the angular velocity of the buoy, relative to buoy axes.
System Modelling - Data and Results, 6D Buoys
w

362
Acceleration, GX-Acceleration, GY-Acceleration, GZ-Acceleration
The magnitude and components of the acceleration of the buoy, relative to global axes. These results are reported at
a user specified point P on the buoy. The point P is specified in buoy local coordinates.
Acceleration (incl. g), x-Acceleration (incl. g), y-Acceleration (incl. g), z-Acceleration (incl. g)
The magnitude and components (with respect to buoy axes) of the vector a - g where a is the acceleration of the
buoy and g is the acceleration due to gravity, a vector pointing vertically downwards. These results are reported at a
user specified point P on the buoy. The point P is specified in buoy local coordinates.
These results can be used to compare against accelerometer readings.
Angular Acceleration, x-Angular Acceleration, y-Angular Acceleration, z-Angular Acceleration
The magnitude and components of the angular acceleration of the buoy, relative to buoy axes.
Sea Surface Z
The global Z coordinate of the sea surface directly above the instantaneous position of the buoy origin.
Dry Length
The length of buoy above the water surface, measured along the buoy z axis, calculated as follows:
- For a Lumped Buoy, this is calculated by assuming that the z-extent of a Lumped Buoy is Height either side of
its centre of volume.
- For a Spar Buoy it is the sum of the dry lengths of each of its cylinders, where the dry length of an individual
cylinder is calculated as:
(cylinder length) (submerged volume of cylinder) / (total volume of cylinder).
Force, Moment
Lx-Force, Ly-Force, Lz-Force, Lx-Moment, Ly-Moment, Lz-Moment,
Gx-Force, Gy-Force, Gz-Force, Gx-Moment, Gy-Moment, Gz-Moment
These results are not available for buoys that are connected to other objects - you can instead use the Connection
Force and Connection Moment results.
These results are the total force and moment applied to the buoy. Force and Moment report the magnitudes of the
loads. The Lx, Ly and Lz results report the components of the force and moment in the local axes directions. The Gx,
Gy and Gz results report the components of the force and moment in the global axes directions.
Connection Force, Connection Moment
Connection x-Force, Connection y-Force, Connection z-Force
Connection x-Moment, Connection y-Moment, Connection z-Moment
These connection load results are only available for buoys that are connected to other objects. They report the total
force and moment applied to the buoy by the object to which it is connected.
Connection Force and Connection Moment report the magnitudes of the connection loads. The other results
report the components of the connection force and moment in the buoy axes directions.
These connection force and moment results include the inertial load on the buoy due to any acceleration of the
object to which it is attached. This means that these results can be used for sea fastening calculations, by using a 6D
buoy to model the object to be fastened and then attaching it to a vessel. The connection force and moment include
the weight of the buoy and the inertial loads due to the vessel acceleration. Note that if the vessel motion is specified
by a time history then the time history interpolation method used is important since it affects the calculation of
vessel acceleration and hence affects the inertial loads.
Wing Results
If the 6D buoy has wings attached then for each wing the following results are available.
Wing X, Wing Y, Wing Z
The position of the wing origin, relative to global axes.
Wing Azimuth, Declination and Gamma
The orientation angles of the wing, relative to the buoy.
w
System Modelling - Data and Results, 6D Buoys
363
Lift, Drag, Moment
The lift force, drag force and drag moment applied to the wing.
The lift force is applied at 90 to the relative flow direction. Positive values mean a force trying to push the wing
towards its positive side, negative values towards its negative side.
The drag force is applied in the relative flow direction and is always positive.
The drag moment is applied about the line that is in the wing plane and at 90 to the relative flow direction. Positive
values are moments trying to turn the wing to bring the wing y-axis Wy to point along the relative flow direction;
negative values are moments trying to turn the wing the opposite way.
Note: When the wing is less than half submerged, and you have included wind loads on wings, then the
lift force, drag force and moment reported are the air loads. Otherwise they are the water loads.
Incidence Angle
The angle, , that the relative flow vector makes with the plane of the wing, in the range -90 to +90. Positive values
mean that the flow is towards the positive side of the wing (i.e. hitting the negative side) and negative values mean
that the flow is towards the negative side of the wing (i.e. hitting the positive side).
The value reported is with respect to the principal fluid affecting the wing.
Beta Angle
The angle of the relative flow direction, measured in the wing plane. More specifically, it is the angle between wing
Wx axis and the projection of the relative flow vector onto the wing plane, measured positive towards Wz. Zero beta
angle means that this projection is in the Wx direction, 90 means it is along Wz and -90 means it is along the
negative Wz direction.
The value reported is with respect to the principal fluid affecting the wing.
Range jump suppression is applied to the Beta Angle (so values outside the range -360 to +360 might be reported).
7.9.17 Buoy Hydrodynamics
3D and Lumped 6D buoys are generalised objects for which no geometry is defined in the data other than a height:
This is used for proportioning hydrodynamic properties when the object is partially immersed, and for drawing a
3D buoy.
Since the geometry of the object is undefined, it is necessary to define properties such as inertias, drag areas, added
masses, etc. explicitly as data items. This can be a difficult task, especially where a 6D buoy is used to represent a
complex shape such as a midwater arch of the sort used to support a flexible riser system.
We cannot give a simple step-by-step procedure for this task since the geometry of different objects can be widely
different. As an example, the hydrodynamic properties in 6 degrees of freedom are derived for a rectangular box.
This gives a general indication of the way in which the problem should be approached. If a 3D buoy is used, the
rotational properties are not used.
System Modelling - Data and Results, 6D Buoys
w

364
7.9.18 Hydrodynamic Properties of a Rectangular Box
O
X Y
Z
x y
z
O is the centre of the box

Figure: Box Geometry
Drag areas
In X direction: Ax = y . z
In Y direction: Ay = x . z
In Z direction: Az = x . y
Drag Coefficients for Translational Motions
These are obtained from ESDU 71016, Figure 1 which gives data for drag of isolated rectangular blocks with one
face normal to the flow. The dimensions of the block are
a in the flow direction
b and c normal to the flow direction (c>b).
The figure plots drag coefficient, Cx against (a/b) for (c/b) from 1 to infinity (2D flow). Cx is in the range 0.9 to 2.75
for blocks with square corners.
Note: ESDU 71016 uses Cd for the force in the flow direction; Cx for the force normal to the face. For
present purposes the two are identical.
Drag Properties for Rotational Motions
There is no standard data source. As an approximation, we assume that the drag force contribution from an
elementary area dA is given by
dF = ..V
2
.Cd.dA
where Cd is assumed to be the same for all points on the surface.
Note: This is not strictly correct. ESDU 71016 gives pressure distributions for sample blocks in uniform
flow which show that the pressure is greatest at the centre and least at the edges. However we do
not allow for this here.
w
System Modelling - Data and Results, 6D Buoys
365
dz
Z
O
z
X

Figure: Integration for rotational drag properties
Consider the box rotating about OX. The areas Ay and Az will attract drag forces which will result in moments about
OX. For the area Ay, consider an elementary strip as shown:
For an angular velocity about OX, the drag force on the strip is
dF = ..(z).|z|.Cd.x.dz
and the moment of this force about OX is
dM = ..(z).|z|.Cd.x.dz.z = (...||.Cd).x.z
3
.dz
Total moment is obtained by integration. Because of the V.|V| form of the drag force, simple integration from -Z/2 to
+Z/2 gives M = 0. We therefore integrate from 0 to Z/2 and multiply the answer by 2. The result is
M = (...||.Cd).(x.z
4
/32)
OrcaFlex calculates the drag moment by
M = (.. .|| .Cdm).(AM)
so we set
Cdm = Cd, AM = x.z
4
/32.
This is the drag moment contribution about OX from the Ay area. There is a similar contribution from the Az area.
Since Cd is generally different for the 2 areas, it is convenient to calculate the sum of (Cd.AM) for both, set AM equal
to this value and set Cd equal to 1.
Added Mass
OrcaFlex requires the added mass and inertia contributions to the mass matrix, plus the hydrodynamic masses and
inertias to be used for computation of wave forces. For each degree of freedom (3 translations, 3 rotations), 3 data
items are required. These are Hydrodynamic Mass in tonnes (or Inertia in tonne.m
2
); and coefficients Ca and Cm.
Added mass is then defined as Hydrodynamic Mass . Ca; and wave force is defined as (Hydrodynamic mass . Cm)
multiplied by the water particle acceleration, aw.
On the usual assumptions intrinsic in the use of Morison's Equation (that the body is small by comparison with the
wavelength), the wave force is given by ( + AM) . aw, where is body displacement and AM is added mass. OrcaFlex
calculates the wave force as Cm . HM . aw where HM is the Hydrodynamic Mass given in the data.
For translational motions, set HM = for all degrees of freedom. Then Ca = AM/, Cm = 1 + Ca. For rotational
motions, set HI = I, the moment of inertia of the displaced mass. Then Ca = AI/I, Cm = 1 + Ca where AI is the added
inertia (i.e. the rotational analogue of added mass).
Translational Motion
DNV (1991), Table 6.2, gives added mass data for a square section prism accelerating along its axis. The square
section is of side a, prism length is b, and data are given for b/a = 1.0 and over. The reference volume is the volume
System Modelling - Data and Results, 6D Buoys
w

366
of the body which is the same definition we have adopted. We can therefore use the calculated Ca without further
adjustment.
Consider the X direction: Area normal to flow = Ax.
For a square of the same area, a = (Ax).
Length in flow direction = x.
Hence b/a = x/(Ax).
Hence Ca can be obtained from DNV (1991) by interpolation, and then Cm = 1 + Ca.
If b/a < 1.0 this approach fails and we use the data given in DNV (1991) for rectangular flat plates. If y > z, aspect
ratio of the plate = y/z. Hence CA from DNV (1991) by interpolation. The reference volume in this case is that of a
cylinder of diameter z, length y. Hence:
Added mass = CA..(/4).y.z
2
= AMx, say
and then Ca = AMx/ and Cm = 1 + Ca.
Note: If y < z, then aspect ratio = z/y and reference volume = CA . . (/4) . z . y
2
.
Rotational Motion
DNV (1991) gives no data for hydrodynamic inertia of rotating bodies. The only data for 3D solids we know of is for
spheroids (Newman 1977). Fig 4.8 of Newman 1977 gives the added inertia for coefficient for spheroids of varying
aspect ratio referred to the moment of inertia of the displaced mass. We assume that the same coefficient applies to
the moment of inertia of the displaced mass of the rectangular block.
Rotation about X
I = (Y
2
+ Z
2
)/12
Added inertia:
Using data for spheroids from Newman 1977 :
Length in flow direction = 2a = x, so a = x/2.
Equivalent radius normal to flow, b, is given by b
2
= yz, so b = (y . z/).
Hence Ca from Newman 1977.
For b/a < 1.6
Ca can be read from the upper figure where the value is referred to the moment of inertia of the displaced mass. In
this case no further adjustment is required.
For b/a > 1.6
The coefficient CA is read from the lower graph in which the reference volume is the sphere of radius b. In this case:
Ca = CA . (2 . b
3
)/(a . (a
2
+b
2
))
In either case, Cm = 1 + Ca.
7.9.19 Modelling a Surface-Piercing Buoy
Surface-piercing buoys, such as CALM buoys, SPAR buoys or meteorological discus buoys, can be modelled in
OrcaFlex using the Spar Buoy version of a 6D Buoy. Despite its name, the OrcaFlex Spar Buoy can be used to model
any axi-symmetric body. See the example F01 CALM Buoy.
Spar Buoys have many data items available. This enables you to model a wide range of effects, but it also makes
setting up a Spar Buoy model more complicated. To help in this task we describe, in this section, the approach we
adopt for setting up an OrcaFlex model of a surface-piercing buoy.
1. Create a simple model containing just a Spar Buoy
Start by modelling the free-floating behaviour of the buoy, without any lines attached. This allows us to get the basic
behaviour of the buoy correct, before complications such as moorings etc. are introduced. We therefore set up an
OrcaFlex model containing just a Spar Buoy and with no waves or current.
w
System Modelling - Data and Results, 6D Buoys
367
Set the buoy's Applied Load to zero. This data allows you to apply extra forces and moments to the buoy, in addition
to those from any lines that you attach to it. You can use this later to model the wind force on the upper part of the
buoy. To do this you will need to know the projected area (i.e. the area exposed to wind) of the pipe work etc. in the
upper part of the buoy.
Set the buoy's Munk Moment Coefficient to zero. This data item is only used for slender bodies in near axial fully-
submerged flow only.
Set the number of wings to zero. Wings are normally only relevant for towed fish.
Finally, we start by setting all the buoy's drag and added mass data to zero. We will set up the actual values later.
2. Set up the geometry data
The Spar Buoy has its own local coordinate system. This must have its origin at the buoy centre of gravity (CG) and
must have the local z-axis pointing upwards along the axis of the buoy. You therefore need to know the position of
the centre of gravity. The buoy manufacturer should supply this information.
Set the Stack Base Position. This is the position of the centre of the bottom of the buoy, relative to the centre of
gravity. The Stack Base Position is therefore (0, 0, -h) where h is the distance from the bottom of the buoy to the
centre of gravity.
Now set up a number of cylinders, and their lengths and diameters, in order to model the shape of the buoy. To do
this you need the dimensions of the various parts of the buoy. The buoy manufacturer should supply this
information. Set the cylinder lengths and diameters so that you get the correct length and volume for each section.
You can represent tapered sections by a series of short cylinders with diameters changing progressively from one to
the next.
We recommend using a number of short cylinders, even where the buoy diameter is constant over a long length.
Using more cylinders gives more accurate results, though at the cost of reduced computation speed.
You can check your geometry data by zooming in on the buoy in a 3d view window. Turn on the local axes so that
you can check that the buoy origin (=centre of gravity) is in the correct place.
The Bulk Modulus data item is not relevant to a surface-piercing buoy, so it can be left at the default value of Infinity.
3. Set up the mass and inertia data
Now set the Mass and Moments of Inertia of the buoy. The buoy manufacturer should supply this information.
The mass equals the weight of the buoy in air. The moments of inertia are those of the buoy (in air) about its centre
of gravity, as follows:
- Iz = the moment of inertia about the buoy axis.
- Ix and Iy = the moments of inertia about axes perpendicular to the buoy axis, through the centre of gravity.
Usually it is sufficient to assume that Ix = Iy.
If you cannot obtain data for the moments of inertia, then they can be approximately calculated from a knowledge of
the masses of the various parts of the buoy, and approximately how that mass is distributed.
4. Check that the buoy floats at the correct draught
Set the Initial Position and Initial Attitude of the buoy so that the buoy is in its expected equilibrium position. The
initial position is the position of the buoy local origin, and therefore of the CG, and you can calculate this point's
expected equilibrium position from the buoy draught, which should be available from the buoy manufacturer.
The Initial Attitude defines the initial orientation of the buoy. Set it to (0,0,0), which orients the buoy with its axis
vertical and the buoy local x,y axes aligned with the global X,Y axes.
Set the Degrees of freedom included in statics to None and then run the simulation and look at the time history of
buoy Z. If the data has been set up correctly then the buoy should have stayed basically in its initial position and
attitude, with perhaps just small oscillations about that position.
If the buoy Z has oscillated significantly then the model's equilibrium position does not match the expected
equilibrium position. This means that something is wrong in the data and this needs tracing and correcting before
you proceed. You can estimate the model's equilibrium position by looking at the mean Z position in the time
history.
System Modelling - Data and Results, 6D Buoys
w

368
5. Check that the buoy is stable
Now check that the buoy is stable - i.e. that if it is pitched over to one side and released then it rights itself. In the
Initial Attitude data, set the Rotation 2 value to say 10 and run the simulation. If the buoy falls over then there is
something wrong with the CG position or the volume distribution, and this must be corrected.
Note: The buoy on its own may not be intended to be stable, e.g. stability may only be achieved when the
moorings are attached. In this case you will need to model the moorings in order to check stability.
6. Set the Added Mass data
The x and y added mass coefficients can be set to 1.0, which is the standard value for a cylinder in flow normal to its
axis.
Added mass in the z direction should be estimated for the buoy from the published literature (DNV rules, Barltrop &
Adams, 1991) and distributed between the immersed cylinders (remember that hydrodynamic loads are only
applied to the immersed parts of the model).
Ideally, this data should then be checked by comparing the heave and pitch natural periods of the model against
values obtained from model tests or full scale measurements, and adjustments made as necessary.
7. Set the drag and damping data
The best approach depends on whether the buoy is a SPAR whose length is great by comparison with its diameter,
or a surface-following Discus shape such as an oceanographic buoy. CALM buoys are usually closer to the Discus
configuration, often with a damping skirt which is submerged at normal draft.
Spar Buoys
Set the Drag Areas for each cylinder to the areas, of the part of the buoy which that cylinder represents, that are
exposed to fluid drag in the direction concerned. Note that you should specify the areas that are exposed to drag
when the buoy is fully submerged. OrcaFlex automatically calculates the proportion of the cylinder that is
submerged and scales all the fluid loads on the cylinder using that 'proportion wet' as a factor. So if a cylinder is not
submerged, or is partially submerged, then the drag loads will be scaled accordingly for you.
For a simple cylinder, of diameter D and length L, the normal drag area is D.L since that is the area of a cylinder
when viewed normal to its axis. And the axial drag area is (.D
2
)/4 since that is the area of the cylinder when viewed
along its axis. However, where a cylinder is representing part of the buoy that is not in reality a simple cylinder (for
example, we may represent the pipework and turntable on the deck of a SPAR buoy as an equivalent cylinder) or
where the cylinder is shielded from drag by adjacent structure, then the drag areas should be set accordingly. For
example, if the cylinder is shielded below by another cylinder of diameter d (less than D) then the axial drag area
should be reduced by (.d
2
)/4 to model that shielding.
Set the Drag Force Coefficient based on values given in the literature. For short simple cylinders fully immersed
there are standard values given in the literature (see Barltrop & Adams, 1991, Hoerner,1965 and DNV, 1991).
However, the standard book values do not include energy absorption by wave-making at the free surface. Strictly,
this is a linear term (forces directly proportional to velocity), but in OrcaFlex this must be done by adjusting the
drag coefficients of one or more cylinders.
The Unit Damping Force data can be set to zero. If you later find that the buoy shows persistent small amplitude
oscillations then you may wish to set a non-zero value to damp this out.
Set the Drag Area Moments, Drag Moment Coefficients and Unit Damping Moment data. For the normal direction
these data items can usually all be left as zero, providing you have subdivided the buoy into short enough cylinders
(since these terms involve a high power of L, the cylinder length). For the axial direction these data items model the
yaw drag and damping effects, so if this is important to you then set them to model the two main sources, namely
skin friction on the cylinder surface and form drag on any protuberances on the buoy.
Having set up this drag and damping data, it is well worth now running simulations of heave and pitch oscillations
and checking that their rate of decay is reasonable and consistent with any real data you have available.
Discus and CALM Buoys
These types of buoy require different treatment since they have little axial extension. Instead it is their radial
extension that most affects the buoy's pitch properties. As a result the axial discretisation of the buoy into cylinders
does not capture the important effects. For example the pitch damping is often mostly due to radiation damping, i.e.
surface wave generation; this is especially important for a CALM buoy with a skirt.
w
System Modelling - Data and Results, 3D Buoys
369
To deal with this OrcaFlex offers the rotational drag and damping data, but there is little information in the
literature to help in setting up this data. We therefore strongly recommend that you set the data up by calibration
against real test results from model or full scale tests. The easiest information to work with are time history graphs
of the buoy heave and pitch in still water, starting from a displaced position. This will give the heave and pitch
natural periods and the rates of decay and you can adjust the buoy's drag and damping data until you get a good
match with this measured behaviour.
Here is the approach we use:
- For the normal direction, set the Drag Area, Drag Force Coefficient and Unit Damping Force as described for
Spar buoys above.
- Then set the axial Unit Damping Force to zero and run a simulation that matches the conditions that existed in
the real heave time history results, i.e. with the same initial Z displacement.
- Then adjust the axial Drag Area and Drag Force Coefficients until the OrcaFlex buoy's Z time history matches the
real time history. These two data items are simply multiplied together when they are used to calculate the drag
force, so you can give one of the two data items a fixed positive value (e.g. 1) and then adjust the other.
- The match will probably be poor in the later parts of the time history, where the heave amplitude has decayed
to small values. This is because the square law drag term is insignificant at small amplitude and instead the
damping force takes over. Therefore we now adjust the axial Unit Damping Force to further improve the match
where the amplitude is small. You may find that this disturbs the match in the large amplitude part, in which
case you might need to readjust the drag data.
- For the axial direction, set the Drag Area Moment, Drag Moment Coefficient and Unit Damping Moment as
described for Spar buoys above.
- Then set the normal Drag Area Moment, Drag Moment Coefficient and Unit Damping Moment to best match the
real pitch time history, in a similar way to that used above to match the heave time history.
7.10 3D BUOYS
OrcaFlex 3D Buoys are simplified point elements with only 3 degrees of freedom: X, Y and Z. They do not rotate, but
remain aligned with the global axes. They therefore do not have rotational properties and moments on the buoy are
ignored. They should therefore be used only where these limitations are unimportant.
3D Buoys are able to float part-submerged at the surface, and may also be used independently, with no lines
attached. Although they are much less sophisticated than 6D Buoys, 3D Buoys are easier to use and are convenient
for modelling buoys at line junctions etc.
B
y
z
x
height/2
height/2
Buoy Axes
always aligned
with Global Axes

Figure: 3D Buoy
System Modelling - Data and Results, 3D Buoys
w

370
7.10.1 Data
Name
Used to refer to the 3D Buoy.
Included in Static Analysis
Determines whether the equilibrium position of the buoy is calculated by the static analysis. See Buoy Degrees of
Freedom Included in Static Analysis.
Initial Position
Specifies the initial position for the buoy origin as coordinates relative to the global axes. If the buoy is not included
in the static analysis then this initial position is taken to be the static position of the buoy. If the buoy is included in
the static analysis, then this initial position is used as an initial estimate of the buoy position and the statics
calculation will move the buoy from this position iteratively until an equilibrium position is found. See Buoy Degrees
of Freedom Included in Static Analysis.
Mass
Mass or weight in air.
Volume
Used to calculate buoyancy and added mass.
Bulk Modulus
Specifies the compressibility of the buoy. If the buoy is not significantly compressible, then the Bulk Modulus can be
set to Infinity, which means "incompressible". See Buoyancy Variation.
Height
Used to model floating buoys correctly, where the buoyancy, drag etc. vary according to the depth of immersion. It
also determines the height used to draw the buoy. The Height is the vertical distance over which the fluid-related
forces change from zero to full force as the buoy pierces the surface. It is taken to be symmetrical about the buoy's
origin.
Seabed Friction Coefficient
OrcaFlex applies Coulomb friction between the buoy and the seabed. The friction force applied never exceeds R
where R is the seabed reaction force and is the friction coefficient.
See Friction Theory for further details of the friction model used.
Note: The friction coefficient for contact with elastic solids is specified on the Solid Friction Coefficients
data form.
Contact Area
Used to determine contact forces when the buoy comes in to contact with the seabed and with elastic solids. If a
value of '~' is specified then OrcaFlex uses Volume / Height.
Specifying a value of zero allows you to disable contact for the buoy.
Drag
Drag forces are applied in each of the global axes directions GX, GY and GZ. For each direction you must specify a
Drag Coefficient and Drag Area.
Added Mass
You must specify the added mass coefficient Ca for each global axis direction. The added mass is set to be Ca
multiplied by the mass of water currently displaced. The inertia coefficient, Cm, is set automatically to equal 1+Ca.
7.10.2 Properties Report
The 3D Buoy properties report is available from the popup-menu on the data form. It reports the following:
Weight in air
The force due to gravity acting on the buoy's mass.
w
System Modelling - Data and Results, Winches
371
Displacement
The weight of water displaced by the buoy's volume. The reported value uses the water density at the sea surface.
Weight in water
Equals Weight in air - Displacement.
Statics force accuracy, Statics moment accuracy
These are only reported if the buoy is included in statics.
The static analysis searches for an equilibrium position for the buoy - that is a position for which the resultant force
on the buoy is zero. We refer to the resultant force as the out of balance load. Because computers have limited
numerical precision the static analysis cannot always find a configuration where the out of balance load is exactly
zero. OrcaFlex accepts a position as a static equilibrium position if the largest out of balance load component is less
than the statics accuracy.
The Statics force accuracy equals Tolerance * buoy typical force. The buoy typical force is based on the weight in air,
the displacement and the forces applied by connected objects.
Reducing the Tolerance value will give a more accurate static equilibrium position, but will take more iterations.
OrcaFlex may not be able to achieve the Tolerance specified if it is too small, since the computer has limited
numerical precision.
Note: The statics accuracies change during the static analysis because the forces applied by connected
objects vary with the position of the buoy. The statics accuracies reported in Reset state may be
quite different from those used for the final equilibrium position and should be treated as rough
approximations to the true statics accuracies.
7.10.3 Results
For details on how to select results variables see Selecting Variables.
For 3D Buoys the available variables are:
X,Y and Z
Positions of the buoy origin, relative to global axes.
Velocity, X Velocity, Y Velocity, Z Velocity
Acceleration, X Acceleration, Y Acceleration, Z Acceleration
The magnitude and components (with respect to global axes) of the velocity and acceleration of the buoy.
Surface Z
The global Z coordinate of the sea surface directly above the instantaneous position of the buoy origin.
Dry Length
Length of buoy above the water surface, measured along the buoy z axis. For this purpose, the z-extent of a 3D buoy
is assumed to be Height/2 either side of its volume centre.
7.11 WINCHES
Winches provide a way of modelling constant tension or constant speed winches. They connect two (or more)
points in the model by a winch wire, fed from a winch inertia (typically representing a winch drum) that is then
driven by a winch drive (typically representing the winch hydraulics that drive the drum).
As well as connecting its two end points, the winch wire may, optionally, pass via intermediate points, in which case
it does so as if passing over a small frictionless pulley at that point. The wire tension either side of the intermediate
point is then applied to that point; if the point is offset on the object involved then this also gives rise to an applied
moment.
System Modelling - Data and Results, Winches
w

372
Winch Drive Winch Inertia
Drive
Force
f
t t
t
Wire
Tension
t
Winch may pull via
intermediate objects
Winch wire

Figure: Winch Model
Two types of winch are available in OrcaFlex:
Simple Winches
Simple Winches model perfect constant tension or constant speed performance and are easiest to use. It is assumed
that the winch inertia is negligible and the winch drive is perfect, so that it always exactly achieves the requested
constant tension or constant speed. Because of these assumptions, no data needs to be given for the winch inertia or
winch drive.
Detailed Winches
Detailed Winches include modelling of the performance of the winch drive system - its deadband, stiffness, inertia,
damping and drag - but therefore require more data and are harder to set up.
We recommend using Simple winches unless you know the characteristics of the winch drive system and believe
that its performance significantly differs from the constant tension or speed ideal. In particular, Simple winches are
appropriate:
- At the early design stage, when the type of winch to be used has not yet been decided.
- If the duty is such that the winch drive will give near to perfect constant tension or constant speed performance.
- If the winch drive data are not available.
Winch Control
OrcaFlex winches allow quite complex offshore operations to be modelled. The winch drive can be operated in
either of two modes:
Length Control Mode
For modelling constant speed winches. The winch wire is paid out or hauled in at a velocity specified in the data.
Force Control Mode
For modelling tension controlled winches. Since such winches are usually hydraulic devices whose performance
deviates quite seriously from the target tension ideal, OrcaFlex Winches provides facilities for modelling winch
deadband, damping and drag forces (force decrements proportional to velocity and velocity
2
respectively) and
winch stiffness effects such as those caused by hydraulic accumulators.
The winch can be switched between these two modes at predetermined times during the simulation and the
constant velocity or target tension can also be varied.
7.11.1 Data
Name
Used to refer to the Winch.
w
System Modelling - Data and Results, Winches
373
Type
May be either Simple or Detailed. See Winches.
Connect to Object and Object Relative Position
The (mass-less) winch wire connects at least two objects, one at each end of the winch wire.
If more than 2 are specified then the winch wire passes from the first connection point to the last via the
intermediate points specified. When intermediate connections are specified, the winch wire slides freely through
these intermediate points as if passing via small friction-less pulleys mounted there. The winch wire tension on
either side then pulls on the intermediate points, so applying forces and moments (if the points are offset) to the
objects concerned.
Each connection is defined by specifying the object connected and the object-relative position of the connection
point.
For connecting to a Line, the object-relative z coordinate specifies the arc length to the connection point. The z
coordinate specifies the arclength along the Line and this arclength may be measured relative to either End A or End
B as specified by the user. The connection point is attached to the nearest node. If torsion is not modelled then the
x,y coordinates are ignored and the connection point is at the centreline of the Line. If torsion is modelled then the
x,y coordinates allow you to offset the connection from the centreline.
For Fixed connections the object-relative coordinates given are the global coordinates of the point.
For connecting to an Anchor, the object-relative x,y coordinates given are the global X,Y coordinates of the anchor
point, and the z-coordinate is the distance of the anchor above (positive) or below (negative) the seabed at that X,Y
position.
For connecting to other objects, the coordinates of the connection point are given relative to the object local frame
of reference.
Release at Start of Stage
The winch wire can be released at the start of a given stage of the simulation, by setting this number to the stage
number required. Once released the winch no longer applies any forces to the objects it connects. If no release is
required, then set this item to '~'.
7.11.2 Wire Properties
Wire Stiffness
Elastic stiffness of the winch wire.
Wire Damping
Material damping value for the winch wire.
Note: The mass of the winch wire is not modelled.
Winch Inertia (Detailed Winches only)
The inertia of the winch drive, which resists changes in the rate of pay out of haul in of the winch wire if the winch is
in Force Control mode. The Winch Inertia has no effect if the winch is in Length Control mode.
This is a linear, rather than rotational, inertia. To represent the rotational inertia of a winch drum, set the winch
inertia to
l / r
2

where
I = drum rotational inertia,
r = radius at which the wire is fed.
Notes: The winch inertia does not contribute to the mass of any objects to which the winch is attached
and so does not directly resist acceleration of any of the connection points. (Such accelerations are
resisted indirectly, of course, through the changes they cause to the winch wire path length and
hence to the winch wire tension.) To include the true translational inertia of the winch drive, drum
and wire it is necessary to suitably increase the masses of the objects to which it is attached.
System Modelling - Data and Results, Winches
w

374
Setting the winch inertia to a small value to model a low inertia winch can lead to very short
natural periods for the winch system. These then require very short time steps for the simulation,
slowing the simulation. To avoid this, the winch inertia can be set to zero, rather than to a small
value; the winch system inertia is then not modelled at all, but the short natural periods are then
avoided. See Winch Theory for full details of the algorithm used when the winch inertia is zero.
7.11.3 Control
Control Type
Can be either By Stage or Whole Simulation.
When By Stage is selected the winch is controlled on a stage by stage basis. For each stage of the simulation you
choose from the winch control modes. These modes allow you to control the winch payout rate, control the rate of
change of target tension or specify a constant target tension.
Note: The control mode remains fixed for the duration of each stage. Because there is a limit on the
number of stages in an OrcaFlex simulation this can be restrictive.
When Whole Simulation is selected the winch is either tension controlled or length controlled for the whole
simulation. For the tension controlled mode the target tension can be fixed, vary with simulation time or be given by
an external function. Likewise for the length controlled mode the payout rate of unstretched winch wire can be
fixed, vary with simulation time or be given by an external function.
7.11.4 Control by Stage
Winch Control for Statics
For the static analysis, the Mode of the winch drive can be set to one of Specified Length or Specified Tension.
Specified Length
The winch drive is locked with the unstretched length of winch wire out, L0, being set to the Value specified. The
winch wire tension t then depends on the stretched length L of the winch wire path.
Specified Tension
The winch drive operates in perfect constant tension mode, the tension t being the Value specified. The unstretched
length out L0 is then set to correspond to this tension.
Winch Control for Dynamics
During the simulation the winch is controlled on a stage by stage basis. For each stage the winch control mode can
be set to one of Specified Payout, Specified Payout Rate, Specified Tension, Specified Tension Change or
Specified Tension Rate of Change.
Specified Payout
The Value specifies the unstretched length of winch wire to be paid out (positive) or hauled in (negative) at a
constant rate during this stage. That is, the Value specifies the total change in unstretched length during the stage,
so to keep a constant length set the Value to zero.
Specified Payout Rate
The Value specifies the rate at which the winch wire is to be paid out (positive) or hauled in (negative) during this
stage.
Specified Tension
The Value specifies the target constant tension for this stage.
For Simple winches the winch drive is assumed to always achieve this nominal tension, so the Value is used as the
actual winch wire tension.
For Detailed winches this nominal tension is used as the target tension for the winch drive, which then applies
drive force to the winchinertia to try to achieve this target tension. The algorithm for the winch drive force is
designed to model the characteristics of real-world winches that are nominally "constant tension". See Winch
Theory.
w
System Modelling - Data and Results, Winches
375
Note: Changes of nominal tension are applied instantly at the start of each stage, and this can therefore
apply a shock load which, if large enough, may affect the stability of the simulation.
Specified Tension Change
The Value specifies the change in target tension for this stage. That is, the Value specifies the total change in
nominal tension during the stage, so to keep at a constant nominal tension set the Value to zero.
The above comments for the Specified Tension control method also apply to this method.
Specified Tension Rate of Change
The Value specifies the rate of change in target tension for this stage.
The above comments for the Specified Tension control method also apply to this method.
Note: The Specified Tension Change and Specified Tension Rate of Change modes allow you, for example,
to model a constant tension winch where the tension is determined by an earlier simulation stage.
By specifying a tension change of 0 following a payout stage you can lock the winch at the tension
used at the end of the payout operation.
7.11.5 Control by Whole Simulation
Statics Mode
The winch control data for statics is the same as the data specified in the By Stage control type.
Dynamics Mode
The winch is controlled either by Specified Tension or by Specified Payout Rate.
If Specified Tension is set then you must also specify the target tension. This value can be fixed, vary with
simulation time or be given by an external function.
If Specified Payout Rate is set then you must also specify the payout rate of unstretched winch wire. This value can
be fixed, vary with simulation time or be given by an external function.
7.11.6 Drive Unit
Note: The drive unit data applies to Detailed Winches only
Winch Drive
The winch drive controls the winch wire in one of two winch control modes - Length Control mode ("Specified
Length", "Specified Payout" or "Specified Payout Rate") or Force Control mode ("Specified Tension", "Specified
Tension Change" or "Specified Tension Rate of Change").
- Length Control mode is for modelling a constant speed winch. The winch tension then depends simply on the
unstretched length of winch wire out, and the wire properties (Stiffness and Damping).
- Force Control mode is for modelling a (nominally) constant tension winch. Because such winches often deviate
quite seriously from the constant tension ideal, facilities are provided for modelling winch Deadband,
Damping, Drag and Stiffness.
Deadband
A deadband of +/- this value is applied to the winch drive force between hauling in and paying out the winch. See
Winch Theory for full details.
Stiffness
This can be used to model, for example, winch hydraulic accumulators. It is the rate at which the zero-velocity winch
force (the drive force applied when the winch is neither hauling in nor paying out) varies with the total unstretched
length of winch wire paid out. See Winch Theory.
Damping Terms A and B
These terms can be used to model damping in a winch's hydraulic drive system. The winch drive force is taken to
vary with haul-in/payout velocity at rates A and B, respectively. See Winch Theory.
System Modelling - Data and Results, Links
w

376
Drag Terms C and D
These terms can be used to model drag in a winch's hydraulic drive system. The winch drive force is taken to vary
with haul-in/payout velocity
2
at rates C and D, respectively. See Winch Theory.
7.11.7 External Functions
Parameters
This data item specifies the External Function Parameters, a free form multi-line text field which is passed to any
external function used by the Environment.
7.11.8 Results
For details on how to select results variables see Selecting Variables.
For winches the available variables are:
X, Y and Z
The global coordinates of the specified winch connection point.
Tension
The tension in the winch wire.
Length
The unstretched length of winch wire paid out.
Velocity
The rate of pay out of winch wire. Positive value means paying out, negative value means hauling in.
Azimuth and Declination
The azimuth and declination angles of the direction of the winch wire between the final 2 connection points, relative
to the global axes. This direction is measured from the last connection point towards the previous connection point.
Declination is in the range 0 to 180. Range jump suppression is applied to Azimuth (so values outside the range -
360 to +360 might be reported).
Sea Surface Z
The global Z coordinate of the sea surface directly above the instantaneous position of the winch mount.
Connection Force, Connection GX-Force, Connection GY-Force, Connection GZ-Force
The magnitude and components relative to global axes of the connection force at the specified winch connection
point. We adopt the convention that the force reported is that applied by the winch to the object to which it is
connected.
7.12 LINKS
Links are simple spring or spring/damper connections linking two points in the model, for example a node on a line
to a vessel, or a buoy to an anchor. They pull the two points together, or hold them apart, with a force that depends
on their relative positions and velocities.
Links have no mass or hydrodynamic loading and simply apply an equal and opposite force to the two points. They
are useful for modelling items such as wires where the mass and hydrodynamic effects are small and can be
neglected; for example buoy ties can sometimes be modelled using links.
Two types of Link are available:
Tethers
Simple elastic ties that can take tension but not compression. The unstretched length and stiffness of the
tether are specified. The tether remains slack and does not apply a force if the distance between the ends is
less than the unstretched length.
w
System Modelling - Data and Results, Links
377
Spring/Dampers
Combined spring and independent damper units. The spring can take both compression and tension and can
have either a linear or a piecewise-linear length-force relationship. The damper velocity-force relationship
can also be either linear or piecewise-linear.
Spring-Damper:
Tether:

Figure: Types of Link
7.12.1 Data
Name
Used to refer to the Link.
Type
may be either:
- Tether: a simple elastic tie having linear stiffness and no damping.
- Spring/Damper: a combined spring and independent damper, each of which can be either linear or piecewise-
linear.
Connect to Object and Object Relative Position
Specifies the objects to be linked.
For connecting to a Line, the object-relative z coordinate specifies the arc length to the connection point. The z
coordinate specifies the arclength along the Line and this arclength may be measured relative to either End A or End
B as specified by the user. The connection point is attached to the nearest node. If torsion is not modelled then the
x,y coordinates are ignored and the connection point is at the centreline of the Line. If torsion is modelled then the
x,y coordinates allow you to offset the connection from the centreline.
For Fixed connections the object-relative coordinates given are the global coordinates of the point.
For connecting to an Anchor, the object-relative x,y coordinates given are the global X,Y coordinates of the anchor
point, and the z-coordinate is the distance of the anchor above (positive) or below (negative) the seabed at that X,Y
position.
For connecting to other objects, the coordinates of the connection point are given relative to the object local frame
of reference.
Release at Start of Stage
The link can be released at the start of a given stage of the simulation, by setting this number to the stage number
required. Once released a link no longer applies any forces to the objects it connects. If no release is required, then
set this item to '~'.
Unstretched Length
Is the unstretched length of the Tether or Spring.
Linear
Both the spring and damper in a Spring/Damper can have either simple linear force characteristics or else a user-
specified piecewise-linear force table.
System Modelling - Data and Results, Links
w

378
Stiffness
For a tether the tension t depends on its strain and stiffness as follows:
t = k.(L-L0)/L0
where
k is the specified Stiffness,
L is the current stretched length between the two ends,
L0 is the specified Unstretched Length.
Tethers remain slack and exert no force if L is less than L0.
For a linear spring in a Spring/Damper the tension (positive) or compression (negative) is given by:
t = k.(L-L0)
where
k is the specified Stiffness,
L is the current stretched length between the two ends,
L0 is the specified Unstretched Length.
The linear spring does not go slack if L is less than L0, but instead goes into compression.
Warning: Please note that this is not the same formula as for tethers.
Damping
A linear damper in a Spring/Damper exerts an extra tension of
t = c.(rate of increase of L)
where
c is the specified Damping,
L is the current stretched length between the two ends.
Non-linear force tables
For a non-linear spring (or damper) the force characteristic is specified as a table of tension against length (or
velocity). The table must be arranged in increasing order of length (velocity) and a negative tension indicates
compression. For a passive damper the tensions specified should therefore normally have the same sign as the
velocities, since otherwise the damper will apply negative damping. For lengths (velocities) between, or outside,
those specified in the table the program will use linear interpolation, or extrapolation, to calculate the tension.
7.12.2 Results
For details on how to select results variables see Selecting Variables.
For links the following variables are available:
Tension
The total tension in the link.
Length
The current stretched length of the link.
Velocity
The rate of increase of the stretched length.
Azimuth and Declination
The azimuth and declination angles, relative to global axes, of the End A to End B direction of the link.
End A X, End A Y, End A Z, End B X, End B Y and End B Z
The global coordinates of the link.
w
System Modelling - Data and Results, Shapes
379
7.13 SHAPES

Figure: Examples of Block, Cylinder and Curved plate shapes
Shapes are simple 3 dimensional geometric objects that can be used to model two distinct things:
1. Elastic solids to model physical obstacles,
2. Trapped water to model moonpools or other areas where fluid motion is suppressed.
You may choose between a number of different basic geometric shapes and several shapes can then be placed
together to defined more complex shapes. The basic shapes available are planes, blocks, cylinders and curved plates.
Elastic solids
An elastic solid represents a physical barrier to the motion of lines and buoys. It is made of a material of a specified
stiffness and resists penetration by applying a reaction force normal to the nearest surface of the elastic solid and
proportional to the depth and speed of penetration of the object into the elastic solid.
Note: Elastic solids do not resist penetration by Vessels, Links, Winches or other Shapes.
Each elastic solid has an associated stiffness, which determines the rate at which the force applied to an object
increases with the area of contact and depth of penetration into the elastic solid. The stiffness is the force per unit
area of contact per unit depth of penetration.
Contact with elastic solids can model friction. Friction coefficients are specified on the Solid Friction Coefficients
data form. Note that friction for contact with elastic solids is only included during dynamics.
Where an object interacts with more than one elastic solid simultaneously, the force acting on it is the sum of the
individual forces from each elastic solid.
Note: A elastic solid with zero stiffness has no effect on the rest of the model. Such shapes can be useful
for drawing reference marks on the 3D views, without affecting the behaviour of the model.
Trapped water
Trapped water can be used to model hydrodynamic shielding - i.e. areas such as moonpools, the inside of spars or
behind breakwaters, where wave and current effects are suppressed.
Inside a trapped water shape the fluid motion is calculated as if the fluid was moving with the shape. So if the
trapped water shape is fixed then no fluid motion occurs in the shape - this could be used to model a breakwater.
System Modelling - Data and Results, Shapes
w

380
But if the shape is connected to a moving vessel, for example, then the trapped water is assumed to move with the
vessel - this could be used to model a moonpool.
Note: Objects ignore any trapped water shapes which are connected to that particular object. If this
wasn't done then if you connected a trapped water shape to a buoy and part of the buoy was in the
trapped water shape then a feedback would occur (the buoy motion determines the motion of the
shape, which in turn would affect the fluid forces on the buoy and hence its motion). Such feedback
is undesirable so the buoy ignores any trapped water shapes that are connected to it.
7.13.1 Data
Name
Used to refer to the shape.
Type
Either Elastic Solid or Trapped Water.
Shape
Can be one of Block, Cylinder, Curved Plate or Plane.
Connection
Can be Fixed, Anchored or connected to another object (Vessels, 3D Buoys or 6D Buoys).
Position
Each shape has position data. For blocks it is named Origin, for cylinders and curved plates it is named End
Position and for planes it is named Point on Plane.
This point is taken as the origin of the shape's local x,y,z axes.
For Fixed connections this is the global position of the point.
For Anchored connections the object-relative x,y coordinates given are the global X,Y coordinates of the anchor
point, and the z-coordinate is the distance of the anchor above (positive) or below (negative) the seabed at that X,Y
position.
For connections to other objects, the coordinates of the connection point are given relative to the object local frame
of reference.
Pens and Number of Lines
Each surface of the solid is drawn as a wire frame using one the specified pens. To aid visualisation, the Outside pen
is used if the surface is being viewed from the outside of the solid, and the Inside pen is used if it is being viewed
from the inside.
The Number of Lines determines how many lines are used in the wire frames - a larger value gives a more realistic
picture, but takes a little longer to draw.
Data for Elastic Solids
Normal Stiffness
This is the reaction force that the solid applies per unit depth of penetration per unit area of contact. Stiffness may
be set to zero, giving a solid that is drawn but which has no effect on the other objects in the system.
Shear Stiffness
The Shear Stiffness is used by the friction calculation. A value of '~' results in the Normal Stiffness being used.
Damping
The percentage of critical damping for the elastic solid. Damping is always zero when using the implicit integration
scheme.
See Shape Theory for technical details.
w
System Modelling - Data and Results, Shapes
381
7.13.2 Blocks
Block Position B
x
y
z
y-size
x-size
z-size

A Block shape is a rectangular cuboid, defined by giving:
Size
This defines the block's dimensions in its local x, y and z directions. With respect to its local axes, the block occupies
the volume x=0 to Size(x), y=0 to Size(y), z=0 to Size(z).
Orientation
This is defined by giving three rotation angles, Rotation 1, 2 and 3, that define its orientation relative to the object to
which the block is attached, or else relative to global axes if it is not attached to another object. For example, if the
block is attached to an object with local axes Lxyz, then the 3 rotations define the orientation of the block axes Bxyz
as follows. First align the block with the local axes of the object to which it is attached, so that Bxyz are in the same
directions as Lxyz. Then apply Rotation 1 about Bx (=Lx), followed by Rotation 2 about the new By direction, and
finally Rotation 2 about the new (and final) Bz direction.
7.13.3 Cylinders
r
r = Inner Radius
R = Outer Radius
R
End 1 Position
End 2 Position

A cylinder shape is a thick walled hollow pipe defined by giving:
- Inner and Outer Diameter.
- Length.
System Modelling - Data and Results, Shapes
w

382
- Azimuth and Declination of the axis.
The azimuth and declination define the direction of the axis relative to the local axes of the object to which the end is
connected. For objects that rotate, such as vessels and 6D buoys, the axis direction therefore rotates with the object.
For Fixed or Anchored ends it is defined relative to global axes.
Cylinders are drawn using circles to represent the end faces and a number of rectangular facets to represent around
the curved surfaces. The number of facets used is the Number of Lines specified. Two gives a very simple wire frame
profile of the cylinder, whilst a very large number gives a pseudo-opaque cylinder at the expense of drawing speed.
If the Inner Diameter is zero then a solid disc is formed.
If the cylinder is an elastic solid then reaction forces are applied:
- Radially inwards if an object comes into contact with the inner curved surface.
- Radially outwards if an object comes into contact with the outer curved surface.
- Normally outwards if an object comes into contact with one of the end faces.
7.13.4 Curved Plates

Figure: Some example curved plate shapes
Curved plate shapes are particularly suited to modelling bellmouths although they are not restricted to this
application. The curved plate shape is similar to the cylinder. It differs in that the radius of the shape can vary
smoothly between the ends. Curved plates can be either filled in or hollow.
Shape is hollow
If ticked then the shape is hollow and has both inner and outer surfaces. The middle picture above is not hollow
whereas the other two are.
Orientation
This is defined by giving three rotation angles, Azimuth, Declination and Gamma, that define its orientation
relative to the object to which the curved plate is attached, or else relative to global axes if it is not attached to
another object. For example, if the curved plate is attached to an object with local axes Lxyz, then the 3 rotations
define the orientation of the curved plate axes Pxyz as follows. First align the block with the local axes of the object
to which it is attached, so that Pxyz are in the same directions as Lxyz. Then apply Azimuth about Pz (=Lz), followed
by Declination about the new Py direction, and finally Gamma about the new (and final) Pz direction.
Included Angle of Revolution
The curved plate is a solid of revolution. A value of 360 gives a complete revolution as shown in the first 2 pictures
above. Other values can be used to model partial or cut-away curved plates - for example the right-most picture
above has an included angle of 90.
Thickness
If the shape is hollow then this data item specifies the wall thickness. This thickness specifies the thickness normal
to the shape's axis or centreline.
Note: You may need to specify an artificially large value for thickness in order to avoid objects passing
through the shape's wall during the static calculation.
w
System Modelling - Data and Results, Shapes
383
Profile
A table specifying the variation of diameter with distance along the shape's axis or centreline. The radius is the
radial distance (i.e. in direction normal to the shape axis) from the axis to the surface. If the shape is hollow then the
profile defines the radius to the inner surface. If the shape is not hollow then the profile defines the radius to the
outer surface. Cubic Bessel interpolation is used to generate a smooth profile.
7.13.5 Planes
Direction of
Maximum Slope
Slope
Point on Plane

A plane shape is an infinite plane surface - one side of the plane is outside and the other is inside. The position of
the plane is defined by specifying a Point on Plane through which it passes.
The angle of the plane is specified by giving its (maximum) Slope Angle and Slope Direction, relative to the object
to which it is connected, as follows.
- For a fixed or anchored shape, the Slope Angle is specified by giving the angle of elevation of the line of
maximum slope, relative to the global XY plane (i.e. relative to the horizontal). A Slope Angle of 90 is therefore a
vertical plane. The Slope Direction is specified as the direction of the line of maximum upwards slope, relative to
global axes. For example a plane having a Slope Angle of 30 and a Slope Direction of 90 slopes upwards in the
positive Y direction at 30 to the horizontal.
- For a shape connected to another object, the Slope Angle and Slope Direction are relative to the object's local xy
plane. For example with a Slope Angle of 30 and a Slope Direction of 90, the plane slopes upwards in the
positive y direction at 30 to the object's local xy plane.
A plane with zero slope angle is therefore parallel to the xy plane of the object to which it is connected, or parallel to
the global XY plane (i.e. horizontal) in the case of a Fixed or Anchored plane.
The 'inside' of a plane is on the negative z side (i.e. below for a Fixed or Anchored plane) if the Slope Angle is in the
range -90 to +90, and on the positive z side (i.e. above for a Fixed or Anchored plane) otherwise.
Planes are drawn as a rectangular grid, with the specified Number of Lines, using a spacing determined by the view
size. Planes extend to infinity in all directions, but only a part of the infinite plane local to the view centre is shown
on the 3D view.
7.13.6 Drawing
Wire frame drawing
Representation of shapes in the wire frame drawing mode can be confusing. OrcaFlex does not provide hidden-line
removal so shape objects are displayed by simple wire-frame drawings. You may exercise control over the display
by selecting the number of lines drawn for each object, and the sequence in which they are drawn. For pen details,
see How Objects Are Drawn.
Where it is necessary to keep the display simple you should set Number of Lines to 2 for blocks and cylinders. If the
number of lines is set large for blocks or cylinders they appear as solid objects, although they may take a long time
to draw.
For planes you can control how they are drawn with the Grid Density data item. This is specified in terms of the
length of the scale bar on the 3D view. A density of d means that there are d lines per scale bar length, so higher
density values give a finer grid (but takes longer to draw).
Please note also that the Number of Lines only affects the drawing, and not the calculations (which are correctly
performed with curved geometry). Planes and Blocks are drawn first, and then Cylinders, but otherwise the solids in
the model are drawn in the sequence that they were created. You can sometimes take advantage of this, by defining
System Modelling - Data and Results, Shapes
w

384
background shapes before foreground ones, to obtain a pseudo-hidden line effect. You are encouraged to
experiment, but simplicity is best.
Hint: Although the program provides depth clues to the eye by drawing rear faces in a different colour,
the eye can sometimes be fooled by the picture - try rotating the view back and forth a few times.
Shaded Drawing
By default, for shaded 3D Views, shapes are drawn as solid objects using the specified geometry.
Alternatively the object can be represented by an imported 3D model by specifying the Shaded Drawing File. This
must be a Direct X format file, usually with the .x file extension. If you use a relative path then the path will be taken
as relative to the folder containing the OrcaFlex file.
The Browse button allows you to specify the Shaded Drawing File quickly and also provides quick access to the
Orcina sample drawings via the Navigate to Orcina sample drawings button.
The Use Culling option is normally selected since it can provide a useful performance benefit. However, in order to
work it requires that the triangles defined in the .x file have their outward facing directions defined correctly. In the
unusual situation where the outward facing directions are not defined correctly then the .x file will not display
correctly. If this happens then typically sections of the model will be missing when drawn by OrcaFlex. Disabling the
Use Culling option resolves this problem.
Draw Size is provided to allow you to scale the drawing. All directions are scaled equally to arrange that the longest
side in the drawing is drawn to the specified Draw Size. This longest side is calculated by first fitting the smallest
possible cuboid around the vertices of the shaded drawing (these are defined in the .x file). This cuboid is aligned
with the shaded drawing's local axes. Then the length of the longest side of this cuboid is found.
Specify a value of '~' to display the drawing using the absolute coordinates as specified in the .x file.
Note: If you use a value of '~' for Draw Size then OrcaFlex uses the coordinates in the .x file directly. If
these coordinates use a different length units system from your OrcaFlex model then you should
specify the units used in the .x file by including an auxiliary file called AdditionalInformation.txt.
Examples of this can be found in the sample shaded drawings provided by Orcina.
Shaded Drawing Origin is provided because the shaded drawing and the shape may have different origins. The
Shaded Drawing Origin defines the origin of the shaded drawing with respect to the shape's local axis system.
Similarly Shaded Drawing Orientation allows you to reorient the shaded drawing to match the shape's axis
system.
Shaded Drawing Plane Translucency (only available for planes)
Controls how translucent the plane appears in the Shaded Graphics mode. A value of 0% gives a solid surface and all
objects behind the surface will not be visible. A value of 100% specifies transparency and leads to a completely see-
through surface.
Note: This data item is not used if an imported 3D model is used to draw the shape.
7.13.7 Results
For details on how to select results variables see Selecting Variables.
Contact Force,
Contact GX-Force, Contact GY-Force, Contact GZ-Force,
Contact Lx-Force, Contact Ly-Force and Contact Lz-Force
The magnitude and components of the total force applied by an elastic solid to other objects in the model. The
components are reported relative to either global axes (GX, GY, GZ) or local axes (Lx, Ly, Lz).
These variables are only available for elastic solids.
X, Y, Z
The global coordinates of the shape origin.
Velocity, GX-Velocity, GY-Velocity, GZ-Velocity,
Acceleration, GX-Acceleration, GY-Acceleration, GZ-Acceleration
The magnitude and components (with respect to global axes) of the velocity and acceleration of the shape origin.
w
System Modelling - Data and Results, All Objects Data Form
385
7.14 ALL OBJECTS DATA FORM
The All Objects Data Form allows you to view or edit data for all the objects in the model on a single form. This is
particularly useful for simultaneous viewing or editing of properties of multiple objects. The form can be opened
using the model browser.
There are two modes of operation: Connections or Other data.
Connections
The Connections mode allows you to edit connection specific data for all Lines, Links and Winches in the model.
You can choose to filter which object types appear in the list - each object type (Lines, Links or Winches) can be
included or excluded from the list. The connections can be sorted either in object name order or in connection
number order.
Positions and Connections pages
The Positions and Connections pages allow you to view or edit all the connection data. This is the same data as on
the individual data forms and includes the following data items:
- The positions (as Cartesian coordinates) relative to the frame of reference of the object to which the connection
is attached.
- For Links and Winches connected to a line, the reference line end (either End A or End B) for the z coordinate.
- Height above seabed for anchored line ends.
- Connection orientation and stiffnesses for line ends.
- Release stage for line ends.
Polar Coordinates page
The Polar Coordinates page provides a way of viewing or setting the positions of the connections using polar
coordinates, relative to a choice of frames of reference. This facility is useful for cases, for example mooring arrays,
where a series of connections need to be laid out around a circle.
The polar coordinates (R, , Z) are those of the connection position relative to the selected polar coordinates frame
of reference (see below). The Cartesian coordinates of the connection, relative to the same reference frame, are
(Rcos(), Rsin(), Z).
On the other hand, the Object Relative Position data are the Cartesian coordinates of the connection relative to the
frame of reference of the object to which it is connected.
OrcaFlex keeps the two sets of coordinates synchronised, so if you change one then the other is automatically
updated to match. If you change any other data then the Cartesian Object Relative Position coordinates are taken to
be the master data and so left unchanged, and the polar coordinates are updated to match.
You have a quite a lot of flexibility to choose what reference frame you want for the polar coordinates. The reference
frame has its origin at your chosen Reference Origin and has its axes are parallel to those of your chosen
Reference Axes.
For the reference origin you can choose between:
- The global origin.
- The point on the seabed that is directly below the global origin. This is only available if a connection point is
anchored.
- The origin of the frame of reference of any connected object.
- The position of the other end of the object - available for Lines and Links only..
And for the reference axes directions you can choose between:
- The global axes directions.
- The axes directions of the frame of reference of any connected object.
Example of Using Polar Coordinates
The choices of reference frame for the polar coordinates may seem complex at first sight, but they allow various
useful coordinate transformations to be done easily and accurately. Here is an example.
System Modelling - Data and Results, All Objects Data Form
w

386
Consider mooring a spar with an array of 4 lines, each of which has End A connected to the spar and End B
anchored. Suppose you want to place the A ends of the lines so that they are evenly spaced circumferentially around
the spar, all at radius 5m from the spar axis and all 3m below the spar origin. To do this easily, first sort into
Connection order so that all the End A connections are grouped together. Then, for the first line, set the reference
frame origin and axes to be the spar origin and spar axes and set its polar coordinates to be R=5, and Z=-3. You can
now use copy/paste or fill down to set all the other A ends to the same reference origin, axes and R and Z
coordinates. Finally you can set the coordinates for the A ends to 0, 90, 180 and 270.
Similarly, suppose you want the End B connections to be anchored to the seabed, with the anchors again evenly
spaced circumferentially, and with each line spanning 200m horizontally. The easiest reference frame for this is
with the reference origin being End A and the reference axes being the spar axes. The coordinates should again be
set to 0, 90, 180 and 270 and the R coordinates set to 200m. But this time, to set the vertical positions of the B
ends, it is easier (especially if the seabed is sloping) to go to the Connections page and set Connect To Object to be
Anchored and then go to the Positions page and set the Object Relative Position z coordinate to zero.
Other data
The Other data mode presents tables of data for Vessels, Lines, 6D Buoys, 3D Buoys, Links, Winches and Shapes.
The tables are laid out with each row containing related data for a single object. The notable exception is the Line
sections page in which each row contains data for a single section of a Line.
This tabulation allows data for multiple objects to be set in an efficient and coordinated way. The copy/paste or fill
down keyboard shortcuts are particularly useful here. Another useful technique is to build a table of data in Excel
with identical layout of columns and rows. This allows you to make use of Excel's formulae and data handling
facilities to prepare data, and then to paste it into OrcaFlex in a single operation.
w
Fatigue Analysis, Commands
387
8 FATIGUE ANALYSIS
The OrcaFlex fatigue analysis is a post-processor based on regular or irregular wave simulations. Line results are
extracted from a series of pre-run simulation files, stress is recovered and then converted to damage.
Note: For an example of an OrcaFlex fatigue analysis see J04 Fatigue Analysis.
Three types of fatigue analysis can be performed:
- Deterministic regular wave fatigue analysis.
- Deterministic irregular wave fatigue analysis using the rainflow cycle counting method.
- Stochastic irregular wave fatigue analysis using spectral methods.
Damage is calculated from stress using S-N curves. There are two options for recovering stresses: homogeneous
pipe stress (suitable for metal risers) or stress factors (suitable for umbilicals and flexibles).
The fatigue analysis tool is run by selecting the Fatigue Analysis command from the OrcaFlex Results menu. It is
essentially a self-contained sub-program within OrcaFlex, with its own menus, data and results.
The steps involved in performing a fatigue analysis are:
1. Use the normal OrcaFlex facilities to set up and run simulations that model the various load cases that the line
will experience.
2. Open the fatigue analysis tool and set up the fatigue analysis data. This fatigue analysis data is held separately
from the other OrcaFlex data and can be saved in a separate Fatigue Analysis File with the file extension .ftg.
3. Check the data for errors.
4. Calculate the stresses and damage.
Notes: The Calculate stage of a fatigue analysis can take a long time , especially a rainflow analysis with a
lot of load cases. To help with this there is an Estimate Calculation Time facility and fatigue
analyses can be run in batch mode. The calculation makes use of all available processor cores to
process load cases concurrently.
The fatigue calculation performance is often limited by disk access consequently it is important
that the disk access speed is as fast as possible. Usually this means that the simulation files should
be stored on a local disk of the machine performing the fatigue calculation.
Load Cases
Before the Fatigue Analysis can be performed you must first prepare a set of OrcaFlex simulation files that model the
same system but under the various load conditions that the system will experience in its lifetime.
The approach is to divide the range of sea states that the system will experience into a number of wave classes -
typically this is done with a wave scatter table.
For both regular and rainflow analysis you typically represent each wave class with a distinct OrcaFlex simulation
file. For regular analysis the simulation should use a regular wave representative of the wave class and for rainflow
analysis the simulation should use an irregular wave representative of the wave class.
For spectral analysis multiple wave classes with similar Hs values may be represented by a single response
calculation simulation. The reason this is possible is that the spectral response analysis provides information about
how the system responds to a range of wave frequencies. Typically you will have a range of simulations which cover
the range of Hs values in your wave scatter table.
Each load case is assigned an exposure level. For regular load cases this is the total number of occurrences of waves
within the class and for rainflow and spectral load cases this is the total time exposed to waves within the class.
8.1 COMMANDS
File Menu
New
Clears previously entered Fatigue Analysis data and resets data to default values.
Fatigue Analysis, Data
w

388
Open
Opens a Fatigue Analysis file (.ftg). If the file contains results then these will be available without having to perform
the time-consuming calculation again.
Save
Saves the data to the currently selected file name (shown in title bar of the window). If results have been calculated
then these are also saved to the file. This allows you to view results at a later date without having to perform the
calculation again.
Save As
This is the same as Save, but allows you to specify the file name to save to.
Open Data
If the file contains results and there are a large number of load cases then the file can take a long time to load. If you
want to work with just the input data then this command loads just the input data which is a much quicker process.
Most Recent Files List
A list of the most recently used files. Selecting an item on the list causes the file to be loaded. The size of the list can
be adjusted from the Preferences form.
Analysis Menu
Estimate Calculation Time
Gives an estimate of how long it will take to do the fatigue analysis and present the results. This is useful for long
analyses, e.g. rainflow analyses involving a lot of cases or long simulations.
Check
The Check command performs a preliminary check of the fatigue analysis data. For example it checks that all the
specified load case simulation files exist and that the named line and the specified arc length intervals exist in each
load case.
The Check command is generally much quicker that the fatigue analysis itself, so we recommend that the Check
command is used before the Fatigue Analysis is run, since the check can often detect data errors that would
otherwise only be found part way through what may be quite a long fatigue analysis. It is particularly important to
use the Check command when a new fatigue analysis has been first set up or when significant changes have been
made to the data.
Calculate
The Calculate command starts the Fatigue Analysis. The fatigue analysis can take a long time if there are many load
cases, or if there are many log samples in the load case simulations, or finally if there are a lot of segments in the arc
length intervals specified. A progress window is displayed and you can cancel the analysis if desired.
When the calculation is complete the results are displayed in a spreadsheet window.
8.2 DATA
Title
Used to label all output of the fatigue analysis.
Analysis Type
Three types of fatigue analysis are available:
- Regular analysis must be based on a series of regular wave simulations that represent the various load cases
that will occur. For each of these load cases a single-occurrence damage value is calculated based on the last
wave cycle in the simulation. This damage value is then scaled up by the specified number of cycles expected to
w
Fatigue Analysis, Common Load Cases Data
389
occur during the structure's life, and this gives the total load case damage value. Finally these total load case
damage values are then summed for each load case to give the overall total damage.
- Rainflow analysis is normally based on a series of random wave simulations. It uses a cycle counting technique
to break down each random wave case into a series of half cycles, and then sums the damage from each half
cycle according to the Palmgren-Miner law. For details see the book by Maddox and the paper by Rychlik. This
gives the damage value for that load case, which is then scaled to the specified total exposure time. Finally these
total load case damage values are then summed for each load case to give the overall total damage.
- Spectral analysis calculates damage in the frequency domain using statistical methods. The method requires a
power spectral density function (PSD) for a particular stress variable. The PSD is obtained from a response
calculation simulation. This calculates RAOs for the stress variables of interest and these are then combined
with the load case wave spectrum to give PSDs for stress. These PSDs are then used to calculate damage using
either Dirlik's formula or the Rayleigh distribution. The damage is scaled to the specified total exposure time for
the load case. Finally these total load case damage values are then summed for each load case to give the overall
total damage.
Damage calculation
Damage is calculated from stress using S-N curves. There are two options for recovering stresses:
- Homogeneous pipe stress which assumes a pipe made of a straight, uniform, homogeneous, linear material.
The damage calculation is based on ZZ Stress. This option is appropriate for metal risers.
- An approach based on stress factors. Here the stress is assumed to comprise a direct tensile contribution
(proportional to wall tension) and a bending contribution (proportional to curvature). This approach is
commonly used for umbilicals but could also be used for unbonded flexibles.
A third option, externally calculated stress, is offered but this option is still under development and is not
available for general use.
Units
The units to be used for the fatigue analysis, for both the fatigue analysis data and for its results. The units are
specified in the same way as elsewhere in OrcaFlex.
Note that the units specified for the fatigue analysis need not match the units that were used in the various load case
simulation files. If they do not match, then the stress results from that simulation file will automatically be converted
to the units specified for the fatigue analysis. This is useful, since it allows the fatigue analysis to be done using m
and MN as the length and force units (giving stresses in MN/m
2
= MPa), for example, even if the simulation load
cases use m and kN (which corresponds to stresses in kN/m
2
= kPa). Similarly, in US units, the fatigue analysis can
use inches (giving stresses in ksi) even if the simulation files use feet as the length unit.
If you change units, then all existing fatigue analysis data is automatically changed to match the new units. This is
useful if you want to enter data in some other set of units, since you can simply change to the units of the new data,
then enter the new data, and then change back to the original units again.
Stress Range Distribution (spectral analysis only)
The spectral fatigue calculation assumes that stress ranges follow a statistical distribution which is specified by this
data item. The distribution can be either Dirlik's formula or the Rayleigh distribution. The Rayleigh distribution
is appropriate if the variation of stress is a narrow banded random Gaussian process. Dirlik's formula is applicable
even if the variation of stress is not a narrow banded process. For this reason we recommend using Dirlik's formula.
8.3 COMMON LOAD CASES DATA
The Load Cases data page specifies the load cases which are to be analysed.
Add Load Case(s), Remove Load Case(s)
The Add Load Case(s) button is used to add load cases to the Fatigue Analysis. You select which OrcaFlex
simulation files represent the load cases and extra rows are added to the load case table. The Remove Load Case(s)
button removes the currently-selected load case(s) from the load case table.
Simulation File Name
The name of the simulation file which represents the load case. The file name can either be typed in or else set by
using the Add Load Case button. If you type it in you can either specify the full path or a relative path.
Fatigue Analysis, Load Cases Data for Regular Analysis
w

390
Line Name
The name, in this load case simulation file, of the line to be analysed.
Note: Normally the line name will be the same in all of the load cases (though this is not necessary).
However the named lines in the various load cases must, of course, all represent the same physical
line. And they must also have the same segmentation in the areas being analysed.
8.4 LOAD CASES DATA FOR REGULAR ANALYSIS
Number of Cycles
The number of wave cycles, of this particular set of load conditions, that the line will experience.
8.5 LOAD CASES DATA FOR RAINFLOW ANALYSIS
Simulation Period
The period of the pre-run simulation file that defines the load case.
Exposure Time
The total time the system is exposed to this load case.
8.6 LOAD CASES DATA FOR SPECTRAL ANALYSIS
Exposure Time
The total time the system is exposed to this load case.
Spectral Form, Spectral Parameters
For spectral analysis the simulation file specifies a response calculation simulation file from which stress RAOs are
derived. The spectral fatigue calculation then proceeds by combining these RAOs with a wave spectrum to produce
stress power spectral density (PSD) functions.
Spectral Form can be one of JONSWAP, ISSC, Ochi-Hubble or Torsethaugen. This specifies the general form of the
wave spectrum.
The parameters for the chosen spectral form are specified as follows:
- If JONSWAP is selected then Spectral Parameters can be either Automatic, Partially Specified or Fully
Specified. This determines exactly how the spectral parameters for each load case are specified. For example, if
Automatic is selected then you specify Hs and Tz and the other JONSWAP parameters are calculated
automatically and reported. For details see Data for JONSWAP and ISSC Spectra.
- If ISSC is selected then you must specify Hs and Tz for each load case. You can also specify fm or Tp but since Tz,
Tp and fm are tied together then setting any one of them changes the other two to match. For details see Data for
JONSWAP and ISSC Spectra.
- If Ochi-Hubble is selected then Spectral Parameters can be either Automatic, or Specified. Again, this
determines exactly how the spectral parameters for each load case are specified. If you select Automatic the
program calculates the parameters of the most probable spectrum, based on the overall significant wave height
Hs that you have specified. If you select Specified you must specify all 6 parameters and OrcaFlex then derives
and displays the corresponding overall Hs and Tz values. For details see Data for Ochi-Hubble Spectrum.
- If Torsethaugen is selected then you must specify Hs and Tp for each load case. You can also specify fm but since
Tp and fm are tied together then setting either one changes the other to match. For details see Data for
Torsethaugen Spectrum.
Setting up load cases for Spectral Analysis
When performing a spectral fatigue analysis you will typically have a wave scatter table describing the relative
probability of storm occurrence. This determines a number of wave classes, e.g. storms defined by Hs,Tz pairs.
The load cases data should be setup to match load cases with wave classes. For example, suppose that you were
working with the following (truncated) wave scatter table:
4-5 9 3
w
Fatigue Analysis, Load Cases Data for Spectral Analysis
391
3-4 6 18 6
Hs 2-3 22 132 117
1-2 3 57 201 249
0-1 15 48 69 45
4-5 5-6 6-7 7-8
Tz
The values in the table represent joint probabilities in parts per thousand, so that a value of 201 represents a
probability of 0.201.
This wave scatter table gives 16 wave classes and so the fatigue analysis data in OrcaFlex would be setup with 16
corresponding load cases with appropriate Hs and Tz values.
Simulation files for spectral fatigue analysis load cases
The simulation files used to represent a load case for spectral fatigue analysis should model all aspects of the system
and environment other than the wave spectrum. So you must specify vessel offset, current profile and direction,
wave direction and so on which are appropriate for the load case being analysed.
The wave type for the load case simulation file must be response calculation. This effectively calculates system
responses (i.e. RAOs) for a range of wave frequencies. The spectral fatigue analysis then combines these RAOs with
the load case wave spectra (i.e. the Hs,Tz pairs) to produce fatigue damage estimates for the load case.
Choice of Hs for response calculation simulation files
The Spectral Response Analysis method which is used to calculate system responses (RAOs) includes non-linear
effects such as hydrodynamic drag. In order for these non-linear effects to be well modelled the choice of Hs for the
response calculation simulation files is important. Essentially the RAOs can be considered as being dependent on
wave height. How significant this dependence is will vary from case to case. Certain systems are dominated by linear
physical effects and the RAOs may not in fact be dependent on wave height. To determine how significant this effect
is we would recommend sensitivity studies.
In the example above we might choose to run a response calculation simulation for each row of the wave scatter
table (assuming that the system had significant non-linearities). This would give 5 simulation files for Hs ranges 0-1,
1-2, 2-3, 3-4 and 4-5. There are 4 wave classes corresponding to the 0-1 Hs range. The load case corresponding to
each of these wave classes would then be represented by the same simulation file. The other Hs ranges are dealt
with similarly and so the load cases table would look as below:
Fatigue Analysis, Components Data
w

392

Figure: Example load cases table
If the non-linearities in the system are not so significant then you may be able to obtain accurate results with fewer
simulation files. This may be desirable to reduce the amount of time taken to run the simulations. For example the
Hs1, Hs2 and Hs3 simulations could be combined into a single Hs2 simulation etc. Again, the accuracy of such a
simplification should be tested with sensitivity studies.
Response calculation simulation duration
The other decision to make is over the length of the response calculation simulations. You need to simulate for long
enough to get accurate results. As for the issue of Hs discussed above we would recommend using sensitivity studies
to determine how long is required.
8.7 COMPONENTS DATA
The Components Data page is only available when damage is calculated using stress factors.
You define a number of components for which damage is to be calculated. Components can be used to represent
different layers or components in the cross-section of an umbilical or a flexible.
Component Name
This is used to identify the component in the results.
Tension and Curvature Stress Factors
The stresses used to calculate damage are calculated according to the formula:
S = KtTw + Kc(Cxsin - Cycos )
where
S is stress,
Kt and Kc are the tension and curvature stress factors, respectively,
w
Fatigue Analysis, Analysis Data
393
Tw is wall tension,
Cx and Cy are the components of curvature in the line's local x and y directions, respectively, and
is the circumferential location of the fatigue point.
In effect this formula defines stress to be the sum of contributions due to direct tensile strain and bending strain.
The circumferential variation (i.e. the terms which refer to ) is to account for the fact that bending strain varies
with . So, for a point in the plane of bending, stress is given by S = KtTw Kc|C|, where C is the curvature vector (Cx,
Cy). Similarly, for a point at 90 to the plane of bending, stress is given by S = KtTw.
The stress factors will typically be calculated from experimental data or from detailed analytic models of the
umbilical or riser cross-section. Suppliers of such products are usually able to provide the necessary stress factors.
S-N Curve
Specifies which S-N curve is used for damage calculations for this component.
8.8 ANALYSIS DATA
The Analysis Data page contains the following data items, which specify the parts of the line to be analysed.
Critical Damage
Is a warning level. If the total damage at any fatigue point exceeds the Critical Damage then that damage figure will
be highlighted in the results.
Number of Thetas
The number of points (N) around the pipe circumference, at which fatigue analysis will be performed. There will be
N fatigue points uniformly distributed at 360/N intervals around the pipe circumference. A larger number of thetas
gives a more comprehensive analysis, but takes a little longer.
Radial Position (homogeneous pipe stresses only)
Specifies whether the fatigue analysis is performed at the inner or outer fibre of the pipe.
Arc Length Intervals
You define the parts of the line that are to be analysed by specifying a number of non-overlapping Arc Length
Intervals in the form of From and To arc length values. OrcaFlex will analyse cross-sections at each line end and
mid-segment whose arc length S is in the range From S To.
For simple cases you can use just one arc length interval covering the whole line. However it is often clear which
part, or parts, of the line are liable to fatigue problems. If calculation time is significant then you can save calculation
time by analysing those parts of the line.
Warning: The included arc lengths must be the same in each load case, so the line to be analysed should have
the same number and distribution of segments in each of the load case simulations.
SCF and Thickness Correction Factor (homogeneous pipe stresses only)
When stress ranges are used with the S-N curve to calculate damage, the stress ranges are scaled by the Stress
Concentration Factor (SCF) and the Thickness Correction Factor before calculating damage.
If no stress correction is required then these factors should both be set to 1.
Notes: To use different stress correction factors for different parts of the line, you will need to specify
separate arc length intervals for those parts.
S-N Curve (homogeneous pipe stresses only)
Specifies which S-N curve is used for damage calculations in this arc length interval.
8.9 S-N CURVES
An S-N curve defines the number of cycles to failure, N(S), when a material is repeatedly cycled through a given
stress range S. OrcaFlex uses the S-N curve to calculate the damage in a fatigue analysis. If needed you can define a
number of different S-N curves and use them at different arc lengths along a line.
Fatigue Analysis, Integration Parameters
w

394
With each S-N curve you must also specify an associated stress endurance limit, FL, which is the stress range below
which no damage occurs.
The S-N curve itself can be specified either by parameters or by a table.
When the curve is defined by parameters the user specifies two parameters, A and b, and the curve is then given by
either of the following equivalent formulae:
N = 10
A
/ S
b

Log10(N) = A - b Log10(S)
When the curve is specified by a table the user gives a table of corresponding values of S and N. For other values of S
we use log linear interpolation or extrapolation to find the value of N.
For details of how the S-N curve is used to calculate the damage see How Damage is Calculated.
The Graph button displays the selected S-N curve on a log-log graph.
S-N Curve Units
The S-N curve parameters entered must be consistent with the fatigue analysis units. S-N curve parameters are
typically quoted with respect to stresses in MPa, but you might be doing the fatigue analysis using some other stress
units. You can handle this problem as follows. First change the fatigue analysis units and set the units system to be
'User', the length units to be 'mm' and the force units to be 'N'. This corresponds to stresses in MPa, so you can then
enter the S-N parameters in terms of MPa. Finally, restore the units to those that you want for the fatigue analysis.
The parameters will automatically be converted to allow for the change in units.
8.10 INTEGRATION PARAMETERS
Integration parameters are only available when the spectral fatigue analysis option is selected. Normally you should
not need to modify the parameters from their default values. However, if the spectral fatigue calculation has
problems with convergence then it may prove productive to try different values for these parameters.
We recommend that you contact Orcina for further details should you encounter problems with spectral fatigue
convergence.
8.11 RESULTS
Fatigue results are presented in a separate window. Results are available in either graphical or tabular form.
Graphical output
The graphical output produces plots of fatigue damage or fatigue life against arc length range graphs of fatigue.
We denote a damage value at arc length z and circumferential position as D(z,). This could be overall total damage
or the total exposure damage value for an individual load case. The damage graphs all plot D(z) = max D(z,), that is
the maximum damage value at a given arc length z.
The life graphs plot the corresponding life values T/D(z) where T is the exposure time. For individual load cases T is
the exposure time for the load case. For total life T is the total exposure time of all the load cases.
Graphs are available for:
- Total damage/life: the overall total damage/life.
- Individual load case damage/life: the total exposure damage/life from the specified load case.
- Worst cases: the total exposure damage value from the five most damaging load cases. By most damaging we
mean the load cases with the largest values of maxz, D(z,), the maximum damage value over all z,.
The graphs can be customised in a number of ways:
- The arc length axis can be either horizontal or vertical, the latter option being more appropriate for vertical
risers.
- The arc length axis can be inverted. When it is inverted increasing values run from right to left (if it is
horizontal) and top to bottom (if it is vertical). Again this is particularly useful for vertical risers with arc length
values that increase from the top end to the bottom end.
- Fatigue damage/life can optionally be plotted on a logarithmic scale.
w
Fatigue Analysis, Fatigue Points
395
- Individual arc length intervals can be plotted.
Tabular output
The tabular output is presented in a spreadsheet that has one Damage Tables sheet, plus one Load Case sheet for
each load case. There is also a sheet echoing the S-N curve data.
Load Case sheets
The Load Case sheets contain the derived stress results for each fatigue point that has been analysed, together with
general information such as the environmental data that applied to that load case.
There is one table of stress results for each arc length covered by the specified arc length intervals. Each such table
contains a row of results for each fatigue point in that arc length cross-section. These results are the stress ranges
(for each of the stress components), the maximum stress range and the resulting load case damage values.
In addition to the detailed tables a damage summary table is presented which tabulates the load case damage at
each fatigue point.
Damage Table sheet
The Damage Table sheet starts with an Excessive Damage table, which lists any fatigue points at which the overall
total damage has exceeded the specified critical damage value. Details of where on the line the worst total damage
occurred are also reported.
A table summarising the overall damage over total exposure for all arc lengths is presented.
Finally, the Damage Table sheet provides damage tables for each arc length cross-section analysed. These report, for
each fatigue point in the cross-section, the total exposure damage value from each load case and the overall total
damage.
In all of these tables, overall total damage values that exceed the specified critical damage value are highlighted in
red.
Printing and Exporting
To save the results you will need to export the spreadsheet as an Excel sheet. If you want to print the results then for
best results you should first export them and then use Excel to do the printing.
Customising results output
The tabular results output can be customised using the options on the Results page of the main fatigue form.
Output detailed load case tables
If this option is deselected then the detailed load case sheets are omitted from the fatigue results. This can
significantly reduce the time and memory required to generate the results tables.
Output detailed load case stress tables
If this option is deselected then the detailed stress tables on the load case sheets are omitted from the fatigue
results. This can significantly reduce the time and memory required to generate the results tables.
Load case damage units
Load case damage values can be reported as damage per hour, damage per day or damage per year, as specified by
this data item.
8.12 FATIGUE POINTS
Damage is calculated at a number of line end and mid-segment cross-sections along the line, as specified by defining
Arc Length Intervals in the Analysis Data. Each included arc length defines a cross-section through the pipe.
Damage calculated by homogeneous pipe stresses
Each cross-section is described by polar coordinates (R, ) where R is the radial distance from the centre-line and
is measured from the line's local x-axis towards its y-axis.
OrcaFlex calculates the damage at either the inner or outer fibre of the pipe and so R is either ODstress/2 or IDstress/2.
For we calculate damage at equally spaced intervals determined by the specified Number of Thetas. For example, if
you specify 16 theta values, then they will be equally spaced at 360/16 = 22.5 intervals 0, 22.5, 45 etc.
Fatigue Analysis, How Damage is Calculated
w

396
Damage calculated by stress factors
For stress factor fatigue the radial position is implicit in the stress factors and so is not explicitly used in the
calculation. Damage is calculated at circumferential locations determined by the specified Number of Thetas.
8.13 HOW DAMAGE IS CALCULATED
For each load case and fatigue point OrcaFlex calculates damage values as follows:
- The time history of stress, in that load case, at that fatigue point, is calculated. For homogeneous pipes the ZZ
stress variable is used. For stress factor fatigue then the stress is calculated based on those stress factors.
- The damage value corresponding to the stress time history is calculated see below for details. This value is the
damage value at that fatigue point due to one occurrence of that load case.
- The load case damage values are scaled to allow for the exposure associated with that load case.
- The above step gives the total exposure damage value from that load case at this fatigue point.
- Finally, these total exposure load case damage values are summed over all load cases to obtain the overall total
damage value at that fatigue point.
Damage Calculation
The S-N curve defines the number of cycles to failure, N(S), for a given stress range S, and also defines a endurance
limit, FL, below which no damage occurs. OrcaFlex uses these to calculate a damage value given by:
D(S) = 1/N(S) if S > FL
D(S) = 0 if S FL
This damage value can be thought of as the proportion of the fatigue life that is used up by 1 cycle of stress range S.
If the S-N curve is defined by parameters then for S > FL we have:
Log10(N) = A - b Log10(S)
so D(S) can be expressed in the following form:
D(S) = 10
-A
S
b
.
Regular analysis
The minimum and maximum values of stress over the last simulated wave cycle define a stress range S. The
associated single-occurrence load case damage value is then given by D(S) where is the stress concentration
factor.
Rainflow analysis
The stress time history is analysed using the rainflow cycle counting method. This gives a number of stress ranges
for half cycles, say Si where i runs from 1 to the number of stress ranges. The associated single-occurrence load case
damage value is then given by D(Si) where the summation is over all the half cycles. Note that the factor of one
half is present because the rainflow algorithm counts half cycles rather than full-cycles.
Spectral analysis
For spectral analysis damage is calculated in the frequency domain using statistical methods. The calculation
requires a power spectral density function (PSD) for stress. The PSD is obtained from a response calculation
simulation. This calculates RAOs for stress which is then combined with the load case wave spectrum to give the
PSD for stress. These PSD are then used to calculate damage using either Dirlik's formula or the Rayleigh
distribution.
For detailed references on how spectral fatigue analysis calculates damage from stress PSDs please refer to:
- Barltrop and Adams (1991) which has an excellent section on spectral fatigue analysis.
- Dirlik (1985) is the original reference for Dirlik's stress range distribution formula.
w
VIV Toolbox, Frequency Domain Models
397
9 VIV TOOLBOX
The OrcaFlex VIV Toolbox provides analysis of vortex induced vibration (VIV) of lines. It offers a choice of various
alternative ways of modelling VIV, including both frequency and time domain approaches, and has been developed
in co-operation with academics in the UK and USA. The VIV Toolbox is included as standard in OrcaFlex.
A separate user guide for the time domain VIV models is available (Time Domain VIV Models.pdf).
Different VIV Models
The VIV Toolbox provides facilities for using the following different VIV models:
- VIVA. The VIV Toolbox provides a fully integrated link to VIVA. OrcaFlex automatically prepares the VIVA data
from the OrcaFlex data, calls VIVA and presents the results. To use this you will need a copy of VIVA, release
2.0.6 or later.
- SHEAR7. The VIV Toolbox provides facilities for exporting SHEAR7 structural data files and SHEAR7 .mds files
based on an OrcaFlex model. SHEAR7 can then be run manually using these files as input, or called directly from
OrcaFlex.
- Two wake oscillator models, the Milan model and the Iwan and Blevins model.
- Two vortex tracking models.
Of all these models, VIVA and SHEAR7 are the two main programs in current use in the industry. They are both
independent non-Orcina programs written and distributed by other companies, so to use them you need to
purchase and install them on your machine. They are both frequency domain models, so they only analyse steady
state conditions.
The other models are included in the VIV Toolbox within OrcaFlex, so no further software is needed. They are all
time-domain models, so they can analyse non-steady-state conditions. They do not yet have a track record in the
industry.
For details, see documentation of the individual models in the sections that follow.
Using VIV Models
You choose which VIV model to use (if any) on the VIV page on the line data form. There are separate choices for the
static and dynamic analyses and so you do not have to use the same model for the two analyses. The time-domain
models are only applicable to the dynamic analysis.
9.1 FREQUENCY DOMAIN MODELS
9.1.1 VIVA
VIVA is an independent frequency domain program developed by Prof. M Triantafyllou at MIT and distributed by JD
Marine (formerly DTCEL).
Orcina is a participating member of a Joint Industry Project run by DTCEL and Prof. Triantafyllou of MIT. The project
began mid-year 2000. Phase 1 was completed mid-year 2001 and a second phase is in progress.
As part of the project, a software link has been written between OrcaFlex and VIVA. The software link allows a riser
model to be built in OrcaFlex taking advantage of the existing interactive user interface. OrcaFlex then calls VIVA
which carries out a frequency domain calculation of VIV response based on an energy balance. Results are reported
in spreadsheet form for each single excited mode of vibration. A combined multi-mode response is also reported.
Results include amplitudes of vibration and mean effective drag coefficients. The drag coefficients can be
automatically used by OrcaFlex in further static and dynamic analysis.
The VIVA calculation can be repeated at intervals through an OrcaFlex analysis to update the drag coefficients.
OrcaFlex runs as usual in the time domain, but makes a call periodically to VIVA which repeats the VIV calculation
for the instantaneous riser configuration. The drag coefficient distribution is then read back into OrcaFlex which
continues with the analysis.
OrcaFlex VIVA Interface
The OrcaFlex interface to VIVA requires VIVA to be installed on your machine and available in the form of a dynamic
link library (DLL) called v3ddll.dll. This DLL file, and the VIVA database files that it uses, must be located in the same
directory as the OrcaFlex.exe program file.
VIV Toolbox, Frequency Domain Models
w

398
The current version of OrcaFlex is compatible, and has been tested with, the VIVA DLL version 2.0.6. Later versions
of the DLL can be used - OrcaFlex checks for interface compatibility before calling the DLL, and reports an error if
the DLL found is not compatible.
To use VIVA for VIV analysis of a line, set the line's Statics VIV or Dynamics VIV data item (or both) to VIVA. Then set
up the VIVA data that appears.
VIVA will then be called when you do the OrcaFlex static or dynamic analysis, and the drag coefficients predicted by
VIVA (for the specified Target Mode) will be used instead of the user-specified drag coefficients from the line type
form. These VIVA drag coefficients, and other results calculated by VIVA, are available in OrcaFlex - see VIVA
Results.
VIVA in Static Analysis
When Statics VIV is set to VIVA, OrcaFlex calculates the static position of the line using the drag coefficients
calculated by VIVA. A fully coupled statics calculation is performed since VIVA's analysis depends on the position of
the line and vice versa. The coupled static analysis is done as follows:
1. First OrcaFlex sets the line's drag coefficients to those specified on the OrcaFlex line type form.
2. OrcaFlex then calculates the static position of the line using those drag coefficients.
3. OrcaFlex then calls VIVA to analyse VIV for that position and the line drag coefficients are updated to those
calculated by VIVA for the specified Target Mode.
4. OrcaFlex then recalculates the static position of the line for those new drag coefficients.
5. Steps 3 and 4 are then repeated until the static position has converged.
The iteration is deemed to have converged when none of the nodes has changed position (compared with the
previous iteration) by more than Convergence Tolerance * NodeLength, where NodeLength is the length of line
represented by that node. The method usually requires only 2 or 3 coupling iterations to converge.
VIVA in Dynamic Analysis
When Dynamics VIV is set to VIVA, OrcaFlex calls VIVA at regular intervals, as specified by the Dynamics Time
Interval. After each call the drag coefficients of the line are updated to those calculated by VIVA for the specified
Target Mode.
Note that VIVA is a frequency domain program and so can only handle steady state conditions. It is therefore
unrealistic to use VIVA in dynamic analysis unless the conditions change only slowly compared to the Strouhal
period. See also Use Relative Fluid Velocity and Include Wave in Fluid Velocity.
Limitations
When using the OrcaFlex interface to VIVA please note the following limitations:
- The VIVA analysis involves a modal analysis of the line. Currently this modal analysis is done by VIVA but this
has limitations - see VIVA modal analysis limitations.
- There are difficulties in passing to VIVA details of attachments to the line (e.g. clumps, buoys, links, winches), so
attachment are ignored by the VIVA analysis.
- The VIVA DLL is not currently capable of handling multiple simultaneous use, so you should not use the VIVA
interface from more than one copy of OrcaFlex at a time running on a single machine.
VIVA Data
The VIVA data is the data that VIVA needs and which OrcaFlex cannot deduce automatically from the ordinary
OrcaFlex data. It is described below and appears on the VIV page on the line data form when you select VIVA for
Statics VIV or Dynamics VIV.
When using VIVA please note the following:
- You should set up the line with End A at the top and End B at the bottom.
- All the sections in the line must have the same segment length. This is a requirement of VIVA.
- If the line touches down on the seabed then OrcaFlex passes only the suspended part of the line to VIVA for
analysis. The rest of the line is not passed to VIVA. By 'suspended part' here is meant the part between End A
w
VIV Toolbox, Frequency Domain Models
399
and the first node in contact with the seabed. Note that if there are multiple touchdowns then the VIVA analysis
is only applied to the part of the line up to the first touchdown point.
- When there is seabed contact OrcaFlex tells VIVA to treat the touchdown point as pinned. This is as in the
touchdown example in the VIVA documentation.
- You need to use enough segments in the suspended part of the line. There is a lower limit in VIVA of 100
segments, and if the line has fewer than this then VIVA reports an error and no VIV calculation is done. If the
line has 100 or more segments then VIVA checks whether there are enough segments to reasonably model VIV;
and if not then VIVA gives a warning but the calculation continues. For details see the VIVA documentation.
- When modelling Vetco type risers (i.e. with auxiliary pipes attached), you need to set the OrcaFlex line end
orientation to match the orientation of the auxiliary pipes. For details see Modelling Vetco Risers.
- OrcaFlex passes VIVA the fluid density and viscosity at each node. For fully submerged nodes OrcaFlex passes
the sea density and kinematic viscosity at that point. For a node out of the water OrcaFlex passes the air density
specified in the OrcaFlex data and a hard-coded viscosity value of 1.5e-5 m
2
/s (Source: Batchelor, page 594, air
at 20C). For a partially submerged node OrcaFlex interpolates between the two, based on the node's
Proportion Wet.
Whole Line Properties
Target Mode
VIVA predicts which modes of oscillation might be excited and it gives separate VIV results for each possible excited
mode. In addition it gives VIV results for 'multi-mode' response, i.e. response that is a mixture of the possible modes.
You must specify which set of VIVA Cd results to use, based on the type of response you expect, by setting the Target
Mode data item. The Target Mode can be set to a mode number, meaning use the single mode results for that mode
number. Or it can be set to '~', meaning use the multi-mode results.
If you set the Target Mode to a mode number that VIVA does not predict will be excited then OrcaFlex will report a
warning and use the line type Cd values.
Dynamics Time Interval
This data item only applies when Dynamics VIV is set to VIVA. It specifies how often VIVA will be called during the
OrcaFlex simulation.
VIVA will be called after every T seconds of simulation, where T is the specified dynamics time interval. After each
call to VIVA, the drag coefficients used by the line will be updated to those calculated by VIVA for the specified
Target Mode.
Convergence Tolerance
This data item only applies when Statics VIV is set to VIVA. It specifies the tolerance used in the statics iteration. For
details see VIVA in Static Analysis.
Transverse Damping Ratio
The structural damping ratio that VIVA should use. It is a single value that applies to the whole line. For details see
the VIVA documentation, where it is referred to as ZETA.
VIVA Z Axis Direction
This data item specifies the direction of the VIVA global Z-axis.
VIVA uses its own global, right-handed frame of reference, in which the X-axis is vertically upwards (i.e. in the
OrcaFlex global Z-axis direction) and the Y and Z axes are horizontal.
VIVA recommends that the VIVA Z-axis is chosen to be in the downstream flow direction, if that is well-defined. For
constant uniform flow there is a unique flow direction, so it is well-defined. If the flow direction varies along the line
then there is no unique flow direction. In this case it is probably best to set the VIVA Z-axis to be in the average flow
direction.
A value of '~' is interpreted to mean the current direction at the sea surface.
VIV Toolbox, Frequency Domain Models
w

400
Use Relative Fluid Velocity, Include Wave in Fluid Velocity
VIVA needs to know the flow velocity at each point along the line. You can choose to either use the relative velocity,
including the velocity of the line, or else use only the fluid velocity, ignoring any velocity of the line. You can also
choose whether to include any wave contribution to the fluid velocity.
Ideally the relative velocity should be used and the wave should be included, since in reality it is the total relative
velocity that generates vortices. However VIVA is a frequency domain program and so can only handle steady state
conditions, whereas OrcaFlex can handle time-varying conditions. VIVA effectively assumes that the flow velocity it
is given is constant for long enough for VIV to settle. It therefore cannot correctly analyse cases where the flow
velocity includes time-varying components whose periods are comparable with or shorter than the Strouhal period.
(The same applies to SHEAR7, since it too uses a frequency domain analysis.)
We therefore provide these two switches, to allow you to control whether line motion and wave effects are included
in the flow velocity given to VIVA. If the line motion or wave include significant velocity components that are not
'slow' compared to the expected VIV period, then you might want exclude the line motion or wave. This is still not
ideal, since their effects are then ignored. The alternative is to use a time-domain model, such as a wake oscillator
model or the vortex tracking models.
Section-Specific Properties
For each section of the line, you must specify the VIVA section type and its properties. The OrcaFlex line type and
length of the sections are displayed for information, but they are not editable (to edit them see the Structure page on
the OrcaFlex line data form).
VIV Diameter
The VIV diameter specifies the diameter used by the VIV model. Separate values can be specified for each section.
The value specified is used for all nodes in that section. For a node at the intersection of two sections the VIV
diameter of the following section is used. The VIV Diameter can be set to '~', which is taken to mean 'same as the
section outer diameter'.
Section Type
The VIVA section type can be one of:
- Smooth: No further VIVA section data is needed.
- Strake: You must also specify the height to diameter ratio for the strakes.
- Fairing: You must also specify the chord length and thickness of the fairing.
- Vetco: No further VIVA section data is needed, but the line orientation must match the orientation of the Vetco
riser. See Modelling Vetco Risers below.
For details of this VIVA data see the VIVA documentation.
Modelling Vetco Risers
Vetco risers have auxiliary pipes attached and VIVA needs to know the direction of the flow, relative to the
orientation of the auxiliary pipes. The diagram below shows a section through the line, looking towards End B. VIVA
needs to know the angle Alpha.
OrcaFlex calculates this angle automatically by assuming that the auxiliary pipes are oriented, relative to the
OrcaFlex local x and y-direction, as shown in the diagram. You must therefore set up the line end orientation data so
that the line's local x and y-directions are oriented as shown. In other words you should set up the line end
orientation data so that the line local x-axis points through the larger of the two gaps between auxiliary pipes.
w
VIV Toolbox, Frequency Domain Models
401
Alpha
Flow
Direction
x
y

VIVA Results
The VIVA results are presented in OrcaFlex as extra worksheets in the Full Results tables. The worksheets give the
results from the latest VIVA call.
There is a separate worksheet for each excited mode, plus an extra worksheet for the multi-mode response. The
drag coefficients currently in use are those corresponding to the specified Target Mode.
The VIVA results are described briefly below. For details see the VIVA documentation.
Note: Amplitudes in VIVA results are single amplitudes, i.e. measured from the mean position to the peak.
Single Mode Results
The worksheet for a given single excited mode gives a table of 'Single Mode' results as a function of arc length along
the line. These are results predicted by VIVA if single-mode VIV response occurs in that mode. They include:
Max Amplitude
The amplitude of predicted VIV motion at that point.
Max Bend Moment, Max Stress
The dynamic bend moment and stress amplitudes due to VIV. Note that they do not include the bend moment and
stress due to the mean position of the line.
Drag Coefficient
The predicted drag coefficient, allowing for VIV.
Multi-Mode Results
The 'Multi-Mode' worksheet gives two tables. The second table is the multi-mode equivalent of the single mode
results table; it gives the same information, but this time for the case where multi-mode VIV response occurs.
The first table summarises the bending modes. It has the following columns:
Mode
This column shows which modes have been analysed. Those that VIVA calculates as possibly being excited are
marked with an asterisk.
Natural Mode Frequency With and Without VIV
These columns give the natural frequencies of the mode, as calculated by VIVA. Those 'Without VIV' are calculated
using VIVA's own default added mass coefficients (not those specified in the OrcaFlex line type data). Whereas in
those 'With VIV' the VIVA default added mass coefficients have been modified to allow for VIV.
VIV Toolbox, Frequency Domain Models
w

402
Warning: VIVA's modal analysis calculates bending modes only and does not allow for the mean curvature.
This omission is equivalent to VIVA calculating the out-of-plane modes, since there is no mean
curvature component in the out-of-plane direction. The natural frequencies in the VIVA results
therefore correspond to the out-of-plane bending modes predicted by the OrcaFlex modal analysis.
These are correct modes to use for in-plane flow (since VIV will then be in the out of plane
direction), but they are not the right modes to use for out-of-plane flow, since the VIV will then be
in-plane. The difference between the in-plane and out-of-plane bending modes depends on the
magnitude of the curvature and the wave length of the mode.
Max Amplitude
The largest offset of any node in this mode.
9.1.2 SHEAR7
SHEAR7 is an independent program, developed by Prof. K Vandiver at MIT and distributed by SBM Atlantia. The link
to SHEAR7 is based around OrcaFlex's ability to export SHEAR7 data files (.dat) and SHEAR7 mode shape files
(.mds).
Note: SHEAR7 must be licensed separately to OrcaFlex. Please contact SBM Atlantia for details.
When exporting a SHEAR7 data file the program assumes that you will also be using a mode shape file produced by
OrcaFlex. The procedure for linking SHEAR7 to your OrcaFlex model is as follows:
1. Build your OrcaFlex model as normal. SHEAR7 analyses VIV for one or more of your OrcaFlex Lines.
2. Input the appropriate values on the SHEAR7 data form.
3. Calculate the static position of the model.
4. Export a SHEAR7 data file and a SHEAR7 Mds file.
5. These files can now be used as inputs to SHEAR7.
Direct SHEAR7 interface
As an alternative to exporting files and running SHEAR7 manually, as described above, OrcaFlex is capable of calling
SHEAR7 directly. This capability is enabled by selecting the SHEAR7 statics VIV option on the VIV page of the Line
data form.
SHEAR7 executable file location, SHEAR7 lift file location
The direct SHEAR7 interface operates by executing the SHEAR7 executable file. In order to do this OrcaFlex must be
told where to locate the executable file. This data is specified on the SHEAR7 data form and is only available when
SHEAR7 is selected for the statics VIV option on the VIV page of the Line data form.
In addition SHEAR7 requires a file to specify lift coefficients, usually called "common.cl". Typically the lift file will be
the standard one supplied with SHEAR7. If the lift file location is left blank OrcaFlex attempts to use a file called
"common.cl" in the same directory as the executable file.
These file locations can be specified as either full paths or as paths relative to the directory containing the OrcaFlex
file.
These data are model-wide properties. A consequence of this is that if you wish to modify the values using batch
script then you need to select the General object rather than a Line object.
SHEAR7 coupling method
The SHEAR7 direct interface performs a coupled statics calculation since the SHEAR7 analysis depends on the
position of the line and vice versa. The coupled static analysis is done as follows:
1. First OrcaFlex sets the line's drag coefficients to those specified on the OrcaFlex line type form.
2. OrcaFlex then calculates the static position of the line using those drag coefficients.
3. OrcaFlex then calls SHEAR7 to analyse VIV for that position and the line drag coefficients are updated.
4. OrcaFlex then recalculates the static position of the line for those new drag coefficients.
5. Steps 3 and 4 are then repeated until the static position has converged.
w
VIV Toolbox, Frequency Domain Models
403
The iteration is deemed to have converged when none of the nodes has changed position (compared with the
previous iteration) by more than Convergence Tolerance * NodeLength, where NodeLength is the length of line
represented by that node. The method usually requires only 2 or 3 coupling iterations to converge.
The direct SHEAR7 interface offers a variety of coupling options which differ in how they handle the SHEAR7 .mds
file.
- The full coupling option generates a new .mds file at each coupling iteration, that is every time SHEAR7 is
called.
- The partial, automatic .mds file coupling option creates an .mds file on the first coupling iteration which is
then used in all subsequent coupling iterations.
- The partial, user .mds file coupling option uses an .mds file specified on the data form for all coupling
iterations.
The fully coupled approach does have the disadvantage that generating an .mds file at each coupling iteration can be
time consuming, especially for more complex models, and so the partially coupled approach can be significantly
faster.
The partially coupled approaches are more akin to running SHEAR7 manually. However, the ultimate static solution
will differ because it does include the effect of drag enhancement. When running SHEAR7 manually the only way to
account for drag enhancement is to manually modify drag coefficients in the OrcaFlex model which is extremely
impractical.
First and last modes
These data items specify which modes are to be included in the .mds file. These data are not required if you select the
partial, user .mds file coupling option.
A value of '~' for the first mode is interpreted as the lowest numbered transverse mode. A value of '~' for the last
mode is interpreted as the highest numbered transverse mode. By transverse we mean that the modal analysis
classifies the mode as either Transverse or Mostly Transverse.
These data items are interpreted in exactly the same way as the FirstMode and LastMode parameters to the
SHEAR7MdsFile batch script command.
SHEAR7 .mds file
The location of the .mds file to be passed to SHEAR7. This data is only required if you select the partial, user .mds
file coupling option.
The location can be specified as either a full path or as a path relative to the directory containing the OrcaFlex file.
The .mds file must be generated separately which is normally done either form the modal analysis form or using
batch script.
Although SHEAR7 requires .mds files to be named "common.mds" that restriction does not apply to OrcaFlex's direct
interface to SHEAR7. This is a significant benefit of the direct interface to SHEAR7 because it allows you to have
multiple .mds files in the same directory.
Results output
When OrcaFlex calls SHEAR7 it captures the SHEAR7 output file, .out and .plt. These output files are included in the
Full Results tables for the Line. These output files can also be exported from the SHEAR7 data form and by using the
SHEAR7OutFile and SHEAR7PltFile batch script commands.
The .out and .plt files are automatically exported if you run the static analysis in batch mode. The files are exported
with file names based on the model file name and the line name.
The enhanced drag coefficients can be obtained from a static state range graph of x-Drag Coefficient (or indeed y-
Drag Coefficient which is identical).
Technical details
The direct SHEAR7 interface operates by calling the SHEAR7 executable directly as follows:
1. A temporary directory is created to contain the SHEAR7 input and output files.
2. A SHEAR7 .dat file is generated in the temporary directory.
VIV Toolbox, Frequency Domain Models
w

404
3. The SHEAR7 .mds file is created in the temporary directory and called "Common.mds". How this .mds file is
created is determined by the chosen coupling option as described above.
4. The specified lift file is copied to the temporary directory and renamed as "Common.cl".
5. The SHEAR7 executable is run and the SHEAR7 .out and .plt files are read by OrcaFlex.
6. The .plt file is parsed by OrcaFlex to find the drag enhancements factors Cf.
This process depends very heavily on the current implementation details of SHEAR7. We have developed and tested
the SHEAR7 direct interface with SHEAR7 versions 4.4 and 4.5. We cannot guarantee that other versions of SHEAR7
will be compatible with the SHEAR7 direct interface.
OrcaFlex uses linear interpolation of the the Cf values if the locations read from the .plt file do not correspond to the
node locations in the OrcaFlex model. This can occur if the discretisation of a user-supplied .mds file differs from
that of the OrcaFlex model.
SHEAR7 data file
To export a SHEAR7 data files you must first provide extra data that SHEAR7 requires but which is not needed by
OrcaFlex. This is done from the SHEAR7 data form which can be opened from the Model Browser. Note that your
model must include at least one Line for the SHEAR7 data form to be available.
When you have input all the necessary data on the SHEAR7 data form you create the SHEAR7 data file by clicking on
the Export SHEAR7 Data File button. The model must be in Statics Complete state when you export the SHEAR7
data file but please note that data on the SHEAR7 data form is editable while in this state.
A more convenient way to work is to use the direct SHEAR7 interface which can automatically save the required
SHEAR7 input files, run SHEAR7, extract drag amplification factors and perform a coupled static analysis.
Include SHEAR7 data in text data file
By default the SHEAR7 data is not included in text data files saved by OrcaFlex. You can check this option to override
that default and ensure that SHEAR7 data is included in text data files.
If you are using the direct SHEAR7 interface then the SHEAR7 data is always included in text data files irrespective
of this setting.
Exporting from Batch Script
The SHEAR7 data file can be exported from an OrcaFlex batch script using the SHEAR7DataFile command.
SHEAR7 data
The majority of the information in a SHEAR7 data file can be derived from the data for an OrcaFlex Line. However,
there are a number of other values which SHEAR7 needs and these are documented below. Mostly these values are
given the same name as used by SHEAR7. For full details on how they are used please refer to the SHEAR7
documentation.
Line
Specifies the OrcaFlex Line to be described in the SHEAR7 data file.
SHEAR7 File Version
SHEAR7 changed the format of its data file with the release of SHEAR7 version 4.5. OrcaFlex can output data files for
either version 4.3/4.4 or version 4.5, as specified by this data.
Output summary Locations
These data specify the locations at which a summary of the response is given in the SHEAR7 .out file. A value of '~'
can be used for the Arc Length Range Start to mean 'End A'. Likewise, a value of '~' for Arc Length Range End
means 'End B'.
Reduced Velocity Bandwidths
For SHEAR7 version 4.3/4.4 you specify the single-mode and multi-mode reduced velocity bandwidth.
For SHEAR7 version 4.5 you specify just a single value for reduced velocity bandwidth.
Structural Damping Ratio
Corresponds to the SHEAR7 data item of the same name.
w
VIV Toolbox, Frequency Domain Models
405
Primary zone amplitude limit (SHEAR7 version 4.5 only)
Corresponds to the SHEAR7 data item of the same name.
Mode Behaviour Cut Off
Corresponds to the SHEAR7 data item called "Cutoff level".
Number of Lift Coefficient Tables (SHEAR7 version 4.3/4.4 only)
This is the number of tables you want SHEAR7 to read from the common.cl file.
Current Profile
The discretisation option allows you to control how the current profile is output. You can specify that the current
profile contains one entry for each node in the line. However this can give rise to numerical problems in SHEAR7,
especially for finely segmented models, and so it is preferable to discretise the current more coarsely using the
regular spacing option.
You also specify the probability of occurrence (a number between 0 and 1) of the flow profile and the flow profile ID.
Young's Modulus
Young's modulus for the strength member. SHEAR7 uses this for computing stress and damage rate.
Power Ratio exponent (SHEAR7 version 4.5 only)
Corresponds to the SHEAR7 data item of the same name.
S-N Curve
Specifies the S-N curve to be used by SHEAR7 for its fatigue calculations. An endurance limit can be specified - this is
called the "cutoff stress range" in the SHEAR7 documentation.
Stress Concentration Factors
Specify a global stress concentration factor for the line and optionally a number of local stress concentration factors.
Section Data
The following data is specified on a section by section basis. That is different values can be specified for each
OrcaFlex line section. The SHEAR7 terminology for this is sectional zones. In the SHEAR7 data file that OrcaFlex
produces there is a one-to-one correspondence between OrcaFlex line sections and SHEAR7 sectional zones.
VIV Diameter
The VIV diameter specifies the diameter used by the VIV model. Separate values can be specified for each section.
The value specified is used for all nodes in that section. For a node at the intersection of two sections the VIV
diameter of the following section is used. The VIV Diameter can be set to '~', which is taken to mean 'same as the
section outer diameter'.
Strouhal Type, Strouhal Number
The Strouhal type and number defines the relationship of flow velocity and cylinder diameter to the local vortex
shedding frequency. Strouhal Type can be Rough Cylinder or User Specified. Rough Cylinder corresponds to the
SHEAR7 Strouhal code 200. If User Specified is chosen then you must also specify a Strouhal Number.
Lift Coefficient Table, Lift Coefficient Factor
Lift Coefficient Table specifies which table is used from the common.cl file.
Lift Coefficient Factor corresponds to the SHEAR7 data item called Lift Coefficient Reduction Factor.
Reduced Velocity Damping Coefficients
Damping Coefficients for still water, low and high reduced velocity are specified.
SHEAR7 Mds file
The SHEAR7 Mds file export facility is provided on the Modal Analysis form. To use it:
- You will need to create a SHEAR7 data file. The simplest way to do this is to use the built-in facility to export
SHEAR7 data files.
VIV Toolbox, Frequency Domain Models
w

406
- Calculate the static position of the model.
- On the Results menu select the Modal Analysis.
- Do the modal analysis for the line you want to analyse. You must include calculation of the mode shapes and
include all modes that might to be needed by SHEAR7.
- Select the VIV page. For each mode, the VIV page reports the extent to which the mode is transverse (i.e. in the
VIV direction), inline (i.e. in the normal drag direction), axial, or some mixture. This helps you decide which
modes to export to SHEAR7. See Mode Selection Table below for details.
- The final column of the table shows which modes are currently selected to be exported to the .Mds file.
Whenever you calculate the modes OrcaFlex ticks just the Transverse and Mostly Transverse modes, but you
can then change the selection as required.
- Use the Export SHEAR7 Mds File button. A SHEAR7 .Mds file is generated for those modes that are currently
ticked for export. You are asked where to save the file. See Values Exported for details.
Warning: OrcaFlex does not calculate the mode slope; in its place OrcaFlex outputs zero. See Values Exported
for details.
Exporting from Batch Script
The SHEAR7 Mds file can be exported from an OrcaFlex batch script using the SHEAR7MdsFile command.
Mode Selection Table
VIV excitation occurs in the transverse direction. In SHEAR7 mode shapes are 1D since it assumes that all the modes
in the .Mds file are purely in that transverse direction. The OrcaFlex modal analysis is fully 3D, so in principle you
should therefore only export modes that are purely transverse.
In practice the natural modes do not always neatly divide into the transverse, inline and axial directions, so you will
sometimes have to export the modes that are nearest to being transverse. OrcaFlex therefore provides the mode
selection table to help you decide which modes should be exported to SHEAR7.
The table includes the following columns:
- Offset Distribution displays a measure of how inline, transverse and axial the mode is. For details see Offset
Distribution.
- Mode Type classifies each mode according to the offset distribution. Transverse means that the transverse
component is more than 90% of the total, Mostly Transverse means that it is between 50% and 90%, and
similarly for Inline, Mostly Inline, Axial and Mostly Axial. Mixed means that none of the components are more
than 50% of the total.
- Export to SHEAR7 Mds File determines which modes will be exported to SHEAR7. When you calculate (or
recalculate) the modes OrcaFlex ticks just the Transverse and Mostly Transverse modes, but you can then
change the selection as required. See Discussion and Examples.
Values Exported
The first line in the .Mds file contains the number of selected modes and the number of nodes in the line. Then
follows a section giving the angular frequencies of the selected modes, in radians per second. Finally there follows a
section for each selected mode, giving the Mode Offset, Mode Slope and Mode Curvature.
Warning: OrcaFlex does not calculate the mode slope; in its place OrcaFlex outputs zero. The mode slope is
only used in SHEAR7 to correct the predicted RMS acceleration for a vertical riser, in the special
case where one is trying to model the gravitational contamination from tilt that a transversely
mounted accelerometer would measure. See the SHEAR7 documentation for details. The RMS
acceleration is listed in the SHEAR7 .plt plotting files.
Exported Mode Offset and Mode Curvature
The OrcaFlex modal analysis gives vector values, but SHEAR7 requires scalar values. These are calculated as follows.
Let:
V = the mode shape vector calculated by OrcaFlex at a given node,
Vi Vt and Va = V's inline, transverse and axial component vectors, respectively,
w
VIV Toolbox, Frequency Domain Models
407
VL = lateral component vector of V, given by VL = Vi + Vt (vector sum),
m = maximum value of |VL| for any node,
C = curvature vector at the node, for the mean position (this is a vector in the direction normal to the plane
of curvature),
dC/dm = linear rate of change of C per unit maximum lateral mode offset. This rate of change (a vector)
equals the change in curvature vector at the node caused by applying the mode offsets V to all the nodes and
then dividing by m.
Then the scalar Mode Offset and Mode Curvature values exported by OrcaFlex to the Mds file are
Mode Offset = Sign(Vt).|VL| / m
Mode Curvature = Sign(inline component of dC/dm).|dC/dm|
The reasoning behind these formulae is as follows:
- SHEAR7 assumes that the exported mode offset is in the transverse direction. This assumption applies to the
power-in zone, since in this zone SHEAR7 assumes that the mode offset is in the direction of VIV excitation.
However SHEAR7's power-out calculation will still be valid providing the mode offset is lateral (i.e. no axial
component), since fluid drag and damping occur in any lateral direction.
- OrcaFlex should therefore ideally export the transverse component of mode offset for the power-in zone and
the lateral offset for the power-out zone. However OrcaFlex does not know the power-in and power-out zones,
since they are calculated inside SHEAR7, so it therefore outputs the lateral offset (suitably signed and
normalised) throughout. This correctly removes the axial component, and if there is no inline component then
no error is introduced.
- For a mode that has some inline components there will be an error introduced in the power-in calculation, since
SHEAR7 will assume that the lateral offset is in fact transverse. This error is equivalent to rotating the VIV
excitation to be in the lateral mode offset direction, so it should be conservative.
- The mode curvature values are used in SHEAR7 to calculate the dynamic bending stresses that are induced
when the mode is excited. Such stresses occur due to both transverse and inline oscillations, so it is appropriate
to export the whole of the dynamic curvature (dC), rather than just its transverse component.
- Finally, the exported values are signed and normalised as specified by SHEAR7. That is, the Mode Offset value
has maximum magnitude 1. And the Mode Curvature is the change in curvature caused by applying the mode
with that magnitude.
Discussion and Examples
The OrcaFlex modal analysis is fully 3D, so for a general line configuration a mode can be a mixture of axial (i.e.
tensile) and lateral (i.e. bending) motion. However for many configurations the modes broadly fall into one of three
categories - tensile modes, in-plane bending modes and out-of-plane bending modes. Here in-plane and out-of-plane
refers to the vertical plane of the catenary in which the line is hanging.
Vertical Riser
For an exactly straight vertical riser there is no unique such vertical plane. In this case the bending modes appear as
a series of twins, i.e. pairs of modes with identical (or near identical) amplitude and frequency, but in orthogonal
directions.
Warning: In such cases it is important that only one of the pair is exported to SHEAR7 - the one that is
nearest to being in the transverse direction.
In practice, however, the current will make the riser bow out slightly in the current direction. This defines a vertical
plane for the static position, and the transverse direction is normal to this plane. The natural modes typically divide
neatly into modes that are virtually 100% transverse (the out-of-plane lateral modes), inline (the in-plane lateral
modes) or axial (the tensile modes). It is therefore clear cut as to which modes to export to SHEAR7, i.e. the
transverse modes, and OrcaFlex selects these for you.
U-shape Catenary, In-plane Current
For this case the transverse direction is the out-of-plane direction, so the transverse modes are the out-of-plane
modes. These typically have virtually 100% of their power in the transverse direction, whereas the remaining
VIV Toolbox, Time Domain Models
w

408
modes have very little power in the transverse direction, so again it is clear cut as to which modes to export to
SHEAR7.
U-shape Catenary, Out-of-plane Current
For this case the transverse direction is in-plane and normal to the line axis. It therefore varies along the line and so
the transverse modes are some, but not all, of the in-plane modes.
The lowest in-plane mode is typically the in-plane fundamental 'swinging' mode. In the parts of the line that are
nearly vertical this mode is transverse, but near the bottom of the U the motion is near axial. This mode is therefore
often displayed as Mostly Transverse. OrcaFlex removes the axial components of the modes when exporting to
SHEAR7 (see Values Exported) so it is reasonable to export this mode.
Most of the remaining in-plane modes are bending modes in which the nodes oscillate laterally, with the wavelength
decreasing as the frequency increases. These are predominantly in the transverse direction and so are suitable for
export to SHEAR7.
However there are also some tensile in-plane modes present, in which the nodes oscillate in the axial direction,
causing alternating tension and compression in the line. These tend to be in amongst the higher frequency modes,
due to the typically high axial stiffness of a line.
U-shape Catenary, Oblique Current
If the current is at 10, say, to the plane of the catenary, then the transverse direction is at 80 to the plane. None of
the modes will be purely in this direction, but the out-of-plane modes are nearest to this direction, so they are the
best ones to choose.
SHEAR7 will assume that each exported mode is purely transverse, so an approximation is involved. This
approximation gets worse as the angle of the current to the plane increases up to 45. The approximation is worst
for the low modes. For the higher modes the out-of-plane modes and the in-plane lateral modes tend to have quite
similar frequencies and shapes, so the approximation is less of a problem.
9.2 TIME DOMAIN MODELS
There are four time domain models, two being wake oscillator models and two being vortex tracking models.
With all the time domain models, the vortex force applied in the static analysis is the standard Morison drag force.
Then, during the build-up stage of the simulation, the ramping function is used to smoothly change to the vortex
force given by the VIV model.
Note: This ramping is only applied for the components of vortex force which are calculated by the VIV
model. For example, the wake oscillator models only provide transverse vortex force. So, for the
wake oscillators, the ramping is done for the transverse component of force, but the inline
component of force is calculated using the standard Morison drag formulation.
The data described below are common to all the time domain models.
Outer Time Step
For all the time domain models, it is important that the outer time step (on the General Data form) is set to a value
that is small compared with the Strouhal Period. Assuming a Strouhal number of 0.2, then the Strouhal period is
given by 5D/V where D is the line diameter and V is the relative flow velocity. The outer time step needs to be set to
a fraction of this Strouhal period, the fraction to use depending on which model is being used, as follows.
Wake oscillator models
The wake oscillator calculations are done every outer time step and experience so far suggests that the integration
of the wake oscillator loses accuracy if this time step is greater than about 1/200th of the Strouhal period. At the
start of the simulation OrcaFlex checks and warns if the outer time step exceeds this limit at any node on lines that
use a wake oscillator. Note that this check is against the Strouhal period for the flow velocity that applies in the
static analysis, so it does not take into account changes in Strouhal period during the simulation.
Vortex Tracking (1) Model
The outer time step determines how often the fluid forces on the line are updated. The model performs its
calculations using a variable time step. The calculations done in this variable time step are typically much more
time-consuming than the other calculations in the simulation, so the outer time step does not usually have much
effect on the simulation speed. We therefore recommend that the outer time step is set to a very small value,
w
VIV Toolbox, Time Domain Models
409
preferably a lot less than the variable time step, so that the line has a chance to quickly react to changes in fluid
force.
Vortex Tracking (2) Model
The outer time step sets the time step used by the vortex tracking model, and also determines how often the fluid
forces on the line are updated. It should be small enough to discretise the VIV, but if it is too small then a lot of
vortices must be tracked and this significantly slows the model. Based on our experience so far, we recommend that
the outer time step is set to approximately 1/100th or 1/200th of the Strouhal period.
Note: The automated recommended time step feature in OrcaFlex implements the above
recommendation for the Wake oscillator models but does not implement the recommendations for
the Vortex Tracking models.
Data for the Whole Line
Filter Period
OrcaFlex uses a digital filter, with this filter cut-off period, to separate the mean motion of the node from the VIV
motion. For example, this filtering is needed with the wake oscillator models in order to allow non-VIV motion of the
node to contribute to VIV, without letting the VIV motion feed back into the velocity input into the wake oscillator
model.
Here is more detail. The node velocity vector is filtered and the resulting 'non-VIV' velocity is subtracted from the
fluid velocity to obtain a 'non-VIV' relative velocity vector. Then:
- For the wake oscillator models, the normal component of this 'non-VIV' relative velocity vector is used as the
velocity input to the wake oscillator model.
- For all the time domain models, the inline and transverse directions are based on the 'non-VIV' relative velocity
vector.
- The node position vector is also filtered and the resulting 'non-VIV node position' is used when calculating the
Transverse VIV Offset.
- For the Milan wake oscillator only, the 'non-VIV node position' is used as the mean position for the Milan
oscillator.
The filter tries to filter out motion whose period is below the filter period. So a filter period of zero gives an all-pass
filter, which isn't desirable since it allows VIV motion to feed back into the wake oscillator models and into the
definitions of the inline and transverse directions.
At the other extreme, a filter period of Infinity gives a no-pass filter, which filters out all oscillatory motion of the
line, leaving only any non-zero starting velocity. So if a filter period of Infinity is used then the only line velocity that
contributes to the inline and transverse directions is any non-zero starting velocity, and with the wake oscillator
models the only velocity input to the model will be any non-zero starting velocity.
In practice, the filter period should be set to be significantly above, preferably by a factor of 10 or more, the period
of any expected VIV. However it should also be significantly below, again preferably by a factor of 10 or more, the
period of any line motion (e.g. due to towing or vessel motion) that you want to contribute to VIV.
For simple cases where VIV is excited only by fluid flow, not by line motion, the filter period can be set to a large
value that is at least 10 times the period of any expected VIV. For cases where line motion contributes to VIV it might
be harder to achieve the above recommended factors of 10, in which case it will be necessary to compromise by
setting the filter period to a value about half way between the two periods.
The reason a significant factor is recommended here is that the filter does not achieve a very sharp cut-off. Its
response is shown in the following graphs, which illustrate how it attenuates and lags frequencies that are near to
the filter period.
VIV Toolbox, Time Domain Models
w

410
0
0.2
0.4
0.6
0.8
1
1.2
0 1 2 3 4 5
Period / FilterPeriod
F
i
l
t
e
r

R
A
O

A
m
p
l
i
t
u
d
e
0
20
40
60
80
100
120
140
160
0 1 2 3 4 5
Period / FilterPeriod
F
i
l
t
e
r

R
A
O

P
h
a
s
e

L
a
g

(
d
e
g
)

Warning: Note also that with the Milan wake oscillator, if you set the filter period to Infinity or a very high
value, then the node mean position used by the wake oscillator will remain at the node's starting
position found by the static analysis. In that case it is important that the line uses Full statics, since
otherwise that starting position might not be a sensible mean position for the Milan wake
oscillator model to use.
Data for Each Section
The following data can be set for each section of the line. A node at the junction between two sections uses the value
for the higher numbered section.
VIV Diameter
The VIV diameter specifies the diameter used by the VIV model. Separate values can be specified for each section.
The value specified is used for all nodes in that section. For a node at the intersection of two sections the VIV
diameter of the following section is used. The VIV Diameter can be set to '~', which is taken to mean 'same as the
section outer diameter'.
VIV Enabled
You can control which sections of the line the VIV model is applied to. All the time domain models analyse what goes
on at a single specified point on the line, so OrcaFlex creates one instance of the model for each node in each of the
enabled sections.
You can use this switch to disable VIV modelling where you think VIV excitation is not significant. For example:
- You might disable VIV modelling if the normal component of flow velocity is not significant, or the incidence
angle is near to being tangential
- You might disable VIV modelling if there are VIV suppression devices (e.g. strakes, fairings) and you believe they
will be effective.
- The vortex tracking model requires a lot of computing, so you could improve the speed of simulation by
disabling VIV modelling where you believe VIV will not be significant.
Inline Drag Amplification Factor
Only available for the wake oscillator models. The inline component of drag is multiplied by this value. The data can
be specified as a variable data item which varies with Transverse A/D, that is the amplitude of transverse oscillation
divided by the VIV diameter.
This is not available for the vortex tracking models since they include the effect of inline drag amplification.
Vortex Force Factors
These factors allow you to scale the inline and transverse components of the vortex force. Set them both to 1 to use
the vortex force predicted by the VIV model, without adjustment.
If VIV suppression devices (e.g. strakes, fairings, shrouds) are fitted to a section of the line then you could allow for
their VIV-reduction effect by setting the transverse force factor to a value less than 1. The device is also likely to
w
VIV Toolbox, Time Domain Models
411
affect the inline drag force, so you might also want to allow for this by adjusting the inline force factor. See Barltrop
and Adams page 372.
The inline force factor is not available for wake oscillator models, instead you should use the Inline Drag
Amplification Factor data.
Note: With the Milan wake oscillator model the transverse force generated by the model is not the whole
of the transverse force, since the Milan model requires the transverse component of standard drag
force to be added to give the total transverse force. The transverse vortex force factor is only
applied to the force generated by the model, not to the transverse component of the standard drag
force.
Sea Surface and Sea Bed
The time domain VIV models (wake oscillator and vortex tracking) make no allowance for surface-piercing or
seabed contact effects. OrcaFlex therefore handles these effects as follows:
- If a node comes completely out of the water, or comes into contact with the seabed, then the time domain wake
model is reset. For the wake oscillator models this means that the wake degree of freedom is reset to zero; for
the vortex tracking model all existing vortices are removed. If the node later comes back into the water, or
breaks contact with the seabed, then the model starts again from that reset state.
- If the node is partially submerged (i.e. the length of line represented by the node is surface-piercing) then the
time domain wake model continues to run but the forces it applies to the node are scaled by the node's
Proportion Wet.
VIV Directions
For the time domain VIV models, OrcaFlex calculates the following directions:
- The Axial direction is the local tangential direction, given by the node's local z-direction.
- The Transverse direction is normal to the axial direction and normal to the 'non-VIV' relative velocity vector.
- The Inline direction is normal to the Axial and Transverse directions. It is therefore normal to the line axis and
in the plane defined by that axis and the relative flow direction. It is the direction of the normal component of
the drag force (assuming Cdx=Cdy).
These directions are used for three purposes:
- The velocity input to the wake oscillator models is the inline component of the 'non-VIV' relative velocity.
- The transverse displacement input into the Milan wake oscillator model is the transverse component of the
node position relative to its 'non-VIV' node position.
- The inline and transverse components of the vortex force are available as results.
9.2.1 Wake Oscillator Models
The VIV Toolbox provides two wake oscillator models, the Milan model and the Iwan and Blevins model. These are
two of many different wake oscillator models that have been proposed by many different authors over the last
twenty years. We selected these two models after reviewing the literature and testing a number of different models.
We found that there are errors in some of the published models and that many of the wake oscillator models contain
disguised references to frequency domain concepts. This makes them difficult to implement in a true time domain
analysis, unless additional assumptions are made.
What is a Wake Oscillator Model?
A typical wake oscillator model is a heuristic model that uses a single degree of freedom, Q say, to represent the
wake behind a rigid cylinder. It models the oscillation of the wake by Q being a function of time that obeys a
differential equation that we will call the wake equation of motion.
The oscillation of the wake generates a lift force, i.e. a force that is normal to the cylinder axis and normal to the flow
direction. The model gives the lift force magnitude as a function of Q, and this force is applied to the cylinder and so
affects the motion of the cylinder. In return, the wake equation of motion involves terms that depend on the motion
of the cylinder. This couples the wake equation of motion to the cylinder equation of motion, so together the two
form a coupled non-linear system.
VIV Toolbox, Time Domain Models
w

412
Wake Equation of Motion
The wake equation of motion is typically a nearly linear, second order, ordinary differential equation. It is not
usually derived from physical laws, but is chosen to be one whose qualitative characteristics are known to be similar
to VIV. For example there are differential equations that are know to have solutions that are oscillatory, self
generating and self limiting.
The wake equation of motion involves parameters whose values are calibrated to match empirical results. This sort
of modelling ethos is commonly known as an inverse method. This is where one attempts to reproduce empirical
data without recourse to the fundamental physics of the system. Rather, one simply writes down a system of
equations that have the right sort of characteristics and then adjusts parameters in the equations to tune them to
best match the empirical data.
Almost universally, wake oscillator models only give the lift force and say nothing about the effect of VIV on the drag
force. The main aim behind the wake oscillator paradigm is to model the oscillating lift force.
Using a Wake Oscillator Model
Wake oscillator models are time-domain models and so can only be used in the dynamic analysis. To use a wake
oscillator model set the Dynamics VIV to that model.
When the simulation is run OrcaFlex creates and attaches a wake oscillator, of the chosen model, to each node in the
line. Each such oscillator then obeys the equations of the chosen model. There is no linkage between the wake
oscillators except through the structure. It is therefore effectively being assumed that the interaction between VIV at
different levels occurs predominantly through the structure, not through the fluid.
Lift Direction
The wake oscillator models are single degree of freedom models, i.e. they only model the transverse direction. Note
that this direction can change during the simulation, either because the line orientation changes or because of wave
motion changing the fluid velocity direction. When this happens the wake oscillator model is effectively being
rotated and there is an implicit assumption that this rotation does not significantly affect the wake.
Node Steady Motion Included
The wake oscillator models require the flow velocity as input. In OrcaFlex this input flow velocity is taken to be the
fluid velocity minus the filtered node velocity. This allows non-VIV motion, e.g. in a towed case, to contribute to VIV,
providing its period is significantly longer than the filter period. The filtering is necessary to prevent the VIV motion
itself feeding back into the input to the wake oscillator.
Current and Wave Motion Are Both Included
The input velocity to the wake oscillator models include the fluid velocity due to both current and any waves
specified. The models can therefore in principle be used to model the effect of waves on VIV. However please note
that the models were developed and calibrated for steady state conditions, so unsteady flow is outside their
intended area of application.
Inline drag amplification
The effect of inline drag amplification can be modelled by means of a table relating amplification factor to transverse
A/D.
Data Common to Wake Oscillator Models
Model Parameters
Both the Milan and the Iwan and Blevins models have various parameters that determine their properties. You can
choose to either use the Default set of values for these parameters or else choose to use your own Specified values.
Except for the Initial Value (see below), the Default values are the parameters given in the original published
papers, i.e. in the Milan and Iwan and Blevins papers. If the Specified option is chosen then you have complete
control over the model parameters.
Warning: The Specified option has been provided principally to allow users the option of calibrating the
model against other experimental results. If you are not doing this then we strongly recommend
that you use the Default parameters.
The following two model parameters are common to both wake oscillator models.
w
VIV Toolbox, Time Domain Models
413
- Strouhal Number. Note that the Strouhal number interacts with the other model parameters, and the other
default published values are intended to be used with the default Strouhal number 0.2. Adjusting the Strouhal
number is therefore not recommended unless you are calibrating the model parameters against known results.
- Initial Value is the magnitude of the initial value given to the wake degree of freedom used by the models. The
wake oscillation can take a long time to build-up if it is started from zero, so giving it a small non-zero initial
value helps to start up the wake oscillation at the start of the simulation. The sign of the initial value is chosen
randomly for each node in the line. This avoids the situation where the nodes on a line all start by moving in the
same direction.
How well do wake oscillators model VIV?
Any wake oscillator model is very heavily tied to the data set used to calibrate it. One must ensure that the relevant
fluid dynamical and structural dimensionless parameters (for example, the Reynolds number) of the experimental
set-up used to generate the data are sufficiently similar to that of the situation that one wants to model. Otherwise,
one is relying on luck to provide the right answer. For example, if one wants to model the VIV of telephone wires in
air, then one should use a data set obtained from a wire vibrating in a wind tunnel. The experimental data is usually
obtained from a system with a constant fluid in-flow speed, so one cannot expect the model to be applicable for
currents that vary over the same time scale as that due to VIV. If the current variation is sufficiently slow then the
model should be valid.
In general, the authors of wake oscillators make no attempt to model the start-up of VIV. This is due to the nature of
the devised mathematical model. The modelling method used exploits the fact that the solution phase space of the
system contains limit cycles that correspond to stationary VIV. The parameters are set so that the limit cycles have
the right radius and that the system state tracks around them with the right frequency. To find the non-stationary
dynamical behaviour of the system far away from such critical regions in the phase space is extremely difficult
without simply integrating the equations of motion.
Milan Wake Oscillator Model
The Milan model is an implementation of the model developed by a group in Italy and documented in the paper by
Falco, Fossati and Resta. It is a wake oscillator model; see the wake oscillator models topic for information that
applies to all such models.
Results
The Vortex Force is available as a line force results variable. This reports the total lift and drag force. Note that this is
the sum of the force generated by the wake oscillator model, which is in the transverse direction but doesn't include
the drag force in that direction, plus the standard Morison drag force in the inline, transverse and axial directions.
Transverse VIV Offset is also available as a line position results variable.
Milan Model Implementation in OrcaFlex
In implementing the Milan model in OrcaFlex we came across the following issues.
Lift Force
In the Milan model the standard Morison drag force in the transverse direction must be added to the force
generated by the wake oscillator. OrcaFlex therefore calculates the drag forces as usual and then adds in the force
generated by the Milan wake oscillator. The line motion therefore depends significantly on the drag coefficient
specified for the transverse direction.
Notes: The Milan model was calibrated by assuming a transverse drag coefficient of 1.2 and a transverse
added mass coefficient of 1.0, so other values of these coefficients take the model outside its domain
of calibration.
The transverse force factor is only applied to the force generated by the Milan model, not to the
transverse component of the standard drag force.
Node Mean Position
The Milan model needs the node's offset in the lift direction, relative to its mean position, i.e. relative to the position
about which VIV is occurring. For this mean position OrcaFlex uses the filtered position of the node. This enables
OrcaFlex to handle cases such as towed lines, where the VIV excitation is due to motion of the line rather (or as well
as) fluid flow. It is important that the filter period is suitably set.
VIV Toolbox, Time Domain Models
w

414
Our experience of the Milan Model
- If a line end node doesn't move at all (e.g. a because it is fixed) then the wake oscillation does not develop and so
the Vortex Force decays to zero. The Milan model is therefore not suitable for predicting the vortex force on
fixed line end nodes.
- We have run the Milan model for the case of a simple spring-mounted cylinder, and compared the results with
the empirically based response curve published by Skop and Balasubramanian. For details contact Orcina.
- We have also run the Milan model for flexible riser cases and compared it against experimental results. The
results so far suggest that the Milan model is reasonable for cases where the flow velocity is uniform along the
riser, but the model is less satisfactory when the flow velocity varies a lot along the riser.
Iwan and Blevins Wake Oscillator Model
This wake oscillator model is as published by Iwan and Blevins. In their paper the model is developed from
theoretical considerations of momentum, and the hidden wake degree of freedom is such that its rate of change is a
measure of the fluid momentum in the transverse direction.
The resulting model makes the wake degree of freedom obey a Van der Pol equation. This is a type of equation that
has been used in other wake oscillator models, and it is known to have VIV-type characteristics such as frequency
lock-in.
The authors calibrated the model against experimental results for fixed and forced cylinders, and then compared the
model's predictions against experimental results for spring-mounted cylinders.
In addition note that the force generated by the Iwan and Blevins model (unlike the Milan wake oscillator model)
includes the standard Morison drag force in the transverse direction. When this model is used OrcaFlex therefore
suppresses the transverse component of the usual drag force, so the drag coefficient specified for the transverse
direction is not used.
Results
The Vortex Force is available as a line force results variable. This reports the total lift and drag force. Note that this is
the sum of the force generated by the wake oscillator model, which is in the transverse direction but doesn't include
the drag force in that direction, plus the standard Morison drag force in the inline, transverse and axial directions.
Transverse VIV Offset is also available as a line position results variable.
9.2.2 Vortex Tracking Models
Overview
Two vortex tracking models are available in OrcaFlex, which we refer to by number: Vortex Tracking (1) and Vortex
Tracking (2). Both are based on the underlying physical equations of boundary layer theory and the Navier-Stokes
equation. As a result they introduce physical realism that is absent from the wake oscillator models.
Vorticity is a measure of a fluid's rotation and it is often advantageous to analyse fluid dynamics in terms of
vorticity. The reason for this is that the vorticity is often confined to narrow sheet-like regions and the important
fluid forces on a body in the flow are intimately related to the vorticity. One can focus on the sheet-like regions and
this is far more efficient from a computational point of view. Vortex methods are prevalent throughout
computational fluid dynamics.
The vortex tracking models are much more computationally demanding than the wake oscillator models. In fact they
are a type of computational fluid dynamic model, but they are much less computationally demanding than 'full'
Computational Fluid Dynamics (CFD). Work to date shows considerable promise, and we hope they will offer a
practical analysis technique which gives much of the realism of full CFD without the associated extremely long run
times.
The vortex tracking models model the full fluid flow field. In OrcaFlex the vortex tracking models are used to give
the force acting on the line, but they can also give other results, such as the fluid velocity and pressure at any point.
For example we have experimentally used them to calculate the pressure variations on the line surface due to VIV. If
other results such as these interest you then please contact Orcina for further details.
The vortex tracking models are based on the relative velocity of the flow past the line. They can therefore be used
both for cases where the excitation is due to current or waves, and also where the excitation is due to the line
moving, for example towed cases.
w
VIV Toolbox, Time Domain Models
415
The models involve calculating and tracking many vortices for each node of the line. This can make the simulation
file very large, but this can be controlled by limiting the Maximum Number of Vortices Logged.
See the Vortex Tracking Example and also Data and Results.
Note: We have done validation work comparing the VIV models with real measured results - see the VIV
Validation section on the OrcaFlex Validation page of the Orcina website. This work showed that
the vortex tracking models tend to substantially overpredict VIV amplitudes. However we believe
they are useful for qualitative investigations, especially of in-line VIV in low to moderate shear
conditions, since the other VIV models can not model this situation.
Features Common to both Vortex Tracking Models
This section describes the basic vortex tracking model on which both models are based.
Vortex Tracking Plane
The basic vortex tracking model is a 2D fluid model associated with a particular node on the line. It models the 2D
'slice' through the fluid normal to the line axis, which we call the vortex tracking plane. In this 2D slice the node is a
disc.
To apply this 2D model to the 3D situation present in OrcaFlex, we attach a separate vortex tracking plane to each
node on the line where VIV modelling is enabled. Each node therefore models its own fluid interaction, by
generating and shedding vortices and then tracking them in its associated vortex tracking plane.
The drawing below shows a typical vortex plane, i.e. it is a cross-section through the line, normal to the line axis. The
line itself is represented by the grey disc and the fluid flow is coming from the left. See the vortex tracking example
to see the vortex plane in action.
flow

Figure: Vortex Tracking Plane
The model has two main elements:
- A boundary layer theory is used to analyse the fluid very near to the disc surface, where viscosity plays a
dominant role. At each time step, the boundary layer theory gives the positions of the two separation points,
and a new vortex is created at each of these two points, to model the vorticity being generated there.
- The vortex tracking itself handles the rest of the fluid, where viscosity is much less important. The created
vortices are tracked downstream by solving the inviscid Navier Stokes equations (which are approximately
valid outside the boundary layer). This models the wake development, i.e. how the vorticity flows after leaving
the boundary layer.
Boundary Layer
When the flow meets the disc it has to flow around the disc circumference and a boundary layer is formed.
Boundary layer theory is used to model this region, where viscosity plays a crucial role. Sarpkaya and Shoaff
originally used the Polhausen boundary layer method, but since then this method has been superseded by simpler
and more accurate methods. OrcaFlex uses Thwaites' method (see Young 1989) for both models.
Some of the fluid flows around one side of the disc and some around the other, and the point where the flow splits is
called the stagnation point. As the fluid flows around the disc it initially remains in contact with the disc, but it
VIV Toolbox, Time Domain Models
w

416
typically then reaches a point on each side where the flow separates. These are called the separation points, and at
these points vorticity is shed from the disc.
The boundary layer theory gives the position of each separation point and the strength of vorticity shed there in one
time step. A new vortex of this strength is then created at the separation point. The new vortex is placed at the
separation point but at a distance .R from the disc surface. In the model 2 is the Creation Clearance specified by
the user. In model 1, or if the Creation Clearance is set to '~', is calculated to be the value that results in the
tangential velocity contribution of the new vortex just cancelling out the existing tangential velocity at the
separation point.
In the drawing above (and in the OrcaFlex 3D view) the stagnation point is shown as a small triangle and the
separation points as small blobs, part way around the disc circumference. The vorticity shed from the two sides of
the disc is distinguished by being drawn in separate colours, to denote the difference in the direction of rotation -
clockwise for vorticity shed from the upper side and anti-clockwise from the lower side, as seen in the drawing.
Vortex Tracking
After being shed from the boundary layer, the vorticity then flows downstream. In reality, the vorticity is shed
continuously and it is shed along the neighbouring parts of the line at the same time, so as it flows away it forms
sheets of vorticity, one on each side. In the above drawing these vortex sheets are shown as red and green lines,
since the drawing shows the intersection of the sheets with the vortex plane. The colour denotes the sign of the
vorticity.
For computation purposes the model has to discretise the vorticity being shed, so in the vortex tracking model the
vorticity is represented by discrete vortex points. The vortex sheet is therefore represented by a sequence of vortex
points, each one of which represents the vorticity of a short length of vortex sheet.
In the 3D view the individual vortex points are drawn as circles with their centres joined to represent the vortex
sheet line, with the colour indicating the sign of vorticity. A vortex sheet therefore appears as a linked sequence of
circles flowing away from the line.
Sarpkaya and Shoaff originally used singular vortex points, but in both vortex tracking models OrcaFlex uses
smeared vortex points.
Strouhal Number
The vortex tracking models do not have any Strouhal number built in. Instead the Strouhal period emerges directly
from the physics of the vortex dynamics and boundary layer.
Vortex Tracking (1) Model
The Vortex Tracking (1) model is our implementation and development of the vortex tracking model originally
developed by Sarpkaya and Shoaff. It shares many common features with the Vortex Tracking (2) model - see
Features Common to both Vortex Tracking Models. It differs in the following ways:
- It uses a variable time step given by:
t = 0.2 . R / V
where R is the radius of the line and V is the fluid velocity relative to the node. Assuming a Strouhal number of 0.2,
this value is 1/50th of the (instantaneous) Strouhal period.
- Vortices shed from the same side of the disc are grouped to represent the vortex sheets coming off that side. The
model tries to detect a suitable point in the cycle at which to break the attached sheet away from the disc and
start a new attached sheet. See Sheet Detachment and Coalescing below.
- At each time step each sheet is rediscretised in a way that keeps the vortices at equally spaced arc lengths along
the sheet.
- At each time step the model searches for vortices from detached sheets that have moved in between the two
attached sheet. Such a vortex is 'entrained' into the attached sheet of opposite sign to its vorticity. See Wake
Line and Entrainment below.
Sheet Detachment and Coalescing
At any given time there are typically two vortex sheets being fed from the disc - one from each side. These are called
the attached sheets.
w
VIV Toolbox, Time Domain Models
417
As the flow progresses, an attached sheet can become detached and a new attached sheet then starts forming on that
side. Typically this happens first on one side of the disc, then on the other, etc., and this alternating behaviour is
typically synchronised with the oscillatory nature of the lift force.
In reality the vortex sheets form, become detached and flow downstream ad infinitum, but their effect becomes
much less as they move further away from the disc. OrcaFlex, of course, has to limit the number of vortices being
modelled. In model 1 this is done as follows:
- The two attached sheets and the one most recently detached sheet are modelled in detail, i.e. as linked
sequences of discrete vortex points.
- Older detached sheets (providing they are not still close to the disc) are simplified by 'coalescing' them to single
vortex points. In other words whenever a sheet becomes detached the previous detached sheet is usually
replaced by a single vortex point whose strength is the total vorticity in the sheet and whose position is the
centroid of the vorticity in that sheet. The sheet is then referred to as a coalesced sheet.
- When a coalesced sheet gets beyond a certain distance from the disc, its effect is assumed to have decayed to the
point where it is no longer significant and so it can be removed from the model. OrcaFlex does this by
transferring its vorticity to the nearest coalesced sheet of the opposite sign. Doing the removal in this way has
the advantage that the total vorticity present is preserved, and so vorticity is only being moved a small distance,
rather than being destroyed.
To summarise, the wake is modelled using:
- Detailed modelling of two attached vortex sheets and (usually) one detached vortex sheet, plus single vortex
modelling of a number of coalesced sheets. The two attached (one green, one red) and the most recent detached
sheet (red) can be seen as vortex lines in the drawing below.
- Single vortex point modelling of the earlier detached sheets, now coalesced. These are shown in the drawing as
circles, which is also how they appear in the OrcaFlex 3D view.

flow

Wake Line and Entrainment
In practice the tail end of the detached sheet trails into the spiral part of the preceding attached sheet. This can lead
to very contorted situations and to modelling problems if vortex points come very close to each other. Model 1
handles this as follows.
The model calculates the tangent line between the two attached sheets. This line, called the wake line, is the dashed
line in the drawing above.
The region between this wake line, the two attached sheets and the disc itself is called the wake region. Vortex
points in the detached sheet that trail into the wake region can then be absorbed into the attached sheet of the
opposite sign. We refer to this process as entrainment.
Vortex Tracking (2) Model
The Vortex Tracking (2) model is a simplified variant of the Vortex Tracking (1) model.
Warning: Model 2 has been developed more recently than model 1. It has undergone testing but has had
limited use so far.
VIV Toolbox, Time Domain Models
w

418
Model 2 shares many features of model 1 - see Features Common to both Vortex Tracking Models. It differs in the
following ways:
- It uses a constant time step, equal to the simulation outer time step. (Model 1 uses a variable time step.)
- It does not use sheet detachment to separate the vortices coming from one side of the disc into separate sheets.
- It does not use entrainment, nor rediscretisation to keep the vortices at equally spaced arc lengths along the
sheet.
- It uses a coalescing algorithm to control the number of vortices.
Coalescing
To keep down the number of vortices being tracked, model 2 tries, at each time step, to coalesce pairs of vortices
that have come very close to each other. This is done as follows:
- At each time step the model finds, for each vortex, the nearest neighbouring vortex. If two vortices are each
other's nearest neighbours then they are called 'mutually nearest neighbours', and such a pair are considered
for possible coalescing into one.
- Such a pair of mutually nearest neighbours are coalesced if their separation is less than Sc, where Sc is a
coalescing separation that depends on the distance D from the two vortices to the disc surface. Sc is given by:
Sc = .R if D2R
Sc = .R.(D/2R)
2
if D>2R
where R is the disc radius and is the coalescing threshold specified by the user. The threshold used depends on
whether the two vortices are of the same or opposite signs.
- These formulae for Sc mean that the user's data sets, in disc radius units, the coalescing separation for vortices
that are within 2 disc radii of the disc surface, and for vortices further away the coalescing separation increases
according to the square of the distance from the disc surface. The aim of this is to restrict coalescing near to the
disc but encourage it once the vortices have convected significantly away from the disc.
- If the two vortices are coalesced then they are replaced by one vortex whose strength is the sum of their signed
strengths and which is placed at their centroid of absolute vorticity.
Data and Results
Data
The following data needs setting for the vortex tracking models. See also the data that is common to all the time
domain VIV models.
Maximum Number of Vortices Logged (per side of the line)
This controls the maximum number of vortices that will be displayed and logged, for each side of the line. Note that
this setting only affects the display of vortices and does not affect the calculation itself in any way. Its purpose is
only to allow you to control the size of the log file (and hence the simulation file) and to control the speed of drawing
the 3D view. You can set the maximum number of vortices to one of:
- 0 is the default value, meaning 'log and draw no vortices'. The log file and simulation file are then as small as
possible and the replay as fast as possible. However the drawback of doing this is that you will not see any
vortices on the 3D view.
- '~', meaning 'log and draw all vortices'. The vortex tracking example uses this setting so that the vortices can be
observed. There are typically up to several hundred vortices generated per node, and each vortex needs to log
its position and strength so that it can be drawn on the 3D view. So if all vortices are logged then the log file and
simulation file can therefore be quite large. Also the replay might be slower because many vortices must be
drawn for each frame of the replay.
- An intermediate value, 30 say, allows you to see the youngest 30 vortices per side of the line. Note that if you do
this then as new vortices are generated at the separation points you will see the oldest vortices (typically now
downstream) disappear from view. They have not been destroyed and will still be in the calculation, but their
position and strength is no longer available to the 3D view.
w
VIV Toolbox, Time Domain Models
419
Model Parameters
If the Default option is chosen then appropriate default values for the model parameters are used. Alternatively the
Specified option can be selected which gives you complete control over the model parameters.
Warning: The Specified option has been provided principally to allow users the option of calibrating the
model against other experimental results. If you are not doing this then we strongly recommend
that you use the Default parameters.
Vortex Smear Factor
This setting controls the degree to which vortices are smeared. The original Sarpkaya and Shoaff model used point
vortices, i.e. the vorticity was concentrated at a single point. This is what arises in the formal mathematical solution
of the inviscid Navier Stokes equations (i.e. those ignoring fluid viscosity) but it means that each vortex is a
singularity, since the vorticity density at the point itself is actually infinity. In reality viscosity in the fluid spreads the
vorticity to some extent, and we have found that the model is more stable if the vortices are smeared to reflect this.
The smear factor is non-dimensional. Very small values make each vortex more concentrated into a single point,
whereas larger values spread the vorticity in the vortex over a region surrounding the point. The default value is 0.1
and in our experience this gives reasonable performance. The smear factor should not be set too high, since that
would be unrealistic. OrcaFlex warns if the value is more than 0.2.
Creation Clearance
This is a non-dimensional value that is only used by model 2. At each time step the model creates two new vortices,
one at each of the two separation points. This data controls how close to the disc surface these newly-created
vortices are placed. They are placed at the separation angle determined by the boundary layer model and at a
distance .R from the disc surface, where is the specified creation clearance and R is the disc radius (= half the line
outer diameter).
The Creation Clearance can also be set to '~', in which case the new vortices are placed using the same algorithm
as in model 1. This sets the factor to the value that results in the tangential velocity contribution of the new vortex
at the separation point just cancelling out the previous tangential velocity at that point.
Coalesce Same, Coalesce Opposite
These are non-dimensional thresholds that are only used for coalescing in model 2. They control how close to each
other two vortices have to be before they are allowed to be coalesced into one combined vortex. For details, see
Coalescing.
There are separate threshold values depending on whether the two vortices have equal or opposite signs of
vorticity. So if one of the two vortices is clockwise and the other is anti-clockwise then the opposite sign threshold
will be used, whereas if they are both clockwise or both anti-clockwise then the same sign threshold will be used.
Reducing the thresholds makes the model coalesce vortices less often, so the model will have to keep track of more
vortices and the simulation will therefore be slower. Conversely, increasing the thresholds makes the model
coalesce more readily, so fewer vortices need to be tracked and the simulation is faster, but less accurate.
Our experience so far is that the default values of 0.04 for both thresholds gives a reasonable balance between
performance and accuracy. If the mass ratio (= mass of line / mass of water displaced) is low then the fluid forces
are more significant, and in these cases lower coalescing thresholds may be needed so that the fluid behaviour is
more accurately modelled.
Vortex Decay Constant, Vortex Decay Threshold 1, Vortex Decay Threshold 2
These data items set the rate of vortex strength decay in both vortex tracking models. The decay model is described
below. It is as in Sarpkaya and Shoaff's report (page 79) and the default values for this data are as given in that
report. We therefore recommend that the default values be used unless you wish to experiment with other values,
for example to calibrate the model.
Vortices are created at the separation points, with an initial vortex strength determined by the tangential velocity at
the separation point. The strength of each vortex then decays at a rate that depends on how far the vortex is away
from the centre of the disc, in the relative flow direction.
Let R be the disc radius (= half the line outer diameter) and D be the distance, measured in the relative flow
direction from the centre of the line to the vortex. In model 1, at each variable time step the vortex strength is scaled
by a factor that depends on D as follows:
VIV Toolbox, Time Domain Models
w

420
- If D DecayThreshold1*R then = (1-DecayConstant)
- If D DecayThreshold2*R then = 1
- If DecayThreshold1*R < D < DecayThreshold2*R then varies linearly with D, from (1-DecayConstant) to 1.
The effect of this is that while the vortex is less than DecayThreshold1 radii downstream then the vortex loses
DecayConstant of its strength (e.g. DecayConstant=0.01 means 1% decay) per variable time step. While the vortex is
between DecayThreshold1 and DecayThreshold2 radii downstream its rate of decay falls linearly (as a function of
D) to zero. And when the vortex is more than DecayThreshold2 radii downstream then there is no decay.
Clearly DecayConstant must be in the range 0 to 1, and DecayThreshold1 must be less than DecayThreshold2. Note
that DecayThreshold1 and DecayThreshold2 can be set to Infinity. If either of them is Infinity then = 1-
DecayConstant always, so the vortices always lose DecayConstant of their strength per variable time step.
The same decay model is used in model 2, except that the factor is adjusted to allow for the fact that model 2 uses
the outer time step instead of the variable time step used in model 1. The adjustment results in the same rate of
decay per unit time.
Drag Coefficients
The vortex tracking model includes the drag effects in both the transverse and inline directions, but not in the axial
direction. When the vortex tracking model is used, OrcaFlex therefore suppresses the components of the usual
Morison drag force in the transverse and inline directions, but includes the component in the axial direction. The
drag coefficients for the normal directions are therefore not used, but the axial drag coefficient is used.
Results
The Vortex Force is available as line force results variables. This reports the total lift and drag force. Note that this is
the sum of the force generated by the vortex tracking model, which is in the inline and transverse directions and
already includes the drag force in those directions, plus the standard Morison drag force in the axial direction.
The stagnation and separation points are available as line angle results variables.
Transverse VIV Offset is also available as a line position results variable.
9.2.3 VIV Drawing
With the time-domain VIV models you can control how various aspects of VIV are drawn on the 3D view, by setting
data on the VIV Drawing page on the line data form.
Arc Length Intervals
You can control which nodes have VIV detail drawn, by specifying one or more Arc Length Intervals. An arc length
interval specifies a contiguous length of line From one specified arc length To another. The VIV details are drawn
for all nodes whose arc lengths fall in any one of the specified intervals. For convenience '~' in the From column
means End A of the line, and '~' in the To column means End B.
For example, to view the detail for one node only, specify 1 arc length interval and set both its From and To values
equal to the arc length of that node. Whereas to view the detail for the whole line specify 1 arc length interval and
set both its From and To values equal to '~'.
What is Drawn
The following VIV details are drawn for all nodes whose arc lengths fall in any one of the specified arc length
intervals.
For all the time domain VIV models, the vortex force is drawn as a line radiating from the disc centre in the direction
of the vortex force. The line length is scaled so that a vortex force equal to the standard Morison drag force with
Cd=1 in a relative velocity of 1m/s, is represented by a line 1 disc radius long (i.e. just reaching the edge of the disc).
For the vortex tracking models only, and only if the maximum number of vortices logged is set greater than zero,
then the following extra details are drawn.
- The node is drawn as a disc (even if you have not specified nodes drawn as discs) and the stagnation and
separation points are drawn on the edge of the disc.
- The positive and negative vortices are drawn as circles whose areas are proportional to the vortex strengths.
The constant of proportionality can be controlled by setting Area per Unit Strength.
- The centre-lines of the positive and negative vortex sheets, and the wake line are drawn.
w
VIV Toolbox, Time Domain Models
421
Note: The vortices and sheet centre-lines drawn are limited by the specified maximum number of vortices
logged.
For all these items you can control the pen used for drawing. With the vortex tracking models, for example, this
allows you to suppress (by setting the pen style to null) or downplay (by choosing a suitable colour) individual
aspects of the detail.

Вам также может понравиться