Алгебраические циклы
Алгебраические или неявные циклы имеют место когда два или более блока со сквозной передачей входных сигналов формируют петлю обратной связи. Когда это случается Simulink должен выполнять проверку при каждом шаге, чтобы определить имеется ли решение этой задачи. Алгебраические циклы значительно сокращают скорость моделирования и могут быть неразрешимыми, избегайте их всегда когда возможно.
Примеры блоков с прямой передачей сигнала следующие:
* Усилительные блоки;
* Большинство нелинейных блоков (например Ограничитель);
* Блоки передаточных функций, когда числитель такого же порядка, как знаменатель;
* Нуль полюсные усилительные блоки, когда имеется так же много нулей, как и полюсов;
* Блоки пространств-состояний, когда имеется ненулевая D матрица.
На следующем рисунке простой пример системы с алгебраическим циклом:
Simulink сообщает об ошибке когда не может решить алгебраический цикл в 200-х итерациях методом Ньютона - Рафсона.
Алгоритмы моделирования
Моделирование заключается, обычно, в интегрировании системы обычных дифференциальных уравнений. Simulink предусматривает ряд методов для моделирования таких уравнений:
* linsim метод, который вычисляет линейную динамику;
* rk23 метод Рунге-Кутта третьего порядка;
* rk45 метод Рунге-Кутта пятого порядка;
* gear метод предсказания исправлений Гиара для жестких систем;
* adams метод предсказания исправлений Адамса;
* euler метод Эйлера.
Примечание. Жесткие системы - системы объединяющие как блоки с быстрой, так и медленной динамикой (в данном руководстве).
Производительность моделирования (скорость и точность) изменяется для различных моделей и состояний. Несколько рекомендаций по выбору метода:
Linsim
* linsim используется для линейных моделей. Линейные модели составляются из таких блоков, как передаточные функции, блоки пространств состояний, нуль полюсные усилители, сумматоры, усилители и т.д.
* linsim также работает хорошо, если система в основном линейная, но содержит несколько нелинейных блоков. Linsim особенно превосходит другие методы, когда линейные блоки обладают как быстрой, так и медленной динамикой ( т.е. жесткие системы ).
Rk45, rk23
* Методы Рунге-Кутта обычно превосходят другие методы, когда система высоко нелинейная и/или дискретная. Эти методы работают плохо, когда система обладает как быстрой, так и медленной динамикой. В этом случае используйте жесткие методы решения, такие как linsim или gear. Методы rk23 и rk45 хорошо работают для смешанных, непрерывных и дискретных, систем.
Gear
* Используйте метод gear когда система гладкая и нелинейная. Этот метод разработан для жестких систем, для нежестких систем метод менее эффективен, чем другие. Метод может плохо работать, когда в системе имеются особые точки или на систему действует быстро изменяющийся входной сигнал.
Adams
* Используйте метод adams для гладких и нелинейных систем, которые не имеют изменяющихся в широком диапазоне постоянных времени.
Euler
* Используйте метод euler только для подтверждения результатов моделирования.
Дата добавления: 2015-11-10; просмотров: 1545;