Как понять плохо обусловленную проблему якобиана в моделях Modelica? - PullRequest
2 голосов
/ 12 июля 2020

Я изменяю параметр в своей модели, но иногда это приводило к остановке моделирования из-за плохо обусловленного якобиана, я не уверен, что означает эта ошибка.

Мой вопрос: *

Есть ли какое-либо объяснение того, как решать уравнения DAE в моделях Modelica, чтобы я мог понять использование матрицы Якоби? Как я могу узнать, какое уравнение или параметр вызывает эту проблему в Dymola?

введите описание изображения здесь

1 Ответ

1 голос
/ 16 июля 2020

Модель Modelica более или менее соответствует гибридной системе ODE (или гибридной системе DAE с индексом один). Для простоты предположим, что он отображается в явную систему ODE с непрерывным временем

xdot = f (x, p, t), x (0) = x0

Обратите внимание, что гибридная система ODE состоит из нескольких частей систем ODE с непрерывным временем. Якобиан - это частная производная от f относительно x:

df / dx (p, x0, t)

Эта матрица используется обычными современными численными решателями для адаптивного численного интегрирования размера шага, т.е. на каждом временном шаге выбирается новый размер шага. Для медленной динамики выбираются большие размеры шага и наоборот. На каждом временном шаге система нелинейных уравнений решается, вероятно, с использованием итерационной схемы Гаусса-Ньютона, которая требует обращения к якобиану (или его приближения). Если якобиан плохо обусловлен или полусингулярен на определенном c временном шаге, это вызывает численную нестабильность, которая может затруднить оценку численного решения.

  1. Хорошая литература, которая Я предпочитаю документацию / руководство пользователя набора солнечных часов, например Ch2 of CVODE guide . В дополнение к хорошо известным книгам, более продвинутая литература включает журнальные статьи, посвященные таким современным числовым программам, как Солнечные часы, DASSL и др. якобиана и выясняя, какая группа уравнений приводит к сингулярности якобиана.

...