آموزش نرم افزار متلب برای رشته برق – محاسبات نمادین (بخش دوم)
در ادامه مبحت محاسبات نمادین در مورد مقداردهی عبارات نمادین و حل معادلات به صورت نمادین صحبت می شود . برای مطالعه بخش اول این بحث می توانید به محاسبات نمادین (بخش اول) مراجعه نمایید.
مقداردهی عبارتهای نمادین
چگونگی مشخص کردن مقدار پارامترها در عبارت و چگونگی مقداردهی یک تابع تعریف شده به صورت نمادین در …. نقطه، توسط فرمان جایگزینی یا به عبارتی subsانجام می شود.
این فرمان به صورت subs(f,old,new) است و طوری عمل می کند که مقدار پارامترها و متغیرهای قبلی (old) توسط بردار جدید (new) عوﺽ می شوند.
برای مثال، برای بدست آوردن مقدار تابع fدر نقطه x=2 ، باید دستور زیر را وارد کرد :
subs(f,x,2) <<
ans= 4*a + 2*b + c + 2*cos(2)
بدین ترتیب ، نتیجه همچنان یک عبارت نمادین میباشد. برای مشخص کردن مقادیر پارامترها به صورت a=2 ، b=-3 ، c=9 باید به صورت زیر عمل کرد:
g=subs(f,[a b c],[2 -3 9] <<
g= 2*cos(x) – 3*x + 2*x^2 +9
حال یک عبارت نمادین موجود است که وابسته به متغیر x است. برای مقداردهی این تابع در یک نقطه مشخص مانند x=-1.5، می توان جایگزینی دیگری به صورت subs(g,x,-1.5) انجام داد که پاسخ در این حالت 18.1415 می باشد.
برای کسب اطلاعات بیشتری در این زمینه می توان به فرمان help sym/subs.m مراجعه کرد.
در فصل های آینده درباره چگونگی تبدیل یک عبارت نمادین به توابع inline بحث خواهد شد. این مسأله برای رسم توابع چند متغییره که در محاسبات نمادین به وجود می آیند، مهم است.
حل معادلات به صورت نمادین
نرم افزار متلب سایت سیم پاور می تواند معادلات مشخصی را به صورت نمادین بر حسب پارامترهای معادله حل کند.
به عنوان مثال برای حل معادله ax2+bx+c=0 متغیرهای نمادین a، b، c و x و تابع مورد نظر را باید ابتدا
با فرامین بعدی تعریف کرد:
syms x a b c <<
f=a*x^2+b*x+c <<
solve(f) <<
=ans
(b + (b^2- 4*c*a) ^ (1/2))/ (2*a) –
(b – (b^2- 4*c*a) ^ (1/2))/ (2*a) –
واضح است که یک معادله درجه دوم دارای دو حل می باشد. فرمان solve فرض می کند که هدف حل معادله f(x) =0 است.
برای مثال دیگر می توان معادله زیر را درنظر گرفت:
ln(y) + ln(r-y) = kt + C
برای حل y بر حسب t،r ،k و c می توان از عبارت نمادین f=ln(y)+ln(r-y)-kt-C استفاده کرد.
فرمان solve به متلب سایت سیم پاور می گوید که معادله زیر را حل کند:
f (t , y , r , k , C) = 0
برای محاسبه r بر حسب سایر متغیرها می توان به صورت زیر عمل کرد:
syms t y r k <<
;f=log(y) + log(r-y)-k*t-C <<
r=solve (f, r) <<
r = y + exp(C – log(y) + k*t)
سپس می توان مقدار t را هنگامی که r=5 است، بر حسب سایر پارامترها مانند y،k وC با فرمان های زیر مشاهده کرد:
solve(r-5,t)<<
ans= (log(5-y) – C + log(y))/k
جعبه ابزار حل معادلات به صورت نمادین (FUNTOOL)
یکی از ابزارهای گرافیکی متلب سایت سیم پاور ، ماشین حساب توابع می باشد که در آن تعبیه شده است. برای استفاده از آن می توان با تایپ دستور funtool در پنجره فرمان جزئیات آن را مشاهده کرد. در جدول زیر با برخی از توابع آن آشنا می شوید.
حال با وارد کردن دستور funtool در پنجره فرمان و زدن کلید Enter به اشکال زیر می رسید.
همانطور که ملاحظه می کنید، هر کدام از اشکال بالا تغییرات دو تابع f و g را نشان می دهند.
برای دانلود این آموزش به صورت پی دی اف بر روی لینک زیر کلیک کنید.