returns zero if log10(value).is_negative().
otherwise returns log10(value).
log10 turns values in domain 0..1 into values
in range -inf..0.
log10_positive turns values in domain 0..1 into 0.
this sets very small values to zero which may not be
what you want depending on your application.