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

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

5 stars

Best use case

ship-dynamics-6dof-5-time-domain-simulation is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

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

Teams using ship-dynamics-6dof-5-time-domain-simulation 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/5-time-domain-simulation/SKILL.md --create-dirs "https://raw.githubusercontent.com/vamseeachanta/workspace-hub/main/.agents/skills/_archive/engineering/marine-offshore/ship-dynamics-6dof/5-time-domain-simulation/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/5-time-domain-simulation/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

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

Feature / Agentship-dynamics-6dof-5-time-domain-simulationStandard 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: 5. Time-Domain Simulation.

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

# 5. Time-Domain Simulation

## 5. Time-Domain Simulation


**Newmark-Beta Integration:**
```python
def newmark_beta_integration(
    M: np.ndarray,
    C: np.ndarray,
    K: np.ndarray,
    F_t: np.ndarray,
    x0: np.ndarray,
    v0: np.ndarray,
    t: np.ndarray,
    beta: float = 0.25,
    gamma: float = 0.5
) -> dict:
    """
    Newmark-Beta time integration for 6DOF dynamics.

    Args:
        M: Mass matrix (6x6)
        C: Damping matrix (6x6)
        K: Stiffness matrix (6x6)
        F_t: Force time series (n_steps x 6)
        x0: Initial displacement (6,)
        v0: Initial velocity (6,)
        t: Time array
        beta: Newmark beta parameter (0.25 = const accel)
        gamma: Newmark gamma parameter (0.5)

    Returns:
        Dictionary with motion time series
    """
    n_steps = len(t)
    dt = t[1] - t[0]

    # Initialize
    x = np.zeros((n_steps, 6))
    v = np.zeros((n_steps, 6))
    a = np.zeros((n_steps, 6))

    x[0] = x0
    v[0] = v0

    # Initial acceleration
    a[0] = np.linalg.solve(M, F_t[0] - C @ v[0] - K @ x[0])

    # Effective stiffness
    K_eff = K + gamma/(beta*dt) * C + 1/(beta*dt**2) * M

    # Time stepping
    for i in range(n_steps - 1):
        # Effective force
        F_eff = (
            F_t[i+1] +
            M @ (x[i]/(beta*dt**2) + v[i]/(beta*dt) + (0.5/beta - 1)*a[i]) +
            C @ (gamma/(beta*dt)*x[i] + (gamma/beta - 1)*v[i] + dt*(gamma/(2*beta) - 1)*a[i])
        )

        # Solve for displacement
        x[i+1] = np.linalg.solve(K_eff, F_eff)

        # Update velocity and acceleration
        a[i+1] = (x[i+1] - x[i])/(beta*dt**2) - v[i]/(beta*dt) - (0.5/beta - 1)*a[i]
        v[i+1] = v[i] + dt*((1-gamma)*a[i] + gamma*a[i+1])

    return {
        'time': t,
        'displacement': x,
        'velocity': v,
        'acceleration': a
    }

# Example: Simulate heave response to wave force
t = np.linspace(0, 100, 10000)
dt = t[1] - t[0]

# Simplified system (heave only)
M_simple = np.diag([0, 0, 200e6, 0, 0, 0])  # Heave mass
C_simple = np.diag([0, 0, 100e6, 0, 0, 0])  # Heave damping
K_simple = np.diag([0, 0, 150e6, 0, 0, 0])  # Heave stiffness

# Wave force (10s period, 1 MN amplitude)
F = np.zeros((len(t), 6))
F[:, 2] = 1e6 * np.sin(2*np.pi*t / 10)

# Simulate
result = newmark_beta_integration(
    M_simple, C_simple, K_simple, F,
    x0=np.zeros(6), v0=np.zeros(6), t=t
)

print(f"Max heave: {np.max(np.abs(result['displacement'][:, 2])):.2f} m")
```

Related Skills

domain-knowledge-sweep

5
from vamseeachanta/workspace-hub

Systematic multi-source research of an engineering domain. Spawns parent issue → 6 research subissues (Standards, Academic, Industry, LinkedIn-marketing, Code-audit, Synthesis) → gap implementation subissues. Replaces LinkedIn-only extraction with defensible comprehensive sourcing.

handle-freetaxusa-session-timeouts

5
from vamseeachanta/workspace-hub

Recover from FreeTaxUSA session timeout dialogs blocking form submission and navigation

booking-timeline

5
from vamseeachanta/workspace-hub

Use when constructing the Booking & reservation timeline section of a trip plan. Encodes the 4-month / 2-month / 6-week / 1-week reservation cascade and refund-window rules. Invoked by trip-planner.

engineering-solver-domain-recon

5
from vamseeachanta/workspace-hub

Deep reconnaissance of an engineering solver domain (OrcaWave, OrcaFlex, CalculiX, OpenFOAM, etc.) across a multi-repo ecosystem — map infrastructure, issues, skills, data artifacts, machine constraints, and solver queue state before planning work.

domain-gap-to-issue-roadmap

5
from vamseeachanta/workspace-hub

Deep multi-repo ecosystem audit → domain gap matrix → structured GitHub issue roadmap with epics. Use when the user wants to assess capabilities across repos and create a backlog of work items covering code, data, and documentation gaps.

maritime-legal

5
from vamseeachanta/workspace-hub

AI-assisted maritime legal and casualty consulting — engineering-technical interface with admiralty proceedings

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.

engineering-domain-reconnaissance

5
from vamseeachanta/workspace-hub

Class-level external engineering domain reconnaissance: field development, external drive ingest planning, and source-to-artifact conversion.

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).

wave-theory-4-time-series-generation

5
from vamseeachanta/workspace-hub

Sub-skill of wave-theory: 4. Time Series Generation (+1).

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.