I'm thinking it could make sense to just do it complex-domain, and let the matrices be mutated to real after the fact. I'll look at what's needed for this one. hmmm ... i could create the complex frequencies from the real ones pretty easily. but why then would i make real-only frequencies? given the real-only frequencies presently passed, i could make them complex by negative the last one, and adding a negative copy of [1:-1] to the end. the frequencies are the columns, so that would make the columns higher. and, i could perform the same operation to the columns, to test it. 0701 ok i made a 28x28 matrix from the 15x28 with np.concatenate([irft15[:-1], -irft15[-1:], -irft15[-2:0:-1]], axis=0) . what i forgot is i then need to do that same thing to the frequency data. 0702 ... i think? uhhh ... sure? 0704 well i think it didn't work, but again it's a completely closed space so troubleshootable (Pdb) p np.concatenate([randvec[:15-1], -randvec[15-1:15], -randvec[15-2:0:-1]], axis=0) @ np.concatenate([irft15[:-1], -irft15[-1:], -irft15[-2:0:-1]], axis=0) array([ 1.16440470e+00+0.00000000e+00j, -2.06852600e-02+7.57080766e-01j, -4.12448696e-02-5.73952669e-02j, 6.38566021e-02+1.92383707e-01j, 7.28450867e-02+2.55216158e-02j, -1.02024613e-02+2.43706412e-01j, -7.56961791e-02-4.18414726e-02j, 4.82900291e-02+9.39427377e-02j, -4.02841798e-03+1.41726360e-02j, -3.64195288e-02+1.53454051e-01j, -1.18700773e-01-1.35771840e-01j, 1.77806585e-01+3.95182283e-02j, -9.02267217e-02+9.19256166e-02j, 3.16841781e-04+3.92491139e-03j, -7.17746950e-02+1.13634013e-16j, 3.16841781e-04-3.92491139e-03j, -9.02267217e-02-9.19256166e-02j, 1.77806585e-01-3.95182283e-02j, -1.18700773e-01+1.35771840e-01j, -3.64195288e-02-1.53454051e-01j, -4.02841798e-03-1.41726360e-02j, 4.82900291e-02-9.39427377e-02j, -7.56961791e-02+4.18414726e-02j, -1.02024613e-02-2.43706412e-01j, 7.28450867e-02-2.55216158e-02j, 6.38566021e-02-1.92383707e-01j, -4.12448696e-02+5.73952669e-02j, -2.06852600e-02-7.57080766e-01j]) (Pdb) p randvec2irfft array([ 6.23788233e-01, -1.10813893e-02, -2.20954659e-02, 3.42088940e-02, 3.90241536e-02, -5.46560429e-03, -4.05515245e-02, 2.58696585e-02, -2.15808106e-03, -1.95104618e-02, -6.35896998e-02, 9.52535278e-02, -4.83357438e-02, 1.69736668e-04, -3.84507295e-02, 1.69736668e-04, -4.83357438e-02, 9.52535278e-02, -6.35896998e-02, -1.95104618e-02, -2.15808106e-03, 2.58696585e-02, -4.05515245e-02, -5.46560429e-03, 3.90241536e-02, 3.42088940e-02, -2.20954659e-02, -1.10813893e-02]) 0705 0707