Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
6.1.0 - Français

Change language to:
English - 日本語 - Português - Русский

Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function

Aide de Scilab >> Fonctions Elémentaires > Opérations matricielles > cumsum

cumsum

somme cumulative des éléments d'un tableau.

Séquence d'appel

y=cumsum(x)
y=cumsum(x,orientation)
y=cumsum(x,outtype)
y=cumsum(x,orientation,outtype)

Paramètres

x

un tableau de réels, de complexes, de booléens, de polynômes ou de fractions rationnelles.

orientation

Cet argument peut être

  • ou une chaîne de caractères pouvant avoir comme valeurs: "*", "r", "c" ou "m"

  • ou bien un nombre à valeur positive entière

outtype

une chaîne de caractères pouvant prendre les valeurs "native" ou "double".

y

un scalaire ou un tableau

Description

Renvoie la somme cumulée des éléments d'un tableau. Pour un tableau x, y=cumsum(x) renvoie une matrice y de la même taille que x. La valeur y(i) est la somme de tous les éléments de x(1:i), i.e. :

y(i) = \sum_{k=1}^i x(k)

y=cumsum(x,orientation) retourne dans y la somme cumulée des éléments de x le long de la dimension donnée par le paramètre orientation:

  • Si orientation est égal à 1 ou "r" alors :

    y(\mathbf{l},j) = \sum_{\mathbf{i}=1}^l x(\mathbf{i},j)

    ou

    y(\mathbf{l},j,k,\ldots) = \sum_{\mathbf{i}=1}^l x(\mathbf{i},j,k,\ldots)

  • Si orientation est égal à 2 ou "c" alors :

    y(i,\mathbf{l}) = \sum_{\mathbf{j}=1}^l x(i,{\mathbf{j})

    ou

    y(i,\mathbf{l},k,\ldots) = \sum_{\mathbf{j}=1}^l x(i,\mathbf{j},k,\ldots)

  • Si orientation est égal à n alors :

    y(i_1,\ldots,i_{n-1},\mathbf{l},i_{n+1},\ldots) = \sum_{\mathbf{i_n}=1}^l x(i_1,\ldots,i_{n-1},\mathbf{i_n},i_{n+1},\ldots)

  • y=cumsum(x,"*") est équivalent à y=cumsum(x)

  • y=cumsum(x,"m") est équivalent à y=cumsum(x,orientation)orientation est l'index de la première dimension de x qui est plus grande que 1. Cette option est utilisé pour la compatibilité avec Matlab.

L'argument outtype gère la façon dont le produit est réalisé :

  • Pour les matrices de doubles, de polynômes, de fractions rationnelles, l'évaluation est toujours effetuée sur des nombres à virgule flottante. Les options "double" ou "native" sont équivalentes (par défaut, outtype = "double").

  • Pour les tableaux d'entiers,

    si outtype="native", le calcul est effectué sur des nombres entiers (modulo 2^b, où b est le nombre de bits utilisés).

    si outtype="double", le calcul est effectué sur des nombres à virgule flottante.

    La valeur par défaut est outtype="native"

  • Pour les tableaux de booléens,

    si outtype="native", le calcul est effectué sur des booléens (* est remplacée par &),

    si outtype="double", le calcul est effectué sur des nombres à virgule flottante (%t est remplacé par 1 et %f par 0).

    La valeur par défaut est outtype="double"

Cette fonction s'applique avec les mêmes règles aux matrices creuses et aux hypermatrices.

Exemples

A=[1,2;3,4];
cumsum(A)
cumsum(A,1)

I=uint8([2 95 103;254 9 0])
cumsum(I) //native evaluation
cumsum(I,"double")
cumsum(I,2,"double")

s=poly(0,"s");
P=[s,%i+s;s^2,1];
cumsum(P),
cumsum(P,2)

B=[%t %t %f %f];
cumsum(B) //evaluation in float
cumsum(B,"native") //similar to or(B)

Voir aussi

  • cumprod — produit cumulatif des éléments d'un tableau.
  • sum — somme des éléments d'un tableau.
Report an issue
<< cumprod Opérations matricielles kron .*. >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Feb 25 08:50:19 CET 2020