Ослабление сигнала функцией логарифма.. - страница 2

 

Есть еще одно интересное применение - двойная польза - усилитель сигнала при коэфициенте альфа <1

double WeakenSignal(double Source,double iAlpha)
{
if (Source>=0) return(MathLog(Source+1)/iAlpha);
if (Source<0) return(-MathLog(MathAbs(Source)+1)/iAlpha);
}
 

На всякий случай - обратное преобразование:



if (x > 0) y = MathExp(x) -1;

else y = - MathExp(-x) + 1;


На графике - красным - оригинальная линия, синими точками- ослабленная, зеленым пунктиром - восстановленная.