Проверяйте и улучшайте точность симуляции

Проверяйте точность симуляции

  1. Моделируйте модель за разумный промежуток времени.

  2. Уменьшите относительную погрешность либо до 1e-4 (по умолчанию 1e-3), либо до абсолютной погрешности.

  3. Моделируйте модель еще раз.

  4. Сравните результаты обеих симуляций.

Если результаты существенно не отличаются, решение сходится.

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

Нестабильные результаты симуляции

Когда результаты симуляции становятся нестабильными с течением времени,

  • Система может быть нестабильной.

  • Если вы используете ode15s решатель, попробуйте ограничить максимальный порядок 2 (максимальный порядок, для которого решатель является A-стабильным). Можно также попробовать использовать ode23s решатель.

Неточные результаты симуляции

Если результаты симуляции не точны:

  • Для модели, которая имеет состояния, значения которых приближаются к нулю, если параметр абсолютной погрешности слишком велик, симуляция делает слишком мало шагов вокруг областей с почти нулевыми значениями состояния. Уменьшите это значение параметров в Solver pane параметров конфигурации модели или скорректируйте его для отдельных состояний в параметры блоков функций блока Integrator.

  • Если уменьшение абсолютных погрешностей недостаточно улучшает точность симуляции, уменьшите размер параметра относительной погрешности. Это изменение уменьшает допустимую ошибку и требует меньших размеров шага и большего количества шагов.

Некоторые конструкции моделирования могут также привести к неожиданным или неточным результатам симуляции.

  • Блок Source, который наследует время расчета, может привести к различным результатам симуляции, если, например, изменены шаги расчета нижестоящих блоков (см. «Как распространение влияет на унаследованные шаги расчета»).

  • Блок Derivative, найденный в алгебраическом цикле, может привести к потере точности решателя.

Похожие примеры

Подробнее о