tableinfo

Получите информацию о покрытии интерполяционных таблиц от cvdata объект

Синтаксис

coverage = tableinfo(cvdo, object)
coverage = tableinfo(cvdo, object, ignore_descendants)
[coverage, exeCounts] = tableinfo(cvdo, object)
[coverage, exeCounts, brkEquality] = tableinfo(cvdo, object)

Описание

coverage = tableinfo(cvdo, object) возвращает результаты покрытия интерполяционных таблиц от cvdata cvdo объекта для компонента модели object.

coverage = tableinfo(cvdo, object, ignore_descendants) возвращает результаты покрытия интерполяционных таблиц для object, в зависимости от значения ignore_descendants.

[coverage, exeCounts] = tableinfo(cvdo, object) возвращает результаты покрытия интерполяционных таблиц и счетчик выполнения для каждого интервала интерполяции/экстраполяции в блоке интерполяционной таблицы object.

[coverage, exeCounts, brkEquality] = tableinfo(cvdo, object) возвращает результаты покрытия интерполяционных таблиц, количество выполнения для каждого интервала интерполяции/экстраполяции и количество выполнений для равенства точек останова.

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

cvdo

cvdata объект

ignore_descendants

Логическое значение, определяющее, игнорировать ли покрытие дочерних объектов

1 - Игнорируйте покрытие дочерних объектов
0 - Сбор покрытия для дочерних объектов

object

Полный путь или указатель на блок интерполяционной таблицы или модель, содержащую блок интерполяционной таблицы.

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

brkEquality

Массив ячеек, содержащий векторы, которые идентифицируют количество раз во время симуляции, когда вход блока интерполяционной таблицы был эквивалентен значению точки останова. Каждый вектор представляет точки останова по другой размерности интерполяционной таблицы.

coverage

Значение coverage является двухэлементным вектором формы [covered_intervals total_intervals], элементами которого являются:

covered_intervalsКоличество интерполяционных/экстраполяционных интервалов, удовлетворенных для object
total_intervalsОбщее количество интервалов интерполяции/экстраполяции для object

coverage пуст, если cvdo не содержит результатов покрытия интерполяционных таблиц для object.

exeCounts

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

Примеры

Соберите покрытие интерполяционных таблиц для slvnvdemo_cv_small_controller модели и определения процента охвата интерполяцией/экстраполяцией интервалов, собранных для блока Таблица в подсистеме Gain:

mdl = 'slvnvdemo_cv_small_controller';
open_system(mdl)
%Create test spec object
testObj = cvtest(mdl)
%Enable lookup table coverage
testObj.settings.tableExec = 1;
%Simulate the model
data = cvsim(testObj)
blk_handle = get_param([mdl, '/Gain/Gain Table'], 'Handle');
%Retrieve l/u table coverage
cov = tableinfo(data, blk_handle)
%Percent MCDC outcomes covered
percent_cov = 100 * cov(1) / cov(2)

Альтернативы

Используйте настройки покрытия для сбора покрытия интерполяционных таблиц для модели:

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

  2. В редакторе моделей выберите Model Settings на вкладке Modeling.

  3. На панели Coverage диалогового окна Параметры конфигурации выберите Enable coverage analysis.

  4. В разделе Coverage metrics выберите Lookup Table.

  5. Щелкните OK, чтобы закрыть диалоговое окно Параметры конфигурации (Configuration Parameters) и сохранить изменения.

  6. Симулируйте модель нажатием кнопки Run и просмотрите результаты.

Введенный в R2006b