diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Data/ElectricMotor/ElectricMotorData.cs b/VectoCore/VectoCore/Models/SimulationComponent/Data/ElectricMotor/ElectricMotorData.cs
index 56c6427664645008da69dcf4e3747c01e9422e58..9c178e89ba6f0d0d2bf7723c0de443f67d821b88 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Data/ElectricMotor/ElectricMotorData.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Data/ElectricMotor/ElectricMotorData.cs
@@ -61,7 +61,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 
 		public NewtonMeter LookupDragTorque(Volt voltage, PerSecond avgSpeed)
 		{
-			var tuple = VoltageLevels.GetSection(x => voltage > x.Voltage);
+			var tuple = GetSection(voltage);
 
 			return VectoMath.Interpolate(tuple.Item1.Voltage, tuple.Item2.Voltage,
 				tuple.Item1.DragCurve.Lookup(avgSpeed),
@@ -73,7 +73,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 			if (avgSpeed.IsGreaterOrEqual(MaxSpeed)) {
 				return 0.SI<NewtonMeter>();
 			}
-			var tuple = VoltageLevels.GetSection(x => voltage > x.Voltage);
+			var tuple = GetSection(voltage);
 			var r1 = tuple.Item1.EfficiencyMap.LookupTorque(electricPower, avgSpeed, maxEmTorque);
 			var r2 = tuple.Item2.EfficiencyMap.LookupTorque(electricPower, avgSpeed, maxEmTorque);
 
@@ -102,7 +102,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 
 		public EfficiencyMap.EfficiencyResult LookupElectricPower(Volt voltage, PerSecond avgSpeed, NewtonMeter torque, bool allowExtrapolation = false)
 		{
-			var tuple = VoltageLevels.GetSection(x => voltage > x.Voltage);
+			var tuple = GetSection(voltage);
 
 			var r1 = tuple.Item1.EfficiencyMap.LookupElectricPower(avgSpeed, torque, allowExtrapolation);
 			var r2 = tuple.Item2.EfficiencyMap.LookupElectricPower(avgSpeed, torque, allowExtrapolation);
@@ -128,7 +128,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 
 		public NewtonMeter FullGenerationTorque(Volt voltage, PerSecond avgSpeed)
 		{
-			var tuple = VoltageLevels.GetSection(x => voltage > x.Voltage);
+			var tuple = GetSection(voltage);
 
 			return VectoMath.Interpolate(tuple.Item1.Voltage, tuple.Item2.Voltage,
 				tuple.Item1.FullLoadCurve.FullGenerationTorque(avgSpeed),
@@ -137,12 +137,24 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 
 		public NewtonMeter FullLoadDriveTorque(Volt voltage, PerSecond avgSpeed)
 		{
-			var tuple = VoltageLevels.GetSection(x => voltage > x.Voltage);
+			var tuple = GetSection(voltage);
 
 			return VectoMath.Interpolate(tuple.Item1.Voltage, tuple.Item2.Voltage,
 				tuple.Item1.FullLoadCurve.FullLoadDriveTorque(avgSpeed),
 				tuple.Item2.FullLoadCurve.FullLoadDriveTorque(avgSpeed), voltage);
 		}
+
+		protected Tuple<ElectricMotorVoltageLevelData, ElectricMotorVoltageLevelData> GetSection(Volt voltage)
+		{
+			if (voltage < VoltageLevels.First().Voltage) {
+				return Tuple.Create(VoltageLevels.First(), VoltageLevels.First());
+			}
+
+			if (voltage > VoltageLevels.Last().Voltage) {
+				return Tuple.Create(VoltageLevels.Last(), VoltageLevels.Last());
+			}
+			return VoltageLevels.GetSection(x => voltage > x.Voltage);
+		}
 	}
 
 	public class ElectricMotorVoltageLevelData