diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs index 5ffa57f7bb729ae233fee73fcf6cad847e7b1618..0bae42915ae32d76dbdce57ce1eb93bed24d694e 100644 --- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs +++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs @@ -149,14 +149,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON get { var retarderType = Body.GetEx(JsonKeys.Vehicle_Retarder).GetEx<string>(JsonKeys.Vehicle_Retarder_Type); - switch (retarderType.ToLowerInvariant()) { - case "primary": - return RetarderType.TransmissionInputRetarder; - case "secondary": - return RetarderType.TransmissionOutputRetarder; - default: - return retarderType.ParseEnum<RetarderType>(); - } + return RetarderTypeHelper.Parse(retarderType); } } diff --git a/VectoCore/VectoCore/Models/Declaration/DeclarationData.cs b/VectoCore/VectoCore/Models/Declaration/DeclarationData.cs index bd968c9cb380c1db44c5f0f3f92d847ffa117f48..d5723940852cf2c8e14f011097eff0290290109c 100644 --- a/VectoCore/VectoCore/Models/Declaration/DeclarationData.cs +++ b/VectoCore/VectoCore/Models/Declaration/DeclarationData.cs @@ -156,6 +156,30 @@ namespace TUGraz.VectoCore.Models.Declaration return _instance ?? (_instance = new DeclarationData()); } + public static class Physics + { + /// <summary> + /// The standard acceleration for gravity on earth. + /// http://physics.nist.gov/Pubs/SP330/sp330.pdf (page 52) + /// </summary> + public static readonly MeterPerSquareSecond GravityAccelleration = 9.80665.SI<MeterPerSquareSecond>(); + + /// <summary> + /// Density of air. + /// </summary> + public static readonly KilogramPerCubicMeter AirDensity = 1.188.SI<KilogramPerCubicMeter>(); + + /// <summary> + /// Density of fuel. + /// </summary> + public static readonly KilogramPerCubicMeter FuelDensity = 832.SI<KilogramPerCubicMeter>(); + + /// <summary> + /// fuel[kg] => co2[kg]. Factor to convert from fuel weight to co2 weight. + /// </summary> + public static readonly double CO2PerFuelWeight = 3.16; + } + public static class Driver { public static class LookAhead @@ -203,7 +227,7 @@ namespace TUGraz.VectoCore.Models.Declaration public static readonly KilogramSquareMeter EngineBaseInertia = 0.41.SI<KilogramSquareMeter>(); public static readonly SI EngineDisplacementInertia = (0.27 * 1000).SI().Kilo.Gramm.Per.Meter; // [kg/m] - public static KilogramSquareMeter EngineInertia(SI displacement, GearboxType gbxType) + public static KilogramSquareMeter EngineInertia(CubicMeter displacement, GearboxType gbxType) { // VB Code: Return 1.3 + 0.41 + 0.27 * (Displ / 1000) return (gbxType.AutomaticTransmission() ? TorqueConverterInertia : ClutchInertia) + EngineBaseInertia + diff --git a/VectoCore/VectoCore/Models/Declaration/IDeclarationAuxiliaryTable.cs b/VectoCore/VectoCore/Models/Declaration/IDeclarationAuxiliaryTable.cs new file mode 100644 index 0000000000000000000000000000000000000000..94cd089807486bc62ba4c8adc0b0c1a06ac98a17 --- /dev/null +++ b/VectoCore/VectoCore/Models/Declaration/IDeclarationAuxiliaryTable.cs @@ -0,0 +1,7 @@ +namespace TUGraz.VectoCore.Models.Declaration +{ + public interface IDeclarationAuxiliaryTable + { + string[] GetTechnologies(); + } +} \ No newline at end of file diff --git a/VectoCore/VectoCore/VectoCore.csproj b/VectoCore/VectoCore/VectoCore.csproj index 48e120931a9e7cd5507addbb61605ee1aad49ba5..e0fcc547eaddeecaee07a4b6a8d6f11fd1520908 100644 --- a/VectoCore/VectoCore/VectoCore.csproj +++ b/VectoCore/VectoCore/VectoCore.csproj @@ -134,6 +134,7 @@ <Compile Include="Models\Connector\Ports\IFvPort.cs" /> <Compile Include="Models\Connector\Ports\ITnPort.cs" /> <Compile Include="InputData\Reader\ComponentData\AccelerationCurveReader.cs" /> + <Compile Include="Models\Declaration\IDeclarationAuxiliaryTable.cs" /> <Compile Include="Models\SimulationComponent\Data\AngularGearData.cs" /> <Compile Include="InputData\Reader\ComponentData\TransmissionLossMapReader.cs" /> <Compile Include="InputData\Reader\ComponentData\RetarderLossMapReader.cs" />