From 2c1f74c6fa56b1f396e0bc1a636ee2e7da2f76df Mon Sep 17 00:00:00 2001
From: Michael Krisper <michael.krisper@tugraz.at>
Date: Wed, 13 Jul 2022 16:22:44 +0200
Subject: [PATCH] AbstractHybridStrategy.HandleRequestExceedsMaxPower:
 corrected object-reference not found exception

---
 .../Models/SimulationComponent/Strategies/HybridStrategy.cs     | 2 +-
 VectoCore/VectoCore/Utils/SearchAlgorithm.cs                    | 2 --
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs b/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs
index 38e36b8cf9..eebf4602ec 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs
@@ -863,7 +863,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies
 				}
 				var testRequest = RequestDryRun(absTime, dt, outTorque, outAngularVelocity, nextGear, emOff);
 				if (testRequest != null && testRequest.Engine.EngineSpeed < ModelData.EngineData.FullLoadCurves[0].NTq99hSpeed) {
-					var maxGbxTorque = StrategyParameters.MaxPropulsionTorque?.GetVECTOValueOrDefault(nextGear).FullLoadDriveTorque(testRequest.Gearbox.InputSpeed);
+					var maxGbxTorque = StrategyParameters.MaxPropulsionTorque?.GetVECTOValueOrDefault(nextGear)?.FullLoadDriveTorque(testRequest.Gearbox.InputSpeed);
 					candidates[nextGear] = maxGbxTorque != null
 						? Tuple.Create(maxGbxTorque * testRequest.Gearbox.InputSpeed, testRequest)
 						: Tuple.Create(testRequest.Gearbox.InputTorque * testRequest.Gearbox.InputSpeed, testRequest);
diff --git a/VectoCore/VectoCore/Utils/SearchAlgorithm.cs b/VectoCore/VectoCore/Utils/SearchAlgorithm.cs
index d821eaf669..4fe1b3ca9c 100644
--- a/VectoCore/VectoCore/Utils/SearchAlgorithm.cs
+++ b/VectoCore/VectoCore/Utils/SearchAlgorithm.cs
@@ -178,7 +178,6 @@ namespace TUGraz.VectoCore.Utils
 			//iterationCount += 100;
 			log.Debug("LineSearch could not find an operating point.");
 			log.Error("Exceeded max iterations when searching for operating point!");
-			log.Error("debug: {0}", debug);
 
 			WriteSearch(debug, "LineSearch.csv");
 			throw new VectoSearchFailedException("Failed to find operating point! points: {0}", debug.LocalData.Select(d => d.b).Join());
@@ -295,7 +294,6 @@ namespace TUGraz.VectoCore.Utils
 			log.Debug("InterpolateSearch could not find an operating point.");
 #if DEBUG
 			log.Error("InterpolateSearch exceeded max iterations when searching for operating point!");
-			log.Error("debug: {0}", debug);
 #endif
 			WriteSearch(debug, "InterpolateSearch.csv");
 			throw new VectoSearchFailedException("Failed to find operating point! points: {0}", debug.LocalData.Select(d => d.b).Join());
-- 
GitLab