# HG changeset patch # User jwe # Date 976831035 0 # Node ID e63a3a6d779731e50ebb5609a31d0987e27ce2db # Parent f751e43de300bbfb4bba3fdf67ea0923f087a114 [project @ 2000-12-14 21:57:14 by jwe] diff --git a/libcruft/ChangeLog b/libcruft/ChangeLog --- a/libcruft/ChangeLog +++ b/libcruft/ChangeLog @@ -1,3 +1,9 @@ +2000-12-14 John W. Eaton + + * lapack/dgelss.f (DGELSS): Use correct leading dimension for + workspace array passed to dgemm and dlacpy. + (ZGELSS): Likewise, for calls to zgemm and zlacpy. + 2000-07-18 John W. Eaton * Makefile.in (DISTSUBDIRS): New macro. diff --git a/libcruft/lapack/dgelss.f b/libcruft/lapack/dgelss.f --- a/libcruft/lapack/dgelss.f +++ b/libcruft/lapack/dgelss.f @@ -491,8 +491,8 @@ DO 40 I = 1, NRHS, CHUNK BL = MIN( NRHS-I+1, CHUNK ) CALL DGEMM( 'T', 'N', M, BL, M, ONE, WORK( IL ), LDWORK, - $ B( 1, I ), LDB, ZERO, WORK( IWORK ), N ) - CALL DLACPY( 'G', M, BL, WORK( IWORK ), N, B( 1, I ), + $ B( 1, I ), LDB, ZERO, WORK( IWORK ), M ) + CALL DLACPY( 'G', M, BL, WORK( IWORK ), M, B( 1, I ), $ LDB ) 40 CONTINUE ELSE diff --git a/libcruft/lapack/zgelss.f b/libcruft/lapack/zgelss.f --- a/libcruft/lapack/zgelss.f +++ b/libcruft/lapack/zgelss.f @@ -512,8 +512,8 @@ DO 40 I = 1, NRHS, CHUNK BL = MIN( NRHS-I+1, CHUNK ) CALL ZGEMM( 'C', 'N', M, BL, M, CONE, WORK( IL ), LDWORK, - $ B( 1, I ), LDB, CZERO, WORK( IWORK ), N ) - CALL ZLACPY( 'G', M, BL, WORK( IWORK ), N, B( 1, I ), + $ B( 1, I ), LDB, CZERO, WORK( IWORK ), M ) + CALL ZLACPY( 'G', M, BL, WORK( IWORK ), M, B( 1, I ), $ LDB ) 40 CONTINUE ELSE diff --git a/liboctave/dMatrix.cc b/liboctave/dMatrix.cc --- a/liboctave/dMatrix.cc +++ b/liboctave/dMatrix.cc @@ -1186,7 +1186,7 @@ double *tmp_data = atmp.fortran_vec (); int nrr = m > n ? m : n; - Matrix result (nrr, nrhs); + Matrix result (nrr, nrhs, 0.0); for (int j = 0; j < nrhs; j++) for (int i = 0; i < m; i++) diff --git a/scripts/ChangeLog b/scripts/ChangeLog --- a/scripts/ChangeLog +++ b/scripts/ChangeLog @@ -1,3 +1,8 @@ +2000-12-13 Teemu Ikonen + + * polynomial/deconv.m: For compatibility with Matlab, don't reduce + result polynomials. + 2000-12-07 John W. Eaton * image/saveimage.m: Don't try to create rawbit image. diff --git a/scripts/polynomial/deconv.m b/scripts/polynomial/deconv.m --- a/scripts/polynomial/deconv.m +++ b/scripts/polynomial/deconv.m @@ -57,8 +57,6 @@ b = 0; endif - b = polyreduce (b); - lc = la + length (b) - 1; if (ly == lc) r = y - conv (a, b); @@ -66,6 +64,4 @@ r = [(zeros (1, lc - ly)), y] - conv (a, b); endif - r = polyreduce (r); - endfunction