randerr

Генерирует шаблоны битовых ошибок

Описание

Используйте randerr функция, чтобы сгенерировать шаблоны битовой ошибки. Для всех синтаксисов, randerr обработки каждая строка выхода независимо.

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

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

пример

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

пример

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

пример

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

Примечание

Чтобы сгенерировать повторяемые шумовые выборки, используйте то же входное значение seed для каждого вызова randerr или сброс случайный потоковый ввод перед вызовом randerr. Для получения дополнительной информации о сбросе случайного потока смотрите 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

Показана генерация матрицы случайной ошибки без входного значения seed для неповторяемого выхода и с входным значением seed для повторяемого выхода.

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

m = 2;
n = 8;
errors = 2;
seed = 1234;

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

out = randerr(m,n,errors,seed)
out = 2×8

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

out = randerr(m,n,errors,seed)
out = 2×8

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

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

seed = 345;
out = randerr(m,n,errors,seed)
out = 2×8

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

out = randerr(m,n,errors,seed)
out = 2×8

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

Используйте randerr функция, чтобы сгенерировать двоичную матрицу случайной ошибки дважды с той же командой, не задавая входное значение seed. Значения выходной матрицы изменяются для каждого выполнения randerr функция.

out = randerr(m,n,errors)
out = 2×8

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

out = randerr(m,n,errors)
out = 2×8

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

Входные параметры

свернуть все

Размер случайной бинарной матрицы в виде положительного целого числа.

  • Когда вы задаете только вход m, выход случайная двоичная матрица размера имеет размер m- m.

  • Когда вы задаете входные параметры m и n, выход случайная двоичная матрица размера имеет размер m- n.

Типы данных: double

Размер столбца случайной бинарной матрицы в виде положительного целого числа.

Типы данных: double

Количество ненулевых записей в виде одной из следующих форм.

  • Если задано как целое число, errors задает число единиц в каждой строке.

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

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

Типы данных: double

Начальное значение для инициализации равномерного генератора случайных чисел, используемого в rand функция в виде неотрицательного целочисленного значения меньше чем 232.

Типы данных: double

Случайный потоковый объект, чтобы сгенерировать равномерные случайные шумовые выборки при помощи rand функция в виде RandStream объект. Обеспечение случайного потокового объекта или использование reset (RandStream) функция на случайном потоковом объекте по умолчанию позволяет вам сгенерировать повторяемые шумовые выборки.

Выходные аргументы

свернуть все

Случайный вывод двоичной матрицы, возвращаемый в виде матрицы двоичных значений.

  • Когда вы задаете только вход m, этот выход имеет размер m- m.

  • Когда вы задаете входные параметры m и n, этот выход имеет размер m- n.

Типы данных: double

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

Функции

Объекты

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