教大家反求INV函数(渐开线函数)

问题描述:

教大家反求INV函数(渐开线函数)
齿轮计算中需要使用到的.
1个回答 分类:综合 2014-10-01

问题解答:

我来补答
鉴于百度知道尚没有教如何反解INV函数方法,我准备写一个方法,方便大家搜索.
----------------------------------
解法需要使用编程软件(我个人使用的是VB6.0)
思路是使用试凑法,用黄金分割法优化.
Dim IP1,OP2,R1,R2,Mate,PN,i As Double
Private Sub Command1_Click()
IP1 = Val(Text1.Text) ‘你手上需要查的数值
R1 = 0 ’左值域
R2 = 90 ‘右值域
Mate = (R2 - R1) * 0.6180339887498 + R1 ’试凑一个角度(55.62°)
For i = 1 To 1000 ’循环(迭代1000次)
OP2 = Tan(Mate * 3.1415926535898 / 180) - Mate * 3.1415926535898 / 180 ‘求出试求角度的INV值
PN = OP2 - IP1 ‘试求值与目标值比大小
If PN > 0 Then ’如果大于0,说明试求值大了.那么应该把把右值域R2减小到试求角度.
R2 = Mate
Mate = (R2 - R1) * 0.3819660112502 + R1 ‘从右端取0.618的点
Else
R1 = Mate ’如果小于0,说明试求值小了.那么应该把把左值域R1增大到试求角度.
Mate = (R2 - R1) * 0.6180339887498 + R1 ‘从左端取0.618点
End If 退出if
Next 退出循环
Text2.Text = Mate 显示最终试凑角度(精度在0.0001以内)
End Sub
GUI界面,大家自己随便写.
 
 
展开全文阅读
剩余:2000
下一页:fx的解析式