用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/vamseeachanta/workspace-hub --skill hydrodynamic-pipeline-orcawave-execution命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | hydrodynamic-pipeline-orcawave-execution |
| description | Sub-skill of hydrodynamic-pipeline: OrcaWave Execution (+3). |
| version | 1.0.1 |
| category | engineering |
| type | reference |
| scripts_exempt | true |
# OrcaWave runs via OrcFxAPI (same as OrcaFlex)
python3 -c "
import OrcFxAPI
model = OrcFxAPI.Model()
model.LoadData('diffraction_model.owd')
model.CalculateStatics()
model.RunSimulation()
model.SaveSimulation('results.owr')
"
# AQWA runs via ANSYS Workbench or command line
# Typical AQWA-LINE execution:
aqwa_line input.dat output.lis
# AQWA-DRIFT for QTFs:
aqwa_drift input.dat output.lis
| Output | Format | Used By | Description |
|---|---|---|---|
| RAOs | .owd / .lis | OrcaFlex VesselType | Response amplitude operators (6 DOF) |
| Added mass | Frequency-dependent | OrcaFlex | Mass added by fluid acceleration |
| Radiation damping | Frequency-dependent | OrcaFlex | Energy radiated as waves |
| Mean drift | Force per wave amplitude² | OrcaFlex | Steady drift forces |
| QTFs | Difference/sum frequency | OrcaFlex | Second-order slow-drift forces |
| Hydrostatic stiffness | 6x6 matrix | OrcaFlex | Restoring forces |
import OrcFxAPI
def extract_diffraction_results(owd_path):
"""Extract hydrodynamic data from OrcaWave for OrcaFlex.
OrcaWave results are accessed via VesselType diffraction data,
not the Vessel instance directly.
"""
model = OrcFxAPI.Model()
model.LoadSimulation(owd_path.replace('.owd', '.owr'))
# Access vessel type (diffraction data lives on VesselType, not Vessel)
vessel_type = model['Vessel Type1']
results = {
"raos": {},
"added_mass": {},
"damping": {},
}
# Extract RAOs via VesselType hydrodynamic database
# RAO data is loaded via VesselType.LoadHydrodynamicData() or
# accessed after OrcaWave populates the vessel type
dof_names = ['Surge', 'Sway', 'Heave', 'Roll', 'Pitch', 'Yaw']
for i, dof in enumerate(dof_names):
results["raos"][dof] = {
"amplitude": [],
"phase": [],
}
# Note: exact accessor depends on OrcaWave version; see
# orcawave-to-orcaflex skill for the canonical extraction pattern
return results