ship-dynamics-6dof-1-6-degrees-of-freedom

Sub-skill of ship-dynamics-6dof: 1. 6 Degrees of Freedom (+1).

5 stars

Best use case

ship-dynamics-6dof-1-6-degrees-of-freedom is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Sub-skill of ship-dynamics-6dof: 1. 6 Degrees of Freedom (+1).

Teams using ship-dynamics-6dof-1-6-degrees-of-freedom 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

$curl -o ~/.claude/skills/1-6-degrees-of-freedom/SKILL.md --create-dirs "https://raw.githubusercontent.com/vamseeachanta/workspace-hub/main/.agents/skills/_archive/engineering/marine-offshore/ship-dynamics-6dof/1-6-degrees-of-freedom/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/1-6-degrees-of-freedom/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How ship-dynamics-6dof-1-6-degrees-of-freedom Compares

Feature / Agentship-dynamics-6dof-1-6-degrees-of-freedomStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Sub-skill of ship-dynamics-6dof: 1. 6 Degrees of Freedom (+1).

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

# 1. 6 Degrees of Freedom (+1)

## 1. 6 Degrees of Freedom


**DOF Definition:**
```yaml
translations:
  surge:    # X-direction (longitudinal)
    positive: "Forward"
    typical_natural_period: "50-150 seconds"

  sway:     # Y-direction (lateral)
    positive: "Port"
    typical_natural_period: "50-150 seconds"

  heave:    # Z-direction (vertical)
    positive: "Upward"
    typical_natural_period: "6-15 seconds"

rotations:
  roll:     # Rotation about X-axis
    positive: "Starboard down"
    typical_natural_period: "15-30 seconds"

  pitch:    # Rotation about Y-axis
    positive: "Bow up"
    typical_natural_period: "6-12 seconds"

  yaw:      # Rotation about Z-axis
    positive: "Bow to starboard"
    typical_natural_period: "60-200 seconds"
```


## 2. Equations of Motion


**General Form:**
```
[M + A(ω)]{ẍ} + [B(ω)]{ẋ} + [C]{x} = {F(t)}

Where:
- [M] = Mass/inertia matrix (6x6)
- [A] = Added mass matrix (6x6, frequency-dependent)
- [B] = Damping matrix (6x6, frequency-dependent)
- [C] = Hydrostatic restoring matrix (6x6)
- {F} = External force vector (6x1)
- {x} = Displacement vector [surge, sway, heave, roll, pitch, yaw]
```

**Mass Matrix:**
```python
import numpy as np

def create_mass_matrix(
    mass: float,
    radii_of_gyration: dict,
    center_of_gravity: np.ndarray = None
) -> np.ndarray:
    """
    Create 6x6 mass matrix for vessel.

    Args:
        mass: Vessel mass (tonnes)
        radii_of_gyration: {'Rxx': roll, 'Ryy': pitch, 'Rzz': yaw} (m)
        center_of_gravity: [x, y, z] from origin (m)

    Returns:
        6x6 mass matrix
    """
    if center_of_gravity is None:
        center_of_gravity = np.zeros(3)

    xg, yg, zg = center_of_gravity

    # Convert to kg
    m = mass * 1000

    # Moments of inertia
    Ixx = m * radii_of_gyration['Rxx']**2  # Roll
    Iyy = m * radii_of_gyration['Ryy']**2  # Pitch
    Izz = m * radii_of_gyration['Rzz']**2  # Yaw

    # Mass matrix (including CG offset coupling)
    M = np.array([
        [m,  0,  0,    0,      m*zg,  -m*yg],
        [0,  m,  0,   -m*zg,   0,      m*xg],
        [0,  0,  m,    m*yg,  -m*xg,   0   ],
        [0, -m*zg, m*yg,  Ixx,    0,     0   ],
        [m*zg, 0, -m*xg,  0,     Iyy,    0   ],
        [-m*yg, m*xg, 0,  0,      0,     Izz ]
    ])

    return M

# Example: FPSO mass matrix
M_fpso = create_mass_matrix(
    mass=150000,  # tonnes
    radii_of_gyration={
        'Rxx': 22,   # Roll radius of gyration
        'Ryy': 95,   # Pitch radius of gyration
        'Rzz': 95    # Yaw radius of gyration
    },
    center_of_gravity=np.array([160, 0, 15])  # From aft perpendicular
)

print("Mass Matrix:")
print(M_fpso)
```

Related Skills

hydrodynamics

5
from vamseeachanta/workspace-hub

Manage hydrodynamic coefficients, wave spectra, and environmental loading for vessel response analysis. Use for 6×6 matrix management, wave spectrum modeling, OCIMF loading calculations, and RAO interpolation.

mkdocs-entity-relationship

5
from vamseeachanta/workspace-hub

Sub-skill of mkdocs: Entity Relationship.

hydrodynamic-pipeline-gmsh-panel-mesh-for-hydrodynamics

5
from vamseeachanta/workspace-hub

Sub-skill of hydrodynamic-pipeline: Gmsh Panel Mesh for Hydrodynamics (+3).

ship-dynamics-6dof-example-2-natural-frequency-sensitivity-study

5
from vamseeachanta/workspace-hub

Sub-skill of ship-dynamics-6dof: Example 2: Natural Frequency Sensitivity Study.

ship-dynamics-6dof-example-1-full-6dof-simulation

5
from vamseeachanta/workspace-hub

Sub-skill of ship-dynamics-6dof: Example 1: Full 6DOF Simulation.

ship-dynamics-6dof-6-seakeeping-analysis

5
from vamseeachanta/workspace-hub

Sub-skill of ship-dynamics-6dof: 6. Seakeeping Analysis.

ship-dynamics-6dof-5-time-domain-simulation

5
from vamseeachanta/workspace-hub

Sub-skill of ship-dynamics-6dof: 5. Time-Domain Simulation.

ship-dynamics-6dof-3-natural-frequencies-and-periods

5
from vamseeachanta/workspace-hub

Sub-skill of ship-dynamics-6dof: 3. Natural Frequencies and Periods (+1).

orcaflex-vessel-setup-1-fpso-with-aqwa-hydrodynamics

5
from vamseeachanta/workspace-hub

Sub-skill of orcaflex-vessel-setup: 1. FPSO with AQWA Hydrodynamics (+2).

hydrodynamics-wave-spectrum-types

5
from vamseeachanta/workspace-hub

Sub-skill of hydrodynamics: Wave Spectrum Types.

hydrodynamics-coefficient-database-json

5
from vamseeachanta/workspace-hub

Sub-skill of hydrodynamics: Coefficient Database JSON (+1).

hydrodynamics-1-coefficient-database-management

5
from vamseeachanta/workspace-hub

Sub-skill of hydrodynamics: 1. Coefficient Database Management (+4).