Массив случайных целых чисел
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 во всех элементах.
Размер и тип массива заданы опциями аргумента согласно следующей таблице.
| Аргумент | Значения | Описания |
|---|---|---|
valrange | max или [min max] | Задает диапазон целочисленного значения от 1 до max, или от min до max.. |
sz | n | Задает размер как 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( создает codistributed массив значений valrange,sz,datatype,codist)randi с заданным размером, и базовый класс (datatype по умолчанию является 'double'). codistributor объект codist задает схему распределения создания codistributed массива. Для получения информации о построении codistributor объекты, смотрите страницы с описанием для codistributor1d и codistributor2dbc. Чтобы использовать схему распределения по умолчанию, можно задать codistributor конструктора без аргументов. Например:
spmd
C = randi(8,codistributor1d());
endC = randi( указывает, что никакая коммуникация межрабочего не должна быть выполнена при построении codistributed массива, пропуске некоторых шагов проверки ошибок. valrange,sz,___,codist,'noCommunication')
C = randi( создает codistributed массив значений valrange,sz,___,codist,'like',P)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 1000 на 1000 значений randi от — от 50 до 50 с базовым классом double:
G = randi([-50 50],1000,'double','gpuArray');