MATLAB 5,6

هنگام اجرای دستورات تکراری یا آزمایش کردن مقادیر مختلف تایپ دستورات در پنجره command دشوار است. برای اینکه بتوانیم در matlab نیز مانند سایر زبانهای برنامه نویسی برنامه ای نوشته و ویرایش کنیم از M-file ها استفاده می کنیم. با استفاده از این فایل ها می توان دستورات را در یک فایل ذخیره کرده و با باز کردن آن همانند آن که آنها را در خط فرمان تایپ کرده باشیم اجرا کنیم.

برای ایجاد M-file می توانیم از گزینه New M-file استفاده کنیم.( از منوی file)

حال پنجره ی جدیدی باز می شود که می توانیم برنامه ی مورد نظر خود را تایپ کرده و دستورات را به صورت پشت سرهم بنویسیم. برای اجرای M-file از کلید F5 استفاده می کنیم. در اولین اجرا باید با اختصاص نامی به فایل آن را بر روی پوشه ی جاری matlab ذخیره کنیم. اگر بخواهیم فایلی را که قبلا ذخیره کرده ایم اجرا کنیم، باید نام فایل را در پنجره command ( همراه با پسوند فایل که البته فایل باید در پوشه پیش فرض matlab قرار داشته باشد.) تایپ کرده و enter کنیم.

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

برای تایپ چند دستور در یک خط باید از , در بین آنها استفاده کنیم. مثلا با نوشتن clc و clear می توانیم علاوه بر پاک کردن صفحه تمام متغیرها را نیز پاک کنیم.

آرایه ها:

آرایه ها در matlab به سادگی ایجاد می شوند. ساده ترین و ابتدایی ترین روش تایپ تمام مقادیر بین دو []  می باشد:

>>a=[1,2,3,4]

a=

     1   2   3   4

اما برای تولید آرایه های بزرگتر استفاده از روش بالا بسیار وقت گیر است. matlab چند دستور برای تولید آرایه ها دارد:

linspace(a,b,c)

این دستور c نقطه با فواصل مساوی در بازه [a,b] را بر می گرداند.

** اگر عدد c در دستور linspace مشخص نشود، c به طور پیش فرض 100 در نظر گرفته می شود.

logspace(a,b,c)

این دستور نیز c نقطه با فواصل لگاریتمی در بازه 10 به توان b و 10 به توان a برمی گرداند.

a:b:c

مفهوم کلی این دستور را می توان به این صورت بیان کرد; از  a شروع کن b تا b تا برو جلو تا به c برسی. در این روش b که گام حرکت نام دارد می تواند منفی باشد.

با استفاده از دستورات فوق و توابع ریاضی می توان ماتریس های متنوعی تولید کرد. به مثال های زیر توجه کنید:

>>x=0:.5:2*pi;

>>y=sin(x)

y=

columns 1 through 10

    0   0.4794   0.8415   0.9975   0.9093   0.5985   0.1411   -0.3508   -0.7568   -9775  

columns 11 through 13

   -0.9589   -0.7055   -0.2794

>>z=tanh(x)

z=

  columns 1 through 10

         0   0.4621   0.7616   0.9051   0.9640   0.9866   0.9951  0.9982   0.9993   0.9998

columns 11 through 13

0.9999   1.0000   1.0000

آرایه ها در matlab تنها به آرایه های سطری محدود نمی شوند بلکه می توان آرایه های ستونی نیز معرفی کرد. برای اینکه به matlab بفهمانیم که قصد تولید سطر جدید را داریم از سمیکالن (;) استفاده می کنیم. مثال:

>>b=[1;3;5;7]

b=

   1

   3

   5

   7

>>b=linspace(1,7,4)'

b=

   1

   3

   5

   7

همان طور که در مثال بالا مشاهده کردید با استفاده از عملگر ترانهاده (') یک آرایه سطری را به آرایه ستونی تبدیل کردیم.

برای دسترسی به درایه ها از اندیس آن استفاده می شود. به عنوان مثال (3)b سومین درایه آرایه b ( یعنی 5) را برمی گرداند.

اگر بخواهیم درایه های خاصی از یک آرایه را انتخاب کنیم می توان با استفاده از دو نقطه به آنها دسترسی داشته باشیم. اگر طول آرایه مشخص نباشد می توان برای دسترسی به آخرین عنصر از end استفاده کرد.در مثال زیر از آخرین آرایه z سه تا سه تا به عقب باز میگردد تا به آرایه ی چهارم برسد.

>>z(end:-3:4)

ans=

   1.0000   0.9998   0.9951   0.9051

همچنین می توان با استفاده از یک آرایه به مقادیر یک آرایه دیگر با ترتیب مورد نظر خودمان استفاده کنیم.

>>c=[1,5,3,5,1];

>>z(c)

ans=

    0   0.9640   0.7616   0.9640   0

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

نکته دیگر که باید به آن توجه کرد این است که اندیس یک عدد صحیح مثبت است. اگر کاربر یک عدد غیر صحیح و یا منفی را به عنوان اندیس وارد کند matlab یک پیغام خطا برمی گرداند.

>>b(3.4)

??? Subscript indices must either be real positive integers or logical.

/ 0 نظر / 9 بازدید