exponenta event banner

Inf

Массив бесконечности

Синтаксис

A = Inf(sz,arraytype)
A = Inf(sz,datatype,arraytype)

A = Inf(sz,'like',P)
A = Inf(sz,datatype,'like',P)

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

Описание

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

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

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

АргументЦенностиОписания
sznЗадает размер как nоколо-n матрица.
m,n или [m n]Задает размер как mоколо-n матрица.
m,n,...,k или [m n ... k]Задает размер как mоколо-n-by-... -by-k массив.
arraytype'distributed'Указывает распределенный массив.
'codistributed'Задает распределенный массив с использованием схемы распределения по умолчанию.
'gpuArray'Задает gpuArray.
datatype'double' (по умолчанию), 'single'Задает базовый класс массива, т.е. тип данных его элементов.

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

A = Inf(sz,datatype,'like',P) создает массив Inf значения с указанным базовым классом (datatype) и того же типа, что и массив P.

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

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

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

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

Примеры

Создание распределенной INF-матрицы

Создание распределенного массива 1000 на 1000 Infs с двойным базовым классом:

D = Inf(1000,'distributed');

Создание распределенной INF-матрицы

Создание двойной матрицы с кодовым распределением 1000 на 1000 Infs, распределенные по второму измерению (столбцам).

spmd(4)
    C = Inf(1000,'codistributed');
end

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

Создание распределенного кода 1000 на 1000 single матрица Infs, распределенные по её столбцам.

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

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

Создание INF-матрицы gpuArray

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

G = Inf(1000,'double','gpuArray');

См. также

| | | | | |