randi

Массив случайных целых чисел

Синтаксис

R = randi(valrange,sz,arraytype)
R = randi(valrange,sz,datatype,arraytype)

R = randi(valrange,sz,'like',P)
R = randi(valrange,sz,datatype,'like',P)

C = randi(valrange,sz,codist)
C = randi(valrange,sz,datatype,codist)
C = randi(valrange,sz,___,codist,'noCommunication')
C = randi(valrange,sz,___,codist,'like',P)

Описание

R = randi(valrange,sz,arraytype) создает матрицу с базовым классом двойных, с целочисленными значениями randi во всех элементах.

R = randi(valrange,sz,datatype,arraytype) создает матрицу с базовым классом datatype, со значениями randi во всех элементах.

Размер и тип массива заданы опциями аргумента согласно следующей таблице.

АргументЗначенияОписания
valrangemax или [min max]Задает диапазон целочисленного значения от 1 до max, или от min до max..
sznЗадает размер как n-by-n матрица.
m,n или [m n]Задает размер как m-by-n матрица.
m,n,...,k или [m n ... k]Задает размер как m-by-n-by-...-by-k массив.
arraytype'distributed'Задает распределенный массив.
'codistributed'Задает codistributed массив, с помощью схемы распределения по умолчанию.
'gpuArray'Задает gpuArray.
datatype'double' (значение по умолчанию), 'single', 'int8', 'uint8', 'int16', 'uint16', 'int32', 'uint32', 'int64' или 'uint64'Задает базовый класс массива, т.е. тип данных его элементов.

R = randi(valrange,sz,'like',P) создает массив значений randi с тем же типом и базовым классом (тип данных) как массив P.

R = randi(valrange,sz,datatype,'like',P) создает массив значений randi с заданным базовым классом (datatype) и тот же тип как массив P.

C = randi(valrange,sz,codist) или C = randi(valrange,sz,datatype,codist) создает codistributed массив значений randi с заданным размером, и базовый класс (datatype по умолчанию является 'double'). codistributor объект codist задает схему распределения создания codistributed массива. Для получения информации о построении codistributor объекты, смотрите страницы с описанием для codistributor1d и codistributor2dbc. Чтобы использовать схему распределения по умолчанию, можно задать codistributor конструктора без аргументов. Например:

spmd
    C = randi(8,codistributor1d());
end

C = randi(valrange,sz,___,codist,'noCommunication') указывает, что никакая коммуникация межрабочего не должна быть выполнена при построении codistributed массива, пропуске некоторых шагов проверки ошибок.

C = randi(valrange,sz,___,codist,'like',P) создает codistributed массив значений randi с заданной областью значений, размером, базовым классом и схемой распределения. Если или класс или codistributor аргумент не использованы, характеристика получена от codistributed массива P.

Примеры

Создайте распределенную матрицу Рэнди

Создайте распределенный массив 1000 на 1000 значений randi от 1 до 100 с базовым классом дважды:

D = randi(100,1000,'distributed');

Создайте матрицу Кодистрибутеда Рэнди

Создайте codistributed 1000 на 1000 двойная матрица значений randi от 0 до 12, распределенный его вторым измерением (столбцы).

spmd(4)
    C = randi([0 12],1000,'codistributed');
end

С четырьмя рабочими каждый рабочий содержит 1000 250 локальную часть C.

Создайте codistributed матрицу single 1000 на 1000 значений randi от 1 до 4, распределенный его столбцами.

spmd(4)
    codist = codistributor('1d',2,100*[1:numlabs]);
    C = randi(4,1000,1000,'single',codist);
end

Каждый рабочий содержит 100 labindex локальной частью C.

Создайте gpuArray Рэнди Мэтрикса

Создайте gpuArray 1000 на 1000 значений randi от — от 50 до 50 с базовым классом double:

G = randi([-50 50],1000,'double','gpuArray');

Введенный в R2014a

Для просмотра документации необходимо авторизоваться на сайте