Идентификатор: Заголовок | hisl_0016: Использование блоков, которые вычисляют реляционные операторы | ||
---|---|---|---|
Описание | Чтобы поддержать робастность операций, при использовании блоков, которые вычисляют реляционные операторы, включая Relational Operator, Compare To Constant, Compare To Zero, Sign, Detect Change и блоки If: | ||
A | Избегайте сравнений с помощью == или ~= оператор для типов данных с плавающей точкой. | ||
Примечания | Из-за проблем с точностью с плавающей точностью не проверяйте выражения с плавающей точкой на равенство ( Когда модель содержит блок, вычисляющий реляционный оператор со | ||
Объяснение | A | Улучшите робастность модели. | |
Проверки Model Advisor | Проверяйте на наличие блоков реляционных операторов, которые приравнивают типы с плавающей точкой (Simulink Check) | ||
Ссылки |
| ||
См. также | hisl_0017: Использование блоков, которые вычисляют реляционные операторы (2) himl_0009: код MATLAB с равными/не равными реляционными операторами | ||
Последнее изменение | R2021a | ||
Примеры | Положительный шаблон: Чтобы проверить, равны ли две переменные с плавающей точкой или выражения, сравните различие двух переменных с порогом, который учитывает относительную точность с плавающей точкой ( Следующий шаблон показывает, как протестировать два входных сигналов двойной точности,
|
Идентификатор: Заголовок | hisl_0017: Использование блоков, которые вычисляют реляционные операторы (2) | ||
---|---|---|---|
Описание | Чтобы поддержать однозначное поведение в сгенерированном коде, при использовании блоков, которые вычисляют реляционные операторы, включая Relational Operator, Compare To Constant, Compare to Zero и Detect Change | ||
A | Установите параметры блоков Output data type в Boolean . | ||
B | Для блоков Relational Operator проверьте, что входные сигналы имеют совпадающий тип данных. | ||
Объяснение | A, B | Поддержка генерации кода, который производит однозначное поведение. | |
Проверки Model Advisor | Проверяйте использование блоков реляционных операторов (Simulink Check) | ||
Ссылки |
| ||
См. также | hisl_0016: Использование блоков, которые вычисляют реляционные операторы | ||
Последнее изменение | R2018a |
Идентификатор: Заголовок | hisl_0018: Использование блока Логического Оператора | ||
---|---|---|---|
Описание | Чтобы поддержать однозначное поведение сгенерированного кода, при использовании блока Logical Operator, | ||
A | Установите параметры блоков Output data type в | ||
B | Убедитесь, что входные сигналы имеют тип | ||
Необходимые условия | |||
Объяснение | A, B | Избегайте неоднозначного поведения сгенерированного кода. | |
Проверки Model Advisor | Проверяйте использование блоков логического оператора (Simulink Check) | ||
Ссылки |
| ||
Последнее изменение | R2017b |
Идентификатор: Заголовок | hisl_0019: Использование побитовых операций | ||
---|---|---|---|
Описание | Чтобы поддержать однозначное поведение, при использовании побитовых операций в блоках Simulink, | ||
A | Избегайте типов данных со знаком в качестве входных данных для блока. | ||
Примечания | Побитовые операции с типами данных со знаком не являются значимыми. Если операция сдвига перемещает бит со знаком в числовой бит или числовой бит в бит со знаком, может возникнуть непредсказуемое и нежелательное поведение. Битовые блоки включают:
| ||
Объяснение | A | Поддержка однозначного поведения сгенерированного кода. | |
Проверки Model Advisor | Проверяйте использование блоков битовой операции (Simulink Check) | ||
Ссылки |
| ||
См. также | hisf_0003: Использование побитовых операций | ||
Последнее изменение | R2019a |