作者immortaler (cloud)
看板MATLAB
标题[问题]eval结果不同问题
时间Wed Apr 29 21:28:44 2015
各位版友好,
目前碰到一个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://webptt.com/cn.aspx?n=bbs/MATLAB/M.1430314126.A.B39.html
1F:→ sherees: 这个变数也太难阅读了吧... 04/30 13:54
2F:→ immortaler: 一时找不到解决法,目前已用另设function的方式解决 04/30 14:25
3F:→ jatj: 一堆xxxx dddd 这种程式码我看过三个月作者也看不懂了吧 04/30 17:04
4F:→ immortaler: 可改其他变数 如L3 G3 不影响 05/01 02:10
5F:→ jatj: 当然不影响 只是说变数名称一点也没意义 05/01 15:46