system モジュール
qubex.system は、設定読み込みと、1 つの具体的な装置構成を表す
ソフトウェア側モデルを担当するモジュールです。あわせて、
インメモリの ExperimentSystem とバックエンドコントローラの状態同期も扱います。
このページは 低レベル API セクションの一部です。
system を使うべき場面
- 設定ファイルを直接読み込み、その結果できるモデルを確認したい
ExperimentSystem、QuantumSystem、ControlSystem、target、control parameter を直接扱いたい- ソフトウェア状態とハードウェア / コントローラ状態を比較・同期したい
主要なオブジェクト
ConfigLoader: 選択した 1 つの system を読み込み、ExperimentSystemを構築しますExperimentSystem、QuantumSystem、ControlSystem: chip、wiring、port、channel、parameter を表すソフトウェア側モデルですSystemManager: 現在の experiment-system state、backend controller、backend settings を保持する singleton ですQuel1SystemSynchronizerとQuel3SystemSynchronizer:SystemManagerが使う backend 固有の synchronizer です
他のモジュールとの関係
measurement: 読み込まれた system state を使ってMeasurementScheduleや実行フローを組み立てますbackend:SystemManagerが同期対象にする コントローラ状態と実行先ランタイムを提供します
推奨する進み方
- システム設定 で設定ファイルを用意する
- 低レベル API 概要 で全体像を確認する
systemサンプルワークフロー から notebook を始めるMeasurementScheduleやmeasurementの実行フローを扱いたいならmeasurementに進む- controller 実装が主題なら
backendに進む
次のような場合は Experiment を選ぶ
- system model を直接扱わずに推奨ワークフローを使いたい
- 設定読み込みや同期処理の詳細を確認する必要がない
- セットアップ、実行、解析まで 1 つの facade で扱いたい