info@matlabiran.ir

خانه » کتاب آموزشی » آموزش متلب – بخش 4

آموزش متلب – بخش 4

متلب ایران

متلب ایران

در این مجموعه به آموزش متلب از طریق متن نوشتاری می پردازیم. بدیهی است برای فهم توضیحات ارائه شده، اجرا کردن خط به خط دستورات در متلب می تواند بسیار کمک کننده باشد. لذا از دانشجویان عزیز خواهش می کنیم برای بالا بردن مهارت خود در استفاده از متلب؛ پا به پای این آموزش تمرینات خود را انجام دهند.

[divider]

آموزش متلب – بخش 4

توليد چندضلعی

>> t=0:pi/5:2*pi;

>> figure

>> patch(sin(t),cos(t),’y’)

>> axis equal

چند ضلعی

چند ضلعی

تمرين: دستورات زير را اجرا کرده و نتيجه را بررسی کنيد.

;[xt=[0 1 0.5 <<

>> yt=[0 0 1];

>> zt=[0 0 1];

>> patch(xt,yt,zt,’y’)

>> patch(xt,yt,zt,’y’)

>> view(3)

>> box

2

نکته: fillm و fill3m را با patch مقايسه کنيد.

 XDir ٬ XTick ٬ XTicklabel  :کنترل محورهای رسم

>> y=[0 3 1 6 5 9];

>> area(y)

>> str=’Jan|Feb|Mar|April|May|June’;

>> set(gca,’XTicklabel’,str)

 3

 

>> plot(1:4)

>> set(gca,’XTick’,1:0.2:4,’XTicklabel’,’1|||||2|||||3|||||4′)

4

>> plot(1:4)

>> set(gca,’XTick’,1:0.2:4)

5

:یک مثال دیگر

>> x=linspace(0,pi,99);

>> plot(x,sin(x))

>> xt=0:pi/6:pi;

>> set(gca,’XTick’,xt)

>> axis tight

>> tikstr={‘0′,’pi/6′,’pi/3′,’pi/2′,’2pi/3′,’5pi/6′,’pi’};

>> set(gca,’XTicklabel’,tikstr)

6

دستور رسم در هر دو طرف محور x ها: 

  : plotty دستور

>> x=0:0.01:20;

>> y1=200*exp(-0.05*x).*sin(x);

>> y2=0.8*exp(-0.5*x).*sin(10*x);

>> [A,H1,H2]=plotyy(x,y1,x,y2,’plot’)

A =  173.0067  175.0068

H1 =  174.0083

H2 =  176.0073

>> set(get(A(1),’ylabel’),’string’,’slow Decay’)

>> set(get(A(2),’ylabel’),’string’,’fast Decay’)

>> xlabel(‘Time(\musec)’)

>> title(‘Multipe Decay Rates’)

>> set(H1,’linestyle’,’–‘)

>> set(H2,’linestyle’,’:’)

7

تمرين: می خواهيم يکبار ديگر max و min را بيابيم اما روی نمودار.

>> x=0:pi/100:2*pi;

>> y=sin(x);

>> plot(x,y)

>> ymin=find(max(y)==y)                ymin =    51

>> ymin=find(max(y)==y)                ymin =    51

X(ymin)                      ans =    1.5708

Y(ymin)                      ans =     1

8

 مثال: 

>> x=0:pi/100:2*pi;

>> y=sin(x);

>> plot(x,y)

>> ymin=find(max(y)==y)

9

 مثال: 

>> t=0:900; A=1000; a=0.005; b=0.005;

>> z1=A*exp(-a*t);

>> z2=sin(b*t);

>> [haxes,hline1,hline2]=plotyy(t,z1,t,z2,’semilogy’,’plot’);

>> ylabel(‘semilogy plot’)

>> set(hline2,’linestyle’,’–‘)

10

تمرين: می خواهيم خطا را روی نموداری آماری نشان دهيم٬ نمودار دمای هوا- آلودگی هوا- ذرات معلق

>> temp=[29 23 27 25 20 23 23 27];

>> days=0:5:35;

>>colormap summer

>> bar(days,temp)

>> xlabel(‘Day’)

>> ylabel(‘Temprature (^{0}c)’)

>> set(gca,’ylim’,[15 30],’layer’,’top’)

11

 به عنوان مثال اگر وجود ذرات غبار موجود در هوا برای دماهای مختلف (TCE) باشد. داريم:

>> TCE=[515 420 370 250 135 120 60 20]; >> h2=axes(‘posion’,get(gca,’posion’)) h2 =  179.0089

>> plot(days,TCE,’linewidth’,3)

>> set(h2,’YAxislocaon’,’right’,’color’,’none’,’XTicklabel’,[])

>>set(h2, ‘xlim’,get(h2,’xlim’), ‘layer’,’top’)

>>text(11,380,’concentraon’,’Rotaon’,-55,’Fontsize’,16)

>>ylabel(‘TCE concentration (ppm)’)

>>tle(‘Bioremediaon’,’Fontsize’,16)

>>set(gcf,’PaperPositionMode’,’auto’)

12

رسم گراف ها: biograph

            1   2   3

1          0   1   0

2          0   0   1

3          0   0   0

>> cm=[0 1 0;0 0 1;0 0 0]

cm =

     0     1     0

     0     0     1

     0     0     0

>> t=biograph(cm)

1314

Biograph object with 3 nodes and 2 edges.

>> t.view                →                  گراف را نشان می دهد

 تعداد حلقه ها را در صورت وجود نشان می دهد.              →                    (isdag(t

مثال: در اين مثال چون دو تابع داريم نمودار را در figure  نمايش می دهيم.

>> x=[-2*pi:pi/100:2*pi];

>> y1=tan(x);

>> y2=1./(1+cos(x));

>> plot(x,y1,x,y2)

15

>> figure

>> ezplot(‘tan(x)’)

>> figure

>> ezplot(‘sin(x)/(1-cos(x))’)               →              برای رسم راحت تر منحنی هایی که مجانب دارند به کار می رود  

16

17

دستور axis (محور): تعيين دامنه و برد

axis([xmin   xmax   ymin   ymax])

>> ezplot(‘sin(x)/(1-cos(x))’)

>> axis([-6 0 -6 0])

18

 

دستور x : axis equal و y را برابر هم قرار می دهد.

19

دستور ezplot:

مثال: (سهمی) x2+y2=4

>> ezplot(‘x^2+y^2=4’)

>> axis equal

20

مثال: (هذلولی) 1=x2-y2

>> ezplot(‘x^2-y^2=1’)

>> axis equal

21

پاسخ دهید

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