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