From 779c4d33d7f05d9bf771c543d3cb31492a14a133 Mon Sep 17 00:00:00 2001 From: Markus Quaritsch <markus.quaritsch@tugraz.at> Date: Wed, 14 Apr 2021 11:34:12 +0200 Subject: [PATCH] fix more testcases --- .../IntegrationTests/AuxDemandTest.vb | 5 +++-- .../UnitTests/M0_5_SmartAlternatorSetEfficiencyTests.vb | 6 +++--- .../VectoCore/Models/Simulation/Data/VectoRunData.cs | 2 +- .../Models/SimulationComponent/Impl/ElectricMotor.cs | 2 +- .../Integration/Declaration/EngineInputDataTests.cs | 8 ++++---- .../Integration/SimulationRuns/MinimalPowertrain.cs | 7 ++++--- VectoCore/VectoCoreTest/Integration/VTP/VTPTest.cs | 8 ++++---- .../GenericVehicle/vtp_cycle_citybus_atser_2TC.vdri | 2 +- .../VTPMode/GenericVehicle_CNG/VTP_rural_2Hz.vdri | 2 +- 9 files changed, 22 insertions(+), 20 deletions(-) diff --git a/VECTOAux/VectoAuxiliariesTests/IntegrationTests/AuxDemandTest.vb b/VECTOAux/VectoAuxiliariesTests/IntegrationTests/AuxDemandTest.vb index 54f4fe5a77..6183be0eeb 100644 --- a/VECTOAux/VectoAuxiliariesTests/IntegrationTests/AuxDemandTest.vb +++ b/VECTOAux/VectoAuxiliariesTests/IntegrationTests/AuxDemandTest.vb @@ -4,6 +4,7 @@ Imports TUGraz.VectoCommon.Utils Imports TUGraz.VectoCore.InputData.FileIO.JSON Imports TUGraz.VectoCore.InputData.Reader.ComponentData Imports TUGraz.VectoCore.Models.BusAuxiliaries +Imports TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl.Electrics Imports TUGraz.VectoCore.Models.BusAuxiliaries.Interfaces Namespace IntegrationTests @@ -25,7 +26,7 @@ Namespace IntegrationTests Dim engineFCMapFilePath = "TestFiles\Integration\24t Coach.vmap" Dim auxFilePath = "TestFiles\Integration\AdvAuxTest.aaux" - Dim aux As BusAuxiliaries = New BusAuxiliaries(Nothing) + Dim aux As BusAuxiliaries = New BusAuxiliaries(new NoBattery(Nothing)) 'aux.VectoInputs.Cycle = "Coach" 'aux.VectoInputs.VehicleWeightKG = vehicleWeight.SI(Of Kilogram)() @@ -75,7 +76,7 @@ Namespace IntegrationTests Dim engineFCMapFilePath = "TestFiles\Integration\24t Coach.vmap" Dim auxFilePath = "TestFiles\Integration\AdvAuxTest.aaux" - Dim aux As BusAuxiliaries = New BusAuxiliaries(Nothing) + Dim aux As BusAuxiliaries = New BusAuxiliaries(New NoBattery(Nothing)) 'aux.VectoInputs.Cycle = "Coach" 'aux.VectoInputs.VehicleWeightKG = 12000.SI(Of Kilogram)() diff --git a/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_5_SmartAlternatorSetEfficiencyTests.vb b/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_5_SmartAlternatorSetEfficiencyTests.vb index ea08f8850b..738ccbab2a 100644 --- a/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_5_SmartAlternatorSetEfficiencyTests.vb +++ b/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_5_SmartAlternatorSetEfficiencyTests.vb @@ -107,7 +107,7 @@ Namespace UnitTests Public Sub AlternatorsEfficiencyIdle2000rpmTest() Initialise() - Dim expected As Double = 0.6308339 + Dim expected As Double = 0.62 '0.6308339 Dim actual As Double = target.AlternatorsEfficiencyIdleResultCard() Assert.AreEqual(expected, actual, 0.000001) @@ -118,7 +118,7 @@ Namespace UnitTests Public Sub AlternatorsEfficiencyTraction2000rpmTest() Initialise() - Dim expected As Double = 0.6308339 + Dim expected As Double = 0.62 '0.6308339 Dim actual As Double = target.AlternatorsEfficiencyTractionOnResultCard() Assert.AreEqual(expected, actual, 0.000001) @@ -129,7 +129,7 @@ Namespace UnitTests Public Sub AlternatorsEfficiencyOverrun2000rpmTest() Initialise() - Dim expected As Double = 0.6308339 + Dim expected As Double = 0.62 '0.6308339 Dim actual As Double = target.AlternatorsEfficiencyOverrunResultCard() Assert.AreEqual(expected, actual, 0.000001) diff --git a/VectoCore/VectoCore/Models/Simulation/Data/VectoRunData.cs b/VectoCore/VectoCore/Models/Simulation/Data/VectoRunData.cs index 943a50f305..ff0f22e2d9 100644 --- a/VectoCore/VectoCore/Models/Simulation/Data/VectoRunData.cs +++ b/VectoCore/VectoCore/Models/Simulation/Data/VectoRunData.cs @@ -220,7 +220,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Data } } - if (runData.EngineData.PTORoadSweepEngineSpeed != null) { + if ((jobType == VectoSimulationJobType.ConventionalVehicle || jobType == VectoSimulationJobType.ParallelHybridVehicle) && runData.EngineData.PTORoadSweepEngineSpeed != null) { if (runData.EngineData.IdleSpeed.IsGreater(runData.EngineData.PTORoadSweepEngineSpeed)) { return new ValidationResult("PTO Operating enginespeed is below engine idling speed"); } diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/ElectricMotor.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/ElectricMotor.cs index c865f6fe9d..86b6a39e38 100644 --- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/ElectricMotor.cs +++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/ElectricMotor.cs @@ -178,7 +178,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl if (Position == PowertrainPosition.HybridP2 && !DataBus.GearboxInfo.GearEngaged(absTime)) { // electric motor is between gearbox and clutch, but no gear is engaged... if (emTorque != null) { - if (!DataBus.HybridControllerInfo.GearboxEngaged) { + if (!DataBus.HybridControllerInfo.GearboxEngaged || (DataBus.HybridControllerInfo.GearboxEngaged && !DataBus.GearboxInfo.GearEngaged(absTime))) { return new ResponseInvalidOperatingPoint(this) { ElectricMotor = { MaxDriveTorque = maxDriveTorqueDt, diff --git a/VectoCore/VectoCoreTest/Integration/Declaration/EngineInputDataTests.cs b/VectoCore/VectoCoreTest/Integration/Declaration/EngineInputDataTests.cs index 4a297c192c..7ce45ca1af 100644 --- a/VectoCore/VectoCoreTest/Integration/Declaration/EngineInputDataTests.cs +++ b/VectoCore/VectoCoreTest/Integration/Declaration/EngineInputDataTests.cs @@ -62,10 +62,10 @@ namespace TUGraz.VectoCore.Tests.Integration.Declaration xmlInputReader = _kernel.Get<IXMLInputDataReader>(); } - [TestCase(null, 1.0, 45.557155, TestName = "Engine CF - NONE"), - TestCase("CFRegPer", 1.2, 45.557155 * 1.2, TestName = "Engine CF - CFRegPer"), - TestCase("BFColdHot", 1.2, 45.557155 * 1.2, TestName = "Engine CF - BFColdHod"), - TestCase("CFNCV", 1.2, 45.557155, TestName = "Engine CF - CFNCV") // has no influence - only for documentation purpose + [TestCase(null, 1.0, 45.555177, TestName = "Engine CF - NONE"), + TestCase("CFRegPer", 1.2, 45.555177 * 1.2, TestName = "Engine CF - CFRegPer"), + TestCase("BFColdHot", 1.2, 45.555177 * 1.2, TestName = "Engine CF - BFColdHod"), + TestCase("CFNCV", 1.2, 45.555177, TestName = "Engine CF - CFNCV") // has no influence - only for documentation purpose ] public void TestEngineCorrectionFactors(string correctionFactor, double value, double expectedFc) { diff --git a/VectoCore/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs b/VectoCore/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs index 2a8e378461..106437d8e2 100644 --- a/VectoCore/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs +++ b/VectoCore/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs @@ -88,11 +88,12 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns var fileWriter = new FileOutputWriter("Coach_MinimalPowertrainOverload"); var runData = new VectoRunData() { JobName = "Coach_MinimalPowertrainOverload" - }; + }; var modData = new ModalDataContainer(runData, fileWriter, null); var container = new VehicleContainer(ExecutionMode.Engineering, modData) { RunData = new VectoRunData() { VehicleData = vehicleData, + DriverData = driverData } }; @@ -154,7 +155,7 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns }; var modData = new ModalDataContainer(runData, fileWriter, null); - var container = new VehicleContainer(ExecutionMode.Engineering, modData) { + var container = new VehicleContainer(ExecutionMode.Engineering, modData) { RunData = runData }; @@ -239,7 +240,7 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns ElectricMachinesData = new List<Tuple<PowertrainPosition, ElectricMotorData>>() }; var modData = new ModalDataContainer(runData, fileWriter, null); - var container = new VehicleContainer(ExecutionMode.Engineering, modData) { + var container = new VehicleContainer(ExecutionMode.Engineering, modData) { RunData = runData }; diff --git a/VectoCore/VectoCoreTest/Integration/VTP/VTPTest.cs b/VectoCore/VectoCoreTest/Integration/VTP/VTPTest.cs index a14cef9c9a..2df34c4984 100644 --- a/VectoCore/VectoCoreTest/Integration/VTP/VTPTest.cs +++ b/VectoCore/VectoCoreTest/Integration/VTP/VTPTest.cs @@ -92,7 +92,7 @@ namespace TUGraz.VectoCore.Tests.Integration.VTP [Category("Integration")] [TestCase(@"TestData\Integration\VTPMode\GenericVehicle\class_5_generic vehicle_DECL.vecto", 45.6, 0.8972, TestName = "RunVTPHeavyLorry_Declaration"), TestCase(@"TestData\Integration\VTPMode\MediumLorry\VTP_MediumLorry.vecto", 400.0, 1.06, TestName = "RunVTPMediumLorry_Declaration"), - TestCase(@"TestData\Integration\VTPMode\DualFuelVehicle\VTP_DualFuel.vecto", 43.5, 1.018, TestName = "RunVTPDualFuel_Declaration"), + TestCase(@"TestData\Integration\VTPMode\DualFuelVehicle\VTP_DualFuel.vecto", 43.5, 1.0107, TestName = "RunVTPDualFuel_Declaration"), TestCase(@"TestData\Integration\VTPMode\HeavyBus\VTP_PrimaryBus.vecto", 14.2, 1.1413, TestName = "RunVTPHeavyPrimaryBus") ] public void RunVTP_Declaration(string jobFile, double expectedDeclaredCO2, double expectedCVTP) @@ -149,7 +149,7 @@ namespace TUGraz.VectoCore.Tests.Integration.VTP jobContainer.AddRuns(runsFactory); - Assert.AreEqual(2, jobContainer.Runs.Count); + Assert.AreEqual(1, jobContainer.Runs.Count); //var i = 0; //jobContainer.Runs[i].Run.Run(); //Assert.IsTrue(jobContainer.Runs[i].Run.FinishedWithoutErrors); @@ -160,9 +160,9 @@ namespace TUGraz.VectoCore.Tests.Integration.VTP Assert.AreEqual(true, jobContainer.AllCompleted); var vtpReport = XDocument.Load(XmlReader.Create(fileWriter.XMLVTPReportName)); - var vtpFactor = vtpReport.XPathSelectElement("//*[local-name() = 'Results']/*[local-name() = 'VTRatio']")?.Value.ToDouble(0); + var vtpFactor = vtpReport.XPathSelectElement("//*[local-name() = 'Results']/*[local-name() = 'C_VTP']")?.Value.ToDouble(0); - Assert.AreEqual(0.8972, vtpFactor); + Assert.AreEqual(0.9549, vtpFactor); } diff --git a/VectoCore/VectoCoreTest/TestData/Integration/VTPMode/GenericVehicle/vtp_cycle_citybus_atser_2TC.vdri b/VectoCore/VectoCoreTest/TestData/Integration/VTPMode/GenericVehicle/vtp_cycle_citybus_atser_2TC.vdri index 8e32c61489..ce7bd8aa33 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/VTPMode/GenericVehicle/vtp_cycle_citybus_atser_2TC.vdri +++ b/VectoCore/VectoCoreTest/TestData/Integration/VTPMode/GenericVehicle/vtp_cycle_citybus_atser_2TC.vdri @@ -1,4 +1,4 @@ -t , v , gear , tc_active , n_eng , n_fan , fc , n_wh_left , n_wh_right , tq_left , tq_right +t , v , gear , tc_active , n_eng , n_fan , fc_Diesel CI, n_wh_left , n_wh_right , tq_left , tq_right 0.25 , 0 , 0 , 1 , 600 , 1000 , 1278.2425 , 0 , 0 , 0 , 0 1 , 0 , 0 , 1 , 600 , 1000 , 1278.2425 , 0 , 0 , 0 , 0 1.75 , 0 , 0 , 1 , 600 , 1000 , 1278.2425 , 0 , 0 , 0 , 0 diff --git a/VectoCore/VectoCoreTest/TestData/Integration/VTPMode/GenericVehicle_CNG/VTP_rural_2Hz.vdri b/VectoCore/VectoCoreTest/TestData/Integration/VTPMode/GenericVehicle_CNG/VTP_rural_2Hz.vdri index b2c145bda5..d4069d76d6 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/VTPMode/GenericVehicle_CNG/VTP_rural_2Hz.vdri +++ b/VectoCore/VectoCoreTest/TestData/Integration/VTPMode/GenericVehicle_CNG/VTP_rural_2Hz.vdri @@ -1,4 +1,4 @@ -<t> [s],<v> [km/h],<n_eng> [rpm],<n_fan> [rpm],<tq_left> [Nm],<tq_right> [Nm],<n_wh_left> [rpm],<n_wh_right> [rpm],<fc> [g/h],<gear> +<t> [s],<v> [km/h],<n_eng> [rpm],<n_fan> [rpm],<tq_left> [Nm],<tq_right> [Nm],<n_wh_left> [rpm],<n_wh_right> [rpm],<fc_NG PI> [g/h],<gear> 0,0,599.72,727.3,319.1147826,429.8065217,0.78,0.78,836,3 0.5,0,600.29,727.3,316.7856522,430.0626087,0.7832,0.78,836,3 1,0,600.1,726.912,319.9513043,430.8052174,0.78,0.78,836,3 -- GitLab