PhD Aljoscha Sander - Code Basis
Find a file
2026-02-04 13:00:45 -05:00
docs run ruff 2026-02-02 23:45:15 -05:00
notebooks removed deprecated functions and added notebook for BW57 2026-02-04 13:00:45 -05:00
results run ruff 2026-02-02 23:45:15 -05:00
scripts progress! 2026-01-30 23:54:44 -05:00
src removed deprecated functions and added notebook for BW57 2026-02-04 13:00:45 -05:00
tests removed deprecated functions and added notebook for BW57 2026-02-04 13:00:45 -05:00
.cookiecutter.json initial commit 2025-12-08 21:11:31 -05:00
.editorconfig initial commit 2025-12-08 21:11:31 -05:00
.gitattributes initial commit 2025-12-08 21:11:31 -05:00
.gitignore run ruff 2026-02-02 23:45:15 -05:00
.pre-commit-config.yaml removed old .md files and upadte ruff pre-commit 2026-01-29 14:00:24 -05:00
CHANGELOG.md fix/gps-installation-times (#6) 2026-01-28 02:52:08 +00:00
CLAUDE.md fix/gps-installation-times (#6) 2026-01-28 02:52:08 +00:00
CODE_OF_CONDUCT.md initial commit 2025-12-08 21:11:31 -05:00
coverage.json thanks, claude (#1) 2025-12-11 01:36:38 +00:00
LICENSE initial commit 2025-12-08 21:11:31 -05:00
Makefile fix/gps-installation-times (#6) 2026-01-28 02:52:08 +00:00
mkdocs.yml run ruff 2026-02-02 23:45:15 -05:00
package-lock.json final run of ruff 2025-12-13 11:21:30 -05:00
package.json final run of ruff 2025-12-13 11:21:30 -05:00
pyproject.toml run ruff 2026-02-02 23:45:15 -05:00
README.md fix/gps-installation-times (#6) 2026-01-28 02:52:08 +00:00
test_data.db updated notebook examples 2025-12-16 15:15:00 -05:00
test_full_pipeline_results.png run ruff 2026-02-02 23:45:15 -05:00
test_geometry_results.png final run of ruff 2025-12-13 11:21:30 -05:00
uv.lock run ruff 2026-02-02 23:45:15 -05:00

twbii - Offshore Wind Turbine Installation Instrumentation

Python 3.13+ Tests Code style: ruff

twbii is a Python package for structural health monitoring and dynamic analysis of offshore wind turbine installations. It provides tools for processing sensor data, performing advanced signal analysis, and extracting structural parameters from vibration measurements collected during installation operations.

Features

  • Data Management: DuckDB-based storage with multi-sensor support and reproducibility tracking
  • Signal Processing: Butterworth filtering, double integration with drift correction, coordinate transformations
  • Advanced Analysis: Stochastic methods, nonlinear dynamics, fatigue analysis, time-frequency analysis
  • Environmental Correlation: ERA5 integration, wave-wind-structure correlation

Quick Start

# Clone and install
git clone https://github.com/flucto-gmbh/phdsan.git
cd phdsan
make install

# Run tests
uv run pytest

# Start Jupyter Lab
uv run jupyter lab

Basic Usage

from twbii.db.connection import create_database, DatabaseConnection
from twbii.processing.pipeline import process_tom_to_deflection
from twbii.analysis.fatigue.rainflow import analyze_rainflow_cycles

# Create database and process data
create_database("turbine_data.db")

with DatabaseConnection("turbine_data.db") as conn:
    # Process TOM data to deflection
    deflection_df = process_tom_to_deflection(
        conn, turbine_id="20_BW27", location="helihoist-1",
        start_time="2021-07-15 10:00", end_time="2021-07-15 12:00"
    )

    # Analyze fatigue cycles
    cycles_df = analyze_rainflow_cycles(deflection_df, component="deflection")

Documentation

Full documentation is available at the documentation site or can be built locally:

uv run mkdocs serve

Package Structure

twbii/
├── src/twbii/           # Main package
│   ├── core/            # Config, types, exceptions
│   ├── db/              # DuckDB operations
│   ├── io/              # Data parsers
│   ├── processing/      # Signal processing
│   ├── analysis/        # Analysis algorithms
│   ├── ais/             # Vessel tracking
│   ├── windfarm/        # Windfarm matching
│   └── metocean/        # Environmental data
├── tests/               # Test suite
├── notebooks/           # Jupyter notebooks
└── docs/                # Documentation

Development

# Install with dev dependencies
make install

# Run tests
make test

# Code quality
uv run ruff check --fix
uv run ty check src/

# Build documentation
make docs

License

MIT License - See LICENSE for details.

Citation

@software{twbii2025,
  title = {twbii: Offshore Wind Turbine Installation Instrumentation},
  author = {Sander, Aljoscha},
  year = {2025},
  url = {https://github.com/flucto-gmbh/phdsan}
}

Project Status: Active development | Test coverage: 61% | Tests: 545 passing