Each package is developed with version control, automated testing, and documentation. Papers based on these tools cite the specific release so that results are reproducible.
Packages are opened to the public when the paper introducing them is submitted. This protects the priority of the methods while guaranteeing that every published result can be reproduced with released code.
CableDyn
CableDyn is an 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, and integrates with OpenFAST as a gated CompMooring = 5 module. Every accuracy and stability claim is gated behind a passing benchmark.
Fortran 2018 · Apache-2.0 · v0.2.3
Private — alpha, release planned with first publication
CableXsec
CableXsec is an Apache-2.0 Python library for thermo-mechanical cross-section fatigue analysis of dynamic power cables and SURF — subsea umbilicals, risers, and flowlines. It implements seven levels of physical modelling, from Love and Costello helix kinematics through Mindlin contact and Witz–Tan constitutive modelling to fatigue assessment against DNVGL-RP-0005.
Python · Apache-2.0
Private — alpha, release planned with first publication
VANE — Visualisation and Automated Natural-frequency Extraction
VANE is a Python library that both drives and post-processes OpenFAST linearisations: an auto-parallelised operating-point sweep, physics-aware mode identification, Campbell diagrams with damping trends and resonance crossings, and state-space export for digital twin development. The system identification layer runs the model it builds, with a Kalman estimator, replay validation, and an operating-point scheduler. It is tested end to end against the four OpenFAST r-test reference turbines.
Python · Apache-2.0
Private — beta, release planned with first publication
FOWCON — Floating Offshore Wind CONtroller
FOWCON is a gain-scheduled, damage-aware LQR DISCON runtime for floating offshore wind turbines.
Private — alpha, release planned with first publication
pyBModes
pyBModes is a pure-Python finite element library for wind turbine blade and tower modal analysis. It reads OpenFAST (ElastoDyn, SubDyn, HydroDyn, MoorDyn), BModes .bmi files, and WISDEM/WindIO ontology inputs, solves the coupled flap–lag–torsion–axial modes with a 15-degree-of-freedom Bernoulli–Euler beam element, and emits ElastoDyn-compatible mode-shape polynomials and MAC-tracked Campbell diagrams. It has been validated against the BModes Fortran reference solver on six benchmark cases, with differences below 0.01% in every comparison.
Python · Apache-2.0
Public
RepositoryDocumentation
pyIECWind
pyIECWind generates IEC 61400-1 wind-condition files for the OpenFAST InflowWind module, implementing the wind-condition models historically provided by NREL's IECWind tool behind a typed, validated, and regression-locked Python API and command-line interface.
Python · MIT
Public
RepositoryDocumentation
OpenFAST, ROSCO and TurbSim syntax highlighting for VS Code
This extension provides syntax highlighting for OpenFAST input files and ROSCO controller input files in Visual Studio Code.
JavaScript
Public
RepositoryVS Code Marketplace
Our simulations run on a stack of industry-standard tools alongside the in-house packages. Abaqus is the platform for nonlinear finite element analysis, including user material subroutines (VUMAT/UMAT) for fracture modelling and explicit dynamics for impact problems. OrcaFlex and OrcaWave handle mooring, cable, and hydrodynamic analysis, and OpenFAST provides coupled aero-hydro-servo-elastic simulation of wind turbines, including batch design load case processing. Altair HyperWorks covers meshing and post-processing. Development is done primarily in Python (NumPy, SciPy, JAX, scikit-learn, PyTorch), with MATLAB used for selected signal processing and control work.
The lab runs a dedicated computational environment for large-scale nonlinear simulation, coupled offshore dynamics, and parametric integrity studies, built around sustained engineering workloads rather than short interactive jobs.
Primary simulation workstation
SMIL2
Configured for sustained, CPU-intensive simulations, large in-memory models, and extended computational campaigns.
- Processor
- AMD Ryzen Threadripper PRO 7965WX; 24 cores and 48 threads; 4.20 GHz base clock, with boost frequencies up to 5.30 GHz
- Memory
- 128 GB DDR5-5200 ECC RDIMM across eight fully populated memory channels
- Graphics
- NVIDIA RTX 2000 Ada Generation with 16 GB GDDR6 memory
- Storage
- 2 TB PCIe 5.0 NVMe SSD for the operating system and active projects; dedicated 4 TB PCIe 5.0 NVMe SSD for simulation outputs and research datasets
Secondary workstation
SMIL
Provides dedicated capacity for Abaqus/Explicit ice–structure interaction analyses and expands the lab's parallel simulation capability.
- Processor
- AMD Ryzen Threadripper PRO 7945WX; 12 cores and 24 threads; 4.70 GHz base clock, with boost frequencies up to 5.30 GHz
- Memory
- 128 GB DDR5-5200 ECC RDIMM across eight memory channels
- Graphics
- NVIDIA RTX A1000 with 8 GB GDDR6 memory
- Storage
- 2 TB and 1 TB NVMe SSDs, supplemented by a 2 TB HDD for archival storage