Update of /cvsroot/pure-data/externals/iem/iemmatrix/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14046
Modified Files: mtx_rowrfft.c mtx_rowrifft.c Log Message: enlarging the mtx_rowr(i)fft column size again from N/2 to N/2+1. all other changes from zmoelnig (crashy) were kept.
Index: mtx_rowrifft.c =================================================================== RCS file: /cvsroot/pure-data/externals/iem/iemmatrix/src/mtx_rowrifft.c,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** mtx_rowrifft.c 23 Oct 2005 19:50:45 -0000 1.3 --- mtx_rowrifft.c 14 Nov 2005 09:56:13 -0000 1.4 *************** *** 95,99 **** int columns_re = atom_getint (argv++); int in_size = argc-2; ! int columns = columns_re<<1; int size2 = columns_re * rows; int size = rows * columns; --- 95,99 ---- int columns_re = atom_getint (argv++); int in_size = argc-2; ! int columns = (columns_re-1)<<1; int size2 = columns_re * rows; int size = rows * columns; *************** *** 104,108 ****
// ifftsize check ! if (!size) post("mtx_rowrifft: invalid dimensions"); else if (in_size < size2) --- 104,110 ----
// ifftsize check ! if (columns_re < 3) ! post("mtx_rowrifft: matrix must have at least 3 columns"); ! else if (!size) post("mtx_rowrifft: invalid dimensions"); else if (in_size < size2) *************** *** 137,141 **** } else ! post("mtx_rowrifft: rowvector size no power of 2!"); }
--- 139,143 ---- } else ! post("mtx_rowrifft: rowvector 2*(size+1) no power of 2!"); }
Index: mtx_rowrfft.c =================================================================== RCS file: /cvsroot/pure-data/externals/iem/iemmatrix/src/mtx_rowrfft.c,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** mtx_rowrfft.c 23 Oct 2005 19:50:45 -0000 1.3 --- mtx_rowrfft.c 14 Nov 2005 09:56:13 -0000 1.4 *************** *** 103,107 **** int rows = atom_getint (argv++); int columns = atom_getint (argv++); ! int columns_re = (columns>>1); int size = rows * columns; int in_size = argc-2; --- 103,107 ---- int rows = atom_getint (argv++); int columns = atom_getint (argv++); ! int columns_re = (columns>>1)+1; /* N/2+1 samples needed for real part of realfft */ int size = rows * columns; int in_size = argc-2;