matlab 急初始条件为θ=0,x=-d(θ范围在0—90°之间吧)求大哥大姐们帮忙啊,本人急~用matlab求解出x
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/07/17 15:27:30
matlab 急
初始条件为θ=0,x=-d(θ范围在0—90°之间吧)
求大哥大姐们帮忙啊,本人急~
用matlab求解出x和θ的关系,也可以是一系列数值解,需要程序!
没有贴图吗?我已经上传啦
![](http://img.wesiedu.com/upload/f/4b/f4b013a7400908b37a59b2d9df4701b0.jpg)
初始条件为θ=0,x=-d(θ范围在0—90°之间吧)
求大哥大姐们帮忙啊,本人急~
用matlab求解出x和θ的关系,也可以是一系列数值解,需要程序!
没有贴图吗?我已经上传啦
![](http://img.wesiedu.com/upload/f/4b/f4b013a7400908b37a59b2d9df4701b0.jpg)
没有方程怎么解
快给出方程
你先等等,这个东西需要迭代求解,速度比较慢.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function dx=nonlinear(t,x)
persistent count
if isempty(count)
count=0;
end
count=count+1;
fprintf('正在运行第%d次\n',count);
fprintf('运行到角度:%d\n',t);
theta1=85*pi/180;
r0=2000*tan(pi/6);
l=2000;
h=8;
d=15;
n=1.586;
%% 取使约束方程r0*sin(t)/sin(theta1)=n*l*sin(w)/sqrt(1-n^2*sin(w)^2)+(h+d+x)*tan(t)-x*tan(w)
%% 等式两边之差小于shredhold的最优w,如果没有满足精度要求的,则进一步精确划分W可能值,直到得到满足要求
%% 的W为止.
w_about=0;
calError=1;
shredhold=0.0005;
w=-pi;
percesion=0.001;
midVar=0.01;
flag=0; %精化等级
while w_about==0
while calError>shredhold
if w>=pi
break;
end
w=w+pi/180*percesion;
calError=abs(3172*sin(w)/sqrt(1-2.5154*sin(w)^2)+(23+x)*tan(t)-x*tan(w)-1159.1*sin(t));
if calError<midVar
midVar=[midVar calError];
w_about=[w_about w];
end
end
w=w_about((midVar==min(midVar)));
fprintf('截断误差:%f',min(midVar));
percesion=percesion/10;
flag=flag+1;
fprintf('flag:%d\n',flag);
end
dx=(h+d+x)/( -(n*cos(w)-cos(t))/(n*sin(w)-sin(t))-tan(t) )/cos(t)^2;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
求theta在[0 PI/4]之间的关系
tic,[T3,Y3] = ode45(@nonlinear,[0 pi/4],-15);toc
有些误差:
![](http://img.wesiedu.com/upload/6/9c/69cff38b4f511c2ce5411bd032a60654.jpg)
快给出方程
你先等等,这个东西需要迭代求解,速度比较慢.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function dx=nonlinear(t,x)
persistent count
if isempty(count)
count=0;
end
count=count+1;
fprintf('正在运行第%d次\n',count);
fprintf('运行到角度:%d\n',t);
theta1=85*pi/180;
r0=2000*tan(pi/6);
l=2000;
h=8;
d=15;
n=1.586;
%% 取使约束方程r0*sin(t)/sin(theta1)=n*l*sin(w)/sqrt(1-n^2*sin(w)^2)+(h+d+x)*tan(t)-x*tan(w)
%% 等式两边之差小于shredhold的最优w,如果没有满足精度要求的,则进一步精确划分W可能值,直到得到满足要求
%% 的W为止.
w_about=0;
calError=1;
shredhold=0.0005;
w=-pi;
percesion=0.001;
midVar=0.01;
flag=0; %精化等级
while w_about==0
while calError>shredhold
if w>=pi
break;
end
w=w+pi/180*percesion;
calError=abs(3172*sin(w)/sqrt(1-2.5154*sin(w)^2)+(23+x)*tan(t)-x*tan(w)-1159.1*sin(t));
if calError<midVar
midVar=[midVar calError];
w_about=[w_about w];
end
end
w=w_about((midVar==min(midVar)));
fprintf('截断误差:%f',min(midVar));
percesion=percesion/10;
flag=flag+1;
fprintf('flag:%d\n',flag);
end
dx=(h+d+x)/( -(n*cos(w)-cos(t))/(n*sin(w)-sin(t))-tan(t) )/cos(t)^2;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
求theta在[0 PI/4]之间的关系
tic,[T3,Y3] = ode45(@nonlinear,[0 pi/4],-15);toc
有些误差:
![](http://img.wesiedu.com/upload/6/9c/69cff38b4f511c2ce5411bd032a60654.jpg)
matlab 急初始条件为θ=0,x=-d(θ范围在0—90°之间吧)求大哥大姐们帮忙啊,本人急~用matlab求解出x
用matlab求解函数值! 急啊~~ f(x)=exp(x)*sin(x),求在x=0,-1的解并输出
【急】如何在matlab中求解x+arctan(x)-π/2=0?
哪位大哥会matlab 帮忙写个程序,用牛顿迭代法求方程X^3-3*x-1=0在2附近的解
如何在matlab中求解tan(x)-x=-17.18741575,这个方程,急,
matlab求解:40*x+1-exp(x/2)=0.我用solve函数求解,只得出0解,哪位大神可以帮忙解决一下?谢谢
在matlab中用newton迭代法求解x-sinx=0根,急求,马上交作业了,谢谢高手来解答!
利用matlab求方程时如果限定未知数范围,比如x*sin(x)-1/2=0,求解方程在-10到10上的解?
求解用matlab解积分,范围为0~1,被积分函数为x^n*exp(x-1),n=1:20
用MATLAB求函数y=ln(x+sinx)的导数和不定积分,写出Matlab程序.急
方程为(d^2x)/(dt^2)+a*sin(x)=0的mathematica 和matlab求解命令
急 matlab 怎么算出x*A=B A,B为N行一列的矩阵 x为常数