Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Re: Simple question - non-linear filters

0 views
Skip to first unread message

Andor

unread,
Jul 15, 2008, 8:33:06 AM7/15/08
to
> One interesting non-linear recursion that I once came up with is this:
>
> y[n] = y[n-1] (2 - x[n] y[n-1]).
>
> DSP riddle: what is the output y[n] in relation to the input x[n]?
> Assume that the sequence x[n] lies in between 0 and 1. Hint: the
> "filter" only works well for slowly varying input sequences x[n].

You are all linear sissies :-)! I'm crossposting this to
sci.nonlinear, perhaps they have an idea.

dbell

unread,
Jul 15, 2008, 3:53:08 PM7/15/08
to

Andor,

Your answer is that this implements the reciprocal function.

y[n] may approach/converge to the reciprocal of x[n] for sufficiently
slowly varying signals and suitable initial conditions on y[n].
Definitely don't want ever want y[n] =0 (for any n) for it to work.

It can also work for some values of x[n] >1.

This is not a complete analysis, but I think it answers the question.

Dirk

Andor

unread,
Jul 15, 2008, 4:39:31 PM7/15/08
to
Dirk wrote:

> On Jul 15, 8:33 am, Andor wrote:
>
> > > One interesting non-linear recursion that I once came up with is this:
>
> > > y[n] = y[n-1] (2 - x[n] y[n-1]).
>
> > > DSP riddle: what is the output y[n] in relation to the input x[n]?
> > > Assume that the sequence x[n] lies in between 0 and 1. Hint: the
> > > "filter" only works well for slowly varying input sequences x[n].
>
> > You are all linear sissies :-)! I'm crossposting this to
> > sci.nonlinear, perhaps they have an idea.
>
> Andor,
>
> Your answer is that this implements the reciprocal function.

Aha, Dirk is a man with DSP in his heart! The answer is correct,
although not the first one. About one hour ago I recieved the first
correct entry off the list.

>
> y[n] may approach/converge to the reciprocal of x[n] for sufficiently
> slowly varying signals and suitable initial conditions on y[n].
> Definitely don't want ever want y[n] =0 (for any n) for it to work.
>
> It can also work for some values of x[n] >1.

Yes, indeed. However, when I tested this recursion I found that for
some sequences it would blow skyhigh. As you say, it works if x[n]
"varies slowly".

>
> This is not a complete analysis, but I think it answers the question.

The question of its stability is interesting. This seems to depend on
the frequency content of the input sequence x[n]. I never did a
thorough analysis myself because I never got to the point where the
filter would have been useful to me (modern DSPs have a reciprocal
instruction for seeding a Newton iteration algorithm that works more
accurate, stable and faster).

Regards,
Andor

0 new messages