错误使用fzero有趣(第184行)必须是一个函数,一个有效的特征向量表达式,或一个内联函数对象。这里的问题是什么?

6视图(30天)
vi = 600;
v = 0:0.01:1000;
sig =输入(“输入σ值:”);
w =输入(“输入机翼的重量:”);
f = @ v (v) 0.01 *团体*。^ 2 +(0.95 /团体)* ((w ^ 2)。/ (v . ^ 2));
fvi = f (vi);
根= fzero (fvi、vi)
我不知道为什么我遇到此错误,有人能帮助我。

答案(1)

1月
1月 2021年10月1日
编辑:1月 2021年10月1日
v是函数的变量。你不需要你一个向量。
fzero预计一个函数处理,但f (vi)是一个数字。
vi = 600;
sig =输入(的输入σ值:);
w =输入(“翼:输入重量”);
f = @ v (v) 0.01 *团体*。^ 2 +(0.95 /团体)* ((w ^ 2)。/ (v . ^ 2));
根= fzero (f, vi)
1评论
Tripcony的政党
Tripcony的政党 2021年10月1日
是的,我意识到这也,固定几小时前:
vi = 500;
sig =输入(“输入σ值:”);
w =输入(“输入机翼的重量:”);
f = @ (v) 0.02 *团体* v -(1.90 /团体)* ((w ^ 2) / (v ^ 3));%引出。的阻力Eqn
dfdv = @ (v) 0.02 *团体+(5.70 /团体)* ((w ^ 2) / (v ^ 4));%引出的两倍。的阻力Eqn
fvi = f (vi);
mi = dfdv (vi);
而abs (fvi) > 0
vi_new = vi - fvi / mi;
vi = vi_new
fvi = f (vi);
mi = dfdv (vi);
结束
根= fzero (600)

登录置评。

类别

找到更多的在机翼的工具帮助中心文件交换

社区寻宝

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

开始狩猎!