【发布时间】:2019-10-02 23:41:52
【问题描述】:
我的函数代码有一些问题。主要思想是获取参数SI(主要未知),其中方程Q_cal-Q=0。有人可以帮帮我吗?
非常感谢。
P=1.94;
Q=1.09;
P5=1.08;
fc=0;
lambda=0.2;
Ts=24;
[SI]=singhandyu(P,Q,P5,lambda,Ts,fc);
function [SI] =singhandyu(P,Q,P5,lambda,Ts,fc)
Fc=fc.*Ts;
f=@(SI)((P5-0.2*SI)*SI)./(P5+0.8*SI);
M=@(SI)max(f(SI),0);
S=@(SI)(SI-M(SI));
Ia=@(SI)lambda.*S(SI);
Q_cal=@(SI)((P-Ia(SI)-Fc).*(P-Ia(SI)-Fc+M(SI)))./(P-Ia(SI)-Fc+M(SI)+S(SI));
H=@(SI)Q_cal(SI)-Q;
S0=0;
SI_sol=fsolve(H,S0)
end
【问题讨论】:
-
请说明问题所在。见How to Ask。
-
Matlab 显示以下错误:未定义运算符 '-' for input arguments of type 'function_handle'。
-
您能否以MCVE 的形式展示您如何调用该函数,因此定义所有输入(如果需要,可以使用一些随机数据)。
-
在上半部分,我添加了调用函数及其值的方式。