明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1584|回复: 3

求交点

[复制链接]
发表于 2004-6-24 10:36:00 | 显示全部楼层 |阅读模式
已知对数螺线方程: x= a1 * Exp(m0 * β) * Cos(β)
y= a1 * Exp(m0 * β) * Sin(β) 直线方程:y=kx+b 其中,a1、m0、k、b均为已知常数。如何求两曲线的交点?请大家指点迷津。
发表于 2004-6-24 13:15:00 | 显示全部楼层
纯数学方法求解(不过上学没用功,忘光了)
发表于 2004-6-24 22:36:00 | 显示全部楼层
这个方程是“解不出来”的……用VBA试试!
  1. Sub abc()a1 = 4: m0 = 1: k = 1: b = -3     '一个例子
  2. Dim z0 As Double, z1 As Double
  3. z0 = 0     '赋初值
  4. z1 = z0
  5. Do
  6. z0 = z1
  7. fz = a1 * Exp(m * z0) * Sin(z0) - a1 * Exp(m * z0) * Cos(z0) - b
  8. flz = a1 * Exp(m * z0) * Cos(z0) + a1 * m * Exp(m * z0) * Cos(z0) _
  9. - a1 * m * Exp(m * z0) * Cos(z0) + a1 * Exp(m * z0) * Sin(z0)z1 = z0 - fz / flz
  10. Loop While Abs(z1 - z0) > 0.000000001x = a1 * Exp(z0) * Cos(z0)
  11. y = a1 * Exp(z0) * Sin(z0)
  12. MsgBox "z0=" & z0 & "时" & vbCrLf & vbCrLf & "x=" & x & vbCrLf & "y=" & yEnd Sub
另,这个交点可是有无穷多个啊!这个例子只是求出一个。(代码中的z0就是β)

评分

参与人数 1金钱 +10 贡献 +5 激情 +5 收起 理由
雪山飞狐_lzh + 10 + 5 + 5 【好评】好思路ok

查看全部评分

 楼主| 发表于 2004-6-25 09:21:00 | 显示全部楼层
斑竹数学真棒!唉,我怎末没想起来用迭代法计算,计算方法真是白学了!多谢斑竹老师的指点!“长不大的斑竹”太伟大了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-28 04:53 , Processed in 0.160609 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表