|
| 1 | + |
| 2 | +{{alias}}( ord, side, uplo, transa, diag, M, N, α, A, lda, B, ldb ) |
| 3 | + Solves matrix equation `op(A) * X = α * B` or `X * op(A) = α * B` where `α` |
| 4 | + is a scalar, `X` and `B` are `M` by `N` matrices, `A` is a unit, or |
| 5 | + non-unit, upper or lower triangular matrix and `op(A)` is one of |
| 6 | + `op(A) = A` or `op(A) = A^T`. The matrix `X` is overwritten on `B`. |
| 7 | + |
| 8 | + Indexing is relative to the first index. To introduce an offset, use typed |
| 9 | + array views. |
| 10 | + |
| 11 | + If `M` or `N` is equal to `0`, the function returns `B` unchanged. |
| 12 | + |
| 13 | + If `α` equals `0`, returns `B` filled with zeros. |
| 14 | + |
| 15 | + Parameters |
| 16 | + ---------- |
| 17 | + ord: string |
| 18 | + Row-major (C-style) or column-major (Fortran-style) order. Must be |
| 19 | + either 'row-major' or 'column-major'. |
| 20 | + |
| 21 | + side: string |
| 22 | + Specifies whether `op( A )` multiplies `B` from the left or right. |
| 23 | + |
| 24 | + uplo: string |
| 25 | + Specifies whether `A` is an upper or lower triangular matrix. |
| 26 | + |
| 27 | + transa: string |
| 28 | + Specifies whether `A` should be transposed, conjugate-transposed, or |
| 29 | + not transposed. |
| 30 | + |
| 31 | + diag: string |
| 32 | + Specifies whether `A` has a unit diagonal. |
| 33 | + |
| 34 | + M: integer |
| 35 | + Number of rows of `B`. |
| 36 | + |
| 37 | + N: integer |
| 38 | + Number of columns of `B`. |
| 39 | + |
| 40 | + α: number |
| 41 | + Scalar constant. |
| 42 | + |
| 43 | + A: Float32Array |
| 44 | + Input matrix. |
| 45 | + |
| 46 | + lda: integer |
| 47 | + Stride of the first dimension of `A` (a.k.a., leading dimension of the |
| 48 | + matrix `A`). |
| 49 | + |
| 50 | + B: Float32Array |
| 51 | + Second matrix. |
| 52 | + |
| 53 | + ldb: integer |
| 54 | + Stride of the first dimension of `B` (a.k.a., leading dimension of the |
| 55 | + matrix `B`). |
| 56 | + |
| 57 | + Returns |
| 58 | + ------- |
| 59 | + B: Float32Array |
| 60 | + Second matrix. |
| 61 | + |
| 62 | + Examples |
| 63 | + -------- |
| 64 | + > var A = new {{alias:@stdlib/array/float32}}( [ 1.0, 0.0, 2.0, 3.0 ] ); |
| 65 | + > var B = new {{alias:@stdlib/array/float32}}( [ 1.0, 2.0, 3.0, 4.0 ] ); |
| 66 | + > var ord = 'row-major'; |
| 67 | + > var side = 'left'; |
| 68 | + > var uplo = 'lower'; |
| 69 | + > var transa = 'no-transpose'; |
| 70 | + > var diag = 'unit'; |
| 71 | + > {{alias}}( ord, side, uplo, transa, diag, 2, 2, 1.0, A, 2, B, 2 ) |
| 72 | + <Float32Array>[ 1.0, 2.0, 1.0, 0.0 ] |
| 73 | + |
| 74 | + |
| 75 | +{{alias}}.ndarray(side,uplo,transa,diag,M,N,α,A,sa1,sa2,oa,B,sb1,sb2,ob) |
| 76 | + Solves matrix equation `op(A) * X = α * B` or `X * op(A) = α * B` where `α` |
| 77 | + is a scalar, `X` and `B` are `M` by `N` matrices, `A` is a unit, or |
| 78 | + non-unit, upper or lower triangular matrix and `op(A)` is one of |
| 79 | + `op(A) = A` or `op(A) = A^T`. The matrix `X` is overwritten on `B` using |
| 80 | + alternative indexing semantics. |
| 81 | + |
| 82 | + While typed array views mandate a view offset based on the underlying |
| 83 | + buffer, the offset parameters support indexing semantics based on starting |
| 84 | + indices. |
| 85 | + |
| 86 | + Parameters |
| 87 | + ---------- |
| 88 | + side: string |
| 89 | + Specifies whether `op( A )` multiplies `B` from the left or right. |
| 90 | + |
| 91 | + uplo: string |
| 92 | + Specifies whether `A` is an upper or lower triangular matrix. |
| 93 | + |
| 94 | + transa: string |
| 95 | + Specifies whether `A` should be transposed, conjugate-transposed, or |
| 96 | + not transposed. |
| 97 | + |
| 98 | + diag: string |
| 99 | + Specifies whether `A` has a unit diagonal. |
| 100 | + |
| 101 | + M: integer |
| 102 | + Number of rows of `B`. |
| 103 | + |
| 104 | + N: integer |
| 105 | + Number of columns of `B`. |
| 106 | + |
| 107 | + α: number |
| 108 | + Scalar constant. |
| 109 | + |
| 110 | + A: Float32Array |
| 111 | + Input matrix. |
| 112 | + |
| 113 | + sa1: integer |
| 114 | + Stride of the first dimension of `A`. |
| 115 | + |
| 116 | + sa2: integer |
| 117 | + Stride of the second dimension of `A`. |
| 118 | + |
| 119 | + oa: integer |
| 120 | + Starting index for `A`. |
| 121 | + |
| 122 | + B: Float32Array |
| 123 | + Second matrix. |
| 124 | + |
| 125 | + sb1: integer |
| 126 | + Stride of the first dimension of `B`. |
| 127 | + |
| 128 | + sb2: integer |
| 129 | + Stride of the second dimension of `B`. |
| 130 | + |
| 131 | + ob: integer |
| 132 | + Starting index for `B`. |
| 133 | + |
| 134 | + Returns |
| 135 | + ------- |
| 136 | + B: Float32Array |
| 137 | + Second matrix. |
| 138 | + |
| 139 | + Examples |
| 140 | + -------- |
| 141 | + > var A = new {{alias:@stdlib/array/float32}}( [ 1.0, 0.0, 2.0, 3.0 ] ); |
| 142 | + > var B = new {{alias:@stdlib/array/float32}}( [ 1.0, 2.0, 3.0, 4.0 ] ); |
| 143 | + > var side = 'left'; |
| 144 | + > var uplo = 'lower'; |
| 145 | + > var transa = 'no-transpose'; |
| 146 | + > var diag = 'unit'; |
| 147 | + > {{alias}}.ndarray(side,uplo,transa,diag,2,2,1.0,A,2,1,0,B,2,1,0) |
| 148 | + <Float32Array>[ 1.0, 2.0, 1.0, 0.0 ] |
| 149 | + |
| 150 | + See Also |
| 151 | + -------- |
0 commit comments