exponenta event banner

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.

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 и сбрасываются с помощью 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