🎯 هر روز یک دستور 🎯
____________________________
🔆 دستور شماره چهارده
____________________________
bench
منظور:محک متلب
خلاصه:
bench
bench(N)
times=bench(N)
توصیف: bench برای محک زدن سرعت اجرای متلب در کامپیوتر موجود، عملیات مختلفی را بطور آزمایشی روی سیستم عمل کرده و نتایج را با سرعت اجرای چند کامپیوتر دیگر مقایسه میکند. حجم عملیات به گونه ای است که انجام هر عمل در یک SUN SPARC-2 حدود یک ثانیه زمان میبرد. عملیات مورد آزمایش به قرار زیرند:
• حلقه ها: برای حلقه ها و صفرها- دنباله ها و "malloc''
• Linpack: LU متلب-محاسبات اولیه و ممیز شناور
• متفرقه"حل سیستم پراکنده-اعداد صحیح مختلط و ممیز شناور
• سه بعدی: رسم سطوح"پیک"- گرافیک های سه بعدی چند ضلیعها"polygonal fill"
• دوبعدی: رسم خطوط دو بعدی plot(fft(eye))
Bencmark هریک از عملیات پنجگانه فوق را 10 بار اجرا میکند.bench(N) عملیات را N بار تکرار میکند. times=bench(N) برداری شامل زمانهای اجرا را میدهد.
در پایان یک نمودار میله ای نتایج سرعتهای بدست امده را نشان میدهد(که نسبت عکس با زمان دارد)
____________________________
#هر_روز_یک_دستور
#دستور
#bench
____________________________
© @MATLAB_tutorial
© @MATLAB_files
https://telegram.me/MATLAB_tutorial
____________________________
🔆 دستور شماره چهارده
____________________________
bench
منظور:محک متلب
خلاصه:
bench
bench(N)
times=bench(N)
توصیف: bench برای محک زدن سرعت اجرای متلب در کامپیوتر موجود، عملیات مختلفی را بطور آزمایشی روی سیستم عمل کرده و نتایج را با سرعت اجرای چند کامپیوتر دیگر مقایسه میکند. حجم عملیات به گونه ای است که انجام هر عمل در یک SUN SPARC-2 حدود یک ثانیه زمان میبرد. عملیات مورد آزمایش به قرار زیرند:
• حلقه ها: برای حلقه ها و صفرها- دنباله ها و "malloc''
• Linpack: LU متلب-محاسبات اولیه و ممیز شناور
• متفرقه"حل سیستم پراکنده-اعداد صحیح مختلط و ممیز شناور
• سه بعدی: رسم سطوح"پیک"- گرافیک های سه بعدی چند ضلیعها"polygonal fill"
• دوبعدی: رسم خطوط دو بعدی plot(fft(eye))
Bencmark هریک از عملیات پنجگانه فوق را 10 بار اجرا میکند.bench(N) عملیات را N بار تکرار میکند. times=bench(N) برداری شامل زمانهای اجرا را میدهد.
در پایان یک نمودار میله ای نتایج سرعتهای بدست امده را نشان میدهد(که نسبت عکس با زمان دارد)
____________________________
#هر_روز_یک_دستور
#دستور
#bench
____________________________
© @MATLAB_tutorial
© @MATLAB_files
https://telegram.me/MATLAB_tutorial
🎯 هر روز یک دستور 🎯
____________________________
🔆 دستور شماره پانزده
____________________________
besseli ,besselk
منظور:تابع بسل تعمیم یافته نوع اول و دوم
خلاصه:
I = besseli(alpha,x)
E= besseli(alpha,x,1)
I = besselk(alpha,x),E=beesselk(alpha,x,1)
توصیف: I = besseli(alpha,x) توابع بسل تعمیم یافته مرتبه اول 1-sub-alpha(x) را برای مرتبه a حقیق و غیر منفی و آرگومان x محاسبه میکند.
E= besseli(alpha,x,1) منجر به محاسبه 1-sub-alpha(x)*exp(-x) می شود.
عناصر x می تواند مقادیر حقیقی غیر منفی در هر مرتبه باشند. با این وجود برای alpha دو محدودیت مهم وجود دارد: افزایش درalpha بایستی مقدار محدود باشد،یعنی ALPHA=alpha:1:alpha+n-1 و مقادیر بایستی رابطه 0≪alpha(k)≪1000 را ارضا کنند.
مثال:
format long
z = (0:0.2:1)';
besseli(1,z)
ans =
0.10050083402813
0.20402675573357
0.31370402560492
0.43286480262064
0.56515910399249
0.56515910399249
____________________________
#هر_روز_یک_دستور
#دستور
#besseli
#besselk
____________________________
© @MATLAB_tutorial
© @MATLAB_files
https://telegram.me/MATLAB_tutorial
____________________________
🔆 دستور شماره پانزده
____________________________
besseli ,besselk
منظور:تابع بسل تعمیم یافته نوع اول و دوم
خلاصه:
I = besseli(alpha,x)
E= besseli(alpha,x,1)
I = besselk(alpha,x),E=beesselk(alpha,x,1)
توصیف: I = besseli(alpha,x) توابع بسل تعمیم یافته مرتبه اول 1-sub-alpha(x) را برای مرتبه a حقیق و غیر منفی و آرگومان x محاسبه میکند.
E= besseli(alpha,x,1) منجر به محاسبه 1-sub-alpha(x)*exp(-x) می شود.
عناصر x می تواند مقادیر حقیقی غیر منفی در هر مرتبه باشند. با این وجود برای alpha دو محدودیت مهم وجود دارد: افزایش درalpha بایستی مقدار محدود باشد،یعنی ALPHA=alpha:1:alpha+n-1 و مقادیر بایستی رابطه 0≪alpha(k)≪1000 را ارضا کنند.
مثال:
format long
z = (0:0.2:1)';
besseli(1,z)
ans =
0.10050083402813
0.20402675573357
0.31370402560492
0.43286480262064
0.56515910399249
0.56515910399249
____________________________
#هر_روز_یک_دستور
#دستور
#besseli
#besselk
____________________________
© @MATLAB_tutorial
© @MATLAB_files
https://telegram.me/MATLAB_tutorial
🎯 هر روز یک دستور 🎯
____________________________
🔆 دستور شماره شانزده
____________________________
🌺besselj,bessely🌺
📌منظور: تابع بسل نوع اول و دوم
📌خلاصه:
J = besselj(alpha,x), E= besselj(alpha,x,1)
y = bessely(alpha,x),E = bessely(alpha,x,1)
📌توصیف: J = besselj(alpha,x) توابع بسل مرتبه اول j-sub-alpha(x) را بای مرتبه a حقیقی و غیر منفی و آرگومان x محاسبه میکند.
y = bessely(alpha,x), توابع بسل مرتبه دوم y-sub-alpha(x) را برای مرتبه a حقیقی و غیر منفی و آرگومان x محاسبه می کند.
درحالت کلی alpha , x میتوانند بردار باشند.خروجی j یک ماتریس n*m می باشد.
✅مثال:
format long
z = (0:0.2:1)';
besselj(1,z)
ans =
0
0.09950083263924
0.19602657795532
0.28670098806392
0.36884204609417
0.44005058574493
____________________________
#هر_روز_یک_دستور
#دستور
#besselj
#bessely
____________________________
© @MATLAB_tutorial
© @MATLAB_files
https://telegram.me/MATLAB_tutorial
____________________________
🔆 دستور شماره شانزده
____________________________
🌺besselj,bessely🌺
📌منظور: تابع بسل نوع اول و دوم
📌خلاصه:
J = besselj(alpha,x), E= besselj(alpha,x,1)
y = bessely(alpha,x),E = bessely(alpha,x,1)
📌توصیف: J = besselj(alpha,x) توابع بسل مرتبه اول j-sub-alpha(x) را بای مرتبه a حقیقی و غیر منفی و آرگومان x محاسبه میکند.
y = bessely(alpha,x), توابع بسل مرتبه دوم y-sub-alpha(x) را برای مرتبه a حقیقی و غیر منفی و آرگومان x محاسبه می کند.
درحالت کلی alpha , x میتوانند بردار باشند.خروجی j یک ماتریس n*m می باشد.
✅مثال:
format long
z = (0:0.2:1)';
besselj(1,z)
ans =
0
0.09950083263924
0.19602657795532
0.28670098806392
0.36884204609417
0.44005058574493
____________________________
#هر_روز_یک_دستور
#دستور
#besselj
#bessely
____________________________
© @MATLAB_tutorial
© @MATLAB_files
https://telegram.me/MATLAB_tutorial
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
رسم نمودار بوده (قسمت اول) :
برای رسم نمودار بوده باید نمودار دامنه و فاز سیستم را بیابیم.
در متلب دستور bode برای این منظور تعبیه شده است اما برای آموزش بهتر مفاهیم نمودار بوده ابتدا به نوشتن برنامه برای رسم دیاگرام بوده میپردازیم:
در عمل برای این منظور فرکانس های اصلی سیستم را میابیم و با دادن ورودی سینوسی با فرکانس از حدود 0.1 کوچک ترین تا 10 برابر بزرگ ترین آن ها در چندین نقطه مناسب ،بهره(نسبت دامنه خروجی به دامنه ورودی) و اختلاف فاز (اختلاف زاویه بین خروجی و ورودی) را اندازه گیری میکنیم.با استفاده از نقاط بدست آمده دیاگرام بود را در صفحه نیمه لگاریتمی رسم میکنیم.
در اینجا توابع فاز و دامنه را میابیم و سپس مقادیر آنها را در فرکانسهای مختلف یافته و رسم میکنیم.
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
رسم نمودار بوده (قسمت اول) :
برای رسم نمودار بوده باید نمودار دامنه و فاز سیستم را بیابیم.
در متلب دستور bode برای این منظور تعبیه شده است اما برای آموزش بهتر مفاهیم نمودار بوده ابتدا به نوشتن برنامه برای رسم دیاگرام بوده میپردازیم:
در عمل برای این منظور فرکانس های اصلی سیستم را میابیم و با دادن ورودی سینوسی با فرکانس از حدود 0.1 کوچک ترین تا 10 برابر بزرگ ترین آن ها در چندین نقطه مناسب ،بهره(نسبت دامنه خروجی به دامنه ورودی) و اختلاف فاز (اختلاف زاویه بین خروجی و ورودی) را اندازه گیری میکنیم.با استفاده از نقاط بدست آمده دیاگرام بود را در صفحه نیمه لگاریتمی رسم میکنیم.
در اینجا توابع فاز و دامنه را میابیم و سپس مقادیر آنها را در فرکانسهای مختلف یافته و رسم میکنیم.
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
مثال زیر این روش را تشریح میکند:
مثال:
برای دیاگرام زیر و با فرض c(s)=1 دیاگرام بوده را رسم کنید:
G(s)=1/(1+0.2s+0.04s^2 )(1+0.1s)
G(jω)=1/(1+0.2jω-0.04ω^2 )(1+0.1jω)
20 log|G(jω)|=-20log|1+0.2jω-0.04ω^2 |-20 log|1+0.1jω|
-∡(1+0.2jω-0.04ω^2)-∡(1+.01jω) ∡G(jω)=
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/fhJV
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
مثال زیر این روش را تشریح میکند:
مثال:
برای دیاگرام زیر و با فرض c(s)=1 دیاگرام بوده را رسم کنید:
G(s)=1/(1+0.2s+0.04s^2 )(1+0.1s)
G(jω)=1/(1+0.2jω-0.04ω^2 )(1+0.1jω)
20 log|G(jω)|=-20log|1+0.2jω-0.04ω^2 |-20 log|1+0.1jω|
-∡(1+0.2jω-0.04ω^2)-∡(1+.01jω) ∡G(jω)=
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/fhJV
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
برنامه متلب زیر این کار را انجام میدهد.
clc
clear
close all
w=logspace(-1,2,1000);
for n=1:length(w);
m=20*log10(abs(1/((1+0.2*w(n)*1i-0.04*(w(n))^2)*(1+0.1*w(n)*1i))));
ph=angle(1/((1+0.2*w(n)*1i-0.04*(w(n))^2)*(1+0.1*w(n)*1i)))*(180/pi);
mag(n)=m;
phase(n)=ph;
end
figure(1)
subplot(2,1,1)
semilogx(w,mag)
ylabel('Magnitude (dB)')
grid on
title('Bode Diagram')
subplot(2,1,2)
semilogx(w,phase)
xlabel('Frequency (rad/s)')
ylabel('Phase (deg)')
grid on
خروجی برنامه :
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/5IYM
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
برنامه متلب زیر این کار را انجام میدهد.
clc
clear
close all
w=logspace(-1,2,1000);
for n=1:length(w);
m=20*log10(abs(1/((1+0.2*w(n)*1i-0.04*(w(n))^2)*(1+0.1*w(n)*1i))));
ph=angle(1/((1+0.2*w(n)*1i-0.04*(w(n))^2)*(1+0.1*w(n)*1i)))*(180/pi);
mag(n)=m;
phase(n)=ph;
end
figure(1)
subplot(2,1,1)
semilogx(w,mag)
ylabel('Magnitude (dB)')
grid on
title('Bode Diagram')
subplot(2,1,2)
semilogx(w,phase)
xlabel('Frequency (rad/s)')
ylabel('Phase (deg)')
grid on
خروجی برنامه :
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/5IYM
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
پرش موجود در فاز به دلیل این است که خروجی دستور angle بین -πو π است.
برای اینکه پرش در فاز را از بین ببریم میتوان برنامه را به صورت زیر اصلاح کرد:
clc
clear
close all
w=logspace(-1,2,1000);
for n=1:length(w);
m=20*log10(abs(1/((1+0.2*w(n)*1i-0.04*(w(n))^2)*(1+0.1*w(n)*1i))));
ph=angle(1/((1+0.2*w(n)*1i-0.04*(w(n))^2)*(1+0.1*w(n)*1i)))*(180/pi);
mag(n)=m;
phase(n)=ph;
end
for i=1:length(w)-1
if phase(i+1)-phase(i)>=180
phase(i+1)=phase(i+1)-360;
elseif phase(i+1)-phase(i)<=-180
phase(i+1)=phase(i+1)+360;
end
end
figure(1)
subplot(2,1,1)
semilogx(w,mag)
ylabel('Magnitude (dB)')
grid on
title('Bode Diagram')
subplot(2,1,2)
semilogx(w,phase)
xlabel('Frequency (rad/s)')
ylabel('Phase (deg)')
grid on
خروجی :
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/PWNA
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
پرش موجود در فاز به دلیل این است که خروجی دستور angle بین -πو π است.
برای اینکه پرش در فاز را از بین ببریم میتوان برنامه را به صورت زیر اصلاح کرد:
clc
clear
close all
w=logspace(-1,2,1000);
for n=1:length(w);
m=20*log10(abs(1/((1+0.2*w(n)*1i-0.04*(w(n))^2)*(1+0.1*w(n)*1i))));
ph=angle(1/((1+0.2*w(n)*1i-0.04*(w(n))^2)*(1+0.1*w(n)*1i)))*(180/pi);
mag(n)=m;
phase(n)=ph;
end
for i=1:length(w)-1
if phase(i+1)-phase(i)>=180
phase(i+1)=phase(i+1)-360;
elseif phase(i+1)-phase(i)<=-180
phase(i+1)=phase(i+1)+360;
end
end
figure(1)
subplot(2,1,1)
semilogx(w,mag)
ylabel('Magnitude (dB)')
grid on
title('Bode Diagram')
subplot(2,1,2)
semilogx(w,phase)
xlabel('Frequency (rad/s)')
ylabel('Phase (deg)')
grid on
خروجی :
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/PWNA
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
رسم دیاگرام بوده به کمک دستور bode :
bode(num,den)
bode(num,den,w)
bode(num,den)
bode(A,B,C,D)
bode(A,B,C,D,iu)
bode(A,B,C,D,iu,w)
bode(sys)
اگر بردار w را وارد نکنیم خود متلب یک بردار برای آن در نظر میگیرد.
اگر بخواهیم ورودی را انتخاب کنیم باید از فرم فضای حالت استفاده کنیم. که در آنها iu شماره ورودی است.
مثال :
همان مثال قبل را به کمک دستور bode رسم کنید:
clc
clear
close all
num=[1];
den=[0.004 0.06 0.3 1];
bode(num,den)
grid on
نتیجه:
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/98NC
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
رسم دیاگرام بوده به کمک دستور bode :
bode(num,den)
bode(num,den,w)
bode(num,den)
bode(A,B,C,D)
bode(A,B,C,D,iu)
bode(A,B,C,D,iu,w)
bode(sys)
اگر بردار w را وارد نکنیم خود متلب یک بردار برای آن در نظر میگیرد.
اگر بخواهیم ورودی را انتخاب کنیم باید از فرم فضای حالت استفاده کنیم. که در آنها iu شماره ورودی است.
مثال :
همان مثال قبل را به کمک دستور bode رسم کنید:
clc
clear
close all
num=[1];
den=[0.004 0.06 0.3 1];
bode(num,den)
grid on
نتیجه:
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/98NC
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
که مطابق انتظار همان نتیجه قبلی را میدهد.
مثال :
نمودار بوده سیستم فوق را برای فرکانسهای بین 0 تا 100 رادیان بر ثانیه رسم کنید.(250 فرکانس)
ابتدا باید یک بردار w ساخت که شامل فرکانسهای مدنظر باشد برای این کار از دستور logspace استفاده میکنیم:
w = logspace(a,b)
w = logspace(a,b,n)
دستور اول یک بردار سطری 50 تایی ایجاد میکند که درایههای آن به صورت لگاریتمی بین 10a و 10b میباشد.
دستور دوم یک بردار سطری n تایی ایجاد میکند که درایههای آن به صورت لگاریتمی بین 10a و 10b میباشد.
بنابراین در این مثال :
a=0;
b=2;
clc
clear
close all
w=logspace(0,2,250);
num=[1];
den=[0.004 0.06 0.3 1];
bode(num,den,w)
grid on
نتیجه :
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
yon.ir/mHv0
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
که مطابق انتظار همان نتیجه قبلی را میدهد.
مثال :
نمودار بوده سیستم فوق را برای فرکانسهای بین 0 تا 100 رادیان بر ثانیه رسم کنید.(250 فرکانس)
ابتدا باید یک بردار w ساخت که شامل فرکانسهای مدنظر باشد برای این کار از دستور logspace استفاده میکنیم:
w = logspace(a,b)
w = logspace(a,b,n)
دستور اول یک بردار سطری 50 تایی ایجاد میکند که درایههای آن به صورت لگاریتمی بین 10a و 10b میباشد.
دستور دوم یک بردار سطری n تایی ایجاد میکند که درایههای آن به صورت لگاریتمی بین 10a و 10b میباشد.
بنابراین در این مثال :
a=0;
b=2;
clc
clear
close all
w=logspace(0,2,250);
num=[1];
den=[0.004 0.06 0.3 1];
bode(num,den,w)
grid on
نتیجه :
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
yon.ir/mHv0
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
مثال دیاگرام بوده را برای سیستم زیر رسم کنید:
G=[((s+1)/(s^2+3s+4)*1/(s+3))]
پاسخ :
clc
clear
close all
s=tf('s');
G=[(s+1)/(s^2+3*s+4) 1/(s+3)];
bode(G)
grid on
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
yon.ir/w9HS
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
مثال دیاگرام بوده را برای سیستم زیر رسم کنید:
G=[((s+1)/(s^2+3s+4)*1/(s+3))]
پاسخ :
clc
clear
close all
s=tf('s');
G=[(s+1)/(s^2+3*s+4) 1/(s+3)];
bode(G)
grid on
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
yon.ir/w9HS
🍀🍀 آموزش کاربرد متلب در کنترل خطی و کنترل مدرن 🍀🍀
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
توجه کنید که در مثال قبل 2 ورودی و یک خروجی داشتیم.
مثال :
دیاگرام بوده مثال قبل را فقط برای ورودی اول رسم کنید.
ابتدا باید فرم فضای حالت را بیابیم. (در جلسه سوم به طور کامل طریقه بدست آوردن فرم فضای حالت سیستم چند متغیره را بحث کردیم.)
clc
clear
close all
w=logspace(-1,2,250);
NUM11=[1 1];
NUM12=[1];
DEN1=[1 3 4];
DEN2=[1 3];
NUM1=NUM11;
NUM2=NUM12;
[A1,B1,C1,D1]=tf2ss(NUM1,DEN1);
[A2,B2,C2,D2]=tf2ss(NUM2,DEN2);
za1=zeros(size(A1,1),size(A2,2));
za2=zeros(size(A2,1),size(A1,2));
A=[A1 za1;za2 A2];
zb1=zeros(size(A1,1),1);
zb2=zeros(size(A2,1),1);
B=[B1 zb1;zb2 B2];
C=[C1 C2];
D=[D1 D2];
bode(A,B,C,D,1,w)
grid on
نتیجه :
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/lIx7
____________________________
💡 جلسه دهم
💡 استاد : مهندس ورمقانی
____________________________
توجه کنید که در مثال قبل 2 ورودی و یک خروجی داشتیم.
مثال :
دیاگرام بوده مثال قبل را فقط برای ورودی اول رسم کنید.
ابتدا باید فرم فضای حالت را بیابیم. (در جلسه سوم به طور کامل طریقه بدست آوردن فرم فضای حالت سیستم چند متغیره را بحث کردیم.)
clc
clear
close all
w=logspace(-1,2,250);
NUM11=[1 1];
NUM12=[1];
DEN1=[1 3 4];
DEN2=[1 3];
NUM1=NUM11;
NUM2=NUM12;
[A1,B1,C1,D1]=tf2ss(NUM1,DEN1);
[A2,B2,C2,D2]=tf2ss(NUM2,DEN2);
za1=zeros(size(A1,1),size(A2,2));
za2=zeros(size(A2,1),size(A1,2));
A=[A1 za1;za2 A2];
zb1=zeros(size(A1,1),1);
zb2=zeros(size(A2,1),1);
B=[B1 zb1;zb2 B2];
C=[C1 C2];
D=[D1 D2];
bode(A,B,C,D,1,w)
grid on
نتیجه :
____________________________
#Modern_Control
#آموزش_مقدماتی
#جلسه_دهم
#ورمقانی
#کنترل_مدرن
#مثال
© @MATLAB_tutorial
© @MATLAB_files
____________________________
http://yon.ir/lIx7
🎯 هر روز یک دستور 🎯
____________________________
🔆 دستور شماره هفده
____________________________
✅Beta,betainc,betaln
📌منظور: تابع بتا، بتای ناقص، و تابع لگاریتمی بتا
📌خلاصه:
y=beta(x,a,b)
y = beta(Z,W)
y=betainc(x,a,b)
y = betaln(Z,W)
📌توصیف: y= beta(Z,W) تابع لگاریتمی با آرگومانهای
Z,W را محاسبه میکند.
که y=beta(x,a,b) و y=betainc(x,a,b)
تابع بتای ناقص را میدهند..عناصر X بایستی در فاصله [0,1]
باشند و a و b بایستی اسکالر باشند.
که y = betaln(Z,W) تابع لگارتیمی بتار ا محاسبه
میکند. Z, w بایستی برای جمع سازگار باشند.
📙مثال:
beta(n,3)
= (n-1)!*2!/(n+2)!
= 2/(n*(n+1)*(n+2))
____________________________
#هر_روز_یک_دستور
#دستور
#Beta
#betainc
#betaln
____________________________
© @MATLAB_tutorial
© @MATLAB_files
https://telegram.me/MATLAB_tutorial
____________________________
🔆 دستور شماره هفده
____________________________
✅Beta,betainc,betaln
📌منظور: تابع بتا، بتای ناقص، و تابع لگاریتمی بتا
📌خلاصه:
y=beta(x,a,b)
y = beta(Z,W)
y=betainc(x,a,b)
y = betaln(Z,W)
📌توصیف: y= beta(Z,W) تابع لگاریتمی با آرگومانهای
Z,W را محاسبه میکند.
که y=beta(x,a,b) و y=betainc(x,a,b)
تابع بتای ناقص را میدهند..عناصر X بایستی در فاصله [0,1]
باشند و a و b بایستی اسکالر باشند.
که y = betaln(Z,W) تابع لگارتیمی بتار ا محاسبه
میکند. Z, w بایستی برای جمع سازگار باشند.
📙مثال:
beta(n,3)
= (n-1)!*2!/(n+2)!
= 2/(n*(n+1)*(n+2))
____________________________
#هر_روز_یک_دستور
#دستور
#Beta
#betainc
#betaln
____________________________
© @MATLAB_tutorial
© @MATLAB_files
https://telegram.me/MATLAB_tutorial
🎯 هر روز یک دستور 🎯
____________________________
🔆 دستور شماره هجده
____________________________
bicg
📌منظور: روش گرادیان های مزدوج دوبل
📌خلاصه:
x = bicg(A,b)
bicg(A,b,tol)
bicg(A,b,tol,maxit)
bicg(A,b,tol,maxit,M)
bicg(A,b,tol,maxit,M1,M2)
bicg(A,b,tol,maxit,M1,M2,x0)
[x,flag] = bicg(A,b,...)
[x,flag,relres] = bicg(A,b,...)
[x,flag,relres,iter] = bicg(A,b,...)
[x,flag,relres,iter,resvec] = bicg(A,b,...)
📌توصیف: x = bicg(A,b) سیستم معادلات خطی A*x=b را برای x حل می کند.
✅مثال:
n = 100;
on = ones(n,1);
A = spdiags([-2*on 4*on -on],-1:1,n,n);
b = sum(A,2);
tol = 1e-8;
maxit = 15;
M1 = spdiags([on/(-2) on],-1:0,n,n);
M2 = spdiags([4*on -on],0:1,n,n);
x = bicg(A,b,tol,maxit,M1,M2);
پیام زیر نمایش داده میشود:
bicg converged at iteration 9 to a solution with relative
residual 5.3e-009
____________________________
#هر_روز_یک_دستور
#دستور
#bicg
____________________________
© @MATLAB_tutorial
© @MATLAB_files
https://telegram.me/MATLAB_tutorial
____________________________
🔆 دستور شماره هجده
____________________________
bicg
📌منظور: روش گرادیان های مزدوج دوبل
📌خلاصه:
x = bicg(A,b)
bicg(A,b,tol)
bicg(A,b,tol,maxit)
bicg(A,b,tol,maxit,M)
bicg(A,b,tol,maxit,M1,M2)
bicg(A,b,tol,maxit,M1,M2,x0)
[x,flag] = bicg(A,b,...)
[x,flag,relres] = bicg(A,b,...)
[x,flag,relres,iter] = bicg(A,b,...)
[x,flag,relres,iter,resvec] = bicg(A,b,...)
📌توصیف: x = bicg(A,b) سیستم معادلات خطی A*x=b را برای x حل می کند.
✅مثال:
n = 100;
on = ones(n,1);
A = spdiags([-2*on 4*on -on],-1:1,n,n);
b = sum(A,2);
tol = 1e-8;
maxit = 15;
M1 = spdiags([on/(-2) on],-1:0,n,n);
M2 = spdiags([4*on -on],0:1,n,n);
x = bicg(A,b,tol,maxit,M1,M2);
پیام زیر نمایش داده میشود:
bicg converged at iteration 9 to a solution with relative
residual 5.3e-009
____________________________
#هر_روز_یک_دستور
#دستور
#bicg
____________________________
© @MATLAB_tutorial
© @MATLAB_files
https://telegram.me/MATLAB_tutorial