From 92d0bebcf0185189da11e19529b637ef456801c4 Mon Sep 17 00:00:00 2001 From: Markus Quaritsch <markus.quaritsch@tugraz.at> Date: Wed, 27 Jan 2016 13:33:23 +0100 Subject: [PATCH] refactoring component data: axlegear is now a full component, axle/wheels is now a full component --- VectoCore/InputData/IntegrityStatus.cs | 11 ++++++ .../AbstractSimulationDataAdapter.cs | 4 +- .../DeclarationDataAdapter.cs | 1 + .../DeclarationModeVectoRunDataFactory.cs | 38 +++++++++---------- VectoCore/Models/Declaration/Axle.cs | 4 +- .../Models/Simulation/Data/VectoRunData.cs | 3 +- .../SimulationComponent/Data/AxleGearData.cs | 5 ++- .../Data/SimulationComponentData.cs | 12 ++++++ .../SimulationComponent/Impl/AxleGear.cs | 15 ++++---- VectoCore/OutputData/DeclarationReport.cs | 35 +++++++---------- .../OutputData/PDF/PDFDeclarationReport.cs | 35 ++++++++++++++++- VectoCore/VectoCore.csproj | 4 +- VectoCoreTest/Integration/CoachPowerTrain.cs | 10 +++-- .../SimulationRuns/FullPowertrain.cs | 11 ++++-- .../SimulationRuns/MinimalPowertrain.cs | 10 +++-- .../Integration/Truck40tPowerTrain.cs | 10 +++-- .../Simulation/LossMapRangeValidationTest.cs | 6 ++- .../Models/SimulationComponent/GearboxTest.cs | 4 +- .../FullLoadCurveTest.cs | 6 ++- .../GearboxDataTest.cs | 4 +- .../SimulationComponentData/ValidationTest.cs | 6 ++- 21 files changed, 152 insertions(+), 82 deletions(-) create mode 100644 VectoCore/InputData/IntegrityStatus.cs diff --git a/VectoCore/InputData/IntegrityStatus.cs b/VectoCore/InputData/IntegrityStatus.cs new file mode 100644 index 0000000000..1c7289e660 --- /dev/null +++ b/VectoCore/InputData/IntegrityStatus.cs @@ -0,0 +1,11 @@ +namespace TUGraz.VectoCore.InputData +{ + public enum IntegrityStatus + { + Unknown, + NoDigestProvided, + NotChecked, + DigestValid, + DigestInvalid + } +} \ No newline at end of file diff --git a/VectoCore/InputData/Reader/DataObjectAdaper/AbstractSimulationDataAdapter.cs b/VectoCore/InputData/Reader/DataObjectAdaper/AbstractSimulationDataAdapter.cs index 4e53645716..f6a886d214 100644 --- a/VectoCore/InputData/Reader/DataObjectAdaper/AbstractSimulationDataAdapter.cs +++ b/VectoCore/InputData/Reader/DataObjectAdaper/AbstractSimulationDataAdapter.cs @@ -71,7 +71,9 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdaper internal AxleGearData CreateAxleGearData(IAxleGearInputData axleGear) { var axleLossMap = TransmissionLossMap.Create(axleGear.LossMap, axleGear.Ratio, "AxleGear"); - return new AxleGearData() { LossMap = axleLossMap, Ratio = axleGear.Ratio, TorqueConverterActive = false }; + return new AxleGearData() { + AxleGear = new GearData() { LossMap = axleLossMap, Ratio = axleGear.Ratio, TorqueConverterActive = false } + }; } /// <summary> diff --git a/VectoCore/InputData/Reader/DataObjectAdaper/DeclarationDataAdapter.cs b/VectoCore/InputData/Reader/DataObjectAdaper/DeclarationDataAdapter.cs index 7e50145f50..b5514bf95c 100644 --- a/VectoCore/InputData/Reader/DataObjectAdaper/DeclarationDataAdapter.cs +++ b/VectoCore/InputData/Reader/DataObjectAdaper/DeclarationDataAdapter.cs @@ -105,6 +105,7 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdaper } axleData.AddRange(mission.TrailerAxleWeightDistribution.Select(tmp => new Axle { + AxleType = AxleType.Trailer, AxleWeightShare = tmp, TwinTyres = DeclarationData.Trailer.TwinTyres, RollResistanceCoefficient = DeclarationData.Trailer.RollResistanceCoefficient, diff --git a/VectoCore/InputData/Reader/Impl/DeclarationModeVectoRunDataFactory.cs b/VectoCore/InputData/Reader/Impl/DeclarationModeVectoRunDataFactory.cs index ec3a1455a3..73c7a89051 100644 --- a/VectoCore/InputData/Reader/Impl/DeclarationModeVectoRunDataFactory.cs +++ b/VectoCore/InputData/Reader/Impl/DeclarationModeVectoRunDataFactory.cs @@ -38,8 +38,22 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl var engineData = dao.CreateEngineData(InputDataProvider.EngineInputData); var gearboxData = dao.CreateGearboxData(InputDataProvider.GearboxInputData, engineData); + var axlegearData = dao.CreateAxleGearData(InputDataProvider.AxleGearInputData); + var retarderData = dao.CreateRetarderData(InputDataProvider.RetarderInputData); - ConfigureReport(engineData, gearboxData, segment); + if (Report != null) { + var powertrainConfig = new VectoRunData() { + VehicleData = dao.CreateVehicleData(InputDataProvider.VehicleInputData, segment.Missions.First(), + segment.Missions.First().Loadings.First().Value), + EngineData = engineData, + GearboxData = gearboxData, + AxleGearData = axlegearData, + Retarder = retarderData, + Aux = dao.CreateAuxiliaryData(InputDataProvider.AuxiliaryInputData(), segment.Missions.First().MissionType, + segment.VehicleClass) + }; + Report.InitializeReport(powertrainConfig, segment); + } foreach (var mission in segment.Missions) { DrivingCycleData cycle; @@ -54,12 +68,12 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl Loading = loading.Key, VehicleData = dao.CreateVehicleData(InputDataProvider.VehicleInputData, mission, loading.Value), EngineData = engineData, - GearboxData = dao.CreateGearboxData(InputDataProvider.GearboxInputData, engineData), - AxleGearData = dao.CreateAxleGearData(InputDataProvider.AxleGearInputData), + GearboxData = gearboxData, + AxleGearData = axlegearData, Aux = dao.CreateAuxiliaryData(InputDataProvider.AuxiliaryInputData(), mission.MissionType, segment.VehicleClass), Cycle = cycle, - Retarder = dao.CreateRetarderData(InputDataProvider.RetarderInputData), + Retarder = retarderData, DriverData = driverdata, IsEngineOnly = false, // InputDataProvider.JobInputData().EngineOnlyMode, JobName = InputDataProvider.JobInputData().JobName, @@ -76,22 +90,6 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl } } - private void ConfigureReport(CombustionEngineData engineData, GearboxData gearboxData, Segment segment) - { - if (Report == null) { - return; - } - Report.EngineModel = engineData.ModelName; - Report.EngineStr = string.Format("{0} l, {1} kW", - engineData.Displacement.ConvertTo().Cubic.Dezi.Meter.ToOutputFormat(1), - engineData.FullLoadCurve.MaxPower.ConvertTo().Kilo.Watt.ToOutputFormat(0)); - Report.Flc = engineData.FullLoadCurve; - Report.GearboxModel = gearboxData.ModelName; - Report.GearboxStr = string.Format("{0}-Speed {1}", gearboxData.Gears.Count, gearboxData.Type); - Report.Segment = segment; - Report.ResultCount = segment.Missions.Sum(m => m.Loadings.Count); - } - internal Segment GetVehicleClassification(VehicleCategory category, AxleConfiguration axles, Kilogram grossMassRating, Kilogram curbWeight) { diff --git a/VectoCore/Models/Declaration/Axle.cs b/VectoCore/Models/Declaration/Axle.cs index 995f76aa7f..289bfe0cc2 100644 --- a/VectoCore/Models/Declaration/Axle.cs +++ b/VectoCore/Models/Declaration/Axle.cs @@ -14,11 +14,12 @@ * limitations under the Licence. */ +using TUGraz.VectoCore.Models.SimulationComponent.Data; using TUGraz.VectoCore.Utils; namespace TUGraz.VectoCore.Models.Declaration { - public class Axle + public class Axle : SimulationComponentData { public KilogramSquareMeter Inertia { get; internal set; } @@ -29,5 +30,6 @@ namespace TUGraz.VectoCore.Models.Declaration public double AxleWeightShare { get; internal set; } public bool TwinTyres { get; internal set; } + public AxleType AxleType { get; internal set; } } } \ No newline at end of file diff --git a/VectoCore/Models/Simulation/Data/VectoRunData.cs b/VectoCore/Models/Simulation/Data/VectoRunData.cs index 635b14c726..1b345cd38c 100644 --- a/VectoCore/Models/Simulation/Data/VectoRunData.cs +++ b/VectoCore/Models/Simulation/Data/VectoRunData.cs @@ -21,6 +21,7 @@ using TUGraz.VectoCore.Configuration; using TUGraz.VectoCore.Exceptions; using TUGraz.VectoCore.Models.Declaration; using TUGraz.VectoCore.Models.SimulationComponent.Data; +using TUGraz.VectoCore.OutputData; using TUGraz.VectoCore.OutputData.PDF; using TUGraz.VectoCore.Utils; @@ -126,7 +127,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Data if (axleGearData != null) { var axleAngularVelocity = angularVelocity / gear.Value.Ratio; try { - axleGearData.LossMap.GetOutTorque(axleAngularVelocity, axleTorque); + axleGearData.AxleGear.LossMap.GetOutTorque(axleAngularVelocity, axleTorque); } catch (VectoException) { return new ValidationResult( diff --git a/VectoCore/Models/SimulationComponent/Data/AxleGearData.cs b/VectoCore/Models/SimulationComponent/Data/AxleGearData.cs index 2236d6ba45..5e5e4c1726 100644 --- a/VectoCore/Models/SimulationComponent/Data/AxleGearData.cs +++ b/VectoCore/Models/SimulationComponent/Data/AxleGearData.cs @@ -2,5 +2,8 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data { - public class AxleGearData : GearData {} + public class AxleGearData : SimulationComponentData + { + public GearData AxleGear; + } } \ No newline at end of file diff --git a/VectoCore/Models/SimulationComponent/Data/SimulationComponentData.cs b/VectoCore/Models/SimulationComponent/Data/SimulationComponentData.cs index 6bd7e9f348..4443faa773 100644 --- a/VectoCore/Models/SimulationComponent/Data/SimulationComponentData.cs +++ b/VectoCore/Models/SimulationComponent/Data/SimulationComponentData.cs @@ -14,10 +14,22 @@ * limitations under the Licence. */ +using TUGraz.VectoCore.InputData; + namespace TUGraz.VectoCore.Models.SimulationComponent.Data { public class SimulationComponentData : LoggingObject { public bool SavedInDeclarationMode { get; internal set; } + + public string Vendor { get; internal set; } + + public string MakeAndModel { get; internal set; } + + public string TypeId { get; internal set; } + + public string DigestValue { get; internal set; } + + public IntegrityStatus IntegrityStatus { get; internal set; } } } \ No newline at end of file diff --git a/VectoCore/Models/SimulationComponent/Impl/AxleGear.cs b/VectoCore/Models/SimulationComponent/Impl/AxleGear.cs index 544668e07d..f4dcc7fbea 100644 --- a/VectoCore/Models/SimulationComponent/Impl/AxleGear.cs +++ b/VectoCore/Models/SimulationComponent/Impl/AxleGear.cs @@ -18,6 +18,7 @@ using TUGraz.VectoCore.Exceptions; using TUGraz.VectoCore.Models.Connector.Ports; using TUGraz.VectoCore.Models.Simulation.Data; using TUGraz.VectoCore.Models.Simulation.Impl; +using TUGraz.VectoCore.Models.SimulationComponent.Data; using TUGraz.VectoCore.Models.SimulationComponent.Data.Gearbox; using TUGraz.VectoCore.OutputData; using TUGraz.VectoCore.Utils; @@ -27,11 +28,11 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl public class AxleGear : VectoSimulationComponent, IPowerTrainComponent, ITnInPort, ITnOutPort { protected ITnOutPort NextComponent; - private readonly GearData _gearData; + private readonly AxleGearData _gearData; protected Watt Loss; - public AxleGear(VehicleContainer container, GearData gearData) : base(container) + public AxleGear(VehicleContainer container, AxleGearData gearData) : base(container) { _gearData = gearData; } @@ -56,10 +57,10 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl { Log.Debug("request: torque: {0}, angularVelocity: {1}", torque, angularVelocity); - var inAngularVelocity = angularVelocity * _gearData.Ratio; + var inAngularVelocity = angularVelocity * _gearData.AxleGear.Ratio; var inTorque = angularVelocity.IsEqual(0) ? 0.SI<NewtonMeter>() - : _gearData.LossMap.GetInTorque(inAngularVelocity, torque); + : _gearData.AxleGear.LossMap.GetInTorque(inAngularVelocity, torque); Loss = inTorque * inAngularVelocity - torque * angularVelocity; @@ -71,8 +72,8 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl public IResponse Initialize(NewtonMeter torque, PerSecond angularVelocity) { - var inAngularVelocity = angularVelocity * _gearData.Ratio; - var inTorque = _gearData.LossMap.GetInTorque(inAngularVelocity, torque); + var inAngularVelocity = angularVelocity * _gearData.AxleGear.Ratio; + var inTorque = _gearData.AxleGear.LossMap.GetInTorque(inAngularVelocity, torque); return NextComponent.Initialize(inTorque, inAngularVelocity); } @@ -84,7 +85,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl protected override void DoCommitSimulationStep() { - if (_gearData.LossMap.Extrapolated) { + if (_gearData.AxleGear.LossMap.Extrapolated) { // todo (MK, 2015-12-14): should we throw an interpolation error in EngineOnly Mode also? if (DataBus.ExecutionMode == ExecutionMode.Declaration) { throw new VectoException("AxleGear LossMap data was extrapolated: range for loss map is not sufficient."); diff --git a/VectoCore/OutputData/DeclarationReport.cs b/VectoCore/OutputData/DeclarationReport.cs index 2eae603952..dd19bd6e50 100644 --- a/VectoCore/OutputData/DeclarationReport.cs +++ b/VectoCore/OutputData/DeclarationReport.cs @@ -18,6 +18,7 @@ using System.Collections.Generic; using System.Linq; using System.Runtime.CompilerServices; using TUGraz.VectoCore.Models.Declaration; +using TUGraz.VectoCore.Models.Simulation.Data; using TUGraz.VectoCore.Models.SimulationComponent.Data; using Font = System.Drawing.Font; using Image = iTextSharp.text.Image; @@ -67,26 +68,6 @@ namespace TUGraz.VectoCore.OutputData /// </summary> public string Creator { get; internal set; } - /// <summary> - /// The engine model string from engine file. - /// </summary> - public string EngineModel { get; set; } - - /// <summary> - /// The engine description (displacement and max power) - /// </summary> - public string EngineStr { get; set; } - - /// <summary> - /// The gearbox model string from gearbox file. - /// </summary> - public string GearboxModel { get; set; } - - /// <summary> - /// The gearbox description (gear-count and gear type) - /// </summary> - public string GearboxStr { get; set; } - /// <summary> /// The name of the job file (report name will be the same) /// </summary> @@ -117,10 +98,20 @@ namespace TUGraz.VectoCore.OutputData } if (ResultCount == _missions.Sum(v => v.Value.ModData.Count)) { - WriteReport(); + DoWriteReport(); } } - protected abstract void WriteReport(); + protected abstract void DoWriteReport(); + + public void InitializeReport(VectoRunData modelData, Segment segment) + { + Segment = segment; + ResultCount = segment.Missions.Sum(m => m.Loadings.Count); + + DoInitializeReport(modelData, segment); + } + + public abstract void DoInitializeReport(VectoRunData modelData, Segment segment); } } \ No newline at end of file diff --git a/VectoCore/OutputData/PDF/PDFDeclarationReport.cs b/VectoCore/OutputData/PDF/PDFDeclarationReport.cs index 2e990a71ad..665bada730 100644 --- a/VectoCore/OutputData/PDF/PDFDeclarationReport.cs +++ b/VectoCore/OutputData/PDF/PDFDeclarationReport.cs @@ -20,7 +20,27 @@ namespace TUGraz.VectoCore.OutputData.PDF { public class PDFDeclarationReport : DeclarationReport { - private IReportWriter _writer; + private readonly IReportWriter _writer; + + /// <summary> + /// The engine model string from engine file. + /// </summary> + public string EngineModel { get; set; } + + /// <summary> + /// The engine description (displacement and max power) + /// </summary> + public string EngineStr { get; set; } + + /// <summary> + /// The gearbox model string from gearbox file. + /// </summary> + public string GearboxModel { get; set; } + + /// <summary> + /// The gearbox description (gear-count and gear type) + /// </summary> + public string GearboxStr { get; set; } public PDFDeclarationReport(IReportWriter writer) { @@ -30,7 +50,7 @@ namespace TUGraz.VectoCore.OutputData.PDF /// <summary> /// Creates the report and writes it to a pdf file. /// </summary> - protected override void WriteReport() + protected override void DoWriteReport() { var titlePage = CreateTitlePage(_missions); var cyclePages = _missions.OrderBy(m => m.Key).Select((m, i) => CreateCyclePage(m.Value, i + 2, _missions.Count + 1)); @@ -38,6 +58,17 @@ namespace TUGraz.VectoCore.OutputData.PDF MergeDocuments(titlePage, cyclePages, _writer.WriterStream(ReportType.DeclarationReportPdf)); } + public override void DoInitializeReport(VectoRunData modelData, Segment segment) + { + EngineModel = modelData.EngineData.ModelName; + EngineStr = string.Format("{0} l, {1} kW", + modelData.EngineData.Displacement.ConvertTo().Cubic.Dezi.Meter.ToOutputFormat(1), + modelData.EngineData.FullLoadCurve.MaxPower.ConvertTo().Kilo.Watt.ToOutputFormat(0)); + Flc = modelData.EngineData.FullLoadCurve; + GearboxModel = modelData.GearboxData.ModelName; + GearboxStr = string.Format("{0}-Speed {1}", modelData.GearboxData.Gears.Count, modelData.GearboxData.Type); + } + /// <summary> /// Creates the title page. /// </summary> diff --git a/VectoCore/VectoCore.csproj b/VectoCore/VectoCore.csproj index 81706a3d75..0536b70f4e 100644 --- a/VectoCore/VectoCore.csproj +++ b/VectoCore/VectoCore.csproj @@ -119,6 +119,7 @@ <Compile Include="InputData\FileIO\JSON\JSONVehicleData.cs" /> <Compile Include="InputData\IInputDataProvider.cs" /> <Compile Include="InputData\InputData.cs" /> + <Compile Include="InputData\IntegrityStatus.cs" /> <Compile Include="InputData\IVectoRunDataFactory.cs" /> <Compile Include="InputData\Reader\DataObjectAdaper\AbstractSimulationDataAdapter.cs" /> <Compile Include="InputData\Reader\DataObjectAdaper\DeclarationDataAdapter.cs" /> @@ -183,11 +184,12 @@ <Compile Include="Models\Simulation\Impl\DistanceRun.cs" /> <Compile Include="Models\Simulation\Impl\PowertrainBuilder.cs" /> <Compile Include="Models\Simulation\Impl\TimeRun.cs" /> + <Compile Include="OutputData\DeclarationReport.cs" /> <Compile Include="OutputData\FileIO\FileOutputWriter.cs" /> <Compile Include="OutputData\IModalDataContainer.cs" /> <Compile Include="OutputData\IDataWriter.cs" /> <Compile Include="OutputData\ModalDataContainer.cs" /> - <Compile Include="OutputData\PDF\DeclarationReport.cs" /> + <Compile Include="OutputData\PDF\PDFDeclarationReport.cs" /> <Compile Include="OutputData\SummaryDataContainer.cs" /> <Compile Include="Properties\Version.cs"> <AutoGen>True</AutoGen> diff --git a/VectoCoreTest/Integration/CoachPowerTrain.cs b/VectoCoreTest/Integration/CoachPowerTrain.cs index 7d8e6fdd69..6dd730d43a 100644 --- a/VectoCoreTest/Integration/CoachPowerTrain.cs +++ b/VectoCoreTest/Integration/CoachPowerTrain.cs @@ -117,12 +117,14 @@ namespace TUGraz.VectoCore.Tests.Integration }; } - private static GearData CreateAxleGearData() + private static AxleGearData CreateAxleGearData() { const double ratio = 3.240355; - return new GearData { - Ratio = ratio, - LossMap = TransmissionLossMap.ReadFromFile(AxleGearLossMap, ratio, "AxleGear") + return new AxleGearData { + AxleGear = new GearData { + Ratio = ratio, + LossMap = TransmissionLossMap.ReadFromFile(AxleGearLossMap, ratio, "AxleGear") + } }; } diff --git a/VectoCoreTest/Integration/SimulationRuns/FullPowertrain.cs b/VectoCoreTest/Integration/SimulationRuns/FullPowertrain.cs index c14a65ec28..fa3e033db0 100644 --- a/VectoCoreTest/Integration/SimulationRuns/FullPowertrain.cs +++ b/VectoCoreTest/Integration/SimulationRuns/FullPowertrain.cs @@ -17,6 +17,7 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Reflection; using Microsoft.VisualStudio.TestTools.UnitTesting; using NLog; using TUGraz.VectoCore.Configuration; @@ -311,12 +312,14 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns }; } - private static GearData CreateAxleGearData() + private static AxleGearData CreateAxleGearData() { var ratio = 3.240355; - return new GearData { - Ratio = ratio, - LossMap = TransmissionLossMap.ReadFromFile(AxleLossMap, ratio, "AxleGear") + return new AxleGearData { + AxleGear = new GearData { + Ratio = ratio, + LossMap = TransmissionLossMap.ReadFromFile(AxleLossMap, ratio, "AxleGear") + } }; } diff --git a/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs b/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs index 93bad7b656..8e4fb5e404 100644 --- a/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs +++ b/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs @@ -228,11 +228,13 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns modData.Finish(VectoRun.Status.Success); } - private static GearData CreateAxleGearData() + private static AxleGearData CreateAxleGearData() { - return new GearData { - Ratio = 3.0 * 3.5, - LossMap = TransmissionLossMap.ReadFromFile(GbxLossMap, 3.0 * 3.5, "AxleGear") + return new AxleGearData() { + AxleGear = new GearData { + Ratio = 3.0 * 3.5, + LossMap = TransmissionLossMap.ReadFromFile(GbxLossMap, 3.0 * 3.5, "AxleGear") + } }; } diff --git a/VectoCoreTest/Integration/Truck40tPowerTrain.cs b/VectoCoreTest/Integration/Truck40tPowerTrain.cs index 692c25da69..89fce4cfa4 100644 --- a/VectoCoreTest/Integration/Truck40tPowerTrain.cs +++ b/VectoCoreTest/Integration/Truck40tPowerTrain.cs @@ -125,12 +125,14 @@ namespace TUGraz.VectoCore.Tests.Integration }; } - private static GearData CreateAxleGearData() + private static AxleGearData CreateAxleGearData() { const double ratio = 2.59; - return new GearData { - Ratio = ratio, - LossMap = TransmissionLossMap.ReadFromFile(AxleGearLossMap, ratio, "AxleGear") + return new AxleGearData { + AxleGear = new GearData { + Ratio = ratio, + LossMap = TransmissionLossMap.ReadFromFile(AxleGearLossMap, ratio, "AxleGear") + } }; } diff --git a/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs b/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs index 7d5e935770..63299d3908 100644 --- a/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs +++ b/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs @@ -135,8 +135,10 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation { const double ratio = 2.59; return new AxleGearData { - Ratio = ratio, - LossMap = TransmissionLossMap.ReadFromFile(lossMap, ratio, "AxleGear") + AxleGear = new GearData { + Ratio = ratio, + LossMap = TransmissionLossMap.ReadFromFile(lossMap, ratio, "AxleGear") + } }; } } diff --git a/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs b/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs index 4c5d35e97f..eef42290a3 100644 --- a/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs +++ b/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs @@ -95,9 +95,9 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent var loss = 9401.44062.SI<Watt>(); - Assert.AreEqual(Formulas.PowerToTorque(PvD + loss, angSpeed * axleGearData.Ratio).Value(), + Assert.AreEqual(Formulas.PowerToTorque(PvD + loss, angSpeed * axleGearData.AxleGear.Ratio).Value(), mockPort.Torque.Value(), 0.01, "Torque Engine Side"); - Assert.AreEqual((angSpeed * axleGearData.Ratio).Value(), mockPort.AngularVelocity.Value(), 0.01, + Assert.AreEqual((angSpeed * axleGearData.AxleGear.Ratio).Value(), mockPort.AngularVelocity.Value(), 0.01, "Torque Engine Side"); } diff --git a/VectoCoreTest/Models/SimulationComponentData/FullLoadCurveTest.cs b/VectoCoreTest/Models/SimulationComponentData/FullLoadCurveTest.cs index d6cd16825e..97d7d2fdb4 100644 --- a/VectoCoreTest/Models/SimulationComponentData/FullLoadCurveTest.cs +++ b/VectoCoreTest/Models/SimulationComponentData/FullLoadCurveTest.cs @@ -165,8 +165,10 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData }; var axleGearData = new AxleGearData() { - Ratio = 1, - LossMap = TransmissionLossMap.ReadFromFile(@"TestData\Components\limited.vtlm", 1, "1"), + AxleGear = new GearData { + Ratio = 1, + LossMap = TransmissionLossMap.ReadFromFile(@"TestData\Components\limited.vtlm", 1, "1"), + } }; var runData = new VectoRunData { GearboxData = gearboxData, EngineData = engineData, AxleGearData = axleGearData }; diff --git a/VectoCoreTest/Models/SimulationComponentData/GearboxDataTest.cs b/VectoCoreTest/Models/SimulationComponentData/GearboxDataTest.cs index de651db2fa..8d051e9d2b 100644 --- a/VectoCoreTest/Models/SimulationComponentData/GearboxDataTest.cs +++ b/VectoCoreTest/Models/SimulationComponentData/GearboxDataTest.cs @@ -74,9 +74,9 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData var torqueToWheels = Formulas.PowerToTorque(PvD, SpeedToAngularSpeed(speed, rdyn)); var torqueFromEngine = 0.SI<NewtonMeter>(); - var angSpeed = SpeedToAngularSpeed(speed, rdyn) * axleData.Ratio; + var angSpeed = SpeedToAngularSpeed(speed, rdyn) * axleData.AxleGear.Ratio; if (TestContext.DataRow["Gear"].ToString() == "A") { - torqueFromEngine = axleData.LossMap.GetInTorque(angSpeed, torqueToWheels); + torqueFromEngine = axleData.AxleGear.LossMap.GetInTorque(angSpeed, torqueToWheels); } var powerEngine = Formulas.TorqueToPower(torqueFromEngine, angSpeed); diff --git a/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs b/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs index b3c09ba2db..716511a535 100644 --- a/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs +++ b/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs @@ -74,8 +74,10 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData }; var axleGearData = new AxleGearData { - Ratio = 1, - LossMap = TransmissionLossMap.ReadFromFile(@"TestData\Components\limited.vtlm", 1, "1"), + AxleGear = new GearData { + Ratio = 1, + LossMap = TransmissionLossMap.ReadFromFile(@"TestData\Components\limited.vtlm", 1, "1"), + } }; container.RunData = new VectoRunData { -- GitLab