def abs(f=Ellipsis):
f = to_potential(f)<EOL>if is_const_potential(f): return const_potential(np.abs(f.c))<EOL>elif is_identity_potential(f): return AbsPotential()<EOL>else: return compose(AbsPotential(), f)<EOL>
abs() yields a potential function equivalent to the absolute value of the input.
abs(f) yields the absolute value of the potential function f.

Note that abs has a derivative of 0 at 0; this is not mathematically correct, but it is useful
for the purposes of numerical methods. If you want traditional behavior, it is suggested that
one instead employ sqrt(f**2).