totop

رسم پلات سه بعدی در متلبسه‌شنبه 25, آگوست 2020

انجام پروژه متلب

رسم پلات سه بعدی در متلب

در ادامه آموزش های سایت همیارپروژه برنامه نویسی متلب ارائه خواهد شد .آموزشها از مقدماتی تا پیشرفته ادامه دارد و ما به شما کدنویسی در نرم افزار متلب را یاد خواهیم داد. با ما همراه باشید.

انجام پروژه متلب

تابع  surf در متلب

نحوهی استفاده از تابع surf را در پلات سه بعدی با رسم سطح در متلب نمایش می دهیم.

معادله ی زیر را در متلب در نظر بگیرید:

همیارپروژه

در بازه ی

متلب همیارپروژه

برنامه ی مورد نیاز جهت رسم این سطح به صورت زیر می باشد:

متلب همیارپروژه

تابع meshgrid دو ماتریس (۱۷*۱۵) ایجاد خواهد نمود.بنابراین z  می تواند در تمامی تر کیب های x1 و x2 در متلب محاسبه شود. این محاسبات با استفاده از تمامی ترکیب های x1 و x2 توسط عملگرهای نقطه ای نشان داده شده , در عبارت زیر صورت می پذیرد.

متلب

با اجرا نمودن این برنامه شکل زیر را مشاهده می نمایید.

متلب

جهت دیدن تصویر چند کانتور از این سطح که روی صفحه z=0 تصویر شده است. به جای استفاده از تابع surf , از تابع surfc استفاده خواهیم کرد. نتیجه در شکل زیر نشان داده می شود. آرگومانهای تابع Surfc همانند آرگومانهای تابع Surf خواهند بود.

متلب

جهت ترسیم خطوطی از چهار گوشه ی سطح به صفحه ی Z=0 , ابتدا یاد آوری می کنیم که مختصات این نقاط به صورت:

همیارپروژه متلب

می باشد. برنامه به صورت زیر خواهد بود.

متلب

همیارپروژه

نتیجه ی اجرای این برنامه شکل زیر می باشد.

متلب همیارپروژه

همانگونه که قبلا ذکر شد, رنگ قطعات مختلف ایجاد شدهاست. رنگ توسط دستور surf به صورت خودکار با مقادیر z آنها ایجاد خواهد شد.

به طور مشابه , رنگ خطوط ایجاد شده. توسط دستور mesh نیز وابسته به مقادیر z خواهد بود. رنگ قطعات و یا خطوط را می توان توسط استفاده از تابع

متلب همیارپروژه

به یک رنگ مشخص تغییر داد. که در آن C , برداری سه عنصره که مقادیرش بین ۰ و ۱ تغییر می کند, می باشد. عنصر اول متناظر با شدت رنگ قرمزاست.

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

کد نویسی متلب

جهت نشان دادن تمایز بین توابع surf و mesh و روشن کردن چگونگی استفاده از تابع colormap , به جای استفاده از تابع surf در برنامه ی قبل از دستورات :

انجام پروژه متلب

استفاده خواهیم کرد. در این صورت شکل زیر را خواهیم داشت که در آن تمامی خطوط و سطوح رنگ ابی می باشد

تابعGrid off:

خطوط شبکه را در این شکلها حذف خواهد کرد. جهت نمایش مجدد این خطوط می توان از تابع

Grid on

استفاده نمود. به علاوه می توانیم با استفاده از تابع

Box on

یک مستطیل دور شکل ایجاد کنیم. بنابراین شکل بالا را توسط حذف خطوط شبکه .قرار دادن مستطیلی دور آن, اصلاح خواهیم نمود. برنامه مطابق زیر خواهد بود:

متلب

اجرای این برنامه در متلب شکل زیر را نتیجه می دهد.

متلب

از سوی دیگر اگر خطوط شبکه را با استفاده از تابع grid off و مستطیل دور شکل و محورها را به ترتیب توسط دستورات:

Box off

و

Axis off

در متلب حذف خواهیم کرد شکل زیر به دست می آید.

متلب

با استفاده از کد نویسی دیگری در متلب به صورت زیر خواهیم داشت:

متلب

با استفاده از کد فوق تصویر زیر را خواهیم داشت:

متلب

در برنامه ی فوق اگر کد meshz را با دستور waterfall در متلب اجا به جا نماییم شکل زیر  به دست می آید.

پلات سه بعدی متلب

 

آرگومان های تابع waterfall مشابه آرگومانهای تابع meshz خواهند بود. همچنین سطوح را می توان با استفاده از تابع Contour استفاده نمود.

برای ترسیم کانتورهای دو بعدی و تابع

Contour3

برای ترسیم کانتورهای سه بعدی و تابع

Contourf

برای ترسیم های کانتور های هاشور خورده, ایجاد نمود. توابع contour و contour3 را می توان توسط دستورClabel نشانه گذاری نمود.

تابع contourf توسط دستور colorbar نشانه گذاری می شود.  ستونی متشکل از رنگها و مقادیر عددی متناظرشان. را در نزدیکی شکل قرار می دهد. اکنون کاربرد این توابع را نشان خواهیم داد.

جهت بدست آوردن کانتورهای دو بعدی سطوح نشان داده شده برنامه ی زیر را خواهیم داشت:

متلب

اجرای این برنامه منجر به شکل زیر می شود.

کانتور متلب همیارپروژه

استفاده از عبارت

کانتور متلب

در هنگام استفاده از تابع clabel ضروری می باشد. اگر از تابع clabel در متلب استفاده نشود- یعنی خطوط کانتور بدون مقادیر عددیشان نمایش داده شوند- در این صورت تنها عبارت

متلب

استفاده می شود. اگر تابع contour را با تابع contour3 جایگزین کنیم, شکل زیر را خواهیم داشت. آرگومانهای تابع contour و contour3 یکسان می باشند.

متلب همیارپروژه

 

در اینجا آشنایی با محیط متلب بخش هشتاد و دوم به پایان رسیده است و در آموزش های بعدی به مباحث دیگر آموزش متلب می پردازیم. همچنین از شما مخاطبین عزیز سایت همیارپروژه دعوت می کنم که برای انجام پروژه متلب خود آموزش های ما را دنبال نمایید.

 

نویسنده: زهرا رستمی


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

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

حق نشر برای همیارپروژه ❤️ مرجع انجام پروژه دورکاری و آنلاین ✔️ سایت انجام پروژه و استخدام فریلنسر در همه حوزه ها ، مهارت ها ، نرم افزارها و پروژه های برنامه نویسی محفوظ است.