measure op• データ種: pairs → pairs
• 呼び出し: import profileops; profileops.profile_camber(contour, n=101) (または opsprofile.get("profile_camber"))
キャンバー線(上下面の中線)。返りは `(n, 2) の (x, yc)`。
★定義の差を承知で使うこと。ここが返すのは「弦の各位置での上下面の中点」
で、NACA が翼型を作るときに使うキャンバー線(厚みを法線方向に載せる前の
中心線)とは厳密には別物です。加えて弦の取り方も違う —— 幾何的な弦は
「後縁の中点から最も遠い点」を前縁とするので、キャンバーのある翼では
生成座標の原点からわずかにずれ、弦が 0.1 度ほど傾きます。
実測(閉形式の最大キャンバー比 対 本 op の返り):
========== ========== ========== ==========
翼型 閉形式 実測 比
========== ========== ========== ==========
NACA 0012 0.0000 0.00001 ——
NACA 2412 0.0200 0.01882 0.94
NACA 4412 0.0400 0.03786 0.95
========== ========== ========== ==========
対称翼で 0 になることは確認済み(0.00001)。有翼で 5-6 % 低く出るのは
上の定義差で、実装の誤りではありません。設計値と比べるときは、同じ定義で
測った基準形状(`profile_synth_naca4` の出力)と比べること ——
:func:profile_deviation はまさにそれをします。
• サンプルデータ カタログ(DL URL / ライセンス) — 2-D は skimage.data(BSD/public)+ 合成、3-D は実データ源(Stanford/PDS 等)の DL URL。
• 演算子の来歴・参考文献 — この op 族の元になった研究/手法の出典。
• アルゴリズムの正典(著者・年)と用途は上記ファミリ使い方ガイドに記載。
• profile_shape_inspection — py -3.11 examples/profile_shape_inspection.py
pairs を入力に取れる)profile_perturb · profile_chord_frame · profile_normalise · profile_resample · profile_sides · profile_thickness · profile_leading_edge_radius · profile_trailing_edge_gap
measure)profile_sides · profile_thickness · profile_leading_edge_radius · profile_trailing_edge_gap
*Provenance: profileops.py — PROFILE operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.