🦙
مقایسه NumPy در برابر JAX؛ وقتی روش اجرا، رفتار جریان را تغییر میدهد!در تصویر بالا، یک شبیهسازی دوبعدی جریان آرام (Laminar Flow) اطراف یک مانع با شکل لاما مشاهده میشود.
نکته جالب اینجاست که در هر دو شبیهسازی:
✅ معادلات حاکم یکسان هستند
✅ شبکه محاسباتی (Mesh) یکسان است
✅ شرایط مرزی (Boundary Conditions) یکسان است
✅ مدل فیزیکی کاملاً یکسان است
اما نتیجه نهایی کاملاً مشابه نیست! چرا؟
تفاوت اصلی: نحوه اجرای محاسبات
در حالت اول از NumPy استفاده شده، در این روش حلگر بهصورت گامبهگام و ترتیبی (Iterative Execution) پیش میرود.
در حالت دوم از JAX استفاده شده، JAX ابتدا محاسبات را کامپایل کرده و سپس از بهینهسازیهای سطح پایین و پردازش موازی استفاده میکند.
نتیجه:
NumPy ≈ 5 FPS و JAX ≈ 117 FPS
یعنی بیش از 20 برابر افزایش سرعت اجرا.
اما چرا ساختار گردابهها متفاوت شده؟
این موضوع یکی از ویژگیهای جالب حلهای عددی در مکانیک سیالات هست. در شبیهسازیهای گذرا (Transient Simulations)، تغییرات بسیار کوچک در: ترتیب اجرای عملیات، گرد کردن اعداد اعشاری، نحوه ذخیره متغیرها در حافظه و پردازش موازی میتواند در طول هزاران گام زمانی انباشته شود. در نتیجه:
🔹 محل تشکیل گردابهها (Vortex Shedding)
🔹 رشد لایههای برشی (Shear Layers)
🔹 ساختار دنباله جریان (Wake)
به تدریج از یکدیگر فاصله میگیرند. آیا یکی از نتایج اشتباه است؟
لزومـاً خیر.
در بسیاری از مسائل CFD، بهویژه جریانهای ناپایدار، آنچه اهمیت دارد:
✔️ رفتار آماری جریان
✔️ فرکانس گردابهها
✔️ ضرایب آیرودینامیکی
✔️ میانگین نیروهای وارد بر جسم
است، نه اینکه تکتک گردابهها در هر لحظه دقیقاً در یک موقعیت قرار داشته باشند.
و اما نکته مهم برای کاربران CFD
این مثال یادآوری میکند که:
«یک شبیهسازی عددی تنها به معادلات وابسته نیست؛ بلکه نحوه اجرای الگوریتم نیز میتواند روی مسیر تکامل حل اثر بگذارد.»
به همین دلیل در پروژههای تحقیقاتی و صنعتی، اعتبارسنجی (Validation) و تحلیل حساسیت عددی (Numerical Sensitivity Analysis) اهمیت بسیار زیادی دارند.
📌 گاهی دو حلگر مختلف، با وجود استفاده از معادلات یکسان، ساختارهای لحظهای متفاوتی تولید میکنند اما هر دو از نظر مهندسی کاملاً معتبر هستند.
هوش مصنوعی و کاربرد آن در CFD در دوره
"Deep Learning in CFD" آموزش داده می شود. امکان تهیه دوره با تخفیف 30% تا پایان خردادماه
✈️آکادمی مهندسی هوافضا✈️
کانال دورهها |
کانال اصلی