Case series
It can write the script that varies speed, draft, wave heading or frequency and generates the case folders. For example, a speed series on the OpenFOAM v14 DTCHull hull, with foamDictionary, or a frequency range in Capytaine 3.
Octo for naval and offshore open-source software
OpenFOAM, Capytaine, NEMOH, MoorDyn, MoorPy, OpenFAST, meshmagick and FreeCAD with the Ship workbench are open source, and most of them run in batch. Octo can write the scripts that vary speed, draft or frequency, launch the cases, gather the results and log each run, with everything prepared for human review. The naval engineer decides what holds for the project.
Six possible deliverables, drawn from the research. In all of them, a naval engineer decides and validates; Octo can take on the work of setting up, running and organizing.
It can write the script that varies speed, draft, wave heading or frequency and generates the case folders. For example, a speed series on the OpenFOAM v14 DTCHull hull, with foamDictionary, or a frequency range in Capytaine 3.
It can launch the cases from the command line (NEMOH's preProc, solver and postProc, OpenFOAM's Allrun), check that each one produced its output files and set aside the ones that failed, without hiding any.
It can gather added mass, damping, RAO (response amplitude operator), hull forces and line tensions in CSV or a spreadsheet, with charts that compare the variants.
Deliverable: consolidated CSV + chartsIt can move meshes and coefficients from one format to another with meshmagick and BEMRosetta, and set up the comparison between two BEM (boundary element method) programs or two meshes for the engineer to analyze. Converting a format does not validate the result.
Deliverable: converted files + comparisonWith the MoorDyn Python module, it can advance the line system in time and record the maximum tension of each line. With MoorPy, it can compute quasi-static equilibrium and stiffness for preliminary sizing.
Deliverable: tension per line + stiffnessChecks mesh normals, the hull cut at the waterline, units and axis and phase conventions before running, and logs the version of each tool and the exact command of each run.
Deliverable: log of assumptions, versions and commandsThe same Octo cycle, applied to free hydrodynamics and mooring tools. Each arm has a narrow role; the one who decides is the engineer in charge.
Which commercial programs the team uses, for which stage, and which open tool does the same job. It separates the preliminary study from what goes for approval, which stays with qualified people, the classification society and the maritime authority.
Mesh in NEMOH or WAMIT format, coefficients in Capytaine NetCDF (.nc), OpenFOAM text dictionaries and CSV for tables. One name per case, one folder per run.
GPL v3 for NEMOH, meshmagick and BEMRosetta; Apache 2.0 for Capytaine only from version 3; 3-clause BSD for MoorDyn. Before embedding anything in a product, the decision belongs to legal. Sending controlled data (ITAR/EAR) to any external service, including AI, must first be assessed by the client's compliance team.
Proposes one possible setup: mesh (Gmsh or FreeCAD), check (meshmagick), coefficients (Capytaine or NEMOH), conversion (BEMRosetta) and time-domain simulation with mooring (OpenFAST with MoorDyn). It is a proposal, not a documented standard.
Uses each tool's documented API and flags what it could not find in the documentation. In Capytaine 3, meshes and bodies are no longer modified in place, and scripts written for 2.x may need adjusting.
Before the client's own case, it runs the project's test cases: NEMOH's TestCases/ (make run_1_cylinder), HAMS's CertTest/. Then it runs a few cases and checks the generated file, not the success message.
With your OK, it runs the whole matrix, separates what produced results from what failed and returns the list, without hiding any failed case.
Version of each tool, command of each run, model assumptions and what was confirmed on the team's installation. The next study starts ready.
Octo prepares and runs for human review. The one who says whether the result holds for the project is the naval engineer; approval belongs to qualified people, the classification society and the maritime authority.
The table Octo uses to choose. Below, the equivalence with commercial tools: by function, not by qualification.
| Task | Open-source tool |
|---|---|
| Calm-water hull resistance, with CFD (computational fluid dynamics) | OpenFOAM (DTCHull as a starting point) |
| Hull in waves and floating body in CFD | OpenFOAM (DTCHullWave, floatingObjectWaves); olaFlow for waves |
| Added mass, damping, excitation and RAO (1st order) | Capytaine or NEMOH; HAMS/pyHAMS |
| 2nd-order loads (QTF, quadratic transfer function) | NEMOH v3 |
| Convert, check and fix a hull mesh | meshmagick; Gmsh to generate |
| Compare BEM results between programs and convert formats | BEMRosetta |
| Dynamic time-domain mooring | MoorDyn |
| Quasi-static mooring, stiffness and preliminary sizing | MoorPy |
| Coupled floating wind platform | OpenFAST (+ MoorDyn-F); RAFT in the frequency domain |
| Wave energy converter | WEC-Sim (on MATLAB) |
| Hull form, hydrostatics and preliminary GZ curve (righting arm) | FreeCAD + Ship; FREE!ship Plus |
| Seakeeping by strip theory | PDStrip |
| Commercial | Closest open tool | What is missing |
|---|---|---|
| WAMIT, Ansys AQWA (diffraction and radiation) | Capytaine, NEMOH, HAMS | Integrated interface, support, validation track record with classification societies |
| OrcaFlex, SIMA (mooring and risers) | MoorDyn, MoorPy, OpenFAST | Full riser scope, integrated fatigue, component library, interface |
| STAR-CCM+, Fidelity Fine Marine, SHIPFLOW (naval CFD) | OpenFOAM | Automatic hull mesher, ready-made towing and self-propulsion workflows, support |
| Maxsurf, NAPA (form and hydrostatics) | FreeCAD + Ship, FREE!ship Plus | Damage stability, built-in class rules, integration with structure and production |
| Approved loading computer | None | Classification society approval for use on board |
Three steps. Each one only makes sense after the previous one has shown results on your team.
A proposal, not a promise
On a Linux machine, the engineer asks for the study in engineering language and gets the script and the results to review.
The batches start running in a queue, in parallel, over the approved study matrix.
The tools linked in a single study, from the hull mesh to the mooring.
Every point below has a source published by the vendor, by the project or by the responsible agency. The sources are in the next section.
6
points with a published source, each with its reference shown alongside.
LICENSE.txt on GitLab is GPL v3. The old GitHub repository is archived and shows up as Apache 2.0 in automatic detection; the current repository's license is the one that counts.Source: gitlab.com/lheea/Nemoh and github.com/LHEEA/Nemohtutorials/incompressibleVoF/ folder includes DTCHull, DTCHullMoving, DTCHullProp, DTCHullWave, floatingObject and floatingObjectWaves. In DTCHull, the speed is in 0/U (UMean 1.668).Source: OpenFOAM-14 repository on GitHubOcto prepares everything, but it does not sign. The document of record stays with whoever is accountable for it.
Surveys, calculates, organizes and produces the documents: spreadsheets, reports, lists and drafts.
Deliverable: material ready to checkThe licensed professional checks what Octo delivered before signing. If something doesn't add up, it goes back to Octo with the correction.
Step: checked by the person who signsOcto does not sign. Designs, technical reports, ART/RRT, statements of account and any official document are still signed by the licensed professional at the company or agency: here, the naval engineer in charge and the classification society.
Signature: naval engineer and classification societySites, documentation, repositories and packages published by each project, consulted on Oct 28, 2026.
The assessment starts by listing the tools your team uses and the studies that repeat, without changing anything. Octo proposes a map of what can run on open-source software, with the licenses and limits of each tool, and you decide with that in hand.