DFTベクトルの複素共役対称性を維持するための行列のプリコーディングの条件


10

長さNのDFTベクトルがあるとします。これは、その中間点の周りに複素共役対称性を示します。つまり、、など。 およびは、それぞれDCおよびナイキスト周波数であるため、実数です。残りの要素は複雑です。XX(1)=X(N1)X(2)=X(N2)X(0)X(N/2)

ここで、ベクトルXを乗算するサイズ行列とします。TN×N

Y=TX

質問は:

どのような条件で、行列に対して、結果のベクトルの中間点の周りの複素共役対称性が保持されますか?TY

この質問の動機は、IFFTが実数である事前にコード化された(事前に等化された)シンボルをもたらすプリコーダー行列を考え出そうとすることです。TY

編集:

@MattLに感謝します。と@niaren。この質問の難しさは、必要な条件を見つけることです。マットの答えは確かに十分です。次の変更を加えるだけでも十分です。

最初の行と最初の列はゼロである必要はありません。代わりに、それらはゼロ以外の値である可能性があります。その値が中間点の周りに複雑な共役対称性を示す限り、そのシンボルのように、最初の値は実数で、番目の値は実数です。同じことは、番目の列、番目の行、および主対角線についても言えます。(N/2+1)(N/2+1)(N/2+1)

次に、左上隅と右下隅のマトリックス間の同じ対応を右上隅と左下隅の間で行うことができます。つまり、t 2 N / 2 + 2から t N / 2 Nまでの行列。左から右に反転し、逆さまに反転して共役を取り、左下隅に配置します。MATLABでは、次のようになります。(N/21)×(N/21)t2,N/2+2tN/2,N

T(N/2+2:N,2:N/2) = conj(fliplr(flipud(Tisi(2:(N/2),N/2+2:N))))

この構造は、DFT行列の構造に似ています。それは必要条件でしょうか?

編集(2):

次のコードは、任意の実数値行列Aに対してこのような有効な演算子を実装します。N×NA

N = 8;  
A = rand(N,N); %must be real-valued  
w = exp(-1j*2*pi/N); % twiddle factor  
W = w.^(repmat(0:N-1,N,1).*repmat(0:N-1,N,1).'); % DFT matrix  
T = W*A*W'

編集(3):

また、が十分な条件を示していることにも注目してください。これは、次のことから生じます。T1

ここで、WはDFT行列です。

T1=(WAWH)1=(WH)1A1W1
W

以降。この方程式は次のようになります。WH=NW1

T1=NW1111NWH=W1WH

最後に、は実数値なので、Aがフルランクであれば、T 1で十分です。1T1


詳細に入る前に、ここで寝ますが、考慮してください。対角行列制限は不要ですが、一般性を失うことなく実行できます。可能なすべてのベクトルYは、生成されました。同意しますか?TY
Matt L.

確かに、私はそれに同意します。
igorauad 2013年

回答:


1

行列エントリは、a N n + 1 N m + 1 = a n mに従う必要があると思います。これは、行N n + 1のエントリが行nの係数と同じであるが、係数が共役で逆になっていることを示しています。パターンTのためのNは= 4でありますTaNn+1,Nm+1=an,mNn+1TN=4

T4=[a11a12a13a14a21a22a23a24a24a23a22a21a14a13a12a11]

きっと誰かがより良い、より正確な答えを思いつくでしょう。


DCコンポーネントはどうですか?のDC成分は、Tの最初の行と(複素数)ベクトルXの内積です。これは実際にどのように評価されますか?YTX
Matt L.

1
私はそれをOPの演習として残し、2行のを詰めました。しかし、対角行列のみが機能するという結論にどうやって到達したかはわかりません(間違っていると言っているのではありません)。
niaren 2013年

確かに私は間違っているかもしれません。時間があれば、もう一度考えます。次のようにしましょう。対角行列(共役対称性)はどのような場合でも機能します。
Matt L.

-1

私が間違っていない場合、ベクトルXに依存しないの唯一の解は、対角(複素数)行列であり、対角線は複素共役対称性を満たします。TX

編集: OK、私は間違っていました。対角線は問題ありませんが、必須ではありません。行列は、次の一般的な構造を持っている必要があります。要素t 11およびt N / 2 + 1 N / 2 + 1は実数値でなければなりません(これらはDCおよびナイキストに対応します)。t 11を除いて、最初の行と列にはゼロのみが含まれます。要素t 22からt N / 2の場合、N / 2はアービトレイN / 2 1Tt11tN/2+1,N/2+1t11t22tN/2,N/2(N/21)×(N/21)TT

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.