+%%yCDComp = y;
+
+r = rxFilter(yCDComp, rolloff, span, sps);
+rSampled = r(sps*span/2+1:sps:(numSymbs + span/2) * sps);
+
+%% if no CD comp, then rotate constellation. Use:
+%{
+theta = angle(-sum(rSampled .^ M)) / M;
+%% if theta approx +pi/M, wrap to -pi/M
+if abs(theta - pi / M) / (pi / M) < 0.1
+ theta = -pi / M;
+end
+rSampled = rSampled .* exp(-j * theta);
+%}
+
+rAdaptEq = adaptiveCMA(rSampled);