HPCI戦略プログラム分野5では素粒子・原子核・宇宙分野の研究者、計算機科学の研究者らからなるユーザー支援チームを組織し、分野内の情報共有、計算の並列化や最適化に関するユーザーへのアドバイス、ユーザー支援を行なっています。最新のユーザー支援事例報告をご紹介いたします。
計算の概略 | ユニタリ行列のオイラー角分解 応用としては格子QCDコードのメモリ量/帯域ないし演算負荷の軽減を考えていますが、割と基礎的な内容の数学の質問となります |
---|---|
使用言語 | c, c++, N=2,3ではMaximaを使ってEuler角から合成はしてみましたが、分解まではできていません |
問題 | UをU(N)ないしSU(N)のNxN複素行列とします。 このとき、次のような分解が可能であるように思えます。 U = ADB,ただしA, BはSO(N)の実回転行列、Dはexp(i diag(φ_1, φ_2,…,φ_N))となるような複素対角行列で、UがSU(N)のときはφ_iの総和は0とします。 A, D, B ∈ U(N) or SU(N)なのは明らかなのでこれらの積もU(N) or SU(N)になります。 自由度を数えるとA, BについてはN(N-1)/2、DについてはN or N-1で、合わせてN^2 or N^2 -1で、数合わせの上ではこれでよいように見えます。肝心の質問ですが ・このような分解は常に可能か、可能ならABの符号を除いて一意か? ・このような分解をするには、実際にどんな計算をすればよいのか? です。 使用する計算機(予定も含む):「京」、その他B/Fの低い計算機全般。 |
解決法、参考情報 | 詳しくはこちらをご覧ください(PDF) |
コメントや質問がありましたら、 jicfus-support-at-ccs.tsukuba.ac.jp (-at-を@にして下さい)までお送りください。
関連リンク