@@ -37,12 +37,12 @@ Performs the matrix-vector operation `y = α*A*x + β*y` where `α` and `β` are
37
37
``` javascript
38
38
var Float32Array = require ( ' @stdlib/array/float32' );
39
39
40
- var A = new Float32Array ( [ 1.0 , 0 .0 , 0 .0 , 0 .0 , 2.0 , 0 .0 , 0 .0 , 0 .0 , 3.0 ] );
40
+ var A = new Float32Array ( [ 1.0 , 4 .0 , 5 .0 , 4 .0 , 2.0 , 6 .0 , 5 .0 , 6 .0 , 3.0 ] );
41
41
var x = new Float32Array ( [ 1.0 , 1.0 , 1.0 ] );
42
42
var y = new Float32Array ( [ 0.0 , 0.0 , 0.0 ] );
43
43
44
44
ssymv ( ' row-major' , ' lower' , 3 , 1.0 , A , 3 , x, 1 , 0.0 , y, 1 );
45
- // y => <Float32Array>[ 1 .0, 2 .0, 3 .0 ]
45
+ // y => <Float32Array>[ 10 .0, 12 .0, 14 .0 ]
46
46
```
47
47
48
48
The function has the following parameters:
@@ -54,22 +54,22 @@ The function has the following parameters:
54
54
- ** A** : input matrix stored in linear memory as a [ ` Float32Array ` ] [ mdn-float32array ] .
55
55
- ** LDA** : stride of the first dimension of ` A ` (a.k.a., leading dimension of the matrix ` A ` ).
56
56
- ** x** : input [ ` Float32Array ` ] [ mdn-float32array ] .
57
- - ** sx** : index increment for ` x ` .
57
+ - ** sx** : stride length for ` x ` .
58
58
- ** β** : scalar constant.
59
59
- ** y** : output [ ` Float32Array ` ] [ mdn-float32array ] .
60
- - ** sy** : index increment for ` y ` .
60
+ - ** sy** : stride length for ` y ` .
61
61
62
62
The stride parameters determine how elements in the input arrays are accessed at runtime. For example, to iterate over the elements of ` x ` in reverse order,
63
63
64
64
``` javascript
65
65
var Float32Array = require ( ' @stdlib/array/float32' );
66
66
67
- var A = new Float32Array ( [ 1.0 , 0 .0 , 0 .0 , 0 .0 , 2.0 , 0 .0 , 0 .0 , 0 .0 , 3.0 ] );
68
- var x = new Float32Array ( [ 1.0 , 2 .0 , 3 .0 ] );
69
- var y = new Float32Array ( [ 1 .0 , 2 .0 , 3 .0 ] );
67
+ var A = new Float32Array ( [ 1.0 , 4 .0 , 5 .0 , 4 .0 , 2.0 , 6 .0 , 5 .0 , 6 .0 , 3.0 ] );
68
+ var x = new Float32Array ( [ 1.0 , 1 .0 , 1 .0 ] );
69
+ var y = new Float32Array ( [ 0 .0 , 0 .0 , 0 .0 ] );
70
70
71
- ssymv ( ' row-major' , ' upper' , 3 , 2 .0 , A , 3 , x, - 1 , 1.0 , y, 1 );
72
- // y => <Float32Array>[ 7 .0, 10 .0, 9 .0 ]
71
+ ssymv ( ' row-major' , ' upper' , 3 , 1 .0 , A , 3 , x, - 1 , 1.0 , y, 1 );
72
+ // y => <Float32Array>[ 10 .0, 12 .0, 14 .0 ]
73
73
```
74
74
75
75
Note that indexing is relative to the first index. To introduce an offset, use [ ` typed array ` ] [ mdn-typed-array ] views.
@@ -81,15 +81,15 @@ var Float32Array = require( '@stdlib/array/float32' );
81
81
82
82
// Initial arrays...
83
83
var x0 = new Float32Array ( [ 1.0 , 1.0 , 1.0 , 1.0 ] );
84
- var y0 = new Float32Array ( [ 1 .0 , 1 .0 , 1 .0 , 1 .0 ] );
85
- var A = new Float32Array ( [ 1.0 , 0 .0 , 0 .0 , 0 .0 , 2.0 , 0 .0 , 0 .0 , 0 .0 , 3.0 ] );
84
+ var y0 = new Float32Array ( [ 0 .0 , 0 .0 , 0 .0 , 0 .0 ] );
85
+ var A = new Float32Array ( [ 1.0 , 4 .0 , 5 .0 , 4 .0 , 2.0 , 6 .0 , 5 .0 , 6 .0 , 3.0 ] );
86
86
87
87
// Create offset views...
88
88
var x1 = new Float32Array ( x0 .buffer , x0 .BYTES_PER_ELEMENT * 1 ); // start at 2nd element
89
89
var y1 = new Float32Array ( y0 .buffer , y0 .BYTES_PER_ELEMENT * 1 ); // start at 2nd element
90
90
91
91
ssymv ( ' row-major' , ' upper' , 3 , 1.0 , A , 3 , x1, - 1 , 1.0 , y1, - 1 );
92
- // y0 => <Float32Array>[ 1 .0, 4 .0, 3 .0, 2 .0 ]
92
+ // y0 => <Float32Array>[ 0 .0, 14 .0, 12 .0, 10 .0 ]
93
93
```
94
94
95
95
#### ssymv.ndarray( uplo, N, α, A, sa1, sa2, oa, x, sx, ox, β, y, sy, oy )
@@ -99,12 +99,12 @@ Performs the matrix-vector operation `y = α*A*x + β*y` using alternative index
99
99
``` javascript
100
100
var Float32Array = require ( ' @stdlib/array/float32' );
101
101
102
- var A = new Float32Array ( [ 1.0 , 0 .0 , 0 .0 , 0 .0 , 2.0 , 0 .0 , 0 .0 , 0 .0 , 3.0 ] );
103
- var x = new Float32Array ( [ 1.0 , 2 .0 , 3 .0 ] );
104
- var y = new Float32Array ( [ 1 .0 , 2 .0 , 3 .0 ] );
102
+ var A = new Float32Array ( [ 1.0 , 4 .0 , 5 .0 , 4 .0 , 2.0 , 6 .0 , 5 .0 , 6 .0 , 3.0 ] );
103
+ var x = new Float32Array ( [ 1.0 , 1 .0 , 1 .0 ] );
104
+ var y = new Float32Array ( [ 0 .0 , 0 .0 , 0 .0 ] );
105
105
106
- ssymv .ndarray ( ' upper' , 3 , 2 .0 , A , 3 , 1 , 0 , x, - 1 , 2 , 1.0 , y, 1 , 0 );
107
- // y => <Float32Array>[ 7 .0, 10 .0, 9 .0 ]
106
+ ssymv .ndarray ( ' upper' , 3 , 1 .0 , A , 3 , 1 , 0 , x, - 1 , 2 , 1.0 , y, 1 , 0 );
107
+ // y => <Float32Array>[ 10 .0, 12 .0, 14 .0 ]
108
108
```
109
109
110
110
The function has the following additional parameters:
@@ -120,12 +120,12 @@ While [`typed array`][mdn-typed-array] views mandate a view offset based on the
120
120
``` javascript
121
121
var Float32Array = require ( ' @stdlib/array/float32' );
122
122
123
- var A = new Float32Array ( [ 1.0 , 0 .0 , 0 .0 , 0 .0 , 2.0 , 0 .0 , 0 .0 , 0 .0 , 3.0 ] );
123
+ var A = new Float32Array ( [ 1.0 , 4 .0 , 5 .0 , 4 .0 , 2.0 , 6 .0 , 5 .0 , 6 .0 , 3.0 ] );
124
124
var x = new Float32Array ( [ 1.0 , 1.0 , 1.0 ] );
125
- var y = new Float32Array ( [ 1 .0 , 1 .0 , 1 .0 ] );
125
+ var y = new Float32Array ( [ 0 .0 , 0 .0 , 0 .0 ] );
126
126
127
127
ssymv .ndarray ( ' lower' , 3 , 1.0 , A , 3 , 1 , 0 , x, - 1 , 2 , 1.0 , y, - 1 , 2 );
128
- // y => <Float32Array>[ 4 .0, 3 .0, 2 .0 ]
128
+ // y => <Float32Array>[ 14 .0, 12 .0, 10 .0 ]
129
129
```
130
130
131
131
</section >
0 commit comments