找回密码
 注册
关于网站域名变更的通知
查看: 365|回复: 1
打印 上一主题 下一主题

分享一个MATLAB求多项式的系数

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-3-20 11:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
matlab求多项式的系数:( [+ K) I+ v% Z+ F

- y/ }, c8 q/ `7 j: h单变量:% r# H# x9 P! m. ~! i8 ?

; y3 O, k' T* G$ o# Bsyms x y" P) p, k7 U8 A  ^: x: z
f1=x^4+2*x+1;
) K: M% i9 c1 |! B' Q% Mf2=y^6+5*y^3+3;, _# |, j1 @/ O1 v, X) w
f3=x^5+2*x^3*y^4+x*y^2+4;
- R. h# y3 N4 v; A( Y: Zc = sym2poly(f1)7 j6 t0 g$ K" E+ S
c =5 C* ?* D# ?8 ]% l" K3 r8 Y, b
    1     0     0     2     1; r) ?  \" W' G" I
>> c = sym2poly(f2)  D. Q& B. B5 o$ Y1 P; Y* f* h
c =
4 ^8 ^( H- B1 Z    1     0     0     5     0     0     3/ R7 x, X4 c" o% y1 n6 c
7 g( q% J( @3 e; v
多变量:
3 P. r( F, ?, O" f& q8 @+ t- C" ]- p/ u+ y
unction coef=poly_coef(f,var). }, {; a5 e2 S1 S
%提取多项式f中指定变量var的系数,将结果赋给数组coef' i6 j. `4 D& t7 @
%f可以是含多变量的多项式$ S: h0 n: C1 I- ^5 L2 E
%var是多项式中指定的变量,可选,默认是x
/ J! M9 v& f4 g8 r. z* K7 U5 g%要用到函数poly_degree()来获得f中指定变量var的最高次幂9 h* l& w$ f3 Z
IF nargin==1: D- Q1 F2 `# g5 t
var=sym('x');% k" g8 l; v0 Z2 j
end% D# I+ @1 |: i# z8 Q1 @1 B
degree=poly_degree(f,var);  _5 o2 q! H4 J. V" o6 s: A8 z5 u
temp_f=f;% g5 k8 C, u8 N* a: x" a
coef(degree+1)=subs(temp_f,var,0);
9 G8 U0 A  h7 @$ Y! n+ v6 Rfor n=1:degree5 D7 }& @, F6 k/ ^- h3 A
temp_f=simple((temp_f-coef(degree+2-n))/var);
6 |; l! a- N2 T3 A, Ccoef(degree+1-n)=subs(temp_f,var,0);3 O! O1 a' ]# S8 Z
end% f6 ]  M, r. R  ^; Z- X3 S
end
0 i" [( g8 K& E7 b. T) m举几个例子:8 M0 A4 ]* {6 m# [4 a6 P
复制内容到剪贴板: p7 F$ ]7 u# a8 h$ ~0 f% A
代码:* l5 [- ~% j  c4 R2 G9 q

$ a$ ~$ d- G  H: ^. e9 B>> syms x y0 ?+ y- E) H7 C7 o
>> f1=x^4+2*x+1;
) t8 q: u2 W/ x>> f2=y^6+5*y^3+3;0 Y1 k% u, h- l; L
>> f3=x^5+2*x^3*y^4+x*y^2+4;9 @& Z, K7 t" Y, o
>> poly_coef(f1)
6 T/ P5 h- r6 e1 |
1 y. B0 u' d# _& {3 Z) D' v) G' V5 D) |ans =
9 z, C; \. ~* |/ p  }  Z6 B
* c8 k; h6 V+ T; r' `0 Q( i                               [1, 0, 0, 2, 1]
" `2 z4 W# I6 _4 ?( D: B>> poly_coef(f1,y)
" I4 G6 k, v7 n) i! h
* Z* M. B1 G# h7 |ans =
, g0 |" d% o! X+ H& {; l$ g
$ c+ `0 ^# g9 X  {( ~* t) m- a                               [ 4       ]
& T  {9 f( V1 M' t6 v" k                               [x   + 2 x + 1]
/ z0 F. t- b1 x( ~9 Y>> poly_coef(f2)$ X9 Q- a) u) M" L
" d$ n5 r, r9 [- w" _
ans =
0 _. f% J) |1 Y9 O0 L" W' f2 p% h3 Q- [, L$ m
                               [ 6    3 ]: ?, Q6 ^  D1 G2 ?2 Z+ z! D
                               [y   + 5 y   + 3]
' D3 X* H6 G, j) `) Y2 G  G>> poly_coef(f2,y)( U6 ^! {3 \9 T7 Q' N
7 }6 J, B, \. c* w
ans =$ E. h# Y9 ^% G* v  T# S
: R, Q! B  w; u. S7 f( Z- d3 u" q$ L1 ~8 F
                            [1, 0, 0, 5, 0, 0, 3]
1 l; o/ M: y# j1 V) V>> poly_coef(f3)
3 h$ a' m+ ?& c
( p8 D, q8 R, X: A9 V8 |ans =" {; ~5 {; z, q6 K- c6 H. C

1 q" K1 ^  w- Z5 ]: N1 r                        [       4    2 ]
  t4 m; W5 q8 [) X0 N4 G) H                        [1, 0, 2 y , 0, y , 4]
. t$ Y1 c5 q) m>> poly_coef(f3,y)# {8 A+ V  v2 h/ }
9 \+ M0 a3 S9 S4 o/ x6 I
ans =. w& X) z- }, @( o

* S/ G7 d5 p* n- p' J                        [ 3          5 ]
0 X/ L4 \7 R8 p                        [2 x , 0, x, 0, x   + 4]

该用户从未签到

2#
发表于 2020-3-20 18:33 | 只看该作者
matlab求多项式的系数。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 01:04 , Processed in 0.140625 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表