【发布时间】:2019-09-05 06:12:34
【问题描述】:
我正在尝试使用具有初始近似值x(1)=0 的定点迭代方法来获得方程f(x)=3x+sin(x)e^x=0 的根的近似值。
停止标准是
|x(k+1)-x(k)|
x(1) = 0;
n = 100;
for k = 1:n
f(k) = 3*x(k) +sin(x(k))-exp(x(k));
if (abs(f(k))<0.0001)
break;
end
syms x
diff(f(k));
x(k+1) = x(1)- (f(k))/(diff(f(k)));
end
[x' f']
这是我得到的错误:错误使用/矩阵尺寸必须 同意。 prac2Q2 中的错误(第 15 行) x(k+1) = x(1)- (f(k))/(diff(f(k)));
【问题讨论】:
-
欢迎来到 SO!... 您为函数
f编写了两个不同的术语,一个是sin( ) * exp( ),另一个是sin( ) - exp( )。 -
谢谢!正确的应该是 sin() - exp()。
-
即使它有效,您也会发现函数的固定点而不是根!检查我的答案。实际上你解方程
3*x +sin(x)-exp(x) = x,但你想解3*x +sin(x)-exp(x) = 0
标签: matlab