روش لتیس بولتزمن
در روش بولتزمن شبکه، سیال با مجموعه ای از ذرات گسسته نمایش داده می شود که در یک شبکه حرکت کرده و با یکدیگر برخورد می کنند. به ذرات احتمالاتی اختصاص داده می شود که به توابع توزیع معروف هستند و سرعت و چگالی آنها را توصیف می کنند. ذرات از طریق شبکه منتشر می شوند و توابع توزیع آنها بر اساس خواص سیال محلی مانند سرعت و فشار به روز می شوند. فعل و انفعالات بین ذرات با استفاده از قوانین برخورد مدلسازی میشوند، که تضمین میکند سیال مطابق قوانین فیزیک رفتار میکند.
روش بولتزمن شبکه دارای چندین مزیت نسبت به تکنیکهای عددی سنتی برای حل مسائل دینامیک سیالات است. این یک روش نسبتا ساده و کارآمد است که می تواند به راحتی موازی شود و امکان شبیه سازی سیستم های در مقیاس بزرگ را فراهم می کند. همچنین انعطافپذیر است و امکان شبیهسازی جریانهای پیچیده، مانند جریانهایی که شامل آشفتگی و سیستمهای چند فازی هستند را میدهد. بعلاوه، پیاده سازی این روش آسان است و می تواند با طیف گسترده ای از کاربردها، از جمله برهمکنش های ساختار سیال، انتقال حرارت و واکنش های شیمیایی سازگار شود.
روش بولتزمن شبکه ای یک روش عددی است که برای حل معادلات ناویر-استوکس، به ویژه برای شبیه سازی جریان سیال استفاده می شود. در این روش سیال به عنوان مجموعه ای از ذرات در نظر گرفته می شود که بر روی یک شبکه مربع یا مکعب قرار دارند. هر ذره در یک جهت مشخص حرکت می کند و موقعیت آن در هر زمان روی شبکه تعیین می شود.
در هر مرحله از روش شبکه بولتزمن، دو عمل اصلی انجام می شود: انتشار و جریان. در فرآیند انتشار، توزیع ذرات در هر نقطه از شبکه بر اساس توزیع ذرات در نقاط اطراف محاسبه می شود. در فرآیند جریان، ذرات در هر نقطه در جهتی که به آنها اختصاص داده شده است حرکت می کنند.
برای مدلسازی جریان سیال با استفاده از روش بولتزمن شبکه، یک تابع توزیع برای هر جهت حرکت ذرات تعریف میشود. این تابع توزیع یک توزیع احتمال است که تعداد ذرات با سرعت و جهت مشخص را در هر نقطه از شبکه نشان می دهد. در هر مرحله، تابع توزیع برای هر جهت با استفاده از قوانین انتشار و جریان به روز می شود.
برهمکنش بین ذرات در روش بولتزمن شبکه با استفاده از عملگر برخورد بولتزمن مدل شده است. این تابع احتمال برخورد ذرات را در هر نقطه از شبکه محاسبه می کند و تابع توزیع را بر این اساس به روز می کند.
پس از اینکه تابع توزیع با استفاده از انتشار و جریان به روز شد، تابع توزیع جدید برای محاسبه خواص ماکروسکوپی سیال مانند چگالی و سرعت استفاده می شود. این کار با جمع کردن تابع توزیع در تمام جهات در هر نقطه از شبکه انجام می شود.
روش بولتزمن شبکه نسبت به روشهای عددی سنتی برای شبیهسازی جریان سیال مزایای متعددی دارد. اجرای آن نسبتا آسان است، زیرا نیازی به حل معادلات دیفرانسیل جزئی پیچیده ندارد. همچنین از نظر محاسباتی کارآمد است، زیرا می توان آن را به راحتی برای استفاده در سیستم های محاسباتی با کارایی بالا موازی کرد.
روش بولتزمن شبکه برای شبیه سازی طیف وسیعی از مسائل جریان سیال از جمله جریان های آرام و آشفته، جریان های چند فازی و هندسه های پیچیده استفاده شده است. همچنین گسترش یافته است تا حمل و نقل حرارتی و شیمیایی را نیز شامل شود و آن را به ابزاری همه کاره برای شبیه سازی انواع پدیده های فیزیکی تبدیل کرده است.
ابعاد و انواع روش های شبکه بولتزمن به کاربرد خاص و مشکل حل شده بستگی دارد. در اینجا برخی از ابعاد و انواع متداول روش شبکه بولتزمن آورده شده است:
ابعاد:
روش شبکه بولتزمن را می توان در فضای دو بعدی یا سه بعدی اعمال کرد. در فضای دو بعدی، شبکه از شبکه ای از سلول های مربع تشکیل شده است، در حالی که در فضای سه بعدی، از شبکه ای از سلول های مکعبی تشکیل شده است.
برای مثال D2Q9 و D3Q19 دو پیکربندی شبکه متفاوتی هستند که در روش بولتزمن شبکه استفاده میشوند، با اعداد نشاندهنده ابعاد و تعداد جهتهای سرعت گسسته مورد استفاده در هر پیکربندی شبکه. D2Q9 به یک پیکربندی شبکه دو بعدی (2 بعدی) با 9 بردار یا جهت سرعت گسسته اشاره دارد که در یک شبکه مربع مرتب شده اند. بردارهای سرعت به صورت زیر بدست می آیند:
(0.0)، (1.0)، (0.1)، (-1.0)، (0،-1)، (1،1)، (-1.1)، (-1،- 1)، (1،-1)
که در آن مولفه های اول و دوم به ترتیب مولفه های x و y بردار سرعت را نشان می دهند. این بدان معنی است که در هر سلول شبکه، 9 بردار سرعت گسسته وجود دارد که ذرات می توانند در امتداد آنها حرکت کنند. شبکه به گونه ای پیکربندی شده است که بردارهای سرعت از یکدیگر و از مرکز سلول به یک اندازه فاصله داشته باشند. D2Q9 معمولاً برای شبیه سازی جریان های سیال دو بعدی استفاده می شود.
در حقیقت، D3Q19 به یک پیکربندی شبکه سه بعدی (3 بعدی) با 19 بردار یا جهت سرعت گسسته اشاره دارد که در یک شبکه مکعبی مرتب شده اند. بردارهای سرعت به صورت زیر بدست می آیند:
(0،0،0)، (1،0،0)، (0،1،0)، (0،0،1)، (-1،0،0)، (0،-1،0)، (0،0،-1)، (1،1،0)، (-1،1،0)، (1،-1،0)، (-1،-1،0)، (1،0، 1)، (-1،0،1)، (1،0،-1)، (-1،0،-1)، (0،1،1)، (0،-1،1)، (0 ,1,-1, (0,-1,-1)
که در آن مولفه های اول، دوم و سوم به ترتیب مؤلفه های x، y و z بردار سرعت را نشان می دهند.
تفاوت بین D2Q9 و D3Q19 عمدتاً در تعداد و ترتیب بردارهای سرعت گسسته است. D3Q19 به آزادی جهت بیشتر در فضای سه بعدی اجازه می دهد، اما به دلیل تعداد بردارهای سرعت بیشتر، به حافظه و منابع محاسباتی بیشتری نسبت به D2Q9 نیاز دارد. از سوی دیگر، D3Q19 به یک شبکه سه بعدی با 19 جهت سرعت گسسته اشاره دارد. در این شبکه، هر سلول شامل 19 بردار سرعت گسسته است که ذرات می توانند در امتداد آنها حرکت کنند. شبکه به گونه ای پیکربندی شده است که بردارهای سرعت از یکدیگر و از مرکز سلول به یک اندازه فاصله داشته باشند. D3Q19 معمولا برای شبیه سازی جریان های سیال سه بعدی استفاده می شود. به طور خلاصه، تفاوت اصلی بین D2Q9 و D3Q19 ابعاد شبکه و تعداد جهتهای سرعت گسسته مورد استفاده در هر پیکربندی شبکه است.
انواع:
انواع مختلفی از روش های شبکه بولتزمن وجود دارد که عبارتند از:
روش Single-Relaxation-Time (SRT): این ساده ترین نوع روش شبکه بولتزمن است که در آن هر جهت سرعت ذره دارای یک پارامتر زمان آرامش است که میزان همگرایی را به تابع توزیع تعادل محلی تعیین می کند.
روش زمان استراحت چندگانه (MRT): این گسترش روش SRT است که در آن زمانهای آرامش برای جهتهای مختلف سرعت ذرات جدا میشوند و انعطافپذیری بیشتری در تنظیم خواص سیال فراهم میکنند.
روش معادله بولتزمن شبکه (LBE): این روش مبتنی بر حل مستقیم معادله شبکه بولتزمن است که تکامل تابع توزیع در فضا و زمان را توصیف می کند.
روش مرز غوطهور (IB): این روش برای شبیهسازی جریان سیال در اطراف هندسههای پیچیده مانند اجسام جامد یا موانع استفاده میشود. روش IB از یک رویکرد ترکیبی استفاده می کند، که در آن سیال با استفاده از روش بولتزمن شبکه شبیه سازی می شود، در حالی که مرزهای جامد به عنوان مجموعه ای از نقاط گسسته یا یک سطح پیوسته مدل می شوند.
روش بولتزمن شبکه حرارتی: این روش روش بولتزمن شبکه را گسترش می دهد تا حمل و نقل حرارتی را نیز شامل شود و امکان شبیه سازی مشکلات انتقال حرارت را فراهم می کند.
روش بولتزمن شبکه شیمیایی: این روش روش بولتزمن شبکه را گسترش می دهد تا حمل و نقل شیمیایی را نیز شامل شود و امکان شبیه سازی جریان های واکنشی و واکنش های شیمیایی را فراهم می کند.
به طور خلاصه، روش بولتزمن شبکه یک روش عددی قدرتمند و همه کاره برای شبیه سازی جریان سیال است که بر اساس مفهوم مجموعه ای از ذرات در حال حرکت بر روی یک شبکه است. فرآیندهای انتشار و جریان دو عملیات اصلی هستند که در هر مرحله از روش انجام میشوند و عملگر برخورد بولتزمن برای مدلسازی برهمکنشهای بین ذرات استفاده میشود.
عملکرد توزیع:
تابع توزیع، f، تابع چگالی احتمال جمعیت ذرات را در هر نقطه شبکه با سرعت و جهت خاصی نشان می دهد. می توان آن را اینگونه تعریف کرد:
f_i(x+e_iΔt, t+Δt) = f_i(x,t) + Δt(Ω_i(f) + S_i)
جایی که:
i شاخصی است که سرعت و جهت ذرات را نشان می دهد.
x مختصات مکانی است.
زمان است.
e_i بردار سرعت متناظر است.
Δt اندازه گام زمانی است.
Ω_i(f) عملگر برخورد است که فعل و انفعالات ذرات و اثر خواص سیال را مدل می کند.
S_i اپراتور استریم است که تابع توزیع را از موقعیت فعلی به موقعیت بعدی در جهت e_i منتقل می کند.
اپراتور برخورد:
عملگر برخورد، Ω_i(f)، برهمکنش ذرات و اثر خواص سیال را مدل می کند. می توان آن را به صورت زیر بیان کرد:
Ω_i(f) = -1/τ (f_i - f_i^{eq})
جایی که:
τ زمان استراحت است.
f_i^{eq} تابع توزیع تعادل محلی است.
تابع توزیع تعادل محلی:
تابع توزیع تعادل محلی، f_i^{eq}، برای محاسبه خواص ماکروسکوپی سیال استفاده می شود. به این صورت تعریف می شود:
f_i^{eq} = ρ w_i (1 + 3e_i · u/c^2 + 9/2 (e_i · u)^2/c^4 - 3/2 u^2/c^2)
جایی که:
ρ چگالی سیال است.
w_i وزن مربوط به هر بردار سرعت است.
u سرعت سیال است.
c سرعت صوت است.
اپراتور جریان:
اپراتور جریان، S_i، تابع توزیع را از موقعیت فعلی به موقعیت بعدی در جهت e_i منتقل می کند. می توان آن را به صورت زیر بیان کرد:
S_i(f) = f_i(x + e_iΔt، t)
خواص ماکروسکوپی:
خواص ماکروسکوپی سیال، مانند سرعت و چگالی، از تابع توزیع با استفاده از معادلات زیر به دست می آید:
ρ = ∑_{i=0}^{Q-1} f_i
u = (1/ρ) ∑_{i=0}^{Q-1} f_i e_i
جایی که:
Q تعداد جهت های گسسته در شبکه است.
امیدوارم این توضیحات اضافی به خوانایی بیشتر فرمول ها کمک کند. اگر سوال دیگری داشتید به من بگویید.
در پایان نمونه ای از کد فرترن برای روش لتیس بولتزمن دوبعدی D2Q9 را میتوانید از اینجا دانلود نمایید. یادآور میشود که این کد فقط برای یادگیری مقدماتی به اشتراک گذاشته شده و ارزش محاسباتی ندارد.