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, программное обеспечение Simulink® Coverage™ собирает информацию покрытия модели во время симуляции. sldvruntest возвращает данные о покрытии в cvdata объект covData.

Примеры

свернуть все

Анализируйте 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);

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

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 Coverage).

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

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

Значение по умолчанию: true

useParallel

Если true, Simulink Design Verifier симулирует тесты с параллельными вычислениями. Эта опция требует лицензии Parallel Computing Toolbox™.

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

Примечание

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

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

свернуть все

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

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

tout_sldvruntest

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

xout_sldvruntest

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

yout_sldvruntest

Данные о выходном сигнале

logsout_sldvruntest

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

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

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

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

Примечание

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

Советы

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

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

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

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

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

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

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

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

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

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

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

Представленный в R2007b