Обновите файлы компонента 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, позволяют вам достигнуть тех же результатов, не ставя под угрозу возможности во время выполнения. Для получения дополнительной информации смотрите, что настройка не рекомендуется.