Skip to main content

A Python package for analyzing vessel data.

Project description

cetos

CI PyPI Python Version License

Open-source tools for analyzing vessel data.

Overview

cetos provides tools for analyzing vessel performance, estimating fuel consumption, and evaluating energy systems for maritime vessels. It implements methodologies from the IMO Fourth GHG Study 2020.

Features

  • Fuel Consumption Estimation: Calculate vessel fuel consumption based on IMO methodologies
  • Energy System Analysis: Analyze batteries, hydrogen systems, and hybrid propulsion
  • AIS Data Processing: Convert AIS data to voyage profiles
  • Multiple Vessel Types: Support for various vessel types (ferries, container ships, tankers, etc.)

Installation

Install cetos using pip:

pip install cetos

Quick Start

from cetos import imo

# Define vessel characteristics
vessel_data = {
    "length": 39.8,  # meters
    "beam": 10.46,  # meters
    "design_speed": 13.5,  # knots
    "design_draft": 2.84,  # meters
    "double_ended": False,
    "number_of_propulsion_engines": 4,
    "propulsion_engine_power": 330,  # kW per engine
    "propulsion_engine_type": "MSD",
    "propulsion_engine_age": "after_2000",
    "propulsion_engine_fuel_type": "MDO",
    "type": "ferry-pax",
    "size": 686,  # GT
}

# Define voyage profile
voyage_profile = {
    "time_anchored": 10.0,  # hours
    "time_at_berth": 10.0,  # hours
    "legs_manoeuvring": [(10, 10, 6)],  # (distance, speed, draft)
    "legs_at_sea": [(30, 10, 6), (30, 10, 6)],
}

# Calculate fuel consumption
results = imo.calculate_fuel_consumption(vessel_data, voyage_profile)
print(f"Total fuel consumption: {results['total_fuel']} tonnes")

Modules

IMO Module (cetos.imo)

Functions for estimating vessel fuel consumption based on IMO Fourth GHG Study 2020 methodologies.

Energy Systems (cetos.energy_systems)

Tools for analyzing vessel energy systems including batteries, hydrogen, and internal combustion engines.

AIS Adapter (cetos.ais_adapter)

Process AIS (Automatic Identification System) data and convert it to voyage profiles.

Analysis (cetos.analysis)

Additional analysis tools for vessel performance evaluation.

Development

Quick Setup with uv (Recommended)

uv is a fast Python package installer and resolver:

# Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh

# Clone the repository
git clone https://github.com/RISE-Maritime/cetos.git
cd cetos

# Create virtual environment and install dependencies
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install -e ".[dev]"

Using pip

# Clone the repository
git clone https://github.com/RISE-Maritime/cetos.git
cd cetos

# Create and activate virtual environment
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install in editable mode with dev dependencies
pip install -e ".[dev]"

Using Dev Containers

This repository includes a dev container configuration for VS Code. Simply open the repository in VS Code and select "Reopen in Container" when prompted.

Running Tests

pytest tests/

Code Formatting

black .
ruff check --fix .

Contributing

Contributions are welcome!

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

References

[1] IMO. Fourth IMO GHG Study 2020. International Maritime Organization.

Contact

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cetos-0.0.0.tar.gz (49.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cetos-0.0.0-py3-none-any.whl (29.0 kB view details)

Uploaded Python 3

File details

Details for the file cetos-0.0.0.tar.gz.

File metadata

  • Download URL: cetos-0.0.0.tar.gz
  • Upload date:
  • Size: 49.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cetos-0.0.0.tar.gz
Algorithm Hash digest
SHA256 dd4d959f7c4d7aff546caaa24a8eba34d3a44408dfbf5b6c6ea91bbfd5f9377f
MD5 c1c1c4de875213222f3e7fdd9465bf91
BLAKE2b-256 a52c38be717fe8e8477d0a4182dce4d639cf4ba4d903f4a0b79ab28eb8ce5ac3

See more details on using hashes here.

Provenance

The following attestation bundles were made for cetos-0.0.0.tar.gz:

Publisher: release.yml on RISE-Maritime/cetos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cetos-0.0.0-py3-none-any.whl.

File metadata

  • Download URL: cetos-0.0.0-py3-none-any.whl
  • Upload date:
  • Size: 29.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cetos-0.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 870b2774ba5b70f48c99b01765ea32d376c22c0e6b9341672deda79a99ed97c9
MD5 81f2c9ba072bd70a2a97f6e6c5a6cfb2
BLAKE2b-256 b590bd8d4fa99d5046927105aa0d437971bfafd4b45c496b05696854e45712e1

See more details on using hashes here.

Provenance

The following attestation bundles were made for cetos-0.0.0-py3-none-any.whl:

Publisher: release.yml on RISE-Maritime/cetos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page