From 62220909c09ace7a4f549e2db35f098a1d28024f Mon Sep 17 00:00:00 2001 From: Markus Quaritsch <quaritsch@ivt.tugraz.at> Date: Thu, 19 Oct 2023 14:39:32 +0200 Subject: [PATCH] add meaningful error message in case overload buffer calculation fails --- .../SimulationComponents/ElectricMachinesDataAdapter.cs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/SimulationComponents/ElectricMachinesDataAdapter.cs b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/SimulationComponents/ElectricMachinesDataAdapter.cs index a4c204ad64..0459458170 100644 --- a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/SimulationComponents/ElectricMachinesDataAdapter.cs +++ b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/SimulationComponents/ElectricMachinesDataAdapter.cs @@ -446,6 +446,11 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter.SimulationComponen var continuousPowerLoss = (1 / etaOvl.Value() - 1) * continuousTorqueSpeed * continuousTorque; var ovlElPwr = voltageLevel.LookupElectricPower(voltageEntry.VoltageLevel, continuousTorqueSpeed, -overloadTorqueTrans, gear).ElectricalPower; + if (ovlElPwr == null) { + throw new VectoException( + $"Overloadbuffer calculation: failed to lookup electric power for overload point {overloadTestSpeed} {-overloadTorqueTrans}"); + + } var overloadTorque = (voltageEntry.OverloadTorque ?? 0.SI<NewtonMeter>()) * count / gearRatioUsedForMeasurement; var overloadPwrLoss = -ovlElPwr - overloadTorque * overloadTestSpeed; // loss needs to be positive var overloadBuffer = (overloadPwrLoss - continuousPowerLoss) * voltageEntry.OverloadTime; @@ -470,6 +475,10 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter.SimulationComponen var continuousPowerLoss = (1 / etaOvl.Value() - 1) * continuousTorqueSpeed * continuousTorque; var ovlElPwr = voltageLevel.LookupElectricPower(voltageEntry.VoltageLevel, overloadTestSpeed, -overloadTorque, gear).ElectricalPower; + if (ovlElPwr == null) { + throw new VectoException( + $"Overloadbuffer calculation: failed to lookup electric power for overload point {overloadTestSpeed} {-overloadTorque}"); + } var overloadPwrLoss = -ovlElPwr - overloadTorque * overloadTestSpeed; // loss needs to be positive var overloadBuffer = (overloadPwrLoss - continuousPowerLoss) * voltageEntry.OverloadTime; return new OverloadData() { -- GitLab