randerr

Сгенерируйте шаблоны битовой ошибки

Синтаксис

out = randerr(m)
out = randerr(m,n)
out = randerr(m,n,errors)
out = randerr(m,n,errors,seed)
out = randerr(m,n,errors,streamhandle)

Описание

Для всех синтаксисов randerr обрабатывает каждую строку out независимо.

out = randerr(m) генерирует m-by-m бинарная матрица, где каждая строка имеет точно одну ненулевую запись в случайном положении. Каждая допустимая настройка имеет равную вероятность.

out = randerr(m,n) генерирует m-by-n бинарная матрица, где каждая строка имеет точно одну ненулевую запись в случайном положении. Каждая допустимая настройка имеет равную вероятность.

out = randerr(m,n,errors) использует вход errors, чтобы определить количество ненулевых записей в каждой строке вывода m-by-n бинарная матрица.

  • Если errors является скаляром, это - количество ненулевых записей в каждой строке.

  • Если errors является вектором - строкой, он перечисляет возможное количество ненулевых записей в каждой строке.

  • Если errors является матрицей, имеющей две строки, первые списки строк возможное количество ненулевых записей в каждой строке и вторых списках строк вероятности, которые соответствуют возможным ошибочным количествам. Элементы во второй строке errors должны суммировать одному.

Если randerr определяет количество ненулевых записей в данной строке, каждая настройка того количества ненулевых записей имеет равную вероятность.

out = randerr(m,n,errors,seed) принимает значение seed для инициализации универсального генератора случайных чисел rand.

out = randerr(m,n,errors,streamhandle) принимает, что случайный потоковый указатель генерирует универсальные случайные шумовые выборки при помощи rand. Обеспечение случайного потокового указателя или использование функции reset на случайном потоковом объекте по умолчанию позволяют вам сгенерировать повторяемые шумовые выборки. Если вы хотите сгенерировать повторяемые шумовые выборки, то или сбросьте случайный потоковый ввод прежде, чем вызвать randerr или используйте тот же вход seed. Для получения дополнительной информации смотрите RandStream.

Примеры

свернуть все

Сгенерируйте 8 7 бинарную матрицу, в которой каждая строка, одинаково вероятно, будет иметь или нуль или два ненулевых элемента.

out = randerr(8,7,[0 2])
out = 8×7

     0     1     0     0     0     1     0
     0     1     0     0     0     1     0
     0     0     0     0     0     0     0
     0     0     0     0     0     1     1
     0     0     0     0     0     0     0
     0     0     0     0     0     0     0
     0     0     1     0     0     0     1
     0     0     1     0     1     0     0

Теперь сгенерируйте матрицу, которую в три раза более вероятно, что строка будет иметь два ненулевых элемента.

out = randerr(8,7,[0 2; 0.25 0.75])
out = 8×7

     0     0     0     0     1     0     1
     0     1     0     0     0     0     1
     0     0     1     0     0     1     0
     0     1     0     0     1     0     0
     1     0     0     0     1     0     0
     0     0     0     0     0     0     0
     0     0     0     0     0     0     0
     0     0     0     0     0     0     0

Смотрите также

Функции

Представлено до R2006a