rand

Создайте codistributed массив равномерно распределенных случайных чисел

    Описание

    пример

    X = rand(n) создает n- n матрица codistributed равномерно распределенных случайных чисел. Каждый элемент в X между 0 и 1.

    Когда вы создаете codistributed массив в связывающемся задании или spmd блокируйтесь, функция создает массив на каждом рабочем. Если вы создаете codistributed массив за пределами связывающегося задания или spmd блокируйтесь, массив хранится только на рабочем или клиенте, который создает codistributed массив.

    По умолчанию codistributed массив имеет базовый тип double.

    X = rand(sz1,...,szN) создает sz1-...-by-szN массив codistributed равномерно распределенных случайных чисел, где sz1,...,szN указывает на размер каждой размерности.

    X = rand(sz) создает codistributed массив равномерно распределенных случайных чисел где вектор размера sz задает размер X. Например, rand(codistributed([2 3])) создает 2 3 codistributed массив.

    X = rand(___,datatype) создает codistributed массив равномерно распределенных случайных чисел с базовым типом datatype. Например, rand(codistributed(1),"single") создает codistributed случайное число с одинарной точностью. Можно использовать этот синтаксис с любым из входных параметров в предыдущих синтаксисах.

    X = rand(___,codist) использует codistributor объект codist создать codistributed массив равномерно распределенных случайных чисел.

    Задайте распределение значений массивов через память о рабочих, использующих codistributor объект codist. Для получения дополнительной информации о создании codistributors, смотрите codistributor1d и codistributor2dbc.

    X = rand(___,codist,"noCommunication") создает codistributed массив равномерно распределенных случайных чисел, не используя связь между рабочими. Можно задать codist или codist,"noCommunication", но не то и другое одновременно.

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

    Совет

    Когда вы используете этот синтаксис, некоторые шаги проверки ошибок пропущены. Используйте этот синтаксис, чтобы улучшать производительность вашего кода после того, как вы будете моделировать свой код, не задавая "noCommunication".

    X = rand(___,"like",p) использует массив p создать codistributed массив равномерно распределенных случайных чисел. Можно задать datatype или "like", но не то и другое одновременно.

    Возвращенный массив X имеет тот же базовый тип, разреженность и сложность (действительный или комплексный) как p.

    Примеры

    свернуть все

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

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

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

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

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

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

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

    свернуть все

    Размер квадратной матрицы в виде codistributed целое число.

    • Если n 0, затем X пустая матрица.

    • Если n отрицательно, затем функция обрабатывает его как 0.

    Размер каждой размерности в виде отдельных аргументов codistributed целочисленные значения.

    • Если размером какой-либо размерности является 0, затем X пустой массив.

    • Если размер какой-либо размерности отрицателен, то функция обрабатывает его как 0.

    • После второго измерения функция игнорирует последующие измерения с размером 1.

    Размер каждой размерности в виде codistributed целочисленный вектор-строка. Каждый элемент этого вектора указывает на размер соответствующей размерности:

    • Если размером какой-либо размерности является 0, затем X пустой массив.

    • Если размер какой-либо размерности отрицателен, то функция обрабатывает его как 0.

    • После второго измерения, rand игнорирует последующие измерения с размером 1. Например, rand(codistributed([3 1 1 1])) дает codistributed вектор 3 на 1 равномерно распределенных случайных чисел.

    Пример: sz = codistributed([2 3 4]) создает 2 codistributed массивом 3 на 4.

    Базовый тип данных возвращенного массива в виде одной из этих опций:

    • "double"

    • "single"

    • "logical"

    • "int8"

    • "uint8"

    • "int16"

    • "uint16"

    • "int32"

    • "uint32"

    • "int64"

    • "uint64"

    Codistributor в виде codistributor1d или codistributor2dbc объект. Для получения информации о создании codistributors, смотрите страницы с описанием для codistributor1d и codistributor2dbc. Чтобы использовать схему распределения по умолчанию, можно задать codistributor конструктора без аргументов.

    Прототип создаваемого массива в виде codistributed массив.

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