моделирование с использованием многомерного нормального распределения (MATLAB) - PullRequest
0 голосов
/ 22 февраля 2011

Я использую функцию mvnrnd в созданной мной функции моделирования

У меня есть следующее:

если строка сигма меньше или = 5 (запуск функции симуляции создан= 1000) функция работает НО, если в строке матрицы сегментов больше 5 (и прогон = 1000 созданной функции) возвращается сообщение об ошибке: матрица SIGMA должна быть положительной полуопределенной матрицей.

AND

если я запустил симуляцию 50 раз и строка сигма-матрицы = 10 (например)

это работает

КАК я могу заставить mvnrnd работать в симуляции?

1 Ответ

0 голосов
/ 28 марта 2011

Я предполагаю, что команда выглядит примерно так: R = mvnrnd (MU, SIGMA)

Элементами SIGMA должны быть ковариации, которые по определению являются положительными, и, следовательно, SIGMA должна быть положительной полуопределенной матрицей. то есть имеет положительные или равные нулю собственные значения.

Таким образом, вы подпитываете свою функцию Сигмой, которая является ошибочной.

Я бы посоветовал вам проверить свой код или опубликовать его здесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...