CableDyn

CableDyn is an open-source (Apache-2.0) cable and mooring dynamics solver for floating offshore wind turbines and substations, written in modern Fortran 2018. It targets dynamic power cables in the lazy-wave configuration and taut, semi-taut, and catenary moorings. It reads MoorDyn v2 input decks and has been compared with MoorDyn-C, MoorDyn-F, and OrcaFlex on common reference cases.

Release status

CableDyn v0.1.0 is the current stable release and the first public release. Every comparative-accuracy statement is linked to a passing benchmark in CableDyn verification and validation. The project remains below 1.0.0, so public APIs may evolve between minor releases.

Two solver paths

CableDyn is built on two position-based finite-element formulations, with no rotation degrees of freedom in the line elements:

Path

Used for

EI = 0 cable path

chains and moorings — a positions-only element, a banded Newton/Armijo static solve seeded from an analytical catenary, and generalised-α dynamics with Morison and seabed loads.

cubic-Hermite bending path

lazy-wave dynamic power cables — a position + material-tangent element carrying the exact nonlinear centreline curvature, with a Newton static solve seeded from the exact catenary and continued in EI, and generalised-α dynamics.

Which path a line section uses is decided by its line type’s bending stiffness EI. A mixed deck — chain moorings and a finite-EI power cable — is normal. Time integration is the implicit Chung & Hulbert (1993) generalised-α scheme. The solver core is caller-agnostic behind a single coupling boundary, with a thin shell per target: an OpenFAST v5 module (CompMooring = 5; OpenFAST is maintained by NLR, the National Laboratory of the Rockies, formerly NREL) and a standalone C binding couplable to CFD.

Download to first result in five minutes

  1. Download CableDyn_driver.exe, SHA256SUMS.txt, and Source code (zip) (for the examples folder) from the v0.1.0 release and verify the checksum — Installation. No installer and no runtime DLLs.

  2. Put CableDyn_driver.exe in a working folder, unzip the source archive, and copy its examples folder next to the executable.

  3. Create the output folder (the driver does not create it) and solve a mooring line:

    New-Item -ItemType Directory -Force results | Out-Null
    .\CableDyn_driver.exe .\examples\chain_catenary_shallow_30m.dat .\results\shallow30
    
  4. Read results\shallow30.out (fairlead tension 149.5 kN) and the along-line profile shallow30.static.out — Quickstart: first result in five minutes.

What CableDyn does

Capability

CableDyn_driver.exe (standalone)

openfast.exe (CompMooring = 5)

Chain, wire, polyester, nylon moorings (EI = 0); composite lines

static and dynamic

coupled dynamic

Lazy-wave power cables with bending stiffness (EI > 0), touchdown

static and dynamic

coupled dynamic

Mixed deck: moorings and power cables together

static and dynamic (held ends; moving bodies, rods, and points on the multibody march)

coupled dynamic

Automatic Newton static equilibrium, no initial shape or relaxation

yes

yes (the coupled initial condition)

Seabed contact, friction, structured bathymetry

yes

yes

Current and waves

deck current, waves and wavetrain (Airy, stream-function, JONSWAP and other spectra, directional spreading), WaterKin files

OpenFAST SeaState or WaterKin

Prescribed endpoint motion

motionFile (position, velocity, acceleration), 6-DOF vesselMotion, or vesselRAO (RAO response to the deck waves)

platform motion from OpenFAST

Viscoelastic and Syrope synthetic-rope models

yes

see Capabilities and route selection

Buoys, clump weights, Rigid6 bodies, rigid rods

yes

yes

Line failures (FAILURE)

yes

yes

Modal analysis (nModes), range graphs, discrete ATTACHMENTS

yes

ATTACHMENTS only

Checkpoint/restart, linearisation, FAST.Farm, active tensioning

—

yes (OpenFAST with CompMooring = 5)

Python automation and post-processing (studies, fatigue, spectra)

yes (Python package)

reads OpenFAST outputs

C API for CFD and custom co-simulation

C API reference

—

Route-by-route detail and every named limitation: Capabilities and route selection.

Learning path

Quickstart: first result in five minutes → Tutorials: grounded catenary → spread mooring → lazy-wave cable → prescribed motion → waves and current → synthetic ropes → buoys and rods → Python studies → coupled floating turbine in OpenFAST. Examples catalogues every shipped deck.

Reference and theory

Validation

Static and dynamic results are compared with analytical solutions, OrcaFlex, MoorDyn-C, and MoorDyn-F on reference structures — the IEA-15MW VolturnUS-S moorings and the Lozon et al. (2025) lazy-wave power cables at 80, 200, and 800 m water depth. Every comparison, tolerance, and reproduction command is in CableDyn verification and validation.

Acknowledgements

CableDyn builds on the work of others, and we are grateful to the developers and maintainers of MoorDyn (Hall et al.), whose open input format CableDyn reads and which serves as a comparison reference; of OpenFAST, maintained by NLR (National Laboratory of the Rockies, formerly NREL), which hosts CableDyn as a mooring module; and of OrcaFlex (Orcina Ltd.), the industry reference used for many of the comparisons in CableDyn verification and validation. The codes are cited in References.

How to cite

If CableDyn contributes to published work, cite the method article and the software release as described in How to cite.