MATLAB与多项式计算
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
'
2.3、多项式求值
y=polyval(p,x) 若x为一数值,则求多项式在该点的值; 如x为一向量或矩阵,则对向量或矩阵中每一个元素求其 多项式的值
2.4、多项式求根 MATLAB提供的roots函数用于求多项式的全部根,其调用 格式为: x=roots(p) 其中p为多项式的系数向量,求得的根赋给向量x,即 x(1),x(2),x(3)….x(n)分别代表多项式的n个根。
数据序列求和与求积的函数是sum和prod,它们用法类似。
prod(x)/sum(x):返回向量x各元素的积/和; prod(A)/sum(A):返回一个行向量,其中第i个元素是A 的第i列的元素的积/和; prod(A,dim)/sum(A,dim):dim取1时,该函数和 prod(A)/sum(A)完全相同; dim=2时,该函数返回一个列向量,其中第i个元素是A的
第i行元素的积/和。
1. 3、平均值和中值 mean(x):返回向量x的算术平均值;
mean(A):返回一个行向量,其第i个元素是矩阵A的第i
列的算术平均值;
mean(A,dim):dim取1时,该函数和 mean(A)完全相同;
dim=2时,该函数返回一个列向量,其中第i个元素是A 的第i行元素的算术平均值。 median(x),median(A),median(A,dim),为求向量或 矩阵的中值函数。
p( x) a0 x n a1 x n1 a2 x n2 ....... an1 x an
在MATLAB中,p(x)表达式为向量形式:
[a0 , a1, a2 ,........,an1, an ]
2.1多项式四则运算
1.乘法运算: 函数conv(P1,P2)用于求多项式P1和P2的乘积。这里P2和 p1是两个多项式向量。 2.除法运算: 函数[Q,r]=deconv(p1,p2)用于对多项式p1和p2做除法 运算;Q返回多项式p1除以p2的商式,r返回p1除p2的余 式。这里Q和r仍为多项式系数。
最大值的序号。
1.1.3两个向量或矩阵对应元素的比较
a.U=max(A,B):A和B是两个同类型的矩阵或向量,U 与A和B也是两个同类型的矩阵或向量,U的每个元素等于
A,B对应元素的较大者。
b.U=max(A,n):n为一个标量,U与A是同型,U的每 个元素等于A对应元素和n中的较大者。
1. 2、和与积
1.1.2 求矩阵的最大值和最小值
有三种调用格式: max(A):返回一个行向量,为矩阵每列的最大值; [y,I]=max(A):返回一个行向量给向量y,为矩阵每列 的最大值,最大值的序号存入I。 [y,I]=max(A,[],dim):dim取1时,该函数和 max(A)完 全相同;dim=2时,该函数返回一个行向量,I为每行
g ( x) x 1.3333 x 1.66667 x 2.4x 1.66667
5 3 2
1. 4、累加和与累乘积 累加:
yi xn
i 1
n
n
i (0,1,2,....,n)
累乘积: y i x n
i 1
i (0,1,2,....,n)
cumsum(x):返回向量x累加和向量; cumsum(A):返回一个矩阵,其中第i列为A的第i列累加和向量; cumsum(A,dim) cumprod(x), cumprod(A), cumprod(A,dim)
:
求 P Q 的导函数;
[ p, q] polyder ( P, Q)
:求P/Q的导函数.导函数的分子存入p,分母存入q。 上述函数中,参数P,Q是多项式的向量表示,其结果p,q 也是多项式的向量表示。
1 例:求 2 的导数 x 5
2x 结果: f ( x) 4 x 10 x 2 25
第二章
MATLAB与多项式计算
本章介绍MATLAB数据统计处理、数据插值、多项式拟 合以及多项式计算。
一、数据统计处理
1. 1、最大值和最小值 MATLAB提供的求数据序列的最大值和最小值函数分别
是max源自文库min,这两个函数的调用格式和操作过程类似。
1.1.1 求向量的最大值和最小值 有两种调用格式: y=max(x) 函数返回向量x的最大值存入y,若x中包含有复数 元素,则按模取最大值; [y,I]=max(x) 函数返回向量x的最大值存入y,最大值的序号存 入I。 对行向量和列向量操作是相同的。 求向量最小值的函数是min.
例 1 :求(x3 2x 2 5x) (6 x 1 )
例2:求(x 4 8x3 10 ) (2 x 2 x 3)和 (x 4 8x3 10 ) (2 x 2 x 3)的值
2.2多项式的导函数
p polyder ( P) :求多项式P的导函数; p polyder ( P, Q)
例:求多项式 x 4 8x3 10的根
若已知多项式的全部根,即可以用poly函数建立多项 式,其调用格式为:p=poly(x)。即poly(x)建立以x为其 根的多项式,且将该多项式的系数赋给向量p。
例:已知f ( x) 3 x 5 4 x 3 5 x 2 7.2 x 5, 求f ( x) 0的全部根;并由 f ( x) 0的根构造一个多项式 g ( x) 与f ( x)进行比较。
例:求s 1 2 22 23 210的值
1. 4、排序 sort(x)函数返回一个对向量x中的元素按升序排列的新向量;
[y,I]=sort(A,dim)对矩阵排序
Y为排序后的矩阵;
I为记录y中元素在A中的位置;
二、多项式计算
在MATLAB中,n次多项式用一个长度为n+1的行向量表示, 缺少的幂次项系数为0。如果n次项的表达式为:
2.3、多项式求值
y=polyval(p,x) 若x为一数值,则求多项式在该点的值; 如x为一向量或矩阵,则对向量或矩阵中每一个元素求其 多项式的值
2.4、多项式求根 MATLAB提供的roots函数用于求多项式的全部根,其调用 格式为: x=roots(p) 其中p为多项式的系数向量,求得的根赋给向量x,即 x(1),x(2),x(3)….x(n)分别代表多项式的n个根。
数据序列求和与求积的函数是sum和prod,它们用法类似。
prod(x)/sum(x):返回向量x各元素的积/和; prod(A)/sum(A):返回一个行向量,其中第i个元素是A 的第i列的元素的积/和; prod(A,dim)/sum(A,dim):dim取1时,该函数和 prod(A)/sum(A)完全相同; dim=2时,该函数返回一个列向量,其中第i个元素是A的
第i行元素的积/和。
1. 3、平均值和中值 mean(x):返回向量x的算术平均值;
mean(A):返回一个行向量,其第i个元素是矩阵A的第i
列的算术平均值;
mean(A,dim):dim取1时,该函数和 mean(A)完全相同;
dim=2时,该函数返回一个列向量,其中第i个元素是A 的第i行元素的算术平均值。 median(x),median(A),median(A,dim),为求向量或 矩阵的中值函数。
p( x) a0 x n a1 x n1 a2 x n2 ....... an1 x an
在MATLAB中,p(x)表达式为向量形式:
[a0 , a1, a2 ,........,an1, an ]
2.1多项式四则运算
1.乘法运算: 函数conv(P1,P2)用于求多项式P1和P2的乘积。这里P2和 p1是两个多项式向量。 2.除法运算: 函数[Q,r]=deconv(p1,p2)用于对多项式p1和p2做除法 运算;Q返回多项式p1除以p2的商式,r返回p1除p2的余 式。这里Q和r仍为多项式系数。
最大值的序号。
1.1.3两个向量或矩阵对应元素的比较
a.U=max(A,B):A和B是两个同类型的矩阵或向量,U 与A和B也是两个同类型的矩阵或向量,U的每个元素等于
A,B对应元素的较大者。
b.U=max(A,n):n为一个标量,U与A是同型,U的每 个元素等于A对应元素和n中的较大者。
1. 2、和与积
1.1.2 求矩阵的最大值和最小值
有三种调用格式: max(A):返回一个行向量,为矩阵每列的最大值; [y,I]=max(A):返回一个行向量给向量y,为矩阵每列 的最大值,最大值的序号存入I。 [y,I]=max(A,[],dim):dim取1时,该函数和 max(A)完 全相同;dim=2时,该函数返回一个行向量,I为每行
g ( x) x 1.3333 x 1.66667 x 2.4x 1.66667
5 3 2
1. 4、累加和与累乘积 累加:
yi xn
i 1
n
n
i (0,1,2,....,n)
累乘积: y i x n
i 1
i (0,1,2,....,n)
cumsum(x):返回向量x累加和向量; cumsum(A):返回一个矩阵,其中第i列为A的第i列累加和向量; cumsum(A,dim) cumprod(x), cumprod(A), cumprod(A,dim)
:
求 P Q 的导函数;
[ p, q] polyder ( P, Q)
:求P/Q的导函数.导函数的分子存入p,分母存入q。 上述函数中,参数P,Q是多项式的向量表示,其结果p,q 也是多项式的向量表示。
1 例:求 2 的导数 x 5
2x 结果: f ( x) 4 x 10 x 2 25
第二章
MATLAB与多项式计算
本章介绍MATLAB数据统计处理、数据插值、多项式拟 合以及多项式计算。
一、数据统计处理
1. 1、最大值和最小值 MATLAB提供的求数据序列的最大值和最小值函数分别
是max源自文库min,这两个函数的调用格式和操作过程类似。
1.1.1 求向量的最大值和最小值 有两种调用格式: y=max(x) 函数返回向量x的最大值存入y,若x中包含有复数 元素,则按模取最大值; [y,I]=max(x) 函数返回向量x的最大值存入y,最大值的序号存 入I。 对行向量和列向量操作是相同的。 求向量最小值的函数是min.
例 1 :求(x3 2x 2 5x) (6 x 1 )
例2:求(x 4 8x3 10 ) (2 x 2 x 3)和 (x 4 8x3 10 ) (2 x 2 x 3)的值
2.2多项式的导函数
p polyder ( P) :求多项式P的导函数; p polyder ( P, Q)
例:求多项式 x 4 8x3 10的根
若已知多项式的全部根,即可以用poly函数建立多项 式,其调用格式为:p=poly(x)。即poly(x)建立以x为其 根的多项式,且将该多项式的系数赋给向量p。
例:已知f ( x) 3 x 5 4 x 3 5 x 2 7.2 x 5, 求f ( x) 0的全部根;并由 f ( x) 0的根构造一个多项式 g ( x) 与f ( x)进行比较。
例:求s 1 2 22 23 210的值
1. 4、排序 sort(x)函数返回一个对向量x中的元素按升序排列的新向量;
[y,I]=sort(A,dim)对矩阵排序
Y为排序后的矩阵;
I为记录y中元素在A中的位置;
二、多项式计算
在MATLAB中,n次多项式用一个长度为n+1的行向量表示, 缺少的幂次项系数为0。如果n次项的表达式为: