quantizer

Конструкция quantizer объект

Синтаксис

q = quantizer
q = quantizer('PropertyName1',PropertyValue1,...)
q = quantizer(PropertyValue1,PropertyValue2,...)
q = quantizer(struct)
q = quantizer(pn,pv)

Описание

q = quantizer создает quantizer объект со свойствами, установленными на их значения по умолчанию. Чтобы использовать этот объект для квантования значений, используйте метод квантования.

q = quantizer('PropertyName1',PropertyValue1,...) использует пары имя/значение свойства.

q = quantizer(PropertyValue1,PropertyValue2,...) создает quantizer объект с перечисленными значениями свойств. Когда два значения конфликтуют, quantizer устанавливает последнее значение свойства в списке. Значения свойств уникальны; можно задать имена свойства, задав только значения свойств в команде.

q = quantizer(struct), где struct - структура, имена полей которой являются именами свойства, устанавливает свойства, именованные в каждом имени полей, со значениями, содержащимися в структуре.

q = quantizer(pn,pv) устанавливает именованные свойства, заданные в массиве ячеек векторов символов pn к соответствующим значениям в массиве ячеек pv.

The quantizer значения свойств объектов перечислены ниже. Эти свойства подробно описаны в свойствах объекта квантователя.

Имя свойстваЗначение свойстваОписание

mode

'double'

Режим двойной точности. Переопределите все другие параметры.

'float'

Пользовательский режим точности с плавающей точкой.

'fixed'

Подписанный режим с фиксированной точкой.

'single'

Режим с одной точностью. Переопределите все другие параметры.

'ufixed'

Неподписанный режим с фиксированной точкой.

roundmode

'ceil'

Округлить к положительной бесконечности.

'convergent'

Округлить до ближайшее целого числа со связями, округляющимися до ближайшего четного целого числа.

'fix'

Округлить к нулю.

'floor'

Округлить к отрицательной бесконечности.

'Nearest'

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

'Round'

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

overflowmode (fixed-point only)

'saturate'

Насыщение при переполнении.

'wrap'

Перенос при переполнении.

format

[wordlength fractionlength]

Формат для fixed или ufixed режим.

[wordlength exponentlength]

Формат для режима с плавающей запятой.

Значения свойств по умолчанию для quantizer объект являются

        DataMode = fixed
       RoundMode = floor
    OverflowMode = saturate
             Format = [16  15]

Наряду с предыдущими свойствами quantizer объекты имеют состояния только для чтения: max, min, noverflows, nunderflows, и noperations. Доступ к ним возможен через quantizer/get или q.maxlog, q.minlog, q.noverflows, q.nunderflows, и q.noperationsно они не могут быть установлены. Они обновляются во время quantizer/quantize method, и сбрасываются resetlog функция.

В следующей таблице перечислены доступные только для чтения quantizer состояния объекта:

Имя свойстваОписание

max

Максимальное значение перед квантованием

min

Минимальное значение перед квантованием

noverflows

Количество переполнений

nunderflows

Количество нижних потоков

noperations

Количество квантованных точек данных

Примеры

Следующие операции являются эквивалентными.

Настройка quantizer свойства объекта путем перечисления значений свойств только в команде,

q = quantizer('fixed', 'Ceiling', 'Saturate', [5 4])

Использование структуры struct для установки quantizer свойства объекта,

struct.mode = 'fixed'; 
struct.roundmode = 'ceil'; 
struct.overflowmode = 'saturate'; 
struct.format = [5 4]; 
q = quantizer(struct); 

Использование имени свойства и значения свойства массивов ячеек pn и pv для установки quantizer свойства объекта,

pn = {'mode',  'roundmode', 'overflowmode', 'format'}; 
pv = {'fixed', 'ceil', 'saturate', [5 4]}; 
q = quantizer(pn, pv) 

Использование пар имя свойства/ значение свойства для настройки quantizer объект,

q = quantizer( 'mode', 'fixed','roundmode','ceil',... 
'overflowmode', 'saturate', 'format', [5 4]); 
Представлено до R2006a