Skip to content

Commit 4f65eef

Browse files
committed
Removes non-dimensionals when simplifying composite dimensions
1 parent 7fcb943 commit 4f65eef

File tree

2 files changed

+11
-0
lines changed

2 files changed

+11
-0
lines changed

src/property_utils/tests/units/test_descriptors.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2542,6 +2542,14 @@ def test_same_denominator_dimensions(self):
25422542
def test_same_numerator_dimensions_zero_sum(self):
25432543
self.assert_result(" / C")
25442544

2545+
@args({"composite": CompositeDimension([dimension_9()], [dimension_9()])})
2546+
def test_non_dimensionals(self):
2547+
self.assert_result("")
2548+
2549+
@args({"composite": CompositeDimension([dimension_9(3)], [dimension_9()])})
2550+
def test_non_dimensionals_exponentiated(self):
2551+
self.assert_result("")
2552+
25452553

25462554
@add_to(CompositeDimension_test_suite)
25472555
class TestCompositeDimensionSimplified(TestCompositeDimensionSimplify):

src/property_utils/units/descriptors.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1717,6 +1717,9 @@ def simplify(self) -> None:
17171717
numerator = []
17181718
denominator = []
17191719
for unit, exponent in exponents.items():
1720+
if unit.is_non_dimensional():
1721+
continue # do not add non dimensional units to the simplified composite
1722+
17201723
if exponent > 0:
17211724
numerator.append(Dimension(unit) ** exponent)
17221725
elif exponent < 0:

0 commit comments

Comments
 (0)