From 530b8c583b09381ebaeda4dc93ed6f66f028f18c Mon Sep 17 00:00:00 2001
From: Markus Quaritsch <markus.quaritsch@tugraz.at>
Date: Thu, 11 Feb 2016 16:13:16 +0100
Subject: [PATCH] gearbox has losses also at 0 rpm (taken from loss map)

---
 .../Models/SimulationComponent/GearboxTest.cs   | 17 +++++++----------
 1 file changed, 7 insertions(+), 10 deletions(-)

diff --git a/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs b/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs
index 3c6552fabf..4da9c9b1dc 100644
--- a/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs
+++ b/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs
@@ -189,9 +189,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 
 			var modData = new MockModalDataContainer();
 			Assert.IsTrue(gearbox.ModelData.Gears[gearbox.Gear].LossMap.Extrapolated);
-			AssertHelper.Exception<VectoException>(() => {
-				gearbox.CommitSimulationStep(modData);
-			});
+			AssertHelper.Exception<VectoException>(() => { gearbox.CommitSimulationStep(modData); });
 		}
 
 		[TestMethod]
@@ -352,24 +350,22 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 				new { gear = 1, t = 50, n = 600, loss = 9.096, responseType = typeof(ResponseSuccess) },
 				new { gear = 1, t = 2450, n = 800, loss = 58.11, responseType = typeof(ResponseSuccess) },
 				new { gear = 1, t = 850, n = 800, loss = 26.11, responseType = typeof(ResponseSuccess) },
-				new { gear = 1, t = 850, n = 0, loss = 0.0, responseType = typeof(ResponseSuccess) },
+				new { gear = 1, t = 850, n = 0, loss = 22.06, responseType = typeof(ResponseSuccess) },
 				new { gear = 1, t = 850, n = 200, loss = 23.07, responseType = typeof(ResponseSuccess) },
 				new { gear = 2, t = 50, n = 600, loss = 9.096, responseType = typeof(ResponseSuccess) },
 				new { gear = 2, t = 2050, n = 1200, loss = 52.132, responseType = typeof(ResponseSuccess) },
 				new { gear = 2, t = 850, n = 800, loss = 26.11, responseType = typeof(ResponseSuccess) },
-				new { gear = 2, t = 850, n = 0, loss = 0.0, responseType = typeof(ResponseSuccess) },
+				new { gear = 2, t = 850, n = 0, loss = 22.06, responseType = typeof(ResponseSuccess) },
 				new { gear = 2, t = 850, n = 600, loss = 25.096, responseType = typeof(ResponseSuccess) },
-				new { gear = 7, t = -1000, n = 0, loss = 0.0, responseType = typeof(ResponseSuccess) },
-				new { gear = 7, t = 850, n = 0, loss = 0.0, responseType = typeof(ResponseSuccess) },
-				new { gear = 7, t = 2450, n = 0, loss = 0.0, responseType = typeof(ResponseSuccess) },
+				new { gear = 7, t = -1000, n = 0, loss = 10.06, responseType = typeof(ResponseSuccess) },
+				new { gear = 7, t = 850, n = 0, loss = 9.31, responseType = typeof(ResponseSuccess) },
+				new { gear = 7, t = 2450, n = 0, loss = 17.31, responseType = typeof(ResponseSuccess) },
 			};
 
 			var absTime = 0.SI<Second>();
 			var dt = 2.SI<Second>();
 
 			foreach (var exp in expected) {
-				gearbox.OutPort().Initialize(0.SI<NewtonMeter>(), 0.SI<PerSecond>());
-
 				var expectedT = exp.t.SI<NewtonMeter>();
 				var expectedN = exp.n.RPMtoRad();
 				var expectedLoss = exp.loss.SI<NewtonMeter>();
@@ -378,6 +374,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 				var angularVelocity = expectedN / ratios[exp.gear];
 
 				gearbox.Gear = (uint)exp.gear;
+				gearbox.OutPort().Initialize(torque, angularVelocity);
 				var response = gearbox.OutPort().Request(absTime, dt, torque, angularVelocity);
 				Assert.IsInstanceOfType(response, exp.responseType, exp.ToString());
 
-- 
GitLab