From 99f726f523ba3b543fc71787b2c504ed39c5b158 Mon Sep 17 00:00:00 2001
From: Markus Quaritsch <quaritsch@ivt.tugraz.at>
Date: Fri, 3 Mar 2023 08:37:33 +0100
Subject: [PATCH] update expected values in testcase, jsonfilewriter: write
 steered property for axles update expected vsum file for engine-only
 simulation

---
 .../OutputData/FileIO/JSONFileWriter.cs       |  3 +-
 .../BusAuxiliaries/AuxDemandTest.cs           |  6 +-
 .../Declaration/NaturalGasVehicles.cs         |  2 +-
 .../Models/Simulation/AuxTests.cs             | 56 ++++++++++++-------
 .../AuxWriteModFileSumFile.vsum               |  8 +--
 5 files changed, 47 insertions(+), 28 deletions(-)

diff --git a/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs b/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs
index 146447989e..3388740f18 100644
--- a/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs
+++ b/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs
@@ -481,7 +481,8 @@ public class JSONFileWriter : IOutputFileWriter
 							{ "TwinTyres", axle.TwinTyres },
 							{ "RRCISO", axle.Tyre.RollResistanceCoefficient },
 							{ "FzISO", axle.Tyre.TyreTestLoad.Value() },
-							{ "Type", axle.AxleType.ToString() }
+							{ "Type", axle.AxleType.ToString() },
+							{ "Steered", axle.Steered }
 						}
 					}
 				}
diff --git a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/AuxDemandTest.cs b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/AuxDemandTest.cs
index 3aa8a6a422..1286a51e01 100644
--- a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/AuxDemandTest.cs
+++ b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/AuxDemandTest.cs
@@ -93,7 +93,7 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries
 
 			for (int i = 0; i < 10; i++) {
 				var torque = busAux.TorqueDemand(0.SI<Second>(), 1.SI<Second>(), engineDrivelinePower / engineSpeed, engineSpeed);
-				Assert.AreEqual(6087.03221, (torque * engineSpeed).Value(), 1e-3);
+				Assert.AreEqual(5649.81493, (torque * engineSpeed).Value(), 1e-3);
 				busAux.DoWriteModalResultsICE(0.SI<Second>(), 1.SI<Second>(), modalData);
 				busAux.DoCommitSimulationStep();
 			}
@@ -104,7 +104,7 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries
 
 			for (int i = 0; i < 10; i++) {
 				var torque = busAux.TorqueDemand(0.SI<Second>(), 1.SI<Second>(), engineDrivelinePower / engineSpeed, engineSpeed);
-				Assert.AreEqual(8954.1429, (torque * engineSpeed).Value(), 1e-3);
+				Assert.AreEqual(8516.92571, (torque * engineSpeed).Value(), 1e-3);
 				busAux.DoWriteModalResultsICE(0.SI<Second>(), 1.SI<Second>(), modalData);
 				busAux.DoCommitSimulationStep();
 			}
@@ -115,7 +115,7 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries
 
 			for (int i = 0; i < 10; i++) {
 				var torque = busAux.TorqueDemand(0.SI<Second>(), 1.SI<Second>(), engineDrivelinePower / engineSpeed, engineSpeed);
-				Assert.AreEqual(6087.03221, (torque * engineSpeed).Value(), 1e-3);
+				Assert.AreEqual(5649.81493, (torque * engineSpeed).Value(), 1e-3);
 				busAux.DoWriteModalResultsICE(0.SI<Second>(), 1.SI<Second>(), modalData);
 				busAux.DoCommitSimulationStep();
 			}
diff --git a/VectoCore/VectoCoreTest/Integration/Declaration/NaturalGasVehicles.cs b/VectoCore/VectoCoreTest/Integration/Declaration/NaturalGasVehicles.cs
index aea7d11f51..4ca7a57dc6 100644
--- a/VectoCore/VectoCoreTest/Integration/Declaration/NaturalGasVehicles.cs
+++ b/VectoCore/VectoCoreTest/Integration/Declaration/NaturalGasVehicles.cs
@@ -76,7 +76,7 @@ namespace TUGraz.VectoCore.Tests.Integration.Declaration
 		 TestCase(Class5NG, 2, TankSystem.Liquefied, 249.8, 691.93, TestName = "Class5 LNG 2"),
 		 TestCase(Class5NG, 2, TankSystem.Compressed, 255.5, 687.35, TestName = "Class5 CNG 2"),
 		TestCase(Class5NG, 6, TankSystem.Liquefied, 253.2, 701.46, TestName = "Class5 LNG 6"),
-		TestCase(Class5NG, 6, TankSystem.Compressed, 259.0, 696.81, TestName = "Class5 CNG 6"),
+		TestCase(Class5NG, 6, TankSystem.Compressed, 259.1, 696.9, TestName = "Class5 CNG 6"),
 			]
 		public void NaturalGasTankSystemTest(string filename, int runIdx, TankSystem tankSystem, double expectedFc, double expectedCo2)
 		{
diff --git a/VectoCore/VectoCoreTest/Models/Simulation/AuxTests.cs b/VectoCore/VectoCoreTest/Models/Simulation/AuxTests.cs
index d09beccc80..a23b03bdf7 100644
--- a/VectoCore/VectoCoreTest/Models/Simulation/AuxTests.cs
+++ b/VectoCore/VectoCoreTest/Models/Simulation/AuxTests.cs
@@ -51,6 +51,7 @@ using TUGraz.VectoCore.Tests.Models.SimulationComponent;
 using TUGraz.VectoCore.Tests.Utils;
 using NUnit.Framework;
 using TUGraz.VectoCommon.InputData;
+using TUGraz.VectoCore.Configuration;
 using TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory;
 using TUGraz.VectoCore.Models.SimulationComponent.Data.Engine;
 
@@ -72,8 +73,10 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 
 		[TestCase]
 		public void AuxWriteModFileSumFile()
-
 		{
+			var hdvClass = VehicleClass.Class5;
+			var mission = MissionType.LongHaul;
+
 			var fileWriter = new FileOutputWriter("AuxWriteModFileSumFile");
 			var runData = new VectoRunData() {
 				JobName = "AuxWriteModFileSumFile",
@@ -94,18 +97,41 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				},
 				DriverData = new DriverData() {
 					EngineStopStart = new DriverData.EngineStopStartData(),
+				},
+				Aux = new List<VectoRunData.AuxData>() {
+					new() {
+						ID = Constants.Auxiliaries.IDs.Fan,
+						Technology = new[] {"Hydraulic driven - Constant displacement pump"}.ToList(),
+						PowerDemandMech = DeclarationData.Fan.LookupPowerDemand(hdvClass,MissionType.LongHaul, "Hydraulic driven - Constant displacement pump")
+					},
+					new() {
+						ID= Constants.Auxiliaries.IDs.PneumaticSystem,
+						Technology = new[] {"Medium Supply 1-stage"}.ToList(),
+						PowerDemandMech = DeclarationData.PneumaticSystem.Lookup(mission, "Medium Supply 1-stage").PowerDemand
+					},
+					new() {
+						ID = Constants.Auxiliaries.IDs.SteeringPump,
+						Technology = new[] {"Variable displacement mech. controlled"}.ToList(),
+						PowerDemandMech = DeclarationData.SteeringPump.Lookup(MissionType.LongHaul, hdvClass,
+							new[] { "Variable displacement mech. controlled" }).mechanicalPumps
+					},
+					new() {
+						ID = Constants.Auxiliaries.IDs.ElectricSystem,
+						Technology = new[] {"Hydraulic driven - Constant displacement pump"}.ToList(),
+						PowerDemandMech = DeclarationData.ElectricSystem.Lookup(hdvClass, mission).PowerDemand
+					},
+					new() {
+						ID = Constants.Auxiliaries.IDs.HeatingVentilationAirCondition,
+						Technology = new[] {"Default"}.ToList(),
+						PowerDemandMech = DeclarationData.HeatingVentilationAirConditioning.Lookup(mission, "Default", hdvClass).PowerDemand
+					},
 				}
         };
 			var modData = new ModalDataContainer(runData, fileWriter, null) {
 				WriteModalResults = true,
 			};
 			modData.Data.CreateColumns(ModalResults.DistanceCycleSignals);
-			modData.AddAuxiliary("FAN");
-			modData.AddAuxiliary("PS");
-			modData.AddAuxiliary("STP");
-			modData.AddAuxiliary("ES");
-			modData.AddAuxiliary("AC");
-			//modData.Data.CreateColumns(ModalResults.DriverSignals);
+			
 			modData.Data.CreateCombustionEngineColumns(runData);
 
 			var sumWriter = new SummaryDataContainer(fileWriter);
@@ -119,18 +145,10 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			var aux = new EngineAuxiliary(container);
 			new MockEngine(container);
 
-			var hdvClass = VehicleClass.Class5;
-			var mission = MissionType.LongHaul;
-
-			aux.AddConstant("FAN",
-				DeclarationData.Fan.LookupPowerDemand(hdvClass,MissionType.LongHaul, "Hydraulic driven - Constant displacement pump"));
-			aux.AddConstant("PS", DeclarationData.PneumaticSystem.Lookup(mission, "Medium Supply 1-stage").PowerDemand);
-			aux.AddConstant("STP",
-				DeclarationData.SteeringPump.Lookup(MissionType.LongHaul, hdvClass,
-					new[] { "Variable displacement mech. controlled" }).mechanicalPumps);
-			aux.AddConstant("ES", DeclarationData.ElectricSystem.Lookup(hdvClass, mission).PowerDemand);
-			aux.AddConstant("AC",
-				DeclarationData.HeatingVentilationAirConditioning.Lookup(mission, "Default", hdvClass).PowerDemand);
+			foreach (var auxData in runData.Aux) {
+				modData.AddAuxiliary(auxData.ID);
+				aux.AddConstant(auxData.ID, auxData.PowerDemandMech);
+			}
 
 			var speed = 1400.RPMtoRad();
 			var torque = 500.SI<NewtonMeter>();
diff --git a/VectoCore/VectoCoreTest/TestData/Results/EngineOnlyCycles/AuxWriteModFileSumFile.vsum b/VectoCore/VectoCoreTest/TestData/Results/EngineOnlyCycles/AuxWriteModFileSumFile.vsum
index 72e3bc31f5..fec8ecfa08 100644
--- a/VectoCore/VectoCoreTest/TestData/Results/EngineOnlyCycles/AuxWriteModFileSumFile.vsum
+++ b/VectoCore/VectoCoreTest/TestData/Results/EngineOnlyCycles/AuxWriteModFileSumFile.vsum
@@ -1,4 +1,4 @@
-# VECTO-DEV 0.7.9.2807-DEV - 08.09.2022 13:32
-Job [-],Input File [-],Cycle [-],Status,Vehicle manufacturer [-],VIN number,Vehicle model [-],HDV CO2 vehicle class [-],Corrected Actual Curb Mass [kg],Loading [kg],Engine manufacturer [-],Engine model [-],Engine fuel type [-],Engine rated power [kW],Engine idling speed [rpm],Engine rated speed [rpm],Engine displacement [ccm],Engine WHTCUrban,Engine WHTCRural,Engine WHTCMotorway,Engine BFColdHot,Engine CFRegPer,Engine actual CF,Vehicle fuel type [-],AirDrag model [-],Declared CdxA [m²],CdxA [m²],Sleeper cab [-],Declared RRC axle 1 [-],Declared FzISO axle 1 [N],Declared RRC axle 2 [-],Declared FzISO axle 2 [N],Declared RRC axle 3 [-],Declared FzISO axle 3 [N],Declared RRC axle 4 [-],Declared FzISO axle 4 [N],total RRC [-],weighted RRC w/o trailer [-],r_dyn [m],Number axles vehicle driven [-],Number axles vehicle non-driven [-],Number axles trailer [-],Gearbox manufacturer [-],Gearbox model [-],Gearbox type [-],Gear ratio first gear [-],Gear ratio last gear [-],Torque converter manufacturer [-],Torque converter model [-],Retarder manufacturer [-],Retarder model [-],Retarder type [-],Angledrive manufacturer [-],Angledrive model [-],Angledrive ratio [-],Axle manufacturer [-],Axle model [-],Axle gear ratio [-],Auxiliary technology STP [-],Auxiliary technology FAN [-],Auxiliary technology AC [-],Auxiliary technology PS [-],Auxiliary technology ES [-],ShiftStrategy,ADAS technology combination [-],PTOShaftsGearWheels,REESS Capacity,Cargo Volume [m³],time [s],distance [km],speed [km/h],altitudeDelta [m],k_engline [g/kWh],k_vehline [g/kWh],Specific FC [g/kWh] wheel pos.,FC-Final [l/100Pkm],FC-Final [l/100m³km],FC-Final [l/100tkm],FC-Final [l/100km],FC-Final [g/km],FC-Final [g/h],FC-BusAux_AuxHeater_Corr [g/km],FC-BusAux_AuxHeater_Corr [g/h],FC-BusAux_AuxHeater [g/km],FC-BusAux_AuxHeater [g/h],FC-SoC_Corr [g/km],FC-SoC_Corr [g/h],FC-SoC [g/km],FC-SoC [g/h],FC-WHR_Corr [g/km],FC-WHR_Corr [g/h],FC-BusAux_ES_Corr [g/km],FC-BusAux_ES_Corr [g/h],FC-BusAux_PS_Corr [g/km],FC-BusAux_PS_Corr [g/h],FC-ESS_Corr [g/km],FC-ESS_Corr [g/h],FC-ESS [g/km],FC-ESS [g/h],FC-WHTCc [g/km],FC-WHTCc [g/h],FC-NCVc [g/km],FC-NCVc [g/h],FC-Map [g/km],FC-Map [g/h],CO2 [g/km],CO2 [g/tkm],CO2 [g/m³km],CO2 [g/Pkm],E_aux_AC [kWh],E_aux_ES [kWh],E_aux_FAN [kWh],E_aux_PS [kWh],E_aux_STP [kWh],E_aux_sum [kWh],a [m/s^2],a_pos [m/s^2],a_neg [m/s^2],AccelerationTimeShare [%],DecelerationTimeShare [%],CruiseTimeShare [%],StopTimeShare [%],CoastingTimeShare [%],BrakingTimeShare [%],a_avg_acc,Engine certification number,Torque converter certification option,TorqueConverter certification number,Gearbox certification option,Gearbox certification number,Retarder certification option,Retarder certification number,Angledrive certification option,Angledrive certification number,Axlegear certification method,Axlegear certification number,AirDrag certification number,AirDrag certification option
-0-0,AuxWriteModFileSumFile,MockCycle.vdri,Pending,N/A,N/A,N/A,-,,,N/A,N/A,Diesel CI,300.0000,600.0000,2000.0000,7000.0000,1,1,1,0,1,1,Diesel CI,N/A,,,-,NaN,,NaN,,NaN,,NaN,,,,,,,,N/A,N/A,N/A,0.0000,0.0000,N/A,N/A,N/A,N/A,None,N/A,N/A,,N/A,N/A,,,,,,,,,,,,11.0000,0.0000,0.0000,0.0000,0.0000,,,,,,,,767.0000,,767.0000,,0.0000,,767.0000,,0.0000,,767.0000,,767.0000,,767.0000,,767.0000,,767.0000,,0.0000,,0.0000,,0.0000,0.0000,,,,0.0011,0.0052,0.0037,0.0049,0.0017,0.0165,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,100.0000,0.0000,0.0000,0.0000,N/A,,,,,,,,,N/A,,,N/A
-#@ SHA256: /20h6/xoPNUmAKa9osQ84AUduLJDbh5/bjK8BCWaB14=
+# VECTO-DEV 0.7.9.2978-DEV - 27.02.2023 12:10
+Job [-],Input File [-],Cycle [-],Status,Vehicle manufacturer [-],VIN number,Vehicle model [-],HDV CO2 vehicle class [-],Corrected Actual Curb Mass [kg],Loading [kg],Engine manufacturer [-],Engine model [-],Engine fuel type [-],Engine rated power [kW],Engine idling speed [rpm],Engine rated speed [rpm],Engine displacement [ccm],Engine WHTCUrban,Engine WHTCRural,Engine WHTCMotorway,Engine BFColdHot,Engine CFRegPer,Engine actual CF,Vehicle fuel type [-],AirDrag model [-],Declared CdxA [m²],CdxA [m²],Sleeper cab [-],Declared RRC axle 1 [-],Declared FzISO axle 1 [N],Declared RRC axle 2 [-],Declared FzISO axle 2 [N],Declared RRC axle 3 [-],Declared FzISO axle 3 [N],Declared RRC axle 4 [-],Declared FzISO axle 4 [N],total RRC [-],weighted RRC w/o trailer [-],r_dyn [m],Number axles vehicle driven [-],Number axles vehicle non-driven [-],Number axles trailer [-],Gearbox manufacturer [-],Gearbox model [-],Gearbox type [-],Gear ratio first gear [-],Gear ratio last gear [-],Torque converter manufacturer [-],Torque converter model [-],Retarder manufacturer [-],Retarder model [-],Retarder type [-],Angledrive manufacturer [-],Angledrive model [-],Angledrive ratio [-],Axle manufacturer [-],Axle model [-],Axle gear ratio [-],Auxiliary technology STP [-],Auxiliary technology FAN [-],Auxiliary technology AC [-],Auxiliary technology PS [-],Auxiliary technology ES [-],ShiftStrategy,ADAS technology combination [-],PTOShaftsGearWheels,REESS Capacity,Cargo Volume [m³],time [s],distance [km],speed [km/h],altitudeDelta [m],FC-Map [g/h],FC-Map [g/km],FC-NCVc [g/h],FC-NCVc [g/km],FC-WHTCc [g/h],FC-WHTCc [g/km],FC-ESS [g/h],FC-ESS [g/km],FC-ESS_Corr [g/h],FC-ESS_Corr [g/km],FC-BusAux_PS_Corr [g/h],FC-BusAux_PS_Corr [g/km],FC-BusAux_ES_Corr [g/h],FC-BusAux_ES_Corr [g/km],FC-WHR_Corr [g/h],FC-WHR_Corr [g/km],FC-SoC [g/h],FC-SoC [g/km],FC-SoC_Corr [g/h],FC-SoC_Corr [g/km],FC-BusAux_AuxHeater [g/h],FC-BusAux_AuxHeater [g/km],FC-BusAux_AuxHeater_Corr [g/h],FC-BusAux_AuxHeater_Corr [g/km],FC-Final [g/h],FC-Final [g/km],FC-Final [l/100km],FC-Final [l/100tkm],FC-Final [l/100m³km],FC-Final [l/100Pkm],Specific FC [g/kWh] wheel pos.,k_vehline [g/kWh],k_engline [g/kWh],E_aux_AC [kWh],E_aux_ES [kWh],E_aux_FAN [kWh],E_aux_PS [kWh],E_aux_STP [kWh],E_aux_sum [kWh],a [m/s^2],a_pos [m/s^2],a_neg [m/s^2],AccelerationTimeShare [%],DecelerationTimeShare [%],CruiseTimeShare [%],StopTimeShare [%],CoastingTimeShare [%],BrakingTimeShare [%],a_avg_acc,Engine certification number,Torque converter certification option,TorqueConverter certification number,Gearbox certification option,Gearbox certification number,Retarder certification option,Retarder certification number,Angledrive certification option,Angledrive certification number,Axlegear certification method,Axlegear certification number,AirDrag certification number,AirDrag certification option
+0-0,AuxWriteModFileSumFile,MockCycle.vdri,Pending,N/A,N/A,N/A,-,,,N/A,N/A,Diesel CI,300.0000,600.0000,2000.0000,7000.0000,1,1,1,0,1,1,Diesel CI,N/A,,,-,NaN,,NaN,,NaN,,NaN,,,,,,,,N/A,N/A,N/A,0.0000,0.0000,N/A,N/A,N/A,N/A,None,N/A,N/A,,N/A,N/A,,,,,,,,,,,,11.0000,0.0000,0.0000,0.0000,0.0000,,0.0000,,0.0000,,767.0000,,767.0000,,767.0000,,767.0000,,767.0000,,0.0000,,767.0000,,0.0000,,767.0000,,767.0000,,,,,,,,0.0000,0.0011,0.0052,0.0037,0.0049,0.0017,0.0165,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,100.0000,0.0000,0.0000,0.0000,N/A,,,,,,,,,N/A,,,N/A
+#@ SHA256: vDwIuaI6tHgv/rkoygdZFgPwZUcCHTswzH2+8fDoEHQ=
-- 
GitLab