我应该使用牛顿迭代:xi + 1 = (xi-f (xi)) / f ' (xi)来确定根源,但它一直告诉我(错误在MuPAD命令:指数超过矩阵维度。)我做什么来解决这个问题吗?还有这是什么意思?

1 Ansicht(30天)的
函数(根、ea、iter) =问题2(函数、dfunc tr, es,麦克斯特,变长度输入宗量)
如果输入参数个数< 3,错误,结束
如果输入参数个数< 4 | isempty (es), es = 0.0001;结束
如果输入参数个数< 5 | isempty(麦克斯特),麦克斯特= 50;结束
iter = 0;
(1)
ttold = tr;
tr = tr-func (tr) / dfunc (tr);
iter = iter + 1;
如果tr ~ = 0, ea = abs ((tr-ttold) / tr) * 100;结束
如果麦克斯特,ea < = es | iter > =打破,结束
结束
根= tr;
> > y
y =
@ (t) 500 * 4.905 t - * t ^ 2 + 1500
> > dy
dy =
500 - (981 * t) / 100
问题2 (y, dy, 140, 0.00001)
? ? ?错误使用= = > mupadmex
错误MuPAD命令:指数超过矩阵维度。
错误在= = > sym.sym >符号。subsref在1381
B = mupadmex (“symobj:: subsref”、主导者——第1 {:});
错误在= = >问题2 8
tr = tr-func (tr) / dfunc (tr);

Antworten (2)

沃尔特·罗伯森
沃尔特·罗伯森 我10丢。2017
你应该传递函数处理到这个函数。而不是你通过符号表达式。
2 Kommentare
Torsten
Torsten 我11丢。2017
在调用“问题2”之前,集
dy = @ (t) 500 - (981 * t) / 100
dy = 500 - (981 * t) / 100
最好的祝愿
Torsten。

Melden您西奇,嗯祖茂堂kommentieren。


wrewr erwerfsd
wrewr erwerfsd 我2021年11月18日
Bearbeitet:沃尔特·罗伯森 我2021年11月18日
函数(根、ea、iter) =问题2(函数、dfunc tr, es,麦克斯特,变长度输入宗量)
如果输入参数个数< 3,错误,结束
如果输入参数个数< 4 | isempty (es), es = 0.0001;结束
如果输入参数个数< 5 | isempty(麦克斯特),麦克斯特= 50;结束
iter = 0;
(1)
ttold = tr;
tr = tr-func (tr) / dfunc (tr);
iter = iter + 1;
如果tr ~ = 0, ea = abs ((tr-ttold) / tr) * 100;结束
如果麦克斯特,ea < = es | iter > =打破,结束
结束
根= tr;

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

翻译的