Основы моделирования в MATLAB. Часть 2. Simulink. Терёхин В.В. - 283 стр.

UptoLike

Составители: 

281
полнения расчетов в данном блоке. Вместо блока MATLAB
Fcn , если это возможно, следует использовать блоки Fcn или
Math Function.
Модель включает S-функцию, написанную на языке
MATLAB. В этом случае также происходит обращение к ин-
терпретатору языка MATLAB на каждом расчетном шаге.
Вместо MATLAB S-функции более предпочтительным было
бы использование S-функций
написанных на языках C или
Fortran и откомпилированных в исполняемый машинный код
в виде динамической библиотеки.
Модель включает блок памяти Memory. Использование бло-
ка памяти заставляет решающие модули с переменным по-
рядком (ode15s и ode113) выполнять снижение порядка до
первого на каждом расчетном шаге.
Максимальный размер шага (Max step size) слишком
мал.
Если этот параметр был изменен, то следует попробовать вы-
полнить моделирование снова, установив этот параметр рав-
ным auto.
Задана слишком высокая точность расчетов. Обычно значе-
ние абсолютной погрешности (Relative tolerance) заданное
равным 0.1% достаточно для большинства расчетов. При
слишком малых значениях этого параметра шаг расчета мо-
жет оказаться также
достаточно малым, что приведет к за-
медлению расчетов.
Задан слишком большой интервал расчета по времени. Как
правило, при моделировании динамических систем переход-
ные процессы представляют больший интерес, нежели уста-
новившийся режим. По достижении установившегося режима
расчет можно прекратить, поскольку далее никаких измене-
ний в состоянии модели не будет. Желательно заранее
оце-
нить предполагаемое время расчета исходя из знаний о моде-
лируемом объекте.
Модель может оказаться жесткой, а используемый решатель
не предназначен для моделирования жестких систем. Следует
попробовать использовать методы ode15s или ode23tb и
сравнить время расчета при решении этими методами.
В модели используются блоки, шаг дискретизации которых
(Sample time)
не является кратным. В этом случае Simulink
уменьшает шаг расчета до такого значения, чтобы он был
кратен шагу дискретизации каждого блока. Например, если
шаг дискретизации одного блок равен 0.5, а другого0.7, то
    полнения расчетов в данном блоке. Вместо блока MATLAB
    Fcn , если это возможно, следует использовать блоки Fcn или
    Math Function.
•   Модель включает S-функцию, написанную на языке
    MATLAB. В этом случае также происходит обращение к ин-
    терпретатору языка MATLAB на каждом расчетном шаге.
    Вместо MATLAB S-функции более предпочтительным было
    бы использование S-функций написанных на языках C или
    Fortran и откомпилированных в исполняемый машинный код
    в виде динамической библиотеки.
•   Модель включает блок памяти Memory. Использование бло-
    ка памяти заставляет решающие модули с переменным по-
    рядком (ode15s и ode113) выполнять снижение порядка до
    первого на каждом расчетном шаге.
•   Максимальный размер шага (Max step size) слишком мал.
    Если этот параметр был изменен, то следует попробовать вы-
    полнить моделирование снова, установив этот параметр рав-
    ным auto.
•   Задана слишком высокая точность расчетов. Обычно значе-
    ние абсолютной погрешности (Relative tolerance) заданное
    равным 0.1% достаточно для большинства расчетов. При
    слишком малых значениях этого параметра шаг расчета мо-
    жет оказаться также достаточно малым, что приведет к за-
    медлению расчетов.
•   Задан слишком большой интервал расчета по времени. Как
    правило, при моделировании динамических систем переход-
    ные процессы представляют больший интерес, нежели уста-
    новившийся режим. По достижении установившегося режима
    расчет можно прекратить, поскольку далее никаких измене-
    ний в состоянии модели не будет. Желательно заранее оце-
    нить предполагаемое время расчета исходя из знаний о моде-
    лируемом объекте.
•   Модель может оказаться жесткой, а используемый решатель
    не предназначен для моделирования жестких систем. Следует
    попробовать использовать методы ode15s или ode23tb и
    сравнить время расчета при решении этими методами.
•   В модели используются блоки, шаг дискретизации которых
    (Sample time) не является кратным. В этом случае Simulink
    уменьшает шаг расчета до такого значения, чтобы он был
    кратен шагу дискретизации каждого блока. Например, если
    шаг дискретизации одного блок равен 0.5, а другого – 0.7, то

                                                           281