آموزش نرم افزارهای مهندسی مکانیک و کنترل

آموزش های ارائه شده توسط محسن رضایی (دکتری مکانیک، مشاورصنعتی و طراح ماشین آلات، مکانیزم ها و سازهای مکانیکی)

برنامه نویسی و محاسباتپربازدیدنرم افزار متلب

آموزش ترسیم نمودارهای سه بعدی و سطوح در نرم افزار MATLAB

در این پست به آمورش ترسیم نمودارهای سه بعدی در نرم افزار MATLAB پرداخته میشود. قبل از مطالعه ی این پست پیشنهاد می شود که  پست 45 را که در آن آموزش ترسیم نمودارهای دو بعدی است مطالعه بفرمایید. بدلیل اینکه مشخصات مربوط به نمودارها و آپشن ها مشابه قبل است و فقط توضیحات پیرامون نمودارهای سه بعدی آورده خواهد شد. به عبارتی این پست به همراه پست 45 تکمیل کننده مطالب مربوط به تسیم نمودارها است. در پست پیشین ترسیم نمودارها به کمک دستور  plot با همه جزئیات و مشخصات و آپشن ها آورده شده بود و در این پست دو دستور plot3  , Surf  توضیح داده خواهد شد.جهت مشاهده ی این آموزش  و دانلود کد MATLAB نوشته شده به ادامه مطلب مراجعه نمایید.

آموزش ترسیم نمودارهای سه بعدی  و سطوح در نرم افزار MATLAB

mechanicsoft[dot]ir

 

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

1. ترسیم خطوط سه بعدی

خطوط سه بعدی در حالت کلی دارای معادله ی 0=(f(x,y,z  هستند که در حالت پارامتری بر حسب متغیر وابسته ی t هم نوشته میشودند.

x=x(t)
y=y(t)
z=z(t)

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

در این قسمت میخواهیم یک مثال از ترسیم این خطوط را به کمک نرم افزار MATLAB انجام دهیم.

مثال زیر را ترسیم کنید.

x=sin(t)
y=cos(t)
z=t

حل:

در ابتدا بردار مستقل t تعریف میشود. نحوه ی تعریف برداردها در این پست به طور کامل توضیح داده شده است.

t = 0:pi/50:10*pi;

پس از تعریف متغیر مستقل متغیرهای وابسته به صورت زیر تعریف میشوند.

x=sin(t);
y=cos(t);
z=t;

و در نهایت دستور ترسیم نوشته میشود.

plot3(x,y,z);

و همچنین آپشن های مربوط در نمودار که پیشتر توضیح داده شده است اضافه شده است.

xlabel(‘sin(t)’)
ylabel(‘cos(t)’)
zlabel(‘t’)
grid on
axis square

در عکس پایین صفحه فرم کلی دستور به همراه نمودار ترسم نشان داده شده است.

دانلود کد MATLAB نوشته شده

2. ترسیم سطوح

سطوح در حالت کلی دارای معادله ی (z=f(x,y  هستند. برای نشان دادن ترسیم سطوح نیز مثال زیر را در نرم افزار MATLAB بررسی میکنیم.

شکل حاصل از معادله ی    z=y^2-x^2  را در نرم افزار MATLAB ترسیم نمایید.

برای ترسیم این عبارت ابتدا باید دو بردار x و y تشکیل شود .

xx=-10:1:10;
yy=-10:1:10;

پس از تشکیل این دو عبارت باید هر نقطه ی x  با تمام نقاط y متناظر شود که از دستور زیر استفاده میشود.

[x,y]=meshgrid(xx,yy);

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

z=x.^2-y.^2;

سپس با کمک دستور surf صفحه ی مورد نظر را ترسیم کرد.

surf(x,y,z)

سایر تنظیمات دیگر هم در پست 45 توضیح داده شده است که بر خی از آنها در زیر آورده شده است.

xlabel(‘x’)
ylabel(‘y’)
zlabel(‘z=f(x,y)’)

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

دانلود کد MATLAB نوشته شده

%% 3-D Line Plot    Site: www.mechanicsoft.ir
clear
clc
close all
t = 0:pi/50:6*pi;
x=sin(t);
y=cos(t);
z=t;
subplot(1,2,1);plot3(x,y,z,’b’,’LineWidth’,2)
title(‘3-D Line’)
xlabel(‘sin(t)’)
ylabel(‘cos(t)’)
zlabel(‘t’)
grid on
box on
%% 3-D Shaded Surface Plot    Site:www.mechanicsoft.ir
xx=-10:1:10;
yy=-10:1:10;
[x,y]=meshgrid(xx,yy);
z=x.^2-y.^2;
subplot(1,2,2);surf(x,y,z)
title(‘3-D Shaded Surface’)
xlabel(‘x’)
ylabel(‘y’)
zlabel(‘z=f(x,y)’)
box on

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

محسن رضایی

دکتری مهندسی مکانیک گرایش دینامیک کنترل و ارتعاشات دانشگاه شیراز زمینه های تحقیقاتی: دینامیک، کنترل، ارتعاشات، دینامیک پرواز، دینامیک خودرو، آیروالاستیسته، بهینه سازی زمینه های کاری صنعتی: طراحی مکانیزم های خطوط تولید،طراحی جرثقیل ها،طراحی ماشین الات صنعتی،بررسی عیوب و بهینه سازی ماشین الات صنعتی نرم افزارهای مسلط: متلب-سیمولینک- سیم مکانیک-انسیس - انسیس ورکبنچ-آدامز-سالیدورکس-آباکوس تلفن تماس: 09369074440 ایمیل : mechanic.soft[at]yahoo.com , info[at]mechanicsoft.ir نوشته‌های تازه

One thought on “آموزش ترسیم نمودارهای سه بعدی و سطوح در نرم افزار MATLAB

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

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