exponenta event banner

Алгоритмы пересечения нулей

Программное обеспечение Simulink ® включает два алгоритма обнаружения пересечения нулей: Nonadaptive и Adaptive .

Чтобы выбрать алгоритм, используйте опцию Алгоритм (Algorithm) на панели Решатель (Solver) диалогового окна Параметр конфигурации (Configuration Parameter) или используйте команду ZeroCrossAlgorithm команда. Для команды может быть установлено значение 'Nonadaptive' или 'Adaptive'.

Алгоритм Nonadaptive предусмотрен для обратной совместимости со старыми версиями Simulink и является алгоритмом по умолчанию. Он заключает в скобки событие пересечения нуля и использует все меньшие временные шаги, чтобы точно определить, когда произошло пересечение нуля. Хотя алгоритм Nonadaptive является адекватным для многих типов моделирования, он может привести к очень длительному времени моделирования, когда присутствует высокая степень «болтания» (высокочастотное колебание вокруг точки пересечения нуля).

Алгоритм Adaptive динамически включает и выключает скобки и является хорошим выбором, когда:

  • Система содержит большое количество болтовни.

  • Требуется указать защитную полосу (допуск), вокруг которой будет обнаружено пересечение нуля.

Алгоритм Adaptive отключает квадратные скобки с пересечением через ноль (прекращает итерацию), если выполняются следующие условия:

  • Превышена ошибка пересечения нуля. Это определяется значением, указанным в опции Порог сигнала (Signal threshold) на панели Решатель (Solver) диалогового окна Параметры конфигурации (Configuration Parameters). Это также может быть установлено с помощью ZCThreshold команда. Значение по умолчанию: Auto, но для допуска можно ввести любое действительное число больше нуля.

  • Система превысила число последовательных пересечений нуля, указанное в опции Количество последовательных пересечений нуля на панели Решатель (Solver) диалогового окна Параметры конфигурации (Configuration Parameters). Альтернативно, это может быть установлено с помощью MaxConsecutiveZCs команда.

Порог сигнала для адаптивного обнаружения пересечения нуля

Алгоритм «Адаптивность» автоматически устанавливает допуск для обнаружения пересечения нуля. Можно также задать допуск, введя вещественное число, большее или равное нулю, на панели Решатель параметров конфигурации (Configuration Parameters Solver). Signal threshold тянуть вниз. Эта опция становится активной только в том случае, если для алгоритма пересечения нуля установлено значение Adaptive.

На этом рисунке показано, как порог сигнала устанавливает область окна вокруг точки пересечения нуля. Сигналы, попадающие в это окно, считаются нулевыми.

Событие пересечения нуля заключено в скобки временными шагами Tn-1 и Tn. Решатель итеративно сокращает временные шаги до тех пор, пока переменная состояния не окажется в пределах диапазона, определяемого порогом сигнала, или до тех пор, пока количество последовательных пересечений нуля не станет равным или не превысит значение на панели Решатель параметров конфигурации (Configuration Parameters Solver). Number of consecutive zero crossings тянуть вниз.

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