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

Можно задать входные параметры категориального массива в командной строке или в приложении MATLAB® Coder™. Программируемая спецификация категориального входа вводит при помощи предварительного создания условий (assert операторы), не поддерживается.

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

Используйте одну из этих процедур:

В качестве альтернативы, если у вас есть тестовый файл, который вызывает вашу функцию точки входа с входными параметрами в качестве примера, можно определить входные типы при помощи coder.getArgTypes.

Обеспечьте вход категориального массива в качестве примера

Используйте -args опция:

C = categorical({'r','g','b'});
codegen myFunction -args {C}

Обеспечьте тип категориального массива

Обеспечить тип для категориального массива к codegen:

  1. Задайте категориальный массив. Например:

    C = categorical({'r','g','b'});
    

  2. Создайте тип из C.

    t = coder.typeof(C);
    

  3. Передайте тип codegen при помощи -args опция.

    codegen myFunction -args {t}
    

Обеспечьте постоянный вход категориального массива

Чтобы указать, что вход категориального массива является постоянным, используйте coder.Constant с -args опция:

C = categorical({'r','g','b'});
codegen myFunction -args {coder.Constant(C)}

Задайте входные параметры категориального массива в приложении MATLAB Coder

Используйте одну из этих процедур:

Представление Категориальных массивов

Текстовый объект кодера для категориального массива описывает объект и его свойства. Использование coder.typeof или передайте categorical как строковый скаляр к coder.newtype.

Текстовый объект кодера отображает сжатое описание свойств объектов в то время как, исключая значения внутреннего состояния. Непостоянные свойства отображают свой тип и размер, в то время как постоянные свойства отображают только свои значения. Например:

t = categorical({'r','g','b'});
tType = coder.typeof(t)

Представление переменной t хранится в текстовом объекте кодера tType.

tType = 

   matlab.coder.type.CategoricalType
     1x3 categorical
	Categories : 3x1 homogeneous cell
	   Ordinal : 1x1 logical
	 Protected : 1x1 logical

Если ваш рабочий процесс требует устаревшего представления текстовых объектов кодера, используйте getCoderType функция на переменной, которая имеет новое представление вашего класса или объекта. Смотрите Устаревшее Представление Текстовых объектов Кодера.

Измените размер свойств объектов при помощи coder.resize

Можно изменить размер большинства объектов при помощи coder.resize. Можно изменить размер объектов, его свойств и создать массивы в свойствах.

Для categorical объект кодера, можно изменить размер свойств объектов:

t = categorical({'r','g','b'});
tType = coder.typeof(t);
tType.Categories = coder.resize(tType.Categories, [3 1],[1 0])

Этот код изменяет размер Categories свойство, которое будет верхне ограничено в 3 для первой размерности.

tType = 

   matlab.coder.type.CategoricalType
     1x3 categorical
	Categories : :3x1 homogeneous cell
	   Ordinal : 1x1 logical
	 Protected : 1x1 logical

Можно также изменить размер объекта при помощи coder.resize. Смотрите редактирование и представляйте текстовые объекты кодера и свойства.

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

| |

Похожие темы