Блок MATLAB function свойства строения
The MATLABFunctionConfiguration
объект управляет свойствами MATLAB Function блоков, такими как описание, шаг расчета и скрипт функции.
Совет
Можно также сконфигурировать MATLAB® Функциональный блок программно при помощи Stateflow.EMChart
объект. Этот объект предоставляет доступ к входам, выходам и свойствам блока MATLAB Function. Для получения дополнительной информации см. «Программная настройка блока MATLAB function».
Каждый блок MATLAB Function имеет свои собственные MATLABFunctionConfiguration
объект. Для доступа к этому объекту используйте get_param
функция. Для примера, если модель myModel
содержит блок MATLAB Function с именем MATLAB Function
, введите:
config = get_param('myModel/MATLAB Function', ... 'MATLABFunctionConfiguration');
Path
- Путь блока относительно моделиПуть блока MATLAB Function относительно модели, заданный как вектор символов.
Типы данных: char
FunctionScript
- Код для блока MATLAB functionКод для блока MATLAB Function, заданный как вектор символов.
Типы данных: char
UpdateMethod
- Метод обновления для блок MATLAB functionInherited
(по умолчанию) | Discrete
| Continuous
Метод обновления для блока MATLAB Function, заданный как одно из следующих значений:
Inherited
- Входной сигнал в триггерном порте определяет, когда блок обновляется во время симуляции. Сигнал от подключенного Simulink® блок запускает порт. Если UpdateMethod
изменяется на 'Inherited'
, Sample Time
автоматически устанавливается на -1
.
Discrete
- Модель Simulink генерирует неявное событие в регулярных временных интервалах, чтобы пробудить блок со скоростью, которую вы задаете в SampleTime
свойство. Другие блоки в модели могут иметь разные шаги расчета.
Continuous
- Блок MATLAB Function обновляется только на основных временных шагах, хотя и вычисляет выходы и локальные непрерывные переменные во время незначительных и основных временных шагов. Если на UpdateMethod
изменяется на 'Continuous'
, Sample Time
автоматически устанавливается на 0
.
Когда вы задаете UpdateMethod
на Inherited
или Continuous
и попытаться изменить SampleTime
Simulink отображает предупреждение и игнорирует входное значение шага расчета.
В Диспетчере портов и данных установите Update method равным Inherited
, Discrete
, или Continuous
Типы данных: enumerated
SampleTime
- Шаг расчета'-1'
(по умолчанию) | '0'
| вектор символовШаг расчета блока MATLAB Function, заданный как вектор символов. Шаг расчета действителен только тогда, когда UpdateMethod
установлено в Discrete
. Если UpdateMethod
установлено в Continuous
или Inherited
любые изменения, внесенные во шаг расчета, игнорируются.
В Диспетчере портов и данных введите значение параметра Sample Time.
Типы данных: char
Description
- ОписаниеОписание блока MATLAB Function, заданное как вектор символов.
В Диспетчере портов и данных введите описание в поле Description.
Типы данных: char
DocumentLink
- Ссылка на документациюСсылка на документацию для блока MATLAB Function, заданная как вектор символов.
В Диспетчере портов и данных введите ссылку в поле Document link.
Типы данных: char
SupportVariableSizing
- Поддерживает ли блок MATLAB Function данные переменного размераtrue
или 1 (по умолчанию) | false
или 0Поддерживает ли блок MATLAB Function данные переменного размера, заданные в виде числа или логического 1 (true
) или 0 (false
).
В Диспетчере портов и данных выберите Support variable-size arrays, чтобы включить эту настройку.
Типы данных: logical
AllowDirectFeedthrough
- Поддерживает ли блок MATLAB Function семантику прямой передачиtrue
или 1 (по умолчанию) | false
или 0Поддерживает ли блок MATLAB Function семантику прямой передачи, заданную в виде числа или логического 1 (true
) или 0 (false
). Считается, что блок имеет прямое сквозное соединение, если выход блока напрямую зависит от входа блока. Блок не имеет прямого сквозного соединения, если выходы блока зависят от внутренних состояний и свойств, а не от входов блока.
В Диспетчере портов и данных выберите Allow direct feedthrough, чтобы включить эту настройку.
Типы данных: logical
SaturateonIntegerOverflow
- Насыщаются ли данные при целочисленном переполненииtrue
или 1 (по умолчанию) | false
или 0Насыщаются ли данные в блоке MATLAB Function при целочисленном переполнении, заданном в виде числа или логического 1 (true
) или 0 (false
). Если для этого параметра задано значение true
переполнения достигают минимального или максимального значения, которое может представлять тип данных. Если параметр false
, переполнение оборачивается к соответствующему значению, которое может представлять тип данных. Если у вашей модели есть возможное переполнение и вы хотите применить защиту от насыщения в сгенерированном коде, рекомендуется включить эту настройку. Если у вас есть ограничения по эффективности или вы не имеете отношения к целочисленному переполнению, можно отключить этот параметр.
В Диспетчере портов и данных выберите Saturate on integer overflow, чтобы включить эту настройку.
Типы данных: logical
TreatAsFi
- Унаследованные сигналы для лечения как fi
объекты'FixedPoint'
(по умолчанию) | 'FixedPointAndInteger'
Унаследованные сигналы Simulink для обработки как Fixed-Point Designer™ fi
объекты, заданные как одно из следующих значений:
'FixedPoint'
- Блок MATLAB Function обрабатывает все входы с фиксированной точкой следующим fi
объекты.
'FixedPointAndInteger'
- Блок MATLAB Function обрабатывает все входы с фиксированной точкой и целое число как fi
объекты.
Чтобы узнать больше о fi
объекты, см. Свойства объекта fi (Fixed-Point Designer).
В Диспетчере портов и данных установите Treat these inherit Simulink signal types as fi objects равным Fixed-point
или Fixed-point and & Integer
.
Типы данных: enumerated
FimathMode
- По умолчанию fimath
свойства'SameAsMATLAB'
(по умолчанию) | 'UserSpecified'
Значения по умолчанию fimath
свойства для блока MATLAB Function, заданные как одно из следующих значений:
'SameAsMATLAB'
- Использовать ту же fimath
свойства как текущее значение по умолчанию fimath
объект.
'UserSpecified'
- Используйте Fimath
свойство для задания fimath
по умолчанию объект.
Чтобы узнать больше о математике с фиксированной точкой, см. fimath
(Fixed-Point Designer).
В Диспетчере портов и данных установите MATLAB Function fimath равным Same as MATLAB
или Specify Other
.
Типы данных: enumerated
Fimath
- По умолчанию fimath
объектЗначения по умолчанию fimath
объект, заданный как вектор символов. Когда FimathMode
свойство для блока MATLAB Function 'UserSpecified'
, вы можете использовать это свойство для:
Введите выражение, которое создает fimath
объект.
Введите имя переменной для fimath
объект в MATLAB или рабочее пространство модели.
Чтобы узнать больше о fimath
свойства объекта, см. «Свойства объекта Fixed-Point Designer».
В Диспетчере портов и данных установите MATLAB Function fimath равным Specify Other
и введите fimath
выражение.
Типы данных: char
openReport | Откройте отчет о функции MATLAB |
closeReport | Закройте отчет о функции MATLAB |
getReport | Сгенерируйте отчет о функции MATLAB |
Доступ к MATLABFunctionConfiguration
объект для блока MATLAB Function в модели call_stats_block1
описан в разделе «Создание пользовательских функций с использованием блока MATLAB function».
config = get_param('call_stats_block1/MATLAB Function', ... 'MATLABFunctionConfiguration');
Установите значение Description
свойство.
config.Description = 'Calculate the mean and standard deviation for a vector of values.';
Доступ к MATLABFunctionConfiguration
объект для блока MATLAB Function в модели call_stats_block1
описан в разделе «Создание пользовательских функций с использованием блока MATLAB function».
config = get_param('call_stats_block1/MATLAB Function', ... 'MATLABFunctionConfiguration');
Создайте MATLABFunctionReport
объект для блока MATLAB Function.
report = getReport(config);
Доступ к coder.Function
объекты в отчете.
functions = report.Functions;
Создайте пользовательский отчет, в котором перечислены функции и переменные в блоке MATLAB Function.
for i = 1:numel(functions) fprintf('Function %s uses these variables:\n',functions(i).Name) variables = functions(i).Variables; for j = 1:numel(variables) fprintf('%d. %s -- %s\n',j,variables(j).Name,variables(j).Scope) end fprintf('\n') end
Function stats uses these variables: 1. mean -- Output 2. stdev -- Output 3. vals -- Input 4. len -- Local Function avg uses these variables: 1. mean -- Output 2. array -- Input 3. size -- Input
get_param
| MATLAB Function | MATLABFunctionReport
| Stateflow.EMChart
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.