CMA Equalizer error

Hi, I am trying the CMA equalizer of gnuradio and for understanding I am
studying the reference paper mentioned in the doc as well. I have a
question after going through the code- Why the real and imag part of the
error signals are being clipped at 1.

float re = gr::clip(error.real(), 1.0); float im =
gr::clip(error.imag(),
1.0);
Shouldn’t it be “d_modulus” instead of 1.

Regards,

Sam

Hi, I hope I can have a comment on it.

On Wed, Sep 17, 2014 at 11:06 PM, Sam mite [email protected]
wrote:

Regards,

Sam

Best Regards,

Sam

On Wed, Sep 17, 2014 at 2:06 PM, Sam mite [email protected] wrote:

Sam

The answer is no. The clipping is just to make sure that the error
signal
doesn’t walk away too far or go to some strange state if the incoming
signal is too ugly. There’s nothing that I can find that ties that value
to
the modulus at all, though I can see why you might think so. In fact,
when
you make the change you suggested, the results get noticeably worse.

I’ve attached an example that uses our dynamic fading model to explore
the
results. You can select between different UMTS PDP models, both of which
are pretty bad. I found that restricting this error value even more
makes
the algorithm a bit more robust, though it likely takes longer to lock.
But
when using d_modulus here, the algorithm never actually converges.

Tom

On Wed, Sep 24, 2014 at 10:53 PM, Tom R. [email protected] wrote:

you make the change you suggested, the results get noticeably worse.

I was playing around with the flowgrpah you attached and observed the
same
as you mentioned. I am studying further on CMA and I 'll also play more
with your flowgraph. I’ll get back on the same thread if I can find
something different.

Thanks.

Regards,

Sam