24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1092  |  回复: 7
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

jiyude

木虫 (正式写手)

[求助] 圆的半径和圆心角已有2人参与

已知弧长36.7米,拱高10.4米的圆弧,求圆的半径和圆心角(最好附带Matlab程序)。怎么限制x是锐角?

clear all;
syms x y
[x,y]=solve('2*x*y-36.7=0','y*(1-cos(x))-10.4=0','x','y');
solution=[x,y]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

努力努力
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cooooldog

铁杆木虫 (著名写手)

ส็็็

1. 这种问题不太可能得到符号解,只能数值求解。
2. 锐角也无法限制,只能通过添加 r 与 h 关系的约束确定是优弧劣弧,比如 r > h >0 , 0<h<2r
3. 综合看,你的问题更适合用带约束条件的非线性最优化来解决,或者求单个根的数值方法。

具体条件根据自己的要求琢磨
ส็็็็็็็็็็็็็็็็็็็็
3楼2015-07-15 06:37:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 8 个回答

cooooldog

铁杆木虫 (著名写手)

ส็็็

【答案】应助回帖

感谢参与,应助指数 +1
CODE:
s=36.7;h=10.4;  r=fsolve(@(r)2*h^2+1-4*h*r-cos(s/r),4.1)

ส็็็็็็็็็็็็็็็็็็็็
2楼2015-07-15 06:30:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cooooldog

铁杆木虫 (著名写手)

ส็็็

【答案】应助回帖

前面的公式写错了,结果会错误。

纠正关于 半径 的0值函数为:



绘出它的图像可以看出有三个根适用:

圆的半径和圆心角

如果用Matlab求数值解,则带信赖域的牛顿法初值很重要,决定解
代码仍旧类似

初值为1,则结果是
CODE:
s=36.7;h=10.4; x0=1; r=fsolve(@(r)2*h^2+r^2-4*h*r-r^2*cos(s/r),x0); disp(num2str(r, '% 16.9f'))

得到 5.323271244

初值10
CODE:
s=36.7;h=10.4; x0=10;r=fsolve(@(r)2*h^2+r^2-4*h*r-r^2*cos(s/r),x0);disp(num2str(r,'%16.9f'))

得到
11.183055764

初值18
CODE:
s=36.7;h=10.4; x0=18;r=fsolve(@(r)2*h^2+r^2-4*h*r-r^2*cos(s/r),x0);disp(num2str(r,'%16.9f'))

得到
13.999546228
ส็็็็็็็็็็็็็็็็็็็็
4楼2015-07-15 07:13:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

peterflyer

木虫之王 (文学泰斗)

peterflyer


【答案】应助回帖

感谢参与,应助指数 +1
设半径为r,对应的圆心角为θ,由题意有:
r*θ=36.7                                          (1)
r*[1-Cos(θ/2)]=10.4                           (2)
先假设0<θ<π/2,
由泰勒公式,先只取三项:
1-Cos(θ/2)≈1/8*θ^2-1/384*θ^4         (3)
(1)、(3)代入方程(2):
θ*[θ^3-64*θ+108.8174]=0
由θ≠0,故:
θ^3-64*θ+108.8174=0
由函数知识可分析得到:它在-8/sqrt(3)有极大值305.8863,在8/sqrt(3)有极小值-88.2515。而在这个区间里函数单调下降,故有一个且只有一个根。8=0时函数值为108.8174;为π/2时为12.1622,故不存在此区域的根。
5楼2015-07-15 13:29:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见