Обновите файлы компонента Simscape, чтобы использовать новый синтаксис
ssc_update package
Команда ssc_update запускает скрипт, который обновляет устаревшие файлы компонента, содержащие операторы across и through. После обнаружения с файлом компонента Simscape™, записанным в старом формате, скрипт создает резервную копию файла (), удаляет операторы filename.ssc.bakthrough и across из раздела setup, заменяет операторы through на соответствующий раздел branches и добавляет уравнения, эквивалентные операторам across к разделу equations файла.
ssc_update обновления все устаревшие файлы компонента, расположенные в пакете. Аргумент, package, должен быть именем пакета верхнего уровня. package
Имя каталога пакета начинается с ведущего символа +, тогда как аргумент к ssc_update должен не использовать символ +.
Если при запуске команду ssc_update из структуры каталогов пакета, можно не использовать аргумент.
Например, у вас есть пользовательский пакет +MyCapacitors, который содержит файл компонента IdealCapacitor.ssc, написанный в старом формате:
component IdealCapacitor
% Ideal Capacitor
% Models an ideal (lossless) capacitor.
nodes
p = foundation.electrical.electrical; % +:top
n = foundation.electrical.electrical; % -:bottom
end
parameters
C = { 1, 'F' }; % Capacitance
V0 = { 0, 'V' }; % Initial voltage
end
variables
i = { 0, 'A' }; % Current through variable
v = { 0, 'V' }; % Voltage across variable
end
function setup
if C <= 0
error( 'Capacitance must be greater than zero' )
end
through( i, p.i, n.i ); % Through variable i from node p to node n
across( v, p.v, n.v ); % Across variable v from p to n
v = V0;
end
equations
i == C*v.der; % Equation
end
end
Чтобы обновить файл к новому формату, в командной строке MATLAB®, введите:
ssc_update MyCapacitors;
Эта команда создает резервную копию файла компонента, IdealCapacitor.ssc.bak, в той же папке, где исходный файл находится и переписывает файл IdealCapacitor.ssc можно следующим образом:
component IdealCapacitor
% Ideal Capacitor
% Models an ideal (lossless) capacitor.
nodes
p = foundation.electrical.electrical; % +:top
n = foundation.electrical.electrical; % -:bottom
end
parameters
C = { 1, 'F' }; % Capacitance
V0 = { 0, 'V' }; % Initial voltage
end
variables
i = { 0, 'A' }; % Current through variable
v = { 0, 'V' }; % Voltage across variable
end
function setup
if C <= 0
error( 'Capacitance must be greater than zero' )
end
v = V0;
end
branches
i : p.i -> n.i; % Through variable i from node p to node n
end
equations
v == p.v - n.v; % Across variable v from p to n
i == C*v.der; % Equation
end
end
Как вы видите, исходный оператор through
through( i, p.i, n.i ); % Through variable i from node p to node n
был заменен разделом branches:
branches i : p.i -> n.i; % Through variable i from node p to node n end
Оператор across
across( v, p.v, n.v ); % Across variable v from p to n
был заменен уравнением
v == p.v - n.v; % Across variable v from p to n
в разделе equations.
Другие два оператора в разделе setup были оставлены без изменений.
Запуск в R2019a, использование setup не рекомендуются, чтобы избежать ошибок с доменными параметрами во время выполнения. Другие построения, доступные на языке Simscape, позволяют вам достигнуть тех же результатов, не ставя под угрозу возможности во время выполнения. Для получения дополнительной информации смотрите страницу с описанием setup.