Mercurial > hg > octave-nkf
comparison liboctave/CmplxSCHUR.cc @ 4552:6f3382e08a52
[project @ 2003-10-27 20:38:02 by jwe]
author | jwe |
---|---|
date | Mon, 27 Oct 2003 20:38:03 +0000 |
parents | 5719210fff4c |
children | c2bb27ada496 |
comparison
equal
deleted
inserted
replaced
4551:2c619e5138fd | 4552:6f3382e08a52 |
---|---|
32 #include "f77-fcn.h" | 32 #include "f77-fcn.h" |
33 #include "lo-error.h" | 33 #include "lo-error.h" |
34 | 34 |
35 extern "C" | 35 extern "C" |
36 { | 36 { |
37 int F77_FUNC (zgeesx, ZGEESX) (const char*, const char*, | 37 F77_RET_T |
38 ComplexSCHUR::select_function, | 38 F77_FUNC (zgeesx, ZGEESX) (F77_CONST_CHAR_ARG_DECL, |
39 const char*, const int&, Complex*, | 39 F77_CONST_CHAR_ARG_DECL, |
40 const int&, int&, Complex*, Complex*, | 40 ComplexSCHUR::select_function, |
41 const int&, double&, double&, | 41 F77_CONST_CHAR_ARG_DECL, |
42 Complex*, const int&, double*, int*, | 42 const int&, Complex*, const int&, int&, |
43 int&, long, long, long); | 43 Complex*, Complex*, const int&, double&, |
44 double&, Complex*, const int&, double*, int*, | |
45 int& | |
46 F77_CHAR_ARG_LEN_DECL | |
47 F77_CHAR_ARG_LEN_DECL | |
48 F77_CHAR_ARG_LEN_DECL); | |
44 } | 49 } |
45 | 50 |
46 static int | 51 static int |
47 select_ana (const Complex& a) | 52 select_ana (const Complex& a) |
48 { | 53 { |
111 | 116 |
112 // BWORK is not referenced for non-ordered Schur. | 117 // BWORK is not referenced for non-ordered Schur. |
113 Array<int> bwork ((ord_char == 'N' || ord_char == 'n') ? 0 : n); | 118 Array<int> bwork ((ord_char == 'N' || ord_char == 'n') ? 0 : n); |
114 int *pbwork = bwork.fortran_vec (); | 119 int *pbwork = bwork.fortran_vec (); |
115 | 120 |
116 F77_XFCN (zgeesx, ZGEESX, (&jobvs, &sort, selector, &sense, n, s, n, | 121 F77_XFCN (zgeesx, ZGEESX, (F77_CONST_CHAR_ARG2 (&jobvs, 1), |
117 sdim, pw, q, n, rconde, rcondv, pwork, | 122 F77_CONST_CHAR_ARG2 (&sort, 1), |
118 lwork, prwork, pbwork, info, 1L, 1L, 1L)); | 123 selector, |
124 F77_CONST_CHAR_ARG2 (&sense, 1), | |
125 n, s, n, sdim, pw, q, n, rconde, rcondv, | |
126 pwork, lwork, prwork, pbwork, info | |
127 F77_CHAR_ARG_LEN (1) | |
128 F77_CHAR_ARG_LEN (1) | |
129 F77_CHAR_ARG_LEN (1))); | |
119 | 130 |
120 if (f77_exception_encountered) | 131 if (f77_exception_encountered) |
121 (*current_liboctave_error_handler) ("unrecoverable error in zgeesx"); | 132 (*current_liboctave_error_handler) ("unrecoverable error in zgeesx"); |
122 | 133 |
123 return info; | 134 return info; |