Code development platform for open source projects from the European Union institutions

Skip to content
Snippets Groups Projects
Commit 12d744d6 authored by Markus QUARITSCH's avatar Markus QUARITSCH
Browse files

fix: actual engine correction factor was not set for completed vehicle

parent 7ef249ff
No related branches found
No related tags found
No related merge requests found
......@@ -39,9 +39,9 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
// only powertrain components are different
public CombustionEngineData CreateEngineData(IVehicleDeclarationInputData primaryVehicle, int modeIdx)
public CombustionEngineData CreateEngineData(IVehicleDeclarationInputData primaryVehicle, int modeIdx, Mission mission)
{
return GenericBusEngineData.Instance.CreateGenericBusEngineData(primaryVehicle, modeIdx);
return GenericBusEngineData.Instance.CreateGenericBusEngineData(primaryVehicle, modeIdx, mission);
}
#region Overrides of DeclarationDataAdapterHeavyLorry
......
......@@ -113,7 +113,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
_segmentCompletedBus.Missions.First().Loadings.First());
tmpVehicleData.VehicleCategory = VehicleCategory.GenericBusVehicle;
var combustionEngineData = DataAdapterGeneric.CreateEngineData(PrimaryVehicle, 0);
var combustionEngineData = DataAdapterGeneric.CreateEngineData(PrimaryVehicle, 0, _segmentCompletedBus.Missions.First());
_axlegearData = DataAdapterGeneric.CreateAxleGearData(PrimaryVehicle.Components.AxleGearInputData);
......@@ -253,7 +253,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
VehicleData = DataAdapterSpecific.CreateVehicleData(PrimaryVehicle, CompletedVehicle, _segmentCompletedBus,
mission, loading),
AirdragData = DataAdapterSpecific.CreateAirdragData(CompletedVehicle, mission),
EngineData = DataAdapterSpecific.CreateEngineData(PrimaryVehicle, modeIdx),
EngineData = DataAdapterSpecific.CreateEngineData(PrimaryVehicle, modeIdx, mission),
GearboxData = _gearboxData,
AxleGearData = _axlegearData,
AngledriveData = _angledriveData,
......@@ -298,7 +298,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
Loading = loading.Key,
VehicleData = DataAdapterGeneric.CreateVehicleData(PrimaryVehicle, primarySegment, mission, loading),
AirdragData = DataAdapterGeneric.CreateAirdragData(null, mission, new Segment()),
EngineData = DataAdapterGeneric.CreateEngineData(PrimaryVehicle, modeIdx),
EngineData = DataAdapterGeneric.CreateEngineData(PrimaryVehicle, modeIdx, mission),
GearboxData = _gearboxData,
AxleGearData = _axlegearData,
AngledriveData = _angledriveData,
......
......@@ -43,7 +43,7 @@ namespace TUGraz.VectoCore.Models.Declaration
}
public CombustionEngineData CreateGenericBusEngineData(IVehicleDeclarationInputData primaryVehicle, int modeIdx)
public CombustionEngineData CreateGenericBusEngineData(IVehicleDeclarationInputData primaryVehicle, int modeIdx, Mission mission)
{
if (modeIdx >= primaryVehicle.Components.EngineInputData.EngineModes.Count) {
throw new VectoException(
......@@ -80,7 +80,7 @@ namespace TUGraz.VectoCore.Models.Declaration
engine.FullLoadCurves = fullLoadCurves;
var fuel = GetCombustionEngineFuelData(primaryVehicle.Components.EngineInputData.EngineModes[modeIdx], fullLoadCurves[0]);
var fuel = GetCombustionEngineFuelData(primaryVehicle.Components.EngineInputData.EngineModes[modeIdx], fullLoadCurves[0], mission);
......@@ -126,8 +126,7 @@ namespace TUGraz.VectoCore.Models.Declaration
return UseDieselFuel(engineMode) ? DieselCIFactors : PIFactors;
}
private CombustionEngineFuelData GetCombustionEngineFuelData(IEngineModeDeclarationInputData engineMode,
EngineFullLoadCurve fullLoadCurve)
private CombustionEngineFuelData GetCombustionEngineFuelData(IEngineModeDeclarationInputData engineMode, EngineFullLoadCurve fullLoadCurve, Mission mission)
{
var ressourceId = GetEngineRessourceId(engineMode);
......@@ -171,7 +170,9 @@ namespace TUGraz.VectoCore.Models.Declaration
ConsumptionMap = fcMap,
FuelData = GetFuelData(engineMode)
};
fuel.FuelConsumptionCorrectionFactor = DeclarationData.WHTCCorrection.Lookup(
mission.MissionType.GetNonEMSMissionType(), fuel.WHTCRural, fuel.WHTCUrban,
fuel.WHTCMotorway) * fuel.ColdHotCorrectionFactor * fuel.CorrectionFactorRegPer;
return fuel;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment