看了你回答的matlab问题,很厉害,想请教你个问题 出现??? Input argument "x" is undefined.是什么原因

2024-12-12 10:38:32
推荐回答(2个)
回答1:

你好,原程序倒数第二个式子错误,少写个乘号。
请将
function eq=myfun(x)
p1=0.998*10^3;
p2=2.7*10^3;
ct2=3.08*10^3;
cl2=6.26*10^3;
cl1=1.483*10^3;
eq=((x/ct2)^2-2)^2-4*sqrt(1-x^2/cl2^2)*sqrt(1-x^2/ct2^2)+p1/p2*(x/ct2)^4*sqrt(1-x^2/cl2^2)/sqrt(1-x^2/cl1^2);
保存为myfun.m文件,
然后在命令窗口输入x=fsolve(@myfun,300);

回答2:

把最后一行删掉后,存为myfun.m
然后在命令行运行x=fsolve(@myfun,300);

脚本可以直接运行,函数(带输入参数的)不能直接F5或者在编辑器运行,必须要调用或者在命令行运行