EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
matlab求多项式的系数: N2 \- S4 g z' G# Y: O
! k: P h4 x) [单变量:. o0 F( G2 h/ u
+ H2 m- z s& ^1 ~$ usyms x y) G0 N9 [0 r8 e4 s) G# {7 p$ U
f1=x^4+2*x+1;
; W; i% P& l' s; ^/ pf2=y^6+5*y^3+3;
# x) ^& y3 Z1 W4 Cf3=x^5+2*x^3*y^4+x*y^2+4;
/ _ M0 Z# I8 J5 V1 Pc = sym2poly(f1)
( V/ a9 @. R3 E; r% N Xc =$ O9 t2 ?% j$ c' Y+ ~
1 0 0 2 17 U: D8 j9 y5 f% ^9 |* Y* }7 ~
>> c = sym2poly(f2)6 Z4 i1 q* ?5 Q& F: W" k' h
c =+ \+ ]; `) l" ]+ _. Z m" T* d) }
1 0 0 5 0 0 3
- w+ ^' z9 @; |* `# w. J; z H$ o2 G* z
多变量:
4 r& o+ Q8 X- e' T- l
3 v$ D( |4 n1 h8 q! d: W0 Gunction coef=poly_coef(f,var)+ F9 n4 j3 h+ s2 s7 ]" q
%提取多项式f中指定变量var的系数,将结果赋给数组coef8 B2 {' e; F! G+ d1 f& l5 F/ ~; V
%f可以是含多变量的多项式: p7 i' s- `( h9 N
%var是多项式中指定的变量,可选,默认是x9 B$ j4 u$ K5 G) N, r: q
%要用到函数poly_degree()来获得f中指定变量var的最高次幂
e4 N9 R: m$ U; p: Y# x- o2 zIF nargin==1# K! u- @& k: y8 k6 g$ |
var=sym('x');, ~- e U4 Q* H# c
end9 F- L. Q& B! w# O
degree=poly_degree(f,var);( A: r2 S k4 O, D* ^: E* a9 D& q b' v$ w
temp_f=f;: S2 u# p8 w8 G1 _ m
coef(degree+1)=subs(temp_f,var,0);1 Q9 r; O+ ?6 ~" K% G2 Y
for n=1:degree
( r# h% \+ \. G+ k$ d' Ztemp_f=simple((temp_f-coef(degree+2-n))/var);6 J( O G. n% O7 `) L7 g& N
coef(degree+1-n)=subs(temp_f,var,0);
`0 |& @# P9 `0 r8 S2 o oend
2 c! W% Q I! \$ c9 X0 [7 d0 send
& u& e+ b& j8 ~举几个例子:6 Z+ c, D |( V
复制内容到剪贴板
0 e" `6 j4 F J% y8 P. T1 t代码:4 X" u( y) o, I! s* [
# J# `/ G6 A6 s, J6 }5 R2 ^8 b1 ~>> syms x y
# F( c3 ^/ G& |1 K; K>> f1=x^4+2*x+1; |/ f1 p1 r" k2 j3 M0 r
>> f2=y^6+5*y^3+3;7 {, [: f4 }& y9 A& C5 o
>> f3=x^5+2*x^3*y^4+x*y^2+4;$ k, B, s: F- I
>> poly_coef(f1)$ i4 }6 b. N) ?6 w6 `: E
* T$ f! U* [9 ]0 |ans =
x0 ]2 Y$ d# E9 M o/ y8 I y6 b* R H2 Q( ~
[1, 0, 0, 2, 1]: O, f+ I9 F3 H, q M" r' _. X
>> poly_coef(f1,y)
( \9 w( I) T5 [7 k. p+ G( [" D0 {! {: C a) w
ans =9 y' }* l0 Y/ w/ i! _, C1 U# C
1 J' h+ f6 z, F) z. C
[ 4 ]
7 f% X: d: j! O: z! O% r6 D8 l [x + 2 x + 1]
. b4 d: G5 E, T>> poly_coef(f2)) [+ Q! {0 A% {; F% S* u
5 h" b+ Q. I# i6 ]9 r
ans =! a5 Q% l8 w' n! ]0 |0 ]+ o9 k
! c# E* {# P. @1 @5 P
[ 6 3 ]0 j6 x1 O. e1 K
[y + 5 y + 3]
4 C& \6 v. o2 x. R2 O2 B>> poly_coef(f2,y)4 L+ r: z7 M3 z ?/ {
5 M/ R$ h& X# D( I0 q2 F4 U. r4 Eans =7 n8 o' z0 L/ d
+ |, y% `# h. e' v2 T
[1, 0, 0, 5, 0, 0, 3] ?( S9 a) Z z) f% f4 j. m7 E
>> poly_coef(f3)2 D% u& {+ j& q/ d- X
( }' [# w3 o$ G2 c
ans =( K9 d4 e" ^1 B! h7 c
7 x7 g4 u0 E1 `# B5 j2 G2 B3 @ [ 4 2 ]& p9 e& [$ |$ ]. T- z; e W$ M' y E
[1, 0, 2 y , 0, y , 4]5 K3 x- c% N. W$ L) l$ H2 n0 L
>> poly_coef(f3,y)+ h9 y+ G( x, D( U( T
9 {- r8 n& [' t
ans =( @, S s. ?9 V4 ~6 S
2 ~1 n y; k6 h% m* Z4 C4 m7 r8 x
[ 3 5 ]
, U" s5 e! w, N7 h ^) e [2 x , 0, x, 0, x + 4] |