From 2704ec112cfe7b0866e0712f57412c201ef33238 Mon Sep 17 00:00:00 2001
From: Markus Quaritsch <markus.quaritsch@tugraz.at>
Date: Fri, 4 Aug 2017 09:54:27 +0200
Subject: [PATCH] write copy cold-hot balancing factor to engine data instance

---
 .../Data/CombustionEngineData.cs              | 193 +++++++++---------
 1 file changed, 97 insertions(+), 96 deletions(-)

diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Data/CombustionEngineData.cs b/VectoCore/VectoCore/Models/SimulationComponent/Data/CombustionEngineData.cs
index d888ef53d3..09427161a5 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Data/CombustionEngineData.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Data/CombustionEngineData.cs
@@ -29,101 +29,102 @@
 *   Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology
 */
 
-using System.Collections.Generic;
-using System.ComponentModel.DataAnnotations;
-using TUGraz.VectoCommon.Models;
-using TUGraz.VectoCommon.Utils;
-using TUGraz.VectoCore.Configuration;
-using TUGraz.VectoCore.Models.SimulationComponent.Data.Engine;
-
-namespace TUGraz.VectoCore.Models.SimulationComponent.Data
-{
-	[CustomValidation(typeof(CombustionEngineData), "ValidateData")]
-	public class CombustionEngineData : SimulationComponentData
-	{
-		[Required, SIRange(1000 * 1E-6, 20000 * 1E-6)]
-		public CubicMeter Displacement { get; internal set; }
-
-		[Required, SIRange(400 * Constants.RPMToRad, 1000 * Constants.RPMToRad)]
-		public PerSecond IdleSpeed { get; internal set; }
-
-		[Required, SIRange(0, 10)]
-		public KilogramSquareMeter Inertia { get; internal set; }
-
-		[Required, Range(0.9, 2)]
-		public double WHTCUrban { get; internal set; }
-
-		[Required, Range(0.9, 2)]
-		public double WHTCRural { get; internal set; }
-
-		[Required, Range(0.9, 2)]
-		public double WHTCMotorway { get; internal set; }
-
-		[Required, ValidateObject]
-		public FuelConsumptionMap ConsumptionMap { get; internal set; }
-
-		[Required, ValidateObject]
-		public Dictionary<uint, EngineFullLoadCurve> FullLoadCurves { get; internal set; }
-
-		[Required, Range(double.MinValue, double.MaxValue)]
-		public double ColdHotCorrectionFactor { get; internal set; }
-
-		[Required, Range(double.MinValue, double.MaxValue)]
-		public double CorrectionFactorRegPer { get; internal set; }
-
-		[Required, Range(double.MinValue, double.MaxValue)]
-		public double CorrectionFactorNCV { get; internal set; }
-
-		public double FuelConsumptionCorrectionFactor { get; internal set; }
-
-		public PerSecond RatedSpeedDeclared { get; internal set; }
-
-		public Watt RatedPowerDeclared { get; internal set; }
-
-		public NewtonMeter MaxTorqueDeclared { get; internal set; }
-
-		public FuelType FuelType { get; internal set; }
-
-		public CombustionEngineData()
-		{
-			WHTCUrban = 1;
-			WHTCMotorway = 1;
-			WHTCRural = 1;
-			CorrectionFactorNCV = 1;
-			CorrectionFactorRegPer = 1;
-			FuelConsumptionCorrectionFactor = 1;
-		}
-
-		public CombustionEngineData Copy()
-		{
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using TUGraz.VectoCommon.Models;
+using TUGraz.VectoCommon.Utils;
+using TUGraz.VectoCore.Configuration;
+using TUGraz.VectoCore.Models.SimulationComponent.Data.Engine;
+
+namespace TUGraz.VectoCore.Models.SimulationComponent.Data
+{
+	[CustomValidation(typeof(CombustionEngineData), "ValidateData")]
+	public class CombustionEngineData : SimulationComponentData
+	{
+		[Required, SIRange(1000 * 1E-6, 20000 * 1E-6)]
+		public CubicMeter Displacement { get; internal set; }
+
+		[Required, SIRange(400 * Constants.RPMToRad, 1000 * Constants.RPMToRad)]
+		public PerSecond IdleSpeed { get; internal set; }
+
+		[Required, SIRange(0, 10)]
+		public KilogramSquareMeter Inertia { get; internal set; }
+
+		[Required, Range(0.9, 2)]
+		public double WHTCUrban { get; internal set; }
+
+		[Required, Range(0.9, 2)]
+		public double WHTCRural { get; internal set; }
+
+		[Required, Range(0.9, 2)]
+		public double WHTCMotorway { get; internal set; }
+
+		[Required, ValidateObject]
+		public FuelConsumptionMap ConsumptionMap { get; internal set; }
+
+		[Required, ValidateObject]
+		public Dictionary<uint, EngineFullLoadCurve> FullLoadCurves { get; internal set; }
+
+		[Required, Range(double.MinValue, double.MaxValue)]
+		public double ColdHotCorrectionFactor { get; internal set; }
+
+		[Required, Range(double.MinValue, double.MaxValue)]
+		public double CorrectionFactorRegPer { get; internal set; }
+
+		[Required, Range(double.MinValue, double.MaxValue)]
+		public double CorrectionFactorNCV { get; internal set; }
+
+		public double FuelConsumptionCorrectionFactor { get; internal set; }
+
+		public PerSecond RatedSpeedDeclared { get; internal set; }
+
+		public Watt RatedPowerDeclared { get; internal set; }
+
+		public NewtonMeter MaxTorqueDeclared { get; internal set; }
+
+		public FuelType FuelType { get; internal set; }
+
+		public CombustionEngineData()
+		{
+			WHTCUrban = 1;
+			WHTCMotorway = 1;
+			WHTCRural = 1;
+			CorrectionFactorNCV = 1;
+			CorrectionFactorRegPer = 1;
+			FuelConsumptionCorrectionFactor = 1;
+		}
+
+		public CombustionEngineData Copy()
+		{
 			return new CombustionEngineData {
 				Manufacturer = Manufacturer,
-				ModelName = ModelName,
-				Displacement = Displacement,
-				IdleSpeed = IdleSpeed,
-				Inertia = Inertia,
-				WHTCUrban = WHTCUrban,
-				WHTCRural = WHTCRural,
-				WHTCMotorway = WHTCMotorway,
-				ConsumptionMap = ConsumptionMap,
-				FullLoadCurves = FullLoadCurves,
-				CorrectionFactorRegPer = CorrectionFactorRegPer,
-				CorrectionFactorNCV = CorrectionFactorNCV,
-				FuelConsumptionCorrectionFactor = FuelConsumptionCorrectionFactor,
-				RatedPowerDeclared = RatedPowerDeclared,
-				RatedSpeedDeclared = RatedSpeedDeclared,
-				MaxTorqueDeclared = MaxTorqueDeclared,
-				FuelType = FuelType
-			};
-		}
-
-		// ReSharper disable once UnusedMember.Global -- used in CustomValidation
-		public static ValidationResult ValidateData(CombustionEngineData data, ValidationContext context)
-		{
-			if (data.Inertia.IsEqual(0)) {
-				LogManager.GetLogger(typeof(CombustionEngineData).FullName).Error("Warning: Engine Inertia is 0!");
-			}
-			return ValidationResult.Success;
-		}
-	}
-}
\ No newline at end of file
+				ModelName = ModelName,
+				Displacement = Displacement,
+				IdleSpeed = IdleSpeed,
+				Inertia = Inertia,
+				WHTCUrban = WHTCUrban,
+				WHTCRural = WHTCRural,
+				WHTCMotorway = WHTCMotorway,
+				ConsumptionMap = ConsumptionMap,
+				FullLoadCurves = FullLoadCurves,
+				CorrectionFactorRegPer = CorrectionFactorRegPer,
+				CorrectionFactorNCV = CorrectionFactorNCV,
+				ColdHotCorrectionFactor = ColdHotCorrectionFactor,
+				FuelConsumptionCorrectionFactor = FuelConsumptionCorrectionFactor,
+				RatedPowerDeclared = RatedPowerDeclared,
+				RatedSpeedDeclared = RatedSpeedDeclared,
+				MaxTorqueDeclared = MaxTorqueDeclared,
+				FuelType = FuelType
+			};
+		}
+
+		// ReSharper disable once UnusedMember.Global -- used in CustomValidation
+		public static ValidationResult ValidateData(CombustionEngineData data, ValidationContext context)
+		{
+			if (data.Inertia.IsEqual(0)) {
+				LogManager.GetLogger(typeof(CombustionEngineData).FullName).Error("Warning: Engine Inertia is 0!");
+			}
+			return ValidationResult.Success;
+		}
+	}
+}
-- 
GitLab