作业帮 > 综合 > 作业

用matlab画如下式子的图像!应该怎样写程序?R=2*r.*sin(acos((r^2+(r+h).^2-R.^2./

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/06/07 05:19:47
用matlab画如下式子的图像!应该怎样写程序?R=2*r.*sin(acos((r^2+(r+h).^2-R.^2./4)./(2*r.*(r+h))))./cos(pi/180.*j+acos((r^2+(r+h).^2-R.^2./4)./(2*r.*(r+h)))); 其中r=6370,j=5,h=60:90 非常急,
用matlab画如下式子的图像!应该怎样写程序?R=2*r.*sin(acos((r^2+(r+h).^2-R.^2./
题目不是很清楚 你能写明白点么
R的表达式里边有R 你这是什么函数,微分?还有h取值是60到90间隔为1,你是要画31个图像还是h是自变量
再问: 就是自己推出来的一个式子,R的表达式里边就是带有R的!
再问: 最后就是想得到R与h的关系图像
再问: h是自变量,区间是60到90
再答: 哦 是我想错了 你这个还要再解一次方程是吧
再问: 这个是必须要写成R=h这种形式的嘛?方程不会解啊!能不能帮帮忙?
再答: 不是 我正在写 等会啊
再问: 好的好的!感谢你!你是好人!
再答: r=6370;j=5;syms R
for h=60:90
if h==78
continue
end
x=solve(R==2*r*sin(acos((r^2+(r+h)^2-R^2/4)/(2*r*(r+h))))/cos(pi/180*j+acos((r^2+(r+h)^2-R^2/4)/(2*r*(r+h)))),R);
RR(h-59)=double(x);
end
因为你没有R的直接表达式,需要先计算R等于什么,所以我用了solve函数
我不知道哪的问题。 我的想法应该没错,在h=78 81的地方都出不来结果。而且这个程序跑的太慢了,跑到h=80要5分钟 ,也许你的电脑可以快点。就能帮你到这了,你可以自己再看看。
我这里跳过了78 你可以再把81跳过看看。
再问: 哦!好的,我试试看,太感谢了
再问: 兄弟,那个RR(h-59)那句是嘛意思啊?
再答: 那个RR(h-59)那句是嘛意思啊?
这句是把solve算出来的结果放到RR里,h是60到90 RR矩阵里边调用的话是1到31 ,
再问:
再问: 能不能看清?我输进去出不来结果啊!是哪里有问题呢?
再答: 你的R间隔是3啊,那么for循环里要改一下,照片上的第一行的R不要了,还有RR矩阵大小也变了,只有11个数。RR(h-59)这句也不对了
再问: 可以按间隔为一来画的!
再问: 能把你刚写的程序给我发个照片过来吗?
再问: 我这好像还有错误!!
再问:
再答:
再问: 为什么总会出现
error using ==>char
Conversion to char from logical is not possible.

Error in ==>sym.solve at 46
s〔k〕=char(varargin〔k〕)
再问:
再问:
再问:
再问:
再问:
再问: 到底怎么回事儿啊兄弟?再帮帮忙呗?搞不好啊!
再问: 看看有什么问题~
再问: 您好,祝您端午节快乐~在嘛?有问题想请教您~