sum

Сумма элементов массива

Описание

пример

S= sum (A) возвращает сумму по различным измерениям fi массив A.

Если A вектор, sum(A) возвращает сумму элементов.

Если A матрица, sum(A) обрабатывает столбцы A как векторы, возвращая вектор-строку из сумм каждого столбца.

Если A многомерный массив, sum(A) обрабатывает значения по первому неодноэлементному измерению как векторы, возвращая массив векторов-строк.

пример

S= sum ( A, dim) суммы по измерению dim из A.

пример

S = sum (___ , type ) возвращает массив в классе, заданном type, использование любого из входных параметров в предыдущих синтаксисах. type может быть 'double' или 'native'.

  • Если type 'double', затем sum возвращает массив с двойной точностью, независимо от типа входных данных.

  • Если type 'native', затем sum возвращает массив с тем же классом входного массива A.

fimath объект используется в вычислении суммы. Если SumMode FullPrecision, KeepLSB, или KeepMSB, затем количество целочисленных битов роста для sum(A) ceil(log2(size(A,dim))).

sum не поддерживает fi объекты типа данных Boolean.

Примеры

свернуть все

Создайте fi вектор, и задает fimath свойства в конструкторе.

A=fi([1 2 5 8 5], 'SumMode', 'KeepLSB', 'SumWordLength', 32)
A=1×5 object
     1     2     5     8     5

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

        RoundingMethod: Nearest
        OverflowAction: Saturate
           ProductMode: FullPrecision
               SumMode: KeepLSB
         SumWordLength: 32
         CastBeforeSum: true

Вычислите сумму элементов A.

S=sum(A)
S = 
    21

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 32
        FractionLength: 11

        RoundingMethod: Nearest
        OverflowAction: Saturate
           ProductMode: FullPrecision
               SumMode: KeepLSB
         SumWordLength: 32
         CastBeforeSum: true

Выход S скаляр с заданным SumWordLength из 32. FractionLength из S 11 потому что SumMode был установлен в KeepLSB.

Создайте fi массив, и вычисляет сумму элементов в каждом столбце.

A=fi([1 2 8;3 7 0;1 2 2])
A=3×3 object
     1     2     8
     3     7     0
     1     2     2

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

S=sum(A)
S=1×3 object
     5    11    10

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 18
        FractionLength: 11

MATLAB® возвращает вектор-строку с суммами каждого столбца A. WordLength из S увеличился на два бита потому что ceil(log2(size(A,1)))=2. FractionLength остается то же самое потому что настройка по умолчанию SumMode FullPrecision.

Вычислите сумму вдоль второго измерения (dim=2) из 3х3 матричного A.

A=fi([1 2 8;3 7 0;1 2 2])
A=3×3 object
     1     2     8
     3     7     0
     1     2     2

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

S=sum(A, 2)
S=3×1 object
    11
    10
     5

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 18
        FractionLength: 11

MATLAB® возвращает вектор-столбец сумм элементов в каждой строке. WordLength из S 18 потому что ceil(log2(size(A,2)))=2.

Вычислите суммы столбцов A так, чтобы выходной массив, S, имеет совпадающий тип данных.

A=fi([1 2 8;3 7 0;1 2 2]), class(A)
A=3×3 object
     1     2     8
     3     7     0
     1     2     2

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

ans = 
'embedded.fi'
S=sum(A, 'native'), class(S)
S=1×3 object
     5    11    10

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 18
        FractionLength: 11

ans = 
'embedded.fi'

MATLAB® сохраняет тип данных A и возвращает вектор-строку S из типа embedded.fi.

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

свернуть все

fi входной массив, заданный как скалярный, векторный, матричный или многомерный массив.

Типы данных: fi|single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Поддержка комплексного числа: Да

Величина для работы, заданная как положительный целый скаляр. dim может также быть fi объект. Если никакое значение не задано, значением по умолчанию является первое измерение массива, размер которого не равняется 1.

Типы данных: fi|single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Выходной класс, заданный как 'double' или 'native', задает тип данных, в котором операция выполнена и возвращена в.

Типы данных: char

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

свернуть все

Суммируйте массив, возвращенный как скаляр, вектор, матрица или многомерный массив.

Расширенные возможности

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

| | | | | | | | |

Представлено до R2006a

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