تفاوت شرط مرزی Symmetry، Periodic و Axisymmetric در فلوئنت: راهنمای کامل
چرا سادهسازی هندسه و کاهش دامنه محاسباتی اولین قدم یک مهندس حرفهای در پروژههای CFD است؟
راستش را بخواهید، در این ۷ سال تجربهای که در زمینه شبیهسازی داشتم، بارها دیدم که مهندسان تازهکار (و حتی گاهی مدیران صنعتی) فکر میکنند هرچقدر هندسه پیچیدهتر و سنگینتر باشد، نتایج “خفنتر” و دقیقتری میگیرند. اما واقعیت دقیقاً برعکس است. یادم میآید سر یک پروژه تحلیل مبدل حرارتی برای یک شرکت نفت و گاز، کلاینت اصرار داشت که تمام ۵۰۰۰ لوله مبدل را به صورت کامل و سهبعدی مش بزنیم! اگر این کار را میکردیم، حتی با کلاستر (Cluster) هم دو ماه طول میکشید تا همگرا شود.
ما در سیمومک، اولین کاری که میکنیم “جراحی هندسه” است. استفاده هوشمندانه از شرایط مرزی برای بریدن مدل، نه تنها زمان حل را از چند هفته به چند ساعت کاهش میدهد، بلکه دقت را هم بالا میبرد چون میتوانید مشبندی ریزتر و باکیفیتتری در همان دامنه کوچک داشته باشید. درک تفاوت شرط مرزیSymmetry، Periodic وAxisymmetric در فلوئنت دقیقاً همان نقطه عطفی است که یک اپراتور نرمافزار را از یک مهندس طراح متمایز میکند. اگر اصول معادلات ناویر-استوکس به زبان ساده را بدانید، میفهمید که حل یک قطاع ۳۰ درجهای، دقیقاً همان فیزیکِ مدل ۳۶۰ درجه را به شما میدهد، به شرطی که درست انتخاب کنید. ✂️

شرط مرزی تقارن (Symmetry) دقیقاً چه فرضیاتی را بر فیزیک جریان سیال تحمیل میکند؟
شرط مرزی Symmetry مثل یک آینه رفتار میکند. وقتی شما یک صفحه را به عنوان Symmetry تعریف میکنید، عملاً به فلوئنت میگویید که در آن طرف این صفحه، دنیایی دقیقاً مشابه این طرف وجود دارد، انگار که یک آینه گذاشتهاید. از نظر ریاضی، این یعنی هیچ جریانی از این صفحه عبور نمیکند (سرعت عمودی صفر است) و گرادیان تمام متغیرها (مثل دما و سرعت) عمود بر این مرز، صفر در نظر گرفته میشود.
خیلیها فکر میکنند Symmetry همان “دیوار بدون اصطکاک” (Slip Wall) است. خب، شباهتهایی دارند اما یکی نیستند. در پروژههایی مثل جریان اطراف یک خودرو یا هواپیما که هندسه چپ و راست یکسان است، استفاده از این شرط مرزی نان شب واجب است! البته باید حواستان باشد که فیزیک جریان هم متقارن باشد؛ مثلاً اگر در راهنمای کامل شرایط مرزی (Boundary Conditions) در فلوئنت دقیق شده باشید، میدانید که اگر جریان ناپایدار و نوسانی (مانند Vortex Shedding) پشت یک استوانه داشته باشیم، استفاده از Symmetry در وسط استوانه اشتباه محض است چون گردابهها ذاتاً نامتقارن جدا میشوند و شما با این کار فیزیک مسئله را خفه میکنید.
چگونه شرط مرزی محوری (Axisymmetric) یک هندسه دوبعدی را در محاسبات فلوئنت به واقعیت سهبعدی تبدیل میکند؟
اینجا جایی است که جادوی ریاضی اتفاق میافتد. شرط مرزی Axisymmetric مخصوص زمانی است که هندسه و جریان، هر دو حول یک محور مرکزی دوران داشته باشند (مثل لوله، نازل، یا مخازن استوانهای). در اینجا ما اصلاً مدل سه بعدی نمیکشیم! یک صفحه دوبعدی (یک برش از هندسه) را رسم میکنیم و به نرمافزار میفهمانیم که این یک برش نیست، بلکه نمایندهی یک حجم دورانی است.
نکتهای که خیلی از دانشجوها را به دردسر میاندازد این است که فکر میکنند Axisymmetric فقط هندسه را میچرخاند. نه! این شرط مرزی معادلات حاکم را تغییر میدهد و ترمهای استوانهای (r, θ, z) را وارد محاسبات میکند. اگر میخواهید در مورد نحوه گسستهسازی این معادلات بیشتر بدانید، مقاله تفاوت روشهای حجم محدود، المان محدود و تفاضل محدود (FVM vs FEM vs FDM) دید خوبی به شما میدهد. در سیمومک وقتی پروژههایی مثل تحلیل جریان داخل انژکتور سوخت داریم، همیشه از این حالت استفاده میکنیم تا به جای میلیونها سلول، با چند هزار سلول به جواب برسیم.
چرا شرط مرزی تناوبی (Periodic) کلید طلایی شبیهسازی توربوماشینها و آرایههای تکرارشونده است؟
اگر روی پروژهای کار میکنید که هندسه تکرار میشود (مثل پرههای یک توربین، فن کامپیوتر، یا پرههای همزن در یک راکتور)، شرط مرزی Periodic بهترین دوست شماست. بر خلاف Symmetry که مثل آینه عمل میکرد، Periodic مثل یک “پورتال جادویی” عمل میکند! یعنی هر جریانی که از مرز سمت راست خارج شود، دقیقاً با همان زاویه و سرعت از مرز سمت چپ وارد میشود.
ما در پروژه اخیرمان برای تحلیل یک کمپرسور صنعتی، به جای شبیهسازی کل ۴۰ پره، فقط یک پره را به همراه فضای خالی اطرافش مش زدیم و از Periodic چرخشی استفاده کردیم. این تکنیک دقیقاً مشابه چیزی است که در کیس استادی: تحلیل آیرودینامیک پرههای توربین بادی توضیح دادهایم. این کار باعث شد بتوانیم روی لایه مرزی پرهها تمرکز کنیم و از مدلهای توربولانسی سنگینتر استفاده کنیم، بدون اینکه نگران کمبود رم (RAM) باشیم. دو نوع Periodic داریم: چرخشی (Rotational) برای فنها و انتقالی (Translational) برای چیزهایی مثل لولههای پشت سر هم در یک مبدل حرارتی.
تفاوت بنیادین فیزیک جریان در مرزهای Symmetry با Periodic در چیست و چرا نباید آنها را جابجا گرفت؟
این سوالی است که اگر جوابش را ندانید، کل پروژه CFD شما زیر سوال میرود. بیایید سادهاش کنیم: در Symmetry، سیال به مرز برخورد میکند و “لیز” میخورد (نمیتواند رد شود). اما در Periodic، سیال از مرز رد میشود و از طرف دیگر برمیگردد.
فرض کنید میخواهید جریان را در یک دسته لوله (Tube Bank) شبیهسازی کنید. اگر بین لولهها Symmetry بگذارید، یعنی فرض کردهاید که جریان بین لولهها هیچ تداخلی با هم ندارد و خط جریان صاف است. اما اگر Periodic بگذارید، اجازه میدهید که گردابههای پشت یک لوله حرکت کنند و روی لوله بعدی اثر بگذارند (Vortex Shedding). استفاده اشتباه از Symmetry در اینجا باعث میشود افت فشار را اشتباه محاسبه کنید. برای درک بهتر اینکه این خطاهای کوچک چطور بزرگ میشوند، پیشنهاد میکنم نگاهی به مطلب خطاهای عددی در CFD: خطای گسستهسازی، گرد کردن و تکرار بیندازید تا ببینید چطور یک فرض غلط میتواند نتایج را از واقعیت دور کند.
جدول مقایسه سریع کاربردها در سیمومک:
| ویژگی | Symmetry (تقارن) | Periodic (تناوبی) | Axisymmetric (محوری) |
| رفتار جریان | مثل آینه (عبور ممنوع) | مثل پورتال (عبور و بازگشت) | دوران ۳۶۰ درجه حول محور |
| نیاز هندسی | تقارن آینهای هندسه | تکرار الگوی هندسی | تقارن دورانی کامل |
| مثال کاربردی | بدنه خودرو (نصف مدل) | پره توربین، مبدل حرارتی | لوله، نازل موشک، مخزن |
| دامنه حل | ۳ بعدی (نصف شده) | ۳ بعدی (یک قطاع) | ۲ بعدی (روی صفحه) |
در چه سناریوهایی اشتباه گرفتن Axisymmetric با Symmetry باعث خطای فاحش در محاسبه دبی جرمی میشود؟
این یکی از آن خطاهای کلاسیک است که معمولاً گریبانگیر تازهکارها میشود. فرض کنید یک لوله دایرهای دارید. اگر آن را از وسط نصف کنید و شرط مرزی Symmetry بگذارید، فلوئنت دبی جرمی (Mass Flow Rate) را برای همان “نصف لوله” محاسبه میکند. یعنی اگر خروجی گرفتید، باید عدد را ضرب در ۲ کنید تا دبی کل را بدست آورید.
اما در حالت Axisymmetric داستان فرق دارد. وقتی شما یک سطح مستطیلی ۲ بعدی میکشید و این شرط را اعمال میکنید، نرمافزار خودش میفهمد که این نماینده یک حجم ۳۶۰ درجه است. بنابراین وقتی گزارش دبی جرمی میگیرید، فلوئنت به صورت خودکار انتگرالگیری را روی کل حجم دورانی (۲π radian) انجام میدهد و دبی کل لوله را به شما میدهد. اگر به اشتباه فکر کنید این هم مثل Symmetry است و عدد را ضرب در چیزی کنید، نتایجتان چندین برابر واقعیت میشود! این دقت در محاسبات همان چیزی است که ما در خدمات راهنمای جامع اعتبارسنجی (Validation) و صحتسنجی (Verification) در شبیهسازی CFD روی آن تاکید داریم؛ اینکه بدانیم نرمافزار دقیقاً چه عددی را به ما تحویل میدهد.

چگونه هندسه مدل را در مرحله پیشپردازش برای اعمال صحیح شرایط مرزی هندسی برش دهیم؟
همه چیز از هندسه شروع میشود. اگر در اسپیسکلیم (SpaceClaim) یا دیزاینمادلر (DesignModeler) هندسه را بد برش بزنید، در فلوئنت بیچاره میشوید. برای شرط مرزی Periodic چرخشی، خیلی مهم است که سطوح برش خورده (Side 1 و Side 2) دقیقاً با هم منطبق باشند، فقط با یک زاویه چرخش. اگر مشبندی روی این دو سطح همخوانی نداشته باشد (یعنی Node ها روبروی هم نباشند)، باید از گزینه Non-conformal Periodic استفاده کنید که کمی دقت را پایین میآورد. 📐
نکته مهم در برش زدن برای Symmetry این است که مطمئن شوید صفحه برش دقیقاً از وسط هندسه رد شده است. حتی یک میکرون انحراف باعث میشود مشبندی نامتقارن شود و در همگرایی به مشکل بخورید. ما معمولاً برای برشهای پیچیده و تولید مشهای سازمانیافته برای این سطوح، از تکنیکهایی استفاده میکنیم که در آموزش مشبندی (Meshing) در Ansys Meshing به طور مفصل در موردش بحث شده است. همیشه یادتان باشد: وقت گذاشتن روی تمیز کردن هندسه، ده برابر زمان حل را نجات میدهد.
چرا در شبیهسازیهای Axisymmetric در فلوئنت حتماً باید محور تقارن روی محور X منطبق باشد؟
این قانون نانوشته (و البته نوشته شده در هلپ نرمافزار!) فلوئنت است که خیلیها را کلافه میکند. در انسیس فلوئنت، اگر میخواهید از حلگر 2D Axisymmetric استفاده کنید، حتماً و حتماً باید محور تقارن هندسه شما روی محور X منطبق باشد و دامنه محاسباتی در جهت Y مثبت (y>=0) قرار بگیرد.
بارها پیش آمده که فایل کلاینت را باز کردیم و دیدیم ارور عجیب و غریب میدهد، فقط به خاطر اینکه محور لوله را روی Y کشیدهاند یا هندسه کمی زیر محور X رفته است (Y منفی). فلوئنت در این مورد شوخی ندارد. اگر هندسهتان عمودی است، باید در مرحله مشبندی یا داخل خود فلوئنت آن را بچرخانید و جابجا کنید تا روی محور X بیفتد. این یکی از آن نکات ریزی است که شاید در مقدمهای بر شبیهسازی گردابههای بزرگ (LES) و DNS: فراتر از RANS اشارهای به آن نشود، اما در کارهای روزمره مهندسی مکانیک بسیار حیاتی است.
مراحل گامبهگام تنظیم شرط مرزی Periodic (چرخشی و انتقالی) در محیط فلوئنت چگونه است؟
خب برسیم به بخش عملی کار. تنظیم Periodic یکم قلق داره ولی وقتی یاد بگیرید خیلی کار راه اندازه. فرض کنیم شما یک قطاع از یک توربین رو دارید:
- شناسایی مرزها: اول باید دو تا سطح برش خورده رو به عنوان مرزهای دورهای مشخص کنید. یکی رو “Periodic 1” و دیگری رو “Periodic 2” نامگذاری کنید.
- تعریف در فلوئنت: وارد محیط فلوئنت که شدید، باید به نرمافزار بفهمانید این دو سطح با هم جفت هستند. از طریق دستورات TUI (Text User Interface) این کار خیلی دقیقتر انجام میشه.
- نوع Periodic: اینجا باید مشخص کنید که تناوب شما چرخشی (Rotational) است یا انتقالی (Translational). برای توربین، قطعاً چرخشی رو انتخاب میکنیم و محور دوران (مثلاً محور Z) و زاویه قطاع (مثلاً ۹ درجه برای یک توربین ۴۰ پره) رو وارد میکنیم.
- بررسی مش (Mesh Check): بعد از تعریف، حتماً یک Check Mesh بزنید تا مطمئن شید فلوئنت ارتباط بین این دو مرز رو درست برقرار کرده.
این تنظیمات مستقیم روی نحوه حل معادلات اثر میزارند. اینکه حلگر چطور فشار و سرعت را بین این مرزها کوپل کند، به الگوریتمهای حل برمیگردد که در مقاله مقایسه الگوریتمهای SIMPLE، PISO و Coupled در فلوئنت به طور کامل توضیح دادهایم.
آیا استفاده از شرایط مرزی هندسی تاثری بر همگرایی مش و کیفیت لایه مرزی در نزدیکی دیوارهها دارد؟
قطعاً بله و این تاثیر ۹۹ درصد مواقع مثبت است! وقتی شما به جای یک مدل کامل با ۱۰۰ میلیون سلول، یک قطاع با ۲ میلیون سلول را شبیهسازی میکنید، دستتان برای افزایش کیفیت مش بازتر میشود. شما میتوانید تمام تمرکز و توان محاسباتی سیستم را روی بالا بردن کیفیت مش در نواحی حساس، مثل لایه مرزی نزدیک دیوارهها، بگذارید.
مثلاً برای تحلیل دقیق نیروی درگ، باید پارامتر y+ در نزدیکی دیواره زیر ۱ باشد که نیاز به مش بسیار ریزی دارد. در یک مدل کامل، این کار تقریباً غیرممکن یا بسیار پرهزینه است. اما در یک مدل سادهشده، به راحتی میتوانیم ۱۵ تا ۲۰ لایه مش منشوری (Prism Layer) در این ناحیه قرار دهیم. این موضوع به خصوص وقتی مهم میشود که از توابع دیواره (Wall Functions) استاندارد و پیشرفته در فلوئنت استفاده میکنید، چون عملکرد این توابع مستقیماً به کیفیت مش نزدیک دیواره وابسته است.
شایع ترین خطاهای نرمافزاری هنگام استفاده از مشهای Periodic و راهحلهای تجربی سیمومک برای رفع آنها چیست؟
اینجا جایی است که تجربه به کار میاد. 😤 بعد از صدها پروژه، ما در سیمومک با یک سری خطای تکراری در فلوئنت موقع کار با Periodic مواجه شدیم:
- خطای Non-overlapping mesh interfaces: این یعنی مش روی دو سطح دورهای شما دقیقاً منطبق نیست. معمولاً به خاطر اینه که در مرحله تولید هندسه، دو سطح برش خورده ۱۰۰٪ یکسان نیستند. راه حلش برگشت به نرم افزار CAD و اصلاح دقیق هندسه است.
- هشدار Reversed Flow در مرز دورهای: این یعنی جریان از مرزی که باید وارد شود، در حال خارج شدن است. این مشکل معمولاً به خاطر حدس اولیه (Initialization) بد یا تنظیمات اشتباه فشار است. برای کنترل این ناپایداریها، گاهی لازم است ضرایب Under-Relaxation در فلوئنت را به طور موقت کاهش دهیم تا حل پایدار شود.
- محاسبه اشتباه زاویه یا محور دوران: اگر محور دوران را اشتباه تعریف کنید، کل فیزیک مسئله به هم میریزد. همیشه محور دوران را با دستگاه مختصات اصلی چک کنید.
چگونه میتوانیم نتایج حاصل از یک قطاع کوچک را در CFD-Post به صورت مدل کامل سهبعدی نمایش دهیم؟
این بخش شیرین ماجراست! شما با یک قطاع کوچک حل را انجام دادهاید و حالا میخواهید نتیجه را به کارفرما یا استاد خود به صورت یک مدل کامل و جذاب نمایش دهید. در نرمافزار CFD-Post این کار به سادگی انجام میشود:
- فایل نتایج (.cas.h5 یا .dat.h5) را باز کنید.
- در منوی Location، یک Plane یا هر سطح دیگری روی قطاع خود ایجاد کنید.
- روی آن سطح راستکلیک کرده و گزینه Transform را بزنید.
- در پنجره باز شده، گزینه Apply Rotation را فعال کنید و تعداد کپیهای مورد نیاز (مثلاً ۳۹ کپی دیگر برای یک توربین ۴۰ پره) را با زاویه مشخص (مثلاً ۹ درجه) وارد کنید.
تمام! حالا شما میتوانید کانتورهای فشار یا خطوط جریان را روی کل مدل ۳۶۰ درجه ببینید. اینکار نه تنها برای گزارشدهی عالیه، بلکه به شما کمک میکند تا درک بهتری از ضرایب آیرودینامیکی مثل لیفت و درگ پیدا کنید، که تنظیمات دقیق آن در مقاله تنظیم صحیح Reference Values در فلوئنت توضیح داده شده است. 📊
رویکرد تیم سیمومک در استفاده از سادهسازیهای هندسی برای کاهش هزینه و زمان پروژههای صنعتی چیست؟
ما در سیمومک معتقدیم که یک شبیهسازی خوب، شبیهسازی بهینه است، نه لزوماً پیچیدهترین آن. رویکرد ما این است که ابتدا فیزیک مسئله را عمیقاً درک کنیم و بعد ببینیم کدام بخش از هندسه “اضافی” است. به جای اینکه برای مشتری هزینه یک ماه ران روی یک کلاستر گرانقیمت را بتراشیم، با استفاده از همین تکنیکهای سادهسازی هندسی در فلوئنت، همان نتایج را در عرض چند روز و با یک ورکاستیشن معمولی تحویل میدهیم. 💰
این بهینهسازی فقط در زمان حل نیست؛ بلکه در زمان آمادهسازی مش و حتی تحلیل نتایج هم خودش را نشان میدهد. در نهایت، ما تمام این فرآیند سادهسازی و دلایل انتخاب هر شرط مرزی را در یک گزارش فنی کامل مستند میکنیم، چیزی شبیه به اصولی که در مقاله چگونه یک گزارش حرفهای برای پروژه CFD بنویسیم؟ آمده است تا مشتری دقیقاً بداند چرا نتایج ما قابل اعتماد هستند.
قبل از ران (Run) کردن شبیهسازیهای متقارن چه پارامترهایی را باید دوبار چک کنیم؟
قبل از اینکه دکمه Calculate را بزنید و چند ساعت یا چند روز منتظر بمانید، این چند مورد را سریع چک کنید تا از هدر رفتن وقت جلوگیری کنید:
- صحت هندسه: آیا صفحه تقارن دقیقاً در جای درست قرار دارد؟
- صحت فیزیک: آیا پدیده فیزیکی مورد بررسی (مثلاً جریان) واقعاً متقارن است؟
- نوع شرط مرزی: مطمئن شوید به اشتباه به جای Symmetry، شرط مرزی Wall با حالت No-Slip تعریف نکرده باشید!
- مقداردهی اولیه (Initialization): آیا شرایط اولیه حل شما با فیزیک مسئله همخوانی دارد؟ یک مقداردهی اولیه خوب میتواند مسیر رسیدن به همگرایی را هموارتر کند. برای درک بهتر این موضوع، میتوانید به مقاله تفاوت Hybrid Initialization و Standard Initialization در فلوئنت مراجعه کنید.
چگونه با اعتبارسنجی نتایج مطمئن شویم که سادهسازی هندسی آسیبی به دقت فیزیک مسئله وارد نکرده است؟
این مهمترین سوال است. سادهسازی خوب است، اما به چه قیمتی؟ برای اینکه مطمئن شویم فرض تقارن یا تناوب، نتایج را بیاعتبار نکرده، چند راه وجود دارد. بهترین راه، مقایسه نتایج با دادههای آزمایشگاهی یا مقالات معتبر است. اگر این دادهها موجود نبود، یک راه حل دیگر این است که یک بار هم مدل کامل را با یک مش بسیار درشت (Coarse Mesh) حل کنیم و نتایج کلیدی (مثل افت فشار یا ضریب درگ) را با نتایج مدل سادهشده مقایسه کنیم. اگر اختلاف ناچیز بود، یعنی فرض ما درست بوده است.
همیشه باید به نمودار باقیماندهها (Residuals) هم دقت کرد. گاهی اوقات یک فرض اشتباه باعث نوسان یا عدم همگرایی حل میشود. اینکه چطور این نمودارها را تفسیر کنید، خود یک مهارت است که در مطلب آیا کاهش باقیماندهها (Residuals) برای همگرایی کافی است؟ به آن پرداختهایم.
کدام شرط مرزی بهترین انتخاب برای پروژه شبیهسازی فعلی شماست؟
انتخاب درست، به هندسه و فیزیک شما بستگی دارد. اگر:
- هندسهتان حول یک محور میچرخد؟ Axisymmetric.
- هندسهتان یک صفحه تقارن آینهای دارد؟ Symmetry.
- یک الگو در هندسه شما تکرار میشود؟ Periodic.
تسلط بر این سه شرط مرزی، تفاوت بین یک شبیهسازی چند هفتهای و یک شبیهسازی چند ساعته است. امیدوارم این راهنمای تجربی به شما کمک کرده باشد تا درک عمیقتری از تفاوت شرط مرزیSymmetry، Periodic وAxisymmetric در فلوئنت پیدا کنید و در پروژههایتان با اطمینان بیشتری از آنها استفاده کنید.