public ErrorMessage Specify(ProcessVarDouble pv, double aValue) { ErrorMessage retMsg = null; if (pv.HasValueOf(aValue)) { return(retMsg); } else { retMsg = CheckSpecifiedValueRange(pv, aValue); if (retMsg != null) { return(retMsg); } } //remember currently being specified variable value double oldValue = pv.Value; beingSpecifiedProcVar = pv; pv.Value = aValue; pv.State = VarState.Specified; try { unitOpSystem.OnCalculationStarted(); //must tell UI calculation has started already HasBeenModified(true); unitOpSystem.OnCalculationEnded(); //must tell UI calculation has ended already } catch (Exception e) { pv.Value = oldValue; retMsg = HandleException(e); //HasBeenModified(true); } OnProcessVarValueCommitted(pv); return(retMsg); }
public override void SetObjectData() { base.SetObjectData(); int persistedClassVersion = (int)info.GetValue("ClassPersistenceVersionFan", typeof(int)); if (persistedClassVersion == 1) { //this.fanType = (FanType) info.GetValue("FanType", typeof(FanType)); this.staticPressure = RecallStorableObject("StaticPressure", typeof(ProcessVarDouble)) as ProcessVarDouble; this.totalDischargePressure = RecallStorableObject("TotalDischargePressure", typeof(ProcessVarDouble)) as ProcessVarDouble; this.efficiency = RecallStorableObject("Efficiency", typeof(ProcessVarDouble)) as ProcessVarDouble; this.powerInput = RecallStorableObject("PowerInput", typeof(ProcessVarDouble)) as ProcessVarDouble; this.includeOutletVelocityEffect = (bool)info.GetValue("IncludeOutletVelocityEffect", typeof(bool)); this.outletCrossSectionType = (CrossSectionType)info.GetValue("OutletCrossSectionType", typeof(CrossSectionType)); this.outletDiameter = RecallStorableObject("OutletDiameter", typeof(ProcessVarDouble)) as ProcessVarDouble; this.outletVelocity = RecallStorableObject("OutletVelocity", typeof(ProcessVarDouble)) as ProcessVarDouble; this.outletWidth = RecallStorableObject("OutletWidth", typeof(ProcessVarDouble)) as ProcessVarDouble; this.outletHeight = RecallStorableObject("OutletHeight", typeof(ProcessVarDouble)) as ProcessVarDouble; this.outletHeightWidthRatio = RecallStorableObject("OutletHeightWidthRatio", typeof(ProcessVarDouble)) as ProcessVarDouble; this.circularGeometryVarList = info.GetValue("CircularGeometryVarList", typeof(ArrayList)) as ArrayList; this.rectangularGeometryVarList = info.GetValue("RectangularGeometryVarList", typeof(ArrayList)) as ArrayList; } }
protected override ErrorMessage CheckSpecifiedValueRange(ProcessVarDouble pv, double aValue) { ErrorMessage retValue = base.CheckSpecifiedValueRange(pv, aValue); if (retValue != null) { return(retValue); } if (retValue == null) { if (calculationType == UnitOpCalculationType.Balance) { retValue = balanceModel.CheckSpecifiedValueRange(pv, aValue); } else if (calculationType == UnitOpCalculationType.Rating) { retValue = currentRatingModel.CheckSpecifiedValueRange(pv, aValue); } } return(retValue); }
public override void SetObjectData() { base.SetObjectData(); int classVersion = (int)info.GetValue("ClassPersistenceVersion", typeof(int)); if (classVersion >= 1) { /*this.pressureDrop = (ProcessVarDouble)RecallStorableObject("PressureDrop", typeof(ProcessVarDouble)); * this.collectionEfficiency = (ProcessVarDouble)RecallStorableObject("CollectionEfficiency", typeof(ProcessVarDouble)); * this.inletDustLoading = (ProcessVarDouble)RecallStorableObject("InletDustLoading", typeof(ProcessVarDouble)); * this.outletDustLoading = (ProcessVarDouble)RecallStorableObject("OutletDustLoading", typeof(ProcessVarDouble)); * this.dustAccumulationRate = (ProcessVarDouble)RecallStorableObject("DustAccumulationRate", typeof(ProcessVarDouble));*/ this.balanceModel = RecallStorableObject("BalanceModel", typeof(GasSolidSeparatorBalanceModel)) as GasSolidSeparatorBalanceModel; this.gasToClothRatio = (ProcessVarDouble)RecallStorableObject("GasToClothRatio", typeof(ProcessVarDouble)); this.totalFilteringArea = (ProcessVarDouble)RecallStorableObject("TotalFilteringArea", typeof(ProcessVarDouble)); } if (classVersion >= 2) { this.particleOutlet = info.GetValue("ParticleOutlet", typeof(ProcessStreamBase)) as ProcessStreamBase; } }
internal ErrorMessage CheckSpecifiedValueRange(ProcessVarDouble pv, double aValue) { ErrorMessage retValue = null; if (pv == gasPressureDrop && aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv); } else if (pv == collectionEfficiency && (aValue < 0.2 || aValue > 1.0)) { retValue = ownerUnitOp.CreateSimpleGenericInappropriateSpecifiedValueErrorMessage(pv.VarTypeName + " must be in the range of 0.2 to 1."); } else if (pv == inletParticleLoading && outletParticleLoading.HasValue && aValue < outletParticleLoading.Value) { retValue = ownerUnitOp.CreateSimpleGenericInappropriateSpecifiedValueErrorMessage(pv.VarTypeName + " must be greater than " + outletParticleLoading.VarTypeName + "."); } else if (pv == outletParticleLoading && inletParticleLoading.HasValue && aValue > inletParticleLoading.Value) { retValue = ownerUnitOp.CreateSimpleGenericInappropriateSpecifiedValueErrorMessage(pv.VarTypeName + " must be smaller than " + inletParticleLoading.VarTypeName + "."); } return(retValue); }
internal override ErrorMessage CheckSpecifiedValueRange(ProcessVarDouble pv, double aValue) { ErrorMessage retValue = null; if (pv == wallThickness) { //heat exchanger design handbook page 351 if (aValue > 0.0012 || aValue < 0.0005) { retValue = owner.CreateSimpleGenericInappropriateSpecifiedValueErrorMessage("Plate wall thickness must be in the range of 0.5 to 1.2 mm"); } } else if (pv == channelWidth || pv == projectedChannelLength) { //heat exchanger design handbook page 351 if (aValue > 2.2 || aValue < 0.03) { retValue = owner.CreateSimpleGenericInappropriateSpecifiedValueErrorMessage("Plate width or length must be in the range of 0.03 to 2.2 m"); } } else if (pv == platePitch) { //heat exchanger design handbook page 351 if (aValue < 0.0015 || aValue > 0.005) { retValue = owner.CreateSimpleGenericInappropriateSpecifiedValueErrorMessage("Plate pitch must be in the range of 1.5 to 5.0 mm"); } } else if (pv == portDiameter) { if (aValue < 0.02 || aValue > 0.39) { retValue = owner.CreateSimpleGenericInappropriateSpecifiedValueErrorMessage("Port diameter must be in the range of 2 to 39 cm"); } } return(retValue); }
internal override ErrorMessage CheckSpecifiedValueRange(ProcessVarDouble pv, double aValue) { ErrorMessage retValue = null; if (pv == wallThickness) { //heat exchanger design handbook page 351 if (aValue > 0.0012 || aValue < 0.0005) { retValue = new ErrorMessage(ErrorType.SimpleGeneric, StringConstants.INAPPROPRIATE_SPECIFIED_VALUE, "Plate wall thickness must be in the range of 0.5 to 1.2 mm"); } } else if (pv == channelWidth || pv == projectedChannelLength) { //heat exchanger design handbook page 351 if (aValue > 2.2 || aValue < 0.03) { retValue = new ErrorMessage(ErrorType.SimpleGeneric, StringConstants.INAPPROPRIATE_SPECIFIED_VALUE, "Plate width or length must be in the range of 0.03 to 2.2 m"); } } else if (pv == platePitch) { //heat exchanger design handbook page 351 if (aValue < 0.0015 || aValue > 0.005) { retValue = new ErrorMessage(ErrorType.SimpleGeneric, StringConstants.INAPPROPRIATE_SPECIFIED_VALUE, "Plate pitch must be in the range of 1.5 to 5.0 mm"); } } else if (pv == portDiameter) { if (aValue < 0.02 || aValue > 0.39) { retValue = new ErrorMessage(ErrorType.SimpleGeneric, StringConstants.INAPPROPRIATE_SPECIFIED_VALUE, "Port diameter must be in the range of 2 to 39 cm"); } } return(retValue); }
protected override ErrorMessage CheckSpecifiedValueRange(ProcessVarDouble pv, double aValue) { ErrorMessage retValue = base.CheckSpecifiedValueRange(pv, aValue); if (retValue != null) { return(retValue); } if (retValue == null) { if (calculationType == UnitOpCalculationType.Balance) { retValue = balanceModel.CheckSpecifiedValueRange(pv, aValue); } } if (pv == driftVelocity && aValue <= 0.0) { retValue = CreateLessThanOrEqualToZeroErrorMessage(pv); } return(retValue); }
protected override ErrorMessage CheckSpecifiedValueRange(ProcessVarDouble pv, double aValue) { ErrorMessage retValue = base.CheckSpecifiedValueRange(pv, aValue); if (retValue != null) { return(retValue); } //if (pv.VarTypeName == StringConstants.GetTypeName(StringConstants.PRESSURE_RATIO)) if (pv == pressureRatio) { if (aValue != Constants.NO_VALUE && (aValue < 1.0 || aValue < 1000)) { retValue = new ErrorMessage(ErrorType.SimpleGeneric, StringConstants.INAPPROPRIATE_SPECIFIED_VALUE, pv.VarTypeName + " ratio must be in the range of 1.0 to 1000"); } } //else if (pv.VarTypeName == StringConstants.GetTypeName(StringConstants.ADIABATIC_EXPONENT)) else if (pv == adiabaticExponent) { if (aValue != Constants.NO_VALUE && (aValue < 1.0 || aValue > 10.0)) { retValue = new ErrorMessage(ErrorType.SimpleGeneric, StringConstants.INAPPROPRIATE_SPECIFIED_VALUE, pv.VarTypeName + " must be in the range of 1.0 to 10.0"); } } //else if (pv.VarTypeName == StringConstants.GetTypeName(StringConstants.POLYTROPIC_EXPONENT)) else if (pv == polytropicExponent) { if (aValue != Constants.NO_VALUE && (aValue < 1.0 || aValue > 10.0)) { retValue = new ErrorMessage(ErrorType.SimpleGeneric, StringConstants.INAPPROPRIATE_SPECIFIED_VALUE, pv.VarTypeName + " must be in the range of 1.0 to 10.0"); } } return(retValue); }
protected override ErrorMessage CheckSpecifiedValueRange(ProcessVarDouble pv, double aValue) { ErrorMessage retValue = base.CheckSpecifiedValueRange(pv, aValue); if (retValue != null) { return(retValue); } //if (pv.VarTypeName == StringConstants.GetTypeName(StringConstants.HEAT_LOSS)) if (pv == heatLoss) { if (aValue != Constants.NO_VALUE && aValue < 0.0) { retValue = CreateLessThanZeroErrorMessage(pv);; } } //else if (pv.VarTypeName == StringConstants.GetTypeName(StringConstants.HEAT_INPUT)) else if (pv == heatInput) { if (aValue != Constants.NO_VALUE && aValue < 0.0) { retValue = CreateLessThanZeroErrorMessage(pv);; } } //else if (pv.VarTypeName == StringConstants.GetTypeName(StringConstants.WORK_INPUT)) else if (pv == workInput) { if (aValue != Constants.NO_VALUE && aValue < 0.0) { retValue = CreateLessThanZeroErrorMessage(pv);; } } return(retValue); }
internal ErrorMessage CheckSpecifiedValueRange(ProcessVarDouble pv, double aValue) { ErrorMessage retValue = null; return(retValue); }
public ErrorMessage SpecifyIndependentVar(ProcessVarDouble var) { independentVar = var; return(null); }
private void Calculate(ProcessVarDouble pv, double aValue) { ownerUnitOp.Calculate(pv, aValue); }
internal ErrorMessage CheckSpecifiedValueRange(ProcessVarDouble pv, double aValue) { if (aValue == Constants.NO_VALUE) { return(null); } ErrorMessage retValue = null; if (pv == inletWidth) { if (aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv);; } } else if (pv == inletHeight) { if (aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv);; } } else if (pv == inletHeightToWidthRatio) { if (aValue < 0.0) { retValue = ownerUnitOp.CreateLessThanZeroErrorMessage(pv);; } } else if (pv == outletInnerDiameter) { if (aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv);; } } else if (pv == outletWallThickness) { if (aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv);; } } else if (pv == cycloneDiameter) { if (aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv);; } } else if (pv == diplegDiameter) { if (aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv);; } else if (cycloneDiameter.HasValue && aValue > cycloneDiameter.Value) { retValue = ownerUnitOp.CreateSimpleGenericInappropriateSpecifiedValueErrorMessage(pv.VarTypeName + " cannot be greater than " + cycloneDiameter.VarTypeName); } } else if (pv == coneLength) { if (aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv);; } } else if (pv == outletTubeLengthBelowRoof) { if (aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv);; } } else if (pv == outletBelowRoofToInletHeightRatio) { if (aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv);; } } else if (pv == externalVesselDiameter) { if (aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv);; } } else if (pv == coneAngle) { if (aValue <= 0.0 || aValue >= Math.PI / 2) { retValue = ownerUnitOp.CreateSimpleGenericInappropriateSpecifiedValueErrorMessage(pv.VarTypeName + " of the cyclone must be in the range of 0 to 90 degrees"); } } else if (pv == barrelLength) { if (aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv);; } } else if (pv == cutParticleDiameter) { if (aValue <= 0.0 && aValue > 0.001) { retValue = ownerUnitOp.CreateSimpleGenericInappropriateSpecifiedValueErrorMessage(pv.VarTypeName + " must be in the range of 0 to 1000 µm"); } } else if (pv == ParticleDensity) { if (aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv);; } } else if (pv == ParticleBulkDensity) { if (aValue <= 0.0) { retValue = ownerUnitOp.CreateLessThanOrEqualToZeroErrorMessage(pv);; } } return(retValue); }
protected virtual ErrorMessage CheckSpecifiedValueRange(ProcessVarDouble pv, double aValue) { return(null); }
public ParticleSizeAndFraction(IProcessVarOwner owner) { diameter = new ProcessVarDouble(StringConstants.DIAMETER, PhysicalQuantity.MicroLength, 2.0e-5, VarState.Specified, owner); weightFraction = new ProcessVarDouble(StringConstants.WEIGHT_FRACTION, PhysicalQuantity.Fraction, 1.0, VarState.Specified, owner); }
protected override ErrorMessage CheckSpecifiedValueRange(ProcessVarDouble pv, double aValue) { ErrorMessage retValue = base.CheckSpecifiedValueRange(pv, aValue); if (retValue != null) { return(retValue); } string valueString = aValue.ToString(); if (pv == temperature) { if (wetBulbTemperature.IsSpecifiedAndHasValue && aValue < wetBulbTemperature.Value) { retValue = CreateSimpleGenericInappropriateSpecifiedValueErrorMessage("Specified " + pv.VarTypeName + " value is less than " + wetBulbTemperature.VarTypeName + " and therefore cannot be committed."); } else if (dewPoint.IsSpecifiedAndHasValue && aValue < dewPoint.Value) { retValue = CreateSimpleGenericInappropriateSpecifiedValueErrorMessage("Specified " + pv.VarTypeName + " value is less than " + dewPoint.VarTypeName + " and therefore cannot be committed."); } } else if (pv == wetBulbTemperature) { if (temperature.IsSpecifiedAndHasValue && aValue > temperature.Value) { retValue = CreateSimpleGenericInappropriateSpecifiedValueErrorMessage("Specified " + pv.VarTypeName + " value is greater than " + temperature.VarTypeName + " and therefore cannot be committed."); } else if (dewPoint.IsSpecifiedAndHasValue && aValue < dewPoint.Value) { retValue = CreateSimpleGenericInappropriateSpecifiedValueErrorMessage("Specified " + pv.VarTypeName + " value is less than than " + dewPoint.VarTypeName + " and therefore cannot be committed."); } } else if (pv == dewPoint) { if (temperature.IsSpecifiedAndHasValue && aValue > temperature.Value) { retValue = CreateSimpleGenericInappropriateSpecifiedValueErrorMessage("Specified " + pv.VarTypeName + " value is greater than " + temperature.VarTypeName + " and therefore cannot be committed."); } else if (wetBulbTemperature.IsSpecifiedAndHasValue && aValue > wetBulbTemperature.Value) { retValue = CreateSimpleGenericInappropriateSpecifiedValueErrorMessage("Specified " + pv.VarTypeName + " value is greater than " + wetBulbTemperature.VarTypeName + " and therefore cannot be committed."); } } else if (pv == Humidity) { if (aValue < 0) { retValue = CreateLessThanZeroErrorMessage(pv); } else if (pressure.HasValue) { double maxHumidity = 1000.0; //HumidGasCalculator humidGasCalculator = GetHumidGasCalculator(); if (temperature.HasValue) { maxHumidity = HumidGasCalculator.GetHumidityFromDewPointAndPressure(temperature.Value, pressure.Value); } else if (wetBulbTemperature.HasValue) { maxHumidity = HumidGasCalculator.GetHumidityFromDewPointAndPressure(wetBulbTemperature.Value, pressure.Value); } else if (dewPoint.HasValue) { maxHumidity = HumidGasCalculator.GetHumidityFromDewPointAndPressure(dewPoint.Value, pressure.Value); } if (aValue > maxHumidity) { aValue = maxHumidity; retValue = CreateSimpleGenericInappropriateSpecifiedValueErrorMessage("The maximum " + pv.VarTypeName + " value under current conditions is " + aValue.ToString() + ".\n Specified value " + valueString + " is greater than the maximum and therefore cannot be committed."); } } } else if (pv == relativeHumidity) { if (aValue < 0 || aValue > 1.0) { retValue = CreateOutOfRangeZeroToOneErrorMessage(pv); } } if (retValue == null) { retValue = CheckSpecifiedValueInContextOfOwner(pv, aValue); } return(retValue); }
public Adjust(string name, UnitOperationSystem uoSys) : base(name, uoSys) { targetVar = new ProcessVarDouble(StringConstants.TARGET_VALUE, VarState.Specified, this); }
public StreamAndFraction(ProcessStreamBase stream, Solvable owner) { this.stream = stream; this.fraction = new ProcessVarDouble(stream.Name + "Fraction", PhysicalQuantity.Fraction, VarState.Specified, owner); }
internal virtual ErrorMessage CheckSpecifiedValueInContext(ProcessVarDouble pv, double aValue) { return(null); }
public ErrorMessage SpecifyIndependentVar(ProcessVarDouble var) { independentVar = var; HasBeenModified(true); return(null); }
protected override ErrorMessage CheckSpecifiedValueRange(ProcessVarDouble pv, double aValue) { ErrorMessage retValue = base.CheckSpecifiedValueRange(pv, aValue); if (retValue != null) { return(retValue); } if (pv == outletDiameter) { if (aValue <= 0.0) { retValue = CreateLessThanOrEqualToZeroErrorMessage(pv); } } else if (pv == outletWidth) { if (aValue <= 0.0) { retValue = CreateLessThanOrEqualToZeroErrorMessage(pv); } } else if (pv == outletHeight) { if (aValue <= 0.0) { retValue = CreateLessThanOrEqualToZeroErrorMessage(pv); } } else if (pv == efficiency) { if (aValue < 0.2 || aValue > 1.0) { retValue = CreateSimpleGenericInappropriateSpecifiedValueErrorMessage(pv.VarTypeName + " cannot be out of the range of 0.2 to 1."); } } else if (pv == staticPressure) { if (aValue <= 0.0) { retValue = CreateLessThanOrEqualToZeroErrorMessage(pv); } else if (aValue > 10320) { string msg = "Specified value for " + staticPressure.VarTypeName + " of the fan is out of the appropriate range."; retValue = new ErrorMessage(ErrorType.SpecifiedValueOutOfRange, StringConstants.INAPPROPRIATE_SPECIFIED_VALUE, msg); retValue.AddVarAndItsRange(staticPressure, new DoubleRange(0, 10320)); //if (fanType == FanType.Fan && aValue >= 3477) { // string msg = "Specified value for " + staticPressure.VarTypeName + " of the fan is out of the appropriate range."; // retValue = new ErrorMessage(ErrorType.SpecifiedValueOutOfRange, StringConstants.INAPPROPRIATE_SPECIFIED_VALUE, msg); // retValue.AddVarAndItsRange(staticPressure, new DoubleRange(0, 3477)); //} //else if (fanType == FanType.Blower && (aValue < 3477 || aValue > 10320)) { // string msg = "Specified value for " + staticPressure.VarTypeName + " of the fan is out of the appropriate range."; // retValue = new ErrorMessage(ErrorType.SpecifiedValueOutOfRange, StringConstants.INAPPROPRIATE_SPECIFIED_VALUE, msg); // retValue.AddVarAndItsRange(staticPressure, new DoubleRange(3477, 10320)); //} } } return(retValue); }
public PlotVariable(ProcessVarDouble pv, double min, double max) { this.pv = pv; this.min = min; this.max = max; }
public Furnace(string name, UnitOperationSystem uoSys) : base(name, uoSys) { excessAir = new ProcessVarDouble(StringConstants.EXCESS_AIR, PhysicalQuantity.Fraction, VarState.Specified, this); }
protected override void BalancePressure(ProcessStreamBase inletStream, ProcessStreamBase outletStream, ProcessVarDouble pressureDrop) { //pressure balance if (inletStream.Pressure.HasValue && outletStream.Pressure.HasValue && !pressureDrop.HasValue) { double inletPressure = inletStream.Pressure.Value; double outletPressure = outletStream.Pressure.Value; double pressDiff = inletPressure - outletPressure; string errorMsg = null; if (pressDiff <= 0 || pressDiff > 10320) { errorMsg = "Calculated value for the " + pressureDrop.VarTypeName + " of " + this.name + " is out of the appripriate range of 0 to 10.32 kPa."; } //if (fanType == FanType.Fan && (pressDiff <= 0 || pressDiff > 3477)) { // errorMsg = "Calculated value for the " + pressureDrop.VarTypeName + " of " + this.name + " is out of the appripriate range of 0 to 3.477 kPa."; //} //else if (fanType == FanType.Blower && (pressDiff < 3477 || pressDiff > 10320)) { // errorMsg = "Calculated value for the " + pressureDrop.VarTypeName + " of " + this.name + " is out of the appripriate range of 3.477 to 10.32 kPa."; //} if (errorMsg != null) { throw new InappropriateCalculatedValueException(errorMsg); } else { Calculate(pressureDrop, pressDiff); } } else if (inletStream.Pressure.HasValue && pressureDrop.HasValue && !outletStream.Pressure.HasValue) { double pressOutlet = inletStream.Pressure.Value - pressureDrop.Value; Calculate(outletStream.Pressure, pressOutlet); } else if (outletStream.Pressure.HasValue && pressureDrop.HasValue && !inletStream.Pressure.HasValue) { double pressInlet = outletStream.Pressure.Value + pressureDrop.Value; Calculate(inletStream.Pressure, pressInlet); } else if (inletStream.Pressure.HasValue && outletStream.Pressure.HasValue && pressureDrop.HasValue) { //over specification!!!! } }
protected DryerRatingModel(Dryer dryer) { this.owner = dryer; flowDirection = FlowDirectionType.Counter; gasVelocity = new ProcessVarDouble(StringConstants.GAS_VELOCITY, PhysicalQuantity.Velocity, 2.0, VarState.Specified, dryer); }
public Valve(string name, UnitOperationSystem uoSys) : base(name, uoSys) { pressureDrop = new ProcessVarDouble(StringConstants.PRESSURE_DROP, PhysicalQuantity.Pressure, VarState.Specified, this); InitializeVarListAndRegisterVars(); }
public GenericFuelStream(string name, MaterialComponents mComponents, UnitOperationSystem uoSys) : base(name, mComponents, uoSys) { heatValue = new ProcessVarDouble(StringConstants.HEAT_VALUE, PhysicalQuantity.SpecificEnergy, VarState.Specified, this); InitializeVarListAndRegisterVars(); }
protected virtual void BalancePressure(ProcessStreamBase inletStream, ProcessStreamBase outletStream, ProcessVarDouble pressureDrop) { //pressure balance if (inletStream.Pressure.HasValue && outletStream.Pressure.HasValue && !pressureDrop.HasValue) { double pressDiff = inletStream.Pressure.Value - outletStream.Pressure.Value; Calculate(pressureDrop, pressDiff); } else if (inletStream.Pressure.HasValue && pressureDrop.HasValue && !outletStream.Pressure.HasValue) { double pressOutlet = inletStream.Pressure.Value - pressureDrop.Value; Calculate(outletStream.Pressure, pressOutlet); } else if (outletStream.Pressure.HasValue && pressureDrop.HasValue && !inletStream.Pressure.HasValue) { double pressInlet = outletStream.Pressure.Value + pressureDrop.Value; Calculate(inletStream.Pressure, pressInlet); } else if (inletStream.Pressure.HasValue && outletStream.Pressure.HasValue && pressureDrop.HasValue) { //over specification!!!! } }
public MaterialComponent(Substance substance) { this.substance = substance; this.massFraction = new ProcessVarDouble(StringConstants.MASS_FRACTION, PhysicalQuantity.Fraction, 1.0, VarState.Specified, this); this.moleFraction = new ProcessVarDouble(StringConstants.MOLE_FRACTION, PhysicalQuantity.Fraction, 1.0, VarState.Specified, this); }