24-08-2020, 08:43 PM
همگرایی حل در دینامیک سیالات محاسباتی
همانطور که در بخش قبل اشاره شد، برای رسیدن به جواب درست در یک حل عددی، باید شبکه یا مش ما در نقاط حساس باگرادیان بالا، ریز باشد. در دینامیک سیالات محاسباتی و برای مثال در نرم افزارهایی مانند گمبیت و انسیس به این کار «اصلاح مش» (Mesh Refinement) گفته میشود. شکل زیر نمونهای از اصلاح مش و شبکه را اطراف نقاط حساس یک اتومبیل فرمول یک نشان میدهد.
شکل 11: اصلاح شبکه در نقاط حساس و در نزدیکی دیوارهها
در کنار مفاهیمی که تاکنون اشاره شد، مفهوم همگرایی اهمیت زیادی در علم دینامیک سیالات محاسباتی دارد. حرکت سیال درون یا اطراف اجسام مختلف، از مدلهای ریاضی و غیر خطی مختلفی پیروی میکند و با استفاده از مدلهای گوناگونی مانند مدلهای توربولانس، تغییر فاز و انتقال جرم میتوان به توصیف و شبیهسازی آن پرداخت.
روند حل محاسبات در یک حل تحلیلی اینگونه است که یک معادله حل میشود و در نهایت جواب آن به صورت صریح به دست میآید ولی حل عددی در دینامیک سیالات محاسباتی، شامل یک «الگوی تکرارپذیر» (Iterative Scheme) است. در این روند تکرار پذیر، ابتدا معادلات با یک حدس اولیه حل میشوند. در ادامه، حل انجام شده در مرحله اول به عنوان حدس اولیه در مرحله دوم در نظر گرفته میشود و معادلات مجددا تکرار میشوند. این روند بارها تکرار میشود.
روند بیان شده در بالا، تا زمانی ادامه پیدا میکند که تفاوت پاسخ مسئله در یک مرحله و مرحله قبل آن، کمتر از مقدار خطای مورد نظر باشد. در واقع در محاسبات دینامیک سیالات محاسباتی، یک مقدار خطا یا باقیمانده تعیین میشود و زمانی که تفاوت پاسخ در یک مرحله و مرحله قبل، از این مقدار کمتر باشد، حل مورد نظر همگرا شده است و محاسبات متوقف میشوند.
توجه کنید که انتظار ما از یک حل عددی درست این است که اختلاف پاسخ یک مرحله و مرحله قبلیاش به مرور کمتر شود تا در نهایت این اختلاف از مقدار خطای تعیین شده کوچکتر شود. در صورتی که نمودار این اختلاف را بر حسب شماره مرحله رسم کنیم، یک نمودار با شیب مشخصی به دست میآید. شیب این نمودار، روند همگرایی را نشان میدهد که مقدار آن به نوع مسئله، مدل ریاضی استفاده شده برای حل معادلات ناویر استوکس و ویژگیهای سیال مورد استفاده (چگالی، ویسکوزیتهوفشار بخار) بستگی دارد. شکل زیر نمونهای از روند همگرایی یک حل عددی در نرم افزار تجاری انسیس فلوئنت را به تصویر کشیده است.
شکل ۱2: بررسی روند همگرایی حل عددی در نرم افزار انسیس فلوئنت
حالتی را در نظر بگیرید که زمان از معادلات حذف شده و یک حل در «حالت پایا» (Steady State) مد نظر ما است. در این حالت و به محض ارضای شرط همگرایی، حالت پایا به دست میآید.
حالت دیگر و در مسائلی که حالت «گذرا» (Transient) وجود دارد، مسئله به تعداد زیادی گام زمانی تقسیم میشود و این همگرایی باید در تمام گامهای زمانی انجام شود. در واقع ابتدا در یک گام زمانی مسئله تکرار میشود تا شرط همگرایی ارضا شود و سپس وارد گام زمانی بعدی میشویم.
به صورت کلی میتوان بیان کرد که همگرایی و سرعت آن به عوامل متنوعی بستگی دارد و برای انجام یک حل عددی در دینامیک سیالات محاسباتی باید به نکات زیر توجه داشت:
[list=1]
[*]سرعت همگرایی یک حل عددی را میتوان با انتخاب مناسب پارامترهایی مانند «شرایط اولیه» (Initial Condition)، «ضریب زیر تخفیف» (َUnder Relaxation Factor) و «عدد کورانت» (Courant Number)، افزایش داد.
[*]در صورتی که حل همگرا شود، نمیتوان با قطعیت اعلام کرد که حل ما درست است و پاسخ یکسانی با نتایج تجربی دارد؛ زیرا ممکن است مدل ریاضی و یا شبکه حل ابهاماتی داشته باشند.
[*]همگرایی یک حل عددی در علم دینامیک سیالات محاسباتی را میتوان با استفاده از روشهای مختلفی مانند افزایش کیفیت مش، تصحیح مش و به کار بستن روشهایی با دقت بالا برای گسستهسازی معادلات، بهبود بخشید.
[/list]کاربرد دینامیک سیالات محاسباتی
هرجا که سیال وجود دارد، دینامیک سیالات محاسباتی یا CFD نیز حضور دارد. در قسمتهای قبل اشاره شد که اولین قدم برای آغاز یک شبیهسازی CFD، ارائه یک مدل ریاضی مناسب است که بتواند حالت واقعی پدیده مورد نظر ما را توصیف کند.
برای مثال جریان اطراف استوانه، یکی از پر کاربردترین جریانها در مکانیک سیالات است که در این مطلب نیز به بیان آن پرداخته میشود. فرایندی مشابه با این پدیده هنگام حرکت ابرها در اتمسفر نیز مشاهده میشود. حقیقت این است که اندازه پدیده حرکت ابرها در هواشناسی و جریان اطراف استوانه بسیار متفاوت است ولی هر دو از الگوی یکسانی پیروی میکنند. بنابراین میتوان از جریان اطراف استوانه به عنوان یک مدل ریاضی مناسب برای توصیف حرکت ابرها استفاده کرد.
شکل ۱3: جریان سیال اطراف یک استوانه شکل ۱4: نمایی از حرکت ابرها اطراف یک جزیره
بنابراین میتوان اشاره کرد که یکی از کاربردهای مهم دینامیک سیالات محاسباتی، پیشبینی آب و هوا و حرکت ابرها است. شکل بالا «گردابههای کارمن» (Karman Vortex) در پشت استوانه و درون اتمسفر را نشان میدهند. یکی دیگر از عکسهای هوایی که هنگام عبور ابرها از اطراف کوهها گرفته شده، عکس زیر است. در این شکل گردابههای کارمن به خوبی نشان داده شده است.
شکل 15: نمایی از حرکت ابرها
مقایسه ابزارهای مختلف انجام یک شبیهسازی CFD
ابزارهای مختلفی برای انجام یک حل عددی وجود دارد. این ابزارها با توجه به مدل ریاضی، روش عددی و شیوه تحلیل دادهها انواع مختلفی دارند. توجه شود که در تمامی فرایندهای دینامیک سیالات محاسباتی یک پیش پردازش، یک پردازش و یک «پس پردازش» (Post-Processing) وجود دارد.
در واقع دو راه برای اجرای یک شبیهسازی CFD وجود دارد، راه اول این است که با زبانهای برنامه نویسی مختلف مانند فرترن، C و ++C یک کد بنویسیم که بتواند حل عددی را انجام دهد. راه دیگر برای اجرای یک شبیهسازی عددی در دینامیک سیالات محاسباتی، استفاده از نرم افزارهای آماده تجاری مانند فلوئنت و CFX است.
به عنوان مثال میتوان اشاره کرد که نرم افزار فلوئنت با استفاده از روش حجم محدود به بررسی مسائل دینامیک سیالات محاسباتی میپردازد، سرعت پردازش بالاتری دارد و برای محدوده گستردهای از مسائل کاربرد دارد ولی تنظیمات بسیار زیادی را از کاربر برای حل جریان دریافت میکند. در سمت مقابل نرم افزار CFX قرار دارد که برای مسائل توربو ماشین و ماشینهای دوار پاسخهای بسیار مناسبی را ارائه میکند و با استفاده از یک سری تنظیمات محدود، حل مطلوبی را در اختیار کاربر قرار میدهد.
نوعی دیگر از نرم افزارها، نرم افزارهای متن باز مانند OpenFoam هستند. این نرم افزار شامل مجموعهای از کدهای آماده است که به کاربر اجازه اجازه ایجاد تغییراتی در کد را میدهد علاوه بر این، کاربر میتواند کدی را به این نرم افزار اضافه کند. بر خلاف دو نرم افزار تجاری CFX و Fluent که کاربرد زیادی در صنعت دارند، معمولا نرم افزار OpenFoam در جوامع دانشگاهی کاربرد دارد و حلگرهای متنوع با استفاده از این نرم افزار روی یک پدیده فیزیکی مورد آزمایش قرار میگیرند.
توجه شود که اجرای درست یک حل عددی در تمام روشها و نرم افزارهای دینامیک سیالات محاسباتی، نیازمند استفاده از سخت افزار مناسب، مدل سازی درست پدیده فیزیکی و همچنین داشتن دانش کافی و دقیق درباره «معادلات با مشتقهای جزئی» (Partial Differential Equations) است. در مطالب دیگر وبلاگ فرادرس انواع روشهای عددی موجود در دینامیک سیالات محاسباتی مانند روش تفاضل محدود وروش حجم محدودبه صورت دقیق مورد بررسی قرار میگیرند. توجه کنید که مطالعه پایداری روشهای مختلف عددی، نقش مهمی در انتخاب و استفاده از این روشها دارد. به همین دلیل پایداری روش تفاضل محدود » در وبلاگ فرادرس به صورت دقیق بررسی شده است.
همانطور که در بخش قبل اشاره شد، برای رسیدن به جواب درست در یک حل عددی، باید شبکه یا مش ما در نقاط حساس باگرادیان بالا، ریز باشد. در دینامیک سیالات محاسباتی و برای مثال در نرم افزارهایی مانند گمبیت و انسیس به این کار «اصلاح مش» (Mesh Refinement) گفته میشود. شکل زیر نمونهای از اصلاح مش و شبکه را اطراف نقاط حساس یک اتومبیل فرمول یک نشان میدهد.
شکل 11: اصلاح شبکه در نقاط حساس و در نزدیکی دیوارهها
در کنار مفاهیمی که تاکنون اشاره شد، مفهوم همگرایی اهمیت زیادی در علم دینامیک سیالات محاسباتی دارد. حرکت سیال درون یا اطراف اجسام مختلف، از مدلهای ریاضی و غیر خطی مختلفی پیروی میکند و با استفاده از مدلهای گوناگونی مانند مدلهای توربولانس، تغییر فاز و انتقال جرم میتوان به توصیف و شبیهسازی آن پرداخت.
روند حل محاسبات در یک حل تحلیلی اینگونه است که یک معادله حل میشود و در نهایت جواب آن به صورت صریح به دست میآید ولی حل عددی در دینامیک سیالات محاسباتی، شامل یک «الگوی تکرارپذیر» (Iterative Scheme) است. در این روند تکرار پذیر، ابتدا معادلات با یک حدس اولیه حل میشوند. در ادامه، حل انجام شده در مرحله اول به عنوان حدس اولیه در مرحله دوم در نظر گرفته میشود و معادلات مجددا تکرار میشوند. این روند بارها تکرار میشود.
روند بیان شده در بالا، تا زمانی ادامه پیدا میکند که تفاوت پاسخ مسئله در یک مرحله و مرحله قبل آن، کمتر از مقدار خطای مورد نظر باشد. در واقع در محاسبات دینامیک سیالات محاسباتی، یک مقدار خطا یا باقیمانده تعیین میشود و زمانی که تفاوت پاسخ در یک مرحله و مرحله قبل، از این مقدار کمتر باشد، حل مورد نظر همگرا شده است و محاسبات متوقف میشوند.
توجه کنید که انتظار ما از یک حل عددی درست این است که اختلاف پاسخ یک مرحله و مرحله قبلیاش به مرور کمتر شود تا در نهایت این اختلاف از مقدار خطای تعیین شده کوچکتر شود. در صورتی که نمودار این اختلاف را بر حسب شماره مرحله رسم کنیم، یک نمودار با شیب مشخصی به دست میآید. شیب این نمودار، روند همگرایی را نشان میدهد که مقدار آن به نوع مسئله، مدل ریاضی استفاده شده برای حل معادلات ناویر استوکس و ویژگیهای سیال مورد استفاده (چگالی، ویسکوزیتهوفشار بخار) بستگی دارد. شکل زیر نمونهای از روند همگرایی یک حل عددی در نرم افزار تجاری انسیس فلوئنت را به تصویر کشیده است.
شکل ۱2: بررسی روند همگرایی حل عددی در نرم افزار انسیس فلوئنت
حالتی را در نظر بگیرید که زمان از معادلات حذف شده و یک حل در «حالت پایا» (Steady State) مد نظر ما است. در این حالت و به محض ارضای شرط همگرایی، حالت پایا به دست میآید.
حالت دیگر و در مسائلی که حالت «گذرا» (Transient) وجود دارد، مسئله به تعداد زیادی گام زمانی تقسیم میشود و این همگرایی باید در تمام گامهای زمانی انجام شود. در واقع ابتدا در یک گام زمانی مسئله تکرار میشود تا شرط همگرایی ارضا شود و سپس وارد گام زمانی بعدی میشویم.
به صورت کلی میتوان بیان کرد که همگرایی و سرعت آن به عوامل متنوعی بستگی دارد و برای انجام یک حل عددی در دینامیک سیالات محاسباتی باید به نکات زیر توجه داشت:
[list=1]
[*]سرعت همگرایی یک حل عددی را میتوان با انتخاب مناسب پارامترهایی مانند «شرایط اولیه» (Initial Condition)، «ضریب زیر تخفیف» (َUnder Relaxation Factor) و «عدد کورانت» (Courant Number)، افزایش داد.
[*]در صورتی که حل همگرا شود، نمیتوان با قطعیت اعلام کرد که حل ما درست است و پاسخ یکسانی با نتایج تجربی دارد؛ زیرا ممکن است مدل ریاضی و یا شبکه حل ابهاماتی داشته باشند.
[*]همگرایی یک حل عددی در علم دینامیک سیالات محاسباتی را میتوان با استفاده از روشهای مختلفی مانند افزایش کیفیت مش، تصحیح مش و به کار بستن روشهایی با دقت بالا برای گسستهسازی معادلات، بهبود بخشید.
[/list]کاربرد دینامیک سیالات محاسباتی
هرجا که سیال وجود دارد، دینامیک سیالات محاسباتی یا CFD نیز حضور دارد. در قسمتهای قبل اشاره شد که اولین قدم برای آغاز یک شبیهسازی CFD، ارائه یک مدل ریاضی مناسب است که بتواند حالت واقعی پدیده مورد نظر ما را توصیف کند.
برای مثال جریان اطراف استوانه، یکی از پر کاربردترین جریانها در مکانیک سیالات است که در این مطلب نیز به بیان آن پرداخته میشود. فرایندی مشابه با این پدیده هنگام حرکت ابرها در اتمسفر نیز مشاهده میشود. حقیقت این است که اندازه پدیده حرکت ابرها در هواشناسی و جریان اطراف استوانه بسیار متفاوت است ولی هر دو از الگوی یکسانی پیروی میکنند. بنابراین میتوان از جریان اطراف استوانه به عنوان یک مدل ریاضی مناسب برای توصیف حرکت ابرها استفاده کرد.
شکل ۱3: جریان سیال اطراف یک استوانه شکل ۱4: نمایی از حرکت ابرها اطراف یک جزیره
بنابراین میتوان اشاره کرد که یکی از کاربردهای مهم دینامیک سیالات محاسباتی، پیشبینی آب و هوا و حرکت ابرها است. شکل بالا «گردابههای کارمن» (Karman Vortex) در پشت استوانه و درون اتمسفر را نشان میدهند. یکی دیگر از عکسهای هوایی که هنگام عبور ابرها از اطراف کوهها گرفته شده، عکس زیر است. در این شکل گردابههای کارمن به خوبی نشان داده شده است.
شکل 15: نمایی از حرکت ابرها
مقایسه ابزارهای مختلف انجام یک شبیهسازی CFD
ابزارهای مختلفی برای انجام یک حل عددی وجود دارد. این ابزارها با توجه به مدل ریاضی، روش عددی و شیوه تحلیل دادهها انواع مختلفی دارند. توجه شود که در تمامی فرایندهای دینامیک سیالات محاسباتی یک پیش پردازش، یک پردازش و یک «پس پردازش» (Post-Processing) وجود دارد.
در واقع دو راه برای اجرای یک شبیهسازی CFD وجود دارد، راه اول این است که با زبانهای برنامه نویسی مختلف مانند فرترن، C و ++C یک کد بنویسیم که بتواند حل عددی را انجام دهد. راه دیگر برای اجرای یک شبیهسازی عددی در دینامیک سیالات محاسباتی، استفاده از نرم افزارهای آماده تجاری مانند فلوئنت و CFX است.
به عنوان مثال میتوان اشاره کرد که نرم افزار فلوئنت با استفاده از روش حجم محدود به بررسی مسائل دینامیک سیالات محاسباتی میپردازد، سرعت پردازش بالاتری دارد و برای محدوده گستردهای از مسائل کاربرد دارد ولی تنظیمات بسیار زیادی را از کاربر برای حل جریان دریافت میکند. در سمت مقابل نرم افزار CFX قرار دارد که برای مسائل توربو ماشین و ماشینهای دوار پاسخهای بسیار مناسبی را ارائه میکند و با استفاده از یک سری تنظیمات محدود، حل مطلوبی را در اختیار کاربر قرار میدهد.
نوعی دیگر از نرم افزارها، نرم افزارهای متن باز مانند OpenFoam هستند. این نرم افزار شامل مجموعهای از کدهای آماده است که به کاربر اجازه اجازه ایجاد تغییراتی در کد را میدهد علاوه بر این، کاربر میتواند کدی را به این نرم افزار اضافه کند. بر خلاف دو نرم افزار تجاری CFX و Fluent که کاربرد زیادی در صنعت دارند، معمولا نرم افزار OpenFoam در جوامع دانشگاهی کاربرد دارد و حلگرهای متنوع با استفاده از این نرم افزار روی یک پدیده فیزیکی مورد آزمایش قرار میگیرند.
توجه شود که اجرای درست یک حل عددی در تمام روشها و نرم افزارهای دینامیک سیالات محاسباتی، نیازمند استفاده از سخت افزار مناسب، مدل سازی درست پدیده فیزیکی و همچنین داشتن دانش کافی و دقیق درباره «معادلات با مشتقهای جزئی» (Partial Differential Equations) است. در مطالب دیگر وبلاگ فرادرس انواع روشهای عددی موجود در دینامیک سیالات محاسباتی مانند روش تفاضل محدود وروش حجم محدودبه صورت دقیق مورد بررسی قرار میگیرند. توجه کنید که مطالعه پایداری روشهای مختلف عددی، نقش مهمی در انتخاب و استفاده از این روشها دارد. به همین دلیل پایداری روش تفاضل محدود » در وبلاگ فرادرس به صورت دقیق بررسی شده است.