matlab方程组求解

想求出x,y的值,可是程序不能运行,大神给瞅瞅
a=(10+43/60+13/3600)*pi/180;
syms x y
[x,y]=solve('sin(x)*sin(a)+cos(x)*cos(a)*cos(pi*6)=sin(atan(y/sqrt(1.1383^2+0.5142^2))','sin(x)*sin(a)+cos(x)*cos(a)*cos(pi*5/24)=sin(atan(y/sqrt(1.516^2+0.5715^2))');

有时候,用solve()函数不一定能得到解析值或数值解。特别是含有较复杂的三角函数方程往往是得不到你想要的值。所以求解这类方程可以考虑数值方法。一般可以用fsolve()函数。

求解步骤:

1、用ezplot(eq1,eq2)绘出两函数方程的图形,来判断两函数曲线的交点的位置。

从图形来看,很容易判断x、y初值为[-12 0]或[-8 0]或[4 0]。。。。。。时,有交点。

2、将两函数方程自定义为一个变量{x}的函数,即f(x1,x2)

fun=@(x)[sin(x(1)).*sin(a)+cos(x(1)).*cos(a)*cos(pi*6)-sin(atan(x(2)/sqrt(1.1383^2+0.5142^2))),sin(x(1))*sin(a)+cos(x(1))*cos(a)*cos(pi*5/24)-sin(atan(x(2)/sqrt(1.516^2+0.5715^2)))]

3、用fsolve()函数求解。

[x,f,h]=fsolve(fun,[-12 0])

[x,f,h]=fsolve(fun,[-8 0])

[x,f,h]=fsolve(fun,[4 0])

。。。。。。

x=x(1),y=x(2)

f1≈0,f2≈0说明所求的x、y是方程的解。

温馨提示:内容为网友见解,仅供参考
无其他回答

matlab求助解方程组
在MATLAB中,你可以定义变量和方程。例如,假设你要解的方程组是:x + y = 5;2x - y = 3;你可以使用符号变量来表示这些未知数,如`syms x y`。然后定义方程,例如`eq1 = x + y == 5`和`eq2 = 2*x - y == 3`。这样,你就建立了方程组的符号表示。3. 使用solve函数解方程组 MA...

matlab实战篇——线性方程组的求解
考虑一元四次方程组,MATLAB可通过不同方法求解。方法一:利用矩阵逆运算。首先,创建系数矩阵A和向量b,判断方程解的存在性。1. 编写检查函数isexist.m。2. 调用函数检查解的存在性,若返回1,说明方程组有唯一解。3. 利用矩阵逆直接求解方程。方法二:利用LU分解。将矩阵分解为下三角矩阵和上三角矩...

matlab解方程组
当方程组包含具体数值时,可以使用MATLAB的线性代数函数来求解。例如,使用`\\`操作符或`linsolve`函数来求解线性方程组。步骤如下:创建系数矩阵和常数向量,例如使用`A = [a b; c d]`和`b = [e; f]`来定义Ax=b中的系数矩阵A和常数向量b。使用`\\`操作符或`linsolve`函数求解,例如`x = A...

matlab解方程组
在定义好符号变量和方程组后,可以使用solve函数求解。该函数可以返回所有未知数的数值解,也可以通过选项设定返回特定的解或者所有可能的解集。solve函数在处理线性或非线性方程组的求解上都非常强大和灵活。对于复杂的方程组,可能需要使用特定的选项或参数来确保求解过程的正确性和效率。此外,MATLAB的solve...

matlab 如何求解线性方程组
在工程计算中,解决线性方程组是常见的需求。Matlab提供了强大的工具来处理不同类型的线性系统:AX=B和XA=B。以下是具体的操作方法:1. 确定性方程组当矩阵A是方阵(m=n)时,恰定方程组有唯一精确解。例如,非奇异的A\\B会直接给出解X:A\\B (非奇异方程)2. 超定方程组超定情况(m>n)常见于...

Matlab求解方程组
在Matlab中,常使用微分方程数值解法。求解数值解需编写m函数文件,以标准形式表达微分方程,包含待解的微分方程,设置相对误差和绝对误差,若求解方程组,初始值需为n维向量,m文件中带解方程组为n维列向量。常用求解函数包括ode45、ode23、ode113等。实际问题中,微分方程的解随时间变化,非刚性问题相对较...

MATLAB求解微分方程组
在MATLAB中求解微分方程组是一项关键技能,尤其涉及二阶微分方程组的处理。首先,我们了解如何将二阶微分方程转换为一组一阶微分方程。以一个具有三个二阶微分方程的系统为例,我们可将其转换为六个一阶微分方程,具体表示为:dy = @(t,y)[y(4:6); (-K*y(1:3)-C*y(4:6)+[Qy;0;0])....

用matlab解非线性方程组怎么最快?
利用MATLAB求解线性方程组,步骤如下:1. 输入方程组的系数矩阵A,点击计算按钮,根据结果情况判断是否有解,若有解则计算基础解系。2. 输入非齐次方程组的系数矩阵A和增广矩阵b,点击计算按钮,根据结果情况判断是否有解,若有解则计算基础解系和特解,若有唯一解则求出唯一解。3. 点击清除按钮,...

MATLAB的solve函数求非线性解方程或方程组
MATLAB的solve函数是一个强大的工具,用于处理各种代数方程和非线性方程的求解任务。它的使用方法包括但不限于:单变量方程求解通过以下步骤,我们可以使用solve函数来求解一个单变量方程:编写程序:[x, sol] = solve(equation, variable)运行结果:程序执行后,输出变量x的解sol方程组求解对于方程组,其...

MatLab求解微分方程组
具体来说,面对相对简单的微分方程组,我们能通过解析解找到问题的解答。不过,对于更复杂的情况,数值解法成为了不可或缺的工具。在MATLAB中,采用ode45函数进行数值解法是一个高效而实用的选择。为了采用ode45求解微分方程组,我们需要将方程组转化为矩阵形式,并且考虑到原方程组的二阶特性,需要对其进行...

相似回答
大家正在搜