حل معادلات دیفرانسیل با مشتقات جزئی در MATLAB

در این پست شما را با محیط جعبه ابزار حل معادلات دیفرانسیل با مشتقات جزئی در MATLAB به نام pdetool آشنا می‌کنیم. در  محیط pdetool  شما می‌توانید عملیاتی که در حوزه ریاضی وجود دارد را به راحتی اجرا کنید. معادل‌های که حاوی یک یا چند مشتق جزئی (pde) یک تابع مجهول باشد، معادله دیفرانسیل با مشتقات جزئی pde است. معادلات دیفرانسیل بیضوی، سهموی و هذلولی دارای اهمیت زیادی در کاربردهای مهندسی هستند.

حل معادلات دیفرانسیل با مشتقات جزئی در MATLAB

معادله دیفرانسیل پیشفرض در متلب به صورت معادله بیضوی است. برخی از معادلات دیفرانسیل جزئی pde مهم و پرکاربرد در ادامه نمایش داده شده است. این معادلات از اصول فیزیکی استخراج می‌شوند و در آنها روش‌های حل مسائل شرائط اولیه و شرائط مرزی نیز بررسی می‌شود.

matlab-pde

در معادلات بالا انواع معادلات دیفرانسیل با مشتقات جزئی pde پس از اجرای دستور pdetool در محیط پنجره دستورات نرم افزار MATLAB تصویری به صورت زیر ظاهر می‌شود.

matlab-pde

به منظور حل معادلات دیفرانسیل یک محدوده مشخص (هندسه جسم) در نظر گرفته می‌شود که معادله در آن محدوده تعریف می‌شود. بنابراین نیاز است با تعریف هندسه شکل در این محیط آشنا شوید. برای ایجاد یک ناحیه دلخواه به دو حالت می‌توان اقدام کرد. حالت اول به وسیله نواحی آماده که در زیر منوهای این محیط وجود دارد قابل ترسیم است. در شکل زیر انواع این نواحی مانند مستطیل، مثلث، بیضی و دایره درون یک کادر نشان داده شده است.

matlab-pde

در حالت دوم می‌توانید با استفاده از نوشتن کد، نواحی مختلف ایجاد کنید که در این حالت محدوده نواحی دقیقتر است.

حل یک مثال PDE در MATLAB

کد زیر یک ناحیه چهارگوش به نام A ایجاد می‌کند که محدوده محور افقی بین 5/0- تا 5/0 و محور عمودی بین 6/0- تا 6/0 است.

pderect ([-0.5 0.5 -0.6 0.6],’A’)

کد زیر نیز یک ناحیه چهارگوش ایجاد می‌کند که محور افقی بین 2/0- تا 8/0 و محور عمودی بین 3/0- تا 4/0 است.

pderect([-0.2 0.8 -0.3 0.4],’B’)

کافی است برای تولید این نواحی کدهای مربوطه را در قسمت پنجره فرمان نرم افزار MATLAB نوشته و کلید اینتر را فشار دهید تا تصویر نواحی مربوطه نمایش داده شود. شکل زیر، تصویر نواحی ایجاد شده را نشان می‌دهد.

matlab-pde

برای تولید یک دایره باید از دستور pdecirc استفاده کنید و مراکز دایره و شعاع آن، به عنوان پارامتر توسط کاربر وارد شود. به طور مثال دستور زیر دایره‌ای به مرکز 2/0 و 3/0 به شعاع 6/0 و به نام C ایجاد می‌کند.

pdecirc([0.2 0.3 0.6],’C’)

برای ذخیره این مدل هندسی طراحی شده می‌توانید از منوی File بر روی قسمت Save as کلیک کنید تا کد دستوری مدل ایجاد شده به صورت فایل متنی با پسوند.m ذخیره شود.

همانطور که مشخص است دو ناحیه A و B ایجاد شده است که می‌توانید این نواحی را از هم کم کنید تا نواحی که بین A و B مشترک بوده است، حذف شود. جهت انجام این کار از قسمت Set Formula عبارت A-B را وارد کنید. سپس جهت هاشور خوردن قسمت‌هایی از ناحیه A که در مجموعه B وجود ندارد، از منوی Mesh مطابق شکل زیر بر روی قسمت Initialize Mesh کلیک کنید تا توسط مثلث‌های کوچک آبی رنگ که به صورت پیشفرض است ناحیه مورد نظر هاشور بخورد.

جهت کوچک کردن ابعاد مثلث‌ها می‌توانید از منوی Mesh  بر روی Refine Mesh کلیک کنید تا مطابق شکل مثلث‌های نواحی هاشورخورده کوچک‌تر شوند.

matlab-pde

و سپس

matlab-pde

جهت مشاهده کاربردهای این محیط مطابق شکل زیر از قسمت Options بر روی Application  کلیک کنید تا معادلات مختلفی که می‌توان با استفاده از این محیط به حل آنها پرداخت را مشاهده کنید.

matlab-pde

از کاربردهای این محیط می‌توان به مواری همچون مقیاس عمومی (Generic Scalar)، سیستم عمومی (Generic System)، ساختارهای مکانیکی- تنش صفحه ای  (Structural Mechanics, Plane Stress)، ساختارهای مکانیکی- کرنش صفحه ای (Structural Mechanics, Plane Strain)، الکترواستاتیک  (Electrostatics)، مغناطیس  (Magnetostatics)، انتقال حرارت (Heat Transfer)  و انتشار (Diffusion) اشاره کرد.

بنابراین با توجه نوع معادلات دیفرانسیل خود، ابتدا یکی از این موارد را انتخاب و سپس از منوی PDE بر روی PDE Specification کلیک کنید تا بتوانید پارامترهای معادله دیفراسیل خود را وارد کنید. یکی از معادلات معروف در حوزه مهندسی، معادله انتقال حرارت یک معادله سهموی است که به صورت رابطه (1) تعریف می‌شود. در این رابطه چگالی، ظرفیت گرمایی، ضریب انتقال حرارتی، ضریب همرفتی و دمای خارج بر حسب کلوین است.

 

حل یک مثال انتقال حرارت در MATLAB

به منظور درک بهتر نحوه حل معادله دیفرانسیل با مشتقات جزئی pde در این بخش می‌خواهیم میزان انتقال حرارت در جسم به طول 5 متر و قطر 3/0 متر را بررسی کنیم. همانطور که قبلاً گفتیم ابتدا می‌بایست از قسمت Options بر روی Application کلیک کرده و معادله خود را بر روی Heat Transfer انتخاب کنید. با توجه به اینکه جسم مورد نظر دارای ابعاد 5×0.3 است از قسمت Options  بر روی Axes Limits کلیک کرده و مطابق شکل زیر مقادیر مربوطه را وارد می‌کنیم.

با توجه به این که طول جسم 5 متر است بازه محور افقی x را از 3- تا 3 در نظر گرفتیم تا بتوان شکل جسم را در این بازه نشان داد. از آنجا که قطر نیز 3/0 است بازه محور عمودی y نیز بین 0 تا 1 انتخاب شد. سپس برای رسم شکل از قسمت Options ابتدا بر روی Snap کلیک کرده تا صفحه شبیه سازی شبکه بندی شود. سپس بر روی قسمت Grid کلیک کرده و یک مستطیل با توجه به ابعاد مورد نظر رسم می‌کنیم.

حل معادلات جزئی در متلب

شکل زیر جسم مورد بررسی را نشان می‌دهد که به صورت پیشفرض به اسم R1 ذخیره می‌شود.

matlab-pde

همانطور که میدانید هر معادله دارای یک سری شرایط اولیه و مرزی است که این شرایط در تعیین پاسخ خروجی نقش بسزایی دارند. به منظور تعیین شرایط مرزی ابتدا باید مرزهای جسم مشخص شود. از منوی Boundary  بر روی Boundary Mode کلیک کنید تا تصویری به صورت شکل زیر ظاهر شود.

حل معادله در متلب

شکل فوق با کلیک بر روی هر یک از گوشه‌ها می‌توانید شرایط اولیه خود را به دو روش نیومن (Neuman) و دریچلت (Dirichlet) وارد کنید. در این مثال فقط قسمت راست (یعنی انتهای جسم) که در شکل با فلش مشخص است به روش نیومن مقدار g برابر 5 انتخاب شده است.

مرحله بعد باید ناحیه در نظر گرفته شده برای جسم مش بندی شود و سپس مش ها با جزئیات و دقت بیشتری مشخص شود. شکل زیر دو روش مش بندی را نشان می‌دهد.

حل pde در متلب

برای تنظیم پارامترهای معادله دیفرانسیل از منوی PDE بر روی PDE Specification  کلیک کنید و پارامترهای معادله را با توجه به شرایط آزمایش تنظیم کنید. در انتها از منوی Solve بر روی Solve PDE کلیک میکنیم تا مطابق شکل زیر تصویر خروجی نشان داده شود.

حل معادلات با مشتقات جزئی

جهت درک بهتر می‌توانید از منوی Plot بر روی Parameters کلیک کنید و نوع ترسیم خود را انتخاب کنید تا با توجه به هدف خود، خروجی دلخواه تولید شود.

حل pde در matlab

مطالب مرتبط

دیدگاهتان را بنویسید

بخش های مورد نیاز علامت گذاری شده اند

نشانی ایمیل منتشر نخواهد شد

نویسنده : آدرس سایت : ایمیل :

تعداد 6 دیدگاه برای نوشته " حل معادلات دیفرانسیل با مشتقات جزئی در MATLAB" ارسال شده است .

    مژگان 17 دی 1400 در 2:25 ق.ظ
  1. دقیق و کامل
    مشکلم حل شد
    تشکر

  2. پاسخ
      مدیریت 17 دی 1400 در 2:33 ب.ظ
    • پایدار باشید

    • پاسخ
    سیمین 17 دی 1400 در 2:27 ق.ظ
  3. من تو matlab 2021 زدم اوکی بود
    مرسی

  4. پاسخ
      مدیریت 17 دی 1400 در 2:32 ب.ظ
    • بسیار عالی
      موفق باشید

    • پاسخ
    شمیم 17 دی 1400 در 2:28 ق.ظ
  5. مرسی
    هم pde بزارین هم ode

  6. پاسخ
      مدیریت 17 دی 1400 در 2:32 ب.ظ
    • باسلام
      در سایت موجود است هر دو
      سرچ بفرمایید

    • پاسخ

0

شبکه های اجتماعی

دانشنامه تخصصی مهندسی ایران را در شبکه های اجتماعی دنبال کنید

0 0

عضویت در خبرنامه

برای دریافت آخرین اخبار در زمینه مهندسی شامل نرم افزارها، استانداردها و آموزش ها به سامانه اطلاع رسانی ما بپیوندید.

بدون پرداخت هزینه، تا هر وقت بخواهید.

تست

همکاران ما

گروه مپنا
گروه مپنا
دانشگاه تهران
دانشگاه تهران
سایپا
سایپا
ایران خودرو
ایران خودرو
شرکت ملی نفت ایران
شرکت ملی نفت ایران
ذوب‌آهن اصفهان
ذوب‌آهن اصفهان
فولاد خوزستان
فولاد خوزستان
مشاوره

نیاز به مشاوره دارید؟

 
                    همکاران ما پاسخگو شما خواهند بود.