- •Редактор дифференциальных уравнений dee
- •Библиотека блоков Simulink
- •Управляемая фронтом сигнала подсистема Triggered Subsystem
- •Управляемая уровнем и фронтом сигнала подсистема Enabled and Triggered Subsystem
- •Управляемая s-функцией подсистема Function-call subsystem
- •Блок условного оператора If
- •Блок переключателя Switch Case
- •Управляемая по условию подсистема Action Subsystem
- •Управляемая подсистема For Iterator Subsystem
- •Управляемая подсистема While Iterator Subsystem
- •Конфигурируемая подсистема Configurable Subsystem
- •Повышение скорости и точности расчетов
- •Повышение скорости расчета
- •Повышение точности расчета
Повышение точности расчета
Чтобы проверить достаточно ли точно выполняется моделирование, следует провести сравнительные расчеты с разными значениями параметра Relative tolerance (относительная погрешность). К примеру, можно провести расчет с заданным “по умолчанию” значением этого параметра – 1e-3 и с меньшим (1e-4) значением. Если результаты расчетов отличаются незначительно, то можно полагать, что найденное решение является верным. Если решения значительно отличаются в начальной стадии, то следует задать в явном виде достаточно малый начальный шаг расчета (Initial step size).
Если решение оказывается неустойчивым, то это может быть вызвано следующими причинами:
Моделируемая система сама является неустойчивой.
Используется метод ode15s. Следует ограничить порядок величиной 2 или использовать метод ode23s.
Если решение кажется не точным:
Следует задать в явном виде параметр Absolute tolerance (абсолютная погрешность) и выполнить ряд расчетов, уменьшая величину этого параметра.
Если уменьшение абсолютной погрешности точность расчетов не улучшается, следует уменьшить относительную погрешность (что приведет уменьшению шага расчета) либо в явном виде задавать достаточно малую величину максимального шага расчета.