为什么表达式的值不以数字格式显示?
Why are the values of the expression not displayed in numeric format?
我有一个表达式(信号),我想使用循环获得某些结果。
原配方
代码:
Ak=1.2;
fk=0.0123;
jK=0.321;
alphaK=-0.01;
T=1;
#Signal
#xi=1.2*cos(0,0123*2*pi*(i-1)+0.321)*eps(–0.01*i);
for i=1:4
x(i)=Ak*cos(fk*2*pi*(i-1)+jK)*eps(alphaK*i);
end
结果采用这种格式
x = 1.9753e-18
x = 1.9753e-18 3.8375e-18
x = 1.9753e-18 3.8375e-18 3.7013e-18
x = 1.9753e-18 3.8375e-18 3.7013e-18 7.0863e-18
但正确的结果是这样的:
如何更改格式以获得正确的显示?
替换
x(i)=Ak*cos(fk*2*pi*(i-1)+jK)*eps(alphaK*i);
和
x(i)=Ak*cos(fk*2*pi*(i-1)+jK)*exp(alphaK*i);
你会得到一个非常接近预期的结果
x =
1.12737 1.08417 1.03531 0.98119
eps 不是指数函数
octave:3> eps
ans = 2.2204e-16
octave:4> eps(x)
ans =
2.2204e-16 2.2204e-16 2.2204e-16 1.1102e-16
octave:5> exp(x)
ans =
3.0875 2.9570 2.8160 2.6676
我有一个表达式(信号),我想使用循环获得某些结果。
原配方
代码:
Ak=1.2;
fk=0.0123;
jK=0.321;
alphaK=-0.01;
T=1;
#Signal
#xi=1.2*cos(0,0123*2*pi*(i-1)+0.321)*eps(–0.01*i);
for i=1:4
x(i)=Ak*cos(fk*2*pi*(i-1)+jK)*eps(alphaK*i);
end
结果采用这种格式
x = 1.9753e-18
x = 1.9753e-18 3.8375e-18
x = 1.9753e-18 3.8375e-18 3.7013e-18
x = 1.9753e-18 3.8375e-18 3.7013e-18 7.0863e-18
但正确的结果是这样的:
如何更改格式以获得正确的显示?
替换
x(i)=Ak*cos(fk*2*pi*(i-1)+jK)*eps(alphaK*i);
和
x(i)=Ak*cos(fk*2*pi*(i-1)+jK)*exp(alphaK*i);
你会得到一个非常接近预期的结果
x =
1.12737 1.08417 1.03531 0.98119
eps 不是指数函数
octave:3> eps
ans = 2.2204e-16
octave:4> eps(x)
ans =
2.2204e-16 2.2204e-16 2.2204e-16 1.1102e-16
octave:5> exp(x)
ans =
3.0875 2.9570 2.8160 2.6676