Модель статистических эквивалентов квадратурных сумм — различия между версиями
Материал из SRNS
Korogodin (обсуждение | вклад) (Новая страница: «{{Modeling|templatemode = |name = Модель статистических эквивалентов квадратурных сумм |status = stab...») |
Korogodin (обсуждение | вклад) |
||
| (не показаны 5 промежуточных версий 1 участника) | |||
| Строка 13: | Строка 13: | ||
|changelog = | |changelog = | ||
|repository = | |repository = | ||
| − | |category1 = | + | |category1 = Коррелятор |
| − | |category2 = | + | |category2 = |
|category3 = | |category3 = | ||
|category4 = | |category4 = | ||
| Строка 35: | Строка 35: | ||
<source lang="matlab"> | <source lang="matlab"> | ||
| + | Tc = 0.001; % Интервал накопления в корреляторе, s | ||
| + | qcno_dB = 45; % Отношение сигнал/шум, dBHz | ||
| + | |||
| + | stdn_IQ = 8; % СКО шума квадратур | ||
| + | nI = stdn_IQ*randn(1,1); % // I-comp noise | ||
| + | nQ = stdn_IQ*randn(1,1); % // Q-comp noise | ||
| + | |||
| + | % EpsTau - расстройка по задержке | ||
| + | % EpsW - расстройка по частоте на начальный момент накопления | ||
| + | % EpsPhi - расстройка по фазе на начальный момент накопления | ||
| + | |||
| + | [A_IQ qcno] = qcno_change(qcno_dB, stdn_IQ(k), Tc); | ||
| + | A_IQ_eff(k) = A_IQ(k)*sinc(EpsW*Tc/2 /pi)*ro(EpsTau); | ||
| + | mI = A_IQ_eff(k) * cos(EpsW*Tc/2 + EpsPhi); | ||
| + | mQ = - A_IQ_eff(k) * sin(EpsW*Tc/2 + EpsPhi); | ||
| + | I = mI + nI; | ||
| + | Q = mQ + nQ; | ||
</source> | </source> | ||
| + | |||
Где функция <code>qcno_change</code>: | Где функция <code>qcno_change</code>: | ||
| Строка 51: | Строка 69: | ||
A_IQ = stdn_IQ .* sqrt(2 * qcno * Tc); | A_IQ = stdn_IQ .* sqrt(2 * qcno * Tc); | ||
| + | end | ||
| + | </source> | ||
| + | |||
| + | |||
| + | Функция <code>ro</code>: | ||
| + | <source lang="matlab"> | ||
| + | %/** | ||
| + | %Вычисление значения автокорреляционной функции ДК | ||
| + | %@param x - рассогласование по задержке в тех же единицах, в которых задана глобальная переменная TauChip (длительность одного чипа ДК) | ||
| + | %*/ | ||
| + | function f=ro(x) | ||
| + | global TauChip | ||
| + | f = (abs(x) < TauChip).*(1 - abs(x)/TauChip); | ||
end | end | ||
</source> | </source> | ||
== См. также == | == См. также == | ||
Текущая версия на 15:11, 25 апреля 2013
| Описание | Модель расчета стат. эквивалентов коррелятора |
| Автор(ы) | Korogodin (Korogodinобсуждение) |
| Последняя версия | 1.0 (12.10.2011) |
| Загрузить | no link |
| Хранилище | no link |
| Категории | Коррелятор |
[править] Описание модели
Расчет статистических эквивалентов в Matlab.
[править] Листинг
Tc = 0.001; % Интервал накопления в корреляторе, s
qcno_dB = 45; % Отношение сигнал/шум, dBHz
stdn_IQ = 8; % СКО шума квадратур
nI = stdn_IQ*randn(1,1); % // I-comp noise
nQ = stdn_IQ*randn(1,1); % // Q-comp noise
% EpsTau - расстройка по задержке
% EpsW - расстройка по частоте на начальный момент накопления
% EpsPhi - расстройка по фазе на начальный момент накопления
[A_IQ qcno] = qcno_change(qcno_dB, stdn_IQ(k), Tc);
A_IQ_eff(k) = A_IQ(k)*sinc(EpsW*Tc/2 /pi)*ro(EpsTau);
mI = A_IQ_eff(k) * cos(EpsW*Tc/2 + EpsPhi);
mQ = - A_IQ_eff(k) * sin(EpsW*Tc/2 + EpsPhi);
I = mI + nI;
Q = mQ + nQ;
qcno_dB = 45; % Отношение сигнал/шум, dBHz
stdn_IQ = 8; % СКО шума квадратур
nI = stdn_IQ*randn(1,1); % // I-comp noise
nQ = stdn_IQ*randn(1,1); % // Q-comp noise
% EpsTau - расстройка по задержке
% EpsW - расстройка по частоте на начальный момент накопления
% EpsPhi - расстройка по фазе на начальный момент накопления
[A_IQ qcno] = qcno_change(qcno_dB, stdn_IQ(k), Tc);
A_IQ_eff(k) = A_IQ(k)*sinc(EpsW*Tc/2 /pi)*ro(EpsTau);
mI = A_IQ_eff(k) * cos(EpsW*Tc/2 + EpsPhi);
mQ = - A_IQ_eff(k) * sin(EpsW*Tc/2 + EpsPhi);
I = mI + nI;
Q = mQ + nQ;
Где функция qcno_change:
%/**
%Расчет амплитуды квадратур для статистических эквивалентов
%@param qcno_dB - отношение qcno = Ps/No в дБГц
%@param stdn_IQ - СКО шума квадратур
%@param Tc - интервал когерентного накопления
%*/
function [A_IQ qcno] = qcno_change(qcno_dB, stdn_IQ, Tc)
qcno = 10.^(qcno_dB/10);
A_IQ = stdn_IQ .* sqrt(2 * qcno * Tc);
end
%Расчет амплитуды квадратур для статистических эквивалентов
%@param qcno_dB - отношение qcno = Ps/No в дБГц
%@param stdn_IQ - СКО шума квадратур
%@param Tc - интервал когерентного накопления
%*/
function [A_IQ qcno] = qcno_change(qcno_dB, stdn_IQ, Tc)
qcno = 10.^(qcno_dB/10);
A_IQ = stdn_IQ .* sqrt(2 * qcno * Tc);
end
Функция ro:
%/**
%Вычисление значения автокорреляционной функции ДК
%@param x - рассогласование по задержке в тех же единицах, в которых задана глобальная переменная TauChip (длительность одного чипа ДК)
%*/
function f=ro(x)
global TauChip
f = (abs(x) < TauChip).*(1 - abs(x)/TauChip);
end
%Вычисление значения автокорреляционной функции ДК
%@param x - рассогласование по задержке в тех же единицах, в которых задана глобальная переменная TauChip (длительность одного чипа ДК)
%*/
function f=ro(x)
global TauChip
f = (abs(x) < TauChip).*(1 - abs(x)/TauChip);
end