reduceDimensions

Уменьшайте размерности набора точки Sobol

Синтаксис

pr = reduceDimensions(p,d)

Описание

пример

pr = reduceDimensions(p,d) уменьшает набор квазислучайной точки Sobol p до первых размерностей d. d должен быть меньше чем или равен количеству размерностей в p.

Уменьшаемый набор точки pr является объектом sobolset.

Примеры

свернуть все

Сгенерируйте семимерный набор точки Sobol и скремблируйте точки.

p = sobolset(7);
ps = scramble(p,'MatousekAffineOwen')
ps = 
Sobol point set in 7 dimensions (9007199254740992 points)

Properties:
              Skip : 0
              Leap : 0
    ScrambleMethod : MatousekAffineOwen
        PointOrder : standard

Разделите первые 7 186 точек в ps на семь уровней 1 024 точек каждый. Уменьшайте первые 1 024 точки, чтобы быть одномерными, вторые 1 024 точки, чтобы быть двумерными, и так далее. Для каждого уровня вычислите отклонение значений точки в каждой размерности.

variance = NaN(7);
for level = 1:7
    pr = reduceDimensions(ps,level);
    pr.Skip = (level-1)*1024;
    pts = pr(1:1024,:);
    variance(level,1:level) = var(pts);
end

Постройте отклонения. Темно-синие панели показывают отклонение точек в первой размерности, темно-оранжевые панели показывают отклонение точек во втором измерении и так далее.

bar(variance)
xlabel('Level')
ylabel('Variances')

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

свернуть все

Набор точки Sobol, заданный как объект sobolset.

Количество размерностей, чтобы сохранить от точки установило p, заданный как положительный целочисленный скаляр между 1 и количество размерностей в p. Функция всегда сохраняет первые размерности d p.

Типы данных: single | double

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

| |

Введенный в R2019a