Các phép tính đối với đa thức

Một phần của tài liệu Một số phương pháp tìm đa thức nội suy và ứng dụng (Trang 37 - 38)

3 LẬP TRÌNH TÍNH ĐA THỨC NỘI SUY VÀ ỨNG DỤNG

3.1.4 Các phép tính đối với đa thức

Tìm nghiệm của đa thức:Bài toán thường gặp trong thực tế là tìm nghiệm của đa thức, nghĩa là tìm giá trị của biến để đa thức bằng không. MATLAB cung cấp những công cụ tiện ích để giải quyết nhanh chóng bài toán này, đồng thời MATLAB còn cung cấp những công cụ để tính toán đa thức. Trong MATLAB một đa thức được biểu diễn bằng một vecto hàng các hệ số với bậc giảm dần. Ví dụ đa thức: x3 −3x2+ 15x+ 6 được nhập vào như sau:

>> p=

1 −3 15 6

p=

1 −3 15 6

Để tìm nghiệm của đa thức này, ta sử dụng hàm “roots”:

>> r=roots(p)

r=

1.6847 + 3.6615i

1.6847−3.6615i

−0.3694 + 0.0000i

Trong MATLAB cả đa thức và các nghiệm của nó đều là vecto nên MATLAB ngầm quy ước rằng đa thức là vecto hàng, còn các nghiệm của đa thức là vecto cột. Ngược lại, nếu biết trước nghiệm của một đa thức, ta có thể tìm được đa thức đó với lệnh “poly”. Ví dụ:

>> P =poly(r) % với r là vecto chứa nghiệm của P

P =

1 −3 15 6

Tính giá trị của đa thức:Để tính giá trị của đa thức tại một điểm, ta dùng lệnh “polyval”. Ví dụ, để tính giá trị của đa thức P tại x=x0 ta nhập lệnh sau:

>>y=polyval(P, x0)

Nhân đa thức: Để thực hiện nhân hai đa thức (hay nhân hai ma trận) ta dùng lệnh “conv”. Ví dụ, nhân hai đa thức:

P(x) = x3−3x2+ 15x+ 6 và Q(x) = 9x2+x−8 Ta thực hiện như sau:

>> p= 1 −3 15 6 ;q= 9 1 −8 ; >> r=conv(p, q) r= 9 −26 124 93 −114 −48

Như vậy tích của hai đa thức trên là đa thức:

R(x) = 9x5−26x4+ 124x3−93x2−114x−48.

Một phần của tài liệu Một số phương pháp tìm đa thức nội suy và ứng dụng (Trang 37 - 38)