module2.bas

来自「燃料燃烧计算程序 Fuel Combustion Computing Sof」· BAS 代码 · 共 203 行

BAS
203
字号
Attribute VB_Name = "Module2"
Public Const WaterMdbFile = "\data\数据.mdb"
Public N As Single
Public u As Single
Public x As Single
Private y As Single
Public z As Single
Public Function SearchG(ByVal t As Single, V As Single) As Boolean
    Dim db As Database
    Dim rs As Recordset
    Dim strSQL As String
    Set db = OpenDatabase(App.Path + WaterMdbFile)
    SearchG = False
    
    strSQL = "SELECT * FROM water "

    strSQL = strSQL & " WHERE t="
    strSQL = strSQL & Str(t)
    
     Set rs = db.OpenRecordset(strSQL)
        If Not (rs.BOF And rs.EOF) Then
             Do While Not rs.EOF
                V = rs.Fields(1).value
                SearchG = True
                Exit Do
                rs.MoveNext
              Loop
           End If
         rs.Close
         db.Close
End Function
 Public Function GQd(ByVal CO, ByVal H2, ByVal CH4, ByVal C2H4, ByVal H2S As Single) As Single
  Dim S As Single
   S = 127.54 * CO + 108 * H2 + 358 * CH4 + 590 * C2H4 + 231.1 * H2S
   GQd = S
 End Function
Public Function GL0(ByVal CO, ByVal H2, ByVal CH4, ByVal C2H4, ByVal H2S, ByVal O2 As Single) As Single
   'Static y As Single
   y = 0.0238 * CO + 0.0238 * H2 + 0.0952 * CH4 + 0.1428 * C2H4 + 0.0714 * H2S - 0.0476 * O2
   GL0 = y
 End Function
Public Function GLY(ByVal CO, ByVal H2, ByVal CH4, ByVal C2H4, ByVal H2S, ByVal CO2, ByVal N2 As Single, ByVal W As Single) As Single
 'Static z As Single
 z = (CO + H2 + 3 * CH4 + 4 * C2H4 + 2 * H2S + CO2 + N2 + W) * 0.01 + (0.79 * y)
 GLY = z
End Function
Public Function GLn(ByVal CO, ByVal H2, ByVal CH4, ByVal C2H4, ByVal H2S, ByVal O2 As Single) As Single
 'Static x As Single
 'Static N As Single
 N = Val(Form2.Text4.Text)
 'x = L0(CO, H2, CH4, C2H4, H2S, O2)
 x = (1 + 0.00124 * Val(Form2.Text3.Text)) * N * y
 GLn = x
End Function
Public Function GSY(ByVal CO, ByVal H2, ByVal CH4, ByVal C2H4, ByVal H2S, ByVal CO2, ByVal O2, ByVal N2, ByVal W As Single) As Single
 'u = L0(CO, H2, CH4, C2H4, H2S, O2)
 'u = (N - 1) * u + LY(CO, H2, CH4, C2H4, H2S, CO2, N2, w) + 0.00124 * V * Ln(V, CO, H2, CH4, C2H4, H2S, O2)
 N = Val(Form2.Text4.Text)
 u = (CO + H2 + 3 * CH4 + 4 * C2H4 + 2 * H2S + CO2 + N2 + W) * 0.01 + (N - 0.21) * y + 0.00124 * Val(Form2.Text3.Text) * x
 GSY = u
End Function
Public Function GPCO2(ByVal CO, ByVal CH4, ByVal C2H4, ByVal CO2 As Single) As Single
 Dim A As Single
 A = (CO + CH4 + 2 * C2H4 + CO2) * 0.01
 A = A * 100 / u
 GPCO2 = A
End Function
Public Function GPSO2(ByVal H2S As Single) As Single
 Dim A As Single
 A = H2S / u
 GPSO2 = A
End Function
Public Function GPN2(ByVal N2, ByVal CO, ByVal H2, ByVal CH4, ByVal C2H4, ByVal H2S, ByVal O2 As Single) As Single
 Dim A As Single
 A = (N2 * 0.01 + 0.79 * x) * 100 / u
 GPN2 = A
End Function
Public Function GPO2(ByVal CO, ByVal H2, ByVal CH4, ByVal C2H4, ByVal H2S, ByVal O2 As Single) As Single
 Dim A As Single
 A = 0.21 * (x - y)
 A = A * 100 / u
 GPO2 = A
End Function
Public Function GPH2O(ByVal H2, ByVal CH4, ByVal C2H4, ByVal H2S, ByVal W, ByVal CO, ByVal O2 As Single) As Single
 Dim A As Single
 'a = (H2 + 2 * CH4 + 2 * C2H4 + H2S + w) * 0.01 + 0.00124 * V * SY(V, CO, H2, CH4, C2H4, H2S, O2, N2, w)
 A = (H2 + 2 * CH4 + 2 * C2H4 + H2S + W) * 0.01 + 0.00124 * Val(Form2.Text3.Text) * x
 A = A * 100 / u
 GPH2O = A
End Function
Public Function GBC2H4(ByVal t As Single)
 Dim C As Single
 C = 1.81514126 + 0.00260694312 * t - 0.000000873543124 * t8t
 GBC2H4 = C
End Function
Public Function GBCH4(ByVal t As Single)
 Dim C As Single
 C = 1.52925165 + 0.00131352198 * t - 0.000000153021978 * t * t
 GBCH4 = C
End Function
Public Function GBH2S(ByVal t As Single)
  Dim C As Single
  C = 1.50175748 + 0.00039416292 * t - 0.000000039707633 * t * t
  GBH2S = C
End Function
Public Function GBH2(ByVal t As Single)
  Dim C As Single
  C = 1.28338694 + 0.0000397565079 * t + 1.05946276E-08 * t * t
  GBH2 = C
End Function
Public Function GBCO(ByVal t As Single)
  Dim C As Single
  C = 1.28432057 + 0.000149187027 * t - 0.00000001922558 * t * t
  GBCO = C
End Function
Public Function GBAir(ByVal t As Single)
Dim C As Single
C = 1.28478578 + 0.000141967442 * t - 1.64954212E-08 * t * t
GBAir = C
End Function
Public Function GBH2O(ByVal t As Single)
 Dim C As Single
 C = 1.46652143 + 0.000263006685 * t - 1.31144689E-08 * t * t
 GBH2O = C
End Function
Public Function GBO2(ByVal t As Single)
 Dim C As Single
 C = 1.30364121 + 0.000207863132 * t - 3.61126374E-08 * t * t
 GBO2 = C
End Function
Public Function GBN2(ByVal t As Single)
 Dim C As Single
 C = 1.2902815 + 0.000107926502 * t - 5.96978022E-09 * t * t
 GBN2 = C
End Function
Public Function GBCO2(ByVal t As Single)
 Dim C As Single
 C = 1.6779859 + 0.000685366197 * t - 0.000000144643162 * t * t - 0.2
 GBCO2 = C
End Function
Public Function GC燃(ByVal t As Single)
 Dim C As Single
 C = (GBCO2(t) * Form2.Label6(0) + GBC2H4(t) * Form2.Label6(1) + GBO2(t) * Form2.Label6(2) + GBH2(t) * Form2.Label6(3) + GBCH4(t) * Form2.Label6(4) + GBCO(t) * Form2.Label6(5) + GBN2(t) * Form2.Label6(6) + GBH2O(t) * Form2.Label14) / 100
 GC燃 = C
End Function
Public Function GQ燃(ByVal t As Single) As Single
 Dim C As Single
 C = GC燃(t) * t
 GQ燃 = C
End Function
Public Function GQ空(ByVal t, ByVal CO, ByVal H2, ByVal CH4, ByVal C2H4, ByVal H2S, ByVal O2 As Single)
 Dim C As Single
 'c = BAir(t) * t * Ln(V, CO, H2, CH4, C2H4, H2S, O2)
 N = Val(Form2.Text4.Text)
 C = (N * y * GBAir(t) + 0.00124 * Val(Form2.Text3.Text) * N * y * GBH2O(t)) * t
 GQ空 = C
End Function
'Public Function C产(ByVal t, ByVal H2, ByVal CH4, ByVal C2H4, ByVal H2S, ByVal H2O, ByVal V, ByVal N2, ByVal CO, ByVal O2, ByVal CO2 As Single)
Public Function GBSO2(ByVal t As Single)
 Dim C As Single
 C = 1.71745219 + 0.000926912288 * t - 0.000000365996504 * t * t
 GBSO2 = C
End Function
Public Function GC产(ByVal t)
 Dim C As Single
 C = GBCO2(t) * Val(Form2.Label21(0)) + GBSO2(t) * Val(Form2.Label21(1)) + GBH2O(t) * Val(Form2.Label21(2)) + GBN2(t) * Val(Form2.Label21(3)) + GBO2(t) * (Form2.Label21(4))
 C = C / 100
 GC产 = C
End Function
Public Function Gt理(ByVal CO, ByVal H2, ByVal CH4, ByVal C2H4, ByVal H2S, ByVal O2 As Single) As Single
  Dim C, l, m, st  As Single
  Dim result As Single
  l = Val(Form2.Text5.Text)
  m = Val(Form2.Text6.Text)
  st = Val(Form2.Text7.Text)
   C = GQd(CO, H2, CH4, C2H4, H2S) + GQ空(m, CO, H2, CH4, C2H4, H2S, O2) + GQ燃(l)
   C = C / (z * GC产(st) + (x - y) * GBAir(st))
 

  result = Abs(C - st)
   If result < 5 Then
     t理 = C
   Else
     Do While result > 5
      st = (C + st) / 2
      C = GQd(CO, H2, CH4, C2H4, H2S) + GQ空(m, CO, H2, CH4, C2H4, H2S, O2) + GQ燃(l)
      C = C / (z * GC产(st) + (x - y) * GBAir(st))
      
      result = Abs(C - st)
     Loop
     Gt理 = C
   End If
End Function









⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?