用matlab解一个非常复杂的方程

h=4.3532;
k=93.5;
i=4*pi/180;
j=3*pi/180;
r=74.25;
a=(h-(r-sqrt(r*r-h*h))*tan(j)-k*tan(i))/tan(j);
b=k-(h-(r-sqrt(r*r-h*h))*tan(j))/tan(i);
c=h-(r-sqrt(r*r-h*h))*tan(j)-k*tan(i);
w=4000;
r1=69.75;
(b-(b/a)*(r1+(r*cos((180*asin(h/r)/pi-w*t)*pi/180)-r-r1)*cos(3*w*t*pi/180))-((b/c)*r*sin((180*asin(h/r)/pi-w*t)*pi/180)+(r1-r*cos((180*asin(h/r)/pi-w*t)*pi/180)-r)*sin(3*w*t*pi/180)))/(cos(3*w*t*pi/180)+(b/a)*sin(3*w*t*pi/180))-93.5=0只有t不知道我想求出来,这个一定有解的。可用matlab求怎么也不对。要用什么弄啊,solve是用了不行啊。谢谢啦

可以根据t的范围搜索
clc
h=4.3532;
k=93.5;
i=4*pi/180;
j=3*pi/180;
r=74.25;
a=(h-(r-sqrt(r*r-h*h))*tan(j)-k*tan(i))/tan(j);
b=k-(h-(r-sqrt(r*r-h*h))*tan(j))/tan(i);
c=h-(r-sqrt(r*r-h*h))*tan(j)-k*tan(i);
w=4000;
r1=69.75;
format short
i0=0;
for t=-10:0.5:10
i0=i0+1;
pp(i0)=(b-(b/a)*(r1+(r*cos((180*asin(h/r)/pi-w*t)*pi/180)-r-r1)*cos(3*w*t*pi/180))-((b/c)*r*sin((180*asin(h/r)/pi-w*t)*pi/180)+(r1-r*cos((180*asin(h/r)/pi-w*t)*pi/180)-r)*sin(3*w*t*pi/180)))/(cos(3*w*t*pi/180)+(b/a)*sin(3*w*t*pi/180))-93.5;
if pp(i0)<0.0001
t

end

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

用matlab解复杂方程组
利用MATLAB解复杂方程组的关键在于明确解的目标。当方程组数量超过未知数数量时,问题转变为寻找最优解,即最小化参数方差。对于非标准二元一次方程组,常规最小二乘法不可用,需要探索其他解法。问题的焦点在于是单独求解每个方程还是整个方程组。我猜测可能是单独求解每个方程,即进行独立优化以找到最佳解。

帮忙用Matlab求解复杂方程组?非常感谢。
>> [x1,x2,h]=solve('10=sqrt((150-150*cos(x2)-150*sin(x2)*sin(x1))^2+(150-150*cos(x1))^2+(150*sin(x2)-150*cos(x2)*sin(x1)+h)^2)','12=sqrt((150*cos(x2)-150*sin(x2)*sin(x1)-150)^2+(150-150*cos(x1))^2+(-150*sin(x2)-150*cos(x2)*sin(...

matlab求解复杂方程
1、利用for循环语句,将VE,SigmaE已知值,代入求解函数里 2、利用fsolve函数求VA与SigmaA的数值解 x0=【0.1,0.1】;[x,h]=fsolve(@func,x0);3、创建自定义主函数,y=func(x)4、创建自定义d1函数,d1=d1_fun(x)5、创建自定义d2函数,d2=d2_fun(x)第一组求解结果 ...

matlab中求解复杂方程
在这里不需要点运算符,请把小圆点去掉。即 [a,b]=solve('421*(a-b*240.15+b*240.15*eps^(2*a))=a*240.15*eps^(2*a)','339*(a-b*240.15+b*240.15*eps^a)=a*240.15*eps^a','a','b')运行结果

matlab求解复杂方程?
题主的问题,可以通过for循环语句和vpasolve()函数求解y值。求解过程如下。

如何在MATLAB中求解这个复杂的超越方程,要有具体代码
该超越方程可以用matlab的vpasolve()函数命令求得。求解过程如下:syms L3 R1=25;R2=12.5;R3=10;L1=30;L2=20;k=24.8;eq1=(R2^2+R3^2*(tan(k*L2))^2)*(1\/tan(k*L1)+(R1-R2)\/(k*L1*R2));eq2=(R2^2*(tan(k*L2))^2+R3^2)*tan(k*(L2+L3));eq3=(R3^2-R2^2)*...

怎么样用Matlab计算复杂方程的根?
p = [135 280 370 665 1150 1300];t = [];for i = 1:numel(p) t = [t; zeros(numel(p)-i+1, 1)+p(i)];endR = .7;a = .1;f = @(m)sum(t.^m .* log(t))\/sum(t.^m) - log(log(R)\/log(a) * sum(t.^m))^(1\/m);m = fsolve(f, 1)

matlab中方程过于复杂求解不出来怎么办
∂y\/∂a=0 将倒数第二行代码做如下修改可能更符合题意:dy = diff(y,a)dy 亦是关于r, a 的函数,把它显示出来可以发现结果很长,这样就难以求得方程 dy(r,a) = 0的显式表达式。但具体调用函数的时候可以寻求数值解,下面是 dy(r,a)=0在区域[-10 10 -20 20]上的一个...

matlab里的一个式子,太复杂了,谁能翻译能一般的数学式子(括号太多,不...
)^2)-r^2)上述方程的计算过程是这样的:1、分别计算 norm(temp)^2、dot(temp,temp1), norm(temp1))^2、r^2 2、计算 dot(temp,temp1)\/norm(temp1))^2 3、计算 dot(temp,temp1)\/norm(temp1))^2)-r^2 4、计算 abs((norm(temp)^2-(dot(temp,temp1)\/norm(temp1))^2)-r^2)

用MATLAB解六元一次方程(数据很大很麻烦)
x6=ones(size(x1)); %(即[1,1,1,1,1,1]');A=[x1,x2,x3,x4,x5,x6];B=[329.04 339.63 350.71 362.26 374.29 386.8]';C=A\\B 得到:C=[-0.0086,0,0,0,0,1.4729]'即原式中,a=-0.0086,b=c=d=e=0,f=1.4729 。因为结果有在0附近,可能不完全100%一致 。

相似回答