کانال تخصصی متلب – Telegram
کانال تخصصی متلب
7.13K subscribers
247 photos
112 videos
1.03K files
162 links
👈 فایل‌های آموزشی متلب در حوزه:
مخابرات،کنترل،پردازش سیگنال،عمران،هوافضا، ریاضی،فیزیک

کانال۷۵۰۰ نفره متلب:
@Matlab_Communication

گروه ۶۵۰۰ نفره متلب:
t.me/joinchat/EHEbrEA6SZ1bAjLdUj7bwA

ادمین‌:
@add_and_removal
تاسیس۹۵/۱۱/۱۱
Download Telegram
انواع عملگرها در نرم افزار MATLAB:

⬅️ عملگرهای آرایه ای: اين عملگرها بر روي آرايه هاي مورد عمل به صورت عنصر به عنصر عمل مي كنند.

در مقابل عملگرهاي ماتريسي قرار دارند. جمع و تفريق آرايه اي و ماتريسي يكسان هستند. ماتريس ها يا بردارهائي كه در عمل آرايه اي مشاركت دارند بايد همسان باشند.

جمع: +
تفریق: -
توان: ^.
ضرب: *.
تقسیم معمولی: /.
تقسیم راست به چپ: \.

مثال:
a=[1 2 3]
b=[2 4 6];
⬇️
a+b
ans =
3 6 9
—-------------------------------------

a-b
⬇️
ans =
-1 -2 -3
—-------------------------------------

a.*b
⬇️
ans =
2 8 18
—-------------------------------------

a.^b
⬇️
ans =
1 16 729
—-------------------------------------

a./b
⬇️
ans =
0.5000 0.5000 0.5000
—-------------------------------------

a.\b
⬇️
ans =
2 2 2
—-------------------------------------

⬅️ عمگرهای ماتریسی: علائم ضرب، تقسيم، و توان، بدون نقطه در سمت چپ، عملگرهاي ماتريسي هستند و به صورت عنصر به عنصر عمل نمي كنند.

توان: ^
ضرب: *
تقسیم معمولی: /
تقسیم راست به چپ: \

مثال:
a=[1 2;3 4];
b=[3 5; 1 2];
⬇️
a^2
ans =
7 10
15 22
—-------------------------------------

a*b
⬇️
ans =
5 9
13 23
—-------------------------------------

a/b
⬇️
ans =
0 1.0000
2.0000 -3.0000
—-------------------------------------

a\b
⬇️
ans =
-5.0000 -8.0000
4.0000 6.5000
—-------------------------------------
توابع پرکاربرد نرم افزار MATLAB:

نرم افزار MATLAB دارای توابع داخلی فراوانی است که نیازهای کاربران را برآورده می کند. بعضی از این توابع در ادامه آمده است:

⬅️ عنصر ماکزیمم: ()max

⬅️ عنصر مینیمم: ()min

⬅️ مینگین عناصر: ()mean

⬅️ فراوانی عناصر: ()hist

⬅️ محاسبه واریانس: ()std

⬅️ مرتب سازی عناصر: ()sort

⬅️ مجموع عناصر: ()sum

⬅️ قسمت حقیقی عدد مختلط: ()real

⬅️ قسمت موهومی عدد مختلط: ()imag

⬅️ مزدوج عدد مختلط: ()conj

⬅️ زاویه عدد مختلط: ()angle

⬅️ قدر مطلق (اندازه): ()abs

⬅️ نوشتن یک عدد مختلط: z=a+jb (که j باید به b چسبیده باشد) یا به صورت z=a+j*b و نیز (z=mag*exp(j*angl که (mag=abs(z و (angl=angle(z

⬅️ ریشه دوم: ()sqrt

⬅️ تابع نمایی اکسپونانسیل: ()exp

⬅️ لگاریتم طبیعی: ()log

⬅️ لگاریتم برمبنای 10: ()log10

⬅️ توابع مثلثاتی: ()sin(), cos(), tan(), cot

⬅️ توابع معکوس مثلثاتی: ()asin(), acos(), atan(), acot

⬅️ گرد کننده به نزدیکترین عدد صحیح به x (روند کردن عمومی): (round(x

⬅️ گرد كننده به نزديكترين عدد صحيح به x در جهت صفر: (fix(x

⬅️ گرد كننده به نزديكترين عدد صحيح به x در جهت ∞+: (ceil(x

⬅️ گرد كننده به نزديكترين عدد صحيح به x در جهت ∞-: (floor(x

⬅️ باقی مانده تقسیم x بر y (ترتیب x , y مهم است): (rem(x,y

⬅️ تولید ماتریس m×n تماما صفر: (zeros(m,n

⬅️ تولید ماتریس m×n تماما یک: (ones(m,n

⬅️ تولید اعداد تصادفی مابین صفر و یک: (rand(m,n یک ماتریس تصادفی با ابعاد m×n تولید
میکند.

⬅️ تولید اعداد تصادفی با میانگین صفر و واریانس یک: (randn(m,n

⬅️ تولید یک آرایه با تکرار آرایه دیگر: (repmat(a,m,n، آرایه a را با m بار افقی و n بار عمودی تکرار
می کند.

⬅️ محاسبه دترمینان ماتریس: ()det (ماتریس باید مربعی باشد)

⬅️ محاسبه معکوس ماتریس: ()inv (ماتریس باید مربعی باشد)

—----------------------------------------------
عملگرهاي منطقي در نرم افزار MATLAB

روابط منطقي را مي توان با استفاده از عملگرهاي منطقي با هم تركيب كرد. اين عملگرها عبارتند از:

1- و (تركيب عطفي) &
2- يا (تركيب فصلي) |
3- يا (مانع جمع) xor
4- نقيض ~
—---------------------------------------

مثال هايي از طرز عمل اين عملگرها در زير آورده شده اند:
m=[1 2 4; -2 3 -1];
~(m>0)
⬇️
ans =
0 0 0
1 0 1
—---------------------------------------
(m>0)|(m<=2)
⬇️
ans =
1 1 1
1 1 1
—---------------------------------------
(m>0)&(m<=2)
⬇️
ans =
1 1 0
0 0 0
—---------------------------------------
xor([0 0 1 1],[0 1 0 1])
⬇️
ans =
0 1 1 0
—---------------------------------------
عمليات و توابع منطقي

مقايسه منطقي

در نرم افزار MATLAB علامتهاي زير براي مقايسه مقادير عددي و حرفي بكار مي روند.
—---------------------------------------
كوچكتر از >
كوچكتر از يا مساوي با =>
بزرگتر از <
بزرگتر از يا مساوي با =<
مساوي با ==
مخالف با =~
—---------------------------------------
چنين مقايسه اي را مي توان بين دو اسكالر، دو آرايه يا اسكالر و اعضاي آرايه انجام داد. مثال هايي براي نحوه عمل اين عملگرها در زير آورده مي شوند. توجه كنيد كه حاصل همه عمليات منطقي مي تواند ٠ به معني نادرست يا ١ به معني درست باشد:
3<5
⬇️
ans =
1
—---------------------------------------
[1 2]>=[0 3]
⬇️
ans =
1 0
—---------------------------------------
a=[1 2 3
2 3 4];
b=[-1 2 1
0 2 4];
a~=b
⬇️
ans =
1 0 1
1 1 0
—---------------------------------------

حال بردار زير را در نظر بگيريد:
x=[1 2 -1 0 -5 4 -1.5 3 2.5 -.5];

عبارت زير مولفه هاي مثبت اين بردار را نمايش مي دهد:
x(x>0)
⬇️
ans =
1.0000 2.0000 4.0000 3.0000 2.5000
—---------------------------------------


و اين عبارت تعداد مولفه هايي را كه بين صفر و ٣ هستند تعيين مي كند:
length(x((x>=0)&(x<=3)))
⬇️
ans =
5
—---------------------------------------
اعداد ويژه در نرم افزار MATLAB

علاوه بر اعداد حقيقي MATLAB قادر است حاصل عباراتي را كه از نظر جبري انجام پذير نيستند را نيز پوشش دهد.
تقسيم يك عدد بر صفر بي نهايت (inf) و تقسيم صفر بر صفر غير قابل محاسبه است (Not a Number يا NaN)

x=[1 2 0]./[2 0 0]
⬇️
Warning: Divide by zero.
x =
0.5000 Inf NaN
—---------------------------------------

همچنين اعداد موهومي را به سادگي اعداد حقيقي مي توانيد در محاسبات استفاده كنيد.
y=sqrt(-1)
⬇️
y =
0 + 1.0000i
—---------------------------------------

توابع isreal , isnan ، isinf ، finite به شما امكان مي دهد كه اين اعداد را شناسايي كنيد:
finite(x)
⬇️
ans =
1 0 0
—---------------------------------------
isinf(x)
⬇️
ans =
0 1 0
—---------------------------------------
isnan(x)
⬇️
ans =
0 0 1
—---------------------------------------
isreal(x)
⬇️
ans =
1
—---------------------------------------
isreal(y)
⬇️
ans =
0
—---------------------------------------
ترسيم داده ها در نرم افزار MATLAB (قسمت اول)
—---------------------------—
ترسیم نمودارهاي ٢ بعدي:

مجموعه دستورات زير نحوه ترسيم يك تابع بر حسب يك متغير مستقل را نشان مي دهد:
—---------------------------—
x=linspace(0,2); y=x.*exp(-x);
plot(x,y)
grid
xlabel('x')
ylabel('y')
noscript('y=x.e^{-x}')
text(1,.2,'centre')
—---------------------------—

هفت خط فوق به ترتيب اعمال زير را انجام مي دهند:

1- بردار متغيرهاي مستقل x و تابع y را ایجاد می کند.
2- مقدار y را برحسب متغیر x رسم می نماید.
3- شبكه را به نمودار مي افزايد.
4- توضيح محور افقي را مي نويسد.
5- توضيح محور عمودي را مي نويسد.
6- تيتر نمودار را در بالاي آن مي نويسد.
7- در نقطه مورد نظر (در این مثال نقطه (1,0.2)) متغیر حرفی مشخص شده را می نویسد.

—---------------------------—
ترسيم داده ها در نرم افزار MATLAB (قسمت دوم)
—------------------------------
ترسیم نمودارهاي ٢ بعدي:

در هنگام رسم نمودارها مي توانيد از علامتهاي مختلف (بجاي خط) براي رسم توابع استفاده كنيد. همچنين مي توانيد بيش از يك تابع را در يك نمودار نمايش دهيد.

plot(x,y,'.',x,x.*sin(x),'-.')
—------------------------------

و در صورت لزوم نام توابع را نيز در همان نمودار نشان دهيد.

legend('x.e^{-x}','x.sin x')
—------------------------------
ترسيم داده ها در نرم افزار MATLAB (قسمت سوم)
—------------------------------
ترسیم نمودارهاي ٢ بعدي:

در نرم افزار MATLAB می توان چندین نمودار را در یک پنجره گرافیکی رسم کرد. معمولاً شما زمانی که تعدادی متغیر را بدون مقایسه در کنار هم می خواهید ترسیم کنید، می توانید از این روش استفاده کنید.
طریقه استفاده از دستور subplot بصورت زیر است:

subplot(2,1,1), plot(x,y)
ylabel('x.e^{-x}')
subplot(2,1,2), plot(x,x.*sin(x))
ylabel('x.sin x')
—----------------------------------

دو عدد اول در دستور subplot تعداد تقسيمات صفحه را معين مي كنند (سطري و ستوني) و عدد سوم مكان رسم نمودار (يا تغيير روي نمودار موجود) را مشخص مي نمايد.
ترسيم داده ها در نرم افزار MATLAB (قسمت چهارم)
—------------------------------
ترسیم نمودارهاي ٢ بعدي:

در نرم افزار MATLAB در صورتي كه تابعيت متغير وابسته بر حسب متغير مستقل مشخص باشد مي توانيد از دستور fplot براي رسم آن استفاده كنيد:

fplot('x*exp(-x)',[0 2],'k')
—------------------------------—

آرگومان اول اين دستور يك بردار حرفي است كه مشخص كننده رابطه تابع (در صورت ساده بودن رابطه تحليلي تابع، همانند مثال فوق) يا نام m-file حاوي تابع (كه جداگانه بايد ايجاد شده باشد) است.

آرگومان دوم fplot يك بردار دو عضوي است كه حد پائين و بالاي متغير مستقل را مشخص می کند.

آرگومان آخر رنگ نمودار را که بصورت پیش فرض آبی هست به رنگ مشکی تغییر می دهد.

برای دیگر رنگ ها حرف های زیر قابل استفاده است:

c : فیروزه ای

m : بنفش

b: آبی

r: قرمز

g: سبز

k: سیاه

w: سفید

y: زرد
—---------------------------------
ترسيم داده ها در نرم افزار MATLAB (قسمت پنجم)
—------------------------------
ترسیم نمودارهاي 3 بعدي:

در نرم افزار MATLAB دستورات زيادی براي ترسيم نمودارهاي سه بعدي وجود دارند. يك منحني سه بعدي را مي توانيد به كمك دستور plot3 ترسیم نمائید:

t=0:.01:6*pi;
plot3(cos(t),sin(t),t)
xlabel('cos(t)')
ylabel('sin(t)')
zlabel('t')
—-------------------------------

کاربرد دستور plot3 زمانی است که شما بخواهید در یک فضای 3D نقاط مدنظر را به یکدیگر متصل کنید. این تابع سه آرگومان x,y,z را لزوماً جهت رسم احتیاج دارد.
به کمک دستورات label می توانید بر محورهای x,y,z برچسب دلخواه بزنید.
ترسيم داده ها در نرم افزار MATLAB (قسمت ششم)
—------------------------------
ترسیم نمودارهاي 3 بعدي:

در نرم افزار MATLAB سطوح سه بعدي را مي توانيد با استفاده از دستورات surf و mesh ترسیم نمائید.
چنانچه یک ماتریس دو بعدی داشته باشیم و بخواهیم توسط یک شکل سه بعدی، مقادیر عناصر آن را ببینیم، می توانیم از دستور surf در متلب استفاده کنیم. دستور surf ، مقادیر ماتریس را به صورت یک سطح برجسته و دارای پستی و بلندی، نمایش می دهد.
دستور mesh نیز همانند دستور surf بوده ولی بصورت شبکه ای و نه سطحی رسم می کند.

[x,y]=meshgrid(-pi:pi/8:pi,-pi:pi/8:pi);
z=cos(x).*cos(y);
surf(x,y,z)
view(30,45)
—-------------------------------

دستور meshgrid شبكه دو بعدي روي صفحه xy را ايجاد مي كند. بردارهاي ورودي به اين دستور مشخص كننده تقسيمات در جهات y و x هستند. سطح ايجاد شده را مي توانيد با كمك دستور shading هموار كنيد. همچنين براي تطابق رنگها با اعداد محور z مي توانيد از دستور colorbar استفاده کنید.
shading interp
colorbar
—-------------------------------
ترسيم داده ها در نرم افزار MATLAB (قسمت هفتم)
—------------------------------
ترسیم نمودارهای 2/5 بعدی:

در نرم افزار MATLAB سطوح دو و نیم بعدی را می توانيد با استفاده از دستور contour ترسیم نمائید.
نمودارهای به اصطلاح 2/5 بعدی برای دیدن سطوح 3 بعدی روی صفحه مختصات 2 بعدی به کار می روند. يكی از اين روش ها رسم خطوط همتراز يك سطح است:

[x,y]=meshgrid(-2:.1:2,-2:.1:2);
z=2-((x-1).^2+4*(y-1).^2+2*x.*y);
[c,h]=contour(x,y,z,[-15 -10 -5 -2 0 0.5]);
clabel(c,h), xlabel('x'), ylabel('y')
—------------------------------

آرگومان چهارم در دستور contour برداری است كه بر اساس آن منحنی هاي همترازی كه مقادير عددی آنها برابر با مولفه های آن بردار است روی نمودار نشان داده خواهند شد.
دستور clabel مقادير خطوط همتراز را روی نمودار نشان می دهد.
روش ديگر آن است كه سطح را از زاويه ای عمود بر صفحه xy نگريست و رنگ هاي متفاوتی به مقادير مختلف z نسبت داد:

pcolor(x,y,z)
shading interp
colorbar
—------------------------------
❇️ اجرای کدهای MATLAB از طریق اینترنت

—---------------------------------—

اگر روی سیستم خودتان نرم افزار MATLAB را نصب شده ندارید و نیاز فوری دارید که یک کد نوشته شده به زبان MATLAB را اجرا کنید، و یا نیاز به رسم یک نمودار دارید که فقط از عهده متلب بر می آید، به راحتی می توانید از طریق سایت اینترنتی زیر کد مورد نظرتان را اجرا و خروجی های آن را دریافت کنید:

—---------------------------------—
به آدرس لینک زیر 👇 وارد شوید سپس گزینه Start را بزنید و دستور خود را تایپ نمایید و آنلاین جواب بگیرید

http://octave-online.net/

☝️☝️☝️☝️
Forwarded from کانال تخصصی متلب (M.Vat)
فیلم های آموزشی متلب 👇 در 63 جلسه
( نوع فرمت : ویدئو از نوع AVI)
👍1