public double ConvertToSIValue(PhysicalQuantity varType, double toBeConverted) { //Type myType = pqTypeTable[varType] as Type; //return (double)myType.InvokeMember("ConvertToSIValue", BindingFlags.Static, null, null, new object[] {varType, toBeConverted}); double siValue = 0; if (varType == PhysicalQuantity.Temperature) { siValue = TemperatureUnit.ConvertToSIValue(currentUnitSystem.TemperatureUnitType, toBeConverted); } else if (varType == PhysicalQuantity.Pressure) { siValue = PressureUnit.ConvertToSIValue(currentUnitSystem.PressureUnitType, toBeConverted); } else if (varType == PhysicalQuantity.MassFlowRate) { siValue = MassFlowRateUnit.ConvertToSIValue(currentUnitSystem.MassFlowRateUnitType, toBeConverted); } else if (varType == PhysicalQuantity.VolumeFlowRate) { siValue = VolumeFlowRateUnit.ConvertToSIValue(currentUnitSystem.VolumeFlowRateUnitType, toBeConverted); } else if (varType == PhysicalQuantity.VolumeRateFlowGases) { siValue = VolumeRateFlowGasesUnit.ConvertToSIValue(currentUnitSystem.VolumeRateFlowGasesUnitType, toBeConverted); } else if (varType == PhysicalQuantity.VolumeRateFlowLiquids) { siValue = VolumeRateFlowLiquidsUnit.ConvertToSIValue(currentUnitSystem.VolumeRateFlowLiquidsUnitType, toBeConverted); } else if (varType == PhysicalQuantity.MoistureContent) { siValue = MoistureContentUnit.ConvertToSIValue(currentUnitSystem.MoistureContentUnitType, toBeConverted); } else if (varType == PhysicalQuantity.SpecificEnergy) { siValue = SpecificEnergyUnit.ConvertToSIValue(currentUnitSystem.SpecificEnergyUnitType, toBeConverted); } else if (varType == PhysicalQuantity.SpecificHeat) { siValue = SpecificHeatUnit.ConvertToSIValue(currentUnitSystem.SpecificHeatUnitType, toBeConverted); } else if (varType == PhysicalQuantity.Energy) { siValue = EnergyUnit.ConvertToSIValue(currentUnitSystem.EnergyUnitType, toBeConverted); } else if (varType == PhysicalQuantity.Power) { siValue = PowerUnit.ConvertToSIValue(currentUnitSystem.PowerUnitType, toBeConverted); } else if (varType == PhysicalQuantity.Density) { siValue = DensityUnit.ConvertToSIValue(currentUnitSystem.DensityUnitType, toBeConverted); } else if (varType == PhysicalQuantity.SpecificVolume) { siValue = SpecificVolumeUnit.ConvertToSIValue(currentUnitSystem.SpecificVolumeUnitType, toBeConverted); } else if (varType == PhysicalQuantity.DynamicViscosity) { siValue = DynamicViscosityUnit.ConvertToSIValue(currentUnitSystem.DynamicViscosityUnitType, toBeConverted); } else if (varType == PhysicalQuantity.KinematicViscosity) { siValue = KinematicViscosityUnit.ConvertToSIValue(currentUnitSystem.KinematicViscosityUnitType, toBeConverted); } else if (varType == PhysicalQuantity.ThermalConductivity) { siValue = ThermalConductivityUnit.ConvertToSIValue(currentUnitSystem.ThermalConductivityUnitType, toBeConverted); } else if (varType == PhysicalQuantity.HeatTransferCoefficient) { siValue = HeatTransferCoefficientUnit.ConvertToSIValue(currentUnitSystem.HeatTransferCoefficientUnitType, toBeConverted); } else if (varType == PhysicalQuantity.VolumeHeatTransferCoefficient) { siValue = VolumeHeatTransferCoefficientUnit.ConvertToSIValue(currentUnitSystem.VolumeHeatTransferCoefficientUnitType, toBeConverted); } else if (varType == PhysicalQuantity.FoulingFactor) { siValue = FoulingFactorUnit.ConvertToSIValue(currentUnitSystem.FoulingFactorUnitType, toBeConverted); } else if (varType == PhysicalQuantity.Diffusivity) { siValue = DiffusivityUnit.ConvertToSIValue(currentUnitSystem.DiffusivityUnitType, toBeConverted); } else if (varType == PhysicalQuantity.Velocity) { siValue = VelocityUnit.ConvertToSIValue(currentUnitSystem.VelocityUnitType, toBeConverted); } else if (varType == PhysicalQuantity.Mass) { siValue = MassUnit.ConvertToSIValue(currentUnitSystem.MassUnitType, toBeConverted); } else if (varType == PhysicalQuantity.Length) { siValue = LengthUnit.ConvertToSIValue(currentUnitSystem.LengthUnitType, toBeConverted); } else if (varType == PhysicalQuantity.SmallLength) { siValue = SmallLengthUnit.ConvertToSIValue(currentUnitSystem.SmallLengthUnitType, toBeConverted); } else if (varType == PhysicalQuantity.MicroLength) { siValue = MicroLengthUnit.ConvertToSIValue(currentUnitSystem.MicroLengthUnitType, toBeConverted); } else if (varType == PhysicalQuantity.Area) { siValue = AreaUnit.ConvertToSIValue(currentUnitSystem.AreaUnitType, toBeConverted); } else if (varType == PhysicalQuantity.Volume) { siValue = VolumeUnit.ConvertToSIValue(currentUnitSystem.VolumeUnitType, toBeConverted); } else if (varType == PhysicalQuantity.Time) { siValue = TimeUnit.ConvertToSIValue(currentUnitSystem.TimeUnitType, toBeConverted); } else if (varType == PhysicalQuantity.Fraction) { siValue = FractionUnit.ConvertToSIValue(currentUnitSystem.FractionUnitType, toBeConverted); } else if (varType == PhysicalQuantity.LiquidHead) { siValue = LiquidHeadUnit.ConvertToSIValue(currentUnitSystem.LiquidHeadUnitType, toBeConverted); } else if (varType == PhysicalQuantity.MassVolumeConcentration) { siValue = MassVolumeConcentrationUnit.ConvertToSIValue(currentUnitSystem.MassVolumeConcentrationUnitType, toBeConverted); } else if (varType == PhysicalQuantity.PlaneAngle) { siValue = PlaneAngleUnit.ConvertToSIValue(currentUnitSystem.PlaneAngleUnitType, toBeConverted); } else if (varType == PhysicalQuantity.HeatFlux) { siValue = HeatFluxUnit.ConvertToSIValue(currentUnitSystem.HeatFluxUnitType, toBeConverted); } else if (varType == PhysicalQuantity.Unknown) { siValue = toBeConverted; } return(siValue); }