I am trying to concatenate two arrays. They both have the same units, but one has been multiplied by a dimensionless array. Example code below. As a temporary fix I can just divide my second array by unyt.dimensionless
What I Did
a = unyt.unyt_array(np.ones(1), units=unyt.Mpc)
b = unyt.unyt_array(np.ones(1), units=unyt.dimensionless)
c = a + (a*b)
d = np.concatenate([a, a*b])
Traceback (most recent call last):
File "/cosma/home/dp004/dc-mcgi1/clean/SOAP/test.py", line 7, in <module>
d = np.concatenate([a, a*b])
File "<__array_function__ internals>", line 5, in concatenate
File "/cosma/home/dp004/dc-mcgi1/.local/lib/python3.10/site-packages/unyt/array.py", line 2034, in __array_function__
return _HANDLED_FUNCTIONS[func](*args, **kwargs)
File "/cosma/home/dp004/dc-mcgi1/.local/lib/python3.10/site-packages/unyt/_array_functions.py", line 244, in concatenate
ret_units = _validate_units_consistency(arrs)
File "/cosma/home/dp004/dc-mcgi1/.local/lib/python3.10/site-packages/unyt/_array_functions.py", line 227, in _validate_units_consistency
raise UnitInconsistencyError(*units)
unyt.exceptions.UnitInconsistencyError: Expected all unyt_array arguments to have identical units. Received mixed units (Mpc, Mpc*dimensionless)
Description
I am trying to concatenate two arrays. They both have the same units, but one has been multiplied by a dimensionless array. Example code below. As a temporary fix I can just divide my second array by unyt.dimensionless
What I Did