diff --git a/VectoCore/VectoCore/OutputData/IModalDataContainer.cs b/VectoCore/VectoCore/OutputData/IModalDataContainer.cs index 72fb43af5e5ea928cc2e199dec6ccf21f0bdd3e1..e4ad65195294c848daab8668856b31327bffcbc5 100644 --- a/VectoCore/VectoCore/OutputData/IModalDataContainer.cs +++ b/VectoCore/VectoCore/OutputData/IModalDataContainer.cs @@ -765,5 +765,15 @@ namespace TUGraz.VectoCore.OutputData { return (data.GetValues<SI>(ModalResultField.REESSStateOfCharge).Last()?.Value() ?? 0) * 100; } + + public static double REESSMinSoc(this IModalDataContainer data) + { + return (data.GetValues<Scalar>(ModalResultField.REESSStateOfCharge).Min()?.Value() ?? 0) * 100; + } + + public static double REESSMaxSoc(this IModalDataContainer data) + { + return (data.GetValues<Scalar>(ModalResultField.REESSStateOfCharge).Max()?.Value() ?? 0) * 100; + } } } \ No newline at end of file diff --git a/VectoCore/VectoCore/OutputData/SumDataFields.cs b/VectoCore/VectoCore/OutputData/SumDataFields.cs index 8284ed6bff8c22dcec7fdbb07de70ba27c617ca8..13bd5fab6a2891a9983a78142ed593319f80c3e3 100644 --- a/VectoCore/VectoCore/OutputData/SumDataFields.cs +++ b/VectoCore/VectoCore/OutputData/SumDataFields.cs @@ -124,10 +124,10 @@ namespace TUGraz.VectoCore.OutputData public const string FCFINAL_LiterPer100M3KM = "FC-Final{0} [l/100m³km]"; public const string FCFINAL_LiterPer100PassengerKM = "FC-Final{0} [l/100Pkm]"; - public const string ElectricEnergyConsumption_total = "EC_el_final [kWh]"; - public const string ElectricEnergyConsumption_KM = "EC_el_final [kWh/km]"; - public const string ElectricEnergyConsumption_TKM = "EC_el_final [kWh/tkm]"; - public const string ElectricEnergyConsumption_M3KM = "EC_el_final [g/m³km]"; + public const string EC_el_final = "EC_el_final [kWh]"; + public const string EC_el_final_KM = "EC_el_final [kWh/km]"; + public const string EC_el_final_TKM = "EC_el_final [kWh/tkm]"; + public const string EC_el_final_M3KM = "EC_el_final [g/m³km]"; public const string ElectricEnergyConsumption_PKM = "EC_el_final [g/Pkm]"; public const string CO2_KM = "CO2 [g/km]"; @@ -285,6 +285,8 @@ namespace TUGraz.VectoCore.OutputData public const string REESS_CAPACITY = "REESS Capacity"; public const string REESS_StartSoC = "REESS Start SoC [%]"; public const string REESS_EndSoC = "REESS End SoC [%]"; + public const string REESS_MinSoC = "REESS Min SoC [%]"; + public const string REESS_MaxSoC = "REESS Max SoC [%]"; public const string REESS_DeltaEnergy = "ΔE_REESS [kWh]"; public const string E_REESS_LOSS = "E_REESS_loss [kWh]"; @@ -303,6 +305,8 @@ namespace TUGraz.VectoCore.OutputData public const string E_IEPC_LOSS_FORMAT = "E_{0}_loss [kWh]"; public const string E_IEPC_OFF_TIME_SHARE = "{0} off time share [%]"; + public const string f_equiv = "f_equiv"; + public delegate object WriteSumEntry(VectoRunData r, IModalDataContainer m); public delegate object WriteFuelEntry(VectoRunData r, IModalDataContainer m, IFuelProperties f); @@ -513,8 +517,13 @@ namespace TUGraz.VectoCore.OutputData { REESS_StartSoC, SumFunc((r, m) => r.BatteryData != null ? r.BatteryData.InitialSoC * 100 : r.SuperCapData != null ? r.SuperCapData.InitialSoC * 100 : double.NaN)}, { REESS_EndSoC, SumFunc((r, m) => m.REESSEndSoC(), ModalResultField.REESSStateOfCharge)}, + { REESS_MinSoC, SumFunc((r, m) => m.REESSMinSoc(), ModalResultField.REESSStateOfCharge)}, + { REESS_MaxSoC, SumFunc((r, m) => m.REESSMaxSoc(), ModalResultField.REESSStateOfCharge)}, { REESS_DeltaEnergy, SumFunc((r, m) => m.TimeIntegral<WattSecond>(ModalResultField.P_reess_int.GetName()).ConvertToKiloWattHour(), ModalResultField.P_reess_int)}, + //P-HEV + { f_equiv, SumFunc((r, m) => r.HybridStrategyParameters.EquivalenceFactor)}, + // performance entries { ACC, SumFunc((r, m) => (ConvertedSI)m.AccelerationAverage(), ModalResultField.acc)}, { ACC_POS, SumFunc((r, m) => (ConvertedSI)m.AccelerationsPositive(), ModalResultField.acc)}, @@ -614,16 +623,16 @@ namespace TUGraz.VectoCore.OutputData null : (m.CorrectedModalData.KilogramCO2PerMeter / r.VehicleData.PassengerCount.Value).ConvertToGrammPerKiloMeter(), ModalResultField.dist) }, // electric consumption - { ElectricEnergyConsumption_total, SumFunc( (r , m ) + { EC_el_final, SumFunc( (r , m ) => (m.CorrectedModalData.ElectricEnergyConsumption?.ConvertToKiloWattHour()))}, - { ElectricEnergyConsumption_KM, SumFunc((r, m) + { EC_el_final_KM, SumFunc((r, m) => (m.CorrectedModalData.ElectricEnergyConsumptionPerMeter)?.ConvertToKiloWattHourPerKiloMeter())}, - { ElectricEnergyConsumption_TKM, SumFunc((r, m) + { EC_el_final_TKM, SumFunc((r, m) => r.VehicleData?.Loading == null || r.VehicleData.Loading.IsEqual(0) || m.CorrectedModalData.ElectricEnergyConsumption == null ? null : (m.CorrectedModalData.ElectricEnergyConsumptionPerMeter / r.VehicleData.Loading).ConvertToKiloWattHourPerTonKiloMeter())}, - { ElectricEnergyConsumption_M3KM, SumFunc((r, m) + { EC_el_final_M3KM, SumFunc((r, m) => r.VehicleData.CargoVolume == null || r.VehicleData.CargoVolume.IsEqual(0) || m.CorrectedModalData.ElectricEnergyConsumption == null @@ -704,6 +713,7 @@ namespace TUGraz.VectoCore.OutputData }; public static readonly WriteAuxEntry AuxDataValue = (r, m, a) => m.AuxiliaryWork(a).ConvertToKiloWattHour(); + } } \ No newline at end of file diff --git a/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs b/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs index ab9e25f8842046f383141bb874d65360a087e812..6e7833aec0a17e4fb1844001fd49d24e653d395e 100644 --- a/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs +++ b/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs @@ -66,22 +66,39 @@ namespace TUGraz.VectoCore.OutputData public class SummaryDataContainer : LoggingObject, ISumData, IDisposable { public static readonly string[] FcColumns = { - SumDataFields.FCMAP_H, SumDataFields.FCMAP_KM, - SumDataFields.FCNCVC_H, SumDataFields.FCNCVC_KM, - SumDataFields.FCWHTCC_H, SumDataFields.FCWHTCC_KM, - SumDataFields.FCESS_H, SumDataFields.FCESS_KM, - SumDataFields.FCESS_H_CORR, SumDataFields.FCESS_KM_CORR, - SumDataFields.FC_BusAux_PS_CORR_H, SumDataFields.FC_BusAux_PS_CORR_KM, - SumDataFields.FC_BusAux_ES_CORR_H, SumDataFields.FC_BusAux_ES_CORR_KM, - SumDataFields.FCWHR_H_CORR, SumDataFields.FCWHR_KM_CORR, - SumDataFields.FC_HEV_SOC_H, SumDataFields.FC_HEV_SOC_KM, - SumDataFields.FC_HEV_SOC_CORR_H, SumDataFields.FC_HEV_SOC_CORR_KM, - SumDataFields.FC_AUXHTR_H, SumDataFields.FC_AUXHTR_KM, - SumDataFields.FC_AUXHTR_H_CORR, SumDataFields.FC_AUXHTR_KM_CORR, - SumDataFields.FCFINAL_H, SumDataFields.FCFINAL_KM, SumDataFields.FCFINAL_LITERPER100KM, + SumDataFields.FCMAP_H, + SumDataFields.FCMAP_KM, + SumDataFields.FCNCVC_H, + SumDataFields.FCNCVC_KM, + SumDataFields.FCWHTCC_H, + SumDataFields.FCWHTCC_KM, + SumDataFields.FCESS_H, + SumDataFields.FCESS_KM, + SumDataFields.FCESS_H_CORR, + SumDataFields.FCESS_KM_CORR, + SumDataFields.FC_BusAux_PS_CORR_H, + SumDataFields.FC_BusAux_PS_CORR_KM, + SumDataFields.FC_BusAux_ES_CORR_H, + SumDataFields.FC_BusAux_ES_CORR_KM, + SumDataFields.FCWHR_H_CORR, + SumDataFields.FCWHR_KM_CORR, + SumDataFields.FC_HEV_SOC_H, + SumDataFields.FC_HEV_SOC_KM, + SumDataFields.FC_HEV_SOC_CORR_H, + SumDataFields.FC_HEV_SOC_CORR_KM, + SumDataFields.FC_AUXHTR_H, + SumDataFields.FC_AUXHTR_KM, + SumDataFields.FC_AUXHTR_H_CORR, + SumDataFields.FC_AUXHTR_KM_CORR, + SumDataFields.FCFINAL_H, + SumDataFields.FCFINAL_KM, + SumDataFields.FCFINAL_LITERPER100KM, SumDataFields.FCFINAL_LITERPER100TKM, - SumDataFields.FCFINAL_LiterPer100M3KM, SumDataFields.FCFINAL_LiterPer100PassengerKM, - SumDataFields.SPECIFIC_FC, SumDataFields.K_VEHLINE, SumDataFields.K_ENGLINE + SumDataFields.FCFINAL_LiterPer100M3KM, + SumDataFields.FCFINAL_LiterPer100PassengerKM, + SumDataFields.SPECIFIC_FC, + SumDataFields.K_VEHLINE, + SumDataFields.K_ENGLINE }; @@ -216,6 +233,9 @@ namespace TUGraz.VectoCore.OutputData Tuple.Create(SumDataFields.OVCHEVMode, typeof(string)) }; + public static readonly Tuple<string, Type>[] PHEVColumns = { + Tuple.Create(SumDataFields.f_equiv, typeof(double)) + }; public static readonly Tuple<string, Type>[] VehilceColumns = { Tuple.Create(SumDataFields.E_VEHICLE_INERTIA, typeof(ConvertedSI)), @@ -233,6 +253,8 @@ namespace TUGraz.VectoCore.OutputData Tuple.Create(SumDataFields.PassengerCount, typeof(double)), }; + + public static readonly Tuple<string, Type>[] ClutchColumns = { Tuple.Create(SumDataFields.E_CLUTCH_LOSS, typeof(ConvertedSI)), }; @@ -284,6 +306,9 @@ namespace TUGraz.VectoCore.OutputData Tuple.Create(SumDataFields.REESS_StartSoC, typeof(double)), Tuple.Create(SumDataFields.REESS_EndSoC, typeof(double)), Tuple.Create(SumDataFields.REESS_DeltaEnergy, typeof(ConvertedSI)), + Tuple.Create(SumDataFields.REESS_MinSoC, typeof(double)), + Tuple.Create(SumDataFields.REESS_MaxSoC, typeof(double)), + Tuple.Create(SumDataFields.E_REESS_LOSS, typeof(ConvertedSI)), Tuple.Create(SumDataFields.E_REESS_T_chg, typeof(ConvertedSI)), Tuple.Create(SumDataFields.E_REESS_T_dischg, typeof(ConvertedSI)), @@ -327,10 +352,10 @@ namespace TUGraz.VectoCore.OutputData }; public static readonly Tuple<string, Type>[] ElectricEnergyConsumption = { - Tuple.Create(SumDataFields.ElectricEnergyConsumption_total, typeof(ConvertedSI)), - Tuple.Create(SumDataFields.ElectricEnergyConsumption_KM, typeof(ConvertedSI)), - Tuple.Create(SumDataFields.ElectricEnergyConsumption_TKM, typeof(ConvertedSI)), - Tuple.Create(SumDataFields.ElectricEnergyConsumption_M3KM, typeof(ConvertedSI)), + Tuple.Create(SumDataFields.EC_el_final, typeof(ConvertedSI)), + Tuple.Create(SumDataFields.EC_el_final_KM, typeof(ConvertedSI)), + Tuple.Create(SumDataFields.EC_el_final_TKM, typeof(ConvertedSI)), + Tuple.Create(SumDataFields.EC_el_final_M3KM, typeof(ConvertedSI)), Tuple.Create(SumDataFields.ElectricEnergyConsumption_PKM, typeof(ConvertedSI)), }; @@ -368,9 +393,9 @@ namespace TUGraz.VectoCore.OutputData internal readonly DataTable Table; private readonly ISummaryWriter _sumWriter; - protected HashSet<string> FcCols = new HashSet<string>(); - protected HashSet<string> GearColumns = new HashSet<string>(); - protected HashSet<string> AuxColumns = new HashSet<string>(); + protected IList<string> FcCols = new List<string>(); + protected IList<string> GearColumns = new List<string>(); + protected IList<string> AuxColumns = new List<string>(); /// <summary> @@ -383,8 +408,8 @@ namespace TUGraz.VectoCore.OutputData Table = new DataTable(); //InitTableColumns(); CreateColumns(CommonColumns); - CreateColumns(CO2Columns); - CreateColumns(ElectricEnergyConsumption); + + } public void RegisterComponent(VectoSimulationComponent component, VectoRunData runData) @@ -393,6 +418,7 @@ namespace TUGraz.VectoCore.OutputData case ICombustionEngine _: CreateColumns(CombustionEngineColumns); UpdateTableColumns(runData.EngineData); + CreateColumns(CO2Columns); break; case BusAuxiliariesAdapter _: CreateColumns(BusAuxiliariesSignals); @@ -446,6 +472,11 @@ namespace TUGraz.VectoCore.OutputData CreateColumns(BusVehicleColumns); } + if (runData.JobType == VectoSimulationJobType.ParallelHybridVehicle || + runData.JobType == VectoSimulationJobType.IHPC) { + CreateColumns(PHEVColumns); + } + if (runData.OVCMode != VectoRunData.OvcHevMode.NotApplicable) { CreateColumns(OVCModeColumns); } @@ -457,9 +488,11 @@ namespace TUGraz.VectoCore.OutputData CreateElectricMotorColumns(c4, runData, ElectricMotorColumns); break; case IElectricEnergyStorage c5 when c5 is BatterySystem: + CreateColumns(ElectricEnergyConsumption.Where(x => runData.VehicleData.VehicleCategory.IsBus() || x.Item1 != SumDataFields.ElectricEnergyConsumption_PKM).ToArray()); CreateColumns(BatteryColumns); break; case IElectricEnergyStorage _: + CreateColumns(ElectricEnergyConsumption.Where(x => runData.VehicleData.VehicleCategory.IsBus() || x.Item1 != SumDataFields.ElectricEnergyConsumption_PKM).ToArray()); CreateColumns(BatteryColumns); break; case IElectricSystem _: @@ -500,10 +533,12 @@ namespace TUGraz.VectoCore.OutputData private void CreateGearTimeShareColumns(GearList gears) { + lock (Table) { - var gearColNames = gears - .Select(x => string.Format(SumDataFields.TIME_SHARE_PER_GEAR_FORMAT, x.Gear)) - .Concat(new[] { string.Format(SumDataFields.TIME_SHARE_PER_GEAR_FORMAT, 0) }).Distinct() + var gearNumbers = new uint[] { 0 }.Concat(gears.Select(x => x.Gear)).Distinct().OrderBy(x => x); + + var gearColNames = gearNumbers + .Select(x => string.Format(SumDataFields.TIME_SHARE_PER_GEAR_FORMAT, x)) .Where(x => !Table.Columns.Contains(x)).Select(x => new DataColumn(x, typeof(ConvertedSI))) .ToArray(); Table.Columns.AddRange(gearColNames); @@ -611,7 +646,7 @@ namespace TUGraz.VectoCore.OutputData SumDataFields.ALTITUDE_DELTA, }); - cols.AddRange(FcCols); + cols.AddRange(FcCols.Reverse()); cols.AddRange(new[] { SumDataFields.CO2_KM, @@ -628,12 +663,28 @@ namespace TUGraz.VectoCore.OutputData }); cols.AddRange(new [] { - SumDataFields.ElectricEnergyConsumption_total, - SumDataFields.ElectricEnergyConsumption_KM, - SumDataFields.ElectricEnergyConsumption_TKM, - SumDataFields.ElectricEnergyConsumption_M3KM, + SumDataFields.EC_el_final, + SumDataFields.EC_el_final_KM, + SumDataFields.EC_el_final_TKM, + SumDataFields.EC_el_final_M3KM, SumDataFields.ElectricEnergyConsumption_PKM, }); + cols.AddRange( new [] { + SumDataFields.f_equiv, + }); + + cols.AddRange(new[] { + SumDataFields.REESS_StartSoC, + SumDataFields.REESS_EndSoC, + SumDataFields.REESS_DeltaEnergy, + SumDataFields.REESS_MinSoC, + SumDataFields.REESS_MaxSoC, + SumDataFields.E_REESS_LOSS, + SumDataFields.E_REESS_T_chg, + SumDataFields.E_REESS_T_dischg, + SumDataFields.E_REESS_int_chg, + SumDataFields.E_REESS_int_dischg, + }); cols.AddRange(AuxColumns.OrderBy(x => x)); cols.AddRange(new[] { SumDataFields.E_AUX, @@ -708,19 +759,7 @@ namespace TUGraz.VectoCore.OutputData SumDataFields.AIRDRAG_CERTIFICATION_NUMBER, SumDataFields.AIRDRAG_CERTIFICATION_METHOD, }); - cols.AddRange(GearColumns.OrderBy(x => x)); - - cols.AddRange(new[] { - SumDataFields.REESS_StartSoC, - SumDataFields.REESS_EndSoC, - SumDataFields.REESS_DeltaEnergy, - SumDataFields.E_REESS_LOSS, - SumDataFields.E_REESS_T_chg, - SumDataFields.E_REESS_T_dischg, - SumDataFields.E_REESS_int_chg, - SumDataFields.E_REESS_int_dischg, - }); - + cols.AddRange(GearColumns); return cols.Where(x => Table.Columns.Contains(x)).ToArray(); } @@ -885,10 +924,12 @@ namespace TUGraz.VectoCore.OutputData Table.Columns.Add(col); col.SetOrdinal(Table.Columns.IndexOf(SumDataFields.ALTITUDE_DELTA) + 1); FcCols.Add(colName); + } } } } + } /// <summary> @@ -1052,15 +1093,15 @@ namespace TUGraz.VectoCore.OutputData // } else { // if (runData.ElectricMachinesData.Count > 0) { // //lock (Table) { - // // if (!Table.Columns.Contains(SumDataFields.ElectricEnergyConsumption_KM)) { + // // if (!Table.Columns.Contains(SumDataFields.EC_el_final_KM)) { // // lock (_tableLock) { - // // var col = Table.Columns.Add(SumDataFields.ElectricEnergyConsumption_KM, typeof(ConvertedSI)); + // // var col = Table.Columns.Add(SumDataFields.EC_el_final_KM, typeof(ConvertedSI)); // // col.SetOrdinal(Table.Columns[SumDataFields.CO2_KM].Ordinal); // // } // // } // //} - // //row[SumDataFields.ElectricEnergyConsumption_KM] = + // //row[SumDataFields.EC_el_final_KM] = // // (-modData.TimeIntegral<WattSecond>(ModalResultField.P_reess_int) / modData.Distance).Cast<JoulePerMeter>().ConvertToKiloWattHourPerKiloMeter(); // } // } diff --git a/VectoCore/VectoCoreTest/Integration/Declaration/HeavyLorry/LorrySimulation.cs b/VectoCore/VectoCoreTest/Integration/Declaration/HeavyLorry/LorrySimulation.cs index 3504c3de52ecbebb4557304ec41184ae7c002aa2..089db6b5ba7d532708623c34fa17f6a0b59d8fb0 100644 --- a/VectoCore/VectoCoreTest/Integration/Declaration/HeavyLorry/LorrySimulation.cs +++ b/VectoCore/VectoCoreTest/Integration/Declaration/HeavyLorry/LorrySimulation.cs @@ -6,6 +6,7 @@ using System; using System.Collections.Generic; using System.Collections.Immutable; using System.Data; +using System.Diagnostics; using System.IO; using System.Linq; using System.Reflection; @@ -67,6 +68,7 @@ public class LorrySimulation private const string Group5_PEV_E3 = @"HeavyLorry\PEV\Group5_ PEV_E3_ES_Standard.xml"; private const string Group2_HEV_IEPC_S_StdVal = @"HeavyLorry\S-HEV\Group2_HEV_IEPC_S_standard_values.xml"; + private const string ConventionalHeavyLorry = @"HeavyLorry\Conventional\Group5_Conv_ES_Standard.xml"; private StandardKernel _kernel; @@ -81,7 +83,7 @@ public class LorrySimulation } //Conventional - [TestCase(@"HeavyLorry\Conventional\Group5_Conv_ES_Standard.xml", TestName = "Stefan_Conv")] + [TestCase(ConventionalHeavyLorry, TestName = "Stefan_Conv")] //S-HEV [TestCase(Group5_HEV_S2_OVC)] [TestCase(@"HeavyLorry\S-HEV\Group2_HEV_S3_stefan.xml", TestName = "Stefan_S2")] @@ -149,6 +151,8 @@ public class LorrySimulation var mrfSchema = XMLValidator.GetXMLSchema(XmlDocumentType.ManufacturerReport); XDocument.Load(mrfPath).Validate(mrfSchema, (sender, args) => Assert.Fail(args.Message)); XDocument.Load(cifPath).Validate(cifSchema, (sender, args) => Assert.Fail(args.Message)); + + VSUM_order_test(fileWriter.SumFileName, jobContainer.Runs.First().Run.GetContainer().RunData); } private ISimulatorFactory GetSimulatorFactory(string filePath, out IDeclarationInputDataProvider dataProvider, @@ -177,22 +181,7 @@ public class LorrySimulation // .ToHashSet(); - var filePath = Path.Combine(BASE_DIR, jobFile); - SummaryDataContainer sumDataContainer; - var jobContainer = GetJobContainer(jobFile, null, out var fileWriter, out var runs, out sumDataContainer, false); - - var run = runs.First(); - jobContainer.AddRun(run); - - run.GetContainer().ModalData[ModalResultField.time] = 1.SI<Second>(); //fake duration for run - run.GetContainer().ModalData[ModalResultField.Gear] = 2; - run.GetContainer().ModalData.CommitSimulationStep(); - run.GetContainer().FinishSingleSimulationRun(null); - var modFileName = fileWriter.GetModDataFileName(run.RunName, run.CycleName, run.RunSuffix); - - var sumFileName = fileWriter.SumFileName; - Assert.IsTrue(File.Exists(modFileName)); - var mod = VectoCSVFile.Read(modFileName, false, true); + GetEmptySumAndModData(jobFile, out var sumDataContainer, out var run, out var modData, out var sumData); var columnsWithoutUnitHashSet = new HashSet<string>(); foreach (var col in columnsWithoutUnit) { @@ -204,7 +193,7 @@ public class LorrySimulation List<string> columnHeaders = new List<string>(); - foreach (DataColumn modColumn in mod.Columns) { + foreach (DataColumn modColumn in modData.Columns) { columnHeaders.Add(modColumn.Caption); } @@ -233,38 +222,214 @@ public class LorrySimulation } } - //[Test] - //public void HEVS4() - //{ - // var jobContainer = GetJobContainer(HeavylorryGroup2HevS4XML, 6, out var fileWriter, out var runs, out var sumDataContainer); - // //var simFactory = GetSimulatorFactory(Path.Combine(BASE_DIR, HeavylorryGroup2HevS4XML), out var dataProvider, - // // out var fileWriter, out var mockSumWriter); + private void GetEmptySumAndModData(string jobFile, out SummaryDataContainer sumDataContainer, out IVectoRun run, + out TableData modData, out TableData sumData) + { + var filePath = Path.Combine(BASE_DIR, jobFile); + sumDataContainer = null; + var jobContainer = GetJobContainer(jobFile, null, out var fileWriter, out var runs, out sumDataContainer, false); + //sumDataContainer.Finish(); + run = runs.First(); + jobContainer.AddRun(run); + + run.GetContainer().ModalData[ModalResultField.time] = 1.SI<Second>(); //fake duration for run + run.GetContainer().ModalData[ModalResultField.Gear] = 2; + run.GetContainer().ModalData.CommitSimulationStep(); + run.GetContainer().FinishSingleSimulationRun(null); + var modFileName = fileWriter.GetModDataFileName(run.RunName, run.CycleName, run.RunSuffix); + + var sumFileName = fileWriter.SumFileName; + Assert.IsTrue(File.Exists(modFileName)); + Assert.IsTrue(File.Exists(sumFileName)); + modData = VectoCSVFile.Read(modFileName, false, true); + sumData = VectoCSVFile.Read(sumFileName, false, true); + } + + - // foreach (var vectoRun in runs) { - // var rd = vectoRun.GetContainer().RunData; - // } - // var container = runs.First().GetContainer(); - // var runData = container.RunData; + public void VSUM_order_test(string fileName, VectoRunData runData) + { + List<string> GbxTimeShareFields() + { - // runs = runs.Where(run => { - // var rd = run.GetContainer().RunData; - // return rd.Mission.MissionType == MissionType.UrbanDelivery && rd.Loading == LoadingType.ReferenceLoad; - // }).ToList(); + var gbxTimeShareFields = new List<string> { }; + if (runData.GearboxData?.Gears != null && runData.GearboxData.Gears.Count > 0) { + for (var i = 0; i <= runData.GearboxData.Gears.Count; i++) + { + gbxTimeShareFields.Add(string.Format(SumDataFields.TIME_SHARE_PER_GEAR_FORMAT, i)); + } - // jobContainer.AddRun(runs.Single()); + } + return gbxTimeShareFields; + } - // Assert.AreEqual(1, jobContainer.Runs.Count); + #region local helper + void AssertColumnNotPresent(TableData tableData, List<string> notPresent) + { + foreach (var name in notPresent) { + Assert.IsFalse(tableData.Columns.Contains(name), name); + } + } - // var modData = ((ModalDataContainer)((VehicleContainer)runs.Single().GetContainer()).ModData).Data; - // jobContainer.Execute(false); - // WaitAndAssertSuccess(jobContainer, fileWriter); + void AssertOrder(TableData tableData, List<string> ordered) + { + + } + void SearchForPattern(TableData tableData, List<string> pattern) + { + if (pattern.Count == 0) { + return; + } + var comparePattern = false; + using (var enumerator = pattern.GetEnumerator()) { + enumerator.MoveNext(); + foreach (DataColumn column in tableData.Columns) + { + if (!comparePattern && column.ColumnName == enumerator.Current) + { + comparePattern = true; + } - // //Pneumatic system data test - // var ps = runData.Aux.Where(x => x.ID == Constants.Auxiliaries.IDs.PneumaticSystem).Single(); - // Assume.That(ps.IsFullyElectric); - // Assert.That(ps.ConnectToREESS); - //} + if (comparePattern) { + TestContext.Write(column.ColumnName + "|" + enumerator.Current); + if (column.ColumnName != enumerator.Current) { + TestContext.WriteLine("X"); + Assert.Fail($"expected {enumerator.Current} got {column.ColumnName}"); + } + TestContext.WriteLine("OK"); + if (!enumerator.MoveNext()) { + return; + } + } + } + Assert.Fail($"Reached end of table searching for {enumerator.Current}"); + } + + } +#endregion + + var sumData = VectoCSVFile.Read(fileName, false, true); + var fcFields = new List<string>() { + //FUEL + SumDataFields.FCMAP_H, + SumDataFields.FCMAP_KM, + SumDataFields.FCNCVC_H, + SumDataFields.FCNCVC_KM, + SumDataFields.FCWHTCC_H, + SumDataFields.FCWHTCC_KM, + SumDataFields.FCESS_H, + SumDataFields.FCESS_KM, + SumDataFields.FCESS_H_CORR, + SumDataFields.FCESS_KM_CORR, + SumDataFields.FC_BusAux_PS_CORR_H, + SumDataFields.FC_BusAux_PS_CORR_KM, + SumDataFields.FC_BusAux_ES_CORR_H, + SumDataFields.FC_BusAux_ES_CORR_KM, + SumDataFields.FCWHR_H_CORR, + SumDataFields.FCWHR_KM_CORR, + SumDataFields.FC_HEV_SOC_H, + SumDataFields.FC_HEV_SOC_KM, + SumDataFields.FC_HEV_SOC_CORR_H, + SumDataFields.FC_HEV_SOC_CORR_KM, + SumDataFields.FC_AUXHTR_H, + SumDataFields.FC_AUXHTR_KM, + SumDataFields.FC_AUXHTR_H_CORR, + SumDataFields.FC_AUXHTR_KM_CORR, + SumDataFields.FCFINAL_H, + SumDataFields.FCFINAL_KM, + SumDataFields.FCFINAL_LITERPER100KM, + SumDataFields.FCFINAL_LITERPER100TKM, + SumDataFields.FCFINAL_LiterPer100M3KM, + SumDataFields.FCFINAL_LiterPer100PassengerKM, + SumDataFields.SPECIFIC_FC, + SumDataFields.K_VEHLINE, + SumDataFields.K_ENGLINE, + + + }; + var CO2fields = new List<string> { + SumDataFields.CO2_KM, + SumDataFields.CO2_TKM, + SumDataFields.CO2_M3KM, + }; + var EC_el = new List<string> { + SumDataFields.EC_el_final, + SumDataFields.EC_el_final_KM, + SumDataFields.EC_el_final_TKM, + SumDataFields.EC_el_final_M3KM, + + + + }; + var p_hev_fields = new List<string> { + SumDataFields.f_equiv + }; + var REESS_fields = new List<string> { + SumDataFields.REESS_StartSoC, + SumDataFields.REESS_EndSoC, + SumDataFields.REESS_DeltaEnergy, + + SumDataFields.REESS_MinSoC, + SumDataFields.REESS_MaxSoC, + + SumDataFields.E_REESS_LOSS, + SumDataFields.E_REESS_T_chg, + SumDataFields.E_REESS_T_dischg, + SumDataFields.E_REESS_int_chg, + SumDataFields.E_REESS_int_dischg, + }; + if (runData.JobType == VectoSimulationJobType.ConventionalVehicle) { + var gbxTimeShareFields = GbxTimeShareFields(); + SearchForPattern(sumData, gbxTimeShareFields); + + if (runData.EngineData.Fuels.Count > 1) { + foreach (var fuel in runData.EngineData.Fuels.Select(f => f.FuelData.FuelType.GetLabel())) { + SearchForPattern(sumData, new List<string>(fcFields.Select(fc => string.Format(fc, fuel)).Concat(CO2fields))); + } + } else { + SearchForPattern(sumData, new List<string>(fcFields.Select(fc => string.Format(fc, "")).Concat(CO2fields))); + } + + } + + if (runData.JobType is VectoSimulationJobType.BatteryElectricVehicle or VectoSimulationJobType.IEPC_E) { + //PEV CHECKS + AssertColumnNotPresent(sumData, CO2fields); + AssertColumnNotPresent(sumData, fcFields); + + SearchForPattern(sumData, new List<string>(EC_el.Concat(REESS_fields))); + SearchForPattern(sumData, GbxTimeShareFields()); + } + + if (runData.JobType is VectoSimulationJobType.SerialHybridVehicle or VectoSimulationJobType.IEPC_S) { + if (runData.EngineData.Fuels.Count > 1) { + foreach (var fuel in runData.EngineData.Fuels.Select(f => f.FuelData.FuelType.GetLabel())) { + SearchForPattern(sumData, new List<string>(fcFields.Select(fc => string.Format(fc, fuel)).Concat(CO2fields))); + } + } else { + SearchForPattern(sumData, new List<string>(fcFields.Select(fc => string.Format(fc, "")).Concat(CO2fields))); + } + + SearchForPattern(sumData, new List<string>(EC_el.Concat(REESS_fields))); + SearchForPattern(sumData, GbxTimeShareFields()); + } + + + if (runData.JobType is VectoSimulationJobType.ParallelHybridVehicle or VectoSimulationJobType.IHPC) { + if (runData.EngineData.Fuels.Count > 1) { + foreach (var fuel in runData.EngineData.Fuels.Select(f => f.FuelData.FuelType.GetLabel())) { + SearchForPattern(sumData, new List<string>(fcFields.Select(fc => string.Format(fc, fuel)).Concat(CO2fields))); + } + } + else { + SearchForPattern(sumData, new List<string>(fcFields.Select(fc => string.Format(fc, "")).Concat(CO2fields))); + } + + SearchForPattern(sumData, new List<string>(EC_el.Concat(p_hev_fields).Concat(REESS_fields))); + SearchForPattern(sumData,GbxTimeShareFields()); + } + } [TestCase(@"HeavyLorry\S-HEV\Group2_HEV_S4_invalid_pto.xml")] @@ -334,9 +499,37 @@ public class LorrySimulation jobContainer.AddRun(runs.Single()); var modData = ((ModalDataContainer)((VehicleContainer)runs.Single().GetContainer()).ModData).Data; + jobContainer.Execute(false); WaitAndAssertSuccess(jobContainer, fileWriter); } + + [TestCase(Group5_HEV_P2_OVC)] + public void PHEV_CD_CS_weighted(string jobFile) + { + var jobContainer = GetJobContainer(jobFile, null, out var fileWriter, out var runs, out var sumDataContainer); + + Assert.AreEqual(0, runs.Count(r => r.GetContainer().RunData.OVCMode == VectoRunData.OvcHevMode.NotApplicable)); + + runs = runs.Where(run => { + var rd = run.GetContainer().RunData; + return (rd.OVCMode == VectoRunData.OvcHevMode.ChargeSustaining || rd.OVCMode == VectoRunData.OvcHevMode.ChargeDepleting) && + rd.Mission.MissionType == MissionType.RegionalDelivery && rd.Loading == LoadingType.ReferenceLoad; + }).ToList(); + + Assert.AreEqual(2, runs.Count); + + foreach (var run in runs) { + jobContainer.AddRun(run); + } + SetResultCountInReport(2, runs.First().GetContainer().RunData.Report); + + + jobContainer.Execute(false); + WaitAndAssertSuccess(jobContainer, fileWriter); + } + + [TestCase(Group5_HEV_P2_OVC, 20)] [TestCase(Group5_HEV_P3_OVC, 20)] [TestCase(Group5_HEV_P4_OVC, 20)] @@ -676,27 +869,51 @@ public class LorrySimulation jobContainer.AddRun(simulatedRun); - SetResultCountInReport(1, simulatedRun.GetContainer().RunData.Report); + if (writeReports) { + SetResultCountInReport(1, simulatedRun.GetContainer().RunData.Report); + } jobContainer.Execute(true); WaitAndAssertSuccess(jobContainer, fileWriter); } - public void SetResultCountInReport(int count, IDeclarationReport report) + private void SetResultCountInReport(int count, IDeclarationReport report) { if (report is XMLDeclarationReport09 rep09) { - FieldInfo[] fields = rep09.GetType().GetFields( - BindingFlags.NonPublic | - BindingFlags.Instance); - fields.First().SetValue(rep09, count); - + + GetField("_resultCount", rep09.GetType()).SetValue(rep09, count); return; } Assert.Fail("Reflection failed"); } + private FieldInfo GetField(string name, Type type) + { + bool found = false; + while (!found) { + FieldInfo[] fields = type.GetFields( + BindingFlags.NonPublic | + BindingFlags.Instance); + var field = fields.FirstOrDefault(f => f.Name == name); + if (field == null) { + type = type.BaseType; + if (type == null) { + Assert.Fail("Field not found"); + } + } else { + return field; + } + } + + return null; + + } + + + + public void DisableIterativeRuns(ISimulatorFactory factory) { factory.ModifyRunData = (rd) => rd.IterativeRunStrategy.Enabled = false; @@ -841,7 +1058,7 @@ public class LorrySimulation //runsFactory.ActualModalData = true; runsFactory.SerializeVectoRunData = true; runsFactory.WriteModalResults = true; - var sumWriter = new MockSumWriter(); + var sumWriter = new SummaryDataContainer(fileWriter); var jobContainer = new JobContainer(sumWriter); runsFactory.SumData = sumWriter; diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed+Axle/IEPCVehicle_Gbx1Axl.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed+Axle/IEPCVehicle_Gbx1Axl.vveh index 2af61a3c14f10fe065431bb7dd13abac57807b26..a7fdb607943047eeb38ad4ce96728c2697d574f8 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed+Axle/IEPCVehicle_Gbx1Axl.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed+Axle/IEPCVehicle_Gbx1Axl.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed+Axle/IEPC_ENG_Gbx1Axl.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed+Axle/IEPC__Gbx1Axl.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed+Axle/IEPC_ENG_Gbx1Axl.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed+Axle/IEPC__Gbx1Axl.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl1/IEPCVehicle_Gbx1Whl1.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl1/IEPCVehicle_Gbx1Whl1.vveh index 42ce674fd55ff861d184e10e148bf9214f1750bb..da4117187715a398b380173b30bac66b9e61297e 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl1/IEPCVehicle_Gbx1Whl1.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl1/IEPCVehicle_Gbx1Whl1.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl1/IEPC_ENG_Gbx1Whl1.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl1/IEPC__Gbx1Whl1.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl1/IEPC_ENG_Gbx1Whl1.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl1/IEPC__Gbx1Whl1.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl2/IEPCVehicle_Gbx1Whl2.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl2/IEPCVehicle_Gbx1Whl2.vveh index 549a74ffebee2f25c68ad0677bc880d7ffcbadaa..24dbd219f4c66856dcb8b75aba9fc114a3e642f0 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl2/IEPCVehicle_Gbx1Whl2.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl2/IEPCVehicle_Gbx1Whl2.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl2/IEPC_ENG_Gbx1Whl2.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl2/IEPC__Gbx1Whl2.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl2/IEPC_ENG_Gbx1Whl2.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed-Whl2/IEPC__Gbx1Whl2.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed/IEPCVehicle_Gbx1.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed/IEPCVehicle_Gbx1.vveh index ed5013cd4eb4cc052bd5c62b6b6168d4c12506bb..882d9334de59623a614bf84236648c537b87d312 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed/IEPCVehicle_Gbx1.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed/IEPCVehicle_Gbx1.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed/IEPC_ENG_Gbx1.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed/IEPC__Gbx1.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed/IEPC_ENG_Gbx1.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx1Speed/IEPC__Gbx1.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed+Axle/IEPCVehicle_Gbx3Axl.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed+Axle/IEPCVehicle_Gbx3Axl.vveh index 592bd8db316dc3c1996531a0ce4e030184e0ac52..b238d067f121858126cbd3ed75346eed2e24af0e 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed+Axle/IEPCVehicle_Gbx3Axl.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed+Axle/IEPCVehicle_Gbx3Axl.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed+Axle/IEPC_ENG_Gbx3Axl.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed+Axle/IEPC__Gbx3Axl.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed+Axle/IEPC_ENG_Gbx3Axl.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed+Axle/IEPC__Gbx3Axl.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl1/IEPCVehicle_Gbx3Whl1.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl1/IEPCVehicle_Gbx3Whl1.vveh index f9dfee2907ba728758b8317022b37feee6c15da7..ebb94f2ae20afe3db796d013ae5f5e3b1fb9b5ca 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl1/IEPCVehicle_Gbx3Whl1.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl1/IEPCVehicle_Gbx3Whl1.vveh @@ -47,7 +47,7 @@ "VehicleHeight": 3.0, "InitialSoC": 80.0, "PowertrainConfiguration": "IEPC_E", - "IEPC": "E:\\QUAM\\Workspace\\VECTO_DEV_Buses\\VectoCore\\VectoCoreTest\\TestData\\Integration\\DeclarationMode\\2nd_AmendmDeclMode\\JSON\\PEV\\GenericIEPC\\IEPC_Gbx3Speed-Whl1\\GenericIEPC_Gbx3Whl1.viepc", + "IEPC": "GenericIEPC_Gbx3Whl1.viepc", "Batteries": [ { "NumPacks": 1, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl1/IEPC_ENG_Gbx3Whl1.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl1/IEPC__Gbx3Whl1.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl1/IEPC_ENG_Gbx3Whl1.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl1/IEPC__Gbx3Whl1.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl2/IEPCVehicle_Gbx3Whl2.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl2/IEPCVehicle_Gbx3Whl2.vveh index 929b4da87b61d867413164e1d6725e8cb3c835f3..6f52df74feb9800461a9a3dd6f94b010da01c17a 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl2/IEPCVehicle_Gbx3Whl2.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl2/IEPCVehicle_Gbx3Whl2.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl2/IEPC_ENG_Gbx3Whl2.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl2/IEPC__Gbx3Whl2.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl2/IEPC_ENG_Gbx3Whl2.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed-Whl2/IEPC__Gbx3Whl2.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPCVehicle_Gbx3.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPCVehicle_Gbx3.vveh index 4391b39dcbe0534cd446656394f7a55cd877baf5..a110678068e32a792d8244c64db3b81870a98a55 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPCVehicle_Gbx3.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPCVehicle_Gbx3.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "M3", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 0.0, "MassMax": 11.99, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPCVehicle_Gbx3_drag.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPCVehicle_Gbx3_drag.vveh index 020bbe1b2de95ddfda6eb24a828ef54f7f6dfe8d..608b14a08dfab6e552a9b2d0c9c3aac08804d756 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPCVehicle_Gbx3_drag.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPCVehicle_Gbx3_drag.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPC_ENG_Gbx3.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPC__Gbx3.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPC_ENG_Gbx3.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPC__Gbx3.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPC_ENG_Gbx3_drag.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPC__Gbx3_drag.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPC_ENG_Gbx3_drag.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericIEPC/IEPC_Gbx3Speed/IEPC__Gbx3_drag.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV_ENG.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV_.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV_ENG.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV_.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV_ENG_3speed.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV__3speed.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV_ENG_3speed.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV__3speed.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV_ENG_3speed_PTO.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV__3speed_PTO.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV_ENG_3speed_PTO.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV__3speed_PTO.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV_ENG_BusAux.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV__BusAux.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV_ENG_BusAux.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV__BusAux.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV_ENG_Cont30kW.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV__Cont30kW.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV_ENG_Cont30kW.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BEV__Cont30kW.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BatteryElectricVehicle.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BatteryElectricVehicle.vveh index 0f3f581baedaf8cb741548f9ee39e9a31c45b3fa..1607a719e4ee15a71c99f8901c47d08d596b2637 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BatteryElectricVehicle.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BatteryElectricVehicle.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BatteryElectricVehicle_Cont30kW.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BatteryElectricVehicle_Cont30kW.vveh index 79302a46b1d556aba35e3533fa0d3bf0f018215d..b2712b0384e5ddfcf287c38842a778c175caf3cc 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BatteryElectricVehicle_Cont30kW.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BatteryElectricVehicle_Cont30kW.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BatteryElectricVehicle_PTO.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BatteryElectricVehicle_PTO.vveh index 53a7a966cf269a6d317cb44f374b5f528fcb78fd..4f717cc2dfacc5537ec25a1f82b07a2468cbaf5d 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BatteryElectricVehicle_PTO.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2/BatteryElectricVehicle_PTO.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2_APTN/BEV_B2_Group5_LH_rl.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2_APTN/BEV_B2_Group5_LH_rl.vveh index 994126be154747ec7dc9a762e9ce1bf457a4ec72..8212b9e8c90639c230acae44df726a473e83fa23 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2_APTN/BEV_B2_Group5_LH_rl.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2_APTN/BEV_B2_Group5_LH_rl.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "Tractor", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 10143.4, "CurbWeightExtra": 7500.0, "MassMax": 18.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2_AT/BEV_B2_Group5_LH_rl.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2_AT/BEV_B2_Group5_LH_rl.vveh index 994126be154747ec7dc9a762e9ce1bf457a4ec72..8212b9e8c90639c230acae44df726a473e83fa23 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2_AT/BEV_B2_Group5_LH_rl.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2_AT/BEV_B2_Group5_LH_rl.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "Tractor", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 10143.4, "CurbWeightExtra": 7500.0, "MassMax": 18.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2_AT/BEV_B2_Group5_LH_rl_APTP.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2_AT/BEV_B2_Group5_LH_rl_APTP.vveh index 641cf4a30cf7d28926cf9906142e9920995053de..6acf57eb439e94133f69e76c7cb49d1ef6502854 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2_AT/BEV_B2_Group5_LH_rl_APTP.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB2_AT/BEV_B2_Group5_LH_rl_APTP.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "Tractor", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 10143.4, "CurbWeightExtra": 7500.0, "MassMax": 18.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BEV_ENG.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BEV_.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BEV_ENG.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BEV_.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BEV_ENG_Cont30kW.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BEV__Cont30kW.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BEV_ENG_Cont30kW.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BEV__Cont30kW.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BatteryElectricVehicle.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BatteryElectricVehicle.vveh index d8a85ea4a40f2d24d6fd46edf0cdcb2415317225..e87705c16dd51846344e8c8e6033fa7a7b0ef30c 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BatteryElectricVehicle.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BatteryElectricVehicle.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BatteryElectricVehicle_Cont30kW.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BatteryElectricVehicle_Cont30kW.vveh index b6ac5d9b280227089e42a9c41870de06a4d36fe3..490f03869964d80cfbc6fdb87a256cb6a06aa1d0 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BatteryElectricVehicle_Cont30kW.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB3/BatteryElectricVehicle_Cont30kW.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BEV_ENG.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BEV_.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BEV_ENG.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BEV_.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BEV_ENG_Cont30kW.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BEV__Cont30kW.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BEV_ENG_Cont30kW.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BEV__Cont30kW.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BatteryElectricVehicle.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BatteryElectricVehicle.vveh index 72e8736b5ce53ca75c447ec027b00cb6fd95c127..bbf5322c9677e2c1a6bb4f073d7a193dab731b03 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BatteryElectricVehicle.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BatteryElectricVehicle.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BatteryElectricVehicle_Cont30kW.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BatteryElectricVehicle_Cont30kW.vveh index e11782135a58fc9c25b63a62a1815e9d78e2ff35..26a08321e4f54457ba16f442536e80457c184d4b 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BatteryElectricVehicle_Cont30kW.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleB4/BatteryElectricVehicle_Cont30kW.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle.vveh index 0f3f581baedaf8cb741548f9ee39e9a31c45b3fa..1607a719e4ee15a71c99f8901c47d08d596b2637 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle_Cont30kW.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle_Cont30kW.vveh index 79302a46b1d556aba35e3533fa0d3bf0f018215d..b2712b0384e5ddfcf287c38842a778c175caf3cc 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle_Cont30kW.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle_Cont30kW.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle_PTO.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle_PTO.vveh index 03972e7974c6fda184a393dfda830b487cd4e3df..6eb23870d6f32caa4e02bd59ab42051569210e21 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle_PTO.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle_PTO.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "MassMax": 11.99, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle_PTO_invalid.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle_PTO_invalid.vveh index e53235bb82cbb974b02cb68758fbed267483e2dd..ed4bf4082f5f083e2ff942ec906caf739c49b652 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle_PTO_invalid.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE2/BatteryElectricVehicle_PTO_invalid.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "MassMax": 11.99, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE4/BatteryElectricVehicle.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE4/BatteryElectricVehicle.vveh index 72e8736b5ce53ca75c447ec027b00cb6fd95c127..bbf5322c9677e2c1a6bb4f073d7a193dab731b03 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE4/BatteryElectricVehicle.vveh +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/PEV/GenericVehicleE4/BatteryElectricVehicle.vveh @@ -8,7 +8,7 @@ "Body": { "SavedInDeclMode": true, "VehCat": "RigidTruck", - "LegislativeClass": "Unknown", + "LegislativeClass": "N3", "CurbWeight": 4670.0, "CurbWeightExtra": 1900.0, "Loading": 3020.0, diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group2_P2/Class2_RigidTruck_ParHyb_ENG.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group2_P2/Class2_RigidTruck_ParHyb_.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group2_P2/Class2_RigidTruck_ParHyb_ENG.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group2_P2/Class2_RigidTruck_ParHyb_.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Hyb_P2_Group2/Class2_RigidTruck_ParHyb_ENG.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Hyb_P2_Group2/Class2_RigidTruck_ParHyb_.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Hyb_P2_Group2/Class2_RigidTruck_ParHyb_ENG.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Hyb_P2_Group2/Class2_RigidTruck_ParHyb_.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Hyb_P2_Group2SuperCapOvl/Class2_RigidTruck_ParHyb_SuperCap_Ovl_ENG.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Hyb_P2_Group2SuperCapOvl/Class2_RigidTruck_ParHyb_SuperCap_Ovl_.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Hyb_P2_Group2SuperCapOvl/Class2_RigidTruck_ParHyb_SuperCap_Ovl_ENG.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Hyb_P2_Group2SuperCapOvl/Class2_RigidTruck_ParHyb_SuperCap_Ovl_.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed+Axle/IEPC-S_ENG_Gbx1Axl.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed+Axle/IEPC-S__Gbx1Axl.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed+Axle/IEPC-S_ENG_Gbx1Axl.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed+Axle/IEPC-S__Gbx1Axl.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed-Whl1/IEPC-S_ENG_Gbx1Whl1.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed-Whl1/IEPC-S__Gbx1Whl1.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed-Whl1/IEPC-S_ENG_Gbx1Whl1.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed-Whl1/IEPC-S__Gbx1Whl1.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed-Whl2/IEPC-S_ENG_Gbx1Whl2.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed-Whl2/IEPC-S__Gbx1Whl2.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed-Whl2/IEPC-S_ENG_Gbx1Whl2.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed-Whl2/IEPC-S__Gbx1Whl2.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed/IEPC-S_ENG_Gbx1.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed/IEPC-S__Gbx1.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed/IEPC-S_ENG_Gbx1.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx1Speed/IEPC-S__Gbx1.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed+Axle/IEPC-S_ENG_Gbx3Axl.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed+Axle/IEPC-S__Gbx3Axl.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed+Axle/IEPC-S_ENG_Gbx3Axl.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed+Axle/IEPC-S__Gbx3Axl.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed-Whl1/IEPC-S_ENG_Gbx3Whl1.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed-Whl1/IEPC-S__Gbx3Whl1.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed-Whl1/IEPC-S_ENG_Gbx3Whl1.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed-Whl1/IEPC-S__Gbx3Whl1.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed-Whl2/IEPC-S_ENG_Gbx3Whl2.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed-Whl2/IEPC-S__Gbx3Whl2.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed-Whl2/IEPC-S_ENG_Gbx3Whl2.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed-Whl2/IEPC-S__Gbx3Whl2.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed/IEPC-S_ENG_Gbx3.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed/IEPC-S__Gbx3.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed/IEPC-S_ENG_Gbx3.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed/IEPC-S__Gbx3.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed/IEPC-S_ENG_Gbx3_drag.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed/IEPC-S__Gbx3_drag.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed/IEPC-S_ENG_Gbx3_drag.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericIEPC-S/IEPC-S_Gbx3Speed/IEPC-S__Gbx3_drag.vecto diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/S2_Job/BEV_ENG.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/S2_Job/BEV_.vecto similarity index 100% rename from VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/S2_Job/BEV_ENG.vecto rename to VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/S2_Job/BEV_.vecto