Подтвердите встроенную модель с плавающей точкой

Можно использовать режим переопределения типа данных, чтобы временно переключить типы данных в модель. Эта возможность позволяет вам поддерживать одну модель, но моделировать вашу модель с помощью нескольких типов данных и подтверждать числовое поведение для каждого типа. Например, если вы реализуете алгоритм, использующий с двойной точностью типы данных, и хотите проверить, подходит ли алгоритм также для использования с одинарной точностью, можно применить переопределение типа данных к типам данных с плавающей точкой, чтобы заменить, все удваивается с одиночными играми, постоянно не влияя ни на какие другие типы данных в модели.

Примените переопределение типа данных к типам данных с плавающей точкой

Чтобы применить переопределение типа данных, необходимо задать тип данных, который вы хотите применить и тип данных, который вы хотите заменить.

Можно установить переопределение типа данных с помощью следующего метода. Этот пример изменяет все типы данных с плавающей точкой на сингл.

Например:

set_param(gcs, 'DataTypeOverride', 'Single',...
 'DataTypeOverrideAppliesTo','Floating-point');

Для получения дополнительной информации о настройках переопределения типа данных смотрите Переопределение Типа данных Управления.

Подтвердите модель с одинарной точностью

Этот пример использует модель ex_single_validation, чтобы показать, как можно использовать переопределение типа данных. Оказывается, что алгоритм, который реализует с двойной точностью типы данных, также подходит для встроенного использования с одинарной точностью.

О модели

  • Входные параметры In2 и In3 являются с двойной точностью входными параметрами к блокам продукта и Сумме.

  • Выходные параметры Суммы и блоков продукта являются вводами данных к Многопортовому блоку switch.

  • Входной параметр In1 является входным параметром управления к Многопортовому блоку switch. Значение этого входного параметра управления определяет который из его других входных параметров, суммы In2 и In3 или продукта In2 и In3, передач в выходной порт. Поскольку In1 является входным параметром управления, его типом данных является int8.

  • Блок Relational Operator сравнивает вывод Многопортового блока switch к In4 и выводит булев сигнал.

Запустите пример

Откройте модель

  1. Откройте модель ex_single_validation. В командной строке MATLAB® войдите:

    addpath(fullfile(docroot,'toolbox','simulink','examples'))
    ex_single_validation

Замените типы данных с плавающей точкой с одиночными играми

  1. В командной строке замените типы данных с плавающей точкой в модели с одиночными играми

    set_param(gcs, 'DataTypeOverride', 'Single',...
     'DataTypeOverrideAppliesTo','Floating-point');
  2. В образцовом меню выберите Simulation> Update Diagram.

    Переопределение типа данных заменяет все с плавающей точкой (double) типы данных в модели с типами данных single, но не влияет на целочисленные типы данных или булевы типы данных.

Осуществите образцовую проверку советника

  1. Из образцового меню выберите Analysis> Model Advisor> Model Advisor.

  2. В Системном диалоговом окне Селектора нажать ОК.

    Образцовый Советник открывается.

  3. В Образцовом Советнике расширьте узлом Задачи и, при Моделировании Систем С одинарной точностью, выберите Identify сомнительные операции для строгой проверки дизайна с одинарной точностью.

  4. На правой панели нажмите Run This Check.

    Проверка передает указание, что этот алгоритм подходит для использования с одинарной точностью. Чтобы гарантировать, чтобы не с двойной точностью типы данных остались в сгенерированном коде, используйте Конвертер С одинарной точностью прежде, чем сгенерировать код для встроенного использования с одинарной точностью. Для получения дополнительной информации смотрите Начало работы с Конвертером Одинарной точности (Fixed-Point Designer).

Блоки та одинарная точность поддержки

Чтобы идентифицировать блоки Simulink®, которые поддерживают одинарную точность в командной строке, вводят showblockdatatypetable. В модели, чтобы найти блоки, которые не поддерживают одинарную точность, использование, Образцовая проверка Советника Идентифицирует сомнительные операции для строгого дизайна с одинарной точностью.

Смотрите также

|

Похожие темы

Была ли эта тема полезной?