简单的matlab求方程组问题

如图所示两个方程,两个未知数(xtyt)应该是可以求解的吧。方程里面划红线的未知数,都用下面是的式子可以表示,所以最终只有两个未知数(xtyt)我这两天才刚开始接触mat... 如图所示两个方程,两个未知数(xt yt)应该是可以求解的吧。方程里面划红线的未知数,都用下面是的式子可以表示,所以最终只有两个未知数(xt yt)我这两天才刚开始接触matlab所以不太会用,您能不能帮我写一下求解的程序呀。大佬 万分感谢!!! 展开
 我来答
悠学无09
2019-10-16 · TA获得超过138个赞
知道小有建树答主
回答量:146
采纳率:77%
帮助的人:28.1万
展开全部

先写一个myfun的m函数

function F = myfun(x)

Vt = sqrt((x(1) - 4.165)^2 + (x(2) - 2.786)^2);

beta1 = atan(x(2)/(x(1) - 0.6));

beta2 = atan(x(2)/(x(1) - 0.45));

alfa = pi - atan((x(2) - 2.786*pi/180)/(x(1) - 4.165*pi/180));


F(1) = Vt*cos(beta1 - alfa) - 6.9515899*pi/180;

F(2) = Vt*cos(beta2 - alfa) - 7.019463002*pi/180;

在主函数下运行:

opts = optimset('TolFun',1e-6,'TolX',1e-6,'MaxFunEvals',1e6,'Maxiter',1e6,'Display','iter');

x = fsolve(@myfun,[3,3]',opts);

注意你的计算公式中的值都应保持是弧度,角度值应*pi/180作换算,因为matlab里面三角函数的计算都是默认弧度值的。我对你函数中的值是什么含义不太确认,你再自己做下检查。

运行结果:x_t = 3.6070; y_t = 3.7182;

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式