You are on page 1of 22

‫معرفی مقدماتی نرم افزار‬

‫‪MATLAB‬‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬ ‫‪1‬‬


‫سرفصل مطالب‬

‫• محیط نرم افزار‬

‫• متغیرها‪ ،‬عملیات ها‪ ،‬توابع مورد نیاز‬

‫• ترسیم دیاگرام‬

‫• برنامه نویسی‬

‫• حل معادالت و برازش منحنی‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪2‬‬
‫مقدمه‬

‫• روش کار و یادگیری یک نرم افزار بر اساس انجام تمرین ها و یادگیری در قالب حل مثال است‬

‫• مطلب از این جهت مناسب است که بر مبنای انجام عملیات ماتریسی نوشته شده است‪.‬‬

‫• مطلب یک زبان قابلیت باال برای محاسبات تکنیکی بوده که امکان برنامه نویسی‪ ،‬تصویرسازی و محاسبات را‬

‫به صورت یکجا فراهم کرده است‬

‫• ‪MATLB = Matrix + Labratory‬‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪3‬‬
‫هر متغیری که تعریف کنید در این قسمت نمایش داده می شود‬
‫روی هر متغیر‪ ،‬دابل کلیک کنید‪ ،‬مقدار آن نمایش داده می شود‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪4‬‬
‫• هرمتغیری در مطلب تعریف کنید‪ ،‬در حافظه آن باقی می ماند‪ ،‬مگر آنکه آن را با یک دستور پاک کنید‬

‫• این مطلب در کد نویسی اهمیت زیادی دارد‪ ،‬اگر یک متغیر را در خطوط قبل تعریف کرده اید و مقداردهی نموده‬

‫اید‪ ،‬در خطوط بعد‪ ،‬نباید دوباره تعریف و مقدار دهی شود (مگر آنکه آگاهانه باشد)‬

‫• دستور ‪ :clear all‬تمامی متغیرهای تعریف شده را پاک میکند‪.‬‬

‫• دستور ‪ clear name‬متغیر با نام ‪ name‬را پاک میکند‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪5‬‬
‫انواع متغیرها در مطلب‬

‫• متغیر عددی (‪ :)Numeric‬این نوع متغیر متداول ترین می باشد و معموالً کدهای نوشته شده متغیرهای عددی‬

‫تعریف می کنند‪ .‬مطلب نیز در انجام محاسبات این نوع قوی است‬

‫• متغیرهای پارامتری‪ :‬مطلب امکان تعریف متغیرهای سمبولیک را داشته و می تواند به صورت پارامتری رابطه‬

‫را برای آن تعریف کرد‪ ،‬ولی خیلی قوی نیست‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪6‬‬
‫تعریف متغیر عددی‬

‫• به راحتی هر نامی که برای متغیر میخواهید را تایپ کنید و مساوی مقدار مورد نظر قرار دهید‪.‬‬

‫‪ ‬اسم متغیر باید با حروف شروع شود‬

‫‪ ‬مطلب به بزرگ و کوچک بودن حروف حساس است‬

‫‪ ‬کاراکتر «_» می توان در اسم متغیر به کار برد ولی «‪( »-‬عالمت منفی) نمی توان به کار برد‬

‫‪ ‬نباید از ‪31‬حرف بیشتر باشد‬

‫‪ ‬نباید از کلمات پیش فرض ذخیره شده در مطلب باشد (مثال‪ pi‬در مطلب ذخیره شده وبرای عدد پی استفاده می‬

‫شود)‬ ‫‪7‬‬
‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬
‫• نام های ذخیره شده \یش فرض‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪8‬‬
‫تعریف ماتریس‬

‫• ماتریس هم با یک نام به صورت متغیر تعریف می شود‪ .‬برای ماتریس (چه دوبعدی چه یک بعدی (ستونی‪،‬‬

‫سطری))‪ ،‬از عالمت [] استفاده میکنیم‪.‬‬

‫• با گذاشتن فاصله یا ‪ ،‬بین عدد ها‪ ،‬ستون تعریف می شود‪ ،‬با گذاشتن ; سطر بعدی تعریف می شود‬

‫• مثال ماتریس ‪ Q‬با ابعاد ‪ 3x3‬تعریف میکنیم‪.‬‬

‫• برای بازخوانی مولفه های ماتریس‪ Q(i,j) ،‬را استفاده کنید‪ i( .‬و ‪ j‬شماره سطر و ستون مورد نظر)‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪9‬‬
‫عملیات های جبری و ماتریسی‬

‫• عملیات جبری‬

‫‪ ‬تمامی عملیات های جبری‪ ،‬مانند یک ماشین حساب متداول در خط فرمان مطلب قابل پیاده سازی است‪ .‬برای‬

‫توان‪ ،‬از عالمت ^ استفاده کنید‪.‬‬

‫‪ ‬عملیات ماتریسی‬

‫‪ ‬ضرب ماتریسی ‪ :‬باید دو ماتریسی که در هم ضرب می شوند‪ ،‬از نظر ابعادی قوانین مربوط به ضرب‬

‫ماتریس ها را ارضا کنند‪ ،‬وگرنه خطا می دهد‪ .‬عالمت ضرب معمولی دو ماتریس را در هم ضرب می کند‪.‬‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪10‬‬
‫عملیات های جبری و ماتریسی‬

‫‪Z = 1:10 ‬‬ ‫‪Q.^2 ‬‬

‫‪Z = 1 : 0.5 : 10 ‬‬ ‫‪Q./A ‬‬

‫‪][ = Q(:,2) ‬‬ ‫‪Q.*B ‬‬

‫‪][ = Q(1,: ) ‬‬ ‫‪Q(2:3,1:2) ‬‬

‫‪C = [A,B] ‬‬ ‫‪Q(:,3) ‬‬

‫‪C = [A ; B] ‬‬ ‫‪Q(2,:) ‬‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪11‬‬
‫دستورات متداول و مفید‬

’Q •
r = ones(i,j) • r = ones(i,j) •
u = inv(Q) •
s = zeros(i,j) • s = zeros(i,j) •
g = pinv(d) •
g = diag([4 5 6]) • r = rand(i,j) •
d = det(Q) •

eig(Q) = ]w,r[ • k = size(Q) •


g = diag([4 5 6]) •
qr(Q) = ]Q,R[ • f = sum(Q) •
k = size(Q) •
svd(Q) = ]U,V,D[ •
ff = sum(Q(1:4,2) •
f = sum(Q) •

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


12
‫ذخیره سازی و فراخوانی داده در یا از فایل‬

save(‘myfile’,’VAR1’,’var2’) •

load ('filename') •
p = input('p must be integer') :‫• ورودی گرفتن از کاربر‬
load filename.ext •
fprintf(‘suma = %i\n’,suma) : ‫• چاپ متغیر در صفحه‬ load filename -mat •

excel: xlsread(‘filename’) ‫• خواندن فایل‬

excel: xlswrite(‘filename’) ‫• بارگزاری فایل به‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


13
‫ترسیم نمودار در مطلب‬

‫)‪• plot(x,y‬‬

‫)‪• plot(x‬‬

‫)’*’‪• plot(x,y,‬‬

‫)’‪• plot(x,y,’*r‬‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪14‬‬
‫برنامه نویسی در مطلب‬

‫• توصیفات‬

‫• حلقه های شرطی و تکراری‬

‫• تعریف ‪m-file‬‬

‫• تعریف تابع‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪15‬‬
‫برنامه نویسی در مطلب‬
‫• توصیفات نسبی‬

‫• توصیفات منطقی‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪16‬‬
‫• توابع منطقی‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪17‬‬
‫حلقه شرطی‬

a = input(‘valor1? ‘);
b = input(‘valor2? ‘);
if a == b,
fprintf(‘a is equal to b\n’);
elseif a > 0 && b > 0
fprintf(‘both positive\n’);
else
fprintf(‘other case\n’);
end

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


18
‫حلقه های تکراری‬

M = rand(10,10); suma = 0;
M = rand(4,4); suma = 0;
for i = {2,5:8} % files 2, 5, 6, 7 i 8
for i = 1:4
for j = {1:5,8:9} % rows 1, 2, 3, 4, 5, 8, 9
for j = 1:4
suma = suma + M(i,j);
suma = suma + M(i,j);
end
end
end
end
fprintf(‘sum = %d\n’,suma);
fprintf(‘sum = %d\n’,suma);

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


19
‫حلقه های تکراری‬

M = rand(4,4);
i = 1; j = 1; suma = 0;
while i <= 4
while j <= 4
suma = suma + M(i,j);
j = j+1;
end
i = i+1;
end
fprintf(‘suma = %f\n’,suma);

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


20
M - File

.‫ می باشد‬m. ‫• یک فایل متنی با پسوند‬

!‫ ممکن است یک تابع باشند‬m. ‫• فایل های با پسوند‬


x = [4 3 2 10 -1];
n = length(x);
suma1 = 0; suma2 = 0;
for i=1:n
suma1 = suma1 + x(i);
suma2 = suma2 + x(i)*x(i);
end
promig = suma1/n;
desvia = sqrt(suma2/n – promig*promig);

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


21
‫تعریف تابع‬

‫شـیـرـیـن‬ ‫بـسـتـاـنـ‬ ‫مـهـدـیـ‬


‫‪22‬‬

You might also like