Re: [討論] coeffs如何提取係數為零的係數?

看板MATLAB作者 (阿泰斯)時間12年前 (2013/10/08 08:45), 編輯推噓0(003)
留言3則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《candy88257 (阿泰斯)》之銘言: : 例: : a1= : [1,3,4,5,6] : a2= : [x1,x3,x4,x5,x6] : 上面程式自動將係數為0的省略掉了 : 如何將x2加進去? : 變: : a1= : [1,0,3,4,5,6] : a2= : [x1,x2,x3,x4,x5,x6] : 因為其他式子有x2,故x2不加進去我根本沒辦法確定a1(2)到底是不是x2的係數 : 求高手幫助!! : 感謝!! 目前想到的解決辦法: syms x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 y=1*x1+3*x3+4*x4+5*x5+6*x6+9*x9; data=zeros(1,11); for ii=1:11 test=coeffs(y,sym(['x' num2str(ii)])); test2=size(test); if test2(2)==2 data(ii)=test(2); else data(ii)=0; end end 懇求各位幫忙看看是否OK? 感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.130.17.157

10/08 09:53, , 1F
測出來是對的 coeffs第二個輸入可以是字串 sym加不加都行
10/08 09:53, 1F

10/08 09:54, , 2F
還有y如果是非線性的會有問題
10/08 09:54, 2F

10/08 11:10, , 3F
了解! 感謝!!
10/08 11:10, 3F
文章代碼(AID): #1IKrN496 (MATLAB)
文章代碼(AID): #1IKrN496 (MATLAB)