Skip to content

Commit b86dbb3

Browse files
author
Erik Ovegard
committed
Added missing overload for speed. (SpecificEnergy=Speed*Speed)
1 parent 4c2e6a0 commit b86dbb3

File tree

2 files changed

+13
-0
lines changed

2 files changed

+13
-0
lines changed

UnitsNet.Tests/CustomCode/SpeedTests.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,5 +119,13 @@ public void TimeSpanTimesSpeedEqualsLength()
119119
Length length = TimeSpan.FromSeconds(2)*Speed.FromMetersPerSecond(20);
120120
Assert.AreEqual(length, Length.FromMeters(40));
121121
}
122+
123+
[Test]
124+
public void SpeedTimesSpeedEqualsSpecificEnergy()
125+
{
126+
//m^2/s^2 = kg*m*m/(s^2*kg) = J/kg
127+
SpecificEnergy length = Speed.FromMetersPerSecond(2) * Speed.FromMetersPerSecond(20);
128+
Assert.AreEqual(length, SpecificEnergy.FromJoulesPerKilogram(40));
129+
}
122130
}
123131
}

UnitsNet/CustomCode/UnitClasses/Speed.extra.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,5 +54,10 @@ public partial struct Speed
5454
{
5555
return Length.FromMeters(speed.MetersPerSecond*duration.Seconds);
5656
}
57+
58+
public static SpecificEnergy operator *(Speed left, Speed right)
59+
{
60+
return SpecificEnergy.FromJoulesPerKilogram(left.MetersPerSecond * right.MetersPerSecond);
61+
}
5762
}
5863
}

0 commit comments

Comments
 (0)