تبليغاتX
انجمن علمي گروه برق دانشگاه چمران

نوشته های پیشین

تیر 1385 دی 1384 آذر 1384 آبان 1384 مهر 1384 شهریور 1384 مرداد 1384


پیوندها

گوگل


  RSS 

POWERED BY
 A. tahan zadeh

 

آموزش matlab (قسمت دوم) رسم توابع دوبعدي
 

اين قسمت به رسم نمودارها بوسيله   matlab اختصاص دارد .ولي قبل از آن بهتر است نگاهي به شيوه رسم نمودار بوسيله matlab داشته باشيم.

 

روال كار اين است كه ابتدا بايد نقاطي را به برنامه معرفي كنيم (مثلا نقاط روي محور x) سپس با تعريف تابع مورد نظر، مقادير متناظر با هر نقطه روي محورx   را بدست بياوريم(بدست آوردن y  متناسب با هر x ) حال نقاطي با مولفه هاي (x,y) داريم . برنامه matlab با وصل كردن اين نقاط نمودار تابع نمايش ميدهد .توجه داشته باشيد matlab از حساب برداري براي رسم توابع استفاده مي كند.براي معرفي تابع بايد از عملگرهاي برداري استفاده كرد(اين مطلب در مرحله دوم بررسي خواهد شد)

حال بياييد اين روال را مرحله به مرحله بررسي كنيم

 

1) مرحله اول معرفي اعداد روي محورx(متغير مستقل) به matlab است. براي اين منظور از دو شيوه زير مي توان استفاده كرد

 

الف)استفاده از دستور      linspace       

شكل كلي اين دستور به اين صورت است:

x=linspace(a,b,n)

دستورفوق بازه(a,b)  را به n قسمت مساوي تقسيم كرده و در x قرارمي دهد

مثال:

x=linspace(0,2*pi,100)      

اين دستور فاصله بين صفر و دوپي را به صد قسمت مساوي تقسيم مي كند.يعني صد نقطه با فواصل مساوي در فاصله بين صفر و دو پي ايجاد مي كند.

 

 ب) روش ديگر ايجاد نقاط روي محور دلخواه استفاده از اين روش است

                                                                                                  x=a:m:b

اجراي دستور فوق باعث مي شود تا matlab بازه (a,b) را به فواصلي با طولm تقسيم كند

مثال  

     x=0:0.1:2*pi                                                                                      

اجراي دستور فوق باعث مي شود تا matlab فاصله بين صفر و دو پي را به تكه هايي باطول 0.1 واحد تقسيم كند.

 

2) مرحله دوم:در اين مرحله بايد متغير وابسته(y) را بر حسب تابعي از متغير مستقل(x) تعريف كنيم.

 تذكر::در matlab عملگرهاي * و – و + و /  و ^  براي عمليات ماتريسي به كار ميروند.براي استفاده از آنها در محاسبات برداري بايد قبل از اين عملگرها از نقطه استفاده كنيم به اين صورت: .*   و .-  و  .+  و ./ و.^

مثلا  براي تعريف يك تابع درجه دو بايد به اين صورت عمل كنيم:   

                                                                                 y=3.*x.^2.+4.*x-7

  

البته بايد هنگام تعريف تابع به اولويت محاسبات هم توجه داشته باشيم.ترتيب انجام عمليات مانند ديگر زبانهاي برنامه نويسي است يعني اولويت به ترتيب با پرانتز، توان، ضرب وتقسيم و در آخر جمع و تفريق از چپ به راست مي باشد(در matlab علامت ^ بيانگر توان است .  مثلا a^b خوانده مي شود a  به توان b).

فراموش نكنيد كه براي تعريف تابع حتما از عملگرهاي برداري استفاده كنيد.

 

3) در اين مرجله بايد x,y هاي بدست آمده رابه هم متصل كنيم تا نمودار به دست آيد براي اين منظور از دستور plot استفاده مي كنيم. به اين صورت:

plot(x,y)

 اگر دستورات را درست وارد كرده باشيد در اين مرحله پنجره اي باز مي شود و نمودار مورد نظر را نشان مي دهد

 

نكته1)اگر بخواهيد نمودارچند تابع  را در يك صفحه نشان دهيد مي توانيد آنها را جداگانه تعريف كرده و بوسيله يك دستور plot همه را رسم كنيد مثال زير نمودار توابع sin و cos را در يك صفحه و در فاصله صفر تا دو پي رسم مي كند

x=linspace(0,2*pi,100)

y=sin(x)

z=cos(x)

plot(x,y,x,z)

 

نكته2)اگر بخواهيد نمودار شما با رنگ خاص يا شكل ديگري (مثلا نقطه چين) نمايش داده شود ،مي توانيد از سوييچ هاي زير به عنوان آرگومان اضافي دستور plot استفاده كنيد.

 

كد رنگ

رنگ

 

كد علامت

علامت

آبي

b

o

دايره

زرد

y

x

بصورت x

قرمز

r

+

بصورت+

سبز

g

*

بصورت*

سياه

b

:

نقطه چين

 

البته براي استفاده از سوييچ هاي فوق بايد انها را بين دو علامت '   '  قرار داد

مثال:

                                                        

plot(x,y,':y')

    

دستور فوق منجر به نمايش نمودار بصورت نقطه چين و با رنگ زرد خواهد شد.

 

نكته3)برخي دستورهاي جانبي در مورد رسم نمودار به شرح زير مي‌باشند

 

axis equal

ضرايب هردو محور را مساوي قرار می دهد

 

grid on

خطوط شبكه را نمايان ميسازد(خطوط شطرتجي به نمودار اضافه مي كند)

 

 

نكته4) رسم نمودارها در دستگاه قطبي مشابه دستگاه دكارتي است با اين تفاوت كه به جاي دستور plot ازدستور    polarاستفاده مي كنيم 

polar(theta,r)                                                                                

theta  بيان گر زاويه و r  بيان گر شعاع مي باشد

  مثال:

t=linspace( 0,2*pi,100)

r=sin(4*t)

polar(t,r)

 در پايان اين قسمت توجه شما را به چند مثال جلب مي كنم

 

رسم نمودار x3-4x+7x-2 در فاصله  [-10,10]

 

x=linspace(-10,10,100);

y=x.^3-4.*x+7.*x-2;

plot(x,y)

 

رسم نمودار  cos2x-4sinx در فاصله [0,2π]

به وسيله علامت + و با رنگ قرمز

x=linspace(0,2*pi,100);

y=cos(x).^2-4.*sin(x);

plot(x,y,'+r')

رسم نمودار سينوس و كسينوس در يك صفحه به دو شكل و دو رنگ مختلف در فاصله[0,2π]

x=linspace(0,2*pi,100);

y=sin(x);

z=cos(x);

plot(x,y,'or',x,z,':b')

 

رسم نمودار تابع  x2cos(ln(x)) در فاصله [2,10]

همراه با رسم خطوط شبكه

 

 

 

x=2:0.1:10;

y=x.^2.*cos(log(x));

plot(x,y);

grid on

 

رسم نمدار تابع r=cos 4θ  در بازه[0,2π]  در دستگاه مختصات قطبي

theta=linspace(0,2*pi,100);

r=cos(4*theta);

polar(theta,r)

 

 

 

                  موفق باشيد


 
2 نوشته شده در  سه شنبه بیست و پنجم مرداد 1384ساعت 13:11  توسط علی بستان پيرا  |