Создание распределенной матрицы разреженных идентификаторов
CS = codistributed.speye(n)
CS = codistributed.speye(m,n)
CS = codistributed.speye([m,n])
CS = speye(n,codist)
CS = speye(m,n,codist)
CS = speye([m,n],codist)
CS = codistributed.speye(n) создает nоколо-n разреженный распределенный массив базового класса double.
CS = codistributed.speye(m,n) или CS = codistributed.speye([m,n]) создает mоколо-n разреженный распределенный массив базового класса double.
Необязательные аргументы для codistributed.speye должны быть указаны после требуемых аргументов и в следующем порядке:
codist - объект-распространитель, задающий схему распределения результирующего массива. Если этот параметр опущен, массив распределяется с использованием схемы распределения по умолчанию. Сведения о построении объектов coddistributor см. на страницах ссылок для codistributor1d и codistributor2dbc.
'noCommunication' - Указывает, что при построении массива не должно выполняться взаимодействие между сотрудниками, пропуская некоторые шаги проверки ошибок.
CS = speye(n,codist) является таким же, как CS = codistributed.speye(n,codist). С помощью этого синтаксиса можно также использовать необязательные аргументы. Чтобы использовать схему распределения по умолчанию, укажите конструктор coddistributor без аргументов. Например:
spmd CS = codistributed.speye(8,codistributor1d()); end
CS = speye(m,n,codist) и CS = speye([m,n],codist) те же, что и CS = codistributed.speye(m,n) и CS = codistributed.speye([m,n])соответственно. С помощью этого синтаксиса можно также использовать необязательные аргументы.
Примечание
Чтобы создать разреженный распределенный по коду массив логического базового класса, сначала создайте массив двойного базового класса, а затем приведите его с помощью logical функция:
CLS = logical(speye(m,n,codistributor1d()))
С четырьмя рабочими,
spmd(4) CS = speye(1000,codistributor()) end
создает разреженный распределенный двойной массив 1000 на 1000 CS, распределенное по второму измерению (столбцам). Каждый работник содержит локальную часть 1000 на 250 CS.
spmd(4) codist = codistributor1d(2,1:numlabs); CS = speye(10,10,codist); end
создает разреженный распределенный двойной массив 10 на 10 CS, распространяемая своими колонками. Каждый работник содержит 10-по-labindex локальная часть CS.