Seastead Wave Simulation Software Comparison

Open-source and free tools for simulating a tensegrity semi-submersible seastead with articulated legs, cables, and nonlinear wave interaction

Executive Summary

Your seastead is an unusual structure: a semi-submersible platform with four 4-ft-diameter cylindrical legs at 45° angles, connected by cables in a tensegrity arrangement, with articulated pivot points allowing relative motion between leg pairs and the hull. You need to simulate this in waves with enough fidelity to capture:

These requirements immediately rule out pure BEM (Boundary Element Method) approaches as your primary hydrodynamic solver. BEM assumes small motions around a mean position and linear free-surface conditions. Your legs going from ⅓ to nearly fully submerged violates these assumptions fundamentally. You were right to suspect this.

🏆 Primary Recommendation: DualSPHysics + MoorDyn

DualSPHysics is a GPU-accelerated Smoothed Particle Hydrodynamics (SPH) solver that handles fully nonlinear wave-structure interaction with no linear assumptions. Your NVIDIA A6000 (48 GB VRAM, 10,752 CUDA cores) is an exceptional match. Combined with MoorDyn for cable dynamics, this gives you the highest-fidelity simulation of your specific design. It directly produces 3D visualizations via ParaView. Estimated time to first simulation with Claude Code assistance: 2–3 weeks.

🥈 Secondary Recommendation: OpenFOAM + MoorDyn + waves2Foam/olaFlow

OpenFOAM using Volume of Fluid (VOF) for free surface tracking gives you CFD-grade accuracy with full Navier-Stokes resolution. It can handle your nonlinear geometry changes, viscous effects, and wave breaking. It is more computationally expensive than SPH for this application but gives publication-quality results. Your 64-core Threadripper can run large meshes with adaptive mesh refinement. Estimated time: 3–5 weeks.

Below is a detailed comparison of every viable option, with estimated setup times, accuracy assessments, video references, reusability for new designs, and specific notes about your seastead geometry.

1. Your Seastead Design & Key Simulation Challenges

TOP VIEW Front Left Leg Front Right Leg \ / \ 40 ft x 16 ft / \ Living Area / +==================+ | | | PLATFORM | ~36,000 lbs total | | +==================+ / \ / \ / \ Back Left Leg Back Right Leg Legs: 4 ft diameter, 24 ft long, 45° angle Bottom rectangle: ~50 ft x 74 ft Cables: cross-bracing at bottom + perimeter rectangle SIDE VIEW +=============+ <-- Living platform / | | \ / | | \ 45° legs / | | \ ~~~~~~~~~~•~~~~~|~~~~~~~~~~~|~~~~•~~~~~~~~~ waterline / | | \ / \ •-----------cable----------• <-- Bottom of legs Each leg: ~12 ft above water, ~12 ft below (at rest) Variable submergence: from 8 ft to ~22 ft in waves

Critical Simulation Requirements

Nonlinear Hydrostatics
CRITICAL

Leg submergence varies from ~33% to ~90%. Buoyancy forces change nonlinearly as circular cylinders at 45° enter/exit water.

Cable Snap Loads
CRITICAL

Cables can go slack then snap taut. Need to detect peak tensions after re-tensioning. Linear mooring models miss this entirely.

Articulated Joints
IMPORTANT

Front legs pivot as a pair, back legs mirror. Changes geometry, thrust direction, and wave interaction in real time.

Viscous Drag
IMPORTANT

4-ft diameter cylinders at Keulegan-Carpenter numbers where drag dominates over diffraction. Morison equation applicable but needs Cd calibration.

Wave Steepness Range
IMPORTANT

Testing from calm seas to survival conditions. Steep waves = nonlinear free surface. Need at least 2nd-order wave theory, ideally fully nonlinear.

Visualization
IMPORTANT

Must produce clear 3D animations showing cable tensions, leg positions, and failure modes. ParaView or similar post-processing.

2. Why BEM Is Insufficient For Your Design

Boundary Element Methods (used by Capytaine, WAMIT, NEMOH, Ansys AQWA, and as the hydrodynamic pre-processor for WEC-Sim and Project Chrono's hydrodynamics module) solve the linearized potential flow problem. This means:

⚠️ Bottom Line on BEM

For your design, BEM-based tools will give you qualitatively wrong answers. They'll underpredict motion amplitude, miss the damping from viscous drag on legs, completely miss cable snap loads, and won't capture the nonlinear restoring forces from variable submergence. You are correct that you need something better. The time you'd spend setting up BEM would be largely wasted for your specific application.

The one exception: you could use a Morison-equation based time-domain solver (which is NOT BEM) to get reasonable engineering estimates quickly. More on this below.

3. DualSPHysics (GPU-SPH) — Top Pick

Overview

DualSPHysics is an open-source Smoothed Particle Hydrodynamics (SPH) solver, heavily optimized for GPU computation. It simulates fluids as particles rather than on a mesh. This means there is NO linearization of the free surface — waves form naturally, break naturally, and interact with bodies in a fully nonlinear manner. Bodies can have arbitrary geometry, move freely, be connected by joints and springs, and undergo large motions including variable submergence.

It was originally developed for coastal engineering (wave interaction with breakwaters, harbors, etc.) but has been extensively extended for floating body dynamics including mooring systems via its coupling with MoorDyn (lumped-mass mooring dynamics library) and Project Chrono (for multibody articulated mechanisms).

Why It's the Top Pick for Your Design

Accuracy for Your Design
HIGH
GPU Utilization
EXCELLENT
Cable Snap Loads
YES (MoorDyn)
Articulated Joints
YES (Chrono coupling)
Nonlinear Hydrostatics
FULLY NONLINEAR
Visualization Quality
EXCELLENT (ParaView)
Linux Support
NATIVE
Time to First Simulation
2–3 weeks
Time for New Design Variant
1–3 days

Estimated Setup Timeline (with Claude Code)

Days 1–2: Install DualSPHysics from source with CUDA. Verify GPU works with example cases. Install ParaView. Your A6000 should be auto-detected.
Days 3–5: Run the built-in floating body examples (there are several with wave tanks and floating boxes). Understand the XML input format and GenCase geometry generator. Claude Code can help parse and modify the XML.
Days 6–8: Create your seastead geometry using DualSPHysics's built-in primitives (cylinders, boxes) or import STL files. Define the multi-body system: platform body, four leg bodies, revolute joints at leg-platform connections. Claude Code can generate the STL files programmatically.
Days 9–11: Enable Chrono coupling for multibody dynamics. Define joint constraints for leg pivoting. Add cable definitions using MoorDyn coupling. Set mass properties for each body.
Days 12–14: Set up wave generation (piston or 2nd-order wave maker). Run first complete simulation. Debug and iterate. View results in ParaView.
Days 15–21: Parameter studies: increase wave height systematically. Extract cable tension time histories. Identify snap load events. Create visualization animations. Optimize particle resolution for accuracy vs. speed tradeoffs.

✅ Advantages

  • No linear assumptions whatsoever
  • GPU acceleration = fast iterations
  • A6000 is ideal hardware
  • Handles variable submergence naturally
  • Viscous drag from first principles
  • MoorDyn for proper cable dynamics
  • Chrono for articulated joints
  • Beautiful ParaView visualizations
  • Active development community
  • Well-documented with many examples
  • Python post-processing tools available
  • Can simulate wave breaking on structure

❌ Limitations

  • SPH has inherent numerical dissipation — waves lose energy over long propagation distances. Wave tank must be sized carefully.
  • Resolution-dependent accuracy: need convergence studies
  • Long simulations (hours of real-time ocean) become very expensive even on GPU — typically simulate 30–300 seconds of real time
  • Surface tension not well modeled (irrelevant for your scale)
  • Turbulence modeling is basic compared to OpenFOAM
  • Learning curve for XML input format (mitigated by Claude Code)
  • Compiling from source with Chrono coupling requires some care

YouTube Reference Videos

Key Technical Details

Particle resolution: For your 4-ft diameter legs, you want at least 8–10 particles across the diameter for good force resolution. That means a particle spacing (dp) of about 0.4–0.5 ft (12–15 cm). For a wave tank of ~100m × 60m × 10m deep, that's approximately 5–15 million particles — well within your A6000's capability.

Simulation speed: On an A6000, with ~10M particles, expect roughly 10–50× slower than real time (i.e., 1 second of real time takes 10–50 seconds to compute). A 60-second simulation would take 10–50 minutes. A 5-minute simulation would take 1–4 hours. This is very reasonable for design iteration.

Website: https://dual.sphysics.org/

Source: https://github.com/DualSPHysics/DualSPHysics

4. OpenFOAM (CFD-VOF) — Runner Up

Overview

OpenFOAM (Open Field Operation and Manipulation) is the industry-standard open-source CFD toolkit. For wave-structure interaction, it uses the Volume of Fluid (VOF) method to track the free surface on a mesh. The solver interFoam (or interIsoFoam for sharper interfaces) solves the full incompressible Navier-Stokes equations with a two-phase (air-water) model.

Wave generation is handled by libraries like waves2Foam or olaFlow (also known as IHFOAM), which can generate regular waves, irregular waves (JONSWAP, Pierson-Moskowitz spectra), and even focused wave groups for extreme event testing.

For floating body motion, OpenFOAM uses sixDoFRigidBodyMotion or overset (chimera) mesh approaches. For multiple articulated bodies with cables, you'd couple with MoorDyn (which has an OpenFOAM coupling library) or use a custom implementation.

Why It's the Runner Up

  • Highest theoretical accuracy: Full Navier-Stokes with turbulence modeling (k-ω SST, LES) gives the most physically complete simulation.
  • Excellent wave modeling: waves2Foam and olaFlow have been validated extensively against laboratory data. Can generate exact wave conditions you want to test.
  • Your 64-core Threadripper is ideal: OpenFOAM parallelizes across CPU cores using MPI. 64 cores can handle meshes of 10–50 million cells.
  • Mesh-based = accurate forces: Pressure integration over mesh surfaces gives very accurate force/moment predictions, generally more accurate than SPH for force coefficients.
  • Enormous community: Thousands of users, extensive documentation, forums, tutorials.
Accuracy for Your Design
VERY HIGH
GPU Utilization
LIMITED
CPU Utilization
EXCELLENT
Cable Snap Loads
YES (MoorDyn coupling)
Articulated Joints
CHALLENGING
Nonlinear Hydrostatics
FULLY NONLINEAR
Visualization Quality
EXCELLENT (ParaView)
Time to First Simulation
3–5 weeks
Time for New Design Variant
2–5 days

Estimated Setup Timeline (with Claude Code)

Days 1–3: Install OpenFOAM (ESI or Foundation version) on Linux. Install waves2Foam or olaFlow. Run the tutorial wave tank cases. Verify ParaView integration.
Days 4–7: Create your seastead geometry in a CAD tool or with blockMesh/snappyHexMesh. This is where it gets harder than DualSPHysics — meshing complex geometries is OpenFOAM's notorious pain point. Claude Code can help generate the mesh dictionaries.
Days 8–12: Set up a single rigid body floating case first (entire seastead as one body). Get sixDoFRigidBodyMotion working with overset mesh or morphing mesh.
Days 13–18: Add multibody capability. This is the hardest part — OpenFOAM doesn't natively support articulated multibody dynamics well. Options: (a) couple with MoorDyn for cables, (b) use the rigidBodyMotion library which supports joints, (c) custom coded.
Days 19–25: Run simulations, debug, iterate. Mesh refinement studies. Wave height parametric sweeps. Post-processing.
Ongoing: Each simulation of 60 seconds real time at good resolution might take 12–48 hours on your 64-core machine. This is significantly slower per run than DualSPHysics on GPU.

✅ Advantages

  • Highest accuracy available in open source
  • Full turbulence modeling
  • Extremely well validated
  • Huge community and documentation
  • Publication-quality results
  • Uses your 64 CPU cores well
  • Better wave propagation (less numerical dissipation than SPH)
  • Excellent force accuracy on body surfaces
  • Industry standard — results are credible to engineers

❌ Limitations

  • Meshing is painful — especially for moving/articulated bodies. This is OpenFOAM's biggest barrier.
  • Overset mesh for moving bodies adds complexity and potential accuracy issues
  • Multibody articulation is not a strength — requires significant custom work
  • Much slower than GPU-SPH per simulation
  • Doesn't use your A6000 GPU (some experimental GPU solvers exist but are not mature for this)
  • Steep learning curve despite Claude Code help
  • Mesh deformation can fail for large motions, requiring overset which is harder to set up

YouTube Reference Videos

Website: https://www.openfoam.com/ (ESI) or https://openfoam.org/ (Foundation)

5. Project Chrono::FSI (SPH + Multibody)

Overview

You've already tried Project Chrono. The key distinction is between Chrono::Hydro (which uses BEM data from Capytaine/WAMIT — and which you correctly identified as inadequate) and Chrono::FSI (Fluid-Solid Interaction, which uses SPH). Chrono::FSI is actually an SPH solver built directly into the Chrono multibody framework.

The advantage of Chrono::FSI over DualSPHysics is that Chrono's multibody dynamics engine is arguably the best open-source one available — it handles joints, constraints, contacts, cables, and articulated mechanisms natively. The disadvantage is that Chrono::FSI's SPH solver is less mature and less optimized than DualSPHysics for wave-structure interaction problems specifically.

Key Consideration: DualSPHysics Actually Couples WITH Chrono

Here's the crucial insight: DualSPHysics uses Project Chrono as its multibody engine when you enable the coupling. So by using DualSPHysics, you get DualSPHysics's superior SPH solver AND Chrono's superior multibody dynamics. This is why DualSPHysics is the top pick — it's effectively the best of both worlds.

Using Chrono::FSI directly would mean using Chrono's less-optimized SPH solver but with tighter integration into the multibody framework. For most users, the DualSPHysics+Chrono coupling is the better path.

Accuracy for Your Design
HIGH
GPU Utilization
YES (CUDA)
Multibody Dynamics
BEST IN CLASS
Time to First Simulation
2–4 weeks
Time for New Design Variant
1–3 days

✅ Advantages

  • Best-in-class multibody dynamics (joints, constraints, cables)
  • GPU-accelerated SPH
  • Tight coupling between fluid and multibody — no co-simulation overhead
  • Python bindings (PyChrono) excellent for Claude Code workflows
  • You already have some experience with Chrono
  • Handles your articulated legs naturally

❌ Limitations

  • Chrono::FSI's SPH solver is less optimized for wave generation/propagation than DualSPHysics
  • Fewer wave-structure interaction examples and validation studies
  • Smaller user community for the FSI module specifically
  • Documentation for FSI module less complete
  • Wave generation boundary conditions may need custom implementation

YouTube Reference Videos

Website: https://projectchrono.org/

GitHub: https://github.com/projectchrono/chrono

6. Proteus (RANS + Level Set)

Overview

Proteus is a computational mechanics toolkit developed by the U.S. Army Corps of Engineers (ERDC) for simulating fluid-structure interaction problems, particularly in coastal and hydraulic engineering. It uses finite element methods with level set free surface tracking and can solve Reynolds-Averaged Navier-Stokes (RANS) equations.

It includes the chrono module for coupling with Project Chrono for rigid body dynamics and can handle moored floating structures. It has been used for some offshore and wave energy converter simulations.

Accuracy
HIGH
Ease of Use
DIFFICULT
Time to First Simulation
4–8 weeks
Community Size
SMALL

Proteus is Python-based, which is nice for Claude Code integration, but the community is very small and documentation is limited. For your purposes, OpenFOAM gives similar or better accuracy with a much larger support community. Not recommended as a primary choice.

GitHub: https://github.com/erdc/proteus

7. Capytaine + MoorDyn (BEM + Time Domain)

Overview

Capytaine is a Python-based BEM solver (fork of NEMOH) for computing linear hydrodynamic coefficients. MoorDyn handles mooring line dynamics. Together, they can simulate floating bodies with mooring systems in the frequency or time domain.

Why It's Not Recommended for Your Primary Simulation

As discussed in Section 2, BEM is fundamentally inadequate for your design. However, there IS a potential use case:

⚠️ Limited Use Case: Quick Preliminary Screening

You could use Capytaine to get rough hydrodynamic coefficients for a simplified version of your platform (ignoring leg articulation) and MoorDyn for cable dynamics, running time-domain simulations in Python. This would take only 3–5 days to set up and would give you a rough (but quantitatively unreliable) sense of motion responses. The cable tension results from MoorDyn would be more useful than the motion predictions.

Think of it as a quick screening tool: if a design looks terrible even with linearized hydrodynamics, it's definitely terrible. But if it looks okay, you still need to validate with a nonlinear solver.

Accuracy for Your Design
LOW (BEM limitations)
Time to First Simulation
3–5 days
Cable Snap Loads
YES (MoorDyn)
Visualization
BASIC (Matplotlib 3D)
Articulated Joints
NO

✅ Advantages

  • Pure Python — easiest Claude Code integration
  • Very fast setup (days, not weeks)
  • MoorDyn cable dynamics are excellent
  • Good for quick screening of cable configurations
  • Minimal computational requirements

❌ Limitations

  • BEM hydrodynamics fundamentally wrong for your geometry
  • Cannot handle variable submergence
  • No articulated joints
  • Linear assumptions give false confidence
  • Visualization is basic (2D plots, simple 3D)
  • Would need significant custom code for nonlinear hydrostatic corrections

Capytaine: https://github.com/capytaine/capytaine

MoorDyn: https://github.com/FloatingArrayDesign/MoorDyn

8. WEC-Sim + MoorDyn (MATLAB-based)

Overview

WEC-Sim (Wave Energy Converter Simulator) was developed by NREL and Sandia National Laboratories. It's a time-domain solver that uses BEM hydrodynamic data (from Capytaine, NEMOH, or WAMIT) and Simulink/Simscape Multibody for the mechanical system. It can handle articulated multibody systems with constraints, moorings via MoorDyn, and nonlinear hydrostatic restoring forces (as a correction to the linear BEM).

Cost Analysis for Non-Student in Anguilla

You correctly identified the cost issue. Here's the breakdown:

  • MATLAB: ~$940 USD/year (Home license) or ~$2,350/year (Standard)
  • Simulink: ~$1,500/year additional (Standard) or ~$470/year (Home)
  • Simscape Multibody: ~$1,000/year additional (Standard) or ~$170/year (Home)
  • Total (Home): ~$1,580/year — and Anguilla may not qualify for Home license pricing
  • Total (Standard): ~$4,850/year

⚠️ Cost and Licensing

This is NOT open source and should not be on your list. The ~$1,580–$4,850/year cost is unjustified when DualSPHysics gives better accuracy for free. Additionally, WEC-Sim uses BEM hydrodynamic data as its foundation, so it has the same fundamental accuracy limitations as Capytaine for your design, despite having better multibody dynamics on top.

WEC-Sim CAN add nonlinear Froude-Krylov forces and nonlinear hydrostatic restoring, which partially addresses the variable submergence issue. But it still uses linear radiation/diffraction, which is wrong for your slender cylinders.

Furthermore, there is now an effort called WEC-Sim in Python (WecOptTool/WECOPTTOOL) but it doesn't yet replicate full WEC-Sim functionality.

Verdict: Skip this. Your money and time are better spent on DualSPHysics or OpenFOAM.

Website: https://wec-sim.github.io/WEC-Sim/

9. OrcaFlex-like Free Alternatives

What OrcaFlex Does

OrcaFlex (by Orcina) is the industry standard for mooring analysis, cable dynamics, and floating body simulation. It uses Morison equation for slender members, BEM data for large bodies, and has excellent cable/mooring dynamics. It costs ~$15,000–$30,000+/year. Not an option.

Free Alternatives That Capture Some OrcaFlex Functionality

OpenFAST (NREL)

OpenFAST is the open-source aero-hydro-servo-elastic simulation tool for wind turbines. Its HydroDyn module uses Morison equation for slender members AND potential flow for large bodies. Its MoorDyn module (same MoorDyn we keep mentioning) handles cables. SubDyn handles substructure dynamics.

This is actually interesting for your application because HydroDyn's Morison equation formulation is exactly right for your slender cylindrical legs. You would:

  • Model each leg as a Morison member (drag + inertia coefficients)
  • Model the platform as a rigid body
  • Use MoorDyn for cables
  • Get nonlinear hydrostatic restoring from strip-theory integration along each member

The catch: OpenFAST is designed for wind turbines and floating wind platforms. Adapting it for a seastead requires disabling the aerodynamic modules and repurposing the structural framework. It's doable but awkward.

Accuracy for Your Design
MEDIUM-HIGH
Cable Dynamics
EXCELLENT (MoorDyn)
Morison Equation
YES — good for slender cylinders
Time to First Simulation
2–4 weeks
Visualization
BASIC (requires post-processing)

OpenFAST has been used for semi-submersible floating wind platforms, which share some structural similarities with your seastead. The Morison-equation approach in HydroDyn can handle variable submergence if you use the "strip theory" formulation that integrates forces along the instantaneous wetted length of each member.

Website: https://github.com/OpenFAST/openfast

MAP++ (Mooring Analysis Program)

A quasi-static mooring analysis library. Useful for initial cable sizing but doesn't capture dynamic snap loads. MoorDyn is better for your needs.

10. Blender Physics

Current State of Blender Physics for Engineering

Your information is correct: Blender's built-in physics simulations are NOT engineering-accurate and this has not fundamentally changed. Here's the detailed breakdown:

  • Blender's fluid simulation (Mantaflow/FLIP): Designed for visual effects in film/animation. Uses FLIP (Fluid Implicit Particle) method which is physically-based but NOT calibrated for engineering accuracy. No proper wave generation boundary conditions. No validated force computation on bodies. No hydrostatic pressure model. Cannot compute cable tensions.
  • Blender's rigid body physics (Bullet engine): Good for game-like physics. Has constraints and joints. But buoyancy is not modeled — you'd have to fake it with scripts, and it would be physically wrong.
  • FLIP Fluids add-on: An improved fluid simulation add-on. Still VFX-focused, not engineering.

Could It Be Made to Work?

In theory, you could write Python scripts in Blender that:

  1. Compute buoyancy forces analytically based on body position/orientation
  2. Compute wave forces using Morison equation
  3. Apply these forces to rigid bodies each frame
  4. Use Blender's excellent rendering for visualization

But at that point, you're writing your own hydrodynamics engine inside Blender and only using Blender as a renderer. You'd be better off doing the simulation in Python/DualSPHysics/OpenFOAM and using ParaView or Blender only for final rendering of the results.

Engineering Accuracy
NOT SUITABLE
Visualization Quality
BEST (it's a renderer)
Useful Role
Post-processing visualization ONLY

💡 Best Use of Blender

Use Blender as a visualization/rendering tool for results computed elsewhere. Export body positions and cable configurations from your DualSPHysics or OpenFOAM simulation as time series, import them into Blender, and render beautiful photorealistic animations with ocean backgrounds. This produces the most compelling videos for your website. There are Blender add-ons for importing VTK data and for ocean surface generation.

11. Other Tools

Cactus / REEF3D

REEF3D is an open-source CFD solver specifically designed for marine applications. It uses a level set method for free surface tracking and has been used for wave-structure interaction problems. It might be worth investigating as an alternative to OpenFOAM — it's simpler to set up for wave problems. However, it has a much smaller community and limited multibody capability.

Website: https://reef3d.wordpress.com/

FEniCS / Firedrake

General-purpose finite element libraries. Could theoretically be used to build a custom hydrodynamic solver, but this would be a months-long research project, not a practical engineering tool.

Salome-Meca / Code_Aster

Open-source structural FEA platform. Excellent for structural analysis of your legs under load, but not a hydrodynamic simulator. Could be useful later for detailed stress analysis of leg-platform connections and cable attachment points.

OpenSEES

Structural earthquake engineering simulator. Has some hydrodynamic loading capabilities (Morison equation) but is primarily for structures, not fluid dynamics. Not recommended.

ProteusDS

Commercial software by DSA (Dynamic Systems Analysis). Good for mooring and cable dynamics but NOT free. Costs significant money. Skip.

MARIN DIFFRAC / QBlade

QBlade is an open-source wind turbine design tool that recently added floating platform simulation with Morison equation hydrodynamics and MoorDyn mooring. Similar to OpenFAST but with a better GUI. Worth a look as a quick-setup alternative.

Website: https://qblade.org/

HOS-Ocean (Higher Order Spectral)

An open-source nonlinear wave solver. Generates very accurate nonlinear wave fields but doesn't include structure interaction. Could be used as a wave input generator for other tools.

OceanWave3D

Similar to HOS-Ocean — a nonlinear potential flow wave solver. Generates wave kinematics that can feed into Morison equation calculations. No structural interaction.

Custom Python + Morison Equation + MoorDyn

A surprisingly viable option for quick engineering estimates: write a Python time-domain simulator that uses Morison equation for hydrodynamic forces on each leg, instantaneous-waterplane hydrostatics for buoyancy, MoorDyn (via its C library or Python wrapper) for cables, and a simple rigid body dynamics integrator. Claude Code could write this in 3–5 days. Accuracy would be engineering-estimate level (not CFD-grade) but it would capture the key physics: nonlinear buoyancy, drag-dominated loading, cable snap loads, and articulated motion.

12. Master Comparison Table

Tool Method Free? Accuracy
(Your Design)
Nonlinear
Hydrostatics
Cable
Snap Loads
Articulated
Joints
GPU
Usage
CPU
Usage
Visualization Setup Time
(w/ Claude)
New Design
Variant
Community
Size
DualSPHysics + MoorDyn + Chrono SPH (particle) ✅ Yes HIGH FULL YES YES A6000 ★ Some ParaView ★ 2–3 weeks 1–3 days Medium
OpenFOAM + olaFlow + MoorDyn VOF (mesh CFD) ✅ Yes VERY HIGH FULL YES HARD No 64-core ★ ParaView ★ 3–5 weeks 2–5 days Large ★
Chrono::FSI SPH (particle) ✅ Yes HIGH FULL YES BEST ★ A6000 ★ Some ParaView 2–4 weeks 1–3 days Small
OpenFAST (HydroDyn + MoorDyn) Morison + BEM hybrid ✅ Yes MEDIUM-HIGH PARTIAL YES LIMITED No Single Basic 2–4 weeks 1–2 days Large
Custom Python + Morison + MoorDyn Semi-empirical ✅ Yes MEDIUM YES YES YES No Single Matplotlib/VPython 3–7 days 0.5–1 day N/A (custom)
Capytaine + MoorDyn BEM + time domain ✅ Yes LOW NO YES NO No Single Basic 3–5 days 0.5–1 day Medium
WEC-Sim BEM + Simulink ❌ ~$1,500–$5,000/yr MEDIUM PARTIAL YES YES No Single MATLAB plots 1–2 weeks 1–2 days Medium
REEF3D Level set CFD ✅ Yes HIGH FULL NO NO OpenMP Multi-core ParaView 3–5 weeks 2–4 days Small
QBlade Morison + BEM ✅ Yes (CE edition) MEDIUM PARTIAL YES LIMITED No Single Built-in 3D 1–2 weeks 1–2 days Medium
Blender FLIP (VFX) ✅ Yes NOT SUITABLE NO NO VIA SCRIPT Render only Render BEST ★★★ N/A N/A Huge

13. Reusability: How Hard to Simulate a New Design?

This is a critical question since you want to iterate through multiple tensegrity configurations.

DualSPHysics (Top Pick)

Reusability: EXCELLENT (1–3 days for new design)

The DualSPHysics workflow is:

  1. Define geometry in an XML file (or import STL files)
  2. Define body properties, joints, and cables in the same XML
  3. Define wave conditions
  4. Run GenCase → DualSPHysics → post-processing

For a new seastead design with different cylinder sizes and configuration, you modify the XML file (or have Claude Code modify it) to change dimensions, positions, joint locations, and cable attachments. Everything else (wave conditions, solver settings, post-processing scripts) stays the same.

With Claude Code, you could build a parametric Python script that generates DualSPHysics XML input files from high-level design parameters (leg length, leg angle, leg diameter, platform size, cable configuration). Then testing a new design is literally changing a few numbers and running the script. This is the ideal workflow for design exploration.

OpenFOAM (Runner Up)

Reusability: MODERATE (2–5 days for new design)

The bottleneck is mesh generation. Every new geometry requires re-meshing with snappyHexMesh or cfMesh, which often requires manual tuning of mesh parameters to get good quality. For similar designs (same basic shape, different proportions), you can parameterize the mesh generation scripts, but for fundamentally different configurations, expect 2–5 days of mesh work.

Custom Python + Morison

Reusability: BEST (0.5–1 day for new design)

Since the geometry is just defined as lists of cylinder positions, lengths, and angles in Python, changing the design is trivial. This is the fastest way to screen many designs quickly, even if accuracy is lower.

🗺️ Phased Approach

Phase 1: Quick Screening Tool (Week 1)

Build a custom Python + Morison equation + MoorDyn simulator

  • Claude Code writes a Python time-domain simulator using:
    • Morison equation (drag + inertia) on each cylindrical leg
    • Analytical nonlinear hydrostatics (integrate buoyancy along instantaneous wetted length of inclined cylinders)
    • MoorDyn (via cmoordyn Python wrapper) for cable dynamics
    • Simple rigid body dynamics with constraints (scipy.integrate.solve_ivp)
    • VPython or Matplotlib 3D animation for visualization
  • This gives you a tool to rapidly screen 10–20 design variants in a few days
  • Accuracy: engineering estimate (±20–30% on motions, better on cable loads)
  • Identifies the 2–3 most promising designs for detailed simulation

Phase 2: High-Fidelity Simulation (Weeks 2–4)

Set up DualSPHysics + MoorDyn + Chrono

  • Install and configure DualSPHysics with CUDA for your A6000
  • Build the seastead model with Chrono coupling for articulated joints
  • MoorDyn for cable network
  • Run detailed simulations of the 2–3 best designs from Phase 1
  • Systematic wave height parametric study: 0.5m, 1m, 1.5m, 2m, 2.5m, 3m, 3.5m, 4m
  • Extract cable tension time histories, identify snap loads, find failure thresholds
  • Generate ParaView animations for each critical case

Phase 3: Validation & Refinement (Weeks 4–6, optional)

Run selected cases in OpenFOAM for comparison/validation

  • Take the final design and 2–3 key wave conditions
  • Run in OpenFOAM with VOF for independent validation of DualSPHysics results
  • Compare forces, motions, and cable loads between the two methods
  • If they agree well, you have high confidence in the DualSPHysics results for the full parametric study
  • If they disagree, investigate why and improve your models

Phase 4: Presentation (Week 5–6)

Use Blender for final visualization

  • Import DualSPHysics results into Blender
  • Add photorealistic ocean, sky, textures
  • Render compelling videos for your website and investor/community presentations
  • Show both calm-sea operation and survival-condition behavior

15. Validation Strategy

How to Know Your Simulation Is Right

Since you won't have model-test data for your specific design, validation relies on:

  1. Convergence studies: Run the same case at 2–3 different resolutions (particle sizes for SPH, mesh sizes for OpenFOAM). If results converge (forces/motions change by <5% between resolutions), you have grid-independent results.
  2. Cross-code comparison: Run the same case in DualSPHysics and OpenFOAM. If two fundamentally different methods give similar answers, confidence is high.
  3. Analytical benchmarks:
    • In still water: check that static buoyancy matches your hand calculation (Archimedes' principle)
    • Free decay test: displace the platform and release. Check natural periods match theoretical predictions
    • Single cylinder in waves: compare forces on one leg against Morison equation predictions (well-validated empirical formula)
  4. Energy conservation: Check that the wave energy flux entering the domain roughly equals the sum of energy absorbed by the structure (drag work) plus energy leaving the domain. Large discrepancies indicate numerical problems.
  5. Physical sanity checks:
    • Does it float at the right waterline?
    • Does it return to equilibrium after a disturbance?
    • Do cable tensions go to zero when wave heights are zero?
    • Do cable tensions increase with wave height as expected?
    • Is the natural period reasonable for the mass and stiffness?

16. Summary of YouTube Video References

Software Search Terms for YouTube What You'll See
DualSPHysics DualSPHysics floating body mooring, DualSPHysics wave structure Particle-based simulations with floating bodies, mooring lines, wave tanks. Colored particles showing pressure/velocity.
OpenFOAM OpenFOAM floating body waves interFoam, olaFlow floating Mesh-based VOF simulations with sharp free surface, floating structures, wave tanks.
Project Chrono Project Chrono FSI SPH, PyChrono fluid SPH particles interacting with rigid bodies, multibody mechanisms in fluid.
OpenFAST OpenFAST floating wind turbine, HydroDyn MoorDyn Floating wind platform simulations with mooring lines (less visual, more time-series plots).
QBlade QBlade floating offshore 3D visualization of floating wind turbine with mooring lines and wave interaction.
REEF3D REEF3D wave structure Level-set CFD of waves interacting with coastal and offshore structures.

Note: Specific YouTube URLs may become unavailable over time. The search terms above should always find relevant current examples.

17. Final Recommendation Summary

🏆 The Stack to Use

Quick screening Custom Python + Morison + MoorDyn (3–7 days, medium accuracy)
Primary simulation DualSPHysics + Chrono + MoorDyn on A6000 GPU (2–3 weeks, high accuracy)
Validation OpenFOAM + olaFlow + MoorDyn on 64-core Threadripper (3–5 weeks, highest accuracy)
Visualization ParaView for analysis; Blender for presentation-quality renders
Cable analysis MoorDyn throughout (consistent cable dynamics across all tools)

This approach maximizes the use of your exceptional hardware (A6000 GPU + 64-core Threadripper + 750 GB RAM), provides engineering-grade accuracy without linear assumptions, supports your articulated tensegrity design, captures cable snap loads, produces compelling visualizations, and allows rapid iteration through design variants with Claude Code assistance.

The key insight is that MoorDyn appears in every recommended tool — it's the standard for cable/mooring dynamics and works across all platforms. Learn it once, use it everywhere.

Your A6000 GPU is particularly well-suited for DualSPHysics, which is why it edges out OpenFOAM as the primary recommendation despite OpenFOAM's arguably higher theoretical accuracy ceiling. In practice, the faster iteration time with DualSPHysics on GPU will let you explore more designs and conditions, which is more valuable at your current design stage than squeezing the last 5% of accuracy from any single simulation.

Appendix: Hardware Utilization Summary

Hardware Best Used By Utilization
NVIDIA A6000 (48 GB VRAM, 10,752 CUDA cores) DualSPHysics, Chrono::FSI SPH with 10–50M particles. Your A6000 is one of the best possible GPUs for this workload. ~$4,500 GPU being used to its potential.
AMD Threadripper 64-core OpenFOAM (MPI parallelism) CFD meshes of 10–50M cells. Domain decomposition across 64 cores. Also good for DualSPHysics GenCase pre-processing and ParaView post-processing.
750 GB RAM OpenFOAM (large meshes), ParaView (large datasets) Allows very large mesh simulations without swapping. Most simulations will use 50–200 GB. You have ample headroom.

Document prepared for seastead design simulation planning.
Hardware: NVIDIA A6000 + AMD Threadripper 64-core + 750 GB RAM on Linux.
All recommended primary tools are open-source and free.
Last updated: 2025