Quantum Device Result¶
このセクションでは量子コンピュータ(シミュレーター)による計算結果を出力します。
Quantum Device
VQE Log
Evaluated Properties
以下各項目について説明します。
Quantum Device¶
入力で指定したQuantumDeviceの情報を出力します。
出力例¶
"quantum_device": {
"type": "SAMPLING_SIMULATOR"
}
VQE Log¶
VQEのログは以下の項目として出力されます。
opt_params
: 最適化されたVQEのパラメーター (注3)cost_hist
: 各状態のコスト関数の履歴history
: VQEの各サイクルにおけるコスト関数の履歴state
: 電子状態(VQDの場合のみ出力されます)
nfev
: コスト関数の評価回数nit
: VQEのサイクル回数elapsed_time
: VQEの計算時間(秒)energy_hist
: (注1, 4)history
: VQEの各サイクルにおけるエネルギー履歴(a.u.)state
: 電子状態
success
: 最適化の収束情報message
: 最適化ルーチンが返すメッセージ。内容は最適化手法により様々です。optimized_orbital
: OOVQEで最適化された軌道quantum_resources
: 量子計算実行に必要な計算資源に関する情報circuit
: 量子回路(Ansatz部)の情報num_qubit
: Qubit数num_parameter
: パラメータの数num_gate
: ゲートの総数num_1qubit_gate
: 1qubitゲートの数num_2qubit_gate
: 2qubitゲートの数
sampling
: サンプリングに関する情報 (注2)num_observable_groups
: コスト関数の同時測定グループの数 (同時測定グループについては 1.8.2. を参照)total_shots
: 総ショット数
estimated_execution_time
: 推定される実行時間 (注2)superconductor
: 超伝導方式量子コンピューターを用いた場合の推定実行時間(秒)trapped_ion
: イオントラップ方式量子コンピューターを用いた場合の推定実行時間(秒)
(注1)
ansatz
のtypeが FERMIONIC_ADAPTIVE の場合は出力されません。(注2)
quantum_device
のtypeに SAMPLING_SIMULATOR を指定した場合にのみ出力されます。(注3)
orbital_optimization
の type が NONE 以外の場合は出力されません。(注4)
solver
の type が MCVQE かつorbital_optimization
の type が NONE 以外の場合は出力されません。
出力例¶
"vqe_log": {
"opt_params": [
-0.9416036864094274,
1.5079628003756818,
...
],
"cost_hist": [
{
"history": [
-2.288522129847763,
-2.5728929940924505,
...
]
}
],
"nfev": 280,
"nit": 15,
"elapsed_time": 0.2707430289999999,
"energy_hist": [
{
"history": [
-0.9417947301166705,
-1.0902403282499935,
...
],
"state": 0
},
{
"state": 1,
"history": [
-0.4049326696144223,
-0.3924123375924636,
...
]
}
],
"success": true,
"message": "",
"quantum_resources": {
"circuit": {
"num_qubit": 4,
"num_parameter": 1,
"num_gate": 112,
"num_1qubit_gate": 16,
"num_2qubit_gate": 96
},
"sampling": {
"num_observable_groups": 5,
"total_shots": 220000
},
"estimated_execution_time": {
"superconductor": 121.31250955205853,
"trapped_ion": 104866.66666666666
}
},
"optimized_orbital": [
{
"mo_energy": [
-0.5954972513211284,
0.7144441932583552
],
"mo_coeff": [
[
0.5445586947820809,
1.2620659398031695
],
[
0.5445586947820809,
-1.2620659398031695
]
],
"molecular_orbital_data":{
"data": "[Molden Format]..."
"format": "MOLDEN",
}
state: 0
},
...
]
}
Evaluated Properties¶
以下の物理量をリストとして出力します。
energy: 電子状態のエネルギー(a.u.)
num_electrons: 全電子数
multiplicity: スピン多重度
sz_number: 全スピンの z-軸成分
dipole_moment: 永久双極子モーメント(a.u.)
transition_dipole_moment: 遷移双極子モーメント(a.u.)
oscillator_strength: 振動子強度(a.u.)
gradient: 原子核座標による一次微分(a.u.)
hessian: 原子核座標による二次微分(a.u.)
vibrational_analysis: 振動解析の各固有振動数(1/cm)と振動モード
band_structure: 周期系のk点と、対応する価電子帯・伝導帯のエネルギー(a.u.)
各物理量の出力はそれぞれ以下の構造を取っています(※band_structureを除く)。
values
state
またはstate_pair
: 出力している電子状態またはそのペアvalue
: 算出された物理量。sample_std
: 算出された標本標準偏差 (energy、dipole_moment のみ。solverのtype
が MCVQE の場合には出力されません。)。
metadata
elapsed_time
: 物理量の評価にかかった時間
band_structureの出力は以下の構造を取っています。
values
kpt
: k点の座標band
: 出力しているバンド(“conduction band” または “valence band”)value
: エネルギー
metadata
elapsed_time
: 物理量の評価にかかった時間
algorithm
: バンド計算に用いたアルゴリズム(QSEまたはQEOM)
観測量をパウリ演算子 \(P_i\) とその係数 \(c_i\) の総和
で表すとき、標本標準偏差 \(\sigma\) は以下のように算出されます。 パウリ演算子の標本分散を \(Var(P_i)\)、ショット数を \(n\) の時、
ただし、これはパウリ演算子のグルーピングを行わない (NO_GROUPING が選択された) 場合の算出方法です。グルーピングが行われる場合は、同グループ内のパウリ演算子の期待値の共分散も含めて計算しています。
Dipole Moment¶
dipole_moment
のvalue
では永久双極子モーメントの\(x, y, z\)方向の値をリストとして出力します。
Transition Dipole Moment¶
transition_dipole_moment
のvalue
では遷移双極子モーメントの\(x, y, z\)方向の値を実部、虚部に分けてリストとして出力します。
量子コンピューターによる計算では遷移双極子モーメントの要素に虚部が出現する可能性があります。
VQDでは絶対値のみを返します。
Oscillator Strength¶
oscillator_strength
のvalue
では振動子強度の値を出力します。
Gradient¶
gradient
のvalue
では入力した原子核座標
に対して、エネルギー\(E\)の一階微分値を下記のリストとして出力します。
Hessian¶
heissian
のvalue
では入力した原子核座標
に対して、エネルギーの二階微分値を下記の行列に対応する二重リストとして出力します。
Vibrational Analysis¶
vibrational_analysis
の value
では振動モードの各固有振動数
frequency
(1/cm)と、それに対応する振動モード normal_mode
を出力します。振動モードのベクトル成分は
に対応しています。
出力例¶
"evaluated_properties": [
{
"energy": {
"values": [
{"state": 0, "value": -1.1362360604901143},
{"state": 1, "value": -0.47828919430555683}
],
"metadata": {
"elapsed_time": 0.000997585000000134
}
},
},
{
"num_electrons": {
"values": [
{"state": 0, "value": 2.0},
{"state": 1, "value": 2.0},
],
"metadata": {
"elapsed_time": 0.000009585000000134
}
},
},
{
"multiplicity": {
"values": [
{"state": 0, "value": 1.0},
{"state": 1, "value": 3.0},
],
"metadata": {
"elapsed_time": 0.000007585000000134
}
},
},
{
"sz_number": {"values": [
{"state": 0, "value": 0.0},
{"state": 1, "value": 0.0},
],
"metadata": {
"elapsed_time": 0.000005578000000134
}
},
},
{
"dipole_moment": {
"values": [{"state": 0, "value": [0.0, 0.0, -1.1143463019003264e-07]}],
"metadata": {
"elapsed_time": 0.0004000680000000312
}
}
},
{
"transition_dipole_moment": {
"values": [
{
"state_pair": [0, 1],
"value": [
{"real": 0.0, "imag": 0.0},
{"real": 0.0, "imag": 0.0},
{"real": 1.683007710279183e-07, "imag": 0.0}
]
}
],
"metadata": {
"elapsed_time": 0.0022338280000000488
}
}
},
{
"gradient": {
"values": [
{
"state": 0,
"value": [0.0, 0.0, 0.03522682150310957, 0.0, 0.0, -0.035226821562505006],
"type": "HAMILTONIAN_NUMERICAL"
}
],
"metadata": {
"elapsed_time": 0.673054386
}
}
},
{
"hessian": {
"values": [
{
"value": [
[-0.02609510201324114, 0.0, 0.0, 0.02671120741221516, 0.0, 0.0],
[0.0, -0.02609510201324114, 0.0, 0.0, 0.026711207412215148, 0.0],
[0.0, 0.0, 0.5951536730703917, 0.0, 0.0, -0.5952415631144654],
[0.02671120741221516, 0.0, 0.0, -0.02609510201324114, 0.0, 0.0],
[0.0, 0.026711207412215148, 0.0, 0.0, -0.02609510201324114,0.0],
[0.0, 0.0, -0.5952415631470315, 0.0, 0.0, 0.5950908117050806]
],
"state": 0
}
],
"metadata": {
"elapsed_time": 5.235920265000001
}
}
},
{
"vibrational_analysis": {
"values": {
"state": 0,
"value": [
{
"frequency": {
"imag": 8.323188334444037,
"real": 0.0
},
"normal_mode": [
0.37024605639968616,
-0.5991240303578433,
0.0,
0.37024605639968616,
-0.5991240303578433,
0.0,
]
},{
...
},
],
"metadata": {
"elapsed_time": 4.942824509999998
}
},
...
},
}