sldvruntest

Симулируйте модель с помощью входных данных

Описание

outData = sldvruntest(model, dataFile) моделирует model при помощи всех тестов в dataFile. outData является массивом Simulink.SimulationOutput объекты. Каждый элемент массива содержит выходные данные симуляции соответствующего теста.

пример

outData = sldvruntest(model, dataFile, runOpts) моделирует model при помощи всех тестов в dataFile. runOpts определяет опции для симуляции тестов.

[outData, covData] = sldvruntest(model, dataFile, runOpts) моделирует model при помощи тестов в dataFile. Когда runOpts полевые coverageEnabled является true, the Simulink® Coverage™ программа собирает информацию о покрытии модели во время симуляции. sldvruntest возвращает данные о покрытии в cvdata covData объекта.

Примеры

свернуть все

Анализируйте sldvdemo_cruise_control модель. Симулируйте модель с помощью данных из трёх тестов. Исследуйте данные логгирования сигнала при помощи Данных моделирования Inspector.

Откройте sldvdemo_cruise_control пример модели.

open_system('sldvdemo_cruise_control');

Установите sldvoptions и анализируйте модель.

opts = sldvoptions;
opts.Mode = 'TestGeneration';
opts.SaveHarnessModel = 'on';
opts.SaveReport = 'off';
[ status, files ] = sldvrun('sldvdemo_cruise_control', opts);

Симулируйте модель с помощью данных из трёх тестов. Исследуйте данные логгирования сигнала при помощи Данных моделирования Inspector.

runOpts = sldvruntestopts;
[ outData ] = sldvruntest('sldvdemo_cruise_control',...
    files.DataFile, runOpts);
Simulink.sdi.createRun('Test Case 1 Output', 'namevalue',...
    {'output'}, {outData(1).find('logsout_sldvruntest')});
Simulink.sdi.createRun('Test Case 2 Output', 'namevalue',...
    {'output'}, {outData(2).find('logsout_sldvruntest')});
Simulink.sdi.createRun('Test Case 3 Output', 'namevalue',...
    {'output'}, {outData(3).find('logsout_sldvruntest')});
Simulink.sdi.view;

Сгенерируйте отчет о покрытии путем симуляции тестов для sldvdemo_cruise_control модель.

Откройте sldvdemo_cruise_control пример модели.

open_system('sldvdemo_cruise_control');

Установите sldvoptions и анализируйте модель.

opts = sldvoptions;
opts.Mode = 'TestGeneration';
opts.SaveHarnessModel = 'on';
opts.SaveReport = 'off';
[ status, files ] = sldvrun('sldvdemo_cruise_control', opts);

Включите опцию для сбора данных о покрытии модели и симуляции модели с помощью данных. Затем сгенерируйте отчет о покрытии при помощи cvhtml (Покрытие Simulink).

runOpts = sldvruntestopts;
runOpts.coverageEnabled = true; 
[ outData,covData ] = sldvruntest('sldvdemo_cruise_control',...
                      files.DataFile,runOpts); 
cvhtml('coverageReport',covData); 

Входные параметры

свернуть все

Имя или указатель на модель Simulink для симуляции.

Имя файла данных или структуры, содержащей входные данные. Можно сгенерировать dataFile при помощи анализа Simulink Design Verifier™ или путем выполнения sldvlogsignals функция. Для получения дополнительной информации смотрите Файлы данных Simulink Design Verifier.

Структура, поля которой определяют строение sldvruntest.

ОбластьОписание

testIdx

Тест для симуляции из dataFile. Если testIdx является [], sldvruntest моделирует все тесты.

По умолчанию: []

signalLoggingSaveFormat

Укажите формат данных логгированию сигналов для сигналов, которые соединяются с outport модели, и для промежуточных сигналов, которые сконфигурированы для логгирования.

Если вы задаете Dataset, данные хранятся в Simulink.SimulationData.Dataset объекты.

По умолчанию: 'Dataset'

coverageEnabled

Если true, указывает, что программное обеспечение Simulink Coverage собирает данные о покрытии модели во время симуляции.

По умолчанию: false

coverageSetting

cvtest объект для сбора покрытия модели. Если [], sldvruntest использует существующие параметры покрытия для model.

По умолчанию: []

fastRestart

Если trueSimulink Design Verifier использует быстрый режим перезапуска для симуляции модели.

По умолчанию: true

useParallel

Если trueSimulink Design Verifier моделирует тесты с параллельными вычислениями. Для этой опции требуется лицензия Parallel Computing Toolbox™.

По умолчанию: false

Примечание

runOpts = sldvruntestopts возвращает runOpts структура со значениями по умолчанию для каждого поля.

Выходные аргументы

свернуть все

Массив Simulink.SimulationOutput объекты, которые программа генерирует после симуляции тестов. Каждый Simulink.SimulationOutput имеет поля, перечисленные в таблице.

Имя поляОписание

tout_sldvruntest

Время симуляции

xout_sldvruntest

Данные о состоянии

yout_sldvruntest

Выходы сигнала

logsout_sldvruntest

Данные логгирования сигналов для:

  • Сигналы, соединенные с выходными портами

  • Сигналы, которые сконфигурированы для логгирования на модели

The cvdata объект, который содержит данные покрытия модели, которые программное обеспечение собирает во время симуляции.

Примечание

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

Совет

  • The dataFile который вы создаете с анализом Simulink Design Verifier или путем выполнения sldvlogsignals содержит временные значения и значения данных. Когда вы моделируете модель с помощью этих тестов, можно достичь недостающего покрытия. Недостающее покрытие происходит, когда значения времени в dataFile не выровнены с текущим временным шагом симуляции из-за числовых различий вычисления. Вы добиваетесь недостающего покрытия чаще с многоскоростные модели - моделей, которые имеют несколько шагов расчета.

  • Для useParallelпри симуляции тестов с помощью параллельных вычислений необходимо учитывать следующие точки:

    • Запуск параллельного пула может занять время, что влияет на общее время анализа. Чтобы уменьшить время анализа:

      • Убедитесь, что параллельный пул уже работает, прежде чем выполнять анализ генерации тестов. По умолчанию параллельный пул отключается после простоя в течение заданного количества минут. Чтобы изменить настройку, смотрите тему «Задайте свои параллельные настройки» в Parallel Computing Toolbox.

      • Загрузите Simulink на всех работников параллельного пула.

    • Симуляция происходит последовательно, когда:

      • Кластер не local. Сконфигурируйте параллельные настройки, чтобы использовать local только кластер. Чтобы изменить настройку, смотрите тему «Задайте свои параллельные настройки» в Parallel Computing Toolbox.

      • Модель находится в dirty state перед запуском SLDV-анализа.

      • Модель имеет ToFile блоки.

      • Модель находится в режиме симуляции Программное обеспечение в цикле (SIL).

      • Модель является внутренней обвязкой.

Введенный в R2007b