چند جمله ايها و درونيابي

در اين بخش خلاصه اي از توابع چند جمله اي در مطلب و نحوه ايجاد و بكارگيري چند جمله ايها ، محاسبه ريشه هاي يك چند جمله اي ، عمليات رياضي برروي چند جمله ايها، محاسبه مشتقات آن ، منطبق كردن يك چند جمله اي بر اساس يكسري داده ها خواهيم پرداخت .

خلاصه اي از توابع چند جمله اي ها:

مطلب داراي يكسري توابع استاندارد براي چند جمله ايها مي باشد كه در دايركتوري polyfun قرار دارد در جدول زير اين توابع را مشاهده مي كنيد :

 

تابع

توضيح

conv

ضرب چند جمله ايها

deconv

تقسيم چند جمله ايها

poly

ايجاد يك چند جمله اي با ريشه هاي آن

polyder

مشتق چند جمله اي

polyfit

چند جمله اي منطبق بر منحني

polyval

ارزيابي چند جمله اي(محاسبه مقدار در يك نقطه مشخص)

polyvalm

ارزيابي چند جمله اي ماتريس

residue

باقيمانده تقسيم يك چند جمله اي

roots

محاسبه ريشه هاي يك چند جمله اي

 

علاوه بر توابع فوق جعبه ابزار پارامتريك (symbolic ) مطلب نيز شامل توابعي براي چند جمله ايها ميباشد كه در فصل مربوطه بيان خواهد شد

براي بيان يك چند جمله اي كافيست ضرايب متغيرآن را بترتيب از بالاترين توان به سمت توان صفر در يك ماتريس سطري بصورت آرايه اي بنويسيد :

به عنوان نمونه معادل  

p(x)=x^3-2x-5

در مطلب عبارت زير است :

             P=[1 0 -2 -5];

ريشه هاي چند جمله اي :

تابع roots ريشه هاي يك چند جمله اي را محاسبه مي نمايد :

r=roots(p)

r=

   2.0946

-1.0473+  1.1359i

-1.0473-  1.1359i

 

ميتوانيد با داشتن ريشه ها اقدام به ايجاد بك چند جمله اي نمائيد تابع مربوطه poly ميباشد :

p2=poly(r)

p2=

   1 8.8818e-16 -2 -5

مشاهده ميكنيد كه دقيقا همان چند جمله اي قبلي بدست نيامد براي اينكه به چند جمله اي قبلي برسيد بايستي محدوده خطا تعريف نمائيد درواقع درمثال فوق عدد  است كه درمحاسبات بيان ميكنيد كه مثلااز  كمتر را معادل با صفر در نظر بگيريد .

 

معادله مشخصه :

تابع poly را ميتوان براي تعيين معادله مشخصه يك ماتريس نيز بكاربرد :

A=[1.2 3 -0.9;5 1.75 6;9 0 1];

poly(A)

ans =

       1.0000  -3.9500  -1.8500  -163.2750

با اعمال دستور roots بر چند جمله اي بدست آمده فوق ميتوان مقادير ويژه يك ماتريس (eigenvalues ) را محاسبه نمود ، و با بدست آوردن مقادير ويژه ميتوان بردارهاي ويژه ماتريس رابدست آورد .

 

برازش يك چند جمله اي :

ميتوانيم با استفاده از دستور polyval مقدار يك چند جمله اي را در يك نقطه ويا نقاط مشخص بدست آوريم ، مثلا معادله  را در نظر بگيريد مقادير اين معادله درجه سه را در نقطه 5 بدست آوريد :

دستور عملكرد تابع بصورت polyval(p,x) كه درآن p  نام معادله و x مقدار نقطه مورد نظر است كه در مثال فوق بصورت زير ميباشد :

polyval(p,5)

ans =

       110

ميتوان مقدار يك معادله را در چندين نقطه همزمان بدست آورد ، بدين صورت كه كافيست نقاط مورد نظر را در يك ماتريس نوشته و نام ماتريس را بجاي نقطه مورد محاسبه در رابطه قرار دهيم :

x=[2 4 5;-1 0 3;7 1 5];

y=polyval(p,x)

 

y=

  • 179 439
  • 81 143
  • 253 639

 

ضرب و تقسيم  در نرم افزار مطلب:

با بكارگيري توابع con و deconv مي توان بترتيب عمل ضرب و تقسيم مابين چند جمله ايها انجام داد :

دو معادله درجه دو  را در نظر بگيريد :

a=[1 2 3];

b=[4 5 6];

c=conv(a,b)

 

c=

  • 13 28  27  18

تقسيم عبارت فوق بر (a(s  :

[q,r]=deconv(c,a)

 

q=

  • 5 6

r=

  • 0 0  0  0

 

انجام پروژه با نرم افزار مطلب پذیرفته می شود

 

مشتق چند جمله ايها :

تابع polyder در مطلب مشتق يك چند جمله اي را محاسبه مي نمايد :

 p=1 0 -2 -5];

q=polyder(p)

 

q=

   3   0   -2

تابع فوق مي تواند همزمان با ضرب دو چند جمله اي نيز عمل نمايد بطور مثال در زير a*b محاسبه شده و سپس مشتق آن محاسبه مي گردد :

a=[1 3 5];

b=[2 4 6];

c=polyder(a,b)

c=

    8  30  56  38

 

مي توان همزمان با عمل مشتق گيري نتيجه را به دو چند جمله اي تقسيم نمود :

[q,d]=polyder(a,b)

q =

    -2   -8   -2

d =

    4   16   40   48   36

 

انجام پروژه با نرم افزار مطلب پذیرفته می شود

چند جمله اي منطبق بر منحني  در matlab:

با اعمال تابع polyfit  در نرم افزار متلب مي توان ضرايب چند جمله اي كه از يك سري نقاط مشخص مورد نظر عبور ميكند را بدست آورد روند عملكرد اين تابع براساس روش كمترين مربعات ميباشد ، ساختار كلي اين تابع بفرم : polyfit(x,y,n)                       

كه در آن x,y مختصات نقاط مورد نظر و n درجه چند جمله اي ميباشد .

بطور مثال فرض كنيد ميخواهيم يك معادله درجه سه از نقاط به مختصات x,y زير عبور دهيم :

x=[1 2 3 4 5];  y=[5.5 43.1 128 290.7 498.4];

چند جمله اي منطبق عبارتست از :

p=polyfit(x,y,3)

 

p=

   -0.1917   31.5821   -60.3262   35.3400

برنامه ترسيمه چند جمله اي  بدست آمده همراه با نمايش نقاط مورد نظر را در شكل زير مشاهده ميكنيد :

clc;

clear all;

x=[1 2 3 4 5];

y=[5.5 43.1 128 290.7 498.4];

p=polyfit(x,y,3)

x2=1:.1:5;

y2=polyval(p,x2);

plot(x,y,'o',x2,y2)

grid on

پخش چند جمله ايها به تقسيمات جداگانه :

تابع residue در متلب تقسيم دو چند جمله اي را به مجموع تقسيمات تبديل مي كند بطوريكه از رياضيات بخاطر داريد مي توانيم:

مثال : براي تقسيم

b=[-4 8];

a=[1 6 8];

[r,p,k]=residue(b.a)

r=

   -12

     8

p=

   -4

   -2

k=

[]

 

انجام پروژه با نرم افزار مطلب پذیرفته می شود

 

دیدگاه خود را بنویسید

دیدگاه پس از تائید مدیریت منتشر می شود.