setDistribution

Класс: sdo.ParameterSpace
Пакет: sdo

Установите распределение параметра в sdo.ParameterSpace объект

Синтаксис

ps = setDistribution(ps0,p,pdist)

Описание

ps = setDistribution(ps0,p,pdist) обновляет ParameterDistributions свойство sdo.ParameterSpace объект, ps0, для заданных параметров, p, и возвращает обновленный объект, ps.

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

ps0

Пространство параметров в виде sdo.ParameterSpace объект.

p

Параметры, распределения которых должны быть обновлены в виде одного из следующего:

  • Вектор из param.Continuous объекты — Объекты параметра. Например, p = sdo.getParameterFromModel('sdoHydraulicCylinder','Ac').

  • Название параметра в виде вектора символов или строки. Например, 'Ac'.

pdist

Вероятностное распределение для параметров модели в виде вектора из одномерных объектов вероятностного распределения.

  • Если pdist одного размера с p, программное обеспечение задает каждую запись pdist как вероятностное распределение соответствующего параметра в p.

  • Если pdist содержит только одно распределение, программное обеспечение задает этот объект как вероятностное распределение для всех параметров в p.

Используйте makedist команда, чтобы создать одномерный объект вероятностного распределения. Например, makedist('Normal','mu',10,'sigma',3).

Проверять если pdist объект одномерного распределения, запуск isa(pdist,'prob.UnivariateDistribution').

Выходные аргументы

ps

Обновленное пространство параметров, возвращенное как sdo.ParameterSpace объект.

Примеры

развернуть все

Создайте sdo.ParameterSpace объект для Ac и K параметры sdoHydraulicCylinder модель.

load_system('sdoHydraulicCylinder');
p = sdo.getParameterFromModel('sdoHydraulicCylinder',{'Ac','K'});
ps = sdo.ParameterSpace(p);

По умолчанию равномерное распределение задано для всех параметров в p.

ps.ParameterDistributions
ans=1×2 object
  1x2 UniformDistribution array

Задайте нормальное распределение для Ac и K.

pAcdist = makedist('Normal','mu',p(1).Value,'sigma',1);
pKdist = makedist('Normal','mu',p(2).Value,'sigma',3);
ps = setDistribution(ps,p,[pAcdist;pKdist]);

Смотрите также

| |