Mercurial > octave
comparison liboctave/dRowVector.cc @ 1253:bb67a902760b
[project @ 1995-04-11 16:35:23 by jwe]
author | jwe |
---|---|
date | Tue, 11 Apr 1995 16:35:23 +0000 |
parents | 97eac19837dc |
children | f93b7fa5e113 |
comparison
equal
deleted
inserted
replaced
1252:ccb22498f289 | 1253:bb67a902760b |
---|---|
36 | 36 |
37 // Fortran functions we call. | 37 // Fortran functions we call. |
38 | 38 |
39 extern "C" | 39 extern "C" |
40 { | 40 { |
41 int F77_FCN (dgemv) (const char*, const int&, const int&, | 41 int F77_FCN (dgemv, DGEMV) (const char*, const int&, const int&, |
42 const double&, const double*, const int&, | 42 const double&, const double*, |
43 const double*, const int&, const double&, | 43 const int&, const double*, const int&, |
44 double*, const int&, long); | 44 const double&, double*, const int&, |
45 | 45 long); |
46 double F77_FCN (ddot) (const int&, const double*, const int&, | 46 |
47 const double*, const int&); | 47 double F77_FCN (ddot, DDOT) (const int&, const double*, const int&, |
48 const double*, const int&); | |
48 } | 49 } |
49 | 50 |
50 /* | 51 /* |
51 * Row Vector class. | 52 * Row Vector class. |
52 */ | 53 */ |
228 | 229 |
229 int ld = a_nr; | 230 int ld = a_nr; |
230 | 231 |
231 double *y = new double [len]; | 232 double *y = new double [len]; |
232 | 233 |
233 F77_FCN (dgemv) ("T", a_nc, a_nr, 1.0, a.data (), ld, v.data (), | 234 F77_FCN (dgemv, DGEMV) ("T", a_nc, a_nr, 1.0, a.data (), ld, |
234 1, 0.0, y, 1, 1L); | 235 v.data (), 1, 0.0, y, 1, 1L); |
235 | 236 |
236 return RowVector (y, len); | 237 return RowVector (y, len); |
237 } | 238 } |
238 | 239 |
239 // other operations | 240 // other operations |
357 (*current_liboctave_error_handler) | 358 (*current_liboctave_error_handler) |
358 ("nonconformant vector multiplication attempted"); | 359 ("nonconformant vector multiplication attempted"); |
359 return 0.0; | 360 return 0.0; |
360 } | 361 } |
361 | 362 |
362 return F77_FCN (ddot) (len, v.data (), 1, a.data (), 1); | 363 return F77_FCN (ddot, DDOT) (len, v.data (), 1, a.data (), 1); |
363 } | 364 } |
364 | 365 |
365 Complex | 366 Complex |
366 operator * (const RowVector& v, const ComplexColumnVector& a) | 367 operator * (const RowVector& v, const ComplexColumnVector& a) |
367 { | 368 { |