/// <summary> /// 计算熟料综合煤耗 /// </summary> /// <param name="myClinkerProperties">熟料属性</param> /// <param name="myCoalProperties">煤粉属性</param> /// <param name="myClinkerProcessMartieralsProperties">各耗煤工序物料属性</param> /// <returns>熟料综合煤耗</returns> public Model_CaculateValue GetClinkerCoalConsumption(Model_ClinkerProperties myClinkerProperties, Model_CoalProperties myCoalProperties, List <Model_MartieralsProperties> myClinkerProcessMartieralsProperties, Model_CommonParameters myCommonParameters) { Model_CaculateValue m_Model_CaculateValue = new Model_CaculateValue(); List <Model_BaseCLCParameters> m_ClinkerBaseCLCParameters = new List <Model_BaseCLCParameters>(1); if (myClinkerProcessMartieralsProperties != null) { for (int i = 0; i < myClinkerProcessMartieralsProperties.Count; i++) { //求工序干基煤耗 Model_BaseCLCParameters m_Model_BaseCLCParameters = new Model_BaseCLCParameters(); m_Model_BaseCLCParameters.ProcessName = myClinkerProcessMartieralsProperties[i].ProcessName; //获取工序名称 m_Model_BaseCLCParameters.MarterialsName = myClinkerProcessMartieralsProperties[i].MarterialsName; //获取物料名称 if (myClinkerProcessMartieralsProperties[i].MarterialsOutput != 0 && myClinkerProcessMartieralsProperties[i].MarterialsWaterContent < 1 && myClinkerProcessMartieralsProperties[i].MarterialsWaterContent >= 0) { m_Model_BaseCLCParameters.ProcessCoalConsumption = (myClinkerProcessMartieralsProperties[i].CoalQuantity * (1 - myCoalProperties.CoalWaterContent)) / (myClinkerProcessMartieralsProperties[i].MarterialsOutput * (1 - myClinkerProcessMartieralsProperties[i].MarterialsWaterContent)); } else { m_Model_BaseCLCParameters.ProcessCoalConsumption = 0; } m_Model_BaseCLCParameters.ProcessMaterialsUsedQuantity = myClinkerProcessMartieralsProperties[i].MarterialsInput * (1 - myClinkerProcessMartieralsProperties[i].MarterialsWaterContent); m_Model_BaseCLCParameters.CoalWaterContent = myClinkerProcessMartieralsProperties[i].MarterialsWaterContent; m_Model_BaseCLCParameters.CoalLowCalorificValue = myCoalProperties.CoalLowCalorificValue; m_ClinkerBaseCLCParameters.Add(m_Model_BaseCLCParameters); } m_Model_CaculateValue = m_Base_CoalConsumption.GetCoalConsumption(m_ClinkerBaseCLCParameters, myClinkerProperties.MarterialsOutput, myCommonParameters.StandardCalorificValue, "熟料"); } m_Model_CaculateValue.CaculateName = "熟料综合煤耗"; return(m_Model_CaculateValue); }
///////////////////////////////////////////////////熟料////////////////////////////////////////////// /// <summary> /// 计算熟料综合电耗 /// </summary> /// <param name="myClinkerProperties">熟料属性</param> /// <param name="myClinkerProcessMartieralsProperties">各工序物料属性</param> /// <returns>熟料电耗</returns> public Model_CaculateValue GetClinkerPowerConsumption(Model_ClinkerProperties myClinkerProperties, List <Model_MartieralsProperties> myClinkerProcessMartieralsProperties) { Model_CaculateValue m_Model_CaculateValue = new Model_CaculateValue(); List <Model_BaseELCParameters> m_ClinkerBaseELCParameters = new List <Model_BaseELCParameters>(1); if (myClinkerProperties != null && myClinkerProcessMartieralsProperties != null) { for (int i = 0; i < myClinkerProcessMartieralsProperties.Count; i++) { Model_BaseELCParameters m_Model_BaseELCParameters = new Model_BaseELCParameters(); //求工序干基电耗 m_Model_BaseELCParameters.ProcessName = myClinkerProcessMartieralsProperties[i].ProcessName; //获取工序名称 m_Model_BaseELCParameters.MarterialsName = myClinkerProcessMartieralsProperties[i].MarterialsName; //获取物料名称 if (myClinkerProcessMartieralsProperties[i].MarterialsOutput != 0 && myClinkerProcessMartieralsProperties[i].MarterialsWaterContent < 1 && myClinkerProcessMartieralsProperties[i].MarterialsWaterContent >= 0) { m_Model_BaseELCParameters.ProcessElectricityConsumption = myClinkerProcessMartieralsProperties[i].ElectricityQuantity / (myClinkerProcessMartieralsProperties[i].MarterialsOutput * (1 - myClinkerProcessMartieralsProperties[i].MarterialsWaterContent)); } else { m_Model_BaseELCParameters.ProcessElectricityConsumption = 0; } m_Model_BaseELCParameters.ProcessMaterialsUsedQuantity = myClinkerProcessMartieralsProperties[i].MarterialsInput * (1 - myClinkerProcessMartieralsProperties[i].MarterialsWaterContent); m_ClinkerBaseELCParameters.Add(m_Model_BaseELCParameters); } m_Model_CaculateValue = m_Base_PowConsumption.GetPowerConsumption(m_ClinkerBaseELCParameters, myClinkerProperties.MarterialsOutput, "熟料"); } m_Model_CaculateValue.CaculateName = "熟料综合电耗"; return(m_Model_CaculateValue); }
private Model_CommonParameters _CommonParameters; //公共参数 public Assembly_ParametersAndProperties_V1() { _CementProperties = new Model_CementProperties(); //水泥属性 _ClinkerProperties = new Model_ClinkerProperties(); //熟料属性 _CoalProperties = new Model_CoalProperties(); //煤粉属性 _CogenerationProperties = new Model_CogenerationProperties(); //余热发电属性 _RecuperationProperties = new Model_RecuperationProperties(); //余热利用属性 _ClinkerProcessPowerProperties = new List <Model_MartieralsProperties>(1); //熟料工序用电属性 _ClinkerProcessCoalProperties = new List <Model_MartieralsProperties>(1); //熟料工序用煤属性 _CementProcessPowerProperties = new List <Model_MartieralsProperties>(1); //水泥磨工序用电属性 _CementProcessCoalProperties = new List <Model_MartieralsProperties>(0); //水泥磨工序用煤属性 _CommonParameters = new Model_CommonParameters(); //公共参数 }
/// <summary> /// 计算可比熟料综合电耗 /// </summary> /// <param name="myClinkerProperties">熟料属性</param> /// <param name="myClinkerProcessMartieralsProperties">各耗电工序物料属性</param> /// <param name="myCommonParameters">公共参数</param> /// <returns>可比熟料综合电耗</returns> public Model_CaculateValue GetClinkerPowerConsumptionComparable(Model_ClinkerProperties myClinkerProperties, List <Model_MartieralsProperties> myClinkerProcessMartieralsProperties, Model_CommonParameters myCommonParameters) { Model_CaculateValue m_Model_CaculateValueComparable = new Model_CaculateValue(); List <Model_BaseELCParameters> m_ClinkerELCParameters = new List <Model_BaseELCParameters>(); //计算熟料电耗 Model_BaseELCParameters m_Model_BaseELCParameters = new Model_BaseELCParameters(); m_Model_BaseELCParameters.ProcessName = "熟料综合电耗"; //获取工序名称 m_Model_BaseELCParameters.MarterialsName = "熟料"; //获取物料名称 m_Model_BaseELCParameters.ProcessElectricityConsumption = GetClinkerPowerConsumption(myClinkerProperties, myClinkerProcessMartieralsProperties).CaculateValue; m_Model_BaseELCParameters.ProcessMaterialsUsedQuantity = myClinkerProperties.MarterialsOutput; m_ClinkerELCParameters.Add(m_Model_BaseELCParameters); m_Model_CaculateValueComparable = m_Base_PowConsumption.GetClinkerPowerConsumptionComparable(m_ClinkerELCParameters, myCommonParameters, myClinkerProperties); m_Model_CaculateValueComparable.CaculateName = "可比熟料综合电耗"; return(m_Model_CaculateValueComparable); }
/// <summary> /// 计算可比熟料综合煤耗 /// </summary> /// <param name="myClinkerProperties">熟料属性</param> /// <param name="myCoalProperties">煤粉属性</param> /// <param name="myClinkerProcessMartieralsProperties">各耗煤工序物料属性</param> /// <param name="myCommonParameters">公共参数</param> /// <param name="myCogenerationProperties">余热发电属性</param> /// <param name="myRecuperationProperties">余热利用属性</param> /// <returns>可比熟料综合煤耗</returns> public Model_CaculateValue GetClinkerCoalConsumptionComparable(Model_ClinkerProperties myClinkerProperties, Model_CoalProperties myCoalProperties, List <Model_MartieralsProperties> myClinkerProcessMartieralsProperties, Model_CommonParameters myCommonParameters, Model_CogenerationProperties myCogenerationProperties, Model_RecuperationProperties myRecuperationProperties) { Model_CaculateValue m_Model_CaculateValueComparable = new Model_CaculateValue(); List <Model_BaseCLCParameters> m_ClinkerCLCParameters = new List <Model_BaseCLCParameters>(); List <Model_BaseCLCParameters> m_DeductionCLCParameters = new List <Model_BaseCLCParameters>(); //应扣项 //计算熟料煤耗 Model_BaseCLCParameters m_Model_BaseCLCParameters = new Model_BaseCLCParameters(); m_Model_BaseCLCParameters.ProcessName = "熟料综合煤耗"; //获取工序名称 m_Model_BaseCLCParameters.MarterialsName = "熟料"; //获取物料名称 m_Model_BaseCLCParameters.ProcessCoalConsumption = GetClinkerCoalConsumption(myClinkerProperties, myCoalProperties, myClinkerProcessMartieralsProperties, myCommonParameters).CaculateValue / 1000; m_Model_BaseCLCParameters.ProcessMaterialsUsedQuantity = myClinkerProperties.MarterialsOutput; m_Model_BaseCLCParameters.CoalWaterContent = myCoalProperties.CoalWaterContent; m_Model_BaseCLCParameters.CoalLowCalorificValue = myCoalProperties.CoalLowCalorificValue; m_ClinkerCLCParameters.Add(m_Model_BaseCLCParameters); //计算余热发电折算煤耗 Model_BaseCLCParameters m_Model_BaseCLCParameters_Cogeneration = new Model_BaseCLCParameters(); m_Model_BaseCLCParameters_Cogeneration.ProcessName = "余热发电折算煤耗"; //获取工序名称 m_Model_BaseCLCParameters_Cogeneration.MarterialsName = "熟料"; //获取物料名称 m_Model_BaseCLCParameters_Cogeneration.ProcessCoalConsumption = m_Base_CoalConsumption.GetCogenerationCoalConsumption(myCogenerationProperties.GrossGeneration, myCogenerationProperties.OwnDemand, myClinkerProperties.MarterialsOutput, myCommonParameters).CaculateValue / 1000; m_Model_BaseCLCParameters_Cogeneration.ProcessMaterialsUsedQuantity = myClinkerProperties.MarterialsOutput; m_Model_BaseCLCParameters_Cogeneration.CoalWaterContent = 0; m_Model_BaseCLCParameters_Cogeneration.CoalLowCalorificValue = myCoalProperties.CoalLowCalorificValue; m_DeductionCLCParameters.Add(m_Model_BaseCLCParameters_Cogeneration); //计算余热利用折算煤耗 Model_BaseCLCParameters m_Model_BaseCLCParameters_Recuperation = new Model_BaseCLCParameters(); m_Model_BaseCLCParameters_Cogeneration.ProcessName = "计算余热利用折算煤耗"; //获取工序名称 m_Model_BaseCLCParameters_Cogeneration.MarterialsName = "熟料"; //获取物料名称 m_Model_BaseCLCParameters_Recuperation.ProcessCoalConsumption = m_Base_CoalConsumption.GetRecuperationCoalConsumption(myRecuperationProperties.ImportHeat, myRecuperationProperties.ExportHeat, myRecuperationProperties.LossHeat, myClinkerProperties.MarterialsOutput, myCommonParameters).CaculateValue / 1000; m_Model_BaseCLCParameters_Recuperation.ProcessMaterialsUsedQuantity = myClinkerProperties.MarterialsOutput; m_Model_BaseCLCParameters_Recuperation.CoalWaterContent = 0; m_Model_BaseCLCParameters_Recuperation.CoalLowCalorificValue = myCoalProperties.CoalLowCalorificValue; m_DeductionCLCParameters.Add(m_Model_BaseCLCParameters_Recuperation); m_Model_CaculateValueComparable = m_Base_CoalConsumption.GetClinkerCoalConsumptionComparable(m_ClinkerCLCParameters, m_DeductionCLCParameters, myCommonParameters, myClinkerProperties); m_Model_CaculateValueComparable.CaculateName = "可比熟料综合煤耗"; return(m_Model_CaculateValueComparable); }
/// <summary> /// 计算熟料可比电耗 /// </summary> /// <param name="myClinkerELCParameters">熟料电耗参数</param> /// <param name="myCommonParameters">公共参数</param> /// <param name="myClinkerProperties">熟料属性</param> /// <returns>熟料可比电耗</returns> public Model_CaculateValue GetClinkerPowerConsumptionComparable(List <Model_BaseELCParameters> myClinkerELCParameters, Model_CommonParameters myCommonParameters, Model_ClinkerProperties myClinkerProperties) { decimal m_ClinkerPowerConsumptionComparable = 0; decimal m_ClinkerPowerConsumption = GetPowerConsumption(myClinkerELCParameters, myClinkerProperties.MarterialsOutput, "熟料").CaculateValue; decimal m_CompressiveStrengthCorrectionFactor = (decimal)Math.Pow((double)(myCommonParameters.Clinker_CompressiveStrength / myClinkerProperties.CompressiveStrength), 1 / 4); //强度修正系数 decimal m_AltitudeCorrectionFactor = 1; Model_CaculateValue m_Model_CaculateValue = new Model_CaculateValue(); m_Model_CaculateValue.CaculateFormula = "熟料综合电耗"; Model_CaculateFactor m_Model_CaculateFactor = new Model_CaculateFactor(); m_Model_CaculateFactor.FactorName = "熟料综合电耗"; m_Model_CaculateFactor.FactorValue = m_ClinkerPowerConsumption; m_Model_CaculateValue.CaculateFactor.Add(m_Model_CaculateFactor); if (myClinkerProperties.Altitude > myCommonParameters.Altitude) { m_AltitudeCorrectionFactor = (decimal)Math.Sqrt((double)(myClinkerProperties.AtmosphericPressure / myCommonParameters.AtmosphericPressure)); //海拔修正系数 m_Model_CaculateValue.CaculateFormula = "Sqrt(海拔修正系数)" + " * " + m_Model_CaculateValue.CaculateFormula; Model_CaculateFactor m_Altitude_CaculateFactor = new Model_CaculateFactor(); m_Altitude_CaculateFactor.FactorName = "海拔修正系数"; m_Altitude_CaculateFactor.FactorValue = m_AltitudeCorrectionFactor; m_Model_CaculateValue.CaculateFactor.Add(m_Altitude_CaculateFactor); } //28天强度修正系数 m_Model_CaculateValue.CaculateFormula = "pow(28天强度修正系数,1/4)" + " * " + m_Model_CaculateValue.CaculateFormula; Model_CaculateFactor m_CompressiveStrength_CaculateFactor = new Model_CaculateFactor(); m_CompressiveStrength_CaculateFactor.FactorName = "28天强度修正系数"; m_CompressiveStrength_CaculateFactor.FactorValue = m_CompressiveStrengthCorrectionFactor; m_Model_CaculateValue.CaculateFactor.Add(m_CompressiveStrength_CaculateFactor); m_ClinkerPowerConsumptionComparable = m_ClinkerPowerConsumption * m_CompressiveStrengthCorrectionFactor * m_AltitudeCorrectionFactor; m_Model_CaculateValue.CaculateValue = m_ClinkerPowerConsumptionComparable; return(m_Model_CaculateValue); }
/// <summary> /// 计算熟料可比煤耗 /// </summary> /// <param name="myClinkerCLCParameters">熟料煤耗参数</param> /// <param name="myDeductionCLCParameters">熟料应扣除煤耗</param> /// <param name="myCommonParameters">公共参数</param> /// <param name="myClinkerProperties">熟料属性</param> /// <returns>熟料可比煤耗</returns> public Model_CaculateValue GetClinkerCoalConsumptionComparable(List <Model_BaseCLCParameters> myClinkerCLCParameters, List <Model_BaseCLCParameters> myDeductionCLCParameters, Model_CommonParameters myCommonParameters, Model_ClinkerProperties myClinkerProperties) { Model_CaculateValue m_Model_CaculateValue = new Model_CaculateValue(); decimal m_ClinkerCoalConsumptionComparable = 0; decimal m_ClinkerCoalConsumption = GetCoalConsumption(myClinkerCLCParameters, myClinkerProperties.MarterialsOutput, myCommonParameters.StandardCalorificValue, "熟料").CaculateValue; decimal m_DeductionClinkerCoalConsumption = GetCoalConsumption(myDeductionCLCParameters, myClinkerProperties.MarterialsOutput, myCommonParameters.StandardCalorificValue, "熟料").CaculateValue; decimal m_CompressiveStrengthCorrectionFactor = (decimal)Math.Pow((double)(myCommonParameters.Clinker_CompressiveStrength / myClinkerProperties.CompressiveStrength), 1 / 4); //强度修正系数 decimal m_AltitudeCorrectionFactor = 1; if (myClinkerProperties.Altitude > myCommonParameters.Altitude) { m_AltitudeCorrectionFactor = (decimal)Math.Sqrt((double)(myClinkerProperties.AtmosphericPressure / myCommonParameters.AtmosphericPressure)); //海拔修正系数 } m_ClinkerCoalConsumptionComparable = (m_ClinkerCoalConsumption - m_DeductionClinkerCoalConsumption) * m_CompressiveStrengthCorrectionFactor * m_AltitudeCorrectionFactor; ///////////////////////////熟料综合煤耗///////////////////////// Model_CaculateFactor m_ClinkerCoalConsumption_CaculateFactor = new Model_CaculateFactor(); m_ClinkerCoalConsumption_CaculateFactor.FactorName = "熟料综合煤耗"; m_ClinkerCoalConsumption_CaculateFactor.FactorValue = m_ClinkerCoalConsumption; m_Model_CaculateValue.CaculateFactor.Add(m_ClinkerCoalConsumption_CaculateFactor); ///////////////////////////抵扣熟料煤耗//////////////////////// Model_CaculateFactor m_DeductionClinkerCoalConsumption_CaculateFactor = new Model_CaculateFactor(); m_DeductionClinkerCoalConsumption_CaculateFactor.FactorName = "抵扣熟料煤耗(余热发电等)"; m_DeductionClinkerCoalConsumption_CaculateFactor.FactorValue = m_DeductionClinkerCoalConsumption; m_Model_CaculateValue.CaculateFactor.Add(m_DeductionClinkerCoalConsumption_CaculateFactor); ///////////////////////////水泥强度修正系数//////////////////////// Model_CaculateFactor m_CompressiveStrengthCorrectionFactor_CaculateFactor = new Model_CaculateFactor(); m_CompressiveStrengthCorrectionFactor_CaculateFactor.FactorName = "水泥强度修正系数"; m_CompressiveStrengthCorrectionFactor_CaculateFactor.FactorValue = m_CompressiveStrengthCorrectionFactor; m_Model_CaculateValue.CaculateFactor.Add(m_CompressiveStrengthCorrectionFactor_CaculateFactor); ///////////////////////////海拔高度修正系数//////////////////////// Model_CaculateFactor m_AltitudeCorrectionFactor_CaculateFactor = new Model_CaculateFactor(); m_AltitudeCorrectionFactor_CaculateFactor.FactorName = "海拔高度修正系数"; m_AltitudeCorrectionFactor_CaculateFactor.FactorValue = m_AltitudeCorrectionFactor; m_Model_CaculateValue.CaculateFactor.Add(m_AltitudeCorrectionFactor_CaculateFactor); m_Model_CaculateValue.CaculateFormula = "(熟料综合煤耗 - 抵扣熟料煤耗(余热发电等)) * 熟料强度修正系数 * 海拔高度修正系数"; m_Model_CaculateValue.CaculateValue = m_ClinkerCoalConsumptionComparable; return(m_Model_CaculateValue); }