globalfimath

Сконфигурируйте глобальное fimath и верните указатель объекта

Синтаксис

G = globalfimath
G = globalfimath('PropertyName1',PropertyValue1,...)
G = globalfimath(f)

Описание

G = globalfimath возвращает объект указатель в глобальный fimath. Глобальный fimath имеет те же свойства, что и fimath объект, но применяется глобально.

G = globalfimath('PropertyName1',PropertyValue1,...) устанавливает глобальное fimath с помощью именованных свойств и их соответствующих значений. Свойства, которые вы не задаете в этом синтаксисе, автоматически устанавливаются на свойства текущего глобального fimath.

G = globalfimath(f) устанавливает свойства глобального fimath, совпадающие с свойствами входных fimath f объекта, и возвращает к нему указатель объекта.

Если в предыдущем релизе вы не использовали saveglobalfimathpref функция для сохранения глобальных настроек fimath в MATLAB® настройки, глобальные свойства fimath, заданные с помощью globalfimath функция применяется только к текущему сеансу работы с MATLAB. Лучшей практикой удалить глобальное fimath из настроек MATLAB, чтобы начать каждый Сеанс работы с MATLAB с помощью fimath по умолчанию настройки. Чтобы удалить глобальный fimath, используйте removeglobalfimathpref функция.

Примеры

свернуть все

Используйте функцию globalfimath, чтобы задать, изменить и сбросить глобальный fimath.

Создайте объект fimath и используйте его как глобальный fimath.

G = globalfimath('RoundMode','Floor','OverflowMode','Wrap')
G = 
        RoundingMethod: Floor
        OverflowAction: Wrap
           ProductMode: FullPrecision
               SumMode: FullPrecision

Создайте другой объект fimath с использованием нового объекта по умолчанию.

F1 = fimath
F1 = 
        RoundingMethod: Floor
        OverflowAction: Wrap
           ProductMode: FullPrecision
               SumMode: FullPrecision

Создайте объект fi, A, связанный с глобальным fimath.

A = fi(pi)
A = 
    3.1416

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 13

Теперь установите свойство «SumMode» глобального fimath на «KeepMSB» и сохраните все другие значения свойств текущего глобального fimath.

G = globalfimath('SumMode','KeepMSB')
G = 
        RoundingMethod: Floor
        OverflowAction: Wrap
           ProductMode: FullPrecision
               SumMode: KeepMSB
         SumWordLength: 32
         CastBeforeSum: true

Измените глобальный fimath путем непосредственного взаимодействия с указателем объектом G.

G.ProductMode = 'SpecifyPrecision'
G = 
        RoundingMethod: Floor
        OverflowAction: Wrap
           ProductMode: SpecifyPrecision
     ProductWordLength: 32
 ProductFractionLength: 30
               SumMode: KeepMSB
         SumWordLength: 32
         CastBeforeSum: true

Сбросьте глобальное fimath к заводскому умолчанию путем вызова метода сброса на G. Это эквивалентно использованию функции resetglobalfimath.

reset(G);
G
G = 
        RoundingMethod: Nearest
        OverflowAction: Saturate
           ProductMode: FullPrecision
               SumMode: FullPrecision

Совет

Если вы всегда используете одну и ту же fimath и вы не делитесь кодом с другими людьми, используя globalfimath функция является быстрым, удобным методом для настройки этих настроек. Однако, если вы делитесь кодом с другими людьми или используете fiaccel функция для ускорения алгоритма или вы генерируете код С для вашего алгоритма, рассмотрите следующие альтернативы.

ЦельПроблема с использованием globalfimathРешение

Совместное использование кода

Если вы делитесь кодом с кем-то, кто использует различные глобальные fimath параметры, они могут видеть различные результаты.

Разделите fimath свойства из вашего алгоритма при помощи таблиц типов. Для получения дополнительной информации смотрите Отдельные определения типов данных из алгоритма.

Ускорите алгоритм, используя fiaccel или сгенерируйте код С из алгоритма MATLAB с помощью codegen

Вы не можете использовать globalfimath в этом алгоритме. Если вы генерируете код с одним globalfimath настройка и запуск с другим globalfimath настройка, результаты могут варьироваться. Для получения дополнительной информации смотрите Определение значений по умолчанию для MEX-функций.

Используйте таблицы типов в алгоритме, из которых вы хотите сгенерировать код. Это изолирует вас от глобальных настроек и делает код портативным. Для получения дополнительной информации смотрите Отдельные определения типов данных из алгоритма.

См. также

| | | | (MATLAB CODER)

Введенный в R2010a