【自作量子コンピュータ NMRQCP】ノイズの中から信号を探せ!FFTとパルス制御の仕組み
波を分解する魔法「FFT」
前回の記事で、現実の信号はノイズだらけだということがわかりました。そこで活躍するのが「FFT(高速フーリエ変換)」です。
FFTは、横軸を周波数に変換し、その信号の中に「どの周波数が、どのくらい含まれているか」を可視化してくれます。これは光を色ごとに分けるプリズムのようなものです。
- レコードに例えると、回す速さとデータが合わないときは波がバラバラになって相殺されます。
- しかし、速さとデータがピッタリ合うと、波の山と谷がそれぞれ重なり合って重心がズレます。
この原理で特定の周波数を見つけ出します。
通常の計算では \(N^2\) の時間がかかりますが、FFTを使うと \(N \log N\) の計算量で済むため「高速」と呼ばれています。実数信号の処理には、効率が良い「複素FFT(np.fft.rfft)」を使用しました。実際に2100Hzと2150Hzの2つの波を混ぜてFFTにかけると、周波数が近すぎると上手く表示できないという発見もありました。
量子の状態をどうやってコントロールする?
量子ビット(原子核スピン)を操作する手順は以下の通りです。
- FFTで得たHz(量子ビットが受け取れる電波の周波数)を特定する。
- 同じHzの操作パルス(電波)を量子ビットに当てる。
- 原子がエネルギーを吸収して「共鳴」が起きる。
- スピンの方向が変化する。
- パルス照射が終わった後の応答信号(FID)をFFTで確認する。
結果を見たとき、FFTのピークが無ければ「0(電波を出さない)」、ピークがあれば「1または重ね合わせ(原子が震えて電波を出す)」という状態だと分かります。このパルス照射の時間を調整することで、量子の状態を自在にコントロールできるんです!
- 日々の実験メモやコード: GitHubリポジトリ(nmr-qc-project) に公開中
- リアルタイムの開発風景・オシロスコープ波形: X(旧Twitter) でポスト中
「本当に動くのか?」「どうやって波形を出すのか?」など、気になった方はぜひブログのブックマークやXのフォローをお願いします!
コメント
コメントを投稿