本文へ移動
cccskills
無料GitHub で公開

stepinfo-3d

Use this skill when computing 3D step-response performance metrics for point-to-point drone flight — rise time, settling time, percent overshoot, and steady-state error based on Euclidean distance to the final target. Use instead of 1D stepinfo for any flight where all three position axes move simultaneously.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md3.0 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

3D Step-Response Metrics (stepinfo_3d)

When to Use

ScenarioMetric to use
Pure z-step (hover, takeoff, land)1D stepinfo on z signal
Diagonal flight (x, y, z all change)stepinfo_3d on 3D Euclidean distance
Circular / figure-eight trajectoryNeither — use RMS error or cumulative error

1D metrics break for diagonal flight because the axes are coupled — thrust that corrects x also affects y and z.

Metrics Defined

MetricDefinition
Rise timeFirst time 3D distance to target ≤ 10% of initial distance
Settling timeLast time 3D distance exceeds settling_threshold × initial_distance
Overshoot %Max distance from target after first entering the settling band, as % of initial distance
Steady-state errorFinal 3D Euclidean distance from target [metres]

Implementation Logic

Given pos_actual (3, n), pos_target (3,), and time vector t (n,):

  1. Compute dist[k] = ||pos_actual[:, k] − pos_target||₂ for each timestep.
  2. If dist[0] < 1e-6 (already at target), return all zeros.
  3. Rise time: scan forward and record the first t[k] where dist[k] ≤ 0.1 * dist[0].
  4. Settling time: scan backward and record the last t[k] where dist[k] > settling_threshold * dist[0] (default threshold = 0.02).
  5. Overshoot: after the drone first enters the settling band, track the maximum dist[k] seen. Express as max_post_entry / dist[0] * 100. If the settling band is never entered, return 0.
  6. Steady-state error: dist[-1].

Return a dict with keys RiseTime, SettlingTime, Overshoot_pct, SteadyStateError.

Usage in Simulation

from stepinfo_3d import stepinfo_3d

pos_final_desired = waypoints[0:3, -1]   # last waypoint

metrics = stepinfo_3d(actual_state_matrix[0:3, :], pos_final_desired, time_vec)
for k, v in metrics.items():
    print(f'  {k}: {v:.4f}' if isinstance(v, float) else f'  {k}: {v}')

Limitations

  • Assumes point-to-point flight — the drone starts away from a fixed target and converges. For circular trajectories, use RMS or cumulative error instead.
  • dist_initial is the distance at t[0]. If the drone starts at the target (hover command), all metrics return 0.
  • Overshoot is defined by distance, not by crossing the target in one axis — the drone must physically move farther from the target after settling to register overshoot.
  • If the settling band is never entered (common for very short commands where d0 is small, making band = 0.02 × d0 only a few centimetres), Overshoot_pct returns 0.0 — the drone approached the target without oscillating past it.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Perform various data analysis on SEC 13-F and obtain some insights of fund activities such as number of holdings, AUM, and change of holdings between two quarters.

日本語の概要は準備中です。原文の説明を表示しています。

benchflow-ai/skillsbench1,8382026年7月24日 更新

AC branch pi-model power flow equations (P/Q and |S|) with transformer tap ratio and phase shift, matching `acopf-math-model.md` and MATPOWER branch fields. Use when computing branch flows in either direction, aggregating bus injections for nodal balance, checking MVA (rateA) limits, computing branch loading %, or debugging sign/units issues in AC power flow.

日本語の概要は準備中です。原文の説明を表示しています。

benchflow-ai/skillsbench1,8382026年7月24日 更新

Redact text from PDF documents for blind review anonymization

日本語の概要は準備中です。原文の説明を表示しています。

benchflow-ai/skillsbench1,8382026年7月24日 更新

Use when checking simplified ADA-derived plan-view bathroom accessibility constraints such as turning space, door clear width, toilet centerline, grab bars, and lavatory knee/toe clearance.

日本語の概要は準備中です。原文の説明を表示しています。

benchflow-ai/skillsbench1,8382026年7月24日 更新

Analyze failed GitHub Action jobs for a pull request.

日本語の概要は準備中です。原文の説明を表示しています。

benchflow-ai/skillsbench1,8382026年7月24日 更新

Use when extracting plan-view architectural geometry from DXF files with semantic CAD layers, especially when outputs must normalize rooms, doors, fixtures, clearances, and grab bars into machine-checkable JSON.

日本語の概要は準備中です。原文の説明を表示しています。

benchflow-ai/skillsbench1,8382026年7月24日 更新

benchflow-ai のスキルをすべて見る

このスキルの問題を報告する