File tree Expand file tree Collapse file tree 8 files changed +74
-2
lines changed
UnitsNet.Tests/CustomCode
UnitsNet/CustomCode/UnitClasses Expand file tree Collapse file tree 8 files changed +74
-2
lines changed Original file line number Diff line number Diff line change @@ -46,5 +46,12 @@ public void DoubleDividedByBrakeSpecificFuelConsumptionEqualsSpecificEnergy()
46
46
SpecificEnergy massFlow = 2.0 / BrakeSpecificFuelConsumption . FromKilogramsPerJoule ( 4.0 ) ;
47
47
Assert . AreEqual ( SpecificEnergy . FromJoulesPerKilogram ( 0.5 ) , massFlow ) ;
48
48
}
49
+
50
+ [ Test ]
51
+ public void BrakeSpecificFuelConsumptionTimesSpecificEnergyEqualsEnergy ( )
52
+ {
53
+ double value = BrakeSpecificFuelConsumption . FromKilogramsPerJoule ( 20.0 ) * SpecificEnergy . FromJoulesPerKilogram ( 10.0 ) ;
54
+ Assert . AreEqual ( value , 200.0 ) ;
55
+ }
49
56
}
50
57
}
Original file line number Diff line number Diff line change @@ -87,5 +87,12 @@ public void MassFlowDividedByPowerEqualsBrakeSpecificFuelConsumption()
87
87
BrakeSpecificFuelConsumption bsfc = MassFlow . FromTonnesPerDay ( 20 ) / Power . FromKilowatts ( 20.0 / 24.0 * 1e6 / 180.0 ) ;
88
88
Assert . AreEqual ( bsfc . GramsPerKiloWattHour , 180.0 , 1e-11 ) ;
89
89
}
90
+
91
+ [ Test ]
92
+ public void MassFlowTimesSpecificEnergyEqualsPower ( )
93
+ {
94
+ Power power = MassFlow . FromKilogramsPerSecond ( 20.0 ) * SpecificEnergy . FromJoulesPerKilogram ( 10.0 ) ;
95
+ Assert . AreEqual ( power , Power . FromWatts ( 200.0 ) ) ;
96
+ }
90
97
}
91
98
}
Original file line number Diff line number Diff line change @@ -113,5 +113,19 @@ public void PowerTimesBrakeSpecificFuelConsumptionEqualsMassFlow()
113
113
MassFlow massFlow = Power . FromKilowatts ( 20.0 / 24.0 * 1e6 / 180.0 ) * BrakeSpecificFuelConsumption . FromGramsPerKiloWattHour ( 180.0 ) ;
114
114
Assert . AreEqual ( massFlow . TonnesPerDay , 20.0 , 1e-11 ) ;
115
115
}
116
+
117
+ [ Test ]
118
+ public void PowerDividedByMassFlowEqualsSpecificEnergy ( )
119
+ {
120
+ SpecificEnergy specificEnergy = Power . FromWatts ( 15.0 ) / MassFlow . FromKilogramsPerSecond ( 3 ) ;
121
+ Assert . AreEqual ( specificEnergy , SpecificEnergy . FromJoulesPerKilogram ( 5 ) ) ;
122
+ }
123
+
124
+ [ Test ]
125
+ public void PowerDividedBySpecificEnergyEqualsMassFlow ( )
126
+ {
127
+ MassFlow massFlow = Power . FromWatts ( 15.0 ) / SpecificEnergy . FromJoulesPerKilogram ( 3 ) ;
128
+ Assert . AreEqual ( massFlow , MassFlow . FromKilogramsPerSecond ( 5 ) ) ;
129
+ }
116
130
}
117
131
}
Original file line number Diff line number Diff line change @@ -62,5 +62,19 @@ public void DoubleDividedBySpecificEnergyEqualsBrakeSpecificFuelConsumption()
62
62
BrakeSpecificFuelConsumption bsfc = 2.0 / SpecificEnergy . FromJoulesPerKilogram ( 4.0 ) ;
63
63
Assert . AreEqual ( BrakeSpecificFuelConsumption . FromKilogramsPerJoule ( 0.5 ) , bsfc ) ;
64
64
}
65
+
66
+ [ Test ]
67
+ public void SpecificEnergyTimesMassFlowEqualsPower ( )
68
+ {
69
+ Power power = SpecificEnergy . FromJoulesPerKilogram ( 10.0 ) * MassFlow . FromKilogramsPerSecond ( 20.0 ) ;
70
+ Assert . AreEqual ( power , Power . FromWatts ( 200.0 ) ) ;
71
+ }
72
+
73
+ [ Test ]
74
+ public void SpecificEnergyTimesBrakeSpecificFuelConsumptionEqualsEnergy ( )
75
+ {
76
+ double value = SpecificEnergy . FromJoulesPerKilogram ( 10.0 ) * BrakeSpecificFuelConsumption . FromKilogramsPerJoule ( 20.0 ) ;
77
+ Assert . AreEqual ( value , 200.0 ) ;
78
+ }
65
79
}
66
80
}
Original file line number Diff line number Diff line change @@ -32,5 +32,10 @@ public partial struct BrakeSpecificFuelConsumption
32
32
{
33
33
return SpecificEnergy . FromJoulesPerKilogram ( value / bsfc . KilogramsPerJoule ) ;
34
34
}
35
+
36
+ public static double operator * ( BrakeSpecificFuelConsumption bsfc , SpecificEnergy specificEnergy )
37
+ {
38
+ return specificEnergy . JoulesPerKilogram * bsfc . KilogramsPerJoule ;
39
+ }
35
40
}
36
41
}
Original file line number Diff line number Diff line change @@ -54,5 +54,10 @@ public partial struct MassFlow
54
54
{
55
55
return BrakeSpecificFuelConsumption . FromKilogramsPerJoule ( massFlow . KilogramsPerSecond / power . Watts ) ;
56
56
}
57
+
58
+ public static Power operator * ( MassFlow massFlow , SpecificEnergy specificEnergy )
59
+ {
60
+ return Power . FromWatts ( massFlow . KilogramsPerSecond * specificEnergy . JoulesPerKilogram ) ;
61
+ }
57
62
}
58
63
}
Original file line number Diff line number Diff line change @@ -69,5 +69,15 @@ public partial struct Power
69
69
{
70
70
return MassFlow . FromKilogramsPerSecond ( bsfc . KilogramsPerJoule * power . Watts ) ;
71
71
}
72
+
73
+ public static SpecificEnergy operator / ( Power power , MassFlow massFlow )
74
+ {
75
+ return SpecificEnergy . FromJoulesPerKilogram ( power . Watts / massFlow . KilogramsPerSecond ) ;
76
+ }
77
+
78
+ public static MassFlow operator / ( Power power , SpecificEnergy specificEnergy )
79
+ {
80
+ return MassFlow . FromKilogramsPerSecond ( power . Watts / specificEnergy . JoulesPerKilogram ) ;
81
+ }
72
82
}
73
83
}
Original file line number Diff line number Diff line change @@ -33,9 +33,19 @@ public partial struct SpecificEnergy
33
33
return Energy . FromJoules ( specificEnergy . JoulesPerKilogram * mass . Kilograms ) ;
34
34
}
35
35
36
- public static BrakeSpecificFuelConsumption operator / ( double value , SpecificEnergy bsfc )
36
+ public static BrakeSpecificFuelConsumption operator / ( double value , SpecificEnergy specificEnergy )
37
37
{
38
- return BrakeSpecificFuelConsumption . FromKilogramsPerJoule ( value / bsfc . JoulesPerKilogram ) ;
38
+ return BrakeSpecificFuelConsumption . FromKilogramsPerJoule ( value / specificEnergy . JoulesPerKilogram ) ;
39
+ }
40
+
41
+ public static double operator * ( SpecificEnergy specificEnergy , BrakeSpecificFuelConsumption bsfc )
42
+ {
43
+ return specificEnergy . JoulesPerKilogram * bsfc . KilogramsPerJoule ;
44
+ }
45
+
46
+ public static Power operator * ( SpecificEnergy specificEnergy , MassFlow massFlow )
47
+ {
48
+ return Power . FromWatts ( massFlow . KilogramsPerSecond * specificEnergy . JoulesPerKilogram ) ;
39
49
}
40
50
}
41
51
}
You can’t perform that action at this time.
0 commit comments