measure op• Data kinds: pairs → pairs
• Call: import fullseye as fs; fs.ledger.profile_camber(contour, n=101) (implementation को सीधे call करना हो तो import profileops; profileops.profile_camber(contour, n=101), registry से लेना हो तो opsprofile.get("profile_camber"))
camber line (ऊपरी और निचली सतह के बीच की रेखा)। (n, 2) के रूप में (x, yc) लौटाता है।
★definition के अंतर को जानते हुए इस्तेमाल करें । यह जो लौटाता है वह "chord की हर position पर upper और lower surface का मध्यबिंदु" है, जो NACA द्वारा airfoil बनाते समय इस्तेमाल होने वाली camber line (normal दिशा में मोटाई चढ़ाने से पहले की centerline) से सख्ती से कहें तो अलग चीज़ है। इसके अलावा chord लेने का तरीका भी अलग है -- geometric chord "trailing edge के मध्यबिंदु से सबसे दूर के point" को leading edge मानता है, इसलिए camber वाले airfoil में यह generating coordinates के origin से थोड़ा खिसक जाता है, और chord लगभग 0.1 degree झुक जाता है।
मापा गया (closed form का अधिकतम camber अनुपात बनाम इस op का return):
========== =========== ========== ==========
airfoil closed form measured ratio
========== =========== ========== ==========
NACA 0012 0.0000 0.00001 ——
NACA 2412 0.0200 0.01882 0.94
NACA 4412 0.0400 0.03786 0.95
========== =========== ========== ==========
symmetric airfoil पर 0 आना पुष्ट है (0.00001)। camber वाले airfoil में 5-6 % कम आना ऊपर बताए definition के अंतर से है, implementation की गलती नहीं। design मानों से तुलना करते समय, उसी definition से मापे गए reference shape (profile_synth_naca4 का output) से तुलना करें -- profile_deviation ठीक यही करता है।
• profile_metrology family guide
• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।
• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।
• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।
• profile_shape_inspection — py -3.11 examples/profile_shape_inspection.py
pairs को input के रूप में लेते हैं)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 note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.