Error in comm.CarrierSynchronizer documentation?

3 views (last 30 days)
V R
V R on 5 Jun 2021
I guess there could be an error in the documentation of comm.CarrierSynchronizer: the quantity theta should be defined as
(Bn * T) / (zeta + 1/(4*zeta))
according to eq. C.57 of the reference [1], where T (which is missing in the formula of the documentation) is the sampling period.
In the code of comm.CarrierSynchronizer it is actually defined like that (lines 452-462):
PhaseRecoveryLoopBandwidth = cast(...
obj.NormalizedLoopBandwidth *obj.SamplesPerSymbol, ...
obj.pInputDataType);
% K0
PhaseRecoveryGain = cast(obj.SamplesPerSymbol,...
obj.pInputDataType);
theta = PhaseRecoveryLoopBandwidth/...
((obj.DampingFactor + 0.25/obj.DampingFactor)*...
obj.SamplesPerSymbol);
where obj.NormalizedLoopBandwidth is the loop bandwidth normalized to the input sampling rate, therefore equal to Bn * T, and SamplesPerSynbol cancels out between numerator and denominator.

Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by