Что произойдет, если вы напишите
P = fft(V) / sqrt(N);
Потому что, когда я читаю справочную документацию FFT в Matlab, она показывает, что FFT
N
X(k) = Sum x(n) * exp( -i*2*pi* (k-1) * (n-1)/N ), 1 <= k <= N
n=1
Но ваша матрица собственных векторовV
является унитарным, и когда вы переключаетесь в импульсное пространство с помощью БПФ, вам нужно снова получить унитарную матрицу, поэтому вам нужно, чтобы дискретное преобразование Фурье (DFT) было унитарным оператором (DFT - это просто матрица показателей, как вы можетесм. на матричном уравнении ниже).Поэтому, чтобы сделать DFT унитарным преобразованием, вам нужна формула
![enter image description here](https://i.stack.imgur.com/mAp7m.gif)
Если вы возьмете две разные строки матрицы дискретного преобразования Фурье, скажем, строки k
и m
, и образуя их эрмитово-точечное произведение, вы получаете
![enter image description here](https://i.stack.imgur.com/ZzItS.gif)
А когда вы расширяете и упрощаете его
![enter image description here](https://i.stack.imgur.com/v3prw.gif)
Когда вы смотрите на эту сумму ближе
![enter image description here](https://i.stack.imgur.com/hZjoA.gif)
Таким образом, ДПФ является унитарной матрицей, поэтому он преобразует нормализованные собственные состояния гамильтонина в представлении положения в соответствующие нормализованные собственные состояния гамильтониана в представлении импульса.