امتیاز موضوع:
  • 4 رأی - میانگین امتیازات: 2.75
  • 1
  • 2
  • 3
  • 4
  • 5
آموزش MATLAB
نویسنده پیام
lord_viper غایب
مدیر کل انجمن
*****

ارسال‌ها: 3,949
موضوع‌ها: 352
تاریخ عضویت: بهمن ۱۳۸۴

تشکرها : 5193
( 9875 تشکر در 2650 ارسال )
ارسال: #12
RE: آموزش MATLAB
(۰۵-مهر-۱۳۸۸, ۰۱:۱۱:۴۷)aminsotudeh نوشته است: من فقط می خواستم بدونم متلب چقدر تو این سایت طرفدار داره که ظاهرا فقط یک نفر هست. Biggrin
شما به این فکر کن که ذکوة علم نشر ان است
طالباش یواش یواش از طریق گوگل پیدا میشن
۰۵-مهر-۱۳۸۸, ۰۹:۳۳:۲۳
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : mahdi20, kobra, sasparatan, saman000, helma, orange signal
aminsotudeh غایب
كاربر دو ستاره
**

ارسال‌ها: 179
موضوع‌ها: 19
تاریخ عضویت: اردیبهشت ۱۳۸۶

تشکرها : 1357
( 1331 تشکر در 343 ارسال )
ارسال: #13
RE: آموزش MATLAB
سلام
اون دو صفحه سوال رو ترجمه کردم.
چند روز پیش یه بار دیگه ترجمه کرده بودم ولی آخرش برق رفت!

توبه گرگ مرگه!
۱۱-مهر-۱۳۸۸, ۲۱:۲۱:۲۳
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000, lord_viper, mvig
aminsotudeh غایب
كاربر دو ستاره
**

ارسال‌ها: 179
موضوع‌ها: 19
تاریخ عضویت: اردیبهشت ۱۳۸۶

تشکرها : 1357
( 1331 تشکر در 343 ارسال )
ارسال: #14
RE: آموزش MATLAB
ترجمه فصل 4 تموم شده. باید تایپ کنم. ولی فعلا برای بسط به کسر های جزئی یه کارایی انجام دادم. هر وقت وقت کنم فصل 4 رو تایپ کنم می ذارم. اگه کسی جواب سوالای قبلی رو بلد نیست یه ندا بدین تا بذارم.


بسط به کسر های جزئی با استفاده از متلب

این از دستورات M-file

کد:
delete task1.txt
diary task1.txt
% Display the command lines in the command window
echo on
% Remove old variable definitions
clear all
% Remove old graphics windows
close all
num1=[2 5 3 6];
den1=[1 6 11 6];
[r,p,k]=residue(num1,den1)
[num1,den1]=residue(r,p,k)
printsys(num1,den1,'s')
%for second example press a key
pause
num2=[1 2 3];
den2=[1 3 3 1];
[r,p,k]=residue(num2,den2)
[num2,den2]=residue(r,p,k)
printsys(num2,den2,'s')
echo off
diary off

در نتیجه در command window خروجی زیر را مشاهده خواهید کرد


کد:
% Remove old variable definitions
clear all
% Remove old graphics windows
close all
num1=[2 5 3 6];
den1=[1 6 11 6];
[r,p,k]=residue(num1,den1)

r =

-6.0000
-4.0000
3.0000


p =

-3.0000
-2.0000
-1.0000


k =

2

[num1,den1]=residue(r,p,k)

num1 =

2.0000 5.0000 3.0000 6.0000


den1 =

1.0000 6.0000 11.0000 6.0000

printsys(num1,den1,'s')

num/den =

2 s^3 + 5 s^2 + 3 s + 6
-----------------------
s^3 + 6 s^2 + 11 s + 6
%for second example press a key
pause
num2=[1 2 3];
den2=[1 3 3 1];
[r,p,k]=residue(num2,den2)

r =

1
0
2


p =

-1
-1
-1


k =

[]

[num2,den2]=residue(r,p,k)

num2 =

1 2 3


den2 =

1 3 3 1

printsys(num2,den2,'s')

num/den =

s^2 + 2 s + 3
---------------------
s^3 + 3 s^2 + 3 s + 1
echo off

در اینجا توابع residue و printsys به کار گرفته شده است. با اجرای m-file طرز کار هر کدام را می فهمید. اگر اطلاعات بیشتری نیاز داشتید به help مراجعه کنید. یا که خودم توضیح بدم.

توبه گرگ مرگه!
(آخرین ویرایش در این ارسال: ۰۷-آبان-۱۳۸۸, ۲۳:۰۶:۴۵، توسط aminsotudeh.)
۰۷-آبان-۱۳۸۸, ۱۲:۲۷:۰۷
ارسال‌ها
پاسخ
تشکر شده توسط : lord_viper, mvig, t3r!p3000, rs22ay, saman000
aminsotudeh غایب
كاربر دو ستاره
**

ارسال‌ها: 179
موضوع‌ها: 19
تاریخ عضویت: اردیبهشت ۱۳۸۶

تشکرها : 1357
( 1331 تشکر در 343 ارسال )
ارسال: #15
RE: آموزش MATLAB
یافتن صفر ها و قطب های تابع (num(s)/den(s با استفاده از متلب

کد:
delete task2.txt
diary task2.txt
% Display the command lines in the command window
echo on
% Remove old variable definitions
clear all
%pak kardane command window
clc
% Remove old graphics windows
close all
%yaftane num/den az rooye sefr(z) ha va ghotb(p) haye an.k khareje ghesmat
%ast.
z=[-1;-3];
p=[0;-2;-4;-6];
k=4;
[num1,den1]=zp2tf(z,p,k)
printsys(num1,den1,'s')
%yaftane z va p va k az rooye num/den.( bar akse amaliate bala. baraye ejra
%press any key.
pause
[z,p,k]=tf2zp(num1,den1)
% for second example press any key.
pause
%yaftane num/den az rooye sefr(z) ha va ghotb(p) haye an.k khareje ghesmat
%ast.
z=[-1;-2;-3];
p=[-2+j*3;-2-j*3;-5];
k=5;
[num2,den2]=zp2tf(z,p,k)
printsys(num2,den2,'s')
%yaftane z va p va k az rooye num/den.( bar akse amaliate bala. baraye ejra
%press any key.
pause
[z,p,k]=tf2zp(num2,den2)
echo off
diary off

در نتیجه در command window خروجی زیر را مشاهده خواهید کرد.

کد:
% Remove old variable definitions
clear all
%pak kardane command window
clc
% Remove old graphics windows
close all
%yaftane num/den az rooye sefr(z) ha va ghotb(p) haye an.k khareje ghesmat
%ast.
z=[-1;-3];
p=[0;-2;-4;-6];
k=4;
[num1,den1]=zp2tf(z,p,k)

num1 =

     0     0     4    16    12


den1 =

     1    12    44    48     0

printsys(num1,den1,'s')

num/den =

         4 s^2 + 16 s + 12
   ----------------------------
   s^4 + 12 s^3 + 44 s^2 + 48 s
%yaftane z va p va k az rooye num/den.( bar akse amaliate bala. baraye ejra
%press any key.
pause
[z,p,k]=tf2zp(num1,den1)

z =

    -3
    -1


p =

         0
   -6.0000
   -4.0000
   -2.0000


k =

     4

% for second example press any key.
pause
%yaftane num/den az rooye sefr(z) ha va ghotb(p) haye an.k khareje ghesmat
%ast.
z=[-1;-2;-3];
p=[-2+j*3;-2-j*3;-5];
k=5;
[num2,den2]=zp2tf(z,p,k)

num2 =

     5    30    55    30


den2 =

     1     9    33    65

printsys(num2,den2,'s')

num/den =

   5 s^3 + 30 s^2 + 55 s + 30
   --------------------------
     s^3 + 9 s^2 + 33 s + 65
%yaftane z va p va k az rooye num/den.( bar akse amaliate bala. baraye ejra
%press any key.
pause
[z,p,k]=tf2zp(num2,den2)

z =

   -3.0000
   -2.0000
   -1.0000


p =

  -5.0000          
  -2.0000 + 3.0000i
  -2.0000 - 3.0000i


k =

     5

echo off

در اینجا توابع zp2tf و printsys و tf2zp استفاده شده است. با اجرای m-file طرز کار هر کدام را می فهمید. اگر اطلاعات بیشتری نیاز داشتید به help مراجعه کنید. یا که خودم توضیح بدم.

توبه گرگ مرگه!
(آخرین ویرایش در این ارسال: ۰۷-آبان-۱۳۸۸, ۲۳:۰۴:۴۷، توسط aminsotudeh.)
۰۷-آبان-۱۳۸۸, ۱۴:۰۶:۳۶
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000, mvig, rs22ay
aminsotudeh غایب
كاربر دو ستاره
**

ارسال‌ها: 179
موضوع‌ها: 19
تاریخ عضویت: اردیبهشت ۱۳۸۶

تشکرها : 1357
( 1331 تشکر در 343 ارسال )
ارسال: #16
RE: آموزش MATLAB
محاسبه عکس تبدیل لاپلاس

M-file

کد:
delete task3.txt
diary task3.txt
% Display the command lines in the command window
echo on
% Remove old variable definitions
clear all
%pak kardane command window
clc
% Remove old graphics windows
close all
syms s
v=1.92*s^2/(s^2+1)/(s^2+8/5*s+1);
pretty(v)
V=ilaplace(v);
pretty(V)
%for second example press any key!
%dar zir be raveshe raahet tari ebaarat haaye namaadin ra minevisim.
pause
f=poly2sym([2 8 2 -4],'s')/poly2sym([1 5 4],'s');
pretty(f)
F=ilaplace(f);
pretty(F)
echo off
diary off

در نتیجه در command window نتایج زیر را مشاهده خواهید کرد.

کد:
% Remove old variable definitions
clear all
%pak kardane command window
clc
% Remove old graphics windows
close all
syms s
v=1.92*s^2/(s^2+1)/(s^2+8/5*s+1);
pretty(v)

                                        2
                         48            s
                         -- -------------------------
                         25   2        2
                            (s  + 1) (s  + 8/5 s + 1)
V=ilaplace(v);
pretty(V)

         6/5 cos(t) + 2/5 (-3 cos(3/5 t) + 4 sin(3/5 t)) exp(- 4/5 t)
%for second example press any key!
%dar zir be raveshe raahet tari ebaarat haaye namaadin ra minevisim.
pause
f=poly2sym([2 8 2 -4],'s')/poly2sym([1 5 4],'s');
pretty(f)

                                3      2
                             2 s  + 8 s  + 2 s - 4
                             ---------------------
                                  2
                                 s  + 5 s + 4
F=ilaplace(f);
pretty(F)

                   2 dirac(1, t) - 2 dirac(t) + 4 exp(-4 t)
echo off

در اینجا توابع syms و ilaplace و pretty و poly2sym استفاده شده است.با اجرای m-file طرز کار هر کدام را می فهمید. اگر اطلاعات بیشتری نیاز داشتید به help مراجعه کنید. یا که خودم توضیح بدم.

توبه گرگ مرگه!
(آخرین ویرایش در این ارسال: ۰۷-آبان-۱۳۸۸, ۲۳:۰۷:۲۱، توسط aminsotudeh.)
۰۷-آبان-۱۳۸۸, ۲۳:۰۱:۱۷
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000, rs22ay
aminsotudeh غایب
كاربر دو ستاره
**

ارسال‌ها: 179
موضوع‌ها: 19
تاریخ عضویت: اردیبهشت ۱۳۸۶

تشکرها : 1357
( 1331 تشکر در 343 ارسال )
ارسال: #17
RE: آموزش MATLAB
حل معادلات دیفرانسیل با استفاده از تابع dsolve

m-file

کد:
delete task4.txt
diary task4.txt
% Display the command lines in the command window
echo on
% Remove old variable definitions
clear all
%pak kardane command window
clc
% Remove old graphics windows
close all
v=dsolve('D2v+9*Dv=1','v(0)=0','Dv(0)=0');
pretty(v)
%for the second example press any key!
pause
x=dsolve('D2x+Dx+4.25*x=1+t','x(0)=0','Dx(0)=0');
pretty(x)
%for the third example press any key!
pause
y=dsolve('D3y+D2y+4*Dy+4*y=10*sin(10*t)','y(0)=0','Dy(0)=0','D2y(0)=0');
pretty(y)
echo off
diary off

در نتیجه در command window نتایج زیر را مشاهده خواهید کرد.

کد:
% Remove old variable definitions
clear all
%pak kardane command window
clc
% Remove old graphics windows
close all
v=dsolve('D2v+9*Dv=1','v(0)=0','Dv(0)=0');
pretty(v)

                         1/81 exp(-9 t) + 1/9 t - 1/81
%for the second example press any key!
pause
x=dsolve('D2x+Dx+4.25*x=1+t','x(0)=0','Dx(0)=0');
pretty(x)

      47                          52                          52
    - --- exp(- 1/2 t) sin(2 t) - --- exp(- 1/2 t) cos(2 t) + --- + 4/17 t
      289                         289                         289
%for the third example press any key!
pause
y=dsolve('D3y+D2y+4*Dy+4*y=10*sin(10*t)','y(0)=0','Dy(0)=0','D2y(0)=0');
pretty(y)

                                   25
  5/48 sin(2 t) - 5/24 cos(2 t) + ---- cos(10 t) - 5/4848 sin(10 t)
                                  2424

           20
         + --- exp(-t)
           101
echo off

در اینجا تابع dsolve استفاده شده است.برای شناخت بیشتر این تابع به help مراجعه کنید. یا که خودم توضیح بدم.

توجه: در صورت صفر بودن شرایط اولیه می توانیم برای حل معادله دیفرانسیل از تبدیل لاپلاس استفاده کنیم.

ابتدا تابع تبدیل لاپلاس معادله دیفرانسیل را بدست آورید و از آن عکس تبدیل لاپلاس بگیرید.
در پست قبل نحوه محاسبه عکس تبدیل لاپلاس با چند مثال توضیح داده شده است.

توبه گرگ مرگه!
۰۸-آبان-۱۳۸۸, ۰۰:۰۲:۳۴
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000, mjbbest, rs22ay, saman000
aminsotudeh غایب
كاربر دو ستاره
**

ارسال‌ها: 179
موضوع‌ها: 19
تاریخ عضویت: اردیبهشت ۱۳۸۶

تشکرها : 1357
( 1331 تشکر در 343 ارسال )
ارسال: #18
RE: آموزش MATLAB
بدست آوردن ریشه های چند جمله ای و ساختن چند جمله ای با استفاده از ریشه های آن

m-file

کد:
delete task5.txt
diary task5.txt
% Display the command lines in the command window
echo on
% Remove old variable definitions
clear all
%pak kardane command window
clc
% Remove old graphics windows
close all
f=poly2sym([1 3 0 4],'s');
pretty(f)
%yaftane rishe haye chand jomleyi
d=[1 3 0 4];
r=roots(d)
% baraaye sakhtane chand jomleyi az rooye rishe haye an press any key!
pause
d=poly(r)
ff=poly2sym(d,'s');
pretty(ff)
echo off
diary off

در نتیجه در command window نتایج زیر را مشاهده خواهید کرد.

کد:
% Remove old variable definitions
clear all
%pak kardane command window
clc
% Remove old graphics windows
close all
f=poly2sym([1 3 0 4],'s');
pretty(f)

                                  3      2
                                 s  + 3 s  + 4
%yaftane rishe haye chand jomleyi
d=[1 3 0 4];
r=roots(d)

r =

  -3.3553          
   0.1777 + 1.0773i
   0.1777 - 1.0773i

% baraaye sakhtane chand jomleyi az rooye rishe haye an press any key!
pause
d=poly(r)

d =

    1.0000    3.0000   -0.0000    4.0000

ff=poly2sym(d,'s');
pretty(ff)

                      3      2
                     s  + 3 s  - 1/4503599627370496 s + 4
echo off
فقط دقت کنید که یه ضریب 2.2204e-016 برای s ایجاد شد که قابل صرف نظر کردن است.

در اینجا توابع roots و poly استفاده شده است.با اجرای m-file طرز کار هر کدام را خواهید فهمید. اگر اطلاعات بیشتری نیاز داشتید به help مراجعه کنید. یا که خودم توضیح بدم.

توبه گرگ مرگه!
۰۸-آبان-۱۳۸۸, ۰۱:۴۳:۳۲
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000, mjbbest, rs22ay, saman000
avarta آفلاین
تازه وارد

ارسال‌ها: 1
موضوع‌ها: 0
تاریخ عضویت: آذر ۱۳۸۸

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #19
RE: آموزش MATLAB
سلام
ممنون از مطالب خوبتون.من تازه با مطلب آشنا شدم و یه سری mfile رو cd دارم که باید اجراشون کنم و لی نمی تونم . این پیغام خطا رو میده ممنون میشم کمکم کنید
کد:
Error using ==> load???
Unable to read file net621: No such file or
directory.

Error in ==> compr at 11
load net621;
(آخرین ویرایش در این ارسال: ۱۷-آبان-۱۳۹۳, ۲۰:۳۹:۲۷، توسط behzady.)
۲۷-آذر-۱۳۸۸, ۱۰:۴۰:۱۴
ارسال‌ها
پاسخ
test1 آفلاین
تازه وارد

ارسال‌ها: 4
موضوع‌ها: 0
تاریخ عضویت: دى ۱۳۸۸

تشکرها : 0
( 13 تشکر در 3 ارسال )
ارسال: #20
RE: آموزش MATLAB
این سوال آخری رو از اروری که داده یه چیزایی میشه فهمید ولی اول باید m-file رو ببینم. همین طوری نمیشه گفت اشکال از کجاست.

تو سوال saeedabedi من نمیدونم swap تو qbasic چی کار میکنه؟ انتقال مقدار متغیر یعنی چی؟
(آخرین ویرایش در این ارسال: ۰۵-دى-۱۳۸۸, ۱۶:۵۱:۲۷، توسط test1.)
۰۵-دى-۱۳۸۸, ۱۶:۳۹:۵۹
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
fabienmartin آفلاین
تازه وارد

ارسال‌ها: 9
موضوع‌ها: 2
تاریخ عضویت: شهریور ۱۳۹۰

تشکرها : 221
( 1 تشکر در 1 ارسال )
ارسال: #21
RE: آموزش MATLAB
سلام
در متلب چگونه میتونم با پورت سریال با میکرو avr ارتباط برقرار کنم؟ می خوام دمای خوانده شده توسط میکرو در متلب نشان داده بشه؟ چه دستوراتی باید در متلب بنویسم و چه تنظیماتی در codvision
۲۸-اردیبهشت-۱۳۹۱, ۱۳:۱۳:۱۸
ارسال‌ها
پاسخ
rozegarekhosh آفلاین
تازه وارد

ارسال‌ها: 1
موضوع‌ها: 0
تاریخ عضویت: خرداد ۱۳۹۱

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #22
RE: آموزش MATLAB
):سلام بر دوستان
میگم اگر 1000 تا داده داشته باشیم بخواهیم هر کدوم را از قبلیش کم کنیم چی کار باید کرد ؟
استاد مون گفت با حلقه for ولی نتونستم راستش را بخواید بلد نیستم میشه سریع جوابم را بدید ؟ بی نهایت ممنون می شم
۲۵-دى-۱۳۹۱, ۲۳:۴۷:۱۱
ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  [جداسازی] برنامه نویسی در MATLAB helma 3 3,152 ۱۴-فروردین-۱۳۹۶, ۲۳:۴۷:۱۰
آخرین ارسال: helma
  [فوری] برنامه نویسی در MATLAB Leila_Abr 0 2,680 ۲۲-آبان-۱۳۹۵, ۱۳:۵۳:۲۰
آخرین ارسال: Leila_Abr
  برنامه نویسی در matlab reza433 2 4,192 ۰۱-بهمن-۱۳۹۴, ۱۴:۵۹:۳۱
آخرین ارسال: sahra_akbari
  کمک در برنامه نویسی با متلب (Matlab)-- داده های تست و Train lyceum 11 21,419 ۲۹-فروردین-۱۳۹۴, ۱۲:۵۴:۳۴
آخرین ارسال: hadirajabzad
  آموزش سیمولینک در MATLAB aminsotudeh 1 32,432 ۱۱-آذر-۱۳۹۳, ۲۱:۱۹:۲۱
آخرین ارسال: orange signal
  سوالات نرم افزار matlab akbar8 8 6,661 ۱۴-آبان-۱۳۹۳, ۱۴:۲۳:۳۶
آخرین ارسال: dooook
  MATLAB aminsotudeh 25 21,881 ۱۱-مرداد-۱۳۹۳, ۱۹:۳۲:۲۴
آخرین ارسال: atefe sh
  آموزش GUI در MATLAB aminsotudeh 3 17,119 ۰۴-اسفند-۱۳۹۲, ۲۱:۳۷:۳۸
آخرین ارسال: شاللو
  رسم نمودار محورهای مختصات در MATLAB سیدعلی 1 5,091 ۱۶-مهر-۱۳۹۲, ۱۹:۱۰:۰۱
آخرین ارسال: babyy
  رسم نمودار با matlab محمد حسینی 1 8,420 ۲۹-بهمن-۱۳۸۸, ۱۲:۱۲:۵۲
آخرین ارسال: t3r!p3000

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 2 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS