Dim dp!, k!, h!, uw!, uo!, re#, d!, rw!, t%, n%, i%, E#, nt%, nw%, No#
Dim o#, A#, Boi#, dens#
Dim sw(100) As Double
Dim fw(100) As Double
Dim kro(100) As Double
Dim krw(100) As Double
Dim qo(100) As Double
Dim qw(100) As Double
Dim annualproducedqo(100) As Double
If Combo1.Text = "直线井排" And Combo1.Text = "采收率1%" Then
d = 288.7 '井距
nw = 24 '水井数
E = 0.48 '波及系数
t = 23 't年后见水
re = 0.571 * (d ^ 2) ^ 0.5 '折算半径
qo(0) = 23.49 '见水前的产油量
End If
dp = 0.5 ' Val(Text1.Text)
n = 4 ' Val(Text2.Text)
A = 4.04 * 10 ^ 6 'Val(Text3.Text)
h = 36.67 'Val(Text3.Text)
rw = 0.12 'Val(Text4.Text)
uo = 1.5 'Val(Text5.Text)
uw = 1 'Val(Text6.Text)
o = 0.2 'Val(Text7.Text)
k = 0.2 'Val(Text8.Text)
Boi = 1.08 'Val(Text9.Text)
dens = 0.8 'Val(Text10.Text)
No = 16.46 * 10 ^ 6
nt = 48
sw(0) = 0.25
kro(0) = 1
krw(0) = 0
fw(0) = 0
For i = 1 To t
sw(i) = sw(i - 1) + qo(i - 1) * (nt - nw) * 300 / dens / A / h / o / E
kro(i) = 5.0525 * sw(i) ^ 4 - 14.866 * sw(i) ^ 3 + 18.144 * sw(i) ^ 2 - 11.159 * sw(i) + 2.8681
krw(i) = -163.16 * sw(i) ^ 6 + 569.84 * sw(i) ^ 5 - 804.81 * sw(i) ^ 4 + 587.39 * sw(i) ^ 3 - 231.71 * sw(i) ^ 2 + 46.766 * sw(i) - 3.7606
qo(i) = qo(0)
qw(i) = 0
fw(i) = 1 / (1 + kro(i) * uw / krw(i) / uo)
Next
For i = t + 1 To n
sw(i) = sw(i - 1) + qo(i - 1) * (nt - nw) * 300 / dens / A / h / o / E
kro(i) = 5.0525 * sw(i) ^ 4 - 14.866 * sw(i) ^ 3 + 18.144 * sw(i) ^ 2 - 11.159 * sw(i) + 2.8681
krw(i) = -163.16 * sw(i) ^ 6 + 569.84 * sw(i) ^ 5 - 804.81 * sw(i) ^ 4 + 587.39 * sw(i) ^ 3 - 231.71 * sw(i) ^ 2 + 46.766 * sw(i) - 3.7606
qo(i) = 542.87 * k * kro(i) * h * dp / uo / (Log(re / rw)) / Boi * 0.8
qw(i) = 542.87 * k * krw(i) * h * dp / uw / (Log(re / rw))
fw(i) = 1 / (1 + kro(i) * uw / krw(i) / uo)
Next
For i = 1 To n
annualproducedqo(i) = qo(i) * 300 * (nt - nw)
Next
Print: Print: Print: Print: Print: Print: Print: Print:
Text12.Text = "T(year) Sw(%) krw(%) kro(%) fw(%) 区块年产油量t/y 区块年产水量t/y 区块年注水t/y 年产液费用/万元 年注液费用/万元 年管理费用/万元 年销售收入/万元 销售税金及附加/万元 总支出/万元 年利润/万元 累计利润/万元" & vbCrLf
For i = 1 To n
Text12.Text = Text12.Text & Format$(i, "00") & Space(9) & Format$(sw(i - 1), "0.000000") & Space(4) & Format$(krw(i - 1), "0.000000") & Space(5) & Format$(kro(i - 1), "0.000000") & Space(3) & Format$(fw(i), "0.000000") & Space(5) & Format$(annualproducedqo(i), "00000000.000") & Space(10) & Format$(annualproducedqw(i), "00000000.000") & Space(8) & Format$(annualirrigateqw(i), "00000000.000") & Space(5) & Format$(annualproducedcost(i), "00000000.000") & Space(8) & Format$(annualirrigatecost(i), "00000000.000") & Space(9) & Format$(annualmanagecost(i), "00000000.000") & Space(9) & Format$(annualsellincome(i), "00000000.000") & Space(9) & Format$(selltaxandadded(i), "00000000.000") & Space(13) & Format$(totalpayment(i), "00000000.000") & Space(5) & Format$(annualprofit(i), "00000000.000") & Space(3) & Format$(totalprofit(i), "00000000.000") & vbCrLf
Next