Mercurial > hg > octave-jordi
diff liboctave/fEIG.cc @ 10350:12884915a8e4
merge MArray classes & improve Array interface
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Sat, 23 Jan 2010 21:41:03 +0100 |
parents | 07ebe522dac2 |
children | 8a5e980da6aa |
line wrap: on
line diff
--- a/liboctave/fEIG.cc +++ b/liboctave/fEIG.cc @@ -155,10 +155,10 @@ FloatMatrix atmp = a; float *tmp_data = atmp.fortran_vec (); - Array<float> wr (n); + Array<float> wr (n, 1); float *pwr = wr.fortran_vec (); - Array<float> wi (n); + Array<float> wi (n, 1); float *pwi = wi.fortran_vec (); volatile octave_idx_type nvr = calc_ev ? n : 0; @@ -181,7 +181,7 @@ if (info == 0) { lwork = static_cast<octave_idx_type> (dummy_work); - Array<float> work (lwork); + Array<float> work (lwork, 1); float *pwork = work.fortran_vec (); F77_XFCN (sgeev, SGEEV, (F77_CONST_CHAR_ARG2 ("N", 1), @@ -273,7 +273,7 @@ if (info == 0) { lwork = static_cast<octave_idx_type> (dummy_work); - Array<float> work (lwork); + Array<float> work (lwork, 1); float *pwork = work.fortran_vec (); F77_XFCN (ssyev, SSYEV, (F77_CONST_CHAR_ARG2 (calc_ev ? "V" : "N", 1), @@ -340,7 +340,7 @@ FloatComplex dummy_work; octave_idx_type lrwork = 2*n; - Array<float> rwork (lrwork); + Array<float> rwork (lrwork, 1); float *prwork = rwork.fortran_vec (); FloatComplex *dummy = 0; @@ -356,7 +356,7 @@ if (info == 0) { lwork = static_cast<octave_idx_type> (dummy_work.real ()); - Array<FloatComplex> work (lwork); + Array<FloatComplex> work (lwork, 1); FloatComplex *pwork = work.fortran_vec (); F77_XFCN (cgeev, CGEEV, (F77_CONST_CHAR_ARG2 ("N", 1), @@ -410,7 +410,7 @@ FloatComplex dummy_work; octave_idx_type lrwork = 3*n; - Array<float> rwork (lrwork); + Array<float> rwork (lrwork, 1); float *prwork = rwork.fortran_vec (); F77_XFCN (cheev, CHEEV, (F77_CONST_CHAR_ARG2 (calc_ev ? "V" : "N", 1), @@ -423,7 +423,7 @@ if (info == 0) { lwork = static_cast<octave_idx_type> (dummy_work.real ()); - Array<FloatComplex> work (lwork); + Array<FloatComplex> work (lwork, 1); FloatComplex *pwork = work.fortran_vec (); F77_XFCN (cheev, CHEEV, (F77_CONST_CHAR_ARG2 (calc_ev ? "V" : "N", 1), @@ -498,13 +498,13 @@ FloatMatrix btmp = b; float *btmp_data = btmp.fortran_vec (); - Array<float> ar (n); + Array<float> ar (n, 1); float *par = ar.fortran_vec (); - Array<float> ai (n); + Array<float> ai (n, 1); float *pai = ai.fortran_vec (); - Array<float> beta (n); + Array<float> beta (n, 1); float *pbeta = beta.fortran_vec (); volatile octave_idx_type nvr = calc_ev ? n : 0; @@ -529,7 +529,7 @@ if (info == 0) { lwork = static_cast<octave_idx_type> (dummy_work); - Array<float> work (lwork); + Array<float> work (lwork, 1); float *pwork = work.fortran_vec (); F77_XFCN (sggev, SGGEV, (F77_CONST_CHAR_ARG2 ("N", 1), @@ -637,7 +637,7 @@ if (info == 0) { lwork = static_cast<octave_idx_type> (dummy_work); - Array<float> work (lwork); + Array<float> work (lwork, 1); float *pwork = work.fortran_vec (); F77_XFCN (ssygv, SSYGV, (1, F77_CONST_CHAR_ARG2 (calc_ev ? "V" : "N", 1), @@ -728,7 +728,7 @@ FloatComplex dummy_work; octave_idx_type lrwork = 8*n; - Array<float> rwork (lrwork); + Array<float> rwork (lrwork, 1); float *prwork = rwork.fortran_vec (); FloatComplex *dummy = 0; @@ -745,7 +745,7 @@ if (info == 0) { lwork = static_cast<octave_idx_type> (dummy_work.real ()); - Array<FloatComplex> work (lwork); + Array<FloatComplex> work (lwork, 1); FloatComplex *pwork = work.fortran_vec (); F77_XFCN (cggev, CGGEV, (F77_CONST_CHAR_ARG2 ("N", 1), @@ -814,7 +814,7 @@ FloatComplex dummy_work; octave_idx_type lrwork = 3*n; - Array<float> rwork (lrwork); + Array<float> rwork (lrwork, 1); float *prwork = rwork.fortran_vec (); F77_XFCN (chegv, CHEGV, (1, F77_CONST_CHAR_ARG2 (calc_ev ? "V" : "N", 1), @@ -829,7 +829,7 @@ if (info == 0) { lwork = static_cast<octave_idx_type> (dummy_work.real ()); - Array<FloatComplex> work (lwork); + Array<FloatComplex> work (lwork, 1); FloatComplex *pwork = work.fortran_vec (); F77_XFCN (chegv, CHEGV, (1, F77_CONST_CHAR_ARG2 (calc_ev ? "V" : "N", 1),