diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/CompletedBusRunDataFactory/DeclarationModeCompletedBusRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/CompletedBusRunDataFactory/DeclarationModeCompletedBusRunDataFactory.cs index 73c6fb64d73963eb8e9e528a0c6eeed0328c32e0..42f1430d7806315c2e0d2758de3f75988e853f39 100644 --- a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/CompletedBusRunDataFactory/DeclarationModeCompletedBusRunDataFactory.cs +++ b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/CompletedBusRunDataFactory/DeclarationModeCompletedBusRunDataFactory.cs @@ -654,10 +654,12 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl.DeclarationMode.CompletedBusRun (bs) => rd.BatteryData = bs, (sc) => rd.SuperCapData = sc); + var averageVoltage = rd.BatteryData != null + ? rd.BatteryData.CalculateAverageVoltage() + : (rd.SuperCapData.MaxVoltage - rd.SuperCapData.MinVoltage) / 2.0; - - rd.ElectricMachinesData = DataAdapterGeneric.CreateElectricMachines(PrimaryVehicle.Components.ElectricMachines, - PrimaryVehicle.ElectricMotorTorqueLimits, rd.BatteryData.CalculateAverageVoltage(), null); + rd.ElectricMachinesData = DataAdapterGeneric.CreateElectricMachines(PrimaryVehicle.Components.ElectricMachines, + PrimaryVehicle.ElectricMotorTorqueLimits, averageVoltage, null); @@ -722,8 +724,12 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl.DeclarationMode.CompletedBusRun (bs) => rd.BatteryData = bs, (sc) => rd.SuperCapData = sc); + var averageVoltage = rd.BatteryData != null + ? rd.BatteryData.CalculateAverageVoltage() + : (rd.SuperCapData.MaxVoltage - rd.SuperCapData.MinVoltage) / 2.0; + rd.ElectricMachinesData = DataAdapterGeneric.CreateElectricMachines(PrimaryVehicle.Components.ElectricMachines, - PrimaryVehicle.ElectricMotorTorqueLimits, rd.BatteryData.CalculateAverageVoltage(), null); + PrimaryVehicle.ElectricMotorTorqueLimits, averageVoltage, null); rd.VehicleData = DataAdapterSpecific.CreateVehicleData(PrimaryVehicle, CompletedVehicle, _segment, mission, loading);