Можно сгенерировать шум для моделирования системы связи с помощью блока MATLAB ® Function с генератором случайных чисел. Этот пример генерирует и отображает гистограмму графиков Гауссова, Релея, Райса и Равномерного шума.
Генераторы шума выводят векторы 1e5 на 1 каждую секунду, что эквивалентно шагу расчета 0,00001 секунды. В этой модели каждый блок MATLAB Function задает определенный генератор шума, используя его базовую функцию. Чтобы просмотреть базовый код для блока MATLAB Function в редакторе MATLAB, откройте модель, выберите нужный блок MATLAB Function, а затем нажмите Ctrl + u. Каждый блок MATLAB function содержит параметры маски блоков, которые сопоставляются с аргументами функции в базовом коде.
Для каждого блока MATLAB Function параметр Samples per frame сопоставляет с базовым аргументом функции spf
. Точно так же Seed maps to seed
.
Блок Gaussian Noise MATLAB Function отображает параметр Power (dBW) в p
, и определяет функцию
Блок MATLAB Function Релея Noise отображает параметр Sigma в alpha
, и определяет функцию
Блок Ricis Noise MATLAB Function преобразует параметр Райса К-фактора в K
и параметр Sigma, чтобы s
, и определяет функцию
Блок Uniform Noise MATLAB Function преобразует параметр Noise lower bound в lb
и параметр Noise upper bound to ub
, и определяет функцию
Модель генерирует эти графики гистограммы, чтобы показать распределение шума по спектру для каждого генератора шума.
Для дальнейшего исследования откройте модель и отрегулируйте одну из настроек генерации шума. Для примера генератор шума Райса имеет К-коэффициент 10, который заставляет среднее значение шума быть больше, чем у распределенного шума Релея. Дважды кликните блок Ricis Noise MATLAB Function, чтобы открыть маску блока и изменить коэффициент K с 10 на 2. Перезапустите модель, чтобы увидеть сдвиг шумового спектра.