```html
Your design — a ~80 ft triangular platform supported by three NACA-foil vertical spar legs — is essentially a small-waterplane-area trimaran (SWAT / mini-SWATH hybrid). The physics you most care about are:
This combination is exactly the regime where linear potential-flow tools (BEM) start to lose accuracy, and where CFD or particle-based methods become worthwhile — especially since you already have a good GPU.
Capytaine (BEM) + MoorDyn + a custom Python time-domain solver with Morison-style viscous drag corrections on the legs. Get first results in 1–2 weeks. Good for scanning many designs and wave spectra.DualSPHysics (GPU SPH) or OpenFOAM with waves2Foam/olaFlow + overset mesh. Use this to validate a few chosen sea states and capture the non-linear leg emergence/submergence your legs will experience. First run in 3–6 weeks.BEM (Boundary Element Method, as in Capytaine, NEMOH, WAMIT) assumes:
Your legs are 19 ft tall with only ~9.5 ft submerged at rest — a wave of 5–8 ft amplitude will change the wetted surface by a huge fraction. That breaks the linear assumption. You were right to be suspicious.
However BEM is still useful as a first-pass tool because it's fast (seconds to minutes per run) and gives you RAOs, natural periods, and a sense of resonance.
| Tool | Method | License / Cost | GPU? | Accuracy for your case | Time-to-first-sim (with Claude Code) | Visualization | Re-use for new designs |
|---|---|---|---|---|---|---|---|
| Capytaine + MoorDyn + custom Python | Linear BEM + Morison drag correction in time domain | FREE BSD, Python | CPU | Moderate. Good for small waves / RAOs / natural periods. Misses leg emergence, slamming, non-linear damping unless you add Morison terms manually. | 3–10 days | Good: Python/Matplotlib, export to ParaView or Blender for rendering. | Very easy — swap the mesh file (STL/OBJ) and re-run. |
| Project Chrono (multibody + linear hydro) | Multibody dynamics + BEM (via HydroChrono / Chrono::Hydro) | FREE BSD, C++/Python | CPU (some GPU modules) | Similar limitation to Capytaine for the hydro, but excellent for structural/multibody response (useful if you model the truss flexibility later). | 1–3 weeks | Built-in Irrlicht/VSG viewer; exports to ParaView. | Moderate — need to re-define bodies and joints. |
| Chrono::FSI (SPH) | Smoothed Particle Hydrodynamics coupled to Chrono multibody | FREE BSD | GPU (CUDA) | High. Fully non-linear free surface, captures leg emergence, slamming, viscous effects. This replaces BEM entirely. Answers your question: yes, when you use Chrono::FSI-SPH, Chrono is no longer using BEM — SPH is the fluid solver. | 3–6 weeks (SPH parameter tuning is the time sink) | ParaView from VTK output — very nice videos. | Moderate — new CAD + re-tune particle resolution. |
| DualSPHysics | GPU SPH + rigid multibody (Project Chrono coupling built in!) | FREE LGPL | GPU (CUDA) — made for it | Very high for wave-structure interaction with large motions. Widely used for WEC and offshore platforms. Handles your leg emergence naturally. | 2–5 weeks | Excellent — ParaView, built-in post-processing tools, video-ready. | Easier than OpenFOAM — XML case files + STL geometry swap. |
| OpenFOAM + waves2Foam / olaFlow / interFoam + overset | Finite Volume CFD, VOF free surface | FREE GPL | CPU mostly (GPU forks exist but immature) | Highest physical fidelity — turbulence, viscous damping of foils, vortex shedding. But CPU-bound and slow. | 4–8 weeks (steep learning curve even with Claude) | ParaView — industry-standard, excellent videos. | Hard — meshing each new design takes real work. |
| WEC-Sim + MoorDyn | Linear BEM (Cummins) time-domain in Simulink | PAID Requires MATLAB + Simulink + Simscape Multibody | CPU | Same accuracy class as Capytaine; non-linear Froude-Krylov optional. | 1–2 weeks if you already know MATLAB | Simulink scopes + MATLAB plots; can export for Blender. | Easy once set up. |
| Blender (physics / Mantaflow / Flip Fluids) | FLIP / PIC fluid for VFX | FREE | GPU (limited) | Not engineering-grade. Tuned for visual plausibility, not conservation of mass/momentum or correct wave spectra. Still true in 2024. | Days (for pretty video), never (for engineering numbers) | Beautiful — but don't trust the physics. | Easy. |
| MoorDyn (standalone) | Lumped-mass mooring line dynamics | FREE | CPU | Only the mooring, not the hull. Used alongside Capytaine or WEC-Sim. | Part of other tools. | N/A alone | Easy. |
| OpenFAST (NREL) | Multi-fidelity: BEM + Morison + mooring + structural | FREE Apache | CPU | Designed for floating wind turbines — very close to your problem (spar / semi-sub platforms in waves). Includes non-linear Morison drag on slender members. Often overlooked for seastead work but excellent. | 2–4 weeks | Time-series output → ParaView/Python plots. | Easy — edit input files. |
| MoorPy / RAFT (NREL) | Frequency/time-domain floating platform (uses Capytaine under the hood) | FREE Python | CPU | Great for rapid screening of platform concepts — built exactly for multi-column floating platforms. | 3–7 days | Matplotlib / 3D Python plots. | Very easy — YAML config files. |
RAFT (NREL's "Response Amplitudes of Floating Turbines") was built for exactly this geometry — a few columns connected by a platform. It uses Capytaine for BEM, adds Morison drag on slender members (your foils), and handles mooring. You describe your platform in a YAML file. This will tell you natural periods, RAOs, and give you a first estimate of motions and accelerations at any point.
Claude Code can write the YAML and the post-processing scripts in a day or two. You'll be iterating designs by lunch.
Pick 2–3 worst-case sea states from the RAFT screening and re-run them in DualSPHysics. This is a GPU SPH code from the University of Vigo / Manchester, explicitly designed for wave-structure interaction with large body motions. It already couples to Project Chrono for the multibody side, so your 3-leg rigid body is straightforward.
DualSPHysics will correctly handle the case where a leg almost fully emerges from a wave trough and then slams back — which is the failure mode you most want to see.
If a reviewer or investor asks "but what about viscous/turbulent effects on the foils," run one or two cases in OpenFOAM with overset mesh + interFoam + waves2Foam. Very expensive computationally, but publishable.
No. Chrono::FSI replaces the fluid model entirely with SPH. You get fully non-linear free-surface and viscous effects. BEM is only used in HydroChrono / Chrono::Hydro, which is a separate module.
Still no, for engineering. Mantaflow and FLIP Fluids are for VFX. They do not reproduce linear wave theory, don't correctly conserve momentum, and the coupling to rigid bodies is not validated. Use Blender only for rendering — import ParaView output or a trajectory CSV from Capytaine/DualSPHysics, and let Blender make a pretty video. Claude Code can help you write the Python importer.
Technically capable, but MATLAB + Simulink + Simscape Multibody is expensive. In Anguilla (commercial, non-academic), expect roughly:
Not open source. Skip it — Capytaine/RAFT give you the same accuracy class for free.
Yes — probably the best single tool for your "how does it fail in big waves" question. GPU-native, validated for wave-structure interaction, Chrono multibody coupling, active user community in offshore/WEC research.
Highest fidelity, but a 4–8 week learning curve and single simulations can take days on CPU. Use it only for final validation of a few cases, not for iterative design.
| Tool | What you change for a new seastead design | Effort |
|---|---|---|
| RAFT | Edit YAML (column diameters, positions, masses) | ~1 hour |
| Capytaine | Swap STL mesh, re-run | ~2 hours |
| OpenFAST | Edit input files, re-generate BEM coefficients | ~half day |
| DualSPHysics | New STL + check particle resolution | ~1 day |
| Chrono::FSI | New CAD + re-tune SPH parameters | ~1–2 days |
| OpenFOAM | Re-mesh (snappyHexMesh or overset), re-validate | ~3–7 days per design |
| Rank | Tool | Best for |
|---|---|---|
| 🥇 1 | RAFT (+ Capytaine + MoorDyn) | Fast design iteration, first results in a week |
| 🥈 2 | DualSPHysics | High-fidelity non-linear wave response, uses your GPU, validates failure modes |
| 🥉 3 | OpenFAST | Well-established middle-ground; Morison drag on your foils |
| 4 | Chrono::FSI | Similar role to DualSPHysics; pick whichever you find easier |
| 5 | OpenFOAM | Final validation of hero cases |
| — | WEC-Sim | Skip (not free) |
| — | Blender physics | Skip for engineering; use only for rendering |
Prepared for an open-source seastead simulation pipeline. All recommendations assume commercial Anguilla use (no academic licenses).
```