Visual Basic Code For Simulating 14C-Choline Metabolism in Transgenic Tobacco Expressing CMO.

Private Sub Command1_Click()
Picture1.Refresh
Picture2.Refresh
Mx = Text47.Text
Label4.Caption = Text47.Text
My1 = Text40.Text
My2 = Text34.Text
Dim Datapts As Integer
Dim q As Integer
Dim SEndCho
Dim SPCho
Dim SGlybet
Dim SPtdC
Dim Total
Dim Timearray(6)
Dim EndChoarray(6)
Dim dEndChoarray(6)
Dim PChoarray(6)
Dim dPChoarray(6)
Dim Glybetarray(6)
Dim dGlybetarray(6)
Dim PtdCarray(6)
Dim dPtdCarray(6)
Sf = Text49.Text
Datapts = 6
q = 0
SEndCho = 0
SPCho = 0
SGlybet = 0
SPtdC = 0
Timearray(1) = 15
Timearray(2) = 30
Timearray(3) = 60
Timearray(4) = 120
Timearray(5) = 300
Timearray(6) = 600
EndChoarray(1) = 393.4 * 20
EndChoarray(2) = 343.2 * 20
EndChoarray(3) = 143.4 * 20
EndChoarray(4) = 38.1 * 20
EndChoarray(5) = 76.9 * 20
EndChoarray(6) = 36.5 * 20
Glybetarray(1) = 0.31 * 20
Glybetarray(2) = 0.5 * 20
Glybetarray(3) = 0.1 * 20
Glybetarray(4) = 2.24 * 20
Glybetarray(5) = 2.54 * 20
Glybetarray(6) = 2.88 * 20
PChoarray(1) = 43.3 * 20
PChoarray(2) = 81.8 * 20
PChoarray(3) = 229.7 * 20
PChoarray(4) = 161.8 * 20
PChoarray(5) = 10.1 * 20
PChoarray(6) = 10.1 * 20
PtdCarray(1) = 22.7 * 20
PtdCarray(2) = 34.4 * 20
PtdCarray(3) = 78.4 * 20
PtdCarray(4) = 257 * 20
PtdCarray(5) = 371.7 * 20
PtdCarray(6) = 412 * 20
For i = 1 To Datapts Step 1
X = Timearray(i)
X = (X * 2000 / Mx)
Y = EndChoarray(i)
Y = 2000 - (Y * 2000 / My1)
Picture1.Circle (X, Y), 30, RGB(0, 200, 0)
Y = Glybetarray(i) * Sf
Y = 2000 - (Y * 2000 / My1)
Picture1.Circle (X, Y), 30, QBColor(9)
Y = PChoarray(i)
Y = 2000 - (Y * 2000 / My1)
Picture1.Circle (X, Y), 30, QBColor(12)
Y = PtdCarray(i)
Y = 2000 - (Y * 2000 / My1)
Picture1.Circle (X, Y), 30, QBColor(13)
Next i
Km1 = Text15.Text
P1 = Text13.Text
P2 = Text14.Text
A1 = Text1.Text
A2 = Text11.Text
Km5 = Text12.Text
Vm5 = Text26.Text
Km6 = Text29.Text
Vm6 = Text31.Text
A5 = Text20.Text
A6 = Text19.Text
B1 = Text2.Text
B2 = Text3.Text
Km8 = Text8.Text
Vm8 = Text41.Text
C1 = Text4.Text
C2 = Text5.Text
Km9 = Text9.Text
Vm9 = Text39.Text
D1 = Text22.Text
D2 = Text21.Text
D5 = Text30.Text
Km2 = Text35.Text
Vm2 = Text33.Text
Km4 = Text7.Text
Vm4 = Text37.Text
E1 = Text24.Text
E2 = Text23.Text
Km3 = Text6.Text
Vm3 = Text38.Text
Km7 = Text28.Text
Vm7 = Text32.Text
Km10 = Text27.Text
Vm10 = Text36.Text
Vm1 = Text42.Text
F1 = Text44.Text
F2 = Text43.Text
Km11 = Text45.Text
Vm11 = Text46.Text
E5 = Text48.Text
G1 = 0
z = Mx / 6000
For t = 0 To Mx Step z
q = Int(t)
A8 = (Vm1 * P2) / (Km1 + P2)
P2 = P2 - z * A8
D3 = (Vm2 * A2) / (Km2 + A2)
E3 = (Vm3 * D2) / (Km3 + D2)
A3 = (Vm5 * E2) / (Km5 + E2)
D4 = (Vm4 * D2) / (Km4 + D2)
C3 = (Vm9 * B2) / (Km9 + B2)
B3 = (Vm8 * F2) / (Km8 + F2)
A4 = (Vm6 * A2) / (Km6 + A2)
A7 = (Vm7 * A6) / (Km7 + A6)
E4 = (Vm10 * E2) / (Km10 + E2)
F3 = (Vm11 * A2) / (Km11 + A2)
If A8 > 0 Then A1 = (A1 * A2 + P1 * z * A8) / (A2 + z * A8)
If A8 > 0 Then A2 = A2 + z * A8
If A3 > 0 Then A1 = (A1 * A2 + E1 * z * A3) / (A2 + z * A3)
If A3 > 0 Then A2 = A2 + z * A3
If A4 > 0 Then A1 = (A1 * A2 - A1 * z * A4) / (A2 - z * A4)
If A4 > 0 Then A2 = A2 - z * A4
If A4 > 0 Then A5 = (A5 * A6 + A1 * z * A4) / (A6 + z * A4)
If A4 > 0 Then A6 = A6 + z * A4
If A7 > 0 Then A5 = (A5 * A6 - A5 * z * A7) / (A6 - z * A7)
If A7 > 0 Then A6 = A6 - z * A7
If A7 > 0 Then A1 = (A1 * A2 + A5 * z * A7) / (A2 + z * A7)
If A7 > 0 Then A2 = A2 + z * A7
If D3 > 0 Then A1 = (A1 * A2 - A1 * z * D3) / (A2 - z * D3)
If D3 > 0 Then A2 = A2 - z * D3
If F3 > 0 Then A1 = (A1 * A2 - A1 * z * F3) / (A2 - z * F3)
If F3 > 0 Then A2 = A2 - z * F3
If F3 > 0 Then F1 = (F1 * F2 + A1 * z * F3) / (F2 + z * F3)
If F3 > 0 Then F2 = F2 + z * F3
If B3 > 0 Then F1 = (F1 * F2 - F1 * z * B3) / (F2 - z * B3)
If B3 > 0 Then F2 = F2 - z * B3
If B3 > 0 Then B1 = (B1 * B2 + F1 * z * B3) / (B2 + z * B3)
If B3 > 0 Then B2 = B2 + z * B3
If C3 > 0 Then B1 = (B1 * B2 - B1 * z * C3) / (B2 - z * C3)
If C3 > 0 Then B2 = B2 - z * C3
If C3 > 0 Then C1 = (C1 * C2 + B1 * z * C3) / (C2 + z * C3)
If C3 > 0 Then C2 = C2 + z * C3
If D3 > 0 Then D1 = (D1 * D2 + A1 * z * D3) / (D2 + z * D3)
If D3 > 0 Then D2 = D2 + z * D3
If D4 > 0 Then D1 = (D1 * D2 - D1 * z * D4) / (D2 - z * D4)
If D4 > 0 Then D2 = D2 - z * D4
If D5 > 0 Then D1 = (D1 * D2 + G1 * z * D5) / (D2 + z * D5)
If D5 > 0 Then D2 = D2 + z * D5
If E3 > 0 Then D1 = (D1 * D2 - D1 * z * E3) / (D2 - z * E3)
If E3 > 0 Then D2 = D2 - z * E3
If E3 > 0 Then E1 = (E1 * E2 + D1 * z * E3) / (E2 + z * E3)
If E3 > 0 Then E2 = E2 + z * E3
If A3 > 0 Then E1 = (E1 * E2 - E1 * z * A3) / (E2 - z * A3)
If A3 > 0 Then E2 = E2 - z * A3
If E4 > 0 Then E1 = (E1 * E2 - E1 * z * E4) / (E2 - z * E4)
If E4 > 0 Then E2 = E2 - z * E4
If E5 > 0 Then E1 = (E1 * E2 + G1 * z * E5) / (E2 + z * E5)
If E5 > 0 Then E2 = E2 + z * E5
If D4 > 0 Then A1 = (A1 * A2 + D1 * z * D4) / (A2 + z * D4)
If D4 > 0 Then A2 = A2 + z * D4
If E4 > 0 Then D1 = (D1 * D2 + E1 * z * E4) / (D2 + z * E4)
If E4 > 0 Then D2 = D2 + z * E4
X = t
Y = P1 * P2
X = (X * 2000 / Mx)
Y = 2000 - (Y * 2000 / My1)
Picture1.PSet (X, Y), QBColor(0)
Y = (A1 * A2) + (A5 * A6) + (F1 * F2)
If q = Timearray(1) Then dEndChoarray(1) = Abs(EndChoarray(1) - Y)
If q = Timearray(2) Then dEndChoarray(2) = Abs(EndChoarray(2) - Y)
If q = Timearray(3) Then dEndChoarray(3) = Abs(EndChoarray(3) - Y)
If q = Timearray(4) Then dEndChoarray(4) = Abs(EndChoarray(4) - Y)
If q = Timearray(5) Then dEndChoarray(5) = Abs(EndChoarray(5) - Y)
If q = Timearray(6) Then dEndChoarray(6) = Abs(EndChoarray(6) - Y)
Y = 2000 - (Y * 2000 / My1)
Picture1.PSet (X, Y), RGB(0, 200, 0)
Y = (B1 * B2) * Sf
Y = 2000 - (Y * 2000 / My1)
Picture1.PSet (X, Y), RGB(0, 200, 245)
Y = C1 * C2
If q = Timearray(1) Then dGlybetarray(1) = Abs(Glybetarray(1) - Y)
If q = Timearray(2) Then dGlybetarray(2) = Abs(Glybetarray(2) - Y)
If q = Timearray(3) Then dGlybetarray(3) = Abs(Glybetarray(3) - Y)
If q = Timearray(4) Then dGlybetarray(4) = Abs(Glybetarray(4) - Y)
If q = Timearray(5) Then dGlybetarray(5) = Abs(Glybetarray(5) - Y)
If q = Timearray(6) Then dGlybetarray(6) = Abs(Glybetarray(6) - Y)
Y = Y * Sf
Y = 2000 - (Y * 2000 / My1)
Picture1.PSet (X, Y), QBColor(9)
Y = D1 * D2
If q = Timearray(1) Then dPChoarray(1) = Abs(PChoarray(1) - Y)
If q = Timearray(2) Then dPChoarray(2) = Abs(PChoarray(2) - Y)
If q = Timearray(3) Then dPChoarray(3) = Abs(PChoarray(3) - Y)
If q = Timearray(4) Then dPChoarray(4) = Abs(PChoarray(4) - Y)
If q = Timearray(5) Then dPChoarray(5) = Abs(PChoarray(5) - Y)
If q = Timearray(6) Then dPChoarray(6) = Abs(PChoarray(6) - Y)
Y = 2000 - (Y * 2000 / My1)
Picture1.PSet (X, Y), QBColor(12)
Y = E1 * E2
If q = Timearray(1) Then dPtdCarray(1) = Abs(PtdCarray(1) - Y)
If q = Timearray(2) Then dPtdCarray(2) = Abs(PtdCarray(2) - Y)
If q = Timearray(3) Then dPtdCarray(3) = Abs(PtdCarray(3) - Y)
If q = Timearray(4) Then dPtdCarray(4) = Abs(PtdCarray(4) - Y)
If q = Timearray(5) Then dPtdCarray(5) = Abs(PtdCarray(5) - Y)
If q = Timearray(6) Then dPtdCarray(6) = Abs(PtdCarray(6) - Y)
Y = 2000 - (Y * 2000 / My1)
Picture1.PSet (X, Y), QBColor(13)
Y = P2
Y = 2000 - (Y * 2000 / My2)
Picture2.PSet (X, Y), QBColor(0)
Y = A2 + A6 + F2
Y = 2000 - (Y * 2000 / My2)
Picture2.PSet (X, Y), RGB(0, 200, 0)
Y = B2 * 50
Y = 2000 - (Y * 2000 / My2)
Picture2.PSet (X, Y), RGB(0, 200, 245)
Y = C2
Y = 2000 - (Y * 2000 / My2)
Picture2.PSet (X, Y), QBColor(9)
Y = D2
Y = 2000 - (Y * 2000 / My2)
Picture2.PSet (X, Y), QBColor(12)
Y = E2 / 10
Y = 2000 - (Y * 2000 / My2)
Picture2.PSet (X, Y), QBColor(13)
Next t
For X = 100 To 500 Step 10
Y = 340
Picture3.PSet (X, Y), QBColor(0)
Y = 570
Picture3.PSet (X, Y), RGB(0, 200, 0)
Y = 800
Picture3.PSet (X, Y), RGB(0, 200, 245)
Y = 1030
Picture3.PSet (X, Y), QBColor(9)
Y = 1260
Picture3.PSet (X, Y), QBColor(12)
Y = 1490
Picture3.PSet (X, Y), QBColor(13)
Next X
For i = 1 To Datapts Step 1
SEndCho = SEndCho + dEndChoarray(i)
SPCho = SPCho + dPChoarray(i)
SGlybet = SGlybet + dGlybetarray(i)
SPtdC = SPtdC + dPtdCarray(i)
Next i
Text10.Text = SEndCho / Datapts
Text16.Text = SGlybet / Datapts
Text17.Text = SPCho / Datapts
Text18.Text = SPtdC / Datapts
Total = (SEndCho + SGlybet + SPCho + SPtdC) / (Datapts * 4)
Text25.Text = Total
End Sub

Private Sub Command2_Click()
Unload Form1
End Sub