diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs index 76a50eefc053e4dae863fe83dfc9cb2ada146350..e7afc73ea507e00b59b2a3ebcf37fa8d53ed7aff 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs @@ -31,6 +31,7 @@ using System; using System.Collections.Generic; +using System.Linq; using System.Xml; using System.Xml.Linq; using TUGraz.VectoCommon.BusAuxiliaries; @@ -633,8 +634,11 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider XMLHelper.CombineNamespace(NAMESPACE_URI.NamespaceName, XSD_TYPE); public XMLDeclarationMultistage_HEV_Px_PrimaryVehicleBusDataProviderV01(IXMLPrimaryVehicleBusJobInputData busJobData, XmlNode xmlNode, string sourceFile) : base(busJobData, xmlNode, sourceFile) { } - - public override VectoSimulationJobType VehicleType { get => VectoSimulationJobType.ParallelHybridVehicle; } + + public override VectoSimulationJobType VehicleType => + Components.ElectricMachines.Entries.Any(em => em.ElectricMachine.IsIHPC()) + ? VectoSimulationJobType.IHPC + : VectoSimulationJobType.ParallelHybridVehicle; public override string PowertrainPositionPrefix => "P"; diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/v24/XMLDeclarationPrimaryBusVehicleDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/v24/XMLDeclarationPrimaryBusVehicleDataProvider.cs index 2aa396ee77e43e3e5780cd5ad5b928d36893965e..e9f311d56f2d405cedf920dd334e2d2c8fb9772d 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/v24/XMLDeclarationPrimaryBusVehicleDataProvider.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/v24/XMLDeclarationPrimaryBusVehicleDataProvider.cs @@ -118,7 +118,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider.v24 public override VectoSimulationJobType VehicleType { - get => Components.ElectricMachines.Entries.Any(em => em.ElectricMachine.IsIHPC()) ? VectoSimulationJobType.IHPC : VectoSimulationJobType.ParallelHybridVehicle; + get => Components.ElectricMachines.Entries.Any(em => em.ElectricMachine.IsIHPC()) + ? VectoSimulationJobType.IHPC + : VectoSimulationJobType.ParallelHybridVehicle; } diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationMultistageInputReader.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationMultistageInputReader.cs index 8b9cc5b286d58751551dd5534803c2e9316a4aab..b7845fc8947091c0ef8f17231f5a166b9992a000 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationMultistageInputReader.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationMultistageInputReader.cs @@ -1343,6 +1343,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl case VectoSimulationJobType.BatteryElectricVehicle: case VectoSimulationJobType.IEPC_S: case VectoSimulationJobType.IEPC_E: + case VectoSimulationJobType.IHPC: return WaterElectricHeater != null && AirElectricHeater != null && OtherHeatingTechnology != null; default: return false; diff --git a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/CompletedBus/Generic/DeclarationDataAdapterGenericCompletedBus.cs b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/CompletedBus/Generic/DeclarationDataAdapterGenericCompletedBus.cs index f8fd72b01ca65b89a77a2de0a2e1e4af1cb7b7b6..602be68bd8312357d7452539f50d0085a6a04f69 100644 --- a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/CompletedBus/Generic/DeclarationDataAdapterGenericCompletedBus.cs +++ b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/CompletedBus/Generic/DeclarationDataAdapterGenericCompletedBus.cs @@ -22,7 +22,7 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter.CompletedBus.Gener { public abstract class CompletedBusDeclarationBase : IGenericCompletedBusDeclarationDataAdapter { - private static readonly GearboxType[] SupportedGearboxTypes = + protected virtual GearboxType[] SupportedGearboxTypes => new [] { GearboxType.MT, GearboxType.AMT, GearboxType.ATPowerSplit, GearboxType.ATSerial }; #region ComponentDataAdapter @@ -279,10 +279,17 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter.CompletedBus.Gener } public class HEV_P1 : ParallelHybrid { } - - public class HEV_P2 : ParallelHybrid { } - - public class HEV_P2_5 : ParallelHybrid { } + + public class HEV_P2 : ParallelHybrid + { + #region Overrides of ParallelHybrid + + protected override GearboxType[] SupportedGearboxTypes => new[] { GearboxType.AMT, GearboxType.IHPC }; + + #endregion + } + + public class HEV_P2_5 : ParallelHybrid { } public class HEV_P3 : ParallelHybrid { } diff --git a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterNinjectModule.cs b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterNinjectModule.cs index 1c747238078dce228597ab7363410ab89001d3fc..5d66b6ccbc859960ff066628fae0ea2ae79a3cd3 100644 --- a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterNinjectModule.cs +++ b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterNinjectModule.cs @@ -73,7 +73,6 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter #endregion HeavyLorry #region PrimaryBus - Bind<IPrimaryBusDeclarationDataAdapter>().To<DeclarationDataAdapterPrimaryBus.Conventional>() .WhenInjectedExactlyInto<DeclarationModePrimaryBusRunDataFactory.Conventional>(); @@ -121,26 +120,21 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter Bind<IPrimaryBusDeclarationDataAdapter>().To<DeclarationDataAdapterPrimaryBus.Exempted>() .WhenInjectedExactlyInto<DeclarationModePrimaryBusRunDataFactory.Exempted>(); - #endregion #region CompletedBus Generic - Bind<IGenericCompletedBusDeclarationDataAdapter>() .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.Conventional>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.Conventional>(); - Bind<IGenericCompletedBusDeclarationDataAdapter>() .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.HEV_S2>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_S2>(); - Bind<IGenericCompletedBusDeclarationDataAdapter>() .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.HEV_S3>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_S3>(); - Bind<IGenericCompletedBusDeclarationDataAdapter>() .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.HEV_S4>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_S4>(); @@ -153,17 +147,14 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.HEV_P1>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_P1>(); - Bind<IGenericCompletedBusDeclarationDataAdapter>() .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.HEV_P2>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_P2>(); - Bind<IGenericCompletedBusDeclarationDataAdapter>() .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.HEV_P2_5>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_P2_5>(); - Bind<IGenericCompletedBusDeclarationDataAdapter>() .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.HEV_P3>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_P3>(); @@ -171,18 +162,27 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter Bind<IGenericCompletedBusDeclarationDataAdapter>() .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.HEV_P4>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_P4>(); - Bind<IGenericCompletedBusDeclarationDataAdapter>() + + Bind<IGenericCompletedBusDeclarationDataAdapter>() + .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.HEV_P2>() + .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_P_IHPC>(); + + Bind<IGenericCompletedBusDeclarationDataAdapter>() .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.PEV_E2>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.PEV_E2>(); + Bind<IGenericCompletedBusDeclarationDataAdapter>() .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.PEV_E3>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.PEV_E3>(); + Bind<IGenericCompletedBusDeclarationDataAdapter>() .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.PEV_E4>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.PEV_E4>(); + Bind<IGenericCompletedBusDeclarationDataAdapter>() .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.PEV_E_IEPC>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.PEV_E_IEPC>(); + Bind<IGenericCompletedBusDeclarationDataAdapter>() .To<DeclarationDeclarationDataAdapterGenericCompletedBusDeclaration.Exempted>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.Exempted>(); @@ -193,101 +193,114 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter .To<DeclarationDataAdapterSpecificCompletedBus.Conventional>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.Conventional>(); - - Bind<ISpecificCompletedBusDeclarationDataAdapter>() + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.HEV_S2>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_S2>(); - - Bind<ISpecificCompletedBusDeclarationDataAdapter>() + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.HEV_S3>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_S3>(); - - Bind<ISpecificCompletedBusDeclarationDataAdapter>() + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.HEV_S4>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_S4>(); - Bind<ISpecificCompletedBusDeclarationDataAdapter>() + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.HEV_S_IEPC>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_S_IEPC>(); - Bind<ISpecificCompletedBusDeclarationDataAdapter>() + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.HEV_P1>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_P1>(); - - Bind<ISpecificCompletedBusDeclarationDataAdapter>() + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.HEV_P2>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_P2>(); - - Bind<ISpecificCompletedBusDeclarationDataAdapter>() + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.HEV_P2_5>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_P2_5>(); - - Bind<ISpecificCompletedBusDeclarationDataAdapter>() + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.HEV_P3>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_P3>(); - Bind<ISpecificCompletedBusDeclarationDataAdapter>() + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.HEV_P4>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_P4>(); - Bind<ISpecificCompletedBusDeclarationDataAdapter>() + + Bind<ISpecificCompletedBusDeclarationDataAdapter>() + .To<DeclarationDataAdapterSpecificCompletedBus.HEV_P2>() + .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.HEV_P_IHPC>(); + + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.PEV_E2>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.PEV_E2>(); + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.PEV_E3>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.PEV_E3>(); + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.PEV_E4>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.PEV_E4>(); + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.PEV_E_IEPC>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.PEV_E_IEPC>(); + Bind<ISpecificCompletedBusDeclarationDataAdapter>() .To<DeclarationDataAdapterSpecificCompletedBus.Exempted>() .WhenInjectedExactlyInto<DeclarationModeCompletedBusRunDataFactory.Exempted>(); #endregion #region SingleBus - Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.Conventional>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.Conventional>(); Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.HEV_S2>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.HEV_S2>(); + Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.HEV_S3>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.HEV_S3>(); + Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.HEV_S4>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.HEV_S4>(); + Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.HEV_S_IEPC>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.HEV_S_IEPC>(); + Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.HEV_P1>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.HEV_P1>(); + Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.HEV_P2>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.HEV_P2>(); + Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.HEV_P2_5>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.HEV_P2_5>(); + Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.HEV_P3>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.HEV_P3>(); + Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.HEV_P4>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.HEV_P4>(); + Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.PEV_E2>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.PEV_E2>(); + Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.PEV_E3>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.PEV_E3>(); + Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.PEV_E4>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.PEV_E4>(); + Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.PEV_E_IEPC>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.PEV_E_IEPC>(); Bind<ISingleBusDeclarationDataAdapter>().To<DeclarationDataAdapterSingleBus.Exempted>() .WhenInjectedExactlyInto<DeclarationModeSingleBusRunDataFactory.Exempted>(); #endregion - - } + } #endregion } diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/CompletedBusRunDataFactory/DeclarationModeCompletedBusRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/CompletedBusRunDataFactory/DeclarationModeCompletedBusRunDataFactory.cs index eb53668d20f04ce59aa628ddbd2b3155091299d6..73c6fb64d73963eb8e9e528a0c6eeed0328c32e0 100644 --- a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/CompletedBusRunDataFactory/DeclarationModeCompletedBusRunDataFactory.cs +++ b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/CompletedBusRunDataFactory/DeclarationModeCompletedBusRunDataFactory.cs @@ -806,6 +806,11 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl.DeclarationMode.CompletedBusRun public HEV_P4(IMultistageVIFInputData dataProvider, IDeclarationReport report, ISpecificCompletedBusDeclarationDataAdapter dataAdapterSpecific, IGenericCompletedBusDeclarationDataAdapter dataAdapterGeneric, IDeclarationCycleFactory cycleFactory, IMissionFilter missionFilter) : base(dataProvider, report, dataAdapterSpecific, dataAdapterGeneric, cycleFactory, missionFilter) { } } + public class HEV_P_IHPC : HEV_P2 + { + public HEV_P_IHPC(IMultistageVIFInputData dataProvider, IDeclarationReport report, ISpecificCompletedBusDeclarationDataAdapter dataAdapterSpecific, IGenericCompletedBusDeclarationDataAdapter dataAdapterGeneric, IDeclarationCycleFactory cycleFactory, IMissionFilter missionFilter) : base(dataProvider, report, dataAdapterSpecific, dataAdapterGeneric, cycleFactory, missionFilter) { } + } + #endregion ParallelHybrid #endregion Hybrid diff --git a/VectoCore/VectoCore/InputData/Reader/VectoRunDataFactoryNinjectModule.cs b/VectoCore/VectoCore/InputData/Reader/VectoRunDataFactoryNinjectModule.cs index 3971702d0fea389b673b8dc6064ffdf5e188915b..654867d9285e26f43acd50c002552f147a36b697 100644 --- a/VectoCore/VectoCore/InputData/Reader/VectoRunDataFactoryNinjectModule.cs +++ b/VectoCore/VectoCore/InputData/Reader/VectoRunDataFactoryNinjectModule.cs @@ -214,7 +214,11 @@ namespace TUGraz.VectoCore.InputData.Reader _vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.ParallelHybridVehicle, ArchitectureID.P4)); - Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.PEV_E2>().Named( + Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.HEV_P_IHPC>().Named( + _vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.IHPC, + ArchitectureID.P2)); + + Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.PEV_E2>().Named( _vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.BatteryElectricVehicle, ArchitectureID.E2)); Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.PEV_E3>().Named( diff --git a/VectoCore/VectoCore/Models/Declaration/Auxiliaries/AbstractAuxiliaryVehicleArchitectureLookup.cs b/VectoCore/VectoCore/Models/Declaration/Auxiliaries/AbstractAuxiliaryVehicleArchitectureLookup.cs index 6d97292cf24875f10b4efa5e2a66885997612049..0ddd4d7d6a7f657b100509a8cde308244ddf9627 100644 --- a/VectoCore/VectoCore/Models/Declaration/Auxiliaries/AbstractAuxiliaryVehicleArchitectureLookup.cs +++ b/VectoCore/VectoCore/Models/Declaration/Auxiliaries/AbstractAuxiliaryVehicleArchitectureLookup.cs @@ -18,6 +18,7 @@ namespace TUGraz.VectoCore.Models.Declaration.Auxiliaries {VectoSimulationJobType.BatteryElectricVehicle, "pev"}, {VectoSimulationJobType.SerialHybridVehicle, "s-hev"}, {VectoSimulationJobType.ParallelHybridVehicle, "p-hev"}, + {VectoSimulationJobType.IHPC,"p-hev" }, {VectoSimulationJobType.ConventionalVehicle, "conventional"}, {VectoSimulationJobType.IEPC_S, "s-hev"}, {VectoSimulationJobType.IEPC_E, "pev"}, diff --git a/VectoCore/VectoCore/Models/GenericModelData/GenericBusIHPCData.cs b/VectoCore/VectoCore/Models/GenericModelData/GenericBusIHPCData.cs index 87b62dd823e20000be1be890e4a5c30b5d188527..0d144653165039e6ee3fc67ff51f0581562f2e47 100644 --- a/VectoCore/VectoCore/Models/GenericModelData/GenericBusIHPCData.cs +++ b/VectoCore/VectoCore/Models/GenericModelData/GenericBusIHPCData.cs @@ -14,7 +14,7 @@ namespace TUGraz.VectoCore.Models.GenericModelData { public class GenericBusIHPCData : GenericBusEMBase { - public const double GenericGearEfficiency = 0.925; + // public const double GenericGearEfficiency = 0.925; //Considered in gearbox public GenericBusIHPCData() { diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFNinjectModule.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFNinjectModule.cs index c3ee6ae290700e26c04dadd204cc4c7048f27b4d..fe47f57dc11af4ed2cede4643e9922d96c3e0856 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFNinjectModule.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFNinjectModule.cs @@ -181,7 +181,14 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation false, false))); - Bind<IXMLCustomerReport>().To<HEV_S2_CompletedBusCIF>().Named(MRFNinjectModule.VehicleTypeAndArchitectureStringHelper.CreateName.Invoke(MRFNinjectModule.VehicleTypeAndArchitectureStringHelper.ToParams(VehicleCategoryHelper.CompletedBus, + Bind<IXMLCustomerReport>().To<HEV_Px_CompletedBusCIF>().Named(MRFNinjectModule.VehicleTypeAndArchitectureStringHelper.CreateName.Invoke(MRFNinjectModule.VehicleTypeAndArchitectureStringHelper.ToParams(VehicleCategoryHelper.CompletedBus, + VectoSimulationJobType.IHPC, + ArchitectureID.P2, + false, + false, + false))); + + Bind<IXMLCustomerReport>().To<HEV_S2_CompletedBusCIF>().Named(MRFNinjectModule.VehicleTypeAndArchitectureStringHelper.CreateName.Invoke(MRFNinjectModule.VehicleTypeAndArchitectureStringHelper.ToParams(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.SerialHybridVehicle, ArchitectureID.S2, false, diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/MRFNinjectModule.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/MRFNinjectModule.cs index 049b1f481275fbb9622455c5a7fff033070ef50c..61026c4387a35b0edb00aad164fff943a83995ef 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/MRFNinjectModule.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/MRFNinjectModule.cs @@ -361,6 +361,14 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. false))); Bind<IXMLManufacturerReport>().To<HEV_CompletedBusManufacturerReport>().Named(VehicleTypeAndArchitectureStringHelper.CreateName.Invoke(VehicleTypeAndArchitectureStringHelper.ToParams( + VehicleCategoryHelper.CompletedBus, + VectoSimulationJobType.IHPC, + ArchitectureID.P2, + false, + false, + false))); + + Bind<IXMLManufacturerReport>().To<HEV_CompletedBusManufacturerReport>().Named(VehicleTypeAndArchitectureStringHelper.CreateName.Invoke(VehicleTypeAndArchitectureStringHelper.ToParams( VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.SerialHybridVehicle, ArchitectureID.S2, diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/VIFNinjectModule.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/VIFNinjectModule.cs index 1e52f265c2640d839a8bccca7650f28a85c732f9..c066fb00a7de24e323253af4ade0e8495a50d07f 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/VIFNinjectModule.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/VIFNinjectModule.cs @@ -168,6 +168,13 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF false))); Bind<IXMLMultistepIntermediateReport>().To<HEV_CompletedBus_VIF>().Named(MRFNinjectModule.VehicleTypeAndArchitectureStringHelper.CreateName.Invoke(MRFNinjectModule.VehicleTypeAndArchitectureStringHelper.ToParams(VehicleCategoryHelper.PrimaryBus, + VectoSimulationJobType.IHPC, + ArchitectureID.P2, + false, + false, + false))); + + Bind<IXMLMultistepIntermediateReport>().To<HEV_CompletedBus_VIF>().Named(MRFNinjectModule.VehicleTypeAndArchitectureStringHelper.CreateName.Invoke(MRFNinjectModule.VehicleTypeAndArchitectureStringHelper.ToParams(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.IEPC_S, ArchitectureID.S_IEPC, false, diff --git a/VectoCore/VectoCoreTest/Integration/Declaration/PrimaryBus/PrimaryBusSimulation.cs b/VectoCore/VectoCoreTest/Integration/Declaration/PrimaryBus/PrimaryBusSimulation.cs index 59e5b73b9a4646ef5e2def9e718a913781215dcb..288369da352dbb2578123a49567c652953c420f6 100644 --- a/VectoCore/VectoCoreTest/Integration/Declaration/PrimaryBus/PrimaryBusSimulation.cs +++ b/VectoCore/VectoCoreTest/Integration/Declaration/PrimaryBus/PrimaryBusSimulation.cs @@ -89,11 +89,11 @@ public class PrimaryBusSimulation TestCase(@"PrimaryCityBus_IEPC_Base.RSLT_VIF.xml", @"PEV_completedBus_2.xml", 1, TestName = "2nd Amendment CompletedBus CityBus PEV IEPC"), TestCase(@"PrimaryCoach_P2_HEV_Base_AMT.RSLT_VIF.xml", @"HEV_completedBus_2.xml", 1, TestName = "2nd Amendment CompletedBus Coach HEV P2"), TestCase(@"PrimaryCoach_P2_HEV_AMT_OVC.RSLT_VIF.xml", @"HEV_completedBus_2.xml", 1, TestName = "2nd Amendment CompletedBus Coach HEV P2 OVC"), - TestCase(@"PrimaryCityBus_P1_HEV_Base_AT.RSLT_VIF.xml", @"HEV_completedBus_2.xml", 1, true, TestName = "2nd Amendment CompletedBus CityBus HEV P1 - fails on complete cycle"), + TestCase(@"PrimaryCityBus_P1_HEV_Base_AT.RSLT_VIF.xml", @"HEV_completedBus_2.xml", 1,true, TestName = "2nd Amendment CompletedBus CityBus HEV P1 - fails on complete cycle"), TestCase(@"PrimaryCoach_S2_Base_AMT.RSLT_VIF.xml", @"HEV_completedBus_2.xml", 1, TestName = "2nd Amendment CompletedBus Coach HEV S2"), TestCase(@"PrimaryCityBus_IEPC-S_Base.RSLT_VIF.xml", @"HEV_completedBus_2.xml", 1, TestName = "2nd Amendment CompletedBus CityBus HEV IEPC-S"), TestCase(@"exempted_primary_heavyBus.RSLT_VIF.xml", @"exempted_completedBus_input_full.xml", 1, TestName = "2nd Amendment CompletedBus Exempted"), - TestCase(@"IHPC", @"IHPC_completed", 1, TestName="2nd Amendment Completed Bus IHPC") + TestCase(@"PrimaryCityBus_IHPC.RSLT_VIF.xml", @"HEV_completedBus_2.xml", -1, TestName="2nd Amendment Completed Bus IHPC") ] public void CompletedBusSimulationTest(string vifFile, string completed, int runIdx, bool full_sim = false) {