Repository navigation
CableDyn 0.4.2 is a robustness and speed release. Finite-EI statics now converge on graded meshes, in cross currents, with attachments, Rigid ends and as-laid friction, and no longer depend on the line's azimuth. Node tension next to touchdown converges at second order. The modal analysis of long lines is up to 100 times faster. A new option gives a mesh-independent axial damping ratio. Every shipped example deck now runs in the test suite. On the 63 example decks that 0.4.1 also runs it takes 9 % less time in all, and no deck is slower.
Some outputs change. The table below lists them by route, and the Upgrading section has the sizes.
What changes, and where
| Output | Standalone driver | C API and Python | OpenFAST and FAST.Farm |
|---|---|---|---|
Finite-EI node angles (L<L>N<J>Dec/Azi, FairDecl, FairIncl, FairAngle and the Anch forms, the .static.out angle columns, the range-graph Declination, the reported line tangent) |
changes | changes | changes |
| Finite-EI node tension, curvature and bend moment next to the touchdown point | changes | changes | changes |
| VIV lift of a line written fairlead first | changes | changes | changes |
| Static tensions of a one-section Syrope line | up to 3e-4 | up to 3e-4 | up to 3e-4 |
EI = 0 lines in a current that varies in space |
n/a | starts from the driver's static state | n/a (SeaState field) |
| Modal shapes of a long line | sign of a mode with mirrored largest components | same | n/a |
Positions, forces and tensions elsewhere are unchanged, and the finite-EI dynamic-step, multibody and EI = 0 speed-ups are bit-identical.
Added
OPTION axialDampingRatio mode1: a negativeBAis the damping ratio of the line's first axial mode, the same on any mesh. The defaultsegmentkeeps MoorDyn's damping ratio per segment, and a note now gives the first-mode damping this sets on the line's mesh.VIVphaseSeed zero: starts every VIV phase at zero, as MoorDyn-F in OpenFAST v5.0.0 does. The defaultspreadkeeps MoorDyn-C's start.- Initialisation notes for a modal analysis about an unstable static state, and for a
Point3buoy that starts off its static balance. - New examples: cross-flow VIV, mode-1 axial damping, MoorDyn-C
WaveKin 3andCurrents 2/5files, viscoelastic and Syrope composite legs on an RAO-driven floater, a cable shared by two moving floaters, buoyancy modules under a bend stiffener, a sloping bathymetry with as-laid friction, torsion with one end free, and the modes of a composite line. - All 65 shipped decks now run in CTest and in the example fallback scan.
Changed
- The modal analysis of a long line is many times faster: a shift-invert block Lanczos iteration with a certified count, in place of LAPACK's band reduction. 10 modes of a 4000-element line take 0.5 s instead of 55 s; frequencies agree to 1e-15.
- Less redundant work in the finite-EI dynamic step (2-15 % faster on the examples) and in
EI = 0coupled loads (a moored Rigid6 body about 7 % faster), bit-identical. modified_newton Truekeeps full Newton for a finite-EI cable inside the multibody march, where reuse cost more than it saved.- A compressed finite-EI static solve stops refining once two passes leave the compression in place (6 s instead of 76 s to the same message).
- The standalone driver runs a line of
EI = 0and finite-EI sections as one finite-EI cable, as the C API and OpenFAST do. - The L5 wall-clock records are measured again with the release driver and committed with their scripts.
Fixed
- Touchdown: finite-EI node tension, curvature and bend moment next to the touchdown point. The floor reaction now follows the touchdown point inside its element, so the error falls at second order and the outputs vary continuously.
- Tangent outputs of finite-EI lines take the Hermite tangent; at a
Rigidend they give the direction the clamp holds. - Finite-EI statics:
- graded meshes and cross currents;
- discrete attachments in a cross current, and their stalled polish;
Rigidends in a drag continuation;- azimuth-dependent failures of the full-stiffness restart;
- as-laid friction on a bathymetry shallower than the cable radius;
- a misleading residual-floor note.
EI = 0and point statics no longer cycle at the round-off floor or at a slack/taut kink.- Syrope: each element starts on its own secant, so long and inclined taut ropes start at rest; strongly concave working curves converge.
- VIV: the lift of a line written fairlead first matches MoorDyn's.
- Axial damping: the
BAof an asymmetric compositeEI = 0line, and finite-EI steps held at rest under strong axial damping. - Stiffeners: two STIFFENERS rows sharing an element no longer make its EI negative.
- C API and Python: the spatially varying current on
EI = 0lines is sampled as the driver samples it, and a refused step leaves the fluid field as it was. - Inputs refused by name: time steps below 1e-100 s, and finite-EI line types without mass. Overridden
wavesandcurrentrows no longer leave a bound behind. - Python deck validator matches the solver on channels, stiffener bounds and wave/current rows.
Upgrading
- Finite-EI node angles change, by up to 3.1 deg at the clamped end of
buoy_clamped_cable.dat, 1.8 deg in the static profile oflozon_gomex80_power_cable_motion.dat, and 0.2 deg or less on most other finite-EI examples. Regenerate reference results that use them. Positions, forces, tensions, curvatures and everyEI = 0line are unchanged by this. - VIV decks with a line written fairlead first now give MoorDyn's response; their lift changes direction.
- One-section Syrope lines move their static tensions by up to 3e-4.
- C API and Python decks in a spatially varying current start from the driver's static state.
Assets
| Asset | Contents | SHA-256 |
|---|---|---|
CableDyn_driver.exe |
Standalone solver for Windows x64 with AVX2 (static, no runtime DLLs) | c1a8ca25390bec4dc029aee9dd72c92d216c0f4cb26eb4c974aaf87aee734832 |
openfast.exe |
OpenFAST v5.0.0 with CableDyn as CompMooring = 5, Windows x64 with AVX2 |
53a0bb6be8311f6afc69e8ac26b529166a068cdf57cecefb90316d15d2a33f35 |
cabledyn-0.4.2-py3-none-any.whl |
Python package | 296126705668a120def9b5dfde3f825a6eab0ede19a35987f4b0ff84d9d39410 |
cabledyn-0.4.2.tar.gz |
Python source distribution | e1cc496568f4a4aec784250a859e3c48fe64bd64af5e3ec66a2befd412623d0d |
SHA256SUMS.txt |
Checksums of the four files above |
The platform wheels with the native library and driver are on PyPI. The v0.4.2 tag is annotated, not signed.
CableDyn builds on OpenFAST (NLR, formerly NREL) and reads MoorDyn-format decks thanks to the open format of MoorDyn (Hall et al.). We thank both communities.
The build and test record is in validation/RELEASE_0_4_2.md; the full list of changes is in CHANGELOG.md.