diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationADASDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationADASDataProvider.cs index b51a18b968df3d676e54703d30221ccf458bd9db..df20f1a5a6c9a3cef67774419bde7884d8cc9144 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationADASDataProvider.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationADASDataProvider.cs @@ -34,6 +34,7 @@ using System.Xml.Linq; using TUGraz.VectoCommon.InputData; using TUGraz.VectoCommon.Resources; using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Interfaces; +using TUGraz.VectoCore.Models.Declaration; using TUGraz.VectoCore.Utils; namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider @@ -96,6 +97,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider : base(vehicle, componentNode, sourceFile) { } protected override XNamespace SchemaNamespace => NAMESPACE_URI; + + public override bool? ATEcoRollReleaseLockupClutch => false; } // --------------------------------------------------------------------------------------- diff --git a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/IFollowUpSimulatorFactoryCreator.cs b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/IFollowUpSimulatorFactoryCreator.cs index 5e31641741d5d2d88287e620bc7972c9d429a025..64734f7a87b810bbdccfa417fe5118033fa2fa91 100644 --- a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/IFollowUpSimulatorFactoryCreator.cs +++ b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/IFollowUpSimulatorFactoryCreator.cs @@ -8,6 +8,9 @@ using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider; using TUGraz.VectoCore.OutputData; using TUGraz.VectoCore.OutputData.FileIO; using TUGraz.VectoCore.OutputData.XML; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile.VehicleInformationFile_0_1; namespace TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory { @@ -54,6 +57,9 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory private readonly IDeclarationReport _originalDeclarationReport; private readonly IDeclarationInputDataProvider _currentStageInputData; + private readonly IManufacturerReportFactory _mrfFactory; + private readonly IVIFReportFactory _vifFactory; + public InterimAfterPrimaryFactoryCreator(IMultistagePrimaryAndStageInputDataProvider originalStageInputData, IOutputDataWriter originalReportWriter, IDeclarationReport originalDeclarationReport, diff --git a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactory.cs b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactory.cs index 32f5b1d75561a1211946c585dc7e411cdaf32622..9ee76616a7223e4f70e29e4af23ea15f9a2c5539 100644 --- a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactory.cs +++ b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactory.cs @@ -247,7 +247,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory $"{validationErrors.Select(r => r.ErrorMessage + r.MemberNames.Join("; ")).Join("\n")}"); } } - + private static VectoRun GetVectoRun(VectoRunData data, IModalDataContainer modData, ISumData sumWriter) { VectoRun run; diff --git a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactoryDeclaration.cs b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactoryDeclaration.cs index 740646b9f1e4dabdc9c4e81c13af75372ecc641c..d5593adef4db1dba489f21977ee3943c1dc07f89 100644 --- a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactoryDeclaration.cs +++ b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactoryDeclaration.cs @@ -4,6 +4,8 @@ using TUGraz.VectoCore.InputData; using TUGraz.VectoCore.InputData.FileIO.XML; using TUGraz.VectoCore.OutputData; using TUGraz.VectoCore.OutputData.XML; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile.VehicleInformationFile_0_1; namespace TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory { @@ -15,6 +17,8 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory private IDeclarationReport _currentStageDeclarationReport; private IVTPReport _currentStageVTPReport; protected readonly IXMLDeclarationReportFactory _xmlDeclarationReportFactory; + private IVIFReportFactory _vifFactory; + private IManufacturerReportFactory _mrfFactory; @@ -34,7 +38,6 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory _currentStageInputData = dataProvider; _xmlDeclarationReportFactory = xmlDeclarationReportFactory; - _currentStageDeclarationReport = declarationReport ?? xmlDeclarationReportFactory.CreateReport(dataProvider, writer); _currentStageVTPReport = vtpReport ?? xmlDeclarationReportFactory.CreateVTPReport(dataProvider, writer); _followUpSimulatorFactoryCreator = CreateFollowUpFactoryCreator( diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs b/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs index 943ffed1da5fdce4a5ab0e0524df0e95fb5e8077..b27574109a453b6237a21d7edf005e3ae861c308 100644 --- a/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs +++ b/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs @@ -572,8 +572,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies dryRunResponse.ElectricMotor.AvgDrivetrainSpeed; var gbxOutTqV = dryRunResponse.Gearbox.OutputTorque - emTq; - var prevGbxSpeed = (DataBus.GearboxInfo as AbstractGearbox<GearboxState>).PreviousState - .OutAngularVelocity; + var prevGbxSpeed = GetPrevGbxSpeed(); var gbxLoss = ModelData.GearboxData.Gears[gear.Gear].LossMap .GetTorqueLoss((dryRunResponse.Gearbox.OutputSpeed + prevGbxSpeed) / 2.0, gbxOutTqV); gbxInTq = gbxOutTqV / ModelData.GearboxData.Gears[gear.Gear].Ratio + gbxLoss.Value; @@ -597,8 +596,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies gbxInTorque = anglInTorque; } var gear = dryRunResponse.Gearbox.Gear; - var prevGbxSpeed = (DataBus.GearboxInfo as AbstractGearbox<GearboxState>).PreviousState - .OutAngularVelocity; + var prevGbxSpeed = GetPrevGbxSpeed(); var gbxLoss = ModelData.GearboxData.Gears[gear.Gear].LossMap .GetTorqueLoss((dryRunResponse.Gearbox.OutputSpeed + prevGbxSpeed) / 2.0, gbxInTorque); gbxInTq = gbxInTorque / ModelData.GearboxData.Gears[gear.Gear].Ratio + gbxLoss.Value; @@ -609,6 +607,17 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies return gbxInTq; } + private PerSecond GetPrevGbxSpeed() + { + switch (DataBus.GearboxInfo) { + case Gearbox gbx: + return gbx.PreviousState.OutAngularVelocity; + case ATGearbox atGbx: + return atGbx.PreviousState.OutAngularVelocity; + default: throw new VectoException("Unsupported gearbox type!"); + } + } + public void OperatingpointChangedDuringRequest(Second absTime, Second dt, NewtonMeter outTorque, PerSecond outAngularVelocity, bool dryRun, IResponse retVal) diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/Components/MRFBoostingLimitationsType.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/Components/MRFBoostingLimitationsType.cs index 13d287dabb178007d456fa178d491dcfe0daa683..a01d7eff2f91af77026017c3f6fca5518587d289 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/Components/MRFBoostingLimitationsType.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/Components/MRFBoostingLimitationsType.cs @@ -32,8 +32,9 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. foreach (DataRow row in boostingLimitations.Rows) { boostingLimitationsXElement.Add(new XElement(_mrf + XMLNames.BoostingLimitation_Entry, - new XAttribute(XMLNames.BoostingLimitation_BoostingTorque, row[MaxBoostingTorqueReader.Fields.DrivingTorque]), - new XAttribute(XMLNames.BoostingLimitation_RotationalSpeed, row[MaxBoostingTorqueReader.Fields.MotorSpeed]))); + new XAttribute(XMLNames.BoostingLimitation_RotationalSpeed, row[XMLNames.BoostingLimitation_RotationalSpeed]), + new XAttribute(XMLNames.BoostingLimitation_BoostingTorque, row[XMLNames.BoostingLimitation_BoostingTorque]) + )); } diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VTPReport/XMLVTPReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VTPReport/XMLVTPReport.cs index 2a71aeeeba499abf6164fe939d24dac2396c47ea..c24b4bc62beab7a39f319b4c7603259f94b03776 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VTPReport/XMLVTPReport.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VTPReport/XMLVTPReport.cs @@ -32,6 +32,7 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Runtime.CompilerServices; using System.Xml; using System.Xml.Linq; using NLog.Config; @@ -57,6 +58,8 @@ using TUGraz.VectoCore.Models.Declaration.Auxiliaries; using TUGraz.VectoCore.Models.SimulationComponent.Impl; using LogManager = NLog.LogManager; +[assembly: InternalsVisibleTo("VectoCoreTest")] + namespace TUGraz.VectoCore.OutputData.XML { internal class XMLVTPReport : DeclarationReport<XMLVTPReport.ResultEntry>, IVTPReport diff --git a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport.cs b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport.cs index a3e52501186392a1a1f3b17c78d6cb59e40014b5..d1f4eddbe487d04367bf61b3891a53ed94527653 100644 --- a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport.cs +++ b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport.cs @@ -48,7 +48,9 @@ using TUGraz.VectoCore.Models.Simulation.Data; using TUGraz.VectoCore.Models.Simulation.Impl; using TUGraz.VectoCore.Models.SimulationComponent.Data.ElectricComponents.Battery; using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9; using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; namespace TUGraz.VectoCore.OutputData.XML { @@ -58,12 +60,16 @@ namespace TUGraz.VectoCore.OutputData.XML protected IXMLCustomerReport CustomerRpt; + protected readonly IManufacturerReportFactory _mrfFactory; + protected readonly ICustomerInformationFileFactory _cifFactory; + protected IDictionary<Tuple<MissionType, LoadingType>, double> _weightingFactors; - public XMLDeclarationReport(IReportWriter writer) : base(writer) + public XMLDeclarationReport(IReportWriter writer, IManufacturerReportFactory mrfFactory, ICustomerInformationFileFactory cifFactory) : base(writer) { - throw new NotImplementedException("Use new implementation..."); + _mrfFactory = mrfFactory; + _cifFactory = cifFactory; } protected XMLDeclarationReport(IReportWriter writer, bool dummy) : base(writer) { } @@ -328,12 +334,24 @@ namespace TUGraz.VectoCore.OutputData.XML protected virtual void InstantiateReports(VectoRunData modelData) { - //if (modelData.Exempted) { - // ManufacturerRpt = new XMLManufacturerReportExemptedTruck(); - //} else { - // ManufacturerRpt = new XMLManufacturerReportTruck(); - //} - //CustomerRpt = new XMLCustomerReport(); + + var vehicleData = modelData.VehicleData.InputData; + var iepc = vehicleData.Components?.IEPC != null; + var ihpc = + vehicleData.Components?.ElectricMachines?.Entries?.Count(e => e.ElectricMachine.IHPCType != "None") > 0; + + ManufacturerRpt = _mrfFactory.GetManufacturerReport(vehicleData.VehicleCategory, + vehicleData.VehicleType, + vehicleData.ArchitectureID, + vehicleData.ExemptedVehicle, + iepc, + ihpc); + CustomerRpt = _cifFactory.GetCustomerReport(vehicleData.VehicleCategory, + vehicleData.VehicleType, + vehicleData.ArchitectureID, + vehicleData.ExemptedVehicle, + iepc, + ihpc); } private static IDictionary<Tuple<MissionType, LoadingType>, double> ZeroWeighting => diff --git a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportCompletedVehicle.cs b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportCompletedVehicle.cs index 44d3fdaa3513b689d2c4e506711b75846b9f26a0..e689c038a19b9b577fe27624508ae6494c6164de 100644 --- a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportCompletedVehicle.cs +++ b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportCompletedVehicle.cs @@ -5,39 +5,60 @@ using System.Linq; using TUGraz.VectoCommon.Exceptions; using TUGraz.VectoCommon.InputData; using TUGraz.VectoCommon.Models; +using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Interfaces; using TUGraz.VectoCore.Models.Declaration; using TUGraz.VectoCore.Models.Simulation.Data; using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9; using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile.VehicleInformationFile_0_1; -namespace TUGraz.VectoCore.OutputData.XML { +namespace TUGraz.VectoCore.OutputData.XML +{ + /// <summary> + /// Create MRF and CIF of the complete(d) step + /// </summary> public class XMLDeclarationReportCompletedVehicle : XMLDeclarationReport { - public XMLDeclarationReportCompletedVehicle(IReportWriter writer) : base(writer, true) { } + #region Constructors + //public XMLDeclarationReportCompletedVehicle(IReportWriter writer) : base(writer) { } + public XMLDeclarationReportCompletedVehicle(IReportWriter writer, IManufacturerReportFactory mrfFactory, + ICustomerInformationFileFactory cifFactory, + IVIFReportFactory vifFactory) : base(writer, mrfFactory, cifFactory) + { + } - public IPrimaryVehicleInformationInputDataProvider PrimaryVehicleReportInputData { get; set; } + #endregion - #region Overrides of XMLDeclarationReport + public IPrimaryVehicleInformationInputDataProvider PrimaryVehicleReportInputData { get; set; } + #region Overrides of XMLDeclarationReportCompletedVehicle protected override void InstantiateReports(VectoRunData modelData) { - ManufacturerRpt = modelData.Exempted - ? new XMLManufacturerReportExemptedCompletedBus() { - PrimaryVehicleRecordFile = PrimaryVehicleReportInputData - } - : new XMLManufacturerReportCompletedBus() { - PrimaryVehicleRecordFile = PrimaryVehicleReportInputData - }; - CustomerRpt = modelData.Exempted - ? new XMLCustomerReportExemptedCompletedBus() { - PrimaryVehicleRecordFile = PrimaryVehicleReportInputData - } - : new XMLCustomerReportCompletedBus() { - PrimaryVehicleRecordFile = PrimaryVehicleReportInputData - }; - } + var inputData = modelData.InputData as IXMLMultistageInputDataProvider; + var primaryVehicle = inputData.JobInputData.PrimaryVehicle.Vehicle; + + var ihpc = (primaryVehicle.Components?.ElectricMachines?.Entries)?.Count(electric => electric.ElectricMachine.IHPCType != "None") > 0; + var iepc = (primaryVehicle.Components?.IEPC != null); + ManufacturerRpt = _mrfFactory.GetManufacturerReport( + inputData.JobInputData.ConsolidateManufacturingStage.Vehicle.VehicleCategory, + inputData.JobInputData.JobType, + primaryVehicle.ArchitectureID, + primaryVehicle.ExemptedVehicle, + iepc, + ihpc); + + CustomerRpt = _cifFactory.GetCustomerReport( + inputData.JobInputData.ConsolidateManufacturingStage.Vehicle.VehicleCategory, + inputData.JobInputData.JobType, + primaryVehicle.ArchitectureID, + primaryVehicle.ExemptedVehicle, + iepc, + ihpc); + } public override void InitializeReport(VectoRunData modelData) { _weightingFactors = EqualWeighting; @@ -49,6 +70,8 @@ namespace TUGraz.VectoCore.OutputData.XML { } #endregion + + private static IDictionary<Tuple<MissionType, LoadingType>, double> EqualWeighting => new ReadOnlyDictionary<Tuple<MissionType, LoadingType>, double>( new Dictionary<Tuple<MissionType, LoadingType>, double>() { @@ -81,12 +104,14 @@ namespace TUGraz.VectoCore.OutputData.XML { protected internal override void DoWriteReport() { foreach (var specificResult in Results.Where(x => VehicleClassHelper.IsCompletedBus(x.VehicleClass)).OrderBy(x => x.VehicleClass) - .ThenBy(x => x.FuelMode).ThenBy(x => x.Mission)) { + .ThenBy(x => x.FuelMode).ThenBy(x => x.Mission)) + { var genericResult = Results.First(x => x.VehicleClass.IsPrimaryBus() && x.FuelMode == specificResult.FuelMode && - x.Mission == specificResult.Mission && x.LoadingType == specificResult.LoadingType); + x.Mission == specificResult.Mission && x.LoadingType == specificResult.LoadingType); var primaryResult = genericResult.PrimaryResult ?? specificResult.PrimaryResult; - if (primaryResult == null) { + if (primaryResult == null) + { throw new VectoException( "no primary result entry set for simulation run vehicle class: {0}, mission: {1}, payload: {2}", genericResult.VehicleClass, genericResult.Mission, genericResult.Payload); @@ -98,7 +123,8 @@ namespace TUGraz.VectoCore.OutputData.XML { GenerateReports(); - if (Writer != null) { + if (Writer != null) + { OutputReports(); } } diff --git a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportFactory.cs b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportFactory.cs index ea2f38e53a21bb634336e62aa22468ea56d6d3a8..a66c3846b9e4d98600cda063f07f9c34f408ec5a 100644 --- a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportFactory.cs +++ b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportFactory.cs @@ -36,7 +36,8 @@ namespace TUGraz.VectoCore.OutputData.XML case IMultistepBusInputDataProvider multistageBusInputDataProvider: break; case ISingleBusInputDataProvider singleBusInputDataProvider: - return new XMLDeclarationReportSingleBus09(outputWriter, _mrfFactory, _cifFactory); + throw new NotImplementedException(); + //return new XMLDeclarationReportSingleBus(outputWriter, _mrfFactory, _cifFactory); case IDeclarationInputDataProvider declarationInputDataProvider: return CreateDeclarationReport(declarationInputDataProvider, outputWriter); case IMultiStageTypeInputData multiStageTypeInputData: @@ -69,14 +70,14 @@ namespace TUGraz.VectoCore.OutputData.XML { if (multistageVifInputData.VehicleInputData == null) { - var reportCompleted = new XMLDeclarationReportCompletedVehicle_09(outputDataWriter, _mrfFactory, _cifFactory, _vifFactory) + var reportCompleted = new XMLDeclarationReportCompletedVehicle(outputDataWriter, _mrfFactory, _cifFactory, _vifFactory) { PrimaryVehicleReportInputData = multistageVifInputData.MultistageJobInputData.JobInputData.PrimaryVehicle, }; return reportCompleted; } else { - var report = new XMLDeclarationReportInterimVehicle_09(outputDataWriter, _mrfFactory, _cifFactory, _vifFactory, _vifInterimFactory); + var report = new XMLDeclarationReportInterimVehicle(outputDataWriter, _mrfFactory, _cifFactory, _vifFactory, _vifInterimFactory); return report; } } @@ -87,19 +88,19 @@ namespace TUGraz.VectoCore.OutputData.XML var vehicleCategory = declarationInputDataProvider.JobInputData.Vehicle.VehicleCategory; if (vehicleCategory.IsLorry()) { - return new XMLDeclarationReport09(outputDataWriter, _mrfFactory, _cifFactory); + return new XMLDeclarationReport(outputDataWriter, _mrfFactory, _cifFactory); } if (vehicleCategory.IsBus()) switch (declarationInputDataProvider.JobInputData.Vehicle.VehicleCategory) { case VehicleCategory.HeavyBusCompletedVehicle: - return new XMLDeclarationReportCompletedVehicle_09(outputDataWriter, _mrfFactory, _cifFactory, _vifFactory) + return new XMLDeclarationReportCompletedVehicle(outputDataWriter,_mrfFactory,_cifFactory,_vifFactory) { PrimaryVehicleReportInputData = declarationInputDataProvider.PrimaryVehicleData, }; case VehicleCategory.HeavyBusPrimaryVehicle: - return new XMLDeclarationReportPrimaryVehicle_09(outputDataWriter, _mrfFactory, _cifFactory, _vifFactory); + return new XMLDeclarationReportPrimaryVehicle(outputDataWriter, _mrfFactory, _vifFactory); default: break; diff --git a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportInterimVehicle.cs b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportInterimVehicle.cs new file mode 100644 index 0000000000000000000000000000000000000000..34f35a5a02effe8a22a68780941f94adeaf7d884 --- /dev/null +++ b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportInterimVehicle.cs @@ -0,0 +1,80 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using TUGraz.VectoCore.Models.Declaration; +using TUGraz.VectoCore.Models.Simulation.Data; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile.VehicleInformationFile_0_1; + +namespace TUGraz.VectoCore.OutputData.XML +{ + /// <summary> + /// Create VIF of an interim (or the complete(d) step + /// </summary> + public class XMLDeclarationReportInterimVehicle : XMLDeclarationReport + { + protected readonly IVIFReportFactory _vifFactory; + + protected IXMLMultistepIntermediateReport MultistepIntermediateBusReport; + protected readonly IVIFReportInterimFactory _interimFactory; + + public XMLDeclarationReportInterimVehicle(IReportWriter writer, + IManufacturerReportFactory mrfFactory, + ICustomerInformationFileFactory cifFactory, + IVIFReportFactory vifFactory, IVIFReportInterimFactory interimFactory) : base(writer, mrfFactory, cifFactory) + { + _vifFactory = vifFactory; + _interimFactory = interimFactory; + } + + #region Overrides of XMLDeclarationReport + + protected override void InstantiateReports(VectoRunData modelData) + { + var vehicleData = modelData.VehicleData.InputData; + var iepc = vehicleData.Components?.IEPC != null; + var ihpc = + vehicleData.Components?.ElectricMachines?.Entries?.Count(e => e.ElectricMachine.IHPCType != "None") > 0; + + MultistepIntermediateBusReport = _interimFactory.GetInterimVIFReport(vehicleData.VehicleCategory, + vehicleData.VehicleType, + vehicleData.ArchitectureID, + vehicleData.ExemptedVehicle, + iepc, + ihpc); + } + + #endregion + + public override void InitializeReport(VectoRunData modelData) + { + //_multistageBusReport = + // modelData.Exempted ? new XMLMultistageExemptedBusReport() : new XMLMultistageBusReport(); + + InstantiateReports(modelData); + + MultistepIntermediateBusReport.Initialize(modelData); + } + + protected override void GenerateReports() + { + MultistepIntermediateBusReport.GenerateReport(); + } + + protected override void OutputReports() + { + Writer.WriteReport(ReportType.DeclarationReportMultistageVehicleXML, MultistepIntermediateBusReport.Report); + } + + protected override void DoStoreResult(ResultEntry entry, VectoRunData runData, IModalDataContainer modData) + { + throw new NotSupportedException(); + } + protected override void WriteResult(ResultEntry result) + { + throw new NotSupportedException(); + } + } +} \ No newline at end of file diff --git a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportMultistageBusVehicle.cs b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportMultistageBusVehicle.cs new file mode 100644 index 0000000000000000000000000000000000000000..26aab4fc01faa04e468de6c5e075a8a2bcfcdcce --- /dev/null +++ b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportMultistageBusVehicle.cs @@ -0,0 +1,54 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using TUGraz.VectoCommon.Exceptions; +using TUGraz.VectoCore.Models.Declaration; +using TUGraz.VectoCore.Models.Simulation.Data; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile; + +namespace TUGraz.VectoCore.OutputData.XML +{ + /// <summary> + /// Create VIF of an interim (or the complete(d) step + /// </summary> + public class XMLDeclarationReportMultistageBusVehicle : XMLDeclarationReport + { + protected IXMLMultistepIntermediateReport _multistageBusReport; + + public XMLDeclarationReportMultistageBusVehicle(IReportWriter writer) + : base(writer, null,null) + { + throw new NotImplementedException(); + //throw new VectoException("Used here"); + //_multistageBusReport = new XMLMultistageBusReport(); + } + + public override void InitializeReport(VectoRunData modelData) + { + _multistageBusReport = + modelData.Exempted ? new XMLMultistageExemptedBusReport() : new XMLMultistageBusReport(); + _multistageBusReport.Initialize(modelData); + } + + protected override void GenerateReports() + { + _multistageBusReport.GenerateReport(); + } + + protected override void OutputReports() + { + Writer.WriteReport(ReportType.DeclarationReportMultistageVehicleXML, _multistageBusReport.Report); + } + + protected override void DoStoreResult(ResultEntry entry, VectoRunData runData, IModalDataContainer modData) + { + throw new NotSupportedException(); + } + protected override void WriteResult(ResultEntry result) + { + throw new NotSupportedException(); + } + } +} diff --git a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportPrimaryVehicle.cs b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportPrimaryVehicle.cs index 07dbb4d0ee70e2200d5e9f93d3aedfc6f37e5f24..ec3ef610649037a7e0333133ad15b725d033d6d9 100644 --- a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportPrimaryVehicle.cs +++ b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportPrimaryVehicle.cs @@ -1,40 +1,61 @@ using System; +using System.Collections.Generic; +using System.Linq; using System.Xml.Linq; using TUGraz.VectoCore.Models.Simulation.Data; -using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile; -using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile.VehicleInformationFile_0_1; -namespace TUGraz.VectoCore.OutputData.XML { +namespace TUGraz.VectoCore.OutputData.XML +{ + /// <summary> + /// Create MRF and VIF for primary bus + /// </summary> public class XMLDeclarationReportPrimaryVehicle : XMLDeclarationReport { - protected IXMLVehicleInformationFile VehicleInformationFile; + private readonly IVIFReportFactory _vifFactory; + protected IXMLVehicleInformationFile VehicleInformationFile; - public XMLDeclarationReportPrimaryVehicle(IReportWriter writer) : base(writer, true) - { - throw new NotSupportedException("Use new implementation!"); - } public override XDocument CustomerReport => null; public override XDocument PrimaryVehicleReport => VehicleInformationFile?.Report; + + public XMLDeclarationReportPrimaryVehicle(IReportWriter writer, + IManufacturerReportFactory mrfFactory, + IVIFReportFactory vifFactory) : base(writer, mrfFactory, null) + { + _vifFactory = vifFactory; + } + - #region Overrides of XMLDeclarationReport + #region Overrides of XMLDeclarationReport protected override void InstantiateReports(VectoRunData modelData) { - if (modelData.Exempted) { - ManufacturerRpt = new XMLManufacturerReportExeptedPrimaryBus(); - CustomerRpt = new XMLCustomerReportExemptedPrimaryBus(); - VehicleInformationFile = new XMLExemptedPrimaryBusVehicleReport(); + var vehicleData = modelData.VehicleData.InputData; + var iepc = vehicleData.Components?.IEPC != null; + var ihpc = + vehicleData.Components?.ElectricMachines?.Entries?.Count(e => e.ElectricMachine.IHPCType != "None") > 0; - } else { - ManufacturerRpt = new XMLManufacturerReportPrimaryBus(); - CustomerRpt = new XMLCustomerReport(); - VehicleInformationFile = new XMLPrimaryBusVehicleReport(); - } + ManufacturerRpt = _mrfFactory.GetManufacturerReport(vehicleData.VehicleCategory, + vehicleData.VehicleType, + vehicleData.ArchitectureID, + vehicleData.ExemptedVehicle, + iepc, + ihpc); + + VehicleInformationFile = _vifFactory.GetVIFReport(vehicleData.VehicleCategory, + vehicleData.VehicleType, + vehicleData.ArchitectureID, + vehicleData.ExemptedVehicle, + iepc, + ihpc); + + } @@ -44,9 +65,6 @@ namespace TUGraz.VectoCore.OutputData.XML { base.InitializeReport(modelData); VehicleInformationFile.Initialize(modelData); } - - - protected override void WriteResult(ResultEntry result) { base.WriteResult(result); @@ -57,18 +75,17 @@ namespace TUGraz.VectoCore.OutputData.XML { { ManufacturerRpt.GenerateReport(); var fullReportHash = GetSignature(ManufacturerRpt.Report); - CustomerRpt.GenerateReport(fullReportHash); + //CustomerRpt.GenerateReport(fullReportHash); VehicleInformationFile.GenerateReport(fullReportHash); } - + protected override void OutputReports() { Writer.WriteReport(ReportType.DeclarationReportManufacturerXML, ManufacturerRpt.Report); Writer.WriteReport(ReportType.DeclarationReportPrimaryVehicleXML, VehicleInformationFile.Report); } - #endregion } } \ No newline at end of file diff --git a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport_0_9.cs b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport_0_9.cs deleted file mode 100644 index 793ada402ec842a99348ba58b8d8a08f8e50eb89..0000000000000000000000000000000000000000 --- a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport_0_9.cs +++ /dev/null @@ -1,279 +0,0 @@ -using System; -using System.Linq; -using System.Xml.Linq; -using TUGraz.VectoCommon.Models; -using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Interfaces; -using TUGraz.VectoCore.Models.Simulation.Data; -using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9; -using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; -using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile; -using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile.VehicleInformationFile_0_1; - -namespace TUGraz.VectoCore.OutputData.XML -{ - /// <summary> - /// Create MRF and VIF for primary bus - /// </summary> - public class XMLDeclarationReportPrimaryVehicle_09 : XMLDeclarationReport09 - { - private readonly IManufacturerReportFactory _mrfFactory; - private readonly IVIFReportFactory _vifFactory; - - protected IXMLVehicleInformationFile VehicleInformationFile; - - public override XDocument CustomerReport => null; - - public override XDocument PrimaryVehicleReport => VehicleInformationFile?.Report; - - public XMLDeclarationReportPrimaryVehicle_09(IReportWriter writer, - IManufacturerReportFactory mrfFactory, - ICustomerInformationFileFactory cifFactory, - IVIFReportFactory vifFactory) : base(writer, mrfFactory, cifFactory) - { - _mrfFactory = mrfFactory; - //_cifFactory = cifFactory; - _vifFactory = vifFactory; - } - - public override void InitializeReport(VectoRunData modelData) - { - base.InitializeReport(modelData); - VehicleInformationFile.Initialize(modelData); - } - - - - protected override void WriteResult(ResultEntry result) - { - ManufacturerRpt.WriteResult(result); - //base.WriteResult(result); - VehicleInformationFile.WriteResult(result); - } - - protected override void GenerateReports() - { - ManufacturerRpt.GenerateReport(); - var fullReportHash = GetSignature(ManufacturerRpt.Report); - //CustomerRpt.GenerateReport(fullReportHash); - VehicleInformationFile.GenerateReport(fullReportHash); - } - - - - protected override void OutputReports() - { - Writer.WriteReport(ReportType.DeclarationReportManufacturerXML, ManufacturerRpt.Report); - Writer.WriteReport(ReportType.DeclarationReportPrimaryVehicleXML, VehicleInformationFile.Report); - } - - - - protected override void InstantiateReports(VectoRunData modelData) - { - var vehicleData = modelData.VehicleData.InputData; - var iepc = vehicleData.Components?.IEPC != null; - var ihpc = - vehicleData.Components?.ElectricMachines?.Entries?.Count(e => e.ElectricMachine.IHPCType != "None") > 0; - - ManufacturerRpt = _mrfFactory.GetManufacturerReport(vehicleData.VehicleCategory, - vehicleData.VehicleType, - vehicleData.ArchitectureID, - vehicleData.ExemptedVehicle, - iepc, - ihpc); - - VehicleInformationFile = _vifFactory.GetVIFReport(vehicleData.VehicleCategory, - vehicleData.VehicleType, - vehicleData.ArchitectureID, - vehicleData.ExemptedVehicle, - iepc, - ihpc); - - - } - - } - - // -------------------------------------------------- - - /// <summary> - /// Create VIF of an interim (or the complete(d) step - /// </summary> - public class XMLDeclarationReportInterimVehicle_09 : XMLDeclarationReport09 - { - protected readonly IVIFReportFactory _vifFactory; - - protected IXMLMultistepIntermediateReport MultistepIntermediateBusReport; - protected readonly IVIFReportInterimFactory _interimFactory; - - public XMLDeclarationReportInterimVehicle_09(IReportWriter writer, - IManufacturerReportFactory mrfFactory, - ICustomerInformationFileFactory cifFactory, - IVIFReportFactory vifFactory, IVIFReportInterimFactory interimFactory) : base(writer, mrfFactory, cifFactory) - { - _vifFactory = vifFactory; - _interimFactory = interimFactory; - } - - #region Overrides of XMLDeclarationReport - - protected override void InstantiateReports(VectoRunData modelData) - { - var vehicleData = modelData.VehicleData.InputData; - var iepc = vehicleData.Components?.IEPC != null; - var ihpc = - vehicleData.Components?.ElectricMachines?.Entries?.Count(e => e.ElectricMachine.IHPCType != "None") > 0; - - MultistepIntermediateBusReport = _interimFactory.GetInterimVIFReport(vehicleData.VehicleCategory, - vehicleData.VehicleType, - vehicleData.ArchitectureID, - vehicleData.ExemptedVehicle, - iepc, - ihpc); - } - - #endregion - - public override void InitializeReport(VectoRunData modelData) - { - //_multistageBusReport = - // modelData.Exempted ? new XMLMultistageExemptedBusReport() : new XMLMultistageBusReport(); - - InstantiateReports(modelData); - - MultistepIntermediateBusReport.Initialize(modelData); - } - - protected override void GenerateReports() - { - MultistepIntermediateBusReport.GenerateReport(); - } - - protected override void OutputReports() - { - Writer.WriteReport(ReportType.DeclarationReportMultistageVehicleXML, MultistepIntermediateBusReport.Report); - } - - protected override void DoStoreResult(ResultEntry entry, VectoRunData runData, IModalDataContainer modData) - { - throw new NotSupportedException(); - } - protected override void WriteResult(ResultEntry result) - { - throw new NotSupportedException(); - } - } - - - // -------------------------------------------------- - - /// <summary> - /// Create MRF and CIF of the complete(d) step - /// </summary> - public class XMLDeclarationReportCompletedVehicle_09 : XMLDeclarationReportCompletedVehicle - { - protected readonly ICustomerInformationFileFactory _cifFactory; - protected readonly IManufacturerReportFactory _mrfFactory; - - public XMLDeclarationReportCompletedVehicle_09(IReportWriter writer, IManufacturerReportFactory mrfFactory, - ICustomerInformationFileFactory cifFactory, - IVIFReportFactory vifFactory) : base(writer) - { - _cifFactory = cifFactory; - _mrfFactory = mrfFactory; - } - - #region Overrides of XMLDeclarationReportCompletedVehicle - - protected override void InstantiateReports(VectoRunData modelData) - { - var inputData = modelData.InputData as IXMLMultistageInputDataProvider; - var primaryVehicle = inputData.JobInputData.PrimaryVehicle.Vehicle; - - var ihpc = (primaryVehicle.Components?.ElectricMachines?.Entries)?.Count(electric => electric.ElectricMachine.IHPCType != "None") > 0; - var iepc = (primaryVehicle.Components?.IEPC != null); - ManufacturerRpt = _mrfFactory.GetManufacturerReport( - inputData.JobInputData.ConsolidateManufacturingStage.Vehicle.VehicleCategory, - inputData.JobInputData.JobType, - primaryVehicle.ArchitectureID, - primaryVehicle.ExemptedVehicle, - iepc, - ihpc); - - CustomerRpt = _cifFactory.GetCustomerReport( - inputData.JobInputData.ConsolidateManufacturingStage.Vehicle.VehicleCategory, - inputData.JobInputData.JobType, - primaryVehicle.ArchitectureID, - primaryVehicle.ExemptedVehicle, - iepc, - ihpc); - - } - - #endregion - } - // -------------------------------------------------- - - /// <summary> - /// Create MRF and CIF for lorries - /// </summary> - public class XMLDeclarationReport09 : XMLDeclarationReport - { - protected readonly IManufacturerReportFactory _mrfFactory; - protected readonly ICustomerInformationFileFactory _cifFactory; - - public XMLDeclarationReport09(IReportWriter writer, IManufacturerReportFactory mrfFactory, ICustomerInformationFileFactory cifFactory) : base(writer, true) - { - _mrfFactory = mrfFactory; - _cifFactory = cifFactory; - } - - protected override void InstantiateReports(VectoRunData modelData) - { - var vehicleData = modelData.VehicleData.InputData; - var iepc = vehicleData.Components?.IEPC != null; - var ihpc = - vehicleData.Components?.ElectricMachines?.Entries?.Count(e => e.ElectricMachine.IHPCType != "None") > 0; - - ManufacturerRpt = _mrfFactory.GetManufacturerReport(vehicleData.VehicleCategory, - vehicleData.VehicleType, - vehicleData.ArchitectureID, - vehicleData.ExemptedVehicle, - iepc, - ihpc); - CustomerRpt = _cifFactory.GetCustomerReport(vehicleData.VehicleCategory, - vehicleData.VehicleType, - vehicleData.ArchitectureID, - vehicleData.ExemptedVehicle, - iepc, - ihpc); - } - - } - - - public class XMLDeclarationReportSingleBus09 : XMLDeclarationReport09 - { - - public XMLDeclarationReportSingleBus09(IReportWriter writer, IManufacturerReportFactory mrfFactory, ICustomerInformationFileFactory cifFactory) : base(writer, mrfFactory, cifFactory) - { } - - protected override void InstantiateReports(VectoRunData modelData) - { - var vehicleData = modelData.VehicleData.InputData; - var iepc = vehicleData.Components?.IEPC != null; - var ihpc = - vehicleData.Components?.ElectricMachines?.Entries?.Count(e => e.ElectricMachine.IHPCType != "None") > 0; - - ManufacturerRpt = _mrfFactory.GetManufacturerReport(vehicleData.VehicleCategory, - vehicleData.VehicleType, - vehicleData.ArchitectureID, - vehicleData.ExemptedVehicle, - iepc, - ihpc); - // do not instantiate customer report for single bus - not fully implemented, not needed in the final application - } - - } - -} \ No newline at end of file diff --git a/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsHEV.cs b/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsHEV.cs index b6293e66e33bc049f5c29ed9c227fec504f8a4f2..dff94c49a100083325b9fbfdf298f0c767d947e9 100644 --- a/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsHEV.cs +++ b/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsHEV.cs @@ -524,25 +524,9 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS [TestCase] public void Class5_NoADAS_CaseI_HEV() => TestPCC(MethodBase.GetCurrentMethod().Name, - (537, 4200, OutsideSegment, Accelerate), // len: 3663m - (4200, 4223, OutsideSegment, Roll), // len: 23m - (4223, 4586, OutsideSegment, Accelerate), // len: 363m - (4586, 4605, OutsideSegment, Roll), // len: 19m - (4605, 4747, OutsideSegment, Accelerate), // len: 142m - (4747, 4762, OutsideSegment, Roll), // len: 15m - (4762, 4888, OutsideSegment, Accelerate), // len: 126m - (4888, 4900, OutsideSegment, Roll), // len: 12m - (4900, 4981, OutsideSegment, Accelerate), // len: 81m - (4981, 4994, OutsideSegment, Roll), // len: 13m - (4994, 5116, OutsideSegment, Accelerate), // len: 122m - (5116, 5133, OutsideSegment, Roll), // len: 17m - (5133, 5301, OutsideSegment, Accelerate), // len: 168m - (5301, 5323, OutsideSegment, Roll), // len: 22m - (5323, 5392, OutsideSegment, Accelerate), // len: 69m - (5392, 5475, OutsideSegment, Coast), // len: 83m - (5475, 6111, OutsideSegment, Brake), // len: 636m - (6111, 6397, OutsideSegment, Coast), // len: 286m - (6397, 1e6, OutsideSegment, Accelerate)); + (35, 420, OutsideSegment, Accelerate), // len: 385m + (420, 444, OutsideSegment, Roll), // len: 24m + (444, 1e6, OutsideSegment, Accelerate)); [TestCase] public void Class5_NoADAS_CaseJ_HEV() => TestPCC(MethodBase.GetCurrentMethod().Name, diff --git a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/BusAdapterTest.cs b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/BusAdapterTest.cs index bf60c084d9cefb45b4780bd30f9d901f52bd4a7c..9feaf26b611db47a675b56cfb9a7ff287e262611 100644 --- a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/BusAdapterTest.cs +++ b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/BusAdapterTest.cs @@ -105,7 +105,7 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries } [TestCase(12000, 1256, -48, -28, 8516.9257)] // smart PS active - power demand below engine drag - [TestCase(12000, 1256, 48, -28, 6087.0321)] // no smart aux active - positive power demand + [TestCase(12000, 1256, 48, -28, 5649.8149)] // no smart aux active - positive power demand [TestCase(12000, 800, -48, -28, 7844.2956)] // smart PS active - power demand below engine drag [TestCase(12000, 800, 48, -28, 5939.985)] // no smart aux active - positive power demand public void TestSmartAuxDuringBrake(double vehicleWeight, double engineSpeedRpm, double driveLinePower, diff --git a/VectoCore/VectoCoreTest/Integration/Declaration/HeavyLorry/LorrySimulation.cs b/VectoCore/VectoCoreTest/Integration/Declaration/HeavyLorry/LorrySimulation.cs index f9e0180dfae00ea2b5576dd8316f12841e575afc..e977aa5b51ff17fac86690c4a5e897b9f9108128 100644 --- a/VectoCore/VectoCoreTest/Integration/Declaration/HeavyLorry/LorrySimulation.cs +++ b/VectoCore/VectoCoreTest/Integration/Declaration/HeavyLorry/LorrySimulation.cs @@ -74,6 +74,8 @@ public class LorrySimulation private StandardKernel _kernel; private IXMLInputDataReader _xmlReader; + private XmlSchemaSet _cifSchema = XMLValidator.GetXMLSchema(XmlDocumentType.CustomerReport); + private XmlSchemaSet _mrfSchema = XMLValidator.GetXMLSchema(XmlDocumentType.ManufacturerReport); [OneTimeSetUp] public void OneTimeSetup() @@ -156,10 +158,8 @@ public class LorrySimulation var mrfPath = fileWriter.GetWrittenFiles()[ReportType.DeclarationReportManufacturerXML]; var cifPath = fileWriter.GetWrittenFiles()[ReportType.DeclarationReportCustomerXML]; - var cifSchema = XMLValidator.GetXMLSchema(XmlDocumentType.CustomerReport); - 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)); + 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); } @@ -947,7 +947,7 @@ public class LorrySimulation if (report == null) { return; //also used in engineering mode } - if (report is XMLDeclarationReport09 rep09) { + if (report is XMLDeclarationReport rep09) { GetField("_resultCount", rep09.GetType()).SetValue(rep09, count); diff --git a/VectoCore/VectoCoreTest/Integration/Multistage/MultistageVehicleTest.cs b/VectoCore/VectoCoreTest/Integration/Multistage/MultistageVehicleTest.cs index 8e4b47af188ab43d1b31cf8ad8aa5de9232a1102..db59c01f838b6e2f1c9cf262a455299a93f5cd3e 100644 --- a/VectoCore/VectoCoreTest/Integration/Multistage/MultistageVehicleTest.cs +++ b/VectoCore/VectoCoreTest/Integration/Multistage/MultistageVehicleTest.cs @@ -22,6 +22,8 @@ using TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory; using TUGraz.VectoCore.OutputData; using TUGraz.VectoCore.OutputData.FileIO; using TUGraz.VectoCore.OutputData.XML; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile.VehicleInformationFile_0_1; using TUGraz.VectoCore.Tests.Integration.Declaration; using TUGraz.VectoCore.Tests.Models.Simulation; using TUGraz.VectoCore.Utils; @@ -427,8 +429,10 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage var writer = new FileOutputWriter(outputFile); - var xmlreport = new XMLDeclarationReportPrimaryVehicle(writer); - var factory = SimulatorFactory.CreateSimulatorFactory(ExecutionMode.Declaration, inputData, writer); + var mrfFactory = _kernel.Get<IManufacturerReportFactory>(); + var vifFactory = _kernel.Get<IVIFReportFactory>(); + var xmlreport = new XMLDeclarationReportPrimaryVehicle(writer, mrfFactory, vifFactory); + var factory = SimulatorFactory.CreateSimulatorFactory(ExecutionMode.Declaration, inputData, writer, xmlreport); factory.WriteModalResults = true; factory.Validate = false; @@ -495,11 +499,11 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage private void TestTorqueLimitsData(IList<ITorqueLimitInputData> torqueLimits) { + Assert.AreEqual(1, torqueLimits[0].Gear); + Assert.AreEqual(2500, torqueLimits[0].MaxTorque.Value()); Assert.AreEqual(3, torqueLimits.Count); - Assert.AreEqual(6, torqueLimits[0].Gear); - Assert.AreEqual(1800, torqueLimits[0].MaxTorque.Value()); - Assert.AreEqual(1, torqueLimits[1].Gear); - Assert.AreEqual(2500, torqueLimits[1].MaxTorque.Value()); + Assert.AreEqual(6, torqueLimits[1].Gear); + Assert.AreEqual(1800, torqueLimits[1].MaxTorque.Value()); Assert.AreEqual(12, torqueLimits[2].Gear); Assert.AreEqual(1900, torqueLimits[2].MaxTorque.Value()); } @@ -737,7 +741,7 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage Assert.AreEqual(3.SI<Volt>(), capacitor.Voltage); Assert.AreEqual("Large Supply 2-stage", aux.PneumaticSupply.CompressorSize);//SizeOfAirSupply - Assert.AreEqual(CompressorDrive.electrically, aux.PneumaticSupply.CompressorDrive); + Assert.AreEqual(CompressorDrive.mechanically, aux.PneumaticSupply.CompressorDrive); Assert.AreEqual("none", aux.PneumaticSupply.Clutch); Assert.AreEqual(1.000, aux.PneumaticSupply.Ratio); Assert.AreEqual(false, aux.PneumaticSupply.SmartAirCompression); @@ -786,11 +790,11 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage new XAttribute(XMLNames.Report_Results_Fuel_Type_Attr, "Diesel CI"), new XElement(tns + XMLNames.Report_Result_EnergyConsumption, - new XAttribute(XMLNames.Report_Results_Unit_Attr, "MJ/km"), 16.93598)), - - new XElement(tns+ - XMLNames.Report_Results_CO2, new XAttribute(XMLNames.Report_Results_Unit_Attr, "g/km"), 1862.57 - ))); + new XAttribute(XMLNames.Report_Results_Unit_Attr, "MJ/km"), 16.93598)) + //new XElement(tns+ + // XMLNames.Report_Results_CO2, new XAttribute(XMLNames.Report_Results_Unit_Attr, "g/km"), 1862.57 + //) + )); return results; diff --git a/VectoCore/VectoCoreTest/Integration/XMLReportTest.cs b/VectoCore/VectoCoreTest/Integration/XMLReportTest.cs index f54f2bc4184df981ed98ef202d6fbc33c16b0a96..df989b590310b9f545d3776d01250d4d6244ff92 100644 --- a/VectoCore/VectoCoreTest/Integration/XMLReportTest.cs +++ b/VectoCore/VectoCoreTest/Integration/XMLReportTest.cs @@ -49,6 +49,8 @@ using TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory; using TUGraz.VectoCore.OutputData; using TUGraz.VectoCore.OutputData.FileIO; using TUGraz.VectoCore.OutputData.XML; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; using TUGraz.VectoCore.Tests.Utils; using TUGraz.VectoCore.Tests.XML; using TUGraz.VectoCore.Utils; @@ -100,9 +102,9 @@ namespace TUGraz.VectoCore.Tests.Integration // no need to run the simulation, we only check whether the meta-data is correct, no results are considered //jobContainer.Execute(); //jobContainer.WaitFinished(); - (xmlReport as XMLDeclarationReport09).DoWriteReport(); + (xmlReport as XMLDeclarationReport).DoWriteReport(); - var manufacturerReport = (xmlReport as XMLDeclarationReport09).FullReport; + var manufacturerReport = (xmlReport as XMLDeclarationReport).FullReport; Assert.AreEqual(5, manufacturerReport.XPathSelectElement("//*[local-name()='VehicleGroup']")?.Value.ToInt()); @@ -155,9 +157,9 @@ namespace TUGraz.VectoCore.Tests.Integration // no need to run the simulation, we only check whether the meta-data is correct, no results are considered jobContainer.Execute(); jobContainer.WaitFinished(); - (xmlReport as XMLDeclarationReport09).DoWriteReport(); + (xmlReport as XMLDeclarationReport).DoWriteReport(); - var customerReport = (xmlReport as XMLDeclarationReport09).CustomerReport; + var customerReport = (xmlReport as XMLDeclarationReport).CustomerReport; //check if the customerReport contains the summary XML-Element Assert.AreNotEqual(null,customerReport.XPathSelectElement("//*[local-name()='Summary']")); @@ -190,10 +192,10 @@ namespace TUGraz.VectoCore.Tests.Integration jobContainer.Execute(); jobContainer.WaitFinished(); - var mrfValidator = GetValidator((xmlReport as XMLDeclarationReport09).FullReport); + var mrfValidator = GetValidator((xmlReport as XMLDeclarationReport).FullReport); mrfValidator.ValidateXML(XmlDocumentType.DeclarationComponentData | XmlDocumentType.DeclarationJobData | XmlDocumentType.CustomerReport | XmlDocumentType.ManufacturerReport); - var cifValidator = GetValidator((xmlReport as XMLDeclarationReport09).CustomerReport); + var cifValidator = GetValidator((xmlReport as XMLDeclarationReport).CustomerReport); cifValidator.ValidateXML(XmlDocumentType.DeclarationComponentData | XmlDocumentType.DeclarationJobData | XmlDocumentType.CustomerReport | XmlDocumentType.ManufacturerReport); //var monitoringValidator = GetValidator(xmlReport.MonitoringReport); @@ -279,9 +281,9 @@ namespace TUGraz.VectoCore.Tests.Integration //}; jobContainer.AddRuns(runsFactory); - (xmlReport as XMLDeclarationReport09).DoWriteReport(); + (xmlReport as XMLDeclarationReport).DoWriteReport(); - var manufacturerReport = (xmlReport as XMLDeclarationReport09).FullReport; + var manufacturerReport = (xmlReport as XMLDeclarationReport).FullReport; Assert.AreEqual( ptoGearWheel != "none", @@ -319,23 +321,23 @@ namespace TUGraz.VectoCore.Tests.Integration // no need to run the simulation, we only check whether the meta-data is correct, no results are considered //jobContainer.Execute(); //jobContainer.WaitFinished(); - (xmlReport as XMLDeclarationReport09).DoWriteReport(); + (xmlReport as XMLDeclarationReport).DoWriteReport(); var inputHash = VectoHash.Load(jobfile); - var mrfDigestData = new DigestData((xmlReport as XMLDeclarationReport09).FullReport.Document.XPathSelectElement("//*[local-name()='InputDataSignature']")); + var mrfDigestData = new DigestData((xmlReport as XMLDeclarationReport).FullReport.Document.XPathSelectElement("//*[local-name()='InputDataSignature']")); var mrfInputDigest = inputHash.ComputeHash(mrfDigestData.CanonicalizationMethods, mrfDigestData.DigestMethod); Assert.AreEqual(mrfInputDigest, mrfDigestData.DigestValue); - var cifDigestData = new DigestData((xmlReport as XMLDeclarationReport09).CustomerReport.Document.XPathSelectElement("//*[local-name()='InputDataSignature']")); + var cifDigestData = new DigestData((xmlReport as XMLDeclarationReport).CustomerReport.Document.XPathSelectElement("//*[local-name()='InputDataSignature']")); var cifInputDigest = inputHash.ComputeHash(cifDigestData.CanonicalizationMethods, cifDigestData.DigestMethod); Assert.AreEqual(cifInputDigest, cifDigestData.DigestValue); var mrfHash = VectoHash.Load(writer.XMLFullReportName); - var mrfCifDigestData = new DigestData((xmlReport as XMLDeclarationReport09).CustomerReport.Document.XPathSelectElement("//*[local-name()='ManufacturerRecordSignature']")); + var mrfCifDigestData = new DigestData((xmlReport as XMLDeclarationReport).CustomerReport.Document.XPathSelectElement("//*[local-name()='ManufacturerRecordSignature']")); var mrfCifDigest = mrfHash.ComputeHash(mrfCifDigestData.CanonicalizationMethods, mrfCifDigestData.DigestMethod); Assert.AreEqual(mrfCifDigest, mrfCifDigestData.DigestValue); @@ -368,7 +370,7 @@ namespace TUGraz.VectoCore.Tests.Integration // no need to run the simulation, we only check whether the meta-data is correct, no results are considered //jobContainer.Execute(); //jobContainer.WaitFinished(); - (xmlReport as XMLDeclarationReport09).DoWriteReport(); + (xmlReport as XMLDeclarationReport).DoWriteReport(); } } } diff --git a/VectoCore/VectoCoreTest/Models/Declaration/DataAdapter/DeclarationAdapterCreateVocationalVehicleTest.cs b/VectoCore/VectoCoreTest/Models/Declaration/DataAdapter/DeclarationAdapterCreateVocationalVehicleTest.cs index 65a174c01fb33e6fd621299405062ca63e3a02d7..169f6f2b96419dfb4a013bd52e5884dfefcb81bf 100644 --- a/VectoCore/VectoCoreTest/Models/Declaration/DataAdapter/DeclarationAdapterCreateVocationalVehicleTest.cs +++ b/VectoCore/VectoCoreTest/Models/Declaration/DataAdapter/DeclarationAdapterCreateVocationalVehicleTest.cs @@ -11,6 +11,8 @@ using TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory; using TUGraz.VectoCore.OutputData; using TUGraz.VectoCore.OutputData.FileIO; using TUGraz.VectoCore.OutputData.XML; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; using TUGraz.VectoCore.Utils; namespace TUGraz.VectoCore.Tests.Models.Declaration.DataAdapter @@ -60,7 +62,6 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration.DataAdapter var xmlReport = _kernel.Get<IXMLDeclarationReportFactory>().CreateReport(dataProvider, writer); var sumData = new SummaryDataContainer(null); var jobContainer = new JobContainer(sumData); - var runsFactory = SimulatorFactory.CreateSimulatorFactory(ExecutionMode.Declaration, dataProvider, null, xmlReport); runsFactory.WriteModalResults = false; runsFactory.Validate = false; @@ -69,9 +70,9 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration.DataAdapter // no need to run the simulation, we only check whether the meta-data is correct, no results are considered //jobContainer.Execute(); //jobContainer.WaitFinished(); - (xmlReport as XMLDeclarationReport09).DoWriteReport(); + (xmlReport as XMLDeclarationReport).DoWriteReport(); - var manufacturerReport = (xmlReport as XMLDeclarationReport09).FullReport; + var manufacturerReport = (xmlReport as XMLDeclarationReport).FullReport; Assert.IsFalse(XmlConvert.ToBoolean(manufacturerReport.XPathSelectElement(XMLHelper.QueryLocalName(XMLNames.Vehicle_VocationalVehicle))?.Value ?? "")); } diff --git a/VectoCore/VectoCoreTest/Reports/SumWriterTest.cs b/VectoCore/VectoCoreTest/Reports/SumWriterTest.cs index 09b4c268ea9538a93ff014b903a46b69f622f854..6c850242d0ecd1881f49be96a86743d8555ef64f 100644 --- a/VectoCore/VectoCoreTest/Reports/SumWriterTest.cs +++ b/VectoCore/VectoCoreTest/Reports/SumWriterTest.cs @@ -53,6 +53,8 @@ using TUGraz.VectoCore.InputData.Reader.ComponentData; using TUGraz.VectoCore.Models.Declaration; using TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory; using TUGraz.VectoCore.Models.SimulationComponent.Data; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; namespace TUGraz.VectoCore.Tests.Reports { @@ -99,6 +101,13 @@ namespace TUGraz.VectoCore.Tests.Reports DriverData = new DriverData() { EngineStopStart = new DriverData.EngineStopStartData() }, + Aux = new List<VectoRunData.AuxData>() { + new() { + ID = "FAN", + PowerDemandMech = 3000.SI<Watt>(), + Technology = new List<string>() {"FanTech"} + } + } }; var modData = new ModalDataContainer(rundata, writer, null); modData.Data.CreateColumns(ModalResults.DistanceCycleSignals); @@ -191,6 +200,13 @@ namespace TUGraz.VectoCore.Tests.Reports DriverData = new DriverData() { EngineStopStart = new DriverData.EngineStopStartData() }, + Aux = new List<VectoRunData.AuxData>() { + new() { + ID = "FAN", + PowerDemandMech = 3000.SI<Watt>(), + Technology = new List<string>() {"FanTech"} + } + } }; var modData = new ModalDataContainer(rundata, writer, null); modData.Data.CreateColumns(ModalResults.DistanceCycleSignals); diff --git a/VectoCore/VectoCoreTest/TestData/Integration/Buses/FactorMethod/VIF/vecto_vehicle-primary_heavyBus_ESS_electricFanSTP.RSLT_VIF.xml b/VectoCore/VectoCoreTest/TestData/Integration/Buses/FactorMethod/VIF/vecto_vehicle-primary_heavyBus_ESS_electricFanSTP.RSLT_VIF.xml new file mode 100644 index 0000000000000000000000000000000000000000..d564477b67997c8fa895a50beebc98fbf9957fea --- /dev/null +++ b/VectoCore/VectoCoreTest/TestData/Integration/Buses/FactorMethod/VIF/vecto_vehicle-primary_heavyBus_ESS_electricFanSTP.RSLT_VIF.xml @@ -0,0 +1,533 @@ +<?xml version="1.0" encoding="utf-8"?> +<VectoOutputMultistep xmlns="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1" +xmlns:vif="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1" +xmlns:di="http://www.w3.org/2000/09/xmldsig#" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.1="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.3" xmlns:vif0.1="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1 ./../../../../../VectoCore/Resources/XSD/VectoOutputMultistep.0.1.xsd"> + <PrimaryVehicle> + <Data xsi:type="PrimaryVehicleDataType" id="VIF-65de7efe65ee4b4cac4c"> + <Vehicle xsi:type="ConventionalVehicleVIFType"> + <Manufacturer>Generic Truck Manufacturer</Manufacturer> + <ManufacturerAddress>Street, ZIP City</ManufacturerAddress> + <Model>Generic Model</Model> + <VIN>VEH-1234567890_nonSmart</VIN> + <Date>2017-02-15T11:00:00Z</Date> + <LegislativeCategory>M3</LegislativeCategory> + <ChassisConfiguration>Bus</ChassisConfiguration> + <AxleConfiguration>4x2</AxleConfiguration> + <Articulated>false</Articulated> + <TechnicalPermissibleMaximumLadenMass>40000</TechnicalPermissibleMaximumLadenMass> + <IdlingSpeed>600</IdlingSpeed> + <RetarderType>Transmission Output Retarder</RetarderType> + <RetarderRatio>1.000</RetarderRatio> + <AngledriveType>None</AngledriveType> + <ZeroEmissionVehicle>false</ZeroEmissionVehicle> + <vif:ADAS xsi:type="ADAS_Conventional_Type" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.4"> + <EngineStopStart>true</EngineStopStart> + <EcoRollWithoutEngineStop>false</EcoRollWithoutEngineStop> + <EcoRollWithEngineStop>true</EcoRollWithEngineStop> + <PredictiveCruiseControl>none</PredictiveCruiseControl> + </vif:ADAS> + <TorqueLimits xmlns:tcl="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xsi:type="tcl:TorqueLimitsType"> + <tcl:Entry gear="6" maxTorque="1800"/> + <tcl:Entry gear="1" maxTorque="2500"/> + <tcl:Entry gear="12" maxTorque="1900"/> + </TorqueLimits> + <Components xsi:type="Vehicle_Conventional_ComponentsVIFType"> + <Engine> + <Data xsi:type="EngineDataVIFType"> + <Manufacturer>Generic Engine Manufacturer</Manufacturer> + <Model>Generic 40t Long Haul Truck Engine</Model> + <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> + <Date>2017-02-15T11:00:00Z</Date> + <AppVersion>VectoEngine x.y</AppVersion> + <Displacement>12730</Displacement> + <RatedSpeed>2200</RatedSpeed> + <RatedPower>380000</RatedPower> + <MaxEngineTorque>2400</MaxEngineTorque> + <WHRType> + <MechanicalOutputICE>false</MechanicalOutputICE> + <MechanicalOutputDrivetrain>false</MechanicalOutputDrivetrain> + <ElectricalOutput>false</ElectricalOutput> + </WHRType> + <Mode> + <IdlingSpeed>560</IdlingSpeed> + <FullLoadAndDragCurve> + <Entry engineSpeed="560.00" maxTorque="1180.00" dragTorque="-149.00"/> + <Entry engineSpeed="600.00" maxTorque="1282.00" dragTorque="-148.00"/> + <Entry engineSpeed="800.00" maxTorque="1791.00" dragTorque="-149.00"/> + <Entry engineSpeed="1000.00" maxTorque="2300.00" dragTorque="-160.00"/> + <Entry engineSpeed="1200.00" maxTorque="2300.00" dragTorque="-179.00"/> + <Entry engineSpeed="1400.00" maxTorque="2300.00" dragTorque="-203.00"/> + <Entry engineSpeed="1600.00" maxTorque="2079.00" dragTorque="-235.00"/> + <Entry engineSpeed="1800.00" maxTorque="1857.00" dragTorque="-264.00"/> + <Entry engineSpeed="2000.00" maxTorque="1352.00" dragTorque="-301.00"/> + <Entry engineSpeed="2100.00" maxTorque="1100.00" dragTorque="-320.00"/> + </FullLoadAndDragCurve> + <Fuels> + <FuelType>NG CI</FuelType> + </Fuels> + </Mode> + </Data> + </Engine> + <Transmission> + <Data xsi:type="TransmissionDataVIFType"> + <Manufacturer>Generic Gearbox Manufacturer</Manufacturer> + <Model>Generic 40t Long Haul Truck Gearbox</Model> + <MainCertificationMethod>Standard values</MainCertificationMethod> + <Date>2017-01-11T11:00:00Z</Date> + <AppVersion>3.0.1</AppVersion> + <TransmissionType>AMT</TransmissionType> + <Gears xsi:type="TransmissionGearsVIFType"> + <Gear number="1"> + <Ratio>14.930</Ratio> + <MaxTorque>1900</MaxTorque> + <MaxSpeed>2000</MaxSpeed> + </Gear> + <Gear number="2"> + <Ratio>11.640</Ratio> + <MaxTorque>1900</MaxTorque> + <MaxSpeed>2000</MaxSpeed> + </Gear> + <Gear number="3"> + <Ratio>9.020</Ratio> + <MaxSpeed>2000</MaxSpeed> + </Gear> + <Gear number="4"> + <Ratio>7.040</Ratio> + <MaxSpeed>2000</MaxSpeed> + </Gear> + <Gear number="5"> + <Ratio>5.640</Ratio> + <MaxSpeed>2000</MaxSpeed> + </Gear> + <Gear number="6"> + <Ratio>4.400</Ratio> + <MaxSpeed>2000</MaxSpeed> + </Gear> + <Gear number="7"> + <Ratio>3.390</Ratio> + <MaxSpeed>2000</MaxSpeed> + </Gear> + <Gear number="8"> + <Ratio>2.650</Ratio> + <MaxSpeed>2000</MaxSpeed> + </Gear> + <Gear number="9"> + <Ratio>2.050</Ratio> + <MaxSpeed>2000</MaxSpeed> + </Gear> + <Gear number="10"> + <Ratio>1.600</Ratio> + <MaxSpeed>2000</MaxSpeed> + </Gear> + <Gear number="11"> + <Ratio>1.280</Ratio> + <MaxSpeed>2000</MaxSpeed> + </Gear> + <Gear number="12"> + <Ratio>1.000</Ratio> + </Gear> + </Gears> + </Data> + </Transmission> + <Axlegear> + <Data xsi:type="AxlegearDataVIFType"> + <Manufacturer>Generic Gearbox Manufacturer</Manufacturer> + <Model>Generic 40t Long Haul Truck AxleGear</Model> + <CertificationMethod>Standard values</CertificationMethod> + <Date>2017-01-11T11:00:00Z</Date> + <AppVersion>3.0.1</AppVersion> + <LineType>Single portal axle</LineType> + <Ratio>2.590</Ratio> + </Data> + </Axlegear> + <AxleWheels> + <Data xsi:type="AxleWheelsDataVIFType"> + <Axles> + <vif0.1:Axle axleNumber="1" xsi:type="AxleDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0"> + <AxleType>VehicleNonDriven</AxleType> + <TwinTyres>false</TwinTyres> + <Steered>true</Steered> + <Tyre> + <Data id="WHL-5432198760-315-70-R22.5" xsi:type="TyreDataDeclarationType"> + <Manufacturer>Generic Wheels Manufacturer</Manufacturer> + <Model>Generic Wheel</Model> + <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> + <Date>2017-01-11T14:00:00Z</Date> + <AppVersion>Tyre Generation App 1.0</AppVersion> + <Dimension>315/70 R22.5</Dimension> + <RRCDeclared>0.0055</RRCDeclared> + <FzISO>31300</FzISO> + </Data> + <Signature> + <di:Reference URI="#WHL-5432198760-315-70-R22.5" xmlns:di="http://www.w3.org/2000/09/xmldsig#"> + <di:Transforms> + <di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/> + <di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> + </di:Transforms> + <di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> + <di:DigestValue>4TkUGQTX8tevHOU9Cj9uyCFuI/aqcEYlo/gyVjVQmv0=</di:DigestValue> + </di:Reference> + </Signature> + </Tyre> + </vif0.1:Axle> + <vif0.1:Axle axleNumber="2" xsi:type="AxleDataDeclarationType" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0"> + <AxleType>VehicleDriven</AxleType> + <TwinTyres>true</TwinTyres> + <Steered>false</Steered> + <Tyre> + <Data id="WHL-5432198760-315-70-R22.5" xsi:type="TyreDataDeclarationType"> + <Manufacturer>Generic Wheels Manufacturer</Manufacturer> + <Model>Generic Wheel</Model> + <CertificationNumber>e12*0815/8051*2017/05E0000*00</CertificationNumber> + <Date>2017-01-11T14:00:00Z</Date> + <AppVersion>Tyre Generation App 1.0</AppVersion> + <Dimension>315/70 R22.5</Dimension> + <RRCDeclared>0.0063</RRCDeclared> + <FzISO>31300</FzISO> + </Data> + <Signature> + <di:Reference URI="#WHL-5432198760-315-70-R22.5" xmlns:di="http://www.w3.org/2000/09/xmldsig#"> + <di:Transforms> + <di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/> + <di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> + </di:Transforms> + <di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> + <di:DigestValue>KljvtvGUUQ/L7MiLVAqU+bckL5PNDNNwdeLH9kUVrfM=</di:DigestValue> + </di:Reference> + </Signature> + </Tyre> + </vif0.1:Axle> + </Axles> + </Data> + </AxleWheels> + <Auxiliaries> + <Data xsi:type="AUX_Conventional_PrimaryBusType"> + <Fan> + <Technology>Electrically driven - Electronically controlled</Technology> + </Fan> + <SteeringPump> + <Technology axleNumber="1">Full electric steering gear</Technology> + </SteeringPump> + <ElectricSystem> + <AlternatorTechnology>conventional</AlternatorTechnology> + <SupplyFromHEVPossible>false</SupplyFromHEVPossible> + </ElectricSystem> + <PneumaticSystem> + <SizeOfAirSupply>Large Supply 2-stage</SizeOfAirSupply> + <CompressorDrive>mechanically</CompressorDrive> + <Clutch>none</Clutch> + <CompressorRatio>1.000</CompressorRatio> + <SmartCompressionSystem>false</SmartCompressionSystem> + <SmartRegenerationSystem>false</SmartRegenerationSystem> + <AirsuspensionControl>electronically</AirsuspensionControl> + <PneumaticSCRReagentDosing>true</PneumaticSCRReagentDosing> + </PneumaticSystem> + <HVAC> + <AdjustableCoolantThermostat>true</AdjustableCoolantThermostat> + <EngineWasteGasHeatExchanger>true</EngineWasteGasHeatExchanger> + </HVAC> + </Data> + </Auxiliaries> + </Components> + </Vehicle> + <InputDataSignature> + <di:Reference URI="#VEH-PrimaryBus_nonSmart"> + <di:Transforms> + <di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/> + <di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> + </di:Transforms> + <di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> + <di:DigestValue>4C7sfmETI+wy6CMQq+MZK1MO8SRxRiZu+3rQ3GUfko4=</di:DigestValue> + </di:Reference> + </InputDataSignature> + <ManufacturerRecordSignature> + <di:Reference URI="#RESULT-bc20a2dbfee54190ae90"> + <di:Transforms> + <di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/> + <di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> + </di:Transforms> + <di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> + <di:DigestValue>+0Hg3i3G7tHlYHM2JxapJje6Ca3nE5EXZVTNdgkeyMo=</di:DigestValue> + </di:Reference> + </ManufacturerRecordSignature> + <Results> + <Status>success</Status> + <Result status="success"> + <PrimaryVehicleSubgroup>P31SD</PrimaryVehicleSubgroup> + <Mission>Heavy Urban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">13098.63</TotalVehicleMass> + <Payload unit="kg">1123.63</Payload> + <PassengerCount>16.52</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">17.81185</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P31SD</PrimaryVehicleSubgroup> + <Mission>Heavy Urban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">17593.16</TotalVehicleMass> + <Payload unit="kg">5618.16</Payload> + <PassengerCount>82.62</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">21.37501</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P31SD</PrimaryVehicleSubgroup> + <Mission>Urban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">13098.63</TotalVehicleMass> + <Payload unit="kg">1123.63</Payload> + <PassengerCount>16.52</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">14.37972</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P31SD</PrimaryVehicleSubgroup> + <Mission>Urban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">17593.16</TotalVehicleMass> + <Payload unit="kg">5618.16</Payload> + <PassengerCount>82.62</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">17.36588</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P31SD</PrimaryVehicleSubgroup> + <Mission>Suburban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">13098.63</TotalVehicleMass> + <Payload unit="kg">1123.63</Payload> + <PassengerCount>16.52</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">12.72559</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P31SD</PrimaryVehicleSubgroup> + <Mission>Suburban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">17593.16</TotalVehicleMass> + <Payload unit="kg">5618.16</Payload> + <PassengerCount>82.62</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">15.58182</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P31DD</PrimaryVehicleSubgroup> + <Mission>Heavy Urban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">13543.34</TotalVehicleMass> + <Payload unit="kg">1193.34</Payload> + <PassengerCount>17.55</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">18.89946</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P31DD</PrimaryVehicleSubgroup> + <Mission>Heavy Urban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">18316.69</TotalVehicleMass> + <Payload unit="kg">5966.69</Payload> + <PassengerCount>87.75</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">22.89746</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P31DD</PrimaryVehicleSubgroup> + <Mission>Urban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">13543.34</TotalVehicleMass> + <Payload unit="kg">1193.34</Payload> + <PassengerCount>17.55</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">15.23384</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P31DD</PrimaryVehicleSubgroup> + <Mission>Urban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">18316.69</TotalVehicleMass> + <Payload unit="kg">5966.69</Payload> + <PassengerCount>87.75</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">18.56793</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P31DD</PrimaryVehicleSubgroup> + <Mission>Suburban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">13543.34</TotalVehicleMass> + <Payload unit="kg">1193.34</Payload> + <PassengerCount>17.55</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">13.41841</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P31DD</PrimaryVehicleSubgroup> + <Mission>Suburban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">18316.69</TotalVehicleMass> + <Payload unit="kg">5966.69</Payload> + <PassengerCount>87.75</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">16.61045</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P32SD</PrimaryVehicleSubgroup> + <Mission>Interurban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">14029.90</TotalVehicleMass> + <Payload unit="kg">1075.44</Payload> + <PassengerCount>12.39</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">10.88604</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P32SD</PrimaryVehicleSubgroup> + <Mission>Interurban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">16669.61</TotalVehicleMass> + <Payload unit="kg">3519.61</Payload> + <PassengerCount>49.57</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">12.24260</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P32SD</PrimaryVehicleSubgroup> + <Mission>Coach</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">14244.99</TotalVehicleMass> + <Payload unit="kg">1094.99</Payload> + <PassengerCount>15.42</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">8.63290</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P32SD</PrimaryVehicleSubgroup> + <Mission>Coach</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">15887.48</TotalVehicleMass> + <Payload unit="kg">2737.48</Payload> + <PassengerCount>38.56</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">9.09409</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P32DD</PrimaryVehicleSubgroup> + <Mission>Interurban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">14452.35</TotalVehicleMass> + <Payload unit="kg">1052.35</Payload> + <PassengerCount>14.82</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">11.25244</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P32DD</PrimaryVehicleSubgroup> + <Mission>Interurban</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">17609.41</TotalVehicleMass> + <Payload unit="kg">4209.41</Payload> + <PassengerCount>59.29</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">12.91147</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P32DD</PrimaryVehicleSubgroup> + <Mission>Coach</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">14747.01</TotalVehicleMass> + <Payload unit="kg">1347.01</Payload> + <PassengerCount>18.97</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">9.09497</EnergyConsumption> + </Fuel> + </Result> + <Result status="success"> + <PrimaryVehicleSubgroup>P32DD</PrimaryVehicleSubgroup> + <Mission>Coach</Mission> + <SimulationParameters> + <TotalVehicleMass unit="kg">16767.53</TotalVehicleMass> + <Payload unit="kg">3367.53</Payload> + <PassengerCount>47.43</PassengerCount> + <FuelMode>single fuel mode</FuelMode> + </SimulationParameters> + <Fuel type="NG CI"> + <EnergyConsumption unit="MJ/km">9.65550</EnergyConsumption> + </Fuel> + </Result> + </Results> + <ApplicationInformation> + <SimulationToolVersion>0.6.1.1957-DEV !!NOT FOR CERTIFICATION!!</SimulationToolVersion> + <Date>2020-05-27T08:24:31.2197913Z</Date> + </ApplicationInformation> + </Data> + <Signature> + <di:Reference URI="#VIF-65de7efe65ee4b4cac4c"> + <di:Transforms> + <di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/> + <di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> + </di:Transforms> + <di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> + <di:DigestValue>MgGDNMXm8x2CI30U7X27ZFWn9cqjTnylZGA0nHA6xtM=</di:DigestValue> + </di:Reference> + </Signature> + </PrimaryVehicle> +</VectoOutputMultistep> diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P2/P2 Group 5_LimitVehiclePropTq.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P2/P2 Group 5_LimitVehiclePropTq.vecto index 1d9670246f14cfeadbea10e851c1bb20d8534eeb..cd2de6775748e972587df0f68c1ba5fbb00f6b56 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P2/P2 Group 5_LimitVehiclePropTq.vecto +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P2/P2 Group 5_LimitVehiclePropTq.vecto @@ -17,7 +17,6 @@ "AuxiliaryAssembly": "Classic", "AuxiliaryVersion": "CLASSIC", "AdvancedAuxiliaryFilePath": "", - "Aux": [], "Padd": 3000.0, "Padd_electric": 0.0, "VACC": "Vehicle\\Truck.vacc", diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/P3 APT Group 5_LimitVehiclePropTq.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/P3 APT Group 5_LimitVehiclePropTq.vecto index 66759402c4058b416d4a5ebf4210e032a5f1bab0..a739bc00dcfaf077175efacf28c2cb83ba953020 100644 --- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/P3 APT Group 5_LimitVehiclePropTq.vecto +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/P3 APT Group 5_LimitVehiclePropTq.vecto @@ -17,7 +17,6 @@ "AuxiliaryAssembly": "Classic", "AuxiliaryVersion": "CLASSIC", "AdvancedAuxiliaryFilePath": "", - "Aux": [], "Padd": 3000.0, "Padd_electric": 0.0, "VACC": "Vehicle\\Truck.vacc", diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/Vehicle/VehicleMaxPropulsionTorque.vtqp b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/Vehicle/VehicleMaxPropulsionTorque.vtqp new file mode 100644 index 0000000000000000000000000000000000000000..a7bfb2481d9bbf2ee1bc96309e3f4ced5192d9e1 --- /dev/null +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/Vehicle/VehicleMaxPropulsionTorque.vtqp @@ -0,0 +1,4 @@ +n [rpm], T_drive [Nm] +0,1200 +600, 0 +3000, 0 \ No newline at end of file diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/Vehicle/VehicleMaxPropulsionTorque_2.vtqp b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/Vehicle/VehicleMaxPropulsionTorque_2.vtqp new file mode 100644 index 0000000000000000000000000000000000000000..6cf17e786c9dde625cf7a415457899af420c6e0f --- /dev/null +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/Vehicle/VehicleMaxPropulsionTorque_2.vtqp @@ -0,0 +1,4 @@ +n [rpm], T_drive [Nm] +0,1200 +600, 500 +3000, 500 \ No newline at end of file diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/P4_APT/Vehicle/VehicleMaxPropulsionTorque.vtqp b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/P4_APT/Vehicle/VehicleMaxPropulsionTorque.vtqp new file mode 100644 index 0000000000000000000000000000000000000000..a7bfb2481d9bbf2ee1bc96309e3f4ced5192d9e1 --- /dev/null +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/P4_APT/Vehicle/VehicleMaxPropulsionTorque.vtqp @@ -0,0 +1,4 @@ +n [rpm], T_drive [Nm] +0,1200 +600, 0 +3000, 0 \ No newline at end of file diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_1_i=3-49.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_1_i=3-49.vtlm new file mode 100644 index 0000000000000000000000000000000000000000..5e25d590800c006073435dc6f634f14e0848cbb4 --- /dev/null +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_1_i=3-49.vtlm @@ -0,0 +1,202 @@ +Input Speed [1/min], Input Torque [Nm], Torque Loss [Nm] +0,0,48 +0,200,56 +0,400,64 +0,600,72 +0,900,84 +0,1200,96 +0,1600,112 +0,2000,128 +0,2500,148 +600,0,48 +600,200,56 +600,400,64 +600,600,72 +600,900,84 +600,1200,96 +600,1600,112 +600,2000,128 +600,2500,148 +900,0,57 +900,200,65 +900,400,73 +900,600,81 +900,900,93 +900,1200,105 +900,1600,121 +900,2000,137 +900,2500,157 +1200,0,66 +1200,200,74 +1200,400,82 +1200,600,90 +1200,900,102 +1200,1200,114 +1200,1600,130 +1200,2000,146 +1200,2500,166 +1600,0,78 +1600,200,86 +1600,400,94 +1600,600,102 +1600,900,114 +1600,1200,126 +1600,1600,142 +1600,2000,158 +1600,2500,178 +2000,0,90 +2000,200,98 +2000,400,106 +2000,600,114 +2000,900,126 +2000,1200,138 +2000,1600,154 +2000,2000,170 +2000,2500,190 +2500,0,105 +2500,200,113 +2500,400,121 +2500,600,129 +2500,900,141 +2500,1200,153 +2500,1600,169 +2500,2000,185 +2500,2500,205 +3000,0,120 +3000,200,128 +3000,400,136 +3000,600,144 +3000,900,156 +3000,1200,168 +3000,1600,184 +3000,2000,200 +3000,2500,220 +600,0,48 +600,-200,56 +600,-400,64 +600,-600,72 +600,-900,84 +600,-1200,96 +600,-1600,112 +600,-2000,128 +600,-2500,148 +900,0,57 +900,-200,65 +900,-400,73 +900,-600,81 +900,-900,93 +900,-1200,105 +900,-1600,121 +900,-2000,137 +900,-2500,157 +1200,0,66 +1200,-200,74 +1200,-400,82 +1200,-600,90 +1200,-900,102 +1200,-1200,114 +1200,-1600,130 +1200,-2000,146 +1200,-2500,166 +1600,0,78 +1600,-200,86 +1600,-400,94 +1600,-600,102 +1600,-900,114 +1600,-1200,126 +1600,-1600,142 +1600,-2000,158 +1600,-2500,178 +2000,0,90 +2000,-200,98 +2000,-400,106 +2000,-600,114 +2000,-900,126 +2000,-1200,138 +2000,-1600,154 +2000,-2000,170 +2000,-2500,190 +2500,0,105 +2500,-200,113 +2500,-400,121 +2500,-600,129 +2500,-900,141 +2500,-1200,153 +2500,-1600,169 +2500,-2000,185 +2500,-2500,205 +3000,0,120 +3000,-200,128 +3000,-400,136 +3000,-600,144 +3000,-900,156 +3000,-1200,168 +3000,-1600,184 +3000,-2000,200 +3000,-2500,220 +1300,2610,66 +1300,2842,71 +1500,-812,46 +1500,-348,37 +1500,0,13 +1500,58,16 +1500,290,21 +1500,522,26 +1500,754,30 +1500,986,35 +1500,1218,39 +1500,1450,44 +1500,1682,49 +1500,1914,53 +1500,2146,58 +1500,2378,63 +1500,2610,67 +1500,2842,72 +1700,-812,49 +1700,-348,39 +1700,0,14 +1700,58,17 +1700,290,22 +1700,522,27 +1700,754,31 +1700,986,36 +1700,1218,41 +1700,1450,45 +1700,1682,50 +1700,1914,55 +1700,2146,59 +1700,2378,64 +1700,2610,68 +1700,2842,73 +1900,-812,51 +1900,-348,42 +1900,0,15 +1900,58,19 +1900,290,23 +1900,522,28 +1900,754,32 +1900,986,37 +1900,1218,42 +1900,1450,46 +1900,1682,51 +1900,1914,56 +1900,2146,60 +1900,2378,65 +1900,2610,70 +1900,2842,74 +2100,-812,53 +2100,-348,44 +2100,0,16 +2100,58,20 +2100,290,24 +2100,522,29 +2100,754,34 +2100,986,38 +2100,1218,43 +2100,1450,48 +2100,1682,52 +2100,1914,57 +2100,2146,61 +2100,2378,66 +2100,2610,71 +2100,2842,75 diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_2_i=1-86.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_2_i=1-86.vtlm new file mode 100644 index 0000000000000000000000000000000000000000..1cdc06160aa4dcdfe6fcf5775fc18e4c5fa943ff --- /dev/null +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_2_i=1-86.vtlm @@ -0,0 +1,136 @@ +Input Speed [1/min], Input Torque [Nm], Torque Loss [Nm] +0,0,48 +0,200,56 +0,400,64 +0,600,72 +0,900,84 +0,1200,96 +0,1600,112 +0,2000,128 +0,2500,148 +600,0,48 +600,200,56 +600,400,64 +600,600,72 +600,900,84 +600,1200,96 +600,1600,112 +600,2000,128 +600,2500,148 +900,0,57 +900,200,65 +900,400,73 +900,600,81 +900,900,93 +900,1200,105 +900,1600,121 +900,2000,137 +900,2500,157 +1200,0,66 +1200,200,74 +1200,400,82 +1200,600,90 +1200,900,102 +1200,1200,114 +1200,1600,130 +1200,2000,146 +1200,2500,166 +1600,0,78 +1600,200,86 +1600,400,94 +1600,600,102 +1600,900,114 +1600,1200,126 +1600,1600,142 +1600,2000,158 +1600,2500,178 +2000,0,90 +2000,200,98 +2000,400,106 +2000,600,114 +2000,900,126 +2000,1200,138 +2000,1600,154 +2000,2000,170 +2000,2500,190 +2500,0,105 +2500,200,113 +2500,400,121 +2500,600,129 +2500,900,141 +2500,1200,153 +2500,1600,169 +2500,2000,185 +2500,2500,205 +3000,0,120 +3000,200,128 +3000,400,136 +3000,600,144 +3000,900,156 +3000,1200,168 +3000,1600,184 +3000,2000,200 +3000,2500,220 +600,0,48 +600,-200,56 +600,-400,64 +600,-600,72 +600,-900,84 +600,-1200,96 +600,-1600,112 +600,-2000,128 +600,-2500,148 +900,0,57 +900,-200,65 +900,-400,73 +900,-600,81 +900,-900,93 +900,-1200,105 +900,-1600,121 +900,-2000,137 +900,-2500,157 +1200,0,66 +1200,-200,74 +1200,-400,82 +1200,-600,90 +1200,-900,102 +1200,-1200,114 +1200,-1600,130 +1200,-2000,146 +1200,-2500,166 +1600,0,78 +1600,-200,86 +1600,-400,94 +1600,-600,102 +1600,-900,114 +1600,-1200,126 +1600,-1600,142 +1600,-2000,158 +1600,-2500,178 +2000,0,90 +2000,-200,98 +2000,-400,106 +2000,-600,114 +2000,-900,126 +2000,-1200,138 +2000,-1600,154 +2000,-2000,170 +2000,-2500,190 +2500,0,105 +2500,-200,113 +2500,-400,121 +2500,-600,129 +2500,-900,141 +2500,-1200,153 +2500,-1600,169 +2500,-2000,185 +2500,-2500,205 +3000,0,120 +3000,-200,128 +3000,-400,136 +3000,-600,144 +3000,-900,156 +3000,-1200,168 +3000,-1600,184 +3000,-2000,200 +3000,-2500,220 diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_3_i=1-41.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_3_i=1-41.vtlm new file mode 100644 index 0000000000000000000000000000000000000000..1cdc06160aa4dcdfe6fcf5775fc18e4c5fa943ff --- /dev/null +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_3_i=1-41.vtlm @@ -0,0 +1,136 @@ +Input Speed [1/min], Input Torque [Nm], Torque Loss [Nm] +0,0,48 +0,200,56 +0,400,64 +0,600,72 +0,900,84 +0,1200,96 +0,1600,112 +0,2000,128 +0,2500,148 +600,0,48 +600,200,56 +600,400,64 +600,600,72 +600,900,84 +600,1200,96 +600,1600,112 +600,2000,128 +600,2500,148 +900,0,57 +900,200,65 +900,400,73 +900,600,81 +900,900,93 +900,1200,105 +900,1600,121 +900,2000,137 +900,2500,157 +1200,0,66 +1200,200,74 +1200,400,82 +1200,600,90 +1200,900,102 +1200,1200,114 +1200,1600,130 +1200,2000,146 +1200,2500,166 +1600,0,78 +1600,200,86 +1600,400,94 +1600,600,102 +1600,900,114 +1600,1200,126 +1600,1600,142 +1600,2000,158 +1600,2500,178 +2000,0,90 +2000,200,98 +2000,400,106 +2000,600,114 +2000,900,126 +2000,1200,138 +2000,1600,154 +2000,2000,170 +2000,2500,190 +2500,0,105 +2500,200,113 +2500,400,121 +2500,600,129 +2500,900,141 +2500,1200,153 +2500,1600,169 +2500,2000,185 +2500,2500,205 +3000,0,120 +3000,200,128 +3000,400,136 +3000,600,144 +3000,900,156 +3000,1200,168 +3000,1600,184 +3000,2000,200 +3000,2500,220 +600,0,48 +600,-200,56 +600,-400,64 +600,-600,72 +600,-900,84 +600,-1200,96 +600,-1600,112 +600,-2000,128 +600,-2500,148 +900,0,57 +900,-200,65 +900,-400,73 +900,-600,81 +900,-900,93 +900,-1200,105 +900,-1600,121 +900,-2000,137 +900,-2500,157 +1200,0,66 +1200,-200,74 +1200,-400,82 +1200,-600,90 +1200,-900,102 +1200,-1200,114 +1200,-1600,130 +1200,-2000,146 +1200,-2500,166 +1600,0,78 +1600,-200,86 +1600,-400,94 +1600,-600,102 +1600,-900,114 +1600,-1200,126 +1600,-1600,142 +1600,-2000,158 +1600,-2500,178 +2000,0,90 +2000,-200,98 +2000,-400,106 +2000,-600,114 +2000,-900,126 +2000,-1200,138 +2000,-1600,154 +2000,-2000,170 +2000,-2500,190 +2500,0,105 +2500,-200,113 +2500,-400,121 +2500,-600,129 +2500,-900,141 +2500,-1200,153 +2500,-1600,169 +2500,-2000,185 +2500,-2500,205 +3000,0,120 +3000,-200,128 +3000,-400,136 +3000,-600,144 +3000,-900,156 +3000,-1200,168 +3000,-1600,184 +3000,-2000,200 +3000,-2500,220 diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_4_i=1.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_4_i=1.vtlm new file mode 100644 index 0000000000000000000000000000000000000000..36365e666f12b3e1f9083aaf6dc653069c1e92f3 --- /dev/null +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_4_i=1.vtlm @@ -0,0 +1,136 @@ +Input Speed [1/min], Input Torque [Nm], Torque Loss [Nm] +0,0,48 +0,200,50 +0,400,52 +0,600,54 +0,900,57 +0,1200,60 +0,1600,64 +0,2000,68 +0,2500,73 +600,0,48 +600,200,50 +600,400,52 +600,600,54 +600,900,57 +600,1200,60 +600,1600,64 +600,2000,68 +600,2500,73 +900,0,57 +900,200,59 +900,400,61 +900,600,63 +900,900,66 +900,1200,69 +900,1600,73 +900,2000,77 +900,2500,82 +1200,0,66 +1200,200,68 +1200,400,70 +1200,600,72 +1200,900,75 +1200,1200,78 +1200,1600,82 +1200,2000,86 +1200,2500,91 +1600,0,78 +1600,200,80 +1600,400,82 +1600,600,84 +1600,900,87 +1600,1200,90 +1600,1600,94 +1600,2000,98 +1600,2500,103 +2000,0,90 +2000,200,92 +2000,400,94 +2000,600,96 +2000,900,99 +2000,1200,102 +2000,1600,106 +2000,2000,110 +2000,2500,115 +2500,0,105 +2500,200,107 +2500,400,109 +2500,600,111 +2500,900,114 +2500,1200,117 +2500,1600,121 +2500,2000,125 +2500,2500,130 +3000,0,120 +3000,200,122 +3000,400,124 +3000,600,126 +3000,900,129 +3000,1200,132 +3000,1600,136 +3000,2000,140 +3000,2500,145 +600,0,48 +600,-200,50 +600,-400,52 +600,-600,54 +600,-900,57 +600,-1200,60 +600,-1600,64 +600,-2000,68 +600,-2500,73 +900,0,57 +900,-200,59 +900,-400,61 +900,-600,63 +900,-900,66 +900,-1200,69 +900,-1600,73 +900,-2000,77 +900,-2500,82 +1200,0,66 +1200,-200,68 +1200,-400,70 +1200,-600,72 +1200,-900,75 +1200,-1200,78 +1200,-1600,82 +1200,-2000,86 +1200,-2500,91 +1600,0,78 +1600,-200,80 +1600,-400,82 +1600,-600,84 +1600,-900,87 +1600,-1200,90 +1600,-1600,94 +1600,-2000,98 +1600,-2500,103 +2000,0,90 +2000,-200,92 +2000,-400,94 +2000,-600,96 +2000,-900,99 +2000,-1200,102 +2000,-1600,106 +2000,-2000,110 +2000,-2500,115 +2500,0,105 +2500,-200,107 +2500,-400,109 +2500,-600,111 +2500,-900,114 +2500,-1200,117 +2500,-1600,121 +2500,-2000,125 +2500,-2500,130 +3000,0,120 +3000,-200,122 +3000,-400,124 +3000,-600,126 +3000,-900,129 +3000,-1200,132 +3000,-1600,136 +3000,-2000,140 +3000,-2500,145 diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_5_i=0-75.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_5_i=0-75.vtlm new file mode 100644 index 0000000000000000000000000000000000000000..1cdc06160aa4dcdfe6fcf5775fc18e4c5fa943ff --- /dev/null +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_5_i=0-75.vtlm @@ -0,0 +1,136 @@ +Input Speed [1/min], Input Torque [Nm], Torque Loss [Nm] +0,0,48 +0,200,56 +0,400,64 +0,600,72 +0,900,84 +0,1200,96 +0,1600,112 +0,2000,128 +0,2500,148 +600,0,48 +600,200,56 +600,400,64 +600,600,72 +600,900,84 +600,1200,96 +600,1600,112 +600,2000,128 +600,2500,148 +900,0,57 +900,200,65 +900,400,73 +900,600,81 +900,900,93 +900,1200,105 +900,1600,121 +900,2000,137 +900,2500,157 +1200,0,66 +1200,200,74 +1200,400,82 +1200,600,90 +1200,900,102 +1200,1200,114 +1200,1600,130 +1200,2000,146 +1200,2500,166 +1600,0,78 +1600,200,86 +1600,400,94 +1600,600,102 +1600,900,114 +1600,1200,126 +1600,1600,142 +1600,2000,158 +1600,2500,178 +2000,0,90 +2000,200,98 +2000,400,106 +2000,600,114 +2000,900,126 +2000,1200,138 +2000,1600,154 +2000,2000,170 +2000,2500,190 +2500,0,105 +2500,200,113 +2500,400,121 +2500,600,129 +2500,900,141 +2500,1200,153 +2500,1600,169 +2500,2000,185 +2500,2500,205 +3000,0,120 +3000,200,128 +3000,400,136 +3000,600,144 +3000,900,156 +3000,1200,168 +3000,1600,184 +3000,2000,200 +3000,2500,220 +600,0,48 +600,-200,56 +600,-400,64 +600,-600,72 +600,-900,84 +600,-1200,96 +600,-1600,112 +600,-2000,128 +600,-2500,148 +900,0,57 +900,-200,65 +900,-400,73 +900,-600,81 +900,-900,93 +900,-1200,105 +900,-1600,121 +900,-2000,137 +900,-2500,157 +1200,0,66 +1200,-200,74 +1200,-400,82 +1200,-600,90 +1200,-900,102 +1200,-1200,114 +1200,-1600,130 +1200,-2000,146 +1200,-2500,166 +1600,0,78 +1600,-200,86 +1600,-400,94 +1600,-600,102 +1600,-900,114 +1600,-1200,126 +1600,-1600,142 +1600,-2000,158 +1600,-2500,178 +2000,0,90 +2000,-200,98 +2000,-400,106 +2000,-600,114 +2000,-900,126 +2000,-1200,138 +2000,-1600,154 +2000,-2000,170 +2000,-2500,190 +2500,0,105 +2500,-200,113 +2500,-400,121 +2500,-600,129 +2500,-900,141 +2500,-1200,153 +2500,-1600,169 +2500,-2000,185 +2500,-2500,205 +3000,0,120 +3000,-200,128 +3000,-400,136 +3000,-600,144 +3000,-900,156 +3000,-1200,168 +3000,-1600,184 +3000,-2000,200 +3000,-2500,220 diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_6_i=0-65.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_6_i=0-65.vtlm new file mode 100644 index 0000000000000000000000000000000000000000..1cdc06160aa4dcdfe6fcf5775fc18e4c5fa943ff --- /dev/null +++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/S_HEV/GenericVehicle_S2_AT/Gear_6_i=0-65.vtlm @@ -0,0 +1,136 @@ +Input Speed [1/min], Input Torque [Nm], Torque Loss [Nm] +0,0,48 +0,200,56 +0,400,64 +0,600,72 +0,900,84 +0,1200,96 +0,1600,112 +0,2000,128 +0,2500,148 +600,0,48 +600,200,56 +600,400,64 +600,600,72 +600,900,84 +600,1200,96 +600,1600,112 +600,2000,128 +600,2500,148 +900,0,57 +900,200,65 +900,400,73 +900,600,81 +900,900,93 +900,1200,105 +900,1600,121 +900,2000,137 +900,2500,157 +1200,0,66 +1200,200,74 +1200,400,82 +1200,600,90 +1200,900,102 +1200,1200,114 +1200,1600,130 +1200,2000,146 +1200,2500,166 +1600,0,78 +1600,200,86 +1600,400,94 +1600,600,102 +1600,900,114 +1600,1200,126 +1600,1600,142 +1600,2000,158 +1600,2500,178 +2000,0,90 +2000,200,98 +2000,400,106 +2000,600,114 +2000,900,126 +2000,1200,138 +2000,1600,154 +2000,2000,170 +2000,2500,190 +2500,0,105 +2500,200,113 +2500,400,121 +2500,600,129 +2500,900,141 +2500,1200,153 +2500,1600,169 +2500,2000,185 +2500,2500,205 +3000,0,120 +3000,200,128 +3000,400,136 +3000,600,144 +3000,900,156 +3000,1200,168 +3000,1600,184 +3000,2000,200 +3000,2500,220 +600,0,48 +600,-200,56 +600,-400,64 +600,-600,72 +600,-900,84 +600,-1200,96 +600,-1600,112 +600,-2000,128 +600,-2500,148 +900,0,57 +900,-200,65 +900,-400,73 +900,-600,81 +900,-900,93 +900,-1200,105 +900,-1600,121 +900,-2000,137 +900,-2500,157 +1200,0,66 +1200,-200,74 +1200,-400,82 +1200,-600,90 +1200,-900,102 +1200,-1200,114 +1200,-1600,130 +1200,-2000,146 +1200,-2500,166 +1600,0,78 +1600,-200,86 +1600,-400,94 +1600,-600,102 +1600,-900,114 +1600,-1200,126 +1600,-1600,142 +1600,-2000,158 +1600,-2500,178 +2000,0,90 +2000,-200,98 +2000,-400,106 +2000,-600,114 +2000,-900,126 +2000,-1200,138 +2000,-1600,154 +2000,-2000,170 +2000,-2500,190 +2500,0,105 +2500,-200,113 +2500,-400,121 +2500,-600,129 +2500,-900,141 +2500,-1200,153 +2500,-1600,169 +2500,-2000,185 +2500,-2500,205 +3000,0,120 +3000,-200,128 +3000,-400,136 +3000,-600,144 +3000,-900,156 +3000,-1200,168 +3000,-1600,184 +3000,-2000,200 +3000,-2500,220 diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/HEV-S_heavyLorry_AMT_S2_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/HEV-S_heavyLorry_AMT_S2_n_opt.xml index 0a41c27700f4ea079b18ecdc314d513f0de64c99..3cd80a926568bba915168521385bd958ec2314a1 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/HEV-S_heavyLorry_AMT_S2_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/HEV-S_heavyLorry_AMT_S2_n_opt.xml @@ -14,7 +14,7 @@ <IdlingSpeed>660</IdlingSpeed> <RetarderType>Losses included in Gearbox</RetarderType> <RetarderRatio>2.000</RetarderRatio> - <AngledriveType>Separate Angledrive</AngledriveType> + <AngledriveType>None</AngledriveType> <PTO xsi:type="PTOType"> <PTOShaftsGearWheels>none</PTOShaftsGearWheels> <PTOOtherElements>none</PTOOtherElements> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/HEV-S_heavyLorry_S3_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/HEV-S_heavyLorry_S3_n_opt.xml index 28caaf1d3216655a2a55b7ba37984391a85821a7..cf38b681f5fee985069d3c8d911de5575384ca47 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/HEV-S_heavyLorry_S3_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/HEV-S_heavyLorry_S3_n_opt.xml @@ -14,7 +14,7 @@ <IdlingSpeed>650</IdlingSpeed> <RetarderType>Losses included in Gearbox</RetarderType> <RetarderRatio>2.000</RetarderRatio> - <AngledriveType>Separate Angledrive</AngledriveType> + <AngledriveType>None</AngledriveType> <PTO xsi:type="PTOType"> <PTOShaftsGearWheels>none</PTOShaftsGearWheels> <PTOOtherElements>none</PTOOtherElements> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/HEV-S_heavyLorry_S4_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/HEV-S_heavyLorry_S4_n_opt.xml index 574f1573096ca5136cc5902aa1cd2031d48d22c7..94eecd6c9030c0101d6dece5aabcaa92baaed257 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/HEV-S_heavyLorry_S4_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/HEV-S_heavyLorry_S4_n_opt.xml @@ -14,7 +14,7 @@ <IdlingSpeed>640</IdlingSpeed> <RetarderType>Losses included in Gearbox</RetarderType> <RetarderRatio>2.000</RetarderRatio> - <AngledriveType>Separate Angledrive</AngledriveType> + <AngledriveType>None</AngledriveType> <PTO xsi:type="PTOType"> <PTOShaftsGearWheels>none</PTOShaftsGearWheels> <PTOOtherElements>none</PTOOtherElements> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/PEV_heavyLorry_AMT_E2_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/PEV_heavyLorry_AMT_E2_n_opt.xml index 8dc0b991998924977e131ad97ff6f5daa0840033..d837e94215cb1b441700a93487d789607165c8d4 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/PEV_heavyLorry_AMT_E2_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/PEV_heavyLorry_AMT_E2_n_opt.xml @@ -13,7 +13,7 @@ <TechnicalPermissibleMaximumLadenMass>12000</TechnicalPermissibleMaximumLadenMass> <RetarderType>Losses included in Gearbox</RetarderType> <RetarderRatio>2.000</RetarderRatio> - <AngledriveType>Separate Angledrive</AngledriveType> + <AngledriveType>None</AngledriveType> <PTO xsi:type="PTOType"> <PTOShaftsGearWheels>none</PTOShaftsGearWheels> <PTOOtherElements>none</PTOOtherElements> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/PEV_heavyLorry_E3_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/PEV_heavyLorry_E3_n_opt.xml index fbb049d5eaf0f0ea0478f2fbca4c6e55e36326b9..8d38d04b6ffac0ccb8b043263ea22232224dbeb6 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/PEV_heavyLorry_E3_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/PEV_heavyLorry_E3_n_opt.xml @@ -13,7 +13,7 @@ <TechnicalPermissibleMaximumLadenMass>12000</TechnicalPermissibleMaximumLadenMass> <RetarderType>Losses included in Gearbox</RetarderType> <RetarderRatio>2.000</RetarderRatio> - <AngledriveType>Separate Angledrive</AngledriveType> + <AngledriveType>None</AngledriveType> <PTO xsi:type="PTOType"> <PTOShaftsGearWheels>none</PTOShaftsGearWheels> <PTOOtherElements>none</PTOOtherElements> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/PEV_heavyLorry_E4_n_opt.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/PEV_heavyLorry_E4_n_opt.xml index 25808af2d1ac6ee4223b28c293a781d676cd2b88..c2d16c957b67e64c08cade3afc3d667fff1f5851 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/PEV_heavyLorry_E4_n_opt.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.4/WithoutOptionalEntries/PEV_heavyLorry_E4_n_opt.xml @@ -13,7 +13,7 @@ <TechnicalPermissibleMaximumLadenMass>12000</TechnicalPermissibleMaximumLadenMass> <RetarderType>Losses included in Gearbox</RetarderType> <RetarderRatio>2.000</RetarderRatio> - <AngledriveType>Separate Angledrive</AngledriveType> + <AngledriveType>None</AngledriveType> <PTO xsi:type="PTOType"> <PTOShaftsGearWheels>none</PTOShaftsGearWheels> <PTOOtherElements>none</PTOOtherElements> diff --git a/VectoCore/VectoCoreTest/XML/XMLDeclarationInputv24.cs b/VectoCore/VectoCoreTest/XML/XMLDeclarationInputv24.cs index 63c7327ef94499e1b24529514cc2419c843dda73..29559a5937dec4cb962458c1f0e9098dc67fcff8 100644 --- a/VectoCore/VectoCoreTest/XML/XMLDeclarationInputv24.cs +++ b/VectoCore/VectoCoreTest/XML/XMLDeclarationInputv24.cs @@ -667,8 +667,8 @@ namespace TUGraz.VectoCore.Tests.XML private void TestBoostingLimitationsEntry(string rotationalSpeed, string boostingTorque, DataRow row) { - Assert.AreEqual(rotationalSpeed, row[XMLNames.BoostingLimitation_RotationalSpeed]); - Assert.AreEqual(boostingTorque, row[XMLNames.BoostingLimitation_BoostingTorque]); + Assert.AreEqual(rotationalSpeed, row[MaxBoostingTorqueReader.Fields.MotorSpeed]); + Assert.AreEqual(boostingTorque, row[MaxBoostingTorqueReader.Fields.DrivingTorque]); } #endregion diff --git a/VectoMockup/VectoMockup/Reports/MockupReportFactory.cs b/VectoMockup/VectoMockup/Reports/MockupReportFactory.cs index 7d35d9451f2a52e0e790076380920d5526e2f7fd..e841f6e9fc8155059206e663083117772cd31ba2 100644 --- a/VectoMockup/VectoMockup/Reports/MockupReportFactory.cs +++ b/VectoMockup/VectoMockup/Reports/MockupReportFactory.cs @@ -41,7 +41,7 @@ namespace TUGraz.VectoMockup.Reports case IMultistepBusInputDataProvider multistageBusInputDataProvider: break; case ISingleBusInputDataProvider singleBusInputDataProvider: - return new XMLDeclarationReport(outputWriter); + return new XMLDeclarationReport(outputWriter, _mrfFactory, _cifFactory); case IDeclarationInputDataProvider declarationInputDataProvider: return CreateDeclarationReport(declarationInputDataProvider, outputWriter); case IMultiStageTypeInputData multiStageTypeInputData: @@ -106,7 +106,8 @@ namespace TUGraz.VectoMockup.Reports { case VehicleCategory.HeavyBusCompletedVehicle: throw new NotImplementedException(); - return new XMLDeclarationReportCompletedVehicle(outputDataWriter) + return new XMLDeclarationReportCompletedVehicle(outputDataWriter, _mrfFactory, _cifFactory, + _vifFactory) { PrimaryVehicleReportInputData = declarationInputDataProvider.PrimaryVehicleData, }; diff --git a/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupPrimaryReport.cs b/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupPrimaryReport.cs index be9a19230fac2c216501ae1ee1f2f120676780e5..774218a674bf7fd6e349d2a0e193ccb7afe56642 100644 --- a/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupPrimaryReport.cs +++ b/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupPrimaryReport.cs @@ -15,7 +15,7 @@ namespace TUGraz.VectoMockup.Reports /// <summary> /// Create MRF and VIF for primary bus /// </summary> - public class XMLDeclarationMockupPrimaryReport : XMLDeclarationReportPrimaryVehicle_09 + public class XMLDeclarationMockupPrimaryReport : XMLDeclarationReportPrimaryVehicle { private readonly bool _exempted; @@ -25,13 +25,12 @@ namespace TUGraz.VectoMockup.Reports IVIFReportFactory vifFactory, bool exempted) : base(writer, mrfFactory, - cifFactory, vifFactory) { _exempted = exempted; } - #region Overrides of XMLDeclarationReportPrimaryVehicle_09 + #region Overrides of XMLDeclarationReportPrimaryVehicle protected override void DoStoreResult(ResultEntry entry, VectoRunData runData, IModalDataContainer modData) { diff --git a/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReport.cs b/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReport.cs index 8625f3474be64a73d13de775ecfbf07e5022e97b..6b73c358e49cbe6bdb626493d4330be13ce80e7d 100644 --- a/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReport.cs +++ b/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReport.cs @@ -15,7 +15,7 @@ namespace TUGraz.VectoMockup.Reports /// <summary> /// Create MRF and CIF for lorries /// </summary> - internal class XMLDeclarationMockupReport : XMLDeclarationReport09 + internal class XMLDeclarationMockupReport : XMLDeclarationReport { private readonly bool _exempted; diff --git a/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReportCompletedVehicle.cs b/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReportCompletedVehicle.cs index 0703c33dc2efbb98ef8838cfe86cd4e704be58dc..bd25165ae8cf62bf044bde24ba00a7b94d85f9fa 100644 --- a/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReportCompletedVehicle.cs +++ b/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReportCompletedVehicle.cs @@ -20,7 +20,7 @@ namespace TUGraz.VectoMockup.Reports /// <summary> /// Create VIF of an interim (or the complete(d) step /// </summary> - public class XMLDeclarationMockupReportInterimVehicle : XMLDeclarationReportInterimVehicle_09 + public class XMLDeclarationMockupReportInterimVehicle : XMLDeclarationReportInterimVehicle { private readonly bool _exempted; @@ -37,7 +37,7 @@ namespace TUGraz.VectoMockup.Reports /// <summary> /// Create MRF and CIF of the complete(d) step /// </summary> - public class XMLDeclarationMockupReportCompletedVehicle : XMLDeclarationReportCompletedVehicle_09 + public class XMLDeclarationMockupReportCompletedVehicle : XMLDeclarationReportCompletedVehicle { //private readonly IManufacturerReportFactory _mrfFactory; //private readonly ICustomerInformationFileFactory _cifFactory;