I have not found any error yet in my code but my calculation is giving me a wrong answer. I have gone through this code over and over to rectify my mistake but still can't get it right. I would appreciate if someone could point out where in my code that there is no logic. Below are entries: The unshielded secondary air kerma should be = 0.18, the transmission factor should be = 0.11, and the thickness required should be 0.42.
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
Dim Leakage As Double
Dim Leakdistance As Double
Dim SideScatter As Double
Dim SideScatterdistance As Double
Dim LeakageSideScatter As Double
Dim LeakageSideScatterdistance As Double
Dim ForwardBackScatter As Double
Dim ForwardBackScatterdistance As Double
Dim LeakageForwardBackScatter As Double
Dim LeakageForwardBackScatterdistance As Double
Dim weeklysecondaryunshielded As Double
Dim Leakvalue As Double
Dim Sidescattervalue As Double
Dim LeakageSideScattervalue As Double
Dim ForwardBackScattervalue As Double
Dim LeakageForwardBackScattervalue As Double
Dim patients As Double
patients = Convert.ToDouble(txtpatients.Text)
If txtLeak.Text = "" Then
Leakage = 0
Else
Leakdistance = Convert.ToDouble(txtleakdistance.Text)
Leakage = Leakvalue / (Leakdistance ^ 2)
Leakvalue = Convert.ToDouble(txtLeak.Text)
End If
weeklysecondaryunshielded += Leakage
If txtSidescatter.Text = "" Then
SideScatter = 0
Else
SideScatterdistance = Convert.ToDouble(txtSideScatterdistance.Text)
SideScatter = (Sidescattervalue * patients) / (SideScatterdistance ^ 2)
Sidescattervalue = Convert.ToDouble(txtSidescatter.Text)
End If
weeklysecondaryunshielded += SideScatter
If txtLeakageSideScatter.Text = "" Then
LeakageSideScatter = 0
Else
LeakageSideScatterdistance = Convert.ToDouble(txtleakscatterdistance.Text)
LeakageSideScatter = (LeakageSideScattervalue * patients) / (LeakageSideScatterdistance ^ 2)
LeakageSideScattervalue = Convert.ToDouble(txtLeakageSideScatter.Text)
End If
weeklysecondaryunshielded += LeakageSideScatter
If txtForwardBackscatter.Text = "" Then
ForwardBackScatter = 0
Else
ForwardBackScatterdistance = Convert.ToDouble(txtforwardbackscatterdistance.Text)
ForwardBackScatter = (ForwardBackScattervalue * patients) / (ForwardBackScatterdistance ^ 2)
ForwardBackScattervalue = Convert.ToDouble(txtForwardBackscatter.Text)
End If
weeklysecondaryunshielded += ForwardBackScatter
If txtLeakageForward.Text = "" Then
LeakageForwardBackScatter = 0
Else
LeakageForwardBackScatterdistance = Convert.ToDouble(txtleakageforwardbackscatterdistance.Text)
LeakageForwardBackScatter = (LeakageForwardBackScattervalue * patients) / (LeakageForwardBackScatterdistance ^ 2)
LeakageForwardBackScattervalue = Convert.ToDouble(txtLeakageForward.Text)
End If
weeklysecondaryunshielded += LeakageForwardBackScatter
'Calculate the weekly unshielded secondary air kerma
txtweeklysecondaryunshielded.Text = weeklysecondaryunshielded.ToString("0.00")
Dim Secondarytransmissionfactor As Double
Dim Secondaryalphagamma, Secondaryxbarrier, SecondaryNTK, Secondarybetaalpha As Double
Dim Secondaryalpha As Double, Secondarybeta As Double, Secondarygamma As Double
Dim numpatients As Double, occupancy As Double, secondaryairkerma As Double
Dim Secondarydesigngoal As Double, Secondarythicknessrequired As Double
Secondaryalpha = Convert.ToDouble(txtalpha2.Text)
Secondarybeta = Convert.ToDouble(txtbeta2.Text)
Secondarygamma = Convert.ToDouble(txtgamma2.Text)
numpatients = Convert.ToDouble(txtpatients.Text)
occupancy = Convert.ToDouble(txtoccupancy.Text)
secondaryairkerma = Convert.ToDouble(txtweeklysecondaryunshielded.Text)
Secondarydesigngoal = Convert.ToDouble(txtDesigngoal.Text)
'Calculate the transmission factor required for the primary barriers
Secondarytransmissionfactor = (Secondarydesigngoal / occupancy) / secondaryairkerma
txtSecondarytransmissionfactor.Text = Secondarytransmissionfactor.ToString("#.0E+0")
'Calculate the thickness of the lead needed to shield the dedicated chest unit
Secondaryalphagamma = 1 / (Secondaryalpha * Secondarygamma)
SecondaryNTK = ((weeklysecondaryunshielded * occupancy) / Secondarydesigngoal) ^ Secondarygamma
Secondarybetaalpha = Secondarybeta / Secondaryalpha
Secondaryxbarrier = (SecondaryNTK + Secondarybetaalpha) / (1 + Secondarybetaalpha)
' Dim calc As Double
Secondarythicknessrequired = (Secondaryalphagamma) * Math.Log(Secondaryxbarrier)
TxtSecondarythickness.Text = Secondarythicknessrequired.ToString("#.0")
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
Dim Leakage As Double
Dim Leakdistance As Double
Dim SideScatter As Double
Dim SideScatterdistance As Double
Dim LeakageSideScatter As Double
Dim LeakageSideScatterdistance As Double
Dim ForwardBackScatter As Double
Dim ForwardBackScatterdistance As Double
Dim LeakageForwardBackScatter As Double
Dim LeakageForwardBackScatterdistance As Double
Dim weeklysecondaryunshielded As Double
Dim Leakvalue As Double
Dim Sidescattervalue As Double
Dim LeakageSideScattervalue As Double
Dim ForwardBackScattervalue As Double
Dim LeakageForwardBackScattervalue As Double
Dim patients As Double
patients = Convert.ToDouble(txtpatients.Text)
If txtLeak.Text = "" Then
Leakage = 0
Else
Leakdistance = Convert.ToDouble(txtleakdistance.Text)
Leakage = Leakvalue / (Leakdistance ^ 2)
Leakvalue = Convert.ToDouble(txtLeak.Text)
End If
weeklysecondaryunshielded += Leakage
If txtSidescatter.Text = "" Then
SideScatter = 0
Else
SideScatterdistance = Convert.ToDouble(txtSideScatterdistance.Text)
SideScatter = (Sidescattervalue * patients) / (SideScatterdistance ^ 2)
Sidescattervalue = Convert.ToDouble(txtSidescatter.Text)
End If
weeklysecondaryunshielded += SideScatter
If txtLeakageSideScatter.Text = "" Then
LeakageSideScatter = 0
Else
LeakageSideScatterdistance = Convert.ToDouble(txtleakscatterdistance.Text)
LeakageSideScatter = (LeakageSideScattervalue * patients) / (LeakageSideScatterdistance ^ 2)
LeakageSideScattervalue = Convert.ToDouble(txtLeakageSideScatter.Text)
End If
weeklysecondaryunshielded += LeakageSideScatter
If txtForwardBackscatter.Text = "" Then
ForwardBackScatter = 0
Else
ForwardBackScatterdistance = Convert.ToDouble(txtforwardbackscatterdistance.Text)
ForwardBackScatter = (ForwardBackScattervalue * patients) / (ForwardBackScatterdistance ^ 2)
ForwardBackScattervalue = Convert.ToDouble(txtForwardBackscatter.Text)
End If
weeklysecondaryunshielded += ForwardBackScatter
If txtLeakageForward.Text = "" Then
LeakageForwardBackScatter = 0
Else
LeakageForwardBackScatterdistance = Convert.ToDouble(txtleakageforwardbackscatterdistance.Text)
LeakageForwardBackScatter = (LeakageForwardBackScattervalue * patients) / (LeakageForwardBackScatterdistance ^ 2)
LeakageForwardBackScattervalue = Convert.ToDouble(txtLeakageForward.Text)
End If
weeklysecondaryunshielded += LeakageForwardBackScatter
'Calculate the weekly unshielded secondary air kerma
txtweeklysecondaryunshielded.Text = weeklysecondaryunshielded.ToString("0.00")
Dim Secondarytransmissionfactor As Double
Dim Secondaryalphagamma, Secondaryxbarrier, SecondaryNTK, Secondarybetaalpha As Double
Dim Secondaryalpha As Double, Secondarybeta As Double, Secondarygamma As Double
Dim numpatients As Double, occupancy As Double, secondaryairkerma As Double
Dim Secondarydesigngoal As Double, Secondarythicknessrequired As Double
Secondaryalpha = Convert.ToDouble(txtalpha2.Text)
Secondarybeta = Convert.ToDouble(txtbeta2.Text)
Secondarygamma = Convert.ToDouble(txtgamma2.Text)
numpatients = Convert.ToDouble(txtpatients.Text)
occupancy = Convert.ToDouble(txtoccupancy.Text)
secondaryairkerma = Convert.ToDouble(txtweeklysecondaryunshielded.Text)
Secondarydesigngoal = Convert.ToDouble(txtDesigngoal.Text)
'Calculate the transmission factor required for the primary barriers
Secondarytransmissionfactor = (Secondarydesigngoal / occupancy) / secondaryairkerma
txtSecondarytransmissionfactor.Text = Secondarytransmissionfactor.ToString("#.0E+0")
'Calculate the thickness of the lead needed to shield the dedicated chest unit
Secondaryalphagamma = 1 / (Secondaryalpha * Secondarygamma)
SecondaryNTK = ((weeklysecondaryunshielded * occupancy) / Secondarydesigngoal) ^ Secondarygamma
Secondarybetaalpha = Secondarybeta / Secondaryalpha
Secondaryxbarrier = (SecondaryNTK + Secondarybetaalpha) / (1 + Secondarybetaalpha)
' Dim calc As Double
Secondarythicknessrequired = (Secondaryalphagamma) * Math.Log(Secondaryxbarrier)
TxtSecondarythickness.Text = Secondarythicknessrequired.ToString("#.0")