找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 462|回复: 0

[求助]:求助!!帮忙看看我的下拉菜单有毛病么!!!!

[复制链接]
发表于 2005-6-22 16:07:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我想分步加载3。1(燃烧计算)和3。2(加热计算)就是执行完燃烧计算结束后,在点加热计算再执行3。2。
各位帮忙看看  对不!!!!


程序为:
***menugroup=heating
***pop1
[metal heating]
[--]
[->连续式加热炉]
[->推钢式连续加热炉]
[两段式加热炉]
[->三段式加热炉]
[->燃气型]
[燃烧计算]^c^c^p (load "canshu3.1.lsp") (canshu3.1.lisp)
[<-金属加热计算]^c^c^p (load "canshu3.2.lsp") (canshu3.2.lisp)
[<-燃油型]
[<-多点供热式加热炉]
[->布进式炉]
[上加热步进式炉]
[上下加热步进式炉]
[<-双步进梁步进式炉]
[--]
[辊底式炉]
[转底炉]
[<-链式炉]
[->锻造室状炉]
[加热中小型料坯的室状炉]
[--]
[<-加热大型锭的室状炉]
[--]


(defun c:canshu ()
  (setq dcl_id (load_dialog "canshu0.dcl"))
  (if (not (new_dialog "canshu0" dcl_id))(exit))
;***************************************************
  ;******************主计算程序***********************
  ;***************************************************
(defun rsjs ( k )
  (setq tco1 (* k tco)
        tco21 (* k tco2)
        tch41 (* k tch4)
        tc2h41 (* k tc2h4)
        tc3h81 (* k tc3h8)
        th21 (* k th2)
        tN21 (* k tN2)
        gco1 (* k gco)
        gco21 (* k gco2)
        gch41 (* k gch4)
        gc2h41 (* k gc2h4)
        gc3h81 (* k gc3h8)
        gh21 (* k gh2)
        gN21 (* k gN2)
        )
  (setq qdt (+ (* 356.51 tch41) (* 908.82 tc3h81) (* 593.69 tc2h41))
        qdg (+ (+ (* 126.15 gco1) (* 356.51 gch41) (* 908.82 tc3h81)) (* 107.26 gh21))
        x1 (/ (- qdh qdg) (- qdt qdg))
        hco (+ (* x1 tco1) (* (- 1 x1) gco1))
        hco2 (+ (* x1 tco21) (* (- 1 x1) gco21))
        hch4 (+ (* x1 tch41) (* (- 1 x1) gch41))
        hc2h4 (+ (* x1 tc2h41) (* (- 1 x1) gc2h41))
        hc3h8 (+ (* x1 tc3h81) (* (- 1 x1) gc3h81))
        hh2 (+ (* x1 th21) (* (- 1 x1) gh21))
        hN2 (+ (* x1 tN21) (* (- 1 x1) gN21))
        hh2o (* 1 th2o1)
        qdh1 (+ (+ (* 126.15 hco) (* 356.51 hch4) (* 107.26 hh2)) (* 593.69 hc2h4) (* 908.82 hc3h8))
        )
  (setq lo (/ (+ (+ (* 0.5 (+ hh2 hco)) (* 2.0 hch4)) (* 3.0 hc2h4) (* 5.0 hc3h8)) 21)
        ln (* 1.1 Lo)
        dco2 (* 0.01 (+ (+ hco hco2) (* 2 hc2h4) (* 3 hc3h8)))
        do2 (* 0.21 (- 1.1 1) lo)
        dN2 (* (+ hN2 (* 79 ln)) 0.01)
        dh2o (* (+ (+ (+ hh2 (* 2 hch4)) 1.20 3.6456) (* 2 hc2h4) (* 4 hc3h8)) 0.01)
        vn (+ (+ (+ dco2 do2) dN2) dh2o)
        rco2 (* (/ dco2 vn) 100)
        rh2o (* (/ dh2o vn) 100)
        rN2 (* (/ dN2 vn) 100)
        ro2 (* (/ do2 vn) 100)
        pco2 (rco2)
        ph2o (rh2o)
        )
  )
;*************对输入数据进行判断连接下一对话框*************
  (defun canshu1 ()
    (cond ((< tco 0) (progn (alert "一氧化碳输入错误!!!")))
          ((< tco2 0) (progn (alert "二氧化碳输入错误!!!")))
          ((< tch4 0) (progn (alert "甲烷输入错误!!!")))
          ((< tc2h4 0) (progn (alert "乙炔输入错误!!!")))
          ((< tc3h8 0) (progn (alert "丙烷输入错误!!!")))
          ((< th2 0) (progn (alert "氢气输入错误!!!")))
          ((< tN2 0) (progn (alert "氮气输入错误!!!")))
          ((< gco 0) (progn (alert "一氧化碳输入错误!!!")))
          ((< gco2 0) (progn (alert "二氧化碳输入错误!!!")))
          ((< gch4 0) (progn (alert "甲烷输入错误!!!")))
          ((< gc2h4 0) (progn (alert "乙炔输入错误!!!")))
          ((< gc3h8 0) (progn (alert "丙烷输入错误!!!")))
          ((< gh2 0) (progn (alert "氢气输入错误!!!")))
          ((< gN2 0) (progn (alert "氮气输入错误!!!")))
          (t (rsjs))
          )
    )
  (defun canshu2 ()
    (cond ((< (+ (+ (+ (+ (+ tco1 tco21) tch41) tc2h41) tc3h81) th21 tN21 th2o) 100) (progn (alert "原始参数错误,请重新检验数据!!!")))
          ((< (+ (+ (+ (+ (+ gco1 gco21) gch41) gc2h41) gc3h81) gh21 gN21 gh2o) 100) (progn (alert "原始参数错误,请重新检验数据!!!")))
          (t (canshu3))
          )
    )
  (defun canshu3 ()
    (cond ((< (+ (+ (+ (+ (+ hco hco2) hch4) hc2h4) hc3h8) hh2 hN2 hh2o) 100) (progn (alert "原始参数错误,请重新检验数据!!!")))
          ((< (+ (+ (+ rco2 rh2o) rN2) ro2) 100) (progn (alert "原始参数错误,请重新检验数据!!!") (canshu3)))
          (t (canshu4))
          )
    )
  (defun chashu4 ()
    (cond ((<= ln  0) (progn (alert "Ln输入错误!!!")))
          ((<= vn 0) (progn (alert "Vn输入错误!!!")))
          (t (progn (alert "燃烧计算完成")))
          )
    )
;********************对话框驱动程序区**************************
  (defun canshu1 ()
   (setq dcl_id (load_dialog "canshu1.dcl"))
   (if (not (new_dialog "canshu1" dcl_id)) (exit))
   (set_tile "tco" "0")
   (setq tco 0.0)
   (set_tile "tco2" "0")
   (setq tco2 0.0)
   (set_tile "tch4" "0")
   (setq tch4 0.0)
   (set_tile "tc2h4" "0")
   (setq tc2h4 0.0)
   (set_tile "tc3h8" "0")
   (setq tc3h8 0.0)
   (set_tile "th2" "0")
   (setq th2 0.0)
   (set_tile "tN2" "0")
   (setq tN2 0.0)
   (set_tile "gco" "0")
   (setq gco 0.0)
   (set_tile "gco2" "0")
   (setq gco2 0.0)
   (set_tile "gch4" "0")
   (setq gch4 0.0)
   (set_tile "gc2h4" "0")
   (setq gc2h4 0.0)
   (set_tile "gc3h8" "0")
   (setq gc3h8 0.0)
   (set_tile "gh2" "0")
   (setq gh2 0.0)
   (set_tile "gN2" "0")
   (setq gN2 0.0)
   (set_tile "k" "0")
   (setq k 0.0)
   (action_tile "tco" "(setq tco (atof $value))")
   (action_tile "tco2" "(setq tco2 (atof $value))")
   (action_tile "tch4" "(setq tch4 (atof $value))")
   (action_tile "tc2h4" "(setq tc2h4 (atof $value))")
   (action_tile "tc3h8" "(setq tc3h8 (atof $value))")
   (action_tile "th2" "(setq th2 (atof $value)))")
   (action_tile "tN2" "(setq tN2 (atof $value))")
   (action_tile "gco" "(setq gco (atof $value))")
   (action_tile "gco2" "(setq gco2 (atof $value))")
   (action_tile "gch4" "(setq gch4 (atof $value))")
   (action_tile "gc2h4" "(setq gc2h4 (atof $value))")
   (action_tile "gc3h8" "(setq gc3h8 (atof $value))")
   (action_tile "gh2" "(setq gh2 (atof $value)))")
   (action_tile "gN2" "(setq gN2 (atof $value))")
   (action_tile "k" "(setq k (atof $value))")
   (action_tile "accept" "(canshu1)")
   (start_dialog)
   (unload_dialog dcl_id)
   (princ)
  )
   (defun canshu2 ()
   (setq dcl_id (load_dialog "canshu2.dcl"))
   (if (not (new_dialog "canshu2" dcl_id)) (exit))
   (set_tile "tco1" "0")
   (setq tco1 0.0)
   (set_tile "tco21" "0")
   (setq tco21 0.0)
   (set_tile "tch41" "0")
   (setq tch41 0.0)
   (set_tile "tc2h41" "0")
   (setq tc2h41 0.0)
   (set_tile "tc3h81" "0")
   (setq tc3h81 0.0)
   (set_tile "th21" "0")
   (setq th21 0.0)
   (set_tile "tN21" "0")
   (setq tN21 0.0)
   (set_tile "th201" "1.2")
   (setq th2o1 1.2)  
   (set_tile "gco1" "0")
   (setq gco1 0.0)
   (set_tile "gco21" "0")
   (setq gco21 0.0)
   (set_tile "gch41" "0")
   (setq gch41 0.0)
   (set_tile "gc2h41" "0")
   (setq gc2h41 0.0)
   (set_tile "gc3h81" "0")
   (setq gc3h81 0.0)
   (set_tile "gh21" "0")
   (setq gh21 0.0)
   (set_tile "gN21" "0")
   (setq gN21 0.0)
   (set_tile "gh201" "1.2")
   (setq gh2o1 1.2)  
   (action_tile "tco1" "(setq tco1 (atof $value))")
   (action_tile "tco21" "(setq tco21 (atof $value))")
   (action_tile "tch41" "(setq tch41 (atof $value))")
   (action_tile "tc2h41" "(setq tc2h41 (atof $value))")
   (action_tile "tc3h81" "(setq tc3h81 (atof $value))")
   (action_tile "th21" "(setq th21 (atof $value)))")
   (action_tile "tN21" "(setq tN21 (atof $value))")
   (action_tile "th2o1" "(setq th2o1 (atof $value))")  
   (action_tile "gco1" "(setq gco1 (atof $value))")
   (action_tile "gco21" "(setq gco21 (atof $value))")
   (action_tile "gch41" "(setq gch41 (atof $value))")
   (action_tile "gc2h41" "(setq gc2h41 (atof $value))")
   (action_tile "gc3h81" "(setq gc3h81 (atof $value))")
   (action_tile "gh21" "(setq gh21 (atof $value)))")
   (action_tile "gN21" "(setq gN21 (atof $value))")
   (action_tile "gh2o1" "(setq gh2o1 (atof $value))")  
   (action_tile "accept" "(canshu2)")
   (start_dialog)
   (unload_dialog dcl_id)
   (princ)
  )
  (defun canshu3 ()
   (setq dcl_id (load_dialog "canshu3.dcl"))
   (if (not (new_dialog "canshu3" dcl_id)) (exit))
   (set_tile "hco" "0")
   (setq hco 0.0)
   (set_tile "hco2" "0")
   (setq hco2 0.0)
   (set_tile "hch4" "0")
   (setq hch4 0.0)
   (set_tile "hc2h4" "0")
   (setq hc2h4 0.0)
   (set_tile "hc3h8" "0")
   (setq hc3h8 0.0)
   (set_tile "hh2" "0")
   (setq hh2 0.0)
   (set_tile "hN2" "0")
   (setq hN2 0.0)
   (set_tile "hh20" "0")
   (setq hh2o 0.0)  
   (set_tile "dco2" "0")
   (setq dco2 0.0)
   (set_tile "do2" "0")
   (setq do2 0.0)
   (set_tile "dN2" "0")
   (setq dN2 0.0)
   (set_tile "dh2o" "0")
   (setq dh2o 0.0)
   (set_tile "rco2" "0")
   (setq rco2 0.0)
   (set_tile "rh2o" "0")
   (setq rh2o 0.0)
   (set_tile "rN2" "0")
   (setq rN2 0.0)
   (set_tile "ro2" "0")
   (setq ro2 0.0)
   (action_tile "hco" "(setq hco (atof $value))")
   (action_tile "hco2" "(setq hco2 (atof $value))")
   (action_tile "hch4" "(setq hch4 (atof $value))")
   (action_tile "hc2h4" "(setq hc2h4 (atof $value))")
   (action_tile "hc3h8" "(setq hc3h8 (atof $value))")
   (action_tile "hh2" "(setq hh2 (atof $value)))")
   (action_tile "hN2" "(setq hN2 (atof $value))")
   (action_tile "hh2o" "(setq hh2o (atof $value))")  
   (action_tile "dco2" "(setq dco2 (atof $value))")
   (action_tile "do2" "(setq do2 (atof $value))")
   (action_tile "dN2" "(setq dN2 (atof $value))")
   (action_tile "dh2o" "(setq dh2o (atof $value))")
   (action_tile "rco2" "(setq rco2 (atof $value))")
   (action_tile "rh2o" "(setq rh2o (atof $value)))")
   (action_tile "rN2" "(setq rN2 (atof $value))")
   (action_tile "ro2" "(setq ro2 (atof $value))")  
   (action_tile "accept" "(canshu3)")
   (start_dialog)
   (unload_dialog dcl_id)
   (princ)
  )
  (defun canshu4 ()
  (setq dcl_id (load_dialog "canshu4.dcl"))
  (if (not (new_dialog "canshu4" dcl_id)) (exit))
  (set_tile "ln" "0")
  (setq ln 0.0)
  (set_tile "vn" "0")
  (setq vn 0.0)
  (set_tile "pco2" "0")
  (setq pco2 0.0)
  (set_tile "ph2o" "0")
  (setq ph2o 0.0)
  (set_tile "qdjiaohe" "0")
  (setq qdjiaohe 0.0)
  (set_tile "x1" "0")
  (setq x1 0.0)
  (action_tile "ln" "(setq ln (atof $value))")
  (action_tile "vn" "(setq vn (atof $value))")
  (action_tile "pco2" "(setq pco2 (atof $value))")
  (action_tile "ph2o" "(setq ph2o (atof $value))")
  (action_tile "qdjiaohe" "(setq qdjiaohe (atof $value))")
  (action_tile "x1" "(setq x1 (atof $value))")
  (action_tile "accept" "(chashu4)")
  (start_dialog)
  (unload_dialog dcl_id)
  (princ)
  )
;********************字符串转化为序列**********************
  (defun stol (cval / n1 n2 n3 n4 n5 nlist)
     (setq
       n1 cval
       n2 (strlen n1)
       nlist ' ()
       n4 ""
       n5 0
       )
     (while (< n5 n2)
       (setq
         n3 (read n1)
         nlist (append nlist (list n3))
         n4 (strcat n4 (itoa n3) " ")
         n5 (strlen n4)
         n1 (substr cval (1+ n5))
         )
       )
     (setq nlist nlist)
     )
  ;------------------------------------------------------------
  (setq x1 (dimx_tile "my_jiare")
        y1 (dimy_tile "my_jiare")
        )
  (start_image "my_jiare")
  (fill_image 0 0 x1 y1 65)
  (slide_image 0 0 x1 y1 "jiarelu1")
  (end_image)
  (action_tile "accept" "(canshu1)")
  (start_dialog)
  (unload_dialog dcl_id)
  (princ)
  )

(defun c:canshu ()
  (setq dcl_id (load_dialog "canshu0.dcl"))
  (if (not (new_dialog "canshu0" dcl_id))(exit))
  (setq  e 220.0;推料比
         h 550.0;有效炉底度
         aaa 0.20;料坯与炉墙内表面的距离m
         #pr ' (7876 7861 7863 7858 7855 7834)
         #v ' ((99999.9 0.0 50.0 100.0 150.0 200.0 250.0 300.0 350.0 400.0 450.0 500.0 550.0 600.0 650.0 700.0 750.0 800.0 850.0 900.0 950.0 1000.0 1050.0 1100.0 1150.0 1200.0 1300.0)
              (88888.8 65.1 62.8 60.2 57.7 55.6 53.0 50.9 48.5 46.5 43.5 41.1 39.4 37.4 36.1 34.0 31.9 30.1 27.7 27.2 27.2 27.7 28.0 28.5 29.3 29.8 31.0)
              (77777.7 59.5 58.6 57.5 55.2 53.5 51.5 49.4 47.7 44.8 42.3 40.2 38.1 36.1 34.0 31.9 29.8 28.5 27.2 26.7 27.2 27.7 28.0 28.5 29.3 29.8 31.0)
              (66666.6 51.9 51.5 51.1 49.9 48.5 46.5 44.4 43.6 42.7 41.1 39.3 37.7 35.6 34.0 31.9 28.5 25.9 25.9 26.4 27.2 27.7 28.0 28.5 29.3 29.8 31.0)
              (55555.5 51.9 51.5 50.6 49.8 48.1 46.9 45.6 44.3 41.9 40.0 38.1 36.1 33.6 32.0 30.0 27.0 24.8 24.8 25.7 26.1 26.9 27.2 28.0 28.7 29.5 30.5)
              (44444.4 49.8 49.4 48.1 46.9 45.1 43.0 41.4 40.2 38.1 36.4 35.2 34.0 32.7 31.4 30.1 26.9 24.3 24.3 25.7 26.5 26.9 27.7 28.6 29.4 30.2 31.5)
              (33333.3 45.2 45.2 44.8 42.4 42.7 41.1 40.2 38.5 37.2 36.1 34.7 33.5 32.0 30.0 28.3 27.0 23.7 23.7 24.8 25.7 26.1 26.9 27.2 28.0 28.6 30.0)
             );导热系数表
      
        ^aa ' ((99999.9 50.0 100.0 150.0 200.0 250.0 300.0 350.0 400.0 450.0 500.0 550.0 600.0 650.0 700.0 750.0 800.0 850.0 900.0 950.0 1000.0 1050.0 1150.0 1250.0)
               (88888.8 0.059 0.053 0.050 0.047 0.044 0.040 0.037 0.034 0.030 0.027 0.024 0.022 0.019 0.014 0.017 0.017 0.015 0.019 0.019 0.020 0.020 0.020 0.020)
               (77777.7 0.055 0.052 0.048 0.045 0.042 0.040 0.036 0.033 0.029 0.026 0.023 0.021 0.018 0.013 0.014 0.015 0.016 0.019 0.020 0.020 0.021 0.021 0.021)
               (66666.6 0.049 0.046 0.044 0.041 0.038 0.036 0.033 0.031 0.028 0.026 0.023 0.021 0.018 0.010 0.014 0.017 0.019 0.019 0.020 0.021 0.021 0.021 0.021)
               (55555.5 0.048 0.046 0.044 0.041 0.039 0.037 0.034 0.031 0.028 0.025 0.023 0.021 0.019 0.009 0.020 0.018 0.019 0.019 0.020 0.020 0.021 0.021 0.021)
               (44444.4 0.046 0.042 0.040 0.037 0.035 0.032 0.030 0.028 0.025 0.023 0.022 0.021 0.019 0.007 0.020 0.019 0.019 0.019 0.020 0.020 0.021 0.021 0.021)
               (33333.3 0.043 0.040 0.038 0.036 0.034 0.032 0.029 0.028 0.026 0.024 0.022 0.020 0.017 0.006 0.019 0.019 0.019 0.019 0.020 0.020 0.021 0.021 0.021)
              );碳素钢的导温系数
         @o ' ((0.0 0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0 3.0 4.0 5.0)
               (0.50 1.00 0.92 0.86 0.80 0.76 0.72 0.68 0.66 0.64 0.62 0.60 0.49 0.40 0.0)
               (0.75 1.00 0.88 0.79 0.72 0.67 0.62 0.58 0.55 0.53 0.50 0.48 0.37 0.30 0.0)
               (1.00 1.00 0.84 0.74 0.67 0.62 0.57 0.53 0.50 0.47 0.44 0.42 0.32 0.24 0.0)
               (1.50 1.00 0.78 0.66 0.58 0.53 0.49 0.45 0.42 0.40 0.37 0.35 0.25 0.17 0.0)
               (2.00 1.00 0.72 0.60 0.52 0.47 0.42 0.39 0.36 0.33 0.31 0.29 0.20 0.12 0.0)
               (3.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.0)
              )
        #cp ' ((99999.9 100.0 150.0 200.0 250.0 300.0 350.0 400.0 450.0 500.0 550.0 600.0 650.0 700.0 750.0 800.0 850.0 900.0 950.0 1000.0 1050.0 1100.0 1150.0 1200.0 1300.0 1400.0)
               (88888.8 0.4857 0.4940 0.5024 0.5108 0.5192 0.5275 0.5359 0.5485 0.5610 0.5736 0.5903 0.6113 0.6280 0.6448 0.6783 0.6824 0.6950 0.6908 0.6908 0.6908 0.6908 0.6866 0.6866 0.6866 0.6992 0.0)
               (77777.7 0.4857 0.4940 0.5024 0.5108 0.5192 0.5275 0.5401 0.5485 0.5610 0.5778 0.5903 0.6071 0.6280 0.6615 0.6824 0.6950 0.7034 0.6992 0.6950 0.6950 0.6950 0.6908 0.6908 0.6908 0.6866 0.0)
               (66666.6 0.4857 0.4940 0.5024 0.5108 0.5192 0.5275 0.5401 0.5485 0.5610 0.5736 0.5903 0.6071 0.6280 0.6699 0.7034 0.7034 0.7034 0.6992 0.6950 0.6908 0.6908 0.6908 0.6866 0.6866 0.6866 0.0)
               (55555.5 0.4773 0.4940 0.5024 0.5108 0.5192 0.5272 0.5401 0.5485 0.5568 0.5694 0.5862 0.5987 0.6196 0.7034 0.7159 0.7076 0.7034 0.6992 0.6950 0.8908 0.6866 0.6866 0.6824 0.6824 0.6824 0.0)
               (44444.4 0.4857 0.5024 0.5150 0.5234 0.5317 0.5401 0.5485 0.5568 0.5694 0.5820 0.5945 0.6029 0.6196 0.7243 0.7159 0.7118 0.7076 0.7034 0.6992 0.6950 0.6950 0.6908 0.6908 0.6908 0.6908 0.0)
               (33333.3 0.4857 0.5024 0.5150 0.5234 0.5317 0.5401 0.5443 0.5568 0.5694 0.5778 0.5862 0.5568 0.6155 0.7201 0.7159 0.7118 0.7076 0.7034 0.6992 0.6950 0.6950 0.6908 0.6908 0.6908 0.6866 0.0)
              );钢比热
        ck (cond  ((<= tk 200) 1.296)
                  ((<= tk 400) 1.296)
                  ((<= tk 700) 1.338)
                  ((<= tk 1000) 1.379)
                  ((<= tk 1200) 1.421)
                  ((<= tk 1500) 1.463)
                  ((<= tk 1800) 1.463)
                  ((<= tk 2100) 1.505));空气比热
        cpr ' ((0 200 400 600 800 1000 1200)
               (1.363 1.392 1.425 1.463 1.496 1.534 1.563)
               (1.388 1.430 1.476 1.517 1.559 1.597 1.630)
               );燃料比热
        )
  ;*******************查取导热系数**********************
  (defun drxs ($tj / $a $c $d $e $f)
   (setq $a 1 )
   (if (and (>= $tj 0) (<= $tj 1300))
    (progn
      (while (>= $tj (nth $a (nth 0 #v)))
        (setq $a (+ $a 1))
        )
  (setq $c (nth (- $a 1) (nth 0 #v))
        $d (nth $a (nth 0 #v))
        $e (nth (- $a 1) (nth #b #v))
        $f (nth $a (nth #b #v))
        $g (* 3.6 (+ $e (* (- $f $e) (/ (- $tj $c) (- $d $c)))))
        )
      )
     )
    )
  ;********************查取导温系数*********************
  (defun dwxs (^tj / ^a)
     (setq ^a 1)
  (if (and (>= ^tj 50) (<= ^tj 1250))
    (progn
      (while (>= ^tj (nth ^a (nth 0 ^aa)))
        (setq ^a (+ ^a 1))
        )
  (setq ^c (nth (- ^a 1) (nth #b ^aa))
        )
      )
    )
    )
  ;*******************查取fai值**************************
  (defun fai (@a @b /  @c @d a@ b@ c@ d@ e@ f@ g@ h@ i@ j@)
   (setq  @c 0
          @d 0
      )
      (if (and (>= @a 0.0) (<= @a 4.0))
        (progn
          (if (and (>= @b 0.50) (<= @b 2.00))
            (progn
             (while (>= @a (nth @c (nth 0 @o)))
              (setq @c (+ @c 1))
             )
            (while (>= @b (nth 0 (nth @d @o)))
              (setq @d (+ @d 1))
            )
            (setq a@ (nth (- @c 1) (nth (- @d 1) @o))
                  b@ (nth @c (nth (- @d 1) @o))
                  c@ (nth (- @c 1) (nth @d @o))
                  d@ (nth @c (nth @d @o))
                  e@ (nth (- @c 1) (nth 0 @o))
                  f@ (nth @c (nth 0 @o))
                  g@ (nth 0 (nth (- @d 1) @o))
                  h@ (nth 0 (nth @d @o))
                  i@ (+ a@ (* (- b@ a@) (/ (- @a e@) (- f@ e@))))
                  j@ (+ b@ (* (- d@ c@) (/ (- @a e@) (- f@ e@))))
                  k@ (+ i@ (* (- j@ i@) (/ (- @b g@) (- h@ g@))))
                  )
          )
          )
         )
        )
      )
;***********************查取钢比热值************************
  (defun fcp (#tj / #a #c #d #e #f)
      (setq #a 1)
       (if (and (>= #tj 100) (<= #tj 1300))
         (progn
           (while (>= #tj (nth #a (nth 0 #cp)))
           (setq #a (+ #a 1))
           )
          )
        )
  (setq #c (nth (- #a 1) (nth 0 #cp))
        #d (nth #a (nth 0 #cp))
        #e (nth (- #a 1) (nth #b #cp))
        #f (nth #a (nth #b #cp))
        #g (+ #e (* (- #f #e) (/ (- #tj #c) (- #d #c)))))
    )
  ;*********************查取燃料平均比热*********************
(defun rlbr (/ w #c #d #e #f #h #i #g #j)
   (setq w 0)
   (while (>= tr (nth w (nth 0 cpr)))
        (setq w (+ w 1))
        )
  (setq #c (nth (- w 1) (nth 0 cpr))
        #d (nth w (nth 0 cpr))
        #e (nth (- w 1) (nth 1 cpr))
        #f (nth w (nth 1 cpr))
        #h (nth (- w 1) (nth 2 cpr))
        #i (nth w (nth 2 cpr))
        #g (+ #e (* (- #f #e) (/ (- tr #c) (- #d #c))))
        #j (+ #h (* (- #i #h) (/ (- tr #c) (- #d #c))))
        cr (+ (* #g x1) (* #j (- 1 x1)))
        )
    )
  ;***********************查取废气比热***********************
  (defun bire (wd)
   (setq cpjl (cond  ((<= wd 200) 1.379);天然气比热
                  ((<= wd 400) 1.421)
                  ((<= wd 700) 1.463)
                  ((<= wd 1000) 1.505)
                  ((<= wd 1200) 1.547)
                  ((<= wd 1500) 1.588)
                  ((<= wd 1800) 1.630)
                  ((<= wd 2100) 1.672))
         cpgl (cond  ((<= wd 200) 1.421);高炉煤气比热
                  ((<= wd 400) 1.463)
                  ((<= wd 700) 1.505)
                  ((<= wd 1000) 1.547)
                  ((<= wd 1200) 1.588)
                  ((<= wd 1500) 1.630)
                  ((<= wd 1800) 1.672)
                  ((<= wd 2100) 1.714))
        cphh (+ (* cpjl x1) (* cpgl (- 1 x1))) ;混合比热
        )
      )
;***************************************************
  ;******************主计算程序***********************
  ;***************************************************
  (defun jiazai ()
    (setq #b (+ steel 1)
          pco2 (/ pco21 100)
          ph2o (/ ph2o1 100)
          n1 (/ p (* h l 2s e))
          n (cond ((< n1 1.3) 1)
                  ((>= n1 1.3) 2)
                  )
          b (+ (* n l) (* (+ n 1) aaa));炉膛内宽
          sj (/ (* 5.4 b) (+ 5.41 b))
          sy (/ (* 3.6 b) (+ 4.41 b))
          syun (/ (* 4.68 b) (+ 5.01 b));各段平均有效射线行程!!!!!!!!!!!!!!!
          tgj (+ tbz 170);设加热段炉气温度比加热终了时炉气温度高170摄氏度
          )
    (qiwen)
    tc (/ (expt (/ 2s 2) 2) 0.022);均热时间
    tg1 (- tbz (* 0.7 *t));加热终了时钢坯的平均温度
    (drxs tg1)
    (setq v2 $g)
    qb1 (/ (* v2 *t 2) s);加热终了时给刚表面的热流
    t1 (- (* 100 (expt (+ (/ qb1 9.89) (expt (/ (+ tbz 273) 100) 4)) 0.25)) 273); 均热段炉气温度
    *tbz (/ *t 0.24);加热终了时钢坯的温度
    tg2 (- tbz (* 0.7 *tbz));此时钢坯的平均温度
    (drxs tg2)
    (setq v3 $g)
    q2 (/ (* 2 v3 *tbz 3.6) s);加热段末端处给刚表面的热流
    t2 (- (* 100 (expt (+ (/ q2 10.06) (expt (/ (+ tbz 273) 100) 4)) 0.25)) 273);加热段炉气温度
    (fcp t2)
    (setq cpj2 #g)
    (rlbr)
    (bire tft)
    (setq cft cphh);混合燃气比热
    (bire t2)
    (setq cfj cphh);加热段废气比热
    (setq ij (* t2 cpj2);焓值i..加热二界面处金属加热有关参数
          x4 (/ (- (+ qb (* ln ck tk) (* tr cr)) (* vn cft tft)) (+ qb (* ln ck tk) (* tr cr)));计算炉膛燃料利用系数
          x4j (/ (- (+ qb (* ln ck tk) (* tr cr)) (* vn cfj t2)) (+ qb (* ln ck tk) (* tr cr)));加热段燃料利用系数
          )
    (fcp tg1)
    (setq cpj3 #g
          *i (* tg1 cpj3);总热焓量
          qxf 500000.0
          fm (* b (- (+ hys 1.1) 0.255));b为炉膛宽度hys为炉膛上部高度
          qf (* qxf fm);加热段向预热段的辐射量
          *i3 (+ (* *i (- 1 (/ x4j x4))) (/ qf p));金属在预热段的热焓增量
          )
          (setq #tj1 tg2)
           (fcp #tj1);假设界面1处平均温度,循环求解
          (setq #tj11 (/ *i3 #g)
                )
           (while (<= (abs (/ (- #tj1 #tj11) #tj11)) 0.009)
             (progn
               (setq #tj1 (- #tj1 1)
                     )
               (fcp #tj1)
               (setq #tj11 (/ *i3 #g)
                     )
               )
             )
          (setq tj1 #tj11;最终界面1处金属的平均温度
                cpj1 #g)
           (drxs tj1)
          (setq v1 $g);一界面处的导热系数
           (setq qb11 0
                 cs 0
                 qb1 (* cgkm (- (expt (/ (+ t2 273) 100.0) 4) (expt (/ (+ tj1 273 cs) 100.0) 4)))
                 )
          (while (<= 0.0001 (/ (abs (- qb11 qb1)) qb1))
            (setq qb11 qb1
                  cs (/ (* s qb11) (* 3 v1))
                  qb1 (* cgkm (- (expt (/ (+ t2 273) 100.0) 4) (expt (/ (+ tj1 273 cs) 100.0) 4)))
                  )
            );采用顺序渐进法求解界面一处热流密度
           (setq tb1 (+ tj1 (/ (* qb1 s) (* 3 v1)));金属表面温度
                 *t1 (/ (* qb1 s) (* 2 v1));金属断面温差
                 tz1 (- tb1 *t1)
                 iy (* cpj1 tj1);一界面处金属加热有关数
                 tb0 0
                 qb0 (* cgkmy (- (expt (/ (+ tft 273) 100.0) 4) (expt (/ (+ tb0 273) 100.0) 4)))
                 qjj (/ (- qb1 q2) (log (/ qb1 q2)));加热段平均热流
                 qjy (sqrt (* qb1 qb0));预热段平均热流
                 ty (/ (* *i3 s pr) qjy);预热段金属加热时间
                 tj (/ (* *i2 s pr) qjj);加热段金属加热时间
                 tzong (+ ty tj tc);总加热时间
                 c (/ tzong (* 100 2s));单位加热时间
                 pc (/ (* pr s) tzong);单位面积产量(有效)
           )
          )
    ;****************炉膛热交换计算和炉温计算 *******************
  (defun qiwen ()
  (setq        tgyj (/ (+ tgj tft) 2);预热段炉气温度变化近似成线性
        tgyun (+ tbz 50);运热段炉气温度变化近似呈线性
        egj (+ (* 0.71 (expt (* pco2 sj) 0.3333) (expt (/ (+ 273 tgj) 100) -0.5)) (/ (* 7.1 (expt ph2o 0.8) (expt sj 0.6) 100) (+ tgj 273)));加热段炉气黑度
        egy (+ (* 0.71 (expt (* pco2 sy) 0.3333) (expt (/ (+ 273 tgyj) 100) -0.5)) (/ (* 7.1 (expt ph2o 0.8) (expt sy 0.6) 100) (+ tgyj 273)));预热段炉气黑度
        egyun (+ (* 0.71 (expt (* pco2 syun) 0.3333) (expt (/ (+ 273 tgyunj) 100) -0.5)) (/ (* 7.1 (expt ph2o 0.8) (expt syun 0.6) 100) (+ tgyunj 273)));均加热段炉气黑度
        lm (* n l)
        okmj (/ lm (+ (* 2 hjs) (* 1.047 b)));加热段角度系数(拱顶)
        okmy (/ lm (+ (* 2 hys) (* 1.047 b)));预热段角度系数
        okmyun (/ lm (+ (* 2 hyuns) (* 1.047 b)));均热段角度系数
        em 0.8;炉料的黑度
        cgkm (/ (* 20.43 egj em (+ 1 (* okmj (- 1 egj)))) (+ egj (* okmj (- 1 egj) (+ em (* egj (- 1 em))))));加热段导来辐射系数
        cgkmy (/ (* 20.43 egy em (+ 1 (* okmy (- 1 egy)))) (+ egy (* okmy (- 1 egy) (+ em (* egy (- 1 em))))));预热段导来辐射系数
        cgkmyun (/ (* 20.43 egyun em (+ 1 (* okmyun (- 1 egyun)))) (+ egyun (* okmyun (- 1 egyun) (+ em (*egyun (- 1 em))))));均热段导来辐射系数
        cgkmj (/ (+ cgkm (+ cgkmy cgkmyun)) 3);平均导来辐射系数
        )
    )
********对输入数据进行判断连接下一对话框*************
  (defun ludi()
    (setq bb (stol my_ranqi))
    (setq cc (length bb))
    (if (= cc 2)
      (progn
        (peibixishu)
        (while (or (<= x1 0) (>= x1 1))
          (alert "配比系数输入错误!!!")
          (peibixishu)
          )
        )
      (progn
        (cond ((= 0 (nth 0 bb)) (setq x1 1))
              ((= 1 (nth 0 bb)) (setq x1 0))
              )       
      )
      )
    (cond ((or (<= tbz 800) (>= tbz 1320)) (alert "请考虑金属表面最终温度是否合适!!!"))
          ((<= *t 0) (alert "温差输入错误!!!"))
          ((< 2s 0.2) (alert "请选用两段式加热炉进行加热计算."))
          ((or (<= l 0.0) (<= 2s 0.0) (<= kuan 0.0)) (alert "原料尺寸不应小于0!!!"))
          ((<= p 0) (alert "生产率输入错误!!!"))
          ((<= qd 0) (alert "低发热量输入错误!!!"))
          (t (canshu6))
     )
    )
  (defun chashu6 ()
    (cond ((< tk 0) (progn (alert "空气温度输入错误!!!") (canshu2.1)))
          ((< tr 0) (progn (alert "燃气温度输入错误!!!") (canshu2.1)))
          ((<= tft 0) (progn (alert "废膛温度输入错误!!!") (canshu2.1)))
          (t (canshu7))
     )
    )
  (defun chashu7 ()
    (cond ((<= ln  0) (progn (alert "Ln输入错误!!!") (canshu3.3)))
          ((<= vn 0) (progn (alert "Vn输入错误!!!") (canshu3.3)))
          ((<= pco21 0) (progn (alert "燃烧产物中CO2所占体积分数输入错误!!!") (canshu3.3)))
          ((<= ph2o1 0) (progn (alert "燃烧产物中水蒸汽所占体积分数输入错误!!!") (canshu3.3)))
          ((>= (+ pco21 Ph2o1) 100.0) (progn (alert "燃烧产物体积分数输入错误!!!") (canshu3.3)))
          (t (jiazai))
     )
   )
(defun jianyan ()
(if (or (< hys 0.8) (> hys 1.0) (> hjs 1.6) (< hjs 1.5)(< hyuns 1.0) (> hyuns 1.5))
    (progn (alert "参数输入错误!!!")
   (canshu9))
    (jiazai)
    )
   )
  ;********************对话框驱动程序区**************************
  (defun canshu5 ()
   (setq dcl_id (load_dialog "canshu5.dcl"))
   (if (not (new_dialog "canshu5" dcl_id)) (exit))
   (setq hys 0.9
         hjs 1.6
         lc 4.0
         )
   (set_tile "tbz" "0")
   (setq tbz 0.0)
   (set_tile "*t" "0")
   (setq *t 0.0)
   (set_tile "2s" "0")
   (setq 2s 0.0)
   (set_tile "l" "0")
   (setq l 0.0)
   (set_tile "kuan" "0")
   (setq kuan 0.0)
   (set_tile "p" "0")
   (setq p 0.0)
   (set_tile "qd" "0")
   (setq qd 0.0)
   (set_tile "ranqi" "0")
   (setq my_ranqi "0")
   (action_tile "tbz" "(setq tbz (atof $value))")
   (action_tile "*t" "(setq *t (atof $value))")
   (action_tile "2s" "(setq 2s (atof $value))")
   (action_tile "l" "(setq l (atof $value))")
   (action_tile "kuan" "(setq kuan (atof $value))")
   (action_tile "p" "(setq p (* 1000 (atof $value)))")
   (action_tile "qd" "(setq qd (atof $value))")
   (action_tile "ranqi" "(setq my_ranqi $value)")
   (action_tile "accept" "(ludi)")
   (start_dialog)
   (unload_dialog dcl_id)
   (princ)
  )
  (defun canshu6 ()
   (setq dcl_id (load_dialog "canshu6.dcl"))
   (if (not (new_dialog "canshu6" dcl_id)) (exit))
  (set_tile "steel" "0")
  (setq steel 0)
  (set_tile "tk" "0")
  (setq tk 0.0)
  (set_tile "tr" "0")
  (setq tr 0.0)
  (set_tile "tft" "0")]
  (setq tft 0.0)
  (action_tile "steel" "(setq steel (atoi $value))")
   (action_tile "tk" "(setq tk (atof $value))")
   (action_tile "tr" "(setq tr (atof $value))")
   (action_tile "tft" "(setq tft (atof $value))")
   (action_tile "accept" "(chashu6)")
   (start_dialog)
   (unload_dialog dcl_id)
   (princ)
  )
  (defun canshu7 ()
  (setq dcl_id (load_dialog "canshu7.dcl"))
  (if (not (new_dialog "canshu7" dcl_id)) (exit))
  (set_tile "ln" "0")
  (setq ln 0.0)
  (set_tile "vn" "0")
  (setq vn 0.0)
  (set_tile "pco2" "13.27")
  (setq pco21 13.56)
  (set_tile "ph2o" "13.01")
  (setq ph2o1 13.03)
  (action_tile "ln" "(setq ln (atof $value))")
  (action_tile "vn" "(setq vn (atof $value))")
  (action_tile "pco2" "(setq pco21 (atof $value))")
  (action_tile "ph2o" "(setq ph2o1 (atof $value))")
  (action_tile "accept" "(chashu7)")
  (start_dialog)
  (unload_dialog dcl_id)
  (princ)
  )
  (defun canshu8 ()
  (setq dcl_id (load_dialog "canshu8.dcl"))
  (if (not (new_dialog "canshu8" dcl_id)) (exit))
  (if (or (< c 0.1) (> c 0.15))
    (progn
      (alert "不符合一般低碳钢的单位加热时间要求")
      (canshu9)
      )
    (set_tile "error" "符合单位加热时间要求(0.1--0.15)")
    )
  (set_tile "tzong" (rtos tzong))
  (set_tile "c" (rtos c))
  (set_tile "hys" (rtos hys))
  (set_tile "hjs" (rtos hjs))
  (set_tile "hyuns" (rtos hyuns))
  (set_tile "b" (rtos b))
  (action_tile "queding" "(canshu9)")
  (start_dialog)
  (unload_dialog dcl_id)
  (princ)
  )
  (defun canshu9 ()
  (setq dcl_id (load_dialog "canshu9.dcl"))
  (if (not (new_dialog "canshu9" dcl_id)) (exit))
  (set_tile "tk" "0")
  (setq tk 0.0)
  (set_tile "tr" "0")
  (setq tr 0.0)
  (set_tile "hys" "1.0")
  (setq hys 1.0)
  (set_tile "hjs" "1.5")
  (setq hjs 1.5)
  (set_tile "hyuns" "1.3")
  (setq hyuns 1.3)
  (action_tile "tk" "(setq tk (atof $value))")
  (action_tile "tr" "(setq tr (atof $value))")
  (action_tile "hys" "(setq hys (atof $value))")
  (action_tile "hjs" "(setq hjs (atof $value))")
  (action_tile "hyuns" "(setq hyuns (atof $value))")
  (action_tile "accept" "(jianyan)")
  (start_dialog)
  (unload_dialog dcl_id)
  (princ)
  )
  ;*********************配比系数对话框驱动*******************
(defun peibixishu ()
  (setq dcl_id (load_dialog "peibixishu.dcl"))
  (if (not (new_dialog "peibixishu" dcl_id)) (exit))
  (set_tile "x1" "0")
  (setq x1 0)
  (action_tile "x1" "(setq x1 (atof $value))")
  (start_dialog)
  (unload_dialog dcl_id)
  (princ)
  )
  ;********************字符串转化为序列**********************
  (defun stol (cval / n1 n2 n3 n4 n5 nlist)
     (setq
       n1 cval
       n2 (strlen n1)
       nlist ' ()
       n4 ""
       n5 0
       )
     (while (< n5 n2)
       (setq
         n3 (read n1)
         nlist (append nlist (list n3))
         n4 (strcat n4 (itoa n3) " ")
         n5 (strlen n4)
         n1 (substr cval (1+ n5))
         )
       )
     (setq nlist nlist)
     )
  ;------------------------------------------------------------
  (setq x1 (dimx_tile "my_jiare")
        y1 (dimy_tile "my_jiare")
        )
  (start_image "my_jiare")
  (fill_image 0 0 x1 y1 65)
  (slide_image 0 0 x1 y1 "jiarelu1")
  (end_image)
  (action_tile "accept" "(canshu1)")
  (start_dialog)
  (unload_dialog dcl_id)
  (princ)
  )
       
                           
    帮忙看看  3。1  和3。2  有没有问题  

联系:QQ:252740640      邮箱:guokong2006@126.com      我25号答辩要用  加急啊  拜托了!!!!!!!!!!!!!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-12-18 23:53 , Processed in 0.186574 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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