明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: gprspda

通过程序计算出来的数值和手动计算的数值不一样,是不是我的程序写错了?

  [复制链接]
发表于 2011-10-22 19:55:51 | 显示全部楼层
Command: (setq r2 (/ (* 3431 (tan (dtr α)))  pi t1))
1.70784
 楼主| 发表于 2011-10-22 19:56:01 | 显示全部楼层
Andyhon 发表于 2011-10-22 18:10
r2=0.0279  
t1 ?
改在 VLIDE 中调试呗

能不能麻烦你帮我调试一下,看哪里还不对...
 楼主| 发表于 2011-10-22 20:03:20 | 显示全部楼层
Andyhon 发表于 2011-10-22 19:55
Command: (setq r2 (/ (* 3431 (tan (dtr α)))  pi t1))
1.70784

这句话需要加在哪里?
发表于 2011-10-22 20:09:23 | 显示全部楼层
您先确认 r2 所得正确

Command: (setq r2 (/
((_>              (setq tmp1
(((_>                (* 3431
((((_>                   (setq tanz
(((((_>                     (/
((((((_>                       (setq sinz (sin (* pi (/ α 180.0))))
((((((_>                       (setq cosz (cos (* pi (/ α 180.0))))
((((((_>              ) ) ) )
((_>              (setq tmp2 (* pi t1))
((_>   ) )
1.70784

Command: !tmp1
1599.9

Command: !tmp2
936.799

Command: (/ tmp1 tmp2)
1.70784

Command: !tanz
0.466308

Command: !sinz
0.422618

Command: !cosz
0.906308

逐个确认所得之值...
 楼主| 发表于 2011-10-22 20:20:32 | 显示全部楼层
Andyhon 发表于 2011-10-22 20:09
您先确认 r2 所得正确

Command: (setq r2 (/

现在的问题是r2得出的结果不正确啊
发表于 2011-10-22 20:45:22 | 显示全部楼层
逐个确认所得之值...
那个值不合 !?
 楼主| 发表于 2011-10-22 20:59:26 | 显示全部楼层
Andyhon 发表于 2011-10-22 20:45
逐个确认所得之值...
那个值不合 !?

1.70784这个值是符合的...不过你编的那段程序我不知道怎么用,能不能麻烦你在我源程序的基础上帮我改一下,或是详细点解释下,用这个编程,也就这一回了。。。
发表于 2011-10-22 21:17:31 | 显示全部楼层
本帖最后由 Andyhon 于 2011-10-22 22:02 编辑



  1. (defun dtr (x)  (* pi (/ x 180.0)))

  2. (defun tan (z / cosz) ; [fixed]
  3.    (setq *INFINITY* 1.7e308)                 ; largest double
  4.    (if (zerop (setq cosz (cos z)))
  5.      *INFINITY*
  6.      (/ (sin z) cosz)
  7.    )
  8. )


  9. (defun c:flx (/ p p0 p1 p2 p3 p4 p5 p6 v c h w r1 r2 b1 b2 b3 α e t1)
  10.   (setq v (getReal "\n输入指示空速: "))
  11.   (setq c (getReal "\n输入与ISA的差值: "))
  12.   (setq h (getReal "\n输入高度(米): "))
  13.   (setq w (getReal "\n输入风速: "))
  14.   (setq p (getpoint "\n确定起始点: "))
  15.   (setq α (getReal "\n输入转弯坡度角: "))

  16.   (setq t1 (/ (* v 171233 (expt (- (+ 288 c) (* 0.006496 h)) 0.5))
  17.             (expt (- 288 (* 0.006496 h)) 2.628)
  18.          )
  19.   )

  20.   ;|
  21.   ;;r2=3431*tan(α)/(π t1)
  22.   (setq r2 (/
  23.              (setq tmp1
  24.                (* 3431
  25.                   (setq tanz
  26.                     (/
  27.                       (setq sinz (sin (* pi (/ α 180.0))))
  28.                       (setq cosz (cos (* pi (/ α 180.0))))
  29.              ) ) ) )
  30.              (setq tmp2 (* pi t1))
  31.   ) )
  32.   |;
  33.   
  34.   ;;; 公式是r2=3431*tan(25°)/(π t1).
  35.   (setq r2 (/ (* 3431 (tan (dtr α)))  pi t1))
  36.   
  37.   (if (> r2 3)
  38.     (setq r2 3)
  39.   )
  40.   
  41.   (setq r1 (/ t1 (* 20 pi r2)))
  42.   (setq p0 (polar p 0 r1))
  43.   (setq e (/ w (* 40 r2)))
  44.   (setq p1 (polar p0 (/ pi 2) e))
  45.   (setq p2 (polar p0 0 e))
  46.   (setq p3 (polar p0 (/ (- pi) 2) e))
  47.   (setq b1 (expt (+ (* r1 r1) (* e e)) 0.5))
  48.   (setq b2 (+ r1 e))
  49.   (setq b3 (+ r1 (* 2 e)))
  50.   (setq p4 (polar p1 (/ pi 2) b1))
  51.   (setq p5 (polar p2 0 b2))
  52.   (setq p6 (polar p3 (/ (- pi) 2) b3))
  53.   
  54.   (setVar "OsMode" 0)
  55.   (command "arc" "c" p1 p4 p)
  56.   (command "arc" "c" p2 p5 p4)
  57.   (command "arc" "c" p3 p6 p5)
  58.   
  59.   (setq fn (open (getfiled "将文件保存为:" "gc.txt" "txt" 1) "w"))
  60.   (write-line (strcat "t1=" (rtos t1)) fn)
  61.   (write-line (strcat "r2=" (rtos r2)) fn)
  62.   (write-line (strcat "r1=" (rtos r1)) fn)
  63.   (write-line (strcat "b1=" (rtos b1)) fn)
  64.   (write-line (strcat "b2=" (rtos b2)) fn)
  65.   (write-line (strcat "b3=" (rtos b3)) fn)
  66.   (close fn)
  67.   (command "_zoom" "0.5X")
  68.   (princ)
  69. )
后段请自行验证....

评分

参与人数 1金钱 +20 收起 理由
gprspda + 20

查看全部评分

 楼主| 发表于 2011-10-22 21:26:07 | 显示全部楼层
Andyhon 发表于 2011-10-22 21:17
后段请自行验证....

我复制,加载程序之后,运行结果还是原来的啊,是不是我哪里的步骤不对?
发表于 2011-10-22 22:04:02 | 显示全部楼层
  (setq α (getangle "\n输入转弯坡度角: "))
==>
  (setq α (getReal "\n输入转弯坡度角: "))
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-6-9 20:04 , Processed in 0.172393 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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