From 6d72ac6eb851cb1337c434bd8eafc01208fd66cf Mon Sep 17 00:00:00 2001 From: Markus Quaritsch <markus.quaritsch@tugraz.at> Date: Wed, 24 Feb 2016 12:40:01 +0100 Subject: [PATCH] moving engineering input data interfaces to a separate file --- VectoCore/InputData/EngineeringInputData.cs | 270 ++++++++++++++++++++ VectoCore/InputData/InputData.cs | 250 ------------------ 2 files changed, 270 insertions(+), 250 deletions(-) create mode 100644 VectoCore/InputData/EngineeringInputData.cs diff --git a/VectoCore/InputData/EngineeringInputData.cs b/VectoCore/InputData/EngineeringInputData.cs new file mode 100644 index 0000000000..d239670bd6 --- /dev/null +++ b/VectoCore/InputData/EngineeringInputData.cs @@ -0,0 +1,270 @@ +using System.Collections.Generic; +using System.Data; +using TUGraz.VectoCore.Models.SimulationComponent.Data; +using TUGraz.VectoCore.Utils; + +namespace TUGraz.VectoCore.InputData +{ + public interface IEngineeringJobInputData : IDeclarationJobInputData + { + new IVehicleEngineeringInputData Vehicle { get; } + + /// <summary> + /// P008 Cycles + /// cf. VECTO Input Parameters.xlsx + /// </summary> + IList<ICycleData> Cycles { get; } + + /// <summary> + /// P001 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + bool EngineOnlyMode { get; } + } + + public interface IVehicleEngineeringInputData : IVehicleDeclarationInputData + { + /// <summary> + /// P039 Curb Weight Extra Trailer/Body + /// cf. VECTO Input Parameters.xlsx + /// </summary> + Kilogram CurbWeightExtra { get; } + + /// <summary> + /// P040 Loading + /// cf. VECTO Input Parameters.xlsx + /// </summary> + Kilogram Loading { get; } + + /// <summary> + /// parameters for every axle + /// P044, P045, P046, P047, P048, P108 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + new IList<IAxleEngineeringInputData> Axles { get; } + + /// <summary> + /// P049 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + Meter DynamicTyreRadius { get; } + + /// <summary> + /// P050 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + CrossWindCorrectionMode CrossWindCorrectionMode { get; } + + /// <summary> + /// P051 + /// P055, P056 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + DataTable CrosswindCorrectionMap { get; } + } + + + public interface IAxleEngineeringInputData : IAxleDeclarationInputData + { + /// <summary> + /// P044 (0 - 1) + /// cf. VECTO Input Parameters.xlsx + /// </summary> + double AxleWeightShare { get; } + + /// <summary> + /// P048 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + KilogramSquareMeter Inertia { get; } + } + + + public interface IGearboxEngineeringInputData : IGearboxDeclarationInputData + { + /// <summary> + /// P080 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + KilogramSquareMeter Inertia { get; } + + /// <summary> + /// P081 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + Second TractionInterruption { get; } + + /// <summary> + /// P086 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + Second ShiftTime { get; } + + /// <summary> + /// P083 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + bool EarlyShiftUp { get; } + + /// <summary> + /// P085 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + double TorqueReserve { get; } + + /// <summary> + /// P087 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + MeterPerSecond StartSpeed { get; } + + /// <summary> + /// P088 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + MeterPerSquareSecond StartAcceleration { get; } + + /// <summary> + /// P089 + /// [%] (0-1) + /// cf. VECTO Input Parameters.xlsx + /// </summary> + double StartTorqueReserve { get; } + + /// <summary> + /// P084 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + bool SkipGears { get; } + + + /// <summary> + /// P090, P091, P092, P127 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + ITorqueConverterInputData TorqueConverter { get; } + } + + public interface IEngineEngineeringInputData : IEngineDeclarationInputData + { + /// <summary> + /// P062 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + KilogramSquareMeter Inertia { get; } + } + + + public interface IAuxiliariesEngineeringInputData : IAuxiliariesDeclarationInputData + { + new IList<IAuxiliaryEngineeringInputData> Auxiliaries { get; } + } + + + public interface IDriverEngineeringInputData : IDriverDeclarationInputData + { + new IStartStopEngineeringInputData StartStop { get; } + + new IOverSpeedEcoRollEngineeringInputData OverSpeedEcoRoll { get; } + + /// <summary> + /// P009; P033, P034, P035 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + DataTable AccelerationCurve { get; } + + ILookaheadCoastingInputData Lookahead { get; } + } + + + public interface IOverSpeedEcoRollEngineeringInputData : IOverSpeedEcoRollDeclarationInputData + { + /// <summary> + /// P016 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + MeterPerSecond MinSpeed { get; } + + /// <summary> + /// P017 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + MeterPerSecond OverSpeed { get; } + + /// <summary> + /// P018 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + MeterPerSecond UnderSpeed { get; } + } + + public interface IStartStopEngineeringInputData : IStartStopDeclarationInputData + { + /// <summary> + /// P011 StartStop - Max speed + /// cf. VECTO Input Parameters.xlsx + /// </summary> + MeterPerSecond MaxSpeed { get; } + + /// <summary> + /// P012 StartStop - Min ICE-ON Time + /// cf. VECTO Input Parameters.xlsx + /// </summary> + Second MinTime { get; } + + /// <summary> + /// P013 StartStop - Activation Delay + /// cf. VECTO Input Parameters.xlsx + /// </summary> + Second Delay { get; } + } + + + public interface ILookaheadCoastingInputData + { + /// <summary> + /// P019 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + bool Enabled { get; } + + /// <summary> + /// P020 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + MeterPerSquareSecond Deceleration { get; } + + /// <summary> + /// P021 + /// cf. VECTO Input Parameters.xlsx + /// </summary> + MeterPerSecond MinSpeed { get; } + } + + public interface IAuxiliaryEngineeringInputData : IAuxiliaryDeclarationInputData + { + /// <summary> + /// P022 Aux-InputFile: transmission ratio + /// cf. VECTO Input Parameters.xlsx + /// </summary> + double TransmissionRatio { get; } + + /// <summary> + /// P023 Aux-InputFile: efficiency to engine + /// cf. VECTO Input Parameters.xlsx + /// </summary> + double EfficiencyToEngine { get; } + + /// <summary> + /// P024 Aux-InputFile: efficiency to supply + /// cf. VECTO Input Parameters.xlsx + /// </summary> + double EfficiencyToSupply { get; } + + /// <summary> + /// P025, P026, P027 Aux-InputFile: map + /// cf. VECTO Input Parameters.xlsx + /// </summary> + DataTable DemandMap { get; } + } +} \ No newline at end of file diff --git a/VectoCore/InputData/InputData.cs b/VectoCore/InputData/InputData.cs index f10c940f0d..e89e78c060 100644 --- a/VectoCore/InputData/InputData.cs +++ b/VectoCore/InputData/InputData.cs @@ -33,23 +33,6 @@ namespace TUGraz.VectoCore.InputData string JobName { get; } } - public interface IEngineeringJobInputData : IDeclarationJobInputData - { - new IVehicleEngineeringInputData Vehicle { get; } - - /// <summary> - /// P008 Cycles - /// cf. VECTO Input Parameters.xlsx - /// </summary> - IList<ICycleData> Cycles { get; } - - /// <summary> - /// P001 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - bool EngineOnlyMode { get; } - } - public interface IComponentInputData { bool SavedInDeclarationMode { get; } @@ -129,46 +112,6 @@ namespace TUGraz.VectoCore.InputData double RetarderRatio { get; } } - public interface IVehicleEngineeringInputData : IVehicleDeclarationInputData - { - /// <summary> - /// P039 Curb Weight Extra Trailer/Body - /// cf. VECTO Input Parameters.xlsx - /// </summary> - Kilogram CurbWeightExtra { get; } - - /// <summary> - /// P040 Loading - /// cf. VECTO Input Parameters.xlsx - /// </summary> - Kilogram Loading { get; } - - /// <summary> - /// parameters for every axle - /// P044, P045, P046, P047, P048, P108 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - new IList<IAxleEngineeringInputData> Axles { get; } - - /// <summary> - /// P049 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - Meter DynamicTyreRadius { get; } - - /// <summary> - /// P050 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - CrossWindCorrectionMode CrossWindCorrectionMode { get; } - - /// <summary> - /// P051 - /// P055, P056 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - DataTable CrosswindCorrectionMap { get; } - } public interface IRetarderInputData : IComponentInputData { @@ -215,22 +158,6 @@ namespace TUGraz.VectoCore.InputData Newton TyreTestLoad { get; } } - public interface IAxleEngineeringInputData : IAxleDeclarationInputData - { - /// <summary> - /// P044 (0 - 1) - /// cf. VECTO Input Parameters.xlsx - /// </summary> - double AxleWeightShare { get; } - - /// <summary> - /// P048 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - KilogramSquareMeter Inertia { get; } - } - - public interface IGearboxDeclarationInputData : IComponentInputData { /// <summary> @@ -246,71 +173,6 @@ namespace TUGraz.VectoCore.InputData IList<ITransmissionInputData> Gears { get; } } - public interface IGearboxEngineeringInputData : IGearboxDeclarationInputData - { - /// <summary> - /// P080 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - KilogramSquareMeter Inertia { get; } - - /// <summary> - /// P081 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - Second TractionInterruption { get; } - - /// <summary> - /// P086 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - Second ShiftTime { get; } - - /// <summary> - /// P083 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - bool EarlyShiftUp { get; } - - /// <summary> - /// P085 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - double TorqueReserve { get; } - - /// <summary> - /// P087 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - MeterPerSecond StartSpeed { get; } - - /// <summary> - /// P088 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - MeterPerSquareSecond StartAcceleration { get; } - - /// <summary> - /// P089 - /// [%] (0-1) - /// cf. VECTO Input Parameters.xlsx - /// </summary> - double StartTorqueReserve { get; } - - /// <summary> - /// P084 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - bool SkipGears { get; } - - - /// <summary> - /// P090, P091, P092, P127 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - ITorqueConverterInputData TorqueConverter { get; } - } - public interface ITransmissionInputData { int Gear { get; } @@ -440,15 +302,6 @@ namespace TUGraz.VectoCore.InputData DataTable FullLoadCurve { get; } } - public interface IEngineEngineeringInputData : IEngineDeclarationInputData - { - /// <summary> - /// P062 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - KilogramSquareMeter Inertia { get; } - } - public interface IAuxiliariesDeclarationInputData { bool SavedInDeclarationMode { get; } @@ -456,10 +309,6 @@ namespace TUGraz.VectoCore.InputData IList<IAuxiliaryDeclarationInputData> Auxiliaries { get; } } - public interface IAuxiliariesEngineeringInputData : IAuxiliariesDeclarationInputData - { - new IList<IAuxiliaryEngineeringInputData> Auxiliaries { get; } - } public interface ICycleData { @@ -481,20 +330,6 @@ namespace TUGraz.VectoCore.InputData IOverSpeedEcoRollDeclarationInputData OverSpeedEcoRoll { get; } } - public interface IDriverEngineeringInputData : IDriverDeclarationInputData - { - new IStartStopEngineeringInputData StartStop { get; } - - new IOverSpeedEcoRollEngineeringInputData OverSpeedEcoRoll { get; } - - /// <summary> - /// P009; P033, P034, P035 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - DataTable AccelerationCurve { get; } - - ILookaheadCoastingInputData Lookahead { get; } - } public interface IOverSpeedEcoRollDeclarationInputData { @@ -505,47 +340,7 @@ namespace TUGraz.VectoCore.InputData DriverData.DriverMode Mode { get; } } - public interface IOverSpeedEcoRollEngineeringInputData : IOverSpeedEcoRollDeclarationInputData - { - /// <summary> - /// P016 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - MeterPerSecond MinSpeed { get; } - /// <summary> - /// P017 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - MeterPerSecond OverSpeed { get; } - - /// <summary> - /// P018 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - MeterPerSecond UnderSpeed { get; } - } - - public interface ILookaheadCoastingInputData - { - /// <summary> - /// P019 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - bool Enabled { get; } - - /// <summary> - /// P020 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - MeterPerSquareSecond Deceleration { get; } - - /// <summary> - /// P021 - /// cf. VECTO Input Parameters.xlsx - /// </summary> - MeterPerSecond MinSpeed { get; } - } public interface IStartStopDeclarationInputData { @@ -556,26 +351,7 @@ namespace TUGraz.VectoCore.InputData bool Enabled { get; } } - public interface IStartStopEngineeringInputData : IStartStopDeclarationInputData - { - /// <summary> - /// P011 StartStop - Max speed - /// cf. VECTO Input Parameters.xlsx - /// </summary> - MeterPerSecond MaxSpeed { get; } - /// <summary> - /// P012 StartStop - Min ICE-ON Time - /// cf. VECTO Input Parameters.xlsx - /// </summary> - Second MinTime { get; } - - /// <summary> - /// P013 StartStop - Activation Delay - /// cf. VECTO Input Parameters.xlsx - /// </summary> - Second Delay { get; } - } public interface IAuxiliaryDeclarationInputData { @@ -606,30 +382,4 @@ namespace TUGraz.VectoCore.InputData IList<string> TechList { get; } } - public interface IAuxiliaryEngineeringInputData : IAuxiliaryDeclarationInputData - { - /// <summary> - /// P022 Aux-InputFile: transmission ratio - /// cf. VECTO Input Parameters.xlsx - /// </summary> - double TransmissionRatio { get; } - - /// <summary> - /// P023 Aux-InputFile: efficiency to engine - /// cf. VECTO Input Parameters.xlsx - /// </summary> - double EfficiencyToEngine { get; } - - /// <summary> - /// P024 Aux-InputFile: efficiency to supply - /// cf. VECTO Input Parameters.xlsx - /// </summary> - double EfficiencyToSupply { get; } - - /// <summary> - /// P025, P026, P027 Aux-InputFile: map - /// cf. VECTO Input Parameters.xlsx - /// </summary> - DataTable DemandMap { get; } - } } \ No newline at end of file -- GitLab