[問題]eval結果不同問題

看板MATLAB作者 (cloud)時間9年前 (2015/04/29 21:28), 編輯推噓0(005)
留言5則, 3人參與, 最新討論串1/1
各位版友好, 目前碰到一個eval值不同的問題, 發生在for迴圈的上下,d33331的結果不同於x33331, 目標是希望在解決經過for迴圈後d333311變成x33331的問題, 正確值為d33331那個有虛數的值, 想請問如何解決, 謝謝 以下程式碼----------------- clear all t1=0:9; data2 =exp(-t1/1.8)+4*exp(-t1/9.6)+8*exp(-t1/15.8); N = numel(data2); %number of data n=N; T=zeros(N,n); %basis of cheb T(:,1)=1; %To=1 j=1 for t=0:N-1 T(t+1,2)=1-2*t/(N-1); %T1 j=2 end syms dddddd3 [d33331]=solve(dddddd3^3+dddddd3^2*7+dddddd3*55+99) eval(d33331) % for i=3:n+1 %T2 to Tn i==3==j=2 for i=2:n-1 Aj = i*((N-1)-i+1); Bj = 2*i-1; Cj = (i-1)*((N-1)+i); for t=0:N-1 T(t+1,i+1)=(Bj*((N-1)-2*t)*T(t+1,i)-Cj*T(t+1,i-1))/Aj; end end syms xxx3 [x33331]=solve(xxx3^3+xxx3^2*7+xxx3*55+99) eval(x33331) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.106.71 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1430314126.A.B39.html

04/30 13:54, , 1F
這個變數也太難閱讀了吧...
04/30 13:54, 1F

04/30 14:25, , 2F
一時找不到解決法,目前已用另設function的方式解決
04/30 14:25, 2F

04/30 17:04, , 3F
一堆xxxx dddd 這種程式碼我看過三個月作者也看不懂了吧
04/30 17:04, 3F

05/01 02:10, , 4F
可改其他變數 如L3 G3 不影響
05/01 02:10, 4F

05/01 15:46, , 5F
當然不影響 只是說變數名稱一點也沒意義
05/01 15:46, 5F
文章代碼(AID): #1LGDoEiv (MATLAB)