转子抽速公式编程
求大神指教: 下面是螺杆泵的抽速公式,要怎样调用程序才能求出最后的sth(defun qiu_acos (num);;定义arccos
(if (= num 0) (atan 1 0)
(atan (/ (sqrt (- 1 (* num num))) num))))
(defun tan(mm) ;;定义tan
(/ (sin mm) (cos mm)))
(defun chousu (r r0 r1 R n p / s2 s4 s1 s3 c)
(setq aaa (/ r0 R))
(setq bbb (/ r1 R))
(setq cc (qiu_acos aaa))
(setq dd (qiu_acos bbb))
(setq ee (tan cc))
(setq s2 (* (/ (* R R) 2) (- pi (- (/ pi 3) (sqrt 3)) (- ee cc))))
(setq s4 (* (/ (* r r) 2) (+ pi (- (/ pi 3) (sqrt 3)) (- ee cc))))
(setq s1 (* (/ 1 6) (* r0 r0) (expt ee 3)))
(setq s3 (- (+ (* (+ (* 2 r1 r1) (* R R)) f) (* (* r1 r1) (sin (* 2 f))) (* (/ 1 4) (* R R) (sin (* 4 f)))) (+ (* 3 r1 R (sin f)) (* r1 R (sin (* 3 f))))))
(setq f dd)
(setq c (- 1 (/ (- (+ s1 s2 s4) s3) (* pi R R))))
(setq sth (* 2 n c p pi R R))
)
(setq qq 30 ww 30 tt1 60 yy 90 uu 3000 ii 35)
(chousu qq ww tt1 yy uu ii)
(princ sth)
求大神啊求大神 1、函数chousu定义中不允许有两个R参数(r和R是相同意义的),可将R改为R3等
2、求s3算式中,f参数无值,当然不能求出S3值, USER2128 发表于 2016-5-6 18:45 static/image/common/back.gif
1、函数chousu定义中不允许有两个R参数(r和R是相同意义的),可将R改为R3等
2、求s3算式中,f参数无值,当然 ...
你好,谢谢你的回复。
程序里面是给f赋值了的
(setq dd (qiu_acos bbb))
(setq f dd)
将R改为R3之后显示参数太少 USER2128 发表于 2016-5-6 18:45 static/image/common/back.gif
1、函数chousu定义中不允许有两个R参数(r和R是相同意义的),可将R改为R3等
2、求s3算式中,f参数无值,当然 ...
您好,感谢您的回复
我是给f赋值了的
(setq f dd)
我将R改为R3之后结果还是显示参数太少 ;;; 求大神指教: 下面是螺杆泵的抽速公式,要怎样调用程序才能求出最后的sth
(defun qiu_acos (num);;定义arccos
(if (= num 0) (atan 1 0)
(atan (/ (sqrt (- 1 (* num num))) num))))
(defun tan(mm) ;;定义tan
(/ (sin mm) (cos mm)))
(defun chousu (r r0 r1 R3 n p / s2 s4 s1 s3 c)
(setq aaa (/ r0 R3))
(setq bbb (/ r1 R3))
(setq cc (qiu_acos aaa))
(setq dd (qiu_acos bbb))
(setq ee (tan cc))
(setq s2 (* (/ (* R3 R3) 2) (- pi (- (/ pi 3) (sqrt 3)) (- ee cc))))
(setq s4 (* (/ (*rr) 2) (+ pi (- (/ pi 3) (sqrt 3)) (- ee cc))))
(setq s1 (* (/ 1 6) (* r0 r0) (expt ee 3)))
(setq f dd)
(setq s3 (- (+ (* (+ (* 2 r1 r1) (* R3 R3)) f) (* (* r1 r1) (sin (* 2 f))) (* (/ 1 4) (* R3 R3) (sin (* 4 f)))) (+ (* 3 r1 R3 (sin f)) (* r1 R3 (sin (* 3 f))))))
(setq c (- 1 (/ (- (+ s1 s2 s4) s3) (* pi R3 R3))))
(setq sth (* 2 n c p pi R3 R3))
)
(setq qq 30 ww 30 tt1 60 yy 90 uu 3000 ii 35)
(chousu qq ww tt1 yy uu ii)
(princ sth)
;;; (setq f dd)要放到(setq s3 ... 之前
;;; 现可以计算其结果= 1.23464e+025 你自己核算一下公式.
感谢贵人!!! USER2128 发表于 2016-5-7 17:34 static/image/common/back.gif
感谢贵人!!!
另外还有个问题,如果已知了sth的值,怎样调用程序求R3呢?
页:
[1]