- demodData = pskdemod(rSampled, M, 0, 'gray');
+ rNoCompSampled = rNoComp(sps*span/2+1:sps:(numSymbs+span/2)*sps);
+
+ %% rotate rNoCompSampled to match original data
+ theta = angle(-sum(rNoCompSampled .^ M)) / M;
+ %% if theta approx +pi/M, wrap to -pi/M
+ if abs(theta - pi / M) / (pi / M) < 0.1
+ theta = -pi / M;
+ end
+ theta
+ rNoCompSampled = rNoCompSampled .* exp(-j * theta);
+
+ %% adaptive filter
+ adaptFilterOut = adaptiveCMA(rSampled);
+
+ demodData = pskdemod(rSampled, M, pi / M, 'gray');
+ demodNoComp = pskdemod(rNoCompSampled, M, pi / M, 'gray');
+ demodAdapt = pskdemod(adaptFilterOut, M, pi / M, 'gray');
+ %%demodMatlabAdapt = pskdemod(matlabEq, M, pi / M, 'gray');