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;