~ubuntu-branches/ubuntu/raring/scilab/raring-proposed

« back to all changes in this revision

Viewing changes to modules/elementary_functions/help/en_US/matrixoperations/cumsum.xml

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2012-08-30 14:42:38 UTC
  • mfrom: (1.4.7)
  • Revision ID: package-import@ubuntu.com-20120830144238-c1y2og7dbm7m9nig
Tags: 5.4.0-beta-3-1~exp1
* New upstream release
* Update the scirenderer dep
* Get ride of libjhdf5-java dependency

Show diffs side-by-side

added added

removed removed

Lines of Context:
11
11
 *
12
12
 -->
13
13
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xml:id="cumsum">
14
 
  <refnamediv>
15
 
    <refname>cumsum</refname>
16
 
    <refpurpose>cumulative sum of array elements</refpurpose>
17
 
  </refnamediv>
18
 
  <refsynopsisdiv>
19
 
    <title>Calling Sequence</title>
20
 
    <synopsis>y=cumsum(x)</synopsis>
21
 
    <synopsis>y=cumsum(x,orientation)</synopsis>
22
 
    <synopsis>y=cumsum(x,outtype)</synopsis>
23
 
    <synopsis>y=cumsum(x,orientation,outtype)</synopsis>
24
 
  </refsynopsisdiv>
25
 
  <refsection>
26
 
    <title>Arguments</title>
27
 
    <variablelist>
28
 
      <varlistentry>
29
 
        <term>x</term>
30
 
        <listitem>
31
 
          <para>an array of reals, complex, booleans, polynomials or rational fractions.</para>
32
 
        </listitem>
33
 
      </varlistentry>
34
 
      <varlistentry>
35
 
        <term>orientation</term>
36
 
        <listitem>
37
 
          <para>This argument can be</para>
38
 
          <itemizedlist>
39
 
            <listitem>
40
 
              <para>
41
 
                either a string with possible values <literal>"*"</literal>, <literal>"r"</literal>, <literal>"c"</literal> or <literal>"m"</literal>
42
 
              </para>
43
 
            </listitem>
44
 
            <listitem>
45
 
              <para>or a number with positive integer value</para>
46
 
            </listitem>
47
 
          </itemizedlist>
48
 
        </listitem>
49
 
      </varlistentry>
50
 
      <varlistentry>
51
 
        <term>outtype</term>
52
 
        <listitem>
53
 
          <para>
54
 
            a string with possible values <literal>"native"</literal> or <literal>"double"</literal>.
55
 
          </para>
56
 
        </listitem>
57
 
      </varlistentry>
58
 
      <varlistentry>
59
 
        <term>y</term>
60
 
        <listitem>
61
 
          <para>scalar or array</para>
62
 
        </listitem>
63
 
      </varlistentry>
64
 
    </variablelist>
65
 
  </refsection>
66
 
  <refsection>
67
 
    <title>Description</title>
68
 
    <para>
69
 
      For an array <literal>x</literal>, <literal>y=cumsum(x)</literal> returns in the scalar <literal>y</literal> the cumulative sum of all the elements of <literal>x</literal>.
70
 
    </para>
71
 
    <para>
72
 
      <literal>y=cumsum(x,orientation)</literal> returns in <literal>y</literal> the cumulative sum of <literal>x</literal> along the dimension given by <literal>orientation</literal>: 
73
 
    </para>
74
 
    <itemizedlist>
75
 
      <listitem>
76
 
        <para>
77
 
          if <literal>orientation</literal> is equal to 1 or "r" then: 
78
 
        </para>
79
 
        <para>
80
 
          <latex><![CDATA[ y(\mathbf{l},j) = \sum_{\mathbf{i}=1}^l x(\mathbf{i},j)]]></latex>
81
 
        </para>
82
 
        <para>or </para>
83
 
        <para>
84
 
          <latex><![CDATA[ y(\mathbf{l},j,k,\ldots) = \sum_{\mathbf{i}=1}^l x(\mathbf{i},j,k,\ldots)]]></latex>
85
 
        </para>
86
 
      </listitem>
87
 
      <listitem>
88
 
        <para>
89
 
          if <literal>orientation</literal> is equal to 2 or "c" then: 
90
 
        </para>
91
 
        <para>
92
 
          <latex><![CDATA[ y(i,\mathbf{l}) = \sum_{\mathbf{j}=1}^l x(i,{\mathbf{j})]]></latex>
93
 
        </para>
94
 
        <para> or </para>
95
 
        <para>
96
 
          <latex><![CDATA[ y(i,\mathbf{l},k,\ldots) = \sum_{\mathbf{j}=1}^l x(i,\mathbf{j},k,\ldots)]]></latex>
97
 
        </para>
98
 
      </listitem>
99
 
      <listitem>
100
 
        <para>
101
 
          if <literal>orientation</literal> is equal to n then: 
102
 
        </para>
103
 
        <para>
104
 
          <latex><![CDATA[ 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)]]></latex>
105
 
        </para>
106
 
      </listitem>
107
 
      <listitem>
108
 
        <para>
109
 
          <literal>y=cumsum(x,"*")</literal> is equivalent to <literal>y=cumsum(x)</literal>
110
 
        </para>
111
 
      </listitem>
112
 
      <listitem>
113
 
        <para>
114
 
          <literal>y=cumsum(x,"m")</literal> is equivalent to <literal>y=cumsum(x,orientation)</literal> where <literal>orientation</literal> is the index of the first dimension of <literal>x</literal> that is greater than 1. This option is used for Matlab compatibility.
115
 
        </para>
116
 
      </listitem>
117
 
    </itemizedlist>
118
 
    <para/>
119
 
    <para>
120
 
      The <literal>outtype</literal> argument rules the way the summation is done: 
121
 
    </para>
122
 
    <itemizedlist>
123
 
      <listitem>
124
 
        <para>
125
 
          For arrays of floats, of polynomials, of rational fractions, the evaluation is always done using floating points computations. The <literal>"double"</literal> or <literal>"native"</literal> options are equivalent.
126
 
        </para>
127
 
      </listitem>
128
 
      <listitem>
129
 
        <para>For arrays of integers,</para>
130
 
        <para>
131
 
          if <literal>outtype="native"</literal> the evaluation is done using integer computations (modulo 2^b, where b is the number of bits used), 
132
 
        </para>
133
 
        <para>
134
 
          if <literal>outtype="double"</literal> the evaluation is done using floating point computations.
135
 
        </para>
136
 
        <para>
137
 
          The default value is <literal>outtype="native"</literal>.
138
 
        </para>
139
 
      </listitem>
140
 
      <listitem>
141
 
        <para>For arrays of booleans,</para>
142
 
        <para>
143
 
          if <literal>outtype="native"</literal> the evaluation is done using boolean computations ( + is replaced by |), 
144
 
        </para>
145
 
        <para>
146
 
          if <literal>outtype="double"</literal> the evaluation is done using floating point computations (%t values are replaced by 1 and %f values by 0).
147
 
        </para>
148
 
        <para>
149
 
          The default value is <literal>outtype="double"</literal>.
150
 
        </para>
151
 
      </listitem>
152
 
    </itemizedlist>
153
 
  </refsection>
154
 
  <refsection>
155
 
    <title>Remark</title>
156
 
    <para>
157
 
      This function applies, with identical rules to <link linkend="sparse">sparse matrices</link> and <link linkend="hypermat">hypermatrices</link>.
158
 
    </para>
159
 
  </refsection>
160
 
  <refsection>
161
 
    <title>Examples</title>
162
 
    <programlisting role="example"><![CDATA[
 
14
    <refnamediv>
 
15
        <refname>cumsum</refname>
 
16
        <refpurpose>cumulative sum of array elements</refpurpose>
 
17
    </refnamediv>
 
18
    <refsynopsisdiv>
 
19
        <title>Calling Sequence</title>
 
20
        <synopsis>y=cumsum(x)</synopsis>
 
21
        <synopsis>y=cumsum(x,orientation)</synopsis>
 
22
        <synopsis>y=cumsum(x,outtype)</synopsis>
 
23
        <synopsis>y=cumsum(x,orientation,outtype)</synopsis>
 
24
    </refsynopsisdiv>
 
25
    <refsection>
 
26
        <title>Arguments</title>
 
27
        <variablelist>
 
28
            <varlistentry>
 
29
                <term>x</term>
 
30
                <listitem>
 
31
                    <para>an array of reals, complex, booleans, polynomials or rational fractions.</para>
 
32
                </listitem>
 
33
            </varlistentry>
 
34
            <varlistentry>
 
35
                <term>orientation</term>
 
36
                <listitem>
 
37
                    <para>This argument can be</para>
 
38
                    <itemizedlist>
 
39
                        <listitem>
 
40
                            <para>
 
41
                                either a string with possible values <literal>"*"</literal>, <literal>"r"</literal>, <literal>"c"</literal> or <literal>"m"</literal>
 
42
                            </para>
 
43
                        </listitem>
 
44
                        <listitem>
 
45
                            <para>or a number with positive integer value</para>
 
46
                        </listitem>
 
47
                    </itemizedlist>
 
48
                </listitem>
 
49
            </varlistentry>
 
50
            <varlistentry>
 
51
                <term>outtype</term>
 
52
                <listitem>
 
53
                    <para>
 
54
                        a string with possible values <literal>"native"</literal> or <literal>"double"</literal>.
 
55
                    </para>
 
56
                </listitem>
 
57
            </varlistentry>
 
58
            <varlistentry>
 
59
                <term>y</term>
 
60
                <listitem>
 
61
                    <para>scalar or array</para>
 
62
                </listitem>
 
63
            </varlistentry>
 
64
        </variablelist>
 
65
    </refsection>
 
66
    <refsection>
 
67
        <title>Description</title>
 
68
        <para>
 
69
            For an array <literal>x</literal>, <literal>y=cumsum(x)</literal> returns in the scalar <literal>y</literal> the cumulative sum of all the elements of <literal>x</literal>.
 
70
        </para>
 
71
        <para>
 
72
            <literal>y=cumsum(x,orientation)</literal> returns in <literal>y</literal> the cumulative sum of <literal>x</literal> along the dimension given by <literal>orientation</literal>: 
 
73
        </para>
 
74
        <itemizedlist>
 
75
            <listitem>
 
76
                <para>
 
77
                    if <literal>orientation</literal> is equal to 1 or "r" then: 
 
78
                </para>
 
79
                <para>
 
80
                    <latex><![CDATA[ y(\mathbf{l},j) = \sum_{\mathbf{i}=1}^l x(\mathbf{i},j)]]></latex>
 
81
                </para>
 
82
                <para>or </para>
 
83
                <para>
 
84
                    <latex><![CDATA[ y(\mathbf{l},j,k,\ldots) = \sum_{\mathbf{i}=1}^l x(\mathbf{i},j,k,\ldots)]]></latex>
 
85
                </para>
 
86
            </listitem>
 
87
            <listitem>
 
88
                <para>
 
89
                    if <literal>orientation</literal> is equal to 2 or "c" then: 
 
90
                </para>
 
91
                <para>
 
92
                    <latex><![CDATA[ y(i,\mathbf{l}) = \sum_{\mathbf{j}=1}^l x(i,{\mathbf{j})]]></latex>
 
93
                </para>
 
94
                <para> or </para>
 
95
                <para>
 
96
                    <latex><![CDATA[ y(i,\mathbf{l},k,\ldots) = \sum_{\mathbf{j}=1}^l x(i,\mathbf{j},k,\ldots)]]></latex>
 
97
                </para>
 
98
            </listitem>
 
99
            <listitem>
 
100
                <para>
 
101
                    if <literal>orientation</literal> is equal to n then: 
 
102
                </para>
 
103
                <para>
 
104
                    <latex><![CDATA[ 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)]]></latex>
 
105
                </para>
 
106
            </listitem>
 
107
            <listitem>
 
108
                <para>
 
109
                    <literal>y=cumsum(x,"*")</literal> is equivalent to <literal>y=cumsum(x)</literal>
 
110
                </para>
 
111
            </listitem>
 
112
            <listitem>
 
113
                <para>
 
114
                    <literal>y=cumsum(x,"m")</literal> is equivalent to <literal>y=cumsum(x,orientation)</literal> where <literal>orientation</literal> is the index of the first dimension of <literal>x</literal> that is greater than 1. This option is used for Matlab compatibility.
 
115
                </para>
 
116
            </listitem>
 
117
        </itemizedlist>
 
118
        <para/>
 
119
        <para>
 
120
            The <literal>outtype</literal> argument rules the way the summation is done: 
 
121
        </para>
 
122
        <itemizedlist>
 
123
            <listitem>
 
124
                <para>
 
125
                    For arrays of floats, of polynomials, of rational fractions, the evaluation is always done using floating points computations. The <literal>"double"</literal> or <literal>"native"</literal> options are equivalent.
 
126
                </para>
 
127
            </listitem>
 
128
            <listitem>
 
129
                <para>For arrays of integers,</para>
 
130
                <para>
 
131
                    if <literal>outtype="native"</literal> the evaluation is done using integer computations (modulo 2^b, where b is the number of bits used), 
 
132
                </para>
 
133
                <para>
 
134
                    if <literal>outtype="double"</literal> the evaluation is done using floating point computations.
 
135
                </para>
 
136
                <para>
 
137
                    The default value is <literal>outtype="native"</literal>.
 
138
                </para>
 
139
            </listitem>
 
140
            <listitem>
 
141
                <para>For arrays of booleans,</para>
 
142
                <para>
 
143
                    if <literal>outtype="native"</literal> the evaluation is done using boolean computations ( + is replaced by |), 
 
144
                </para>
 
145
                <para>
 
146
                    if <literal>outtype="double"</literal> the evaluation is done using floating point computations (%t values are replaced by 1 and %f values by 0).
 
147
                </para>
 
148
                <para>
 
149
                    The default value is <literal>outtype="double"</literal>.
 
150
                </para>
 
151
            </listitem>
 
152
        </itemizedlist>
 
153
    </refsection>
 
154
    <refsection>
 
155
        <title>Remark</title>
 
156
        <para>
 
157
            This function applies, with identical rules to <link linkend="sparse">sparse matrices</link> and <link linkend="hypermat">hypermatrices</link>.
 
158
        </para>
 
159
    </refsection>
 
160
    <refsection>
 
161
        <title>Examples</title>
 
162
        <programlisting role="example"><![CDATA[
163
163
A=[1,2;3,4];
164
164
cumsum(A)
165
165
cumsum(A,1)
178
178
cumsum(B) //evaluation in float
179
179
cumsum(B,"native") //similar to or(B)
180
180
 ]]></programlisting>
181
 
  </refsection>
182
 
  <refsection role="see also">
183
 
    <title>See Also</title>
184
 
    <simplelist type="inline">
185
 
      <member>
186
 
        <link linkend="sum">sum</link>
187
 
      </member>
188
 
      <member>
189
 
        <link linkend="cumprod">cumprod</link>
190
 
      </member>
191
 
    </simplelist>
192
 
  </refsection>
 
181
    </refsection>
 
182
    <refsection role="see also">
 
183
        <title>See Also</title>
 
184
        <simplelist type="inline">
 
185
            <member>
 
186
                <link linkend="sum">sum</link>
 
187
            </member>
 
188
            <member>
 
189
                <link linkend="cumprod">cumprod</link>
 
190
            </member>
 
191
        </simplelist>
 
192
    </refsection>
193
193
</refentry>