Skip to main content

cabledyn: Python tools for CableDyn

cabledyn is for engineers who script CableDyn analyses. It runs the standalone solver, reads and post-processes results, validates and edits input decks, runs parameter studies, and couples to the solver in-process through the C interface. The full reference is the Python chapter of the CableDyn manual.

Install

From PyPI (Python 3.10 or newer; NumPy is the only required dependency):

py -m pip install cabledyn
py -m pip install "cabledyn[post]"   # adds pandas and matplotlib

The wheels for Windows x64, Linux x86-64 (both for processors with AVX2) and macOS on Apple silicon carry the solver: the CableDyn shared library for the in-process CableDyn class and the standalone driver that CableDynDriver and cabledyn-run run. On another platform pip builds from the source distribution, which needs a Fortran compiler and LAPACK.

The pure Python wheel attached to each GitHub release (cabledyn-0.3.0-py3-none-any.whl) carries no solver. CableDynDriver finds the driver from an explicit path, then the CABLEDYN_DRIVER environment variable, then the driver inside the package, then PATH; the in-process CableDyn class uses the library inside the package, or one named by CABLEDYN_LIBRARY or found in a source checkout's build tree.

Components

Component Purpose
CableDynDriver, cabledyn-run Run a deck, check completion, and read the output tables
read_output, read_openfast_output, read_moordyn_output, read_moordyn_line, read_coupled_run, read_table Read CableDyn, OpenFAST (text and binary), and MoorDyn results
TimeHistory, cabledyn-post Statistics, plots, spectra, coherence, rainflow fatigue, and CSV/TSV export
compare_histories, resample, fft_filter, block_maxima, fit_gumbel, fit_weibull, line_geometry Run comparison, signal processing, extreme values, and line geometry
DeckFile, DeckWriter, cabledyn-deck Validate, edit, and write decks, preserving comments and formatting
generate_deck_cases, parameter_grid, run_study, cabledyn-study Generate and run parameter studies with hashed manifests
CableDyn In-process coupling through the C interface

Example

from cabledyn import CableDynDriver

driver = CableDynDriver(r"C:\CableDyn\CableDyn_driver.exe")
result = driver.run("model.dat", "results/baseline", timeout=600)

history = result.read_main()
print(history.statistics("FairTen1")[0])

fatigue = history.fatigue("FairTen1", start=600.0, stop=4200.0,
                          wohler_exponent=3.0, reference_frequency=1.0, bins=32)
print(fatigue.damage_equivalent_range)

profile = result.read_static()
profile.plot("Curvature", line_id=1)

A returned result is always a converged analysis: a failed solver step, timeout, missing output, or malformed or non-finite data raises a typed exception. Existing results are kept unless overwrite=True, and then restored if the new run fails.

Run a generated study from the command line:

cabledyn-study generated\cases.json --executable C:\CableDyn\CableDyn_driver.exe `
  --output-directory generated\results --jobs 4 --channel FairTen1 --start 600 --stop 4200

cabledyn-study exits 1 if any case failed, 2 for an invalid manifest or unsafe destination, and 3 if the cases ran but study.json or summary.csv could not be written.

Documentation

Licensed under the Apache License 2.0.

Metadata

Release files for cabledyn 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cabledyn 0.3.0
File Size Uploaded Provenance
cabledyn-0.3.0.tar.gz 3.0 MB With provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for cabledyn 0.3.0
File Interpreter ABI Platform
cabledyn-0.3.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
cabledyn-0.3.0-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl Python 3 none Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
cabledyn-0.3.0-py3-none-macosx_14_0_arm64.whl Python 3 none macOS 14.0+ ARM64 Details

Total release size: 58.7 MB

Release files / cabledyn-0.3.0.tar.gz

Download URL cabledyn-0.3.0.tar.gz
Size 3.0 MB
Tags Source
SHA-256 checksum
How to use checksums
b49d6d119d4c640da8c69d2f8a3c5dc92bb236fd7c73084bcb8b246e4739588b
BLAKE2b-256 checksum
How to use checksums
58ce48cea296204a5f2437328bc43cbd36053f8778cfad1da3ca654e403e320e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

Release files / cabledyn-0.3.0-py3-none-win_amd64.whl

Download URL cabledyn-0.3.0-py3-none-win_amd64.whl
Size 7.0 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
8539dbe76a9c2f6030535b5d1a708947bb841a038bd453077517b7380bea0b63
BLAKE2b-256 checksum
How to use checksums
69376af6640f3e9467e84082a1149eea26f4c3b5358417889a9131f069200bbb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

Release files / cabledyn-0.3.0-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL cabledyn-0.3.0-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 26.3 MB
Tags Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 Python 3
SHA-256 checksum
How to use checksums
56ddd7652543cb0ed0a2819e0f89199fcbf6b44723a315241a19b4b1993ff635
BLAKE2b-256 checksum
How to use checksums
c1507e0d4872e48634f8876e2f202772916cb9d4b29570b1c93a6a590bbb7786
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

Release files / cabledyn-0.3.0-py3-none-macosx_14_0_arm64.whl

Download URL cabledyn-0.3.0-py3-none-macosx_14_0_arm64.whl
Size 22.4 MB
Tags Python 3 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
b609e573157f5163a1e9a37fb9b5236871de979e89bee0f263f9bdc25bec02a1
BLAKE2b-256 checksum
How to use checksums
bfaf7312277cc8e802a084ff499ff8bce4c4a7da0abb374ee141ec867b1bee0f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

Security for cabledyn 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 4 files in this release have been uploaded with provenance metadata.

Select from 4 files

Attestation for cabledyn-0.3.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.3.0 This release

4 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page