hydrodynamic-pipeline-orcawave-to-orcaflex-direct-integration
Sub-skill of hydrodynamic-pipeline: OrcaWave to OrcaFlex (Direct Integration) (+3).
Best use case
hydrodynamic-pipeline-orcawave-to-orcaflex-direct-integration is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Sub-skill of hydrodynamic-pipeline: OrcaWave to OrcaFlex (Direct Integration) (+3).
Teams using hydrodynamic-pipeline-orcawave-to-orcaflex-direct-integration should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/orcawave-to-orcaflex-direct-integration/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How hydrodynamic-pipeline-orcawave-to-orcaflex-direct-integration Compares
| Feature / Agent | hydrodynamic-pipeline-orcawave-to-orcaflex-direct-integration | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Sub-skill of hydrodynamic-pipeline: OrcaWave to OrcaFlex (Direct Integration) (+3).
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# OrcaWave to OrcaFlex (Direct Integration) (+3)
## OrcaWave to OrcaFlex (Direct Integration)
```python
import OrcFxAPI
def create_orcaflex_vessel_from_orcawave(owr_path, ofx_model_path):
"""Create OrcaFlex vessel type from OrcaWave results."""
# OrcaFlex can directly import OrcaWave .owr files
model = OrcFxAPI.Model()
# Create vessel type
vt = model.CreateObject(OrcFxAPI.ObjectType.VesselType)
vt.Name = "FPSO_VesselType"
# Import hydrodynamic data from OrcaWave
vt.WavesReferredToBy = "frequency (rad/s)"
vt.PrimaryMotion = "Displacement RAOs"
# Load OrcaWave database
vt.LoadHydrodynamicData(owr_path)
# Create vessel instance
vessel = model.CreateObject(OrcFxAPI.ObjectType.Vessel)
vessel.Name = "FPSO"
vessel.VesselType = vt.Name
vessel.InitialX = 0
vessel.InitialY = 0
vessel.InitialZ = 0
vessel.InitialHeading = 0
model.SaveData(ofx_model_path)
return model
```
## AQWA to OrcaFlex (via BEMRosetta or Manual)
```python
def aqwa_to_orcaflex(aqwa_lis_path, orcaflex_model):
"""Import AQWA results into OrcaFlex vessel type.
Method 1: Use BEMRosetta to convert AQWA format to OrcaFlex-compatible
Method 2: Parse AQWA .lis file directly and set vessel properties
"""
# BEMRosetta conversion (preferred)
import subprocess
subprocess.run([
'BEMRosetta', '-i', aqwa_lis_path,
'-o', 'converted.owd', '-format', 'orcawave'
])
# Then load into OrcaFlex
vt = orcaflex_model.CreateObject(OrcFxAPI.ObjectType.VesselType)
vt.LoadHydrodynamicData('converted.owd')
```
## Data Format Mapping
| Source (OrcaWave/AQWA) | Target (OrcaFlex) | Notes |
|------------------------|-------------------|-------|
| RAO amplitude + phase | VesselType displacement RAOs | Check heading convention (from/to) |
| Added mass (freq-dep) | VesselType added mass | Infinite-frequency value needed too |
| Radiation damping | VesselType radiation damping | Must be positive definite |
| Mean drift coefficients | VesselType drift coefficients | Newman or full QTF |
| QTFs (diff-frequency) | VesselType QTF data | Slow-drift calculation |
| Hydrostatic stiffness | VesselType stiffness | Cross-check with hand calc |
## Coordinate System Warnings
| Convention | OrcaWave | AQWA | OrcaFlex |
|-----------|----------|------|----------|
| **Origin** | User-defined | User-defined | Vessel reference point |
| **X-axis** | Forward (+ve) | Forward (+ve) | Forward (+ve) |
| **Z-axis** | Up (+ve) | Up (+ve) | Up (+ve) |
| **Wave heading** | 0=from +X | 0=from +X | 0=from +X (verify!) |
| **Phase** | Varies | Varies | Relative to wave crest at origin |
**Critical**: Always verify heading convention. A 180-degree error inverts all RAO phases.Related Skills
OrcaFlex Specialist Skill
```yaml
teams-meeting-pipeline
Operate the Teams meeting summary pipeline via Hermes CLI — summarize meetings, inspect pipeline status, replay jobs, manage Microsoft Graph subscriptions.
solidworks-to-blender-pipeline
Use when converting SolidWorks .sldprt/.sldasm geometry to Blender for rendering, animation, or visualization, including questions about STEP export settings, FreeCAD as a bridge, or which mesh format (STL/OBJ/GLTF) to choose.
orcaflex-reporting-fixture-proof-pattern
Build and extend fixture-backed OrcaFlex reporting proof paths in digitalmodel using stable metadata baselines, normalized HTML snapshots, and reusable reporting test helpers.
library-evaluation-integration
Create evaluation scripts and integration tests for Python scientific libraries in the digitalmodel package. Follows the established pattern from fluids, ht, meshio, sectionproperties, and pygmt evaluations.
digitalmodel-orcawave-orcaflex-proof-workflows
Class-level digitalmodel OrcaWave/OrcaFlex readiness, semantic-proof, fixture-proof, and closeout workflows.
orcawave-orcaflex-readiness-audit
Audit the real readiness of digitalmodel OrcaWave/OrcaFlex spec-driven workflows by reconciling workspace-hub issues, source/tests, semantic-equivalence boundaries, and wiki synthesis gaps.
multi-role-agent-contract-review-pipeline
Execute a 4-role agent team (Planner/Architect/Reviewer/Integrator) pipeline for self-reviewing knowledge artifacts before delivery
digitalmodel-orcawave-orcaflex-workflow
Current-state workflow for navigating and extending digitalmodel OrcaWave/OrcaFlex capabilities across code, tests, issues, queue tooling, and licensed-machine boundaries.
clean-worktree-integration-from-dirty-main
Land validated issue work from isolated worktrees when the main checkout is dirty by creating a fresh integration worktree, cherry-picking only implementation commits, re-running combined validation, and preparing push/closeout artifacts.
orcawave-orcaflex-semantic-proof-wave-closeout
Close out an OrcaWave/OrcaFlex semantic-proof wave after a PR merges, split unrelated CI blockers, and seed the next semantic-proof issue wave without duplicating existing issues.
gtm-prospect-pipeline-phased-execution
Phased execution pattern for