Mercurial > hg > octave-jordi
comparison src/OPERATORS/op-fcm-fcm.cc @ 9661:afcf852256d2
optimize / and '\ for triangular matrices
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Wed, 23 Sep 2009 10:00:16 +0200 |
parents | 1be3c73ed7b5 |
children | 1dba57e9d08d |
comparison
equal
deleted
inserted
replaced
9660:0256e187d13b | 9661:afcf852256d2 |
---|---|
137 DEFBINOP (mul_herm, float_complex_matrix, float_complex_matrix) | 137 DEFBINOP (mul_herm, float_complex_matrix, float_complex_matrix) |
138 { | 138 { |
139 CAST_BINOP_ARGS (const octave_float_complex_matrix&, const octave_float_complex_matrix&); | 139 CAST_BINOP_ARGS (const octave_float_complex_matrix&, const octave_float_complex_matrix&); |
140 return octave_value(xgemm (false, false, v1.float_complex_matrix_value (), | 140 return octave_value(xgemm (false, false, v1.float_complex_matrix_value (), |
141 true, true, v2.float_complex_matrix_value ())); | 141 true, true, v2.float_complex_matrix_value ())); |
142 } | |
143 | |
144 DEFBINOP (trans_ldiv, float_complex_matrix, float_complex_matrix) | |
145 { | |
146 CAST_BINOP_ARGS (const octave_float_complex_matrix&, | |
147 const octave_float_complex_matrix&); | |
148 MatrixType typ = v1.matrix_type (); | |
149 | |
150 FloatComplexMatrix ret = xleftdiv (v1.float_complex_matrix_value (), | |
151 v2.float_complex_matrix_value (), typ, blas_trans); | |
152 | |
153 v1.matrix_type (typ); | |
154 return ret; | |
155 } | |
156 | |
157 DEFBINOP (herm_ldiv, float_complex_matrix, float_complex_matrix) | |
158 { | |
159 CAST_BINOP_ARGS (const octave_float_complex_matrix&, | |
160 const octave_float_complex_matrix&); | |
161 MatrixType typ = v1.matrix_type (); | |
162 | |
163 FloatComplexMatrix ret = xleftdiv (v1.float_complex_matrix_value (), | |
164 v2.float_complex_matrix_value (), typ, blas_conj_trans); | |
165 | |
166 v1.matrix_type (typ); | |
167 return ret; | |
142 } | 168 } |
143 | 169 |
144 DEFNDCMPLXCMPOP_FN (lt, float_complex_matrix, float_complex_matrix, | 170 DEFNDCMPLXCMPOP_FN (lt, float_complex_matrix, float_complex_matrix, |
145 float_complex_array, float_complex_array, mx_el_lt) | 171 float_complex_array, float_complex_array, mx_el_lt) |
146 DEFNDCMPLXCMPOP_FN (le, float_complex_matrix, float_complex_matrix, | 172 DEFNDCMPLXCMPOP_FN (le, float_complex_matrix, float_complex_matrix, |
237 octave_float_complex_matrix, mul_trans); | 263 octave_float_complex_matrix, mul_trans); |
238 INSTALL_BINOP (op_herm_mul, octave_float_complex_matrix, | 264 INSTALL_BINOP (op_herm_mul, octave_float_complex_matrix, |
239 octave_float_complex_matrix, herm_mul); | 265 octave_float_complex_matrix, herm_mul); |
240 INSTALL_BINOP (op_mul_herm, octave_float_complex_matrix, | 266 INSTALL_BINOP (op_mul_herm, octave_float_complex_matrix, |
241 octave_float_complex_matrix, mul_herm); | 267 octave_float_complex_matrix, mul_herm); |
268 INSTALL_BINOP (op_trans_ldiv, octave_float_complex_matrix, | |
269 octave_float_complex_matrix, trans_ldiv); | |
270 INSTALL_BINOP (op_herm_ldiv, octave_float_complex_matrix, | |
271 octave_float_complex_matrix, herm_ldiv); | |
272 | |
242 INSTALL_BINOP (op_lt, octave_float_complex_matrix, | 273 INSTALL_BINOP (op_lt, octave_float_complex_matrix, |
243 octave_float_complex_matrix, lt); | 274 octave_float_complex_matrix, lt); |
244 INSTALL_BINOP (op_le, octave_float_complex_matrix, | 275 INSTALL_BINOP (op_le, octave_float_complex_matrix, |
245 octave_float_complex_matrix, le); | 276 octave_float_complex_matrix, le); |
246 INSTALL_BINOP (op_eq, octave_float_complex_matrix, | 277 INSTALL_BINOP (op_eq, octave_float_complex_matrix, |