diff --git a/VectoCore/Models/Simulation/Data/VectoRunData.cs b/VectoCore/Models/Simulation/Data/VectoRunData.cs index 501a39e1b258c7b92dbd163fc402db655384820b..e513c8cb6af00556b779e1aad48697a8deaf7501 100644 --- a/VectoCore/Models/Simulation/Data/VectoRunData.cs +++ b/VectoCore/Models/Simulation/Data/VectoRunData.cs @@ -31,7 +31,6 @@ using System.Collections.Generic; using System.ComponentModel.DataAnnotations; -using System.Runtime.Serialization; using TUGraz.VectoCore.Configuration; using TUGraz.VectoCore.Exceptions; using TUGraz.VectoCore.Models.Declaration; @@ -44,31 +43,31 @@ namespace TUGraz.VectoCore.Models.Simulation.Data [CustomValidation(typeof(VectoRunData), "ValidateRunData")] public class VectoRunData : SimulationComponentData { - [Required, ValidateObject] + [ValidateObject] public VehicleData VehicleData { get; internal set; } - [Required, ValidateObject] + [ValidateObject] public CombustionEngineData EngineData { get; internal set; } - [Required, ValidateObject] + [ValidateObject] public GearboxData GearboxData { get; internal set; } - [Required, ValidateObject] + [ValidateObject] public AxleGearData AxleGearData { get; internal set; } [Required, ValidateObject] public DrivingCycleData Cycle { get; internal set; } - [Required, ValidateObject] + [ValidateObject] public IEnumerable<AuxData> Aux { get; internal set; } [ValidateObject] public string AccelerationLimitingFile { get; internal set; } - [Required, ValidateObject] + [ValidateObject] public RetarderData Retarder { get; internal set; } - [Required, ValidateObject] + [ValidateObject] public DriverData DriverData { get; internal set; } public bool IsEngineOnly { get; internal set; } @@ -76,21 +75,21 @@ namespace TUGraz.VectoCore.Models.Simulation.Data [Required, MinLength(1)] public string JobName { get; set; } - [Required] public string ModFileSuffix { get; set; } - [Required, ValidateObject] + [ValidateObject] public DeclarationReport Report { get; set; } [Required, ValidateObject] public LoadingType Loading { get; set; } - [Required, ValidateObject] + [ValidateObject] public Mission Mission { get; set; } public class AuxData { - [Required] public string ID; + // ReSharper disable once InconsistentNaming + public string ID; [Required] public AuxiliaryType Type; @@ -98,7 +97,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Data public string[] TechList; - [Required, SIRange(0, 100 * Constants.Kilo)] public Watt PowerDemand; + [SIRange(0, 100 * Constants.Kilo)] public Watt PowerDemand; [Required] public AuxiliaryDemandType DemandType; diff --git a/VectoCore/Models/Simulation/Impl/PowertrainBuilder.cs b/VectoCore/Models/Simulation/Impl/PowertrainBuilder.cs index c4f2f30b37a81025e355c5b3c05af366b24184b8..4f7520024481dc3d4e350ae767e1f0d1813fba30 100644 --- a/VectoCore/Models/Simulation/Impl/PowertrainBuilder.cs +++ b/VectoCore/Models/Simulation/Impl/PowertrainBuilder.cs @@ -76,7 +76,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl private VehicleContainer BuildEngineOnly(VectoRunData data) { - var container = new VehicleContainer(_modData, _sumWriter, ExecutionMode.EngineOnly); + var container = new VehicleContainer(_modData, _sumWriter, ExecutionMode.EngineOnly) { RunData = data }; var cycle = new PowertrainDrivingCycle(container, data.Cycle); var directAux = new EngineAuxiliary(container); @@ -91,7 +91,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl private VehicleContainer BuildPWheel(VectoRunData data) { - var container = new VehicleContainer(_modData, _sumWriter, ExecutionMode.Engineering); + var container = new VehicleContainer(_modData, _sumWriter, ExecutionMode.Engineering) { RunData = data }; var gearbox = new CycleGearbox(container, data.GearboxData); diff --git a/VectoCore/Models/SimulationComponent/Data/RetarderData.cs b/VectoCore/Models/SimulationComponent/Data/RetarderData.cs index 691082f858b3535d39bba10bc2a5936d648cd5d8..924c12e332969ad680b4b256dd8af8d1d2d65528 100644 --- a/VectoCore/Models/SimulationComponent/Data/RetarderData.cs +++ b/VectoCore/Models/SimulationComponent/Data/RetarderData.cs @@ -48,7 +48,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data public RetarderType Type { get; internal set; } - [SIRange(0, double.MaxValue)] + [SIRange(double.Epsilon, double.MaxValue)] public double Ratio { get; internal set; } } } \ No newline at end of file diff --git a/VectoCore/Models/SimulationComponent/Data/VehicleData.cs b/VectoCore/Models/SimulationComponent/Data/VehicleData.cs index fd08a013ce9d41e9ecc96c53175b55de96c6b1d8..43cc8411165bbaef757d157e91327933d717d37e 100644 --- a/VectoCore/Models/SimulationComponent/Data/VehicleData.cs +++ b/VectoCore/Models/SimulationComponent/Data/VehicleData.cs @@ -121,16 +121,16 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data var g = Physics.GravityAccelleration; - var RRC = 0.0.SI<Scalar>(); + var rrc = 0.0.SI<Scalar>(); var wheelsInertia = 0.0.SI<KilogramSquareMeter>(); foreach (var axle in _axleData) { var nrWheels = axle.TwinTyres ? 4 : 2; - RRC += axle.AxleWeightShare * axle.RollResistanceCoefficient * + rrc += axle.AxleWeightShare * axle.RollResistanceCoefficient * Math.Pow((axle.AxleWeightShare * TotalVehicleWeight() * g / axle.TyreTestLoad / nrWheels).Value(), Physics.RollResistanceExponent - 1); wheelsInertia += nrWheels * axle.Inertia; } - TotalRollResistanceCoefficient = RRC; + TotalRollResistanceCoefficient = rrc; WheelsInertia = wheelsInertia; } diff --git a/VectoCoreTest/Models/Simulation/MeasuredSpeedModeTest.cs b/VectoCoreTest/Models/Simulation/MeasuredSpeedModeTest.cs index e1105073573b66514be6ca310c3b154863b7e57d..1a4b1ab4b71a71fe321cf098d4c210bc75154b14 100644 --- a/VectoCoreTest/Models/Simulation/MeasuredSpeedModeTest.cs +++ b/VectoCoreTest/Models/Simulation/MeasuredSpeedModeTest.cs @@ -438,7 +438,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation { var tbl = VectoCSVFile.Read(@"TestData/MeasuredSpeed/VairBetaFull.vcdb"); - var dataBus = new MockVairVechicleContainer(); + var dataBus = new MockVairVehicleContainer(); var vairbeta = new CrosswindCorrectionVAirBeta(5.SI<SquareMeter>(), CrossWindCorrectionCurveReader.ReadCdxABetaTable(tbl)); diff --git a/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs b/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs index 1754b4ecffbdf92d6c0269ea79ae005b6188358c..2c656718de261014838eb7fc1160f82534d200b6 100644 --- a/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs +++ b/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs @@ -462,13 +462,13 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent { var engineData = MockSimulationDataFactory.CreateEngineDataFromFile(CoachEngine); var motorway = engineData.WHTCMotorway; - Assert.AreEqual(motorway, 0); + Assert.AreEqual(motorway, 1); var rural = engineData.WHTCRural; - Assert.AreEqual(rural, 0); + Assert.AreEqual(rural, 1); var urban = engineData.WHTCUrban; - Assert.AreEqual(urban, 0); + Assert.AreEqual(urban, 1); var displace = engineData.Displacement; Assert.AreEqual(0.01273, displace.Value()); diff --git a/VectoCoreTest/TestData/Generic Vehicles/Engineering Mode/24t Coach/24t Coach.veng b/VectoCoreTest/TestData/Generic Vehicles/Engineering Mode/24t Coach/24t Coach.veng index d93e66348bbf92fc91f80d7b24ae03ebc3a936e6..2d1fb173be9dd9fc5c919c5c9d29abf045e6a21d 100644 --- a/VectoCoreTest/TestData/Generic Vehicles/Engineering Mode/24t Coach/24t Coach.veng +++ b/VectoCoreTest/TestData/Generic Vehicles/Engineering Mode/24t Coach/24t Coach.veng @@ -13,8 +13,8 @@ "Inertia": 3.8, "FullLoadCurve": "24t Coach.vfld", "FuelMap": "24t Coach.vmap", - "WHTC-Urban": 0.0, - "WHTC-Rural": 0.0, - "WHTC-Motorway": 0.0 + "WHTC-Urban": 1.0, + "WHTC-Rural": 1.0, + "WHTC-Motorway": 1.0 } } \ No newline at end of file diff --git a/VectoCoreTest/TestData/MeasuredSpeed/Vehicle.vveh b/VectoCoreTest/TestData/MeasuredSpeed/Vehicle.vveh index 199ea3620df45efd765c5073953ccf658a1eb4a3..64e546f5c6b2df0e1f2e7a74371c39244dd216a7 100644 --- a/VectoCoreTest/TestData/MeasuredSpeed/Vehicle.vveh +++ b/VectoCoreTest/TestData/MeasuredSpeed/Vehicle.vveh @@ -11,7 +11,7 @@ "CurbWeight": 8862.0, "CurbWeightExtra": 0.0, "Loading": 0.0, - "MassMax": 11990.0, + "MassMax": 11.9, "CdA": 6.16498344, "Rim": "-", "rdyn": 520.0, diff --git a/VectoCoreTest/TestData/MeasuredSpeed/VehicleVair.vveh b/VectoCoreTest/TestData/MeasuredSpeed/VehicleVair.vveh index 8049a863245c4bb00a769abf5f1cb623ebb9daef..8251e4239ea688981df7c3e9ba227534bb8a871e 100644 --- a/VectoCoreTest/TestData/MeasuredSpeed/VehicleVair.vveh +++ b/VectoCoreTest/TestData/MeasuredSpeed/VehicleVair.vveh @@ -11,7 +11,7 @@ "CurbWeight": 8862.0, "CurbWeightExtra": 0.0, "Loading": 0.0, - "MassMax": 11990.0, + "MassMax": 11.9, "CdA": 6.16498344, "Rim": "-", "rdyn": 520.0, diff --git a/VectoCoreTest/TestData/Pwheel/Atego.vveh b/VectoCoreTest/TestData/Pwheel/Atego.vveh index 4fac09018e5f85a56338c2007682e57d3b88070c..71dc0171f0fa95fdcd7f57017239b3890558a4c0 100644 --- a/VectoCoreTest/TestData/Pwheel/Atego.vveh +++ b/VectoCoreTest/TestData/Pwheel/Atego.vveh @@ -11,7 +11,7 @@ "CurbWeight": 12000.0, "CurbWeightExtra": 0.0, "Loading": 0.0, - "MassMax": 12000.0, + "MassMax": 12, "CdA": 4.15, "rdyn": 421.0, "Rim": "5° DC Rims", diff --git a/VectoCoreTest/TestData/Pwheel/OM906.veng b/VectoCoreTest/TestData/Pwheel/OM906.veng index e6884700254ce62441483c4199d9afcc6ccf9e66..3ad4a55e7ac3e0bce0b27d5be1f5ef73af2a4eb6 100644 --- a/VectoCoreTest/TestData/Pwheel/OM906.veng +++ b/VectoCoreTest/TestData/Pwheel/OM906.veng @@ -13,8 +13,8 @@ "Inertia": 2.13098, "FullLoadCurve": "o9061750850E4.vfld", "FuelMap": "om9062101120_e4e5_b7c_sl2499_20110727.vmap", - "WHTC-Urban": 0.0, - "WHTC-Rural": 0.0, - "WHTC-Motorway": 0.0 + "WHTC-Urban": 1.0, + "WHTC-Rural": 1.0, + "WHTC-Motorway": 1.0 } } \ No newline at end of file diff --git a/VectoCoreTest/Utils/MockVairVechicleContainer.cs b/VectoCoreTest/Utils/MockVairVehicleContainer.cs similarity index 98% rename from VectoCoreTest/Utils/MockVairVechicleContainer.cs rename to VectoCoreTest/Utils/MockVairVehicleContainer.cs index 91c2e6f010c277595aeb8d5cf758fdc09078f5b3..8033a5707ee54dcaf3e333fdc9424fcfac426a1d 100644 --- a/VectoCoreTest/Utils/MockVairVechicleContainer.cs +++ b/VectoCoreTest/Utils/MockVairVehicleContainer.cs @@ -42,7 +42,7 @@ using TUGraz.VectoCore.Utils; namespace TUGraz.VectoCore.Tests.Utils { - public class MockVairVechicleContainer : IVehicleContainer + public class MockVairVehicleContainer : IVehicleContainer { // only CycleData Lookup is set / accessed... diff --git a/VectoCoreTest/VectoCoreTest.csproj b/VectoCoreTest/VectoCoreTest.csproj index 8f9c483c922d7bef2ec28364d6855494dd145f88..b2903f9b8e16f8e2b486114cbb3cbf8c9ffa8a21 100644 --- a/VectoCoreTest/VectoCoreTest.csproj +++ b/VectoCoreTest/VectoCoreTest.csproj @@ -91,7 +91,7 @@ <Compile Include="Models\SimulationComponent\GearboxPowertrainTest.cs" /> <Compile Include="Utils\InputDataHelper.cs" /> <Compile Include="Utils\MockSimulationDataFactory.cs" /> - <Compile Include="Utils\MockVairVechicleContainer.cs" /> + <Compile Include="Utils\MockVairVehicleContainer.cs" /> <Compile Include="Utils\Port.cs" /> <Compile Include="Models\SimulationComponentData\AuxiliaryTypeHelperTest.cs" /> <Compile Include="Models\Simulation\AuxTests.cs" />