Hello all,
I am very new to visual basic, I started codeing at the beginning of this semester so bare with me.
Main goal of this post:
Create an array for a table of properties of my gas
Have my program read a temperature value input by the user
Find the values below it and above it (if the temperature given does not fall on a temperature in my chart)
Interpolate to find a value under my specific volume colomn.
I will post my code so far and my table for carbon dioxide.
Private Sub Command1_Click()
Dim x1 As Double
Dim x2 As Double
Dim y1 As Double
Dim y2 As Double
Dim zt As Variant
Dim zv As Variant
Dim a As Double
Dim b As Double
Dim c As Double
Dim d As Double
Dim ab As Double
Dim abc As Double
x1 = Text1.Text
zt = Text2.Text
x2 = Text3.Text
'these x,y,z variables cordinate with the order on the form
y1 = Text4.Text
zv = Text5.Text
y2 = Text6.Text
If zv = "" Then
'to find specific volume
For i = 0 To 36
If Abs(carbondioxidetemp(i, 0) - zt) < 1 Then
'trying to find the value above and below the given value on my array
x1 = carbondioxide(i, 0)
a = zt - x1
b = x2 - x1
c = y2 - y1
ab = a / b
abc = ab * c
zv = abc + y1
Text5.Text = zv
Else
Loop
Else
'to find temperature
a = zv - y1
b = y2 - y1
c = x2 - x1
ab = a / b
abc = ab * c
zt = abc + x1
Text2.Text = zt
End If
End Sub
I have stored my array of table values in a module but nothing works.
Public carbondioxidetemp(i, i) As Double 'celsius
Public carbondioxidevap(i, i) As Double '(m^3/kg)
'Carbon dioxide temperature column (celsius)
carbondioxidetemp(0, 0) = -20
carbondioxidetemp(1, 0) = -19
carbondioxidetemp(2, 0) = -18
carbondioxidetemp(3, 0) = -17
carbondioxidetemp(4, 0) = -16
carbondioxidetemp(5, 0) = -15
carbondioxidetemp(6, 0) = -14
carbondioxidetemp(7, 0) = -12
carbondioxidetemp(8, 0) = -10
carbondioxidetemp(9, 0) = -8
carbondioxidetemp(10, 0) = -6
carbondioxidetemp(11, 0) = -4
carbondioxidetemp(12, 0) = -2
carbondioxidetemp(13, 0) = 0
carbondioxidetemp(14, 0) = 2
carbondioxidetemp(15, 0) = 4
carbondioxidetemp(16, 0) = 5
carbondioxidetemp(17, 0) = 7
carbondioxidetemp(18, 0) = 9
carbondioxidetemp(19, 0) = 11
carbondioxidetemp(20, 0) = 13
carbondioxidetemp(21, 0) = 15
carbondioxidetemp(23, 0) = 17
carbondioxidetemp(24, 0) = 19
carbondioxidetemp(25, 0) = 20
carbondioxidetemp(26, 0) = 21
carbondioxidetemp(27, 0) = 22
carbondioxidetemp(28, 0) = 23
carbondioxidetemp(29, 0) = 24
carbondioxidetemp(30, 0) = 25
carbondioxidetemp(31, 0) = 26
carbondioxidetemp(32, 0) = 27
carbondioxidetemp(33, 0) = 28
carbondioxidetemp(34, 0) = 29
carbondioxidetemp(35, 0) = 30
carbondioxidetemp(36, 0) = 30.978
'Carbon Dioxide Specific Volume as a vapor column (m^3/kg)
carbondioxidevap(0, 1) = 0.019343
carbondioxidevap(1, 1) = 0.018726
carbondioxidevap(2, 1) = 0.018131
carbondioxidevap(3, 1) = 0.017557
carbondioxidevap(4, 1) = 0.017002
carbondioxidevap(5, 1) = 0.016467
carbondioxidevap(6, 1) = 0.01595
carbondioxidevap(7, 1) = 0.014967
carbondioxidevap(8, 1) = 0.014048
carbondioxidevap(9, 1) = 0.013188
carbondioxidevap(10, 1) = 0.012381
carbondioxidevap(12, 1) = 0.011624
carbondioxidevap(13, 1) = 0.010911
carbondioxidevap(14, 1) = 0.010241
carbondioxidevap(15, 1) = 0.009609
carbondioxidevap(16, 1) = 0.009011
carbondioxidevap(17, 1) = 0.008724
carbondioxidevap(18, 1) = 0.008174
carbondioxidevap(19, 1) = 0.007651
carbondioxidevap(20, 1) = 0.007153
carbondioxidevap(21, 1) = 0.006677
carbondioxidevap(23, 1) = 0.006222
carbondioxidevap(24, 1) = 0.005783
carbondioxidevap(25, 1) = 0.005358
carbondioxidevap(26, 1) = 0.005149
carbondioxidevap(27, 1) = 0.004943
carbondioxidevap(28, 1) = 0.004738
carbondioxidevap(29, 1) = 0.004533
carbondioxidevap(30, 1) = 0.004327
carbondioxidevap(31, 1) = 0.00412
carbondioxidevap(32, 1) = 0.003908
carbondioxidevap(33, 1) = 0.00369
carbondioxidevap(34, 1) = 0.003459
carbondioxidevap(35, 1) = 0.003205
carbondioxidevap(36, 1) = 0.002898
carbondioxidevap(37, 1) = 0.002139
I will be watching this post carefully so let me know if I need to give anymore info or if I am not clear on anything. Thanks in advance