Befriedigung implementiert einen Optimierungslöser für eine offene und geschlossene optimale Quantenkontrolle. Das zugrunde liegende Quantendynamikmodell öffnete oder geschlossene Quantensysteme, wobei entweder Schroedinger -Gleichung für einen Zustandsvektor (geschlossen) oder Lindblad -Master -Gleichung für eine Dichtematrix (geöffnet) verwendet werden. Das Steuerungsproblem zielt darauf ab, Kontrollimpulse zu finden, die das System zu einem gewünschten Ziel führen, z. Die Befriedigung zielt auf die Bereitstellung von Hochleistungs-Computing-Plattformen, die verschiedene Ebenen für die Parallelisierung mithilfe des Nachrichtenübergabe-Paradigmas anbieten.
Es wird empfohlen, die Benutzerhandbuch in doc/ zu betrachten, in der die zugrunde liegenden mathematischen Modelle, deren Implementierung und Verwendung in Dilemen beschrieben werden.
Wenden Sie sich gerne an Stefanie Guenther [[email protected]], um eine Frage zu erhalten, die Sie möglicherweise haben.
Dieses Projekt basiert auf PETSC [https://petsc.org/release/], um (parallel) lineare Algebra zu handhaben. Optional kann Slepsc [https://slepc.upv.es] verwendet werden, um einige Eigenwerte Probleme zu lösen, falls gewünscht (z. B. für die Hessische ...)
Erforderlich: PETSC installieren:
Schauen Sie sich die neueste Installationshandbuch an [https://petsc.org/release/]. Auf macOS können Sie auch brew install petsc . Als kurzer Start können Sie auch unten versuchen:
tar -xf petsc-<version>.tar.gzcd petsc-<version>./configure . Bitte überprüfen Sie [https://petsc.org/release/install/install_tutorial] nach optionalen Argumenten. Zum Beispiel ./configure --prefix=/YOUR/INSTALL/DIR --with-debugging=0 --with-fc=0 --with-cxx=mpicxx --with-cc=mpicc COPTFLAGS='-O3' CXXOPTFLAGS='-O3'./configure berichtet, wie die Variablen PETSC_DIR und PETSC_ARCH festgelegt werden könnenexport PETSC_DIR=/YOUR/INSTALL/DIRexport PETSC_ARCH=/YOUR/ARCH/PREFIXLD_LIBRARY_PATH an:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PETSC_DIR/$PETSC_ARCH/libOptional: SLEPSC installieren
PETC ist bereits auf LLNL LC-Maschinen installiert, siehe hier [https://hpc.llnl.gov/software/mathematical-software/petsc]. Es befindet sich in '/usr/tce/pakete/PETSC/'. Um es zu verwenden, exportieren Sie die Variable "PETSC_DIR", um auf den PETSC -Ordner zu verweisen, und fügen Sie den Unterordner "lib" zur Variablen "ld_library_path" hinzu:
export PETSC_DIR=/usr/tce/packages/petsc/<version> (Überprüfen Sie den Ordnernamen für die Versionsnummer)export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PETSC_DIR/libDie Variable "PETSC_Arch" wird in diesem Fall nicht benötigt.
Abhängig von Ihrem Setup müssen Sie möglicherweise einige zusätzliche Module laden, wie z. B. OpenMPI, z. B. SO:
module load openmpiPassen Sie den Beginn des 'Makefile' an, um den Pfad an Ihre PETSC -Installation (und möglicherweise SLEPSC, Python Path und Fitpackpp) zu setzen, falls dies nicht exportiert ist. Dann,
make cleanup , um das Bauverzeichnis zu reinigen. ( Beachten Sie die Aufräumarbeiten .)make quandary zum Erstellen des Codes (oder "Machen Sie -j Begleiter" für schnellere Build mit mehreren Threads). Es wird empfohlen, Ihren PATH , z. B.
export PATH=$PATH:/path/to/quandary/ Optional: Um Dilemen aus einer Python -Umgebung auszuführen, sollten Sie über einen funktionierenden Python -Interpreter mit Numpy und Matplotlib installiert sein. Dann an Ihren PYTHONPATH anhängen, z.
export PYTHONPATH=$PYTHONPATH:/path/to/quandary/ und schauen Sie sich die Beispiele an. Der Code wird in den ausführbaren quandary aufgebaut. Ein Argument ist der Name der Konfigurationsdatei des Testfalls. In der Datei config_template.cfg werden alle möglichen Konfigurationsoptionen aufgeführt. Die Konfigurationsdatei ist mit Kommentaren gefüllt, die den Benutzern helfen sollen, ihren Testfall einzurichten und die Optionen mit der Beschreibung in der Benutzerhandbuch anzupassen. Vergleichen Sie auch den Beispiel -Ordner.
./quandary config_template.cfgmpirun -np 4 ./quandary config_template.cfg --quietDilde ist ein Open -Source -Projekt, das sich stark entwickelt. Beiträge in allen Formularen sind sehr willkommen und können alles von neuen Funktionen bis hin zu Fehler, Dokumentation oder sogar Diskussionen sein. Der Beitrag ist einfach, arbeiten Sie an Ihrer Niederlassung, erstellen Sie eine Pull -Anfrage an Master, wenn Sie gut gehen können, und die Regressionstests in "Tests/" -Passe.
Das Bedenken wird nach den Bedingungen der MIT -Lizenz verteilt. Alle neuen Beiträge müssen im Rahmen dieser Lizenz geleistet werden. Weitere Informationen finden Sie unter Lizenz und Hinweis.
SPDX-Lizenz-Identifikator: MIT