EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
matlab求多项式的系数:1 m9 N/ C& g) @* |6 M! Y# `
( B: W* g& o/ |+ l9 h' F& H7 f单变量:
j' Z$ y! ]( K. T. P1 A- [" S0 c+ y7 P2 e0 k" f5 o* w
syms x y
9 w- x" E: {5 e g9 i) Rf1=x^4+2*x+1;) p( m) V! q# I' J& u8 G! \
f2=y^6+5*y^3+3;
# }: z! i. }8 T- R- z9 @f3=x^5+2*x^3*y^4+x*y^2+4;
4 y! L- z7 R$ M: |, zc = sym2poly(f1)6 F' L6 H' A: T5 q( ^( k; Q( A
c =
& d/ ]1 D- @5 v* J( ? 1 0 0 2 1! \) J6 g" t. m
>> c = sym2poly(f2). w3 f G* a% o" ^ v* I0 g* g
c =
+ E$ G! p% Y; `/ p% e g: b$ M 1 0 0 5 0 0 3- M4 X6 D; ^ r3 y s5 o6 ^
1 D; O9 Q, p. m& Y
多变量:
3 v6 ]$ y7 B3 }0 U, ~% J) t. S; z5 r
unction coef=poly_coef(f,var)4 H7 i$ X: Q% u
%提取多项式f中指定变量var的系数,将结果赋给数组coef
. g% I. C7 [9 S& @%f可以是含多变量的多项式; P, _& e# f& J( t8 K s
%var是多项式中指定的变量,可选,默认是x
% n6 \7 R' s7 e b; C$ U9 {%要用到函数poly_degree()来获得f中指定变量var的最高次幂
, f! f) a- W4 E* ]IF nargin==1
" n6 ~* A3 t2 B' @var=sym('x');5 K6 s! }6 h( Q; Z1 G! t
end
- _' _6 @' o8 i' B/ `' u; ^degree=poly_degree(f,var);
! |4 w( f! N& j& i3 W* [( Vtemp_f=f;
5 m$ m8 r. @6 T8 _9 [coef(degree+1)=subs(temp_f,var,0);
* [- |8 D" O& I+ ?4 Y1 sfor n=1:degree( J4 A" U' h4 u p) X
temp_f=simple((temp_f-coef(degree+2-n))/var);
- n$ W: q! m; y5 h) C4 Zcoef(degree+1-n)=subs(temp_f,var,0);
/ y' A& l6 m* S2 _! Q0 L9 oend
1 u8 r1 R" b# B. \4 u* d- s- cend8 x- K% {. [/ S u# F% u
举几个例子: J/ q0 @8 l/ N
复制内容到剪贴板+ u7 r. _! [' R8 q' s) R. D4 o
代码:2 c% m# ^; V; v: ?" ?4 ^# F
+ e" g( `& |1 R/ m- v" p>> syms x y/ N' P# s$ w7 Z. ?( |% b/ A
>> f1=x^4+2*x+1;
- S# ?; i) c4 y2 L3 h+ e>> f2=y^6+5*y^3+3;8 U; y6 s+ I+ ~1 W* D
>> f3=x^5+2*x^3*y^4+x*y^2+4;
& g; a! Z B7 p, {# q>> poly_coef(f1)
) H; { G5 ]9 \. [, j% ^, ^; t# h
ans =# I; |, F4 M% }# M* j4 O
7 {2 a2 A( C' u3 a7 C [1, 0, 0, 2, 1]
! Q4 a! `) z2 G. T$ P>> poly_coef(f1,y)
1 z1 a" b7 [" F9 ? G) |9 M" Z, T8 K& ]1 l5 v
ans =
0 p: ~+ a! x9 J$ l& G! G; \) T
; x" w9 G/ ]# M" a6 C" w+ ^; | [ 4 ]; a3 n5 R4 H: I* a5 p3 ^3 M
[x + 2 x + 1]
1 X: G" R9 r8 N5 f2 n- d. s>> poly_coef(f2). W" l0 c" \2 E* \
- l8 t; D+ D: Q- w2 r o% Zans =) c# ^; D* @2 M
3 d) e5 ^8 f5 Y9 I( n
[ 6 3 ]; Q- s7 z8 j1 X
[y + 5 y + 3]
, n$ ^, M t* a* v% M% t4 f>> poly_coef(f2,y)
7 S e y' F3 E0 A# T
( d5 ?# r- {! zans =* }$ I" S# {/ F$ R( j
" [+ m& {+ A% k5 Z: a+ e
[1, 0, 0, 5, 0, 0, 3]
0 U: X$ w4 ?: E/ J3 C0 ^+ b>> poly_coef(f3)
; ]! o/ H5 j. Z4 X5 _
0 P# X; D$ A7 F2 ^7 Yans =, I6 b9 n7 r* X
- j e9 S' W1 l E" ?# V, L [ 4 2 ]* z7 \) H+ g2 \) F2 H8 r
[1, 0, 2 y , 0, y , 4]
2 h" b' `* f2 e- N>> poly_coef(f3,y) [8 r4 H' u6 V, S$ T. o) I/ {
0 }- K; X X% j! t3 d9 }( W: Bans =- ^9 o2 Y' ^- p- l! w* }9 F% F
' ]; I( Y0 d# B/ j [ 3 5 ]
+ R- s8 E$ W3 ?* c [2 x , 0, x, 0, x + 4] |