Quandaryは、オープンおよびクローズド最適な量子制御のための最適化ソルバーを実装します。基礎となる量子ダイナミクスモデルは、状態ベクトル(閉じた)のSchroedingerの方程式のいずれか、または密度マトリックスのLindblad Master方程式(開く)を使用して、オープンまたはクローズド量子システムをモデル化します。制御問題は、ターゲット単位ソリューション演算子や事前定義されたターゲット状態など、システムを希望するターゲットに駆動する制御パルスを見つけることを目的としています。高性能コンピューティングプラットフォーム上での困難なターゲットの展開は、メッセージの通過パラダイムを使用して並列化のためのさまざまなレベルを提供します。
doc/のユーザーガイドを調べて、基礎となる数学モデル、それらの実装、およびQuandaryの使用について説明することをお勧めします。
質問については、Stefanie Guenther [[email protected]]にお気軽にご連絡ください。
このプロジェクトは、PETSC [https://petsc.org/release/]に依存して(平行)線形代数を処理します。オプションでSLEPSC [https://slepc.upv.es]を使用して、必要に応じて固有値の問題を解決できます(ヘシアンなど...)
必須: PETSCのインストール:
最新のインストールガイドについては、[https://petsc.org/release/]をご覧ください。 MacOSでは、 brew install petscもできます。クイックスタートとして、以下を試すこともできます。
tar -xf petsc-<version>.tar.gzcd petsc-<version>./configureでpetscを構成します。オプションの引数については、[https://petsc.org/release/install/install_tutorial]を確認してください。たとえば、 ./configure --prefix=/YOUR/INSTALL/DIR --with-debugging=0 --with-fc=0 --with-cxx=mpicxx --with-cc=mpicc COPTFLAGS='-O3' CXXOPTFLAGS='-O3'./configureの出力は、 PETSC_DIRとPETSC_ARCH変数を設定する方法に関するレポートexport PETSC_DIR=/YOUR/INSTALL/DIRexport PETSC_ARCH=/YOUR/ARCH/PREFIXLD_LIBRARY_PATHにpetscディレクトリを追加します:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PETSC_DIR/$PETSC_ARCH/libオプション: SLEPSCをインストールします
PETCはすでにLLNL LCマシンにインストールされています。[https://hpc.llnl.gov/software/mathematical-software/petsc]を参照してください。 '/usr/tce/packages/petsc/'にあります。それを使用するには、 'PETSC_DIR'変数をエクスポートしてPETSCフォルダーを指し、「LIB」サブフォルダーを「LD_LIBRARY_PATH」変数に追加します。
export PETSC_DIR=/usr/tce/packages/petsc/<version> (バージョン番号のフォルダー名を確認してください)export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PETSC_DIR/libこの場合、「petsc_arch」変数は必要ありません。
セットアップによっては、OpenMPIなどの追加のモジュールをロードする必要がある場合があります。
module load openmpi「MakeFile」の始まりを適応させて、PETSC(およびおそらくSLEPSC、Python Path、およびFitPackpp)のインストールにパスを設定します。それから、
make cleanup 。 (クリーンアップのUPに注意してください。)make quandaryてコードを作成します(または複数のスレッドを使用してより速くビルドするために「-j quandaryを作成」)あなたのPATHに困惑を追加することをお勧めします。
export PATH=$PATH:/path/to/quandary/オプション: Python環境内から困惑を実行するには、numpyとmatplotlibがインストールされた動作中のPythonインタープリターを使用する必要があります。次に、Quandaryの場所をPYTHONPATHに追加します。
export PYTHONPATH=$PYTHONPATH:/path/to/quandary/ 、例を調べます。 コードは、実行可能なquandaryに基づいて構築されます。テストケースの構成ファイルの名前である1つの引数が必要です。ファイルconfig_template.cfgには、すべての可能な構成オプションがリストされています。構成ファイルには、ユーザーがテストケースをセットアップし、オプションをユーザーガイドの説明に一致させるのに役立つコメントが記載されています。また、例フォルダーを比較します。
./quandary config_template.cfgmpirun -np 4 ./quandary config_template.cfg --quietQuandaryは、重い開発中のオープンソースプロジェクトです。あらゆる形式の貢献は大歓迎であり、新機能からバグフィックス、ドキュメント、さらには議論まで何でもすることができます。貢献は簡単で、ブランチで作業し、行くのが良いときにマスターするプルリクエストを作成し、「テスト/」パスで回帰テストを行います。
Quandaryは、MITライセンスの条件の下で配布されます。このライセンスの下で、すべての新しい貢献を行う必要があります。詳細については、ライセンスを参照してください。
SPDX-License-Identifier:MIT