2
$\begingroup$
  • Does there exist a causal nonlinear, time-invariant system that maps each input function $k \cdot\cos(fx)$ to $k \cdot\cos(2fx)$ for all choices of $k, f \in \Bbb R$?

  • If so, can one represent this system via some sort of differential equation, or in discrete terms, as a nonlinear difference equation?

This would be similar to the second Chebyshev polynomial, but that only works for $k=1$.

$\endgroup$
  • $\begingroup$ what do you want? a pitch shifter? $\endgroup$ – robert bristow-johnson Aug 29 '16 at 23:26
  • $\begingroup$ No, I'm using this to model distortion. $\endgroup$ – Mike Battaglia Aug 29 '16 at 23:27
  • 1
    $\begingroup$ but you want to double the frequency of what? a sine wave? and you want to do that for any amplitude of sine wave? (if such is the case, then something like an AGC to make the amplitude going in constant and then a 2nd-order Chebyshev.) $\endgroup$ – robert bristow-johnson Aug 30 '16 at 2:22
  • $\begingroup$ That wouldn't be time-invariant, right? $\endgroup$ – Mike Battaglia Aug 30 '16 at 2:23
  • $\begingroup$ yeah it is. because the gain is dependent solely on the signal parameters. $\endgroup$ – robert bristow-johnson Aug 30 '16 at 4:27
2
$\begingroup$

As already suggested by Robert and Olli, a system that maps $x(t)=k\cos(2\pi f_0t)$ to $y(t)=k\cos(4\pi f_0 t)$ can be formalized as

$$y(t)=|x(t)|_{max}\left(2\left(\frac{x(t)}{|x(t)|_{max}}\right)^2-1\right)\tag{1}$$

which is a time-invariant non-linear system.

However, I doubt that this system works well (i.e., sounds good as a distortion effect) when applied to real-world (non-sinusoidal) input signals.

To get some ideas of digital implementations of distortion effects, take a look at this thesis and the references therein.

$\endgroup$
  • $\begingroup$ Great link! Will definitely dive into that. $\endgroup$ – Mike Battaglia Aug 30 '16 at 20:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.