diff --git a/App/Modules/SicModules/Config/PM/PM1/DeviceModelPM1.xml b/App/Modules/SicModules/Config/PM/PM1/DeviceModelPM1.xml index 8a8a5ec..db3784a 100644 --- a/App/Modules/SicModules/Config/PM/PM1/DeviceModelPM1.xml +++ b/App/Modules/SicModules/Config/PM/PM1/DeviceModelPM1.xml @@ -727,4 +727,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/App/Modules/SicModules/Config/Recipe/Sic/Process/PN2.xml b/App/Modules/SicModules/Config/Recipe/Sic/Process/PN2.xml index f0f8144..62c896e 100644 --- a/App/Modules/SicModules/Config/Recipe/Sic/Process/PN2.xml +++ b/App/Modules/SicModules/Config/Recipe/Sic/Process/PN2.xml @@ -15,212 +15,218 @@ - - + + - - - - + + - - + + - + - + - + - + - - - - + + + + - - - + + + - - - + + + - - + + - - + + - + + + - - + + - - - - + + + - - - + + + - - - + + + - - - - - - + + + + + + - - + + - - + + - - - + + + - - - - - - - - - - - - - + + - - - - - - + + + + + - + - - + + + + + + + + + + + + + + - - - + + + + + - - - - - - + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - + + - - - - + + + + + - - - - - + + + diff --git a/App/Modules/SicModules/Config/Recipe/Sic/Process/RecipeFormat.xml b/App/Modules/SicModules/Config/Recipe/Sic/Process/RecipeFormat.xml index 778e271..0b57a04 100644 --- a/App/Modules/SicModules/Config/Recipe/Sic/Process/RecipeFormat.xml +++ b/App/Modules/SicModules/Config/Recipe/Sic/Process/RecipeFormat.xml @@ -5,8 +5,8 @@ - - + + @@ -15,8 +15,8 @@ - - + + @@ -37,18 +37,18 @@ - - - + + + - - - + + + @@ -78,144 +78,155 @@ - - + + - - + + - + + + - - + + - - - - + + + - - + + - + + + - - - - - - + + + + + + - - + + - - - + + + - - - + + + - - - - - - - - - - - - - + + - - - - - - + + + + + - + - - + + + + + + + + + + + + + + - - - + + + + + - - - - - - + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - - + + + - - - - - + + + + + - - - - - - + + + diff --git a/Framework/MECF.Framework.UI.Client/MECF.Framework.UI.Client.csproj b/Framework/MECF.Framework.UI.Client/MECF.Framework.UI.Client.csproj index 79ca080..4f5e274 100644 --- a/Framework/MECF.Framework.UI.Client/MECF.Framework.UI.Client.csproj +++ b/Framework/MECF.Framework.UI.Client/MECF.Framework.UI.Client.csproj @@ -850,16 +850,6 @@ DataGridRecipe.xaml - - - - - - - - - - @@ -882,18 +872,8 @@ - - - - - - - - - - diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_10GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_10GasFlow.cs deleted file mode 100644 index 747da77..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_10GasFlow.cs +++ /dev/null @@ -1,15 +0,0 @@ -using MECF.Framework.Common.DataCenter; -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_10GasFlow: RecipeGasFlowM1ToM17 - { - public override string NameN2HighFlowMode => "N2NH3_10HighFlowMode.SetValve"; - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_11GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_11GasFlow.cs deleted file mode 100644 index 399ac34..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_11GasFlow.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_11GasFlow : RecipeGasFlowM1ToM17 - { - public override string NameN2HighFlowMode => "N2NH3_11HighFlowMode.SetValve"; - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_12GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_12GasFlow.cs deleted file mode 100644 index 0b47763..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_12GasFlow.cs +++ /dev/null @@ -1,77 +0,0 @@ -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_12GasFlow : RecipeGasFlowM1ToM17_NoneSiH4 - { - - public override string NameN2FlowMode => "NH3_2Dilution.SetValve"; - - public override string NameN2HighFlowMode => "N2NH3_2Doping.SetValve"; - - public override string NameN2ActualFlow => "NH3_2ActualFlow"; - - protected override void CalDopeFlow(RecipeStep currentStep) - { - var currentN2ActualFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2ActualFlow)).Value; - var currentN2LowFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2LowFlow)).Value; - var currentDiluFlowForN2 = ((DoubleParam)currentStep.FindParamByControlName(NameDilutionFlowForN2)).Value; - var currentDilutedN2Flow = (currentN2LowFlow + currentDiluFlowForN2) * currentN2ActualFlow / currentN2LowFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameDilutedN2Flow)).Value = Math.Round(currentDilutedN2Flow, 1); - - - } - - protected override void CalShSupplementFlow(RecipeStep currentStep) - { - var currentSiSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceTotalFlow)).Value; - var currentCSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceTotalFlow)).Value; - - - var currentShTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameShTotalFlow)).Value; - var currentSurroundingFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCarryGasFlow)).Value; - - - var currentSiSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceInnerFlow)).Value; - var currentSiSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceMiddleFlow)).Value; - - var currentCSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceInnerFlow)).Value; - var currentCSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceMiddleFlow)).Value; - - - - var currentShTotalFlowSplitRatio = new double[3]; - if (currentStep.FindParamByControlName(NameShTotalFlowSplitRatio) is Sets3RatioParam shTotalRatio) - currentShTotalFlowSplitRatio = shTotalRatio.Ratio; - - - var currentShSuppTotalFlow = currentShTotalFlow - currentSurroundingFlow - currentSiSourTotalFlow - - currentCSourTotalFlow; - var sumShTotalFlowSplitRatio = currentShTotalFlowSplitRatio[0] + currentShTotalFlowSplitRatio[1] + - currentShTotalFlowSplitRatio[2]; - var currentShInnerFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[0]; - var currentShMidFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[1]; - var currentShOutterFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[2]; - var currentInnerSuppFlow = currentShInnerFlow - currentSiSourInnerFlow - currentCSourInnerFlow; - var currentMidSuppFlow = currentShMidFlow - currentSiSourMidFlow - currentCSourMidFlow; - var currentOutterSuppFlow = currentShSuppTotalFlow - currentInnerSuppFlow - currentMidSuppFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameShPushTotalFlow)).Value = Math.Round(currentShSuppTotalFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShInnerFlow)).Value = Math.Round(currentShInnerFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShMiddleFlow)).Value = Math.Round(currentShMidFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShOuterFlow)).Value = Math.Round(currentShOutterFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameInnerPushFlow)).Value = Math.Round(currentInnerSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameMiddlePushFlow)).Value = Math.Round(currentMidSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameOuterPushFlow)).Value = Math.Round(currentOutterSuppFlow, 1); - } - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_13GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_13GasFlow.cs deleted file mode 100644 index 6994410..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_13GasFlow.cs +++ /dev/null @@ -1,19 +0,0 @@ -using MECF.Framework.Common.DataCenter; -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_13GasFlow : RecipeGasFlowM1ToM17_NoneSiH4 - { - public override string NameN2HighFlowMode => "N2NH3_8HighFlowMode.SetValve"; - - public override string NameN2FlowMode => "N2NH3_13Doping.SetValve"; - - public override string NameTmaFlowMode => "TMANH3_13.SetValve"; - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_14GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_14GasFlow.cs deleted file mode 100644 index 06d30fb..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_14GasFlow.cs +++ /dev/null @@ -1,45 +0,0 @@ -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_14GasFlow: RecipeGasFlowM1ToM17_NoneSiH4 - { - protected override void CalVentFlow(RecipeStep currentStep, string chamberName) - { - var currentTotalVentFlow = ((DoubleParam)currentStep.FindParamByControlName(NameTotalVentFlow)).Value; - var currentHClFlow = ((DoubleParam)currentStep.FindParamByControlName(NameHclFlow)).Value; - var currentC2H4Flow = ((DoubleParam)currentStep.FindParamByControlName(NameCxHxFlow)).Value; - var m30Flow = ((DoubleParam)currentStep.FindParamByControlName(Mfc30Flow)).Value; - var v47Value = ((ComboxParam)currentStep.FindParamByControlName(V47Value)).Value; - - var currentTcsFlowMode = (currentStep.FindParamByControlName(NameTcsFlowMode) as ComboxParam)?.Value; - var currentHClFlowMode = (currentStep.FindParamByControlName(NameHclFlowMode) as ComboxParam)?.Value; - var currentC2H4FlowMode = (currentStep.FindParamByControlName(NameCxHxFlowMode) as ComboxParam)?.Value; - - var tcsFlow = GetTcsFlow(currentStep, chamberName); - - var currentSiSourTotalFlowForPurge = (currentTcsFlowMode != null && currentTcsFlowMode.Equals(FlowModeParam.FlowModeEnum.Run) == false - ? tcsFlow - : 0d) + - (currentHClFlowMode != null && currentHClFlowMode.Equals(FlowModeParam.FlowModeEnum.Run) == false - ? currentHClFlow - : 0d); - - var currentCSourTotalFlowForPurge = - currentC2H4FlowMode != null && currentC2H4FlowMode.Equals(FlowModeParam.FlowModeEnum.Run) == false - ? currentC2H4Flow - : 0d; - - m30Flow = v47Value.ToString() == "false" ? m30Flow : 0d; - - var currentVentPushFlow = currentTotalVentFlow - currentSiSourTotalFlowForPurge - currentCSourTotalFlowForPurge - m30Flow; - - ((DoubleParam)currentStep.FindParamByControlName(NameVentPushFlow_M17)).Value = Math.Round(currentVentPushFlow, 1); - } - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_15GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_15GasFlow.cs deleted file mode 100644 index 7c945a4..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_15GasFlow.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.RecipeGasFlowCalculators -{ - public class NH3_15GasFlow : RecipeGasFlowM1ToM17 - { - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_16GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_16GasFlow.cs deleted file mode 100644 index ad8a4db..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_16GasFlow.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_16GasFlow : RecipeGasFlowM1ToM17 - { - public override string NameN2HighFlowMode => "N2NH3_16HighFlowMode.SetValve"; - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_17GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_17GasFlow.cs deleted file mode 100644 index 99869fb..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_17GasFlow.cs +++ /dev/null @@ -1,77 +0,0 @@ -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_17GasFlow : RecipeGasFlowM1ToM17_NoneSiH4 - { - - public override string NameN2FlowMode => "NH3_2Dilution.SetValve"; - - public override string NameN2HighFlowMode => "N2NH3_2Doping.SetValve"; - - public override string NameN2ActualFlow => "NH3_2ActualFlow"; - - protected override void CalDopeFlow(RecipeStep currentStep) - { - var currentN2ActualFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2ActualFlow)).Value; - var currentN2LowFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2LowFlow)).Value; - var currentDiluFlowForN2 = ((DoubleParam)currentStep.FindParamByControlName(NameDilutionFlowForN2)).Value; - var currentDilutedN2Flow = (currentN2LowFlow + currentDiluFlowForN2) * currentN2ActualFlow / currentN2LowFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameDilutedN2Flow)).Value = Math.Round(currentDilutedN2Flow, 1); - - - } - - protected override void CalShSupplementFlow(RecipeStep currentStep) - { - var currentSiSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceTotalFlow)).Value; - var currentCSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceTotalFlow)).Value; - - - var currentShTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameShTotalFlow)).Value; - var currentSurroundingFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCarryGasFlow)).Value; - - - var currentSiSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceInnerFlow)).Value; - var currentSiSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceMiddleFlow)).Value; - - var currentCSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceInnerFlow)).Value; - var currentCSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceMiddleFlow)).Value; - - - - var currentShTotalFlowSplitRatio = new double[3]; - if (currentStep.FindParamByControlName(NameShTotalFlowSplitRatio) is Sets3RatioParam shTotalRatio) - currentShTotalFlowSplitRatio = shTotalRatio.Ratio; - - - var currentShSuppTotalFlow = currentShTotalFlow - currentSurroundingFlow - currentSiSourTotalFlow - - currentCSourTotalFlow; - var sumShTotalFlowSplitRatio = currentShTotalFlowSplitRatio[0] + currentShTotalFlowSplitRatio[1] + - currentShTotalFlowSplitRatio[2]; - var currentShInnerFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[0]; - var currentShMidFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[1]; - var currentShOutterFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[2]; - var currentInnerSuppFlow = currentShInnerFlow - currentSiSourInnerFlow - currentCSourInnerFlow; - var currentMidSuppFlow = currentShMidFlow - currentSiSourMidFlow - currentCSourMidFlow; - var currentOutterSuppFlow = currentShSuppTotalFlow - currentInnerSuppFlow - currentMidSuppFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameShPushTotalFlow)).Value = Math.Round(currentShSuppTotalFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShInnerFlow)).Value = Math.Round(currentShInnerFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShMiddleFlow)).Value = Math.Round(currentShMidFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShOuterFlow)).Value = Math.Round(currentShOutterFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameInnerPushFlow)).Value = Math.Round(currentInnerSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameMiddlePushFlow)).Value = Math.Round(currentMidSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameOuterPushFlow)).Value = Math.Round(currentOutterSuppFlow, 1); - } - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_18GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_18GasFlow.cs deleted file mode 100644 index bcc590e..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_18GasFlow.cs +++ /dev/null @@ -1,77 +0,0 @@ -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_18GasFlow : RecipeGasFlowM1ToM17_NoneSiH4 - { - - public override string NameN2FlowMode => "NH3_2Dilution.SetValve"; - - public override string NameN2HighFlowMode => "N2NH3_2Doping.SetValve"; - - public override string NameN2ActualFlow => "NH3_2ActualFlow"; - - protected override void CalDopeFlow(RecipeStep currentStep) - { - var currentN2ActualFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2ActualFlow)).Value; - var currentN2LowFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2LowFlow)).Value; - var currentDiluFlowForN2 = ((DoubleParam)currentStep.FindParamByControlName(NameDilutionFlowForN2)).Value; - var currentDilutedN2Flow = (currentN2LowFlow + currentDiluFlowForN2) * currentN2ActualFlow / currentN2LowFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameDilutedN2Flow)).Value = Math.Round(currentDilutedN2Flow, 1); - - - } - - protected override void CalShSupplementFlow(RecipeStep currentStep) - { - var currentSiSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceTotalFlow)).Value; - var currentCSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceTotalFlow)).Value; - - - var currentShTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameShTotalFlow)).Value; - var currentSurroundingFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCarryGasFlow)).Value; - - - var currentSiSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceInnerFlow)).Value; - var currentSiSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceMiddleFlow)).Value; - - var currentCSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceInnerFlow)).Value; - var currentCSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceMiddleFlow)).Value; - - - - var currentShTotalFlowSplitRatio = new double[3]; - if (currentStep.FindParamByControlName(NameShTotalFlowSplitRatio) is Sets3RatioParam shTotalRatio) - currentShTotalFlowSplitRatio = shTotalRatio.Ratio; - - - var currentShSuppTotalFlow = currentShTotalFlow - currentSurroundingFlow - currentSiSourTotalFlow - - currentCSourTotalFlow; - var sumShTotalFlowSplitRatio = currentShTotalFlowSplitRatio[0] + currentShTotalFlowSplitRatio[1] + - currentShTotalFlowSplitRatio[2]; - var currentShInnerFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[0]; - var currentShMidFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[1]; - var currentShOutterFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[2]; - var currentInnerSuppFlow = currentShInnerFlow - currentSiSourInnerFlow - currentCSourInnerFlow; - var currentMidSuppFlow = currentShMidFlow - currentSiSourMidFlow - currentCSourMidFlow; - var currentOutterSuppFlow = currentShSuppTotalFlow - currentInnerSuppFlow - currentMidSuppFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameShPushTotalFlow)).Value = Math.Round(currentShSuppTotalFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShInnerFlow)).Value = Math.Round(currentShInnerFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShMiddleFlow)).Value = Math.Round(currentShMidFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShOuterFlow)).Value = Math.Round(currentShOutterFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameInnerPushFlow)).Value = Math.Round(currentInnerSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameMiddlePushFlow)).Value = Math.Round(currentMidSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameOuterPushFlow)).Value = Math.Round(currentOutterSuppFlow, 1); - } - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_1GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_1GasFlow.cs deleted file mode 100644 index 8605d94..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_1GasFlow.cs +++ /dev/null @@ -1,72 +0,0 @@ -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_1GasFlow : RecipeGasFlowM1ToM17 - { - - protected override void CalDopeFlow(RecipeStep currentStep) - { - var currentN2ActualFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2ActualFlow)).Value; - var currentN2LowFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2LowFlow)).Value; - var currentDiluFlowForN2 = ((DoubleParam)currentStep.FindParamByControlName(NameDilutionFlowForN2)).Value; - var currentDilutedN2Flow = (currentN2LowFlow + currentDiluFlowForN2) * currentN2ActualFlow / currentN2LowFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameDilutedN2Flow)).Value = Math.Round(currentDilutedN2Flow, 1); - - - } - - protected override void CalShSupplementFlow(RecipeStep currentStep) - { - var currentSiSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceTotalFlow)).Value; - var currentCSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceTotalFlow)).Value; - - - var currentShTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameShTotalFlow)).Value; - var currentSurroundingFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCarryGasFlow)).Value; - - - var currentSiSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceInnerFlow)).Value; - var currentSiSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceMiddleFlow)).Value; - - var currentCSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceInnerFlow)).Value; - var currentCSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceMiddleFlow)).Value; - - - - var currentShTotalFlowSplitRatio = new double[3]; - if (currentStep.FindParamByControlName(NameShTotalFlowSplitRatio) is Sets3RatioParam shTotalRatio) - currentShTotalFlowSplitRatio = shTotalRatio.Ratio; - - - var currentShSuppTotalFlow = currentShTotalFlow - currentSurroundingFlow - currentSiSourTotalFlow - - currentCSourTotalFlow; - var sumShTotalFlowSplitRatio = currentShTotalFlowSplitRatio[0] + currentShTotalFlowSplitRatio[1] + - currentShTotalFlowSplitRatio[2]; - var currentShInnerFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[0]; - var currentShMidFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[1]; - var currentShOutterFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[2]; - var currentInnerSuppFlow = currentShInnerFlow - currentSiSourInnerFlow - currentCSourInnerFlow; - var currentMidSuppFlow = currentShMidFlow - currentSiSourMidFlow - currentCSourMidFlow ; - var currentOutterSuppFlow = currentShSuppTotalFlow - currentInnerSuppFlow - currentMidSuppFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameShPushTotalFlow)).Value = Math.Round(currentShSuppTotalFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShInnerFlow)).Value = Math.Round(currentShInnerFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShMiddleFlow)).Value = Math.Round(currentShMidFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShOuterFlow)).Value = Math.Round(currentShOutterFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameInnerPushFlow)).Value = Math.Round(currentInnerSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameMiddlePushFlow)).Value = Math.Round(currentMidSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameOuterPushFlow)).Value = Math.Round(currentOutterSuppFlow, 1); - } - } - -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_2GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_2GasFlow.cs deleted file mode 100644 index 9fd803a..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_2GasFlow.cs +++ /dev/null @@ -1,84 +0,0 @@ -using MECF.Framework.Common.DataCenter; -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using MECF.Framework.Common.Equipment; -using MECF.Framework.Common.MECF.Framework.Common.Utilities; -using Aitex.Core.RT.SCCore; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - - /// - /// 配方步骤气体流量计算器基类。 - ///
- /// 同时,该类也作为默认计算器使用;如果构造时没有指定 - /// 计算器对象实例,则默认使用此计算器。 - ///
- public class NH3_2GasFlow : RecipeGasFlowM1ToM17_NoneSiH4 - { - - public override string NameN2FlowMode => "NH3_2Dilution.SetValve"; - - public override string NameN2HighFlowMode => "N2NH3_2Doping.SetValve"; - - public override string NameN2ActualFlow => "NH3_2ActualFlow"; - - protected override void CalDopeFlow(RecipeStep currentStep) - { - var currentN2ActualFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2ActualFlow)).Value; - var currentN2LowFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2LowFlow)).Value; - var currentDiluFlowForN2 = ((DoubleParam)currentStep.FindParamByControlName(NameDilutionFlowForN2)).Value; - var currentDilutedN2Flow = (currentN2LowFlow + currentDiluFlowForN2) * currentN2ActualFlow / currentN2LowFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameDilutedN2Flow)).Value = Math.Round(currentDilutedN2Flow, 1); - - - } - - protected override void CalShSupplementFlow(RecipeStep currentStep) - { - var currentSiSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceTotalFlow)).Value; - var currentCSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceTotalFlow)).Value; - - - var currentShTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameShTotalFlow)).Value; - var currentSurroundingFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCarryGasFlow)).Value; - - - var currentSiSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceInnerFlow)).Value; - var currentSiSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceMiddleFlow)).Value; - - var currentCSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceInnerFlow)).Value; - var currentCSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceMiddleFlow)).Value; - - - - var currentShTotalFlowSplitRatio = new double[3]; - if (currentStep.FindParamByControlName(NameShTotalFlowSplitRatio) is Sets3RatioParam shTotalRatio) - currentShTotalFlowSplitRatio = shTotalRatio.Ratio; - - - var currentShSuppTotalFlow = currentShTotalFlow - currentSurroundingFlow - currentSiSourTotalFlow - - currentCSourTotalFlow; - var sumShTotalFlowSplitRatio = currentShTotalFlowSplitRatio[0] + currentShTotalFlowSplitRatio[1] + - currentShTotalFlowSplitRatio[2]; - var currentShInnerFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[0]; - var currentShMidFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[1]; - var currentShOutterFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[2]; - var currentInnerSuppFlow = currentShInnerFlow - currentSiSourInnerFlow - currentCSourInnerFlow; - var currentMidSuppFlow = currentShMidFlow - currentSiSourMidFlow - currentCSourMidFlow; - var currentOutterSuppFlow = currentShSuppTotalFlow - currentInnerSuppFlow - currentMidSuppFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameShPushTotalFlow)).Value = Math.Round(currentShSuppTotalFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShInnerFlow)).Value = Math.Round(currentShInnerFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShMiddleFlow)).Value = Math.Round(currentShMidFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShOuterFlow)).Value = Math.Round(currentShOutterFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameInnerPushFlow)).Value = Math.Round(currentInnerSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameMiddlePushFlow)).Value = Math.Round(currentMidSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameOuterPushFlow)).Value = Math.Round(currentOutterSuppFlow, 1); - } - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_3GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_3GasFlow.cs deleted file mode 100644 index a5e64f2..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_3GasFlow.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_3GasFlow : RecipeGasFlowM1ToM17 - { - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_4GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_4GasFlow.cs deleted file mode 100644 index 3403158..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_4GasFlow.cs +++ /dev/null @@ -1,63 +0,0 @@ -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_4GasFlow : RecipeGasFlowM1ToM17 - { - protected override void CalDopeFlow(RecipeStep currentStep) - { - var currentN2ActualFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2ActualFlow)).Value; - var currentN2LowFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2LowFlow)).Value; - var currentDiluFlowForN2 = ((DoubleParam)currentStep.FindParamByControlName(NameDilutionFlowForN2)).Value; - var currentDilutedN2Flow = (currentN2LowFlow + currentDiluFlowForN2) * currentN2ActualFlow / currentN2LowFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameDilutedN2Flow)).Value = Math.Round(currentDilutedN2Flow, 1); - } - - protected override void CalShSupplementFlow(RecipeStep currentStep) - { - var currentSiSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceTotalFlow)).Value; - var currentCSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceTotalFlow)).Value; - - var currentShTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameShTotalFlow)).Value; - var currentSurroundingFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCarryGasFlow)).Value; - - var currentSiSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceInnerFlow)).Value; - var currentSiSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceMiddleFlow)).Value; - - var currentCSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceInnerFlow)).Value; - var currentCSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceMiddleFlow)).Value; - - var currentShTotalFlowSplitRatio = new double[3]; - if (currentStep.FindParamByControlName(NameShTotalFlowSplitRatio) is Sets3RatioParam shTotalRatio) - currentShTotalFlowSplitRatio = shTotalRatio.Ratio; - - var currentShSuppTotalFlow = currentShTotalFlow - currentSurroundingFlow - currentSiSourTotalFlow - - currentCSourTotalFlow; - var sumShTotalFlowSplitRatio = currentShTotalFlowSplitRatio[0] + currentShTotalFlowSplitRatio[1] + - currentShTotalFlowSplitRatio[2]; - var currentShInnerFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[0]; - var currentShMidFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[1]; - var currentShOutterFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[2]; - var currentInnerSuppFlow = currentShInnerFlow - currentSiSourInnerFlow - currentCSourInnerFlow; - var currentMidSuppFlow = currentShMidFlow - currentSiSourMidFlow - currentCSourMidFlow; - var currentOutterSuppFlow = currentShSuppTotalFlow - currentInnerSuppFlow - currentMidSuppFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameShPushTotalFlow)).Value = Math.Round(currentShSuppTotalFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShInnerFlow)).Value = Math.Round(currentShInnerFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShMiddleFlow)).Value = Math.Round(currentShMidFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShOuterFlow)).Value = Math.Round(currentShOutterFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameInnerPushFlow)).Value = Math.Round(currentInnerSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameMiddlePushFlow)).Value = Math.Round(currentMidSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameOuterPushFlow)).Value = Math.Round(currentOutterSuppFlow, 1); - } - } -} \ No newline at end of file diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_5GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_5GasFlow.cs deleted file mode 100644 index e9eca68..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_5GasFlow.cs +++ /dev/null @@ -1,13 +0,0 @@ -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_5GasFlow: RecipeGasFlowM1ToM17 - { - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_6GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_6GasFlow.cs deleted file mode 100644 index c59797a..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_6GasFlow.cs +++ /dev/null @@ -1,111 +0,0 @@ -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_6GasFlow: NH3_1GasFlow - { - public string V100 => "V100Value.SetValve"; - public string M21 => "Mfc21.Ramp"; - - protected override void CalShSupplementFlow(RecipeStep currentStep) - { - var currentSiSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceTotalFlow)).Value; - var currentCSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceTotalFlow)).Value; - - - var currentShTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameShTotalFlow)).Value; - var currentSurroundingFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCarryGasFlow)).Value; - - - var currentSiSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceInnerFlow)).Value; - var currentSiSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceMiddleFlow)).Value; - - var currentCSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceInnerFlow)).Value; - var currentCSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceMiddleFlow)).Value; - - - - var currentShTotalFlowSplitRatio = new double[3]; - if (currentStep.FindParamByControlName(NameShTotalFlowSplitRatio) is Sets3RatioParam shTotalRatio) - currentShTotalFlowSplitRatio = shTotalRatio.Ratio; - - - var currentShSuppTotalFlow = currentShTotalFlow - currentSurroundingFlow - currentSiSourTotalFlow - - currentCSourTotalFlow; - var sumShTotalFlowSplitRatio = currentShTotalFlowSplitRatio[0] + currentShTotalFlowSplitRatio[1] + - currentShTotalFlowSplitRatio[2]; - var currentShInnerFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[0]; - var currentShMidFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[1]; - var currentShOutterFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[2]; - var currentInnerSuppFlow = currentShInnerFlow - currentSiSourInnerFlow - currentCSourInnerFlow; - var currentMidSuppFlow = currentShMidFlow - currentSiSourMidFlow - currentCSourMidFlow; - var currentOutterSuppFlow = currentShSuppTotalFlow - currentInnerSuppFlow - currentMidSuppFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameShPushTotalFlow)).Value = Math.Round(currentShSuppTotalFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShInnerFlow)).Value = Math.Round(currentShInnerFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShMiddleFlow)).Value = Math.Round(currentShMidFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShOuterFlow)).Value = Math.Round(currentShOutterFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameInnerPushFlow)).Value = Math.Round(currentInnerSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameMiddlePushFlow)).Value = Math.Round(currentMidSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameOuterPushFlow)).Value = Math.Round(currentOutterSuppFlow, 1); - } - - protected override void CalDopeFlow(RecipeStep currentStep) - { - var currentN2ActualFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2ActualFlow)).Value; - var currentN2LowFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2LowFlow)).Value; - var currentDiluFlowForN2 = ((DoubleParam)currentStep.FindParamByControlName(NameDilutionFlowForN2)).Value; - var v100 = ((ComboxParam)currentStep.FindParamByControlName(V100)).Value; - double currentDilutedN2Flow = 0; - //if (v100.ToString() == "Open") - //{ - // var m7 = ((DoubleParam)currentStep.FindParamByControlName(NameTmaBubbleFlow)).Value; - // var m8 = ((DoubleParam)currentStep.FindParamByControlName(NameTmaPushFlow)).Value; - // var m21 = ((DoubleParam)currentStep.FindParamByControlName(M21)).Value; - - // currentN2LowFlow = m7 + m8 + m21; - //} - currentDilutedN2Flow = (currentN2LowFlow + currentDiluFlowForN2) * currentN2ActualFlow / currentN2LowFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameDilutedN2Flow)).Value = Math.Round(currentDilutedN2Flow, 1); - } - - protected override void CalVentFlow(RecipeStep currentStep, string chamberName) - { - var currentTotalVentFlow = ((DoubleParam)currentStep.FindParamByControlName(NameTotalVentFlow)).Value; - var currentHClFlow = ((DoubleParam)currentStep.FindParamByControlName(NameHclFlow)).Value; - var currentC2H4Flow = ((DoubleParam)currentStep.FindParamByControlName(NameCxHxFlow)).Value; - - var currentTcsFlowMode = (currentStep.FindParamByControlName(NameTcsFlowMode) as ComboxParam)?.Value; - var currentHClFlowMode = (currentStep.FindParamByControlName(NameHclFlowMode) as ComboxParam)?.Value; - var currentC2H4FlowMode = (currentStep.FindParamByControlName(NameCxHxFlowMode) as ComboxParam)?.Value; - - var tcsFlow = GetTcsFlow(currentStep, chamberName); - - - var currentSiSourTotalFlowForPurge = (currentTcsFlowMode != null && currentTcsFlowMode.Equals(FlowModeParam.FlowModeEnum.Run) == false - ? tcsFlow - : 0d) + - (currentHClFlowMode != null && currentHClFlowMode.Equals(FlowModeParam.FlowModeEnum.Run) == false - ? currentHClFlow - : 0d); - - var currentCSourTotalFlowForPurge = - currentC2H4FlowMode != null && currentC2H4FlowMode.Equals(FlowModeParam.FlowModeEnum.Run) == false - ? currentC2H4Flow - : 0d; - - var currentVentPushFlow = currentTotalVentFlow - currentSiSourTotalFlowForPurge - currentCSourTotalFlowForPurge; - - ((DoubleParam)currentStep.FindParamByControlName(NameVentPushFlow_M17)).Value = Math.Round(currentVentPushFlow, 1); - } - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_7GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_7GasFlow.cs deleted file mode 100644 index 82a32c9..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_7GasFlow.cs +++ /dev/null @@ -1,78 +0,0 @@ -using MECF.Framework.Common.DataCenter; -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_7GasFlow : RecipeGasFlowM1ToM17_NoneSiH4 - { - - public override string NameN2FlowMode => "NH3_2Dilution.SetValve"; - - public override string NameN2HighFlowMode => "N2NH3_2Doping.SetValve"; - - public override string NameN2ActualFlow => "NH3_2ActualFlow"; - - protected override void CalDopeFlow(RecipeStep currentStep) - { - var currentN2ActualFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2ActualFlow)).Value; - var currentN2LowFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2LowFlow)).Value; - var currentDiluFlowForN2 = ((DoubleParam)currentStep.FindParamByControlName(NameDilutionFlowForN2)).Value; - var currentDilutedN2Flow = (currentN2LowFlow + currentDiluFlowForN2) * currentN2ActualFlow / currentN2LowFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameDilutedN2Flow)).Value = Math.Round(currentDilutedN2Flow, 1); - - - } - - protected override void CalShSupplementFlow(RecipeStep currentStep) - { - var currentSiSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceTotalFlow)).Value; - var currentCSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceTotalFlow)).Value; - - - var currentShTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameShTotalFlow)).Value; - var currentSurroundingFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCarryGasFlow)).Value; - - - var currentSiSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceInnerFlow)).Value; - var currentSiSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceMiddleFlow)).Value; - - var currentCSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceInnerFlow)).Value; - var currentCSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceMiddleFlow)).Value; - - - - var currentShTotalFlowSplitRatio = new double[3]; - if (currentStep.FindParamByControlName(NameShTotalFlowSplitRatio) is Sets3RatioParam shTotalRatio) - currentShTotalFlowSplitRatio = shTotalRatio.Ratio; - - - var currentShSuppTotalFlow = currentShTotalFlow - currentSurroundingFlow - currentSiSourTotalFlow - - currentCSourTotalFlow; - var sumShTotalFlowSplitRatio = currentShTotalFlowSplitRatio[0] + currentShTotalFlowSplitRatio[1] + - currentShTotalFlowSplitRatio[2]; - var currentShInnerFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[0]; - var currentShMidFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[1]; - var currentShOutterFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[2]; - var currentInnerSuppFlow = currentShInnerFlow - currentSiSourInnerFlow - currentCSourInnerFlow; - var currentMidSuppFlow = currentShMidFlow - currentSiSourMidFlow - currentCSourMidFlow; - var currentOutterSuppFlow = currentShSuppTotalFlow - currentInnerSuppFlow - currentMidSuppFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameShPushTotalFlow)).Value = Math.Round(currentShSuppTotalFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShInnerFlow)).Value = Math.Round(currentShInnerFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShMiddleFlow)).Value = Math.Round(currentShMidFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShOuterFlow)).Value = Math.Round(currentShOutterFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameInnerPushFlow)).Value = Math.Round(currentInnerSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameMiddlePushFlow)).Value = Math.Round(currentMidSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameOuterPushFlow)).Value = Math.Round(currentOutterSuppFlow, 1); - } - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_8GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_8GasFlow.cs deleted file mode 100644 index e4c494a..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_8GasFlow.cs +++ /dev/null @@ -1,15 +0,0 @@ -using MECF.Framework.Common.DataCenter; -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_8GasFlow : RecipeGasFlowM1ToM17_NoneSiH4 - { - public override string NameN2HighFlowMode => "N2NH3_8HighFlowMode.SetValve"; - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_9GasFlow.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_9GasFlow.cs deleted file mode 100644 index 3e6101a..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/NH3_9GasFlow.cs +++ /dev/null @@ -1,72 +0,0 @@ -using MECF.Framework.Common.DataCenter; -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class NH3_9GasFlow : RecipeGasFlowM1ToM17 - { - public override string NameN2HighFlowMode => "N2NH3_10HighFlowMode.SetValve"; - protected override void CalDopeFlow(RecipeStep currentStep) - { - var currentN2ActualFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2ActualFlow)).Value; - var currentN2LowFlow = ((DoubleParam)currentStep.FindParamByControlName(NameN2LowFlow)).Value; - var currentDiluFlowForN2 = ((DoubleParam)currentStep.FindParamByControlName(NameDilutionFlowForN2)).Value; - var currentDilutedN2Flow = (currentN2LowFlow + currentDiluFlowForN2) * currentN2ActualFlow / currentN2LowFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameDilutedN2Flow)).Value = Math.Round(currentDilutedN2Flow, 1); - - - } - - protected override void CalShSupplementFlow(RecipeStep currentStep) - { - var currentSiSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceTotalFlow)).Value; - var currentCSourTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceTotalFlow)).Value; - - - var currentShTotalFlow = ((DoubleParam)currentStep.FindParamByControlName(NameShTotalFlow)).Value; - var currentSurroundingFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCarryGasFlow)).Value; - - - var currentSiSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceInnerFlow)).Value; - var currentSiSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameSiSourceMiddleFlow)).Value; - - var currentCSourInnerFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceInnerFlow)).Value; - var currentCSourMidFlow = ((DoubleParam)currentStep.FindParamByControlName(NameCSourceMiddleFlow)).Value; - - - - var currentShTotalFlowSplitRatio = new double[3]; - if (currentStep.FindParamByControlName(NameShTotalFlowSplitRatio) is Sets3RatioParam shTotalRatio) - currentShTotalFlowSplitRatio = shTotalRatio.Ratio; - - - var currentShSuppTotalFlow = currentShTotalFlow - currentSurroundingFlow - currentSiSourTotalFlow - - currentCSourTotalFlow; - var sumShTotalFlowSplitRatio = currentShTotalFlowSplitRatio[0] + currentShTotalFlowSplitRatio[1] + - currentShTotalFlowSplitRatio[2]; - var currentShInnerFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[0]; - var currentShMidFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[1]; - var currentShOutterFlow = (currentShTotalFlow - currentSurroundingFlow) / sumShTotalFlowSplitRatio * - currentShTotalFlowSplitRatio[2]; - var currentInnerSuppFlow = currentShInnerFlow - currentSiSourInnerFlow - currentCSourInnerFlow; - var currentMidSuppFlow = currentShMidFlow - currentSiSourMidFlow - currentCSourMidFlow; - var currentOutterSuppFlow = currentShSuppTotalFlow - currentInnerSuppFlow - currentMidSuppFlow; - - ((DoubleParam)currentStep.FindParamByControlName(NameShPushTotalFlow)).Value = Math.Round(currentShSuppTotalFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShInnerFlow)).Value = Math.Round(currentShInnerFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShMiddleFlow)).Value = Math.Round(currentShMidFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameShOuterFlow)).Value = Math.Round(currentShOutterFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameInnerPushFlow)).Value = Math.Round(currentInnerSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameMiddlePushFlow)).Value = Math.Round(currentMidSuppFlow, 1); - ((DoubleParam)currentStep.FindParamByControlName(NameOuterPushFlow)).Value = Math.Round(currentOutterSuppFlow, 1); - } - } -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/RecipeGasFlowM1ToM17.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/RecipeGasFlowM1ToM17.cs deleted file mode 100644 index 5f4eb05..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/RecipeGasFlowM1ToM17.cs +++ /dev/null @@ -1,75 +0,0 @@ -using MECF.Framework.Common.DataCenter; -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class RecipeGasFlowM1ToM17 : RecipeGasFlowCalculatorBase - { - public virtual string NameVentPushFlow_M17 => "Mfc17.Ramp"; - - protected override double GetTcsFlow(RecipeStep step, string chamberName) - { - var currentTcsBubbleHighFlow = ((DoubleParam)step.FindParamByControlName(NameTcsBubbleHighFlow)).Value; - var currentTcsPushFlow = ((DoubleParam)step.FindParamByControlName(NameTcsPushFlow)).Value; - var currentTcsFlowMode = ((ComboxParam)step.FindParamByControlName(NameTcsFlowMode)).Value; - - var tcsFlow = 0d; - - var tcsEff = - (double)QueryDataClient.Instance.Service.GetConfig($"PM.{chamberName}.Efficiency.TCS-Eff"); - if (currentTcsFlowMode.Equals(FlowModeParam.FlowModeEnum.Run) - || currentTcsFlowMode.Equals(FlowModeParam.FlowModeEnum.Vent)) - { - tcsFlow = currentTcsBubbleHighFlow * tcsEff + currentTcsPushFlow; - } - else if (currentTcsFlowMode.Equals(FlowModeParam.FlowModeEnum.Purge)) - { - tcsFlow = currentTcsBubbleHighFlow + currentTcsPushFlow; - } - - return tcsFlow; - } - - - protected override void CalVentFlow(RecipeStep currentStep, string chamberName) - { - var currentSiH4Flow = ((DoubleParam)currentStep.FindParamByControlName(NameSiH4Flow)).Value; - var currentTotalVentFlow = ((DoubleParam)currentStep.FindParamByControlName(NameTotalVentFlow)).Value; - var currentHClFlow = ((DoubleParam)currentStep.FindParamByControlName(NameHclFlow)).Value; - var currentC2H4Flow = ((DoubleParam)currentStep.FindParamByControlName(NameCxHxFlow)).Value; - var currentSiH4FlowMode = (currentStep.FindParamByControlName(NameSiH4FlowMode) as ComboxParam)?.Value; - var currentTcsFlowMode = (currentStep.FindParamByControlName(NameTcsFlowMode) as ComboxParam)?.Value; - var currentHClFlowMode = (currentStep.FindParamByControlName(NameHclFlowMode) as ComboxParam)?.Value; - var currentC2H4FlowMode = (currentStep.FindParamByControlName(NameCxHxFlowMode) as ComboxParam)?.Value; - - var tcsFlow = GetTcsFlow(currentStep, chamberName); - - - var currentSiSourTotalFlowForPurge = - (currentSiH4FlowMode != null && currentSiH4FlowMode.Equals(FlowModeParam.FlowModeEnum.Run) == false - ? currentSiH4Flow - : 0d) - + (currentTcsFlowMode != null && currentTcsFlowMode.Equals(FlowModeParam.FlowModeEnum.Run) == false - ? tcsFlow - : 0d) + - (currentHClFlowMode != null && currentHClFlowMode.Equals(FlowModeParam.FlowModeEnum.Run) == false - ? currentHClFlow - : 0d); - - var currentCSourTotalFlowForPurge = - currentC2H4FlowMode != null && currentC2H4FlowMode.Equals(FlowModeParam.FlowModeEnum.Run) == false - ? currentC2H4Flow - : 0d; - - var currentVentPushFlow = currentTotalVentFlow - currentSiSourTotalFlowForPurge - currentCSourTotalFlowForPurge ; - - ((DoubleParam)currentStep.FindParamByControlName(NameVentPushFlow_M17)).Value = Math.Round(currentVentPushFlow, 1); - } - } - -} diff --git a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/RecipeGasFlowM1ToM17_NoneSiH4.cs b/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/RecipeGasFlowM1ToM17_NoneSiH4.cs deleted file mode 100644 index e5d65af..0000000 --- a/Framework/MECF.Framework.UI.Client/RecipeEditorLib/RecipeModel/RecipeGasFlowCalculators/RecipeGasFlowM1ToM17_NoneSiH4.cs +++ /dev/null @@ -1,67 +0,0 @@ -using MECF.Framework.Common.DataCenter; -using MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel.Params; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MECF.Framework.UI.Client.RecipeEditorLib.RecipeModel -{ - public class RecipeGasFlowM1ToM17_NoneSiH4 : RecipeGasFlowCalculatorBase - { - public virtual string NameVentPushFlow_M17 => "Mfc17.Ramp"; - - protected override double GetTcsFlow(RecipeStep step, string chamberName) - { - var currentTcsBubbleHighFlow = ((DoubleParam)step.FindParamByControlName(NameTcsBubbleHighFlow)).Value; - var currentTcsPushFlow = ((DoubleParam)step.FindParamByControlName(NameTcsPushFlow)).Value; - var currentTcsFlowMode = ((ComboxParam)step.FindParamByControlName(NameTcsFlowMode)).Value; - - var tcsFlow = 0d; - - var tcsEff = - (double)QueryDataClient.Instance.Service.GetConfig($"PM.{chamberName}.Efficiency.TCS-Eff"); - if (currentTcsFlowMode.Equals(FlowModeParam.FlowModeEnum.Run) - || currentTcsFlowMode.Equals(FlowModeParam.FlowModeEnum.Vent)) - { - tcsFlow = currentTcsBubbleHighFlow * tcsEff + currentTcsPushFlow; - } - else if (currentTcsFlowMode.Equals(FlowModeParam.FlowModeEnum.Purge)) - { - tcsFlow = currentTcsBubbleHighFlow + currentTcsPushFlow; - } - - return tcsFlow; - } - - protected override void CalVentFlow(RecipeStep currentStep, string chamberName) - { - var currentTotalVentFlow = ((DoubleParam)currentStep.FindParamByControlName(NameTotalVentFlow)).Value; - var currentHClFlow = ((DoubleParam)currentStep.FindParamByControlName(NameHclFlow)).Value; - var currentC2H4Flow = ((DoubleParam)currentStep.FindParamByControlName(NameCxHxFlow)).Value; - - var currentTcsFlowMode = (currentStep.FindParamByControlName(NameTcsFlowMode) as ComboxParam)?.Value; - var currentHClFlowMode = (currentStep.FindParamByControlName(NameHclFlowMode) as ComboxParam)?.Value; - var currentC2H4FlowMode = (currentStep.FindParamByControlName(NameCxHxFlowMode) as ComboxParam)?.Value; - - var tcsFlow = GetTcsFlow(currentStep, chamberName); - - var currentSiSourTotalFlowForPurge = (currentTcsFlowMode != null && currentTcsFlowMode.Equals(FlowModeParam.FlowModeEnum.Run) == false - ? tcsFlow - : 0d) + - (currentHClFlowMode != null && currentHClFlowMode.Equals(FlowModeParam.FlowModeEnum.Run) == false - ? currentHClFlow - : 0d); - - var currentCSourTotalFlowForPurge = - currentC2H4FlowMode != null && currentC2H4FlowMode.Equals(FlowModeParam.FlowModeEnum.Run) == false - ? currentC2H4Flow - : 0d; - - var currentVentPushFlow = currentTotalVentFlow - currentSiSourTotalFlowForPurge - currentCSourTotalFlowForPurge; - - ((DoubleParam)currentStep.FindParamByControlName(NameVentPushFlow_M17)).Value = Math.Round(currentVentPushFlow, 1); - } - } -} \ No newline at end of file