教大家反求INV函数(渐开线函数)齿轮计算中需要使用到的.
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/27 03:20:03
![教大家反求INV函数(渐开线函数)齿轮计算中需要使用到的.](/uploads/image/z/4947421-13-1.jpg?t=%E6%95%99%E5%A4%A7%E5%AE%B6%E5%8F%8D%E6%B1%82INV%E5%87%BD%E6%95%B0%EF%BC%88%E6%B8%90%E5%BC%80%E7%BA%BF%E5%87%BD%E6%95%B0%EF%BC%89%E9%BD%BF%E8%BD%AE%E8%AE%A1%E7%AE%97%E4%B8%AD%E9%9C%80%E8%A6%81%E4%BD%BF%E7%94%A8%E5%88%B0%E7%9A%84.)
教大家反求INV函数(渐开线函数)齿轮计算中需要使用到的.
教大家反求INV函数(渐开线函数)
齿轮计算中需要使用到的.
教大家反求INV函数(渐开线函数)齿轮计算中需要使用到的.
鉴于百度知道尚没有教如何反解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界面,大家自己随便写.