comparison liboctave/fCmplxQRP.cc @ 8811:20dfb885f877

int -> octave_idx fixes
author John W. Eaton <jwe@octave.org>
date Wed, 18 Feb 2009 23:34:03 -0500
parents c86718093c1b
children eb63fbe60fab
comparison
equal deleted inserted replaced
8810:c9e1db15035b 8811:20dfb885f877
75 FloatComplex clwork; 75 FloatComplex clwork;
76 F77_XFCN (cgeqp3, CGEQP3, (m, n, afact.fortran_vec (), m, jpvt.fortran_vec (), 76 F77_XFCN (cgeqp3, CGEQP3, (m, n, afact.fortran_vec (), m, jpvt.fortran_vec (),
77 tau, &clwork, -1, rwork, info)); 77 tau, &clwork, -1, rwork, info));
78 78
79 // allocate buffer and do the job. 79 // allocate buffer and do the job.
80 octave_idx_type lwork = clwork.real (); lwork = std::max (lwork, 1); 80 octave_idx_type lwork = clwork.real ();
81 lwork = std::max (lwork, static_cast<octave_idx_type> (1));
81 OCTAVE_LOCAL_BUFFER (FloatComplex, work, lwork); 82 OCTAVE_LOCAL_BUFFER (FloatComplex, work, lwork);
82 F77_XFCN (cgeqp3, CGEQP3, (m, n, afact.fortran_vec (), m, jpvt.fortran_vec (), 83 F77_XFCN (cgeqp3, CGEQP3, (m, n, afact.fortran_vec (), m, jpvt.fortran_vec (),
83 tau, work, lwork, rwork, info)); 84 tau, work, lwork, rwork, info));
84 } 85 }
85 else 86 else
86 for (octave_idx_type i = 0; i < n; i++) jpvt(i) = i+1; 87 for (octave_idx_type i = 0; i < n; i++) jpvt(i) = i+1;
87 88
88 // Form Permutation matrix (if economy is requested, return the 89 // Form Permutation matrix (if economy is requested, return the
89 // indices only!) 90 // indices only!)
90 91
91 jpvt -= 1; 92 jpvt -= static_cast<octave_idx_type> (1);
92 p = PermMatrix (jpvt, true); 93 p = PermMatrix (jpvt, true);
93 94
94 95
95 form (n, afact, tau, qr_type); 96 form (n, afact, tau, qr_type);
96 } 97 }