This `try` should be replaced with `result.unit.to(radian)` as otherwise it will convert all values in the array to radians, when all you want to know is whether the unit is convertible.  Can make a big difference:
```
In [7]: a = np.arange(1000000)*u.deg

In [8]: %timeit a.to(u.rad)
1 loops, best of 3: 502 ms per loop

In [9]: %timeit a.unit.to(u.rad)
10000 loops, best of 3: 51.6 us per loop
```