# Is it possible to ask Mathematica to order this expression in terms of descending absolute values of the arguments of the exponential functions?

I have the given expression which is a sum of exponential functions with some parameters $$a,t,u,y$$ where $$a>0$$.

Question Is it possible to ask Mathematica to order this expression in terms of descending absolute values of the arguments of the exponential functions? I mean I want that the first term in the desired expression to be the one in which the absolute value of the argument of the exponential function is the largest; then, the next term to be the one with the second largest absolute value of the exponential arguments.

exp = 3816 + 120u E^(2 a) - 1380 E^(4 a) - 50t E^(-(-5 + Sqrt) a) -
300 E^((-1 + Sqrt) a) - 1650 E^(2 (-1 + Sqrt) a) +
360 E^(-(1 + Sqrt) a) + 405 E^(2 (1 + Sqrt) a) +
78 E^((-9 + Sqrt) a) -
75 E^(-2 (-3 + Sqrt) a) (-15 + 8y E^((-3 + Sqrt) a))


Even if you reorder the expression, MMA will at once order it again according to its rules. Therefore, it is simplest to change the sum into a list of summands. However, toward this aim, you must fist expand all products.You may then use "SortBy" to get the searched for order.

exp0 = 3816 + 120 u E^(2 a) - 1380 E^(4 a) -
50 t E^(-(-5 + Sqrt) a) - 300 E^((-1 + Sqrt) a) -
1650 E^(2 (-1 + Sqrt) a) + 360 E^(-(1 + Sqrt) a) +
405 E^(2 (1 + Sqrt) a) + 78 E^((-9 + Sqrt) a) -
75 E^(-2 (-3 + Sqrt) a) (-15 + 8 y E^((-3 + Sqrt) a));

exp= List@@Expand@exp0;


Next we need a function that picks out the exponents:

pick= (# /. (_ : 1) Exp[a  x_] :>  N[x]) &;


With this we may no sort the list:

SortBy[exp,pick] 