diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle
index 799fa3603..4711208d7 100644
Binary files a/.doctrees/environment.pickle and b/.doctrees/environment.pickle differ
diff --git a/.doctrees/explanations/hamiltonians.doctree b/.doctrees/explanations/hamiltonians.doctree
index f776d2c09..b74ba81dd 100644
Binary files a/.doctrees/explanations/hamiltonians.doctree and b/.doctrees/explanations/hamiltonians.doctree differ
diff --git a/.doctrees/how-to-guides/entanglement-forging.doctree b/.doctrees/how-to-guides/entanglement-forging.doctree
index e08f41115..3ae2e408f 100644
Binary files a/.doctrees/how-to-guides/entanglement-forging.doctree and b/.doctrees/how-to-guides/entanglement-forging.doctree differ
diff --git a/.doctrees/how-to-guides/fermion-operator.doctree b/.doctrees/how-to-guides/fermion-operator.doctree
index 51449f975..982f6bdaa 100644
Binary files a/.doctrees/how-to-guides/fermion-operator.doctree and b/.doctrees/how-to-guides/fermion-operator.doctree differ
diff --git a/.doctrees/how-to-guides/lucj.doctree b/.doctrees/how-to-guides/lucj.doctree
index ab559d888..d3cd8963d 100644
Binary files a/.doctrees/how-to-guides/lucj.doctree and b/.doctrees/how-to-guides/lucj.doctree differ
diff --git a/.doctrees/index.doctree b/.doctrees/index.doctree
index 6a5d4c92c..2e2ee699d 100644
Binary files a/.doctrees/index.doctree and b/.doctrees/index.doctree differ
diff --git a/.doctrees/nbsphinx/explanations/hamiltonians.ipynb b/.doctrees/nbsphinx/explanations/hamiltonians.ipynb
index b54538295..d33079c25 100644
--- a/.doctrees/nbsphinx/explanations/hamiltonians.ipynb
+++ b/.doctrees/nbsphinx/explanations/hamiltonians.ipynb
@@ -33,10 +33,10 @@
"execution_count": 1,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:33.963543Z",
- "iopub.status.busy": "2024-04-24T07:11:33.963092Z",
- "iopub.status.idle": "2024-04-24T07:11:34.576995Z",
- "shell.execute_reply": "2024-04-24T07:11:34.576483Z"
+ "iopub.execute_input": "2024-04-24T07:19:15.439043Z",
+ "iopub.status.busy": "2024-04-24T07:19:15.438845Z",
+ "iopub.status.idle": "2024-04-24T07:19:16.076125Z",
+ "shell.execute_reply": "2024-04-24T07:19:16.075453Z"
}
},
"outputs": [],
@@ -68,10 +68,10 @@
"execution_count": 2,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:34.579833Z",
- "iopub.status.busy": "2024-04-24T07:11:34.579366Z",
- "iopub.status.idle": "2024-04-24T07:11:34.582338Z",
- "shell.execute_reply": "2024-04-24T07:11:34.581878Z"
+ "iopub.execute_input": "2024-04-24T07:19:16.079192Z",
+ "iopub.status.busy": "2024-04-24T07:19:16.078687Z",
+ "iopub.status.idle": "2024-04-24T07:19:16.081889Z",
+ "shell.execute_reply": "2024-04-24T07:19:16.081394Z"
}
},
"outputs": [],
@@ -99,10 +99,10 @@
"execution_count": 3,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:34.584820Z",
- "iopub.status.busy": "2024-04-24T07:11:34.584391Z",
- "iopub.status.idle": "2024-04-24T07:11:34.587820Z",
- "shell.execute_reply": "2024-04-24T07:11:34.587248Z"
+ "iopub.execute_input": "2024-04-24T07:19:16.083974Z",
+ "iopub.status.busy": "2024-04-24T07:19:16.083796Z",
+ "iopub.status.idle": "2024-04-24T07:19:16.087046Z",
+ "shell.execute_reply": "2024-04-24T07:19:16.086583Z"
}
},
"outputs": [],
@@ -127,10 +127,10 @@
"execution_count": 4,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:34.590114Z",
- "iopub.status.busy": "2024-04-24T07:11:34.589754Z",
- "iopub.status.idle": "2024-04-24T07:11:34.594821Z",
- "shell.execute_reply": "2024-04-24T07:11:34.594265Z"
+ "iopub.execute_input": "2024-04-24T07:19:16.089338Z",
+ "iopub.status.busy": "2024-04-24T07:19:16.088995Z",
+ "iopub.status.idle": "2024-04-24T07:19:16.093883Z",
+ "shell.execute_reply": "2024-04-24T07:19:16.093353Z"
}
},
"outputs": [],
@@ -152,17 +152,17 @@
"execution_count": 5,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:34.598448Z",
- "iopub.status.busy": "2024-04-24T07:11:34.597309Z",
- "iopub.status.idle": "2024-04-24T07:11:34.629873Z",
- "shell.execute_reply": "2024-04-24T07:11:34.629242Z"
+ "iopub.execute_input": "2024-04-24T07:19:16.096778Z",
+ "iopub.status.busy": "2024-04-24T07:19:16.096390Z",
+ "iopub.status.idle": "2024-04-24T07:19:16.125386Z",
+ "shell.execute_reply": "2024-04-24T07:19:16.124813Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
- "-99.5571707255155"
+ "-99.55717072551582"
]
},
"execution_count": 5,
@@ -191,10 +191,10 @@
"execution_count": 6,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:34.662981Z",
- "iopub.status.busy": "2024-04-24T07:11:34.662594Z",
- "iopub.status.idle": "2024-04-24T07:11:35.401883Z",
- "shell.execute_reply": "2024-04-24T07:11:35.401266Z"
+ "iopub.execute_input": "2024-04-24T07:19:16.162189Z",
+ "iopub.status.busy": "2024-04-24T07:19:16.161674Z",
+ "iopub.status.idle": "2024-04-24T07:19:16.990421Z",
+ "shell.execute_reply": "2024-04-24T07:19:16.989759Z"
}
},
"outputs": [
@@ -202,7 +202,7 @@
"name": "stderr",
"output_type": "stream",
"text": [
- "/tmp/ipykernel_4332/2190712273.py:2: UserWarning: Trace of LinearOperator not available, it will be estimated. Provide `traceA` to ensure performance.\n",
+ "/tmp/ipykernel_4308/2190712273.py:2: UserWarning: Trace of LinearOperator not available, it will be estimated. Provide `traceA` to ensure performance.\n",
" evolved_vec = scipy.sparse.linalg.expm_multiply(-1j * time * linop, vec)\n"
]
}
@@ -224,10 +224,10 @@
"execution_count": 7,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:35.406308Z",
- "iopub.status.busy": "2024-04-24T07:11:35.405161Z",
- "iopub.status.idle": "2024-04-24T07:11:36.293083Z",
- "shell.execute_reply": "2024-04-24T07:11:36.292484Z"
+ "iopub.execute_input": "2024-04-24T07:19:16.994189Z",
+ "iopub.status.busy": "2024-04-24T07:19:16.993420Z",
+ "iopub.status.idle": "2024-04-24T07:19:17.877160Z",
+ "shell.execute_reply": "2024-04-24T07:19:17.876504Z"
}
},
"outputs": [],
diff --git a/.doctrees/nbsphinx/explanations/orbital-rotation.ipynb b/.doctrees/nbsphinx/explanations/orbital-rotation.ipynb
index aa96276e9..cc1b71d4c 100644
--- a/.doctrees/nbsphinx/explanations/orbital-rotation.ipynb
+++ b/.doctrees/nbsphinx/explanations/orbital-rotation.ipynb
@@ -62,10 +62,10 @@
"execution_count": 1,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:38.021734Z",
- "iopub.status.busy": "2024-04-24T07:11:38.021535Z",
- "iopub.status.idle": "2024-04-24T07:11:38.638847Z",
- "shell.execute_reply": "2024-04-24T07:11:38.638242Z"
+ "iopub.execute_input": "2024-04-24T07:19:19.612998Z",
+ "iopub.status.busy": "2024-04-24T07:19:19.612793Z",
+ "iopub.status.idle": "2024-04-24T07:19:20.260363Z",
+ "shell.execute_reply": "2024-04-24T07:19:20.259523Z"
}
},
"outputs": [],
diff --git a/.doctrees/nbsphinx/explanations/state-vectors-and-gates.ipynb b/.doctrees/nbsphinx/explanations/state-vectors-and-gates.ipynb
index 525a3b2fd..4b6ada2e4 100644
--- a/.doctrees/nbsphinx/explanations/state-vectors-and-gates.ipynb
+++ b/.doctrees/nbsphinx/explanations/state-vectors-and-gates.ipynb
@@ -26,10 +26,10 @@
"execution_count": 1,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:40.151148Z",
- "iopub.status.busy": "2024-04-24T07:11:40.150954Z",
- "iopub.status.idle": "2024-04-24T07:11:40.761322Z",
- "shell.execute_reply": "2024-04-24T07:11:40.760688Z"
+ "iopub.execute_input": "2024-04-24T07:19:21.736871Z",
+ "iopub.status.busy": "2024-04-24T07:19:21.736662Z",
+ "iopub.status.idle": "2024-04-24T07:19:22.375746Z",
+ "shell.execute_reply": "2024-04-24T07:19:22.375110Z"
}
},
"outputs": [
@@ -74,10 +74,10 @@
"execution_count": 2,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:40.764095Z",
- "iopub.status.busy": "2024-04-24T07:11:40.763511Z",
- "iopub.status.idle": "2024-04-24T07:11:40.770429Z",
- "shell.execute_reply": "2024-04-24T07:11:40.769866Z"
+ "iopub.execute_input": "2024-04-24T07:19:22.378630Z",
+ "iopub.status.busy": "2024-04-24T07:19:22.378169Z",
+ "iopub.status.idle": "2024-04-24T07:19:22.385331Z",
+ "shell.execute_reply": "2024-04-24T07:19:22.384824Z"
}
},
"outputs": [
@@ -118,10 +118,10 @@
"execution_count": 3,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:40.772636Z",
- "iopub.status.busy": "2024-04-24T07:11:40.772317Z",
- "iopub.status.idle": "2024-04-24T07:11:40.776546Z",
- "shell.execute_reply": "2024-04-24T07:11:40.775984Z"
+ "iopub.execute_input": "2024-04-24T07:19:22.387685Z",
+ "iopub.status.busy": "2024-04-24T07:19:22.387344Z",
+ "iopub.status.idle": "2024-04-24T07:19:22.391896Z",
+ "shell.execute_reply": "2024-04-24T07:19:22.391378Z"
}
},
"outputs": [
@@ -155,10 +155,10 @@
"execution_count": 4,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:40.778903Z",
- "iopub.status.busy": "2024-04-24T07:11:40.778521Z",
- "iopub.status.idle": "2024-04-24T07:11:40.782526Z",
- "shell.execute_reply": "2024-04-24T07:11:40.782049Z"
+ "iopub.execute_input": "2024-04-24T07:19:22.394313Z",
+ "iopub.status.busy": "2024-04-24T07:19:22.393866Z",
+ "iopub.status.idle": "2024-04-24T07:19:22.398152Z",
+ "shell.execute_reply": "2024-04-24T07:19:22.397672Z"
}
},
"outputs": [
@@ -197,10 +197,10 @@
"execution_count": 5,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:40.784698Z",
- "iopub.status.busy": "2024-04-24T07:11:40.784373Z",
- "iopub.status.idle": "2024-04-24T07:11:40.790752Z",
- "shell.execute_reply": "2024-04-24T07:11:40.790182Z"
+ "iopub.execute_input": "2024-04-24T07:19:22.400483Z",
+ "iopub.status.busy": "2024-04-24T07:19:22.400094Z",
+ "iopub.status.idle": "2024-04-24T07:19:22.406184Z",
+ "shell.execute_reply": "2024-04-24T07:19:22.405604Z"
}
},
"outputs": [
@@ -243,10 +243,10 @@
"execution_count": 6,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:40.793072Z",
- "iopub.status.busy": "2024-04-24T07:11:40.792741Z",
- "iopub.status.idle": "2024-04-24T07:11:40.798031Z",
- "shell.execute_reply": "2024-04-24T07:11:40.797467Z"
+ "iopub.execute_input": "2024-04-24T07:19:22.408494Z",
+ "iopub.status.busy": "2024-04-24T07:19:22.408125Z",
+ "iopub.status.idle": "2024-04-24T07:19:22.413467Z",
+ "shell.execute_reply": "2024-04-24T07:19:22.412907Z"
}
},
"outputs": [
diff --git a/.doctrees/nbsphinx/how-to-guides/entanglement-forging.ipynb b/.doctrees/nbsphinx/how-to-guides/entanglement-forging.ipynb
index 2dfabc9f3..34dbb9b3c 100644
--- a/.doctrees/nbsphinx/how-to-guides/entanglement-forging.ipynb
+++ b/.doctrees/nbsphinx/how-to-guides/entanglement-forging.ipynb
@@ -14,10 +14,10 @@
"execution_count": 1,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:42.297014Z",
- "iopub.status.busy": "2024-04-24T07:11:42.296475Z",
- "iopub.status.idle": "2024-04-24T07:11:43.109328Z",
- "shell.execute_reply": "2024-04-24T07:11:43.108642Z"
+ "iopub.execute_input": "2024-04-24T07:19:24.216947Z",
+ "iopub.status.busy": "2024-04-24T07:19:24.216493Z",
+ "iopub.status.idle": "2024-04-24T07:19:25.052352Z",
+ "shell.execute_reply": "2024-04-24T07:19:25.051696Z"
}
},
"outputs": [
@@ -80,10 +80,10 @@
"execution_count": 2,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:43.113066Z",
- "iopub.status.busy": "2024-04-24T07:11:43.112712Z",
- "iopub.status.idle": "2024-04-24T07:11:43.191084Z",
- "shell.execute_reply": "2024-04-24T07:11:43.190598Z"
+ "iopub.execute_input": "2024-04-24T07:19:25.056546Z",
+ "iopub.status.busy": "2024-04-24T07:19:25.055546Z",
+ "iopub.status.idle": "2024-04-24T07:19:25.135059Z",
+ "shell.execute_reply": "2024-04-24T07:19:25.134453Z"
}
},
"outputs": [
@@ -91,7 +91,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Energy at initialialization: -74.20656273321637\n"
+ "Energy at initialialization: -74.20656273321634\n"
]
}
],
@@ -129,10 +129,10 @@
"execution_count": 3,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:43.193108Z",
- "iopub.status.busy": "2024-04-24T07:11:43.192920Z",
- "iopub.status.idle": "2024-04-24T07:11:50.993594Z",
- "shell.execute_reply": "2024-04-24T07:11:50.992969Z"
+ "iopub.execute_input": "2024-04-24T07:19:25.137571Z",
+ "iopub.status.busy": "2024-04-24T07:19:25.137178Z",
+ "iopub.status.idle": "2024-04-24T07:19:33.047771Z",
+ "shell.execute_reply": "2024-04-24T07:19:33.047223Z"
}
},
"outputs": [
@@ -144,10 +144,10 @@
" message: STOP: TOTAL NO. of f AND g EVALUATIONS EXCEEDS LIMIT\n",
" success: False\n",
" status: 1\n",
- " fun: -75.68085147140957\n",
+ " fun: -75.68085339233603\n",
" x: [ 2.996e+00 -7.549e-01 ... 2.650e+00 8.012e-01]\n",
" nit: 6\n",
- " jac: [ 1.764e-03 9.121e-03 ... -1.192e-02 9.308e-04]\n",
+ " jac: [ 1.762e-03 9.119e-03 ... -1.192e-02 9.791e-04]\n",
" nfev: 112\n",
" njev: 7\n",
" hess_inv: <15x15 LbfgsInvHessProduct with dtype=float64>\n"
diff --git a/.doctrees/nbsphinx/how-to-guides/fermion-operator.ipynb b/.doctrees/nbsphinx/how-to-guides/fermion-operator.ipynb
index 046b3e7c4..050554851 100644
--- a/.doctrees/nbsphinx/how-to-guides/fermion-operator.ipynb
+++ b/.doctrees/nbsphinx/how-to-guides/fermion-operator.ipynb
@@ -29,10 +29,10 @@
"execution_count": 1,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:52.462303Z",
- "iopub.status.busy": "2024-04-24T07:11:52.462109Z",
- "iopub.status.idle": "2024-04-24T07:11:53.107495Z",
- "shell.execute_reply": "2024-04-24T07:11:53.106886Z"
+ "iopub.execute_input": "2024-04-24T07:19:34.624953Z",
+ "iopub.status.busy": "2024-04-24T07:19:34.624498Z",
+ "iopub.status.idle": "2024-04-24T07:19:35.267114Z",
+ "shell.execute_reply": "2024-04-24T07:19:35.266482Z"
}
},
"outputs": [
@@ -76,10 +76,10 @@
"execution_count": 2,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:53.110465Z",
- "iopub.status.busy": "2024-04-24T07:11:53.109821Z",
- "iopub.status.idle": "2024-04-24T07:11:53.114213Z",
- "shell.execute_reply": "2024-04-24T07:11:53.113652Z"
+ "iopub.execute_input": "2024-04-24T07:19:35.269733Z",
+ "iopub.status.busy": "2024-04-24T07:19:35.269294Z",
+ "iopub.status.idle": "2024-04-24T07:19:35.273559Z",
+ "shell.execute_reply": "2024-04-24T07:19:35.272948Z"
}
},
"outputs": [
@@ -110,10 +110,10 @@
"execution_count": 3,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:53.116351Z",
- "iopub.status.busy": "2024-04-24T07:11:53.116141Z",
- "iopub.status.idle": "2024-04-24T07:11:53.120393Z",
- "shell.execute_reply": "2024-04-24T07:11:53.119833Z"
+ "iopub.execute_input": "2024-04-24T07:19:35.275931Z",
+ "iopub.status.busy": "2024-04-24T07:19:35.275453Z",
+ "iopub.status.idle": "2024-04-24T07:19:35.280028Z",
+ "shell.execute_reply": "2024-04-24T07:19:35.279438Z"
}
},
"outputs": [
@@ -121,17 +121,17 @@
"data": {
"text/plain": [
"FermionOperator({\n",
- " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,\n",
- " (cre_b(1), des_b(5), cre_a(4)): 2+2j,\n",
- " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): -1+1j,\n",
- " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625,\n",
+ " (cre_b(2)): 0-0.25j,\n",
" (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -0.25-0.25j,\n",
- " (cre_a(3), des_a(0), cre_b(2)): 0-0.25j,\n",
+ " (des_a(3), des_b(3)): 0.0625,\n",
+ " (cre_a(3), des_a(0)): -0.5,\n",
+ " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,\n",
" (cre_a(0), des_a(3), cre_b(2)): 0+0.5j,\n",
+ " (cre_a(3), des_a(0), cre_b(2)): 0-0.25j,\n",
" (cre_a(0), des_a(3)): 1,\n",
- " (cre_a(3), des_a(0)): -0.5,\n",
- " (cre_b(2)): 0-0.25j,\n",
- " (des_a(3), des_b(3)): 0.0625\n",
+ " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625,\n",
+ " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): -1+1j,\n",
+ " (cre_b(1), des_b(5), cre_a(4)): 2+2j\n",
"})"
]
},
@@ -170,10 +170,10 @@
"execution_count": 4,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:53.122675Z",
- "iopub.status.busy": "2024-04-24T07:11:53.122330Z",
- "iopub.status.idle": "2024-04-24T07:11:53.126381Z",
- "shell.execute_reply": "2024-04-24T07:11:53.125823Z"
+ "iopub.execute_input": "2024-04-24T07:19:35.282555Z",
+ "iopub.status.busy": "2024-04-24T07:19:35.281968Z",
+ "iopub.status.idle": "2024-04-24T07:19:35.286295Z",
+ "shell.execute_reply": "2024-04-24T07:19:35.285714Z"
}
},
"outputs": [
@@ -181,17 +181,17 @@
"data": {
"text/plain": [
"FermionOperator({\n",
- " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,\n",
- " (cre_b(1), des_b(5), cre_a(4)): 12-12j,\n",
- " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): 4+4j,\n",
- " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j,\n",
+ " (cre_b(2)): -5,\n",
" (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -1+1j,\n",
- " (cre_a(3), des_a(0), cre_b(2)): -1,\n",
+ " (des_a(3), des_b(3)): 0-1.25j,\n",
+ " (cre_a(3), des_a(0)): 0+3j,\n",
+ " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,\n",
" (cre_a(0), des_a(3), cre_b(2)): 2,\n",
+ " (cre_a(3), des_a(0), cre_b(2)): -1,\n",
" (cre_a(0), des_a(3)): 0-6j,\n",
- " (cre_a(3), des_a(0)): 0+3j,\n",
- " (cre_b(2)): -5,\n",
- " (des_a(3), des_b(3)): 0-1.25j\n",
+ " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j,\n",
+ " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): 4+4j,\n",
+ " (cre_b(1), des_b(5), cre_a(4)): 12-12j\n",
"})"
]
},
@@ -220,10 +220,10 @@
"execution_count": 5,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:53.128817Z",
- "iopub.status.busy": "2024-04-24T07:11:53.128324Z",
- "iopub.status.idle": "2024-04-24T07:11:53.132378Z",
- "shell.execute_reply": "2024-04-24T07:11:53.131722Z"
+ "iopub.execute_input": "2024-04-24T07:19:35.288624Z",
+ "iopub.status.busy": "2024-04-24T07:19:35.288294Z",
+ "iopub.status.idle": "2024-04-24T07:19:35.292068Z",
+ "shell.execute_reply": "2024-04-24T07:19:35.291587Z"
}
},
"outputs": [
@@ -231,16 +231,16 @@
"data": {
"text/plain": [
"FermionOperator({\n",
- " (cre_a(3), des_a(0)): 0+3j,\n",
- " (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j,\n",
- " (des_b(3), des_a(3)): 0+1.25j,\n",
- " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n",
- " (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,\n",
- " (cre_b(2), cre_a(0), des_a(3)): 2,\n",
+ " (cre_b(2)): -5,\n",
" (cre_a(0), des_a(3)): 0-6j,\n",
+ " (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,\n",
" (cre_b(2), cre_a(3), des_a(0)): -1,\n",
- " (cre_b(2)): -5,\n",
- " (cre_b(1), cre_a(4), des_b(5)): -12+12j\n",
+ " (cre_b(2), cre_a(0), des_a(3)): 2,\n",
+ " (des_b(3), des_a(3)): 0+1.25j,\n",
+ " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n",
+ " (cre_b(1), cre_a(4), des_b(5)): -12+12j,\n",
+ " (cre_a(3), des_a(0)): 0+3j,\n",
+ " (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j\n",
"})"
]
},
@@ -265,10 +265,10 @@
"execution_count": 6,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:53.134591Z",
- "iopub.status.busy": "2024-04-24T07:11:53.134272Z",
- "iopub.status.idle": "2024-04-24T07:11:53.137692Z",
- "shell.execute_reply": "2024-04-24T07:11:53.137091Z"
+ "iopub.execute_input": "2024-04-24T07:19:35.294389Z",
+ "iopub.status.busy": "2024-04-24T07:19:35.294025Z",
+ "iopub.status.idle": "2024-04-24T07:19:35.297485Z",
+ "shell.execute_reply": "2024-04-24T07:19:35.296989Z"
}
},
"outputs": [
@@ -298,10 +298,10 @@
"execution_count": 7,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:53.139879Z",
- "iopub.status.busy": "2024-04-24T07:11:53.139547Z",
- "iopub.status.idle": "2024-04-24T07:11:53.143896Z",
- "shell.execute_reply": "2024-04-24T07:11:53.143313Z"
+ "iopub.execute_input": "2024-04-24T07:19:35.299708Z",
+ "iopub.status.busy": "2024-04-24T07:19:35.299365Z",
+ "iopub.status.idle": "2024-04-24T07:19:35.303767Z",
+ "shell.execute_reply": "2024-04-24T07:19:35.303260Z"
}
},
"outputs": [
@@ -341,21 +341,21 @@
"execution_count": 8,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:53.146242Z",
- "iopub.status.busy": "2024-04-24T07:11:53.145858Z",
- "iopub.status.idle": "2024-04-24T07:11:53.151856Z",
- "shell.execute_reply": "2024-04-24T07:11:53.151265Z"
+ "iopub.execute_input": "2024-04-24T07:19:35.306255Z",
+ "iopub.status.busy": "2024-04-24T07:19:35.305757Z",
+ "iopub.status.idle": "2024-04-24T07:19:35.312476Z",
+ "shell.execute_reply": "2024-04-24T07:19:35.311953Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
- "array([ 0. +0.j , 0. +0.j ,\n",
- " 0. +0.j , 0. +0.j ,\n",
- " -0.13117779+0.11588432j, 0. +0.j ,\n",
- " 0. +0.j , 0. +0.j ,\n",
- " 0. +0.j ])"
+ "array([0. +0.j , 0. +0.j ,\n",
+ " 0. +0.j , 0. +0.j ,\n",
+ " 0.07453016+0.10200987j, 0. +0.j ,\n",
+ " 0. +0.j , 0. +0.j ,\n",
+ " 0. +0.j ])"
]
},
"execution_count": 8,
@@ -380,10 +380,10 @@
"execution_count": 9,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:53.154037Z",
- "iopub.status.busy": "2024-04-24T07:11:53.153715Z",
- "iopub.status.idle": "2024-04-24T07:11:53.165587Z",
- "shell.execute_reply": "2024-04-24T07:11:53.165124Z"
+ "iopub.execute_input": "2024-04-24T07:19:35.314794Z",
+ "iopub.status.busy": "2024-04-24T07:19:35.314421Z",
+ "iopub.status.idle": "2024-04-24T07:19:35.325670Z",
+ "shell.execute_reply": "2024-04-24T07:19:35.325173Z"
}
},
"outputs": [
diff --git a/.doctrees/nbsphinx/how-to-guides/lucj.ipynb b/.doctrees/nbsphinx/how-to-guides/lucj.ipynb
index 77358271d..b1242aa0e 100644
--- a/.doctrees/nbsphinx/how-to-guides/lucj.ipynb
+++ b/.doctrees/nbsphinx/how-to-guides/lucj.ipynb
@@ -14,10 +14,10 @@
"execution_count": 1,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:55.206629Z",
- "iopub.status.busy": "2024-04-24T07:11:55.206433Z",
- "iopub.status.idle": "2024-04-24T07:11:56.144871Z",
- "shell.execute_reply": "2024-04-24T07:11:56.144248Z"
+ "iopub.execute_input": "2024-04-24T07:19:37.407068Z",
+ "iopub.status.busy": "2024-04-24T07:19:37.406580Z",
+ "iopub.status.idle": "2024-04-24T07:19:38.359240Z",
+ "shell.execute_reply": "2024-04-24T07:19:38.358613Z"
}
},
"outputs": [
@@ -25,14 +25,14 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "converged SCF energy = -77.4456267643962\n"
+ "converged SCF energy = -77.4456267643963\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
- "CASCI E = -77.6290254326717 E(CI) = -3.57322412553863 S^2 = 0.0000000\n"
+ "CASCI E = -77.6290254326717 E(CI) = -3.57322412553862 S^2 = 0.0000000\n"
]
}
],
@@ -107,10 +107,10 @@
"execution_count": 2,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:56.148524Z",
- "iopub.status.busy": "2024-04-24T07:11:56.147997Z",
- "iopub.status.idle": "2024-04-24T07:11:56.349816Z",
- "shell.execute_reply": "2024-04-24T07:11:56.349224Z"
+ "iopub.execute_input": "2024-04-24T07:19:38.363086Z",
+ "iopub.status.busy": "2024-04-24T07:19:38.362432Z",
+ "iopub.status.idle": "2024-04-24T07:19:38.591672Z",
+ "shell.execute_reply": "2024-04-24T07:19:38.590981Z"
}
},
"outputs": [
@@ -118,14 +118,14 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "E(CCSD) = -77.49387212754468 E_corr = -0.04824536314851544\n"
+ "E(CCSD) = -77.49387212754476 E_corr = -0.04824536314851349\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
- "Energy at initialization: -77.46975600021707\n"
+ "Energy at initialization: -77.46975600021699\n"
]
}
],
@@ -170,10 +170,10 @@
"execution_count": 3,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:56.353739Z",
- "iopub.status.busy": "2024-04-24T07:11:56.352760Z",
- "iopub.status.idle": "2024-04-24T07:12:43.754257Z",
- "shell.execute_reply": "2024-04-24T07:12:43.753336Z"
+ "iopub.execute_input": "2024-04-24T07:19:38.594738Z",
+ "iopub.status.busy": "2024-04-24T07:19:38.594450Z",
+ "iopub.status.idle": "2024-04-24T07:20:25.051764Z",
+ "shell.execute_reply": "2024-04-24T07:20:25.051122Z"
}
},
"outputs": [
@@ -185,10 +185,10 @@
" message: STOP: TOTAL NO. of ITERATIONS REACHED LIMIT\n",
" success: False\n",
" status: 1\n",
- " fun: -77.50964180496058\n",
- " x: [ 1.262e+00 4.694e-01 ... 8.691e-02 1.366e-01]\n",
+ " fun: -77.50963982505083\n",
+ " x: [ 1.377e+00 -5.945e-01 ... 8.766e-02 1.397e-01]\n",
" nit: 5\n",
- " jac: [-7.816e-05 -6.196e-04 ... -3.617e-03 -4.488e-03]\n",
+ " jac: [-6.963e-05 8.299e-04 ... -4.161e-03 -3.079e-03]\n",
" nfev: 584\n",
" njev: 8\n",
" hess_inv: <72x72 LbfgsInvHessProduct with dtype=float64>\n"
@@ -243,10 +243,10 @@
"execution_count": 4,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:12:43.757348Z",
- "iopub.status.busy": "2024-04-24T07:12:43.757076Z",
- "iopub.status.idle": "2024-04-24T07:13:16.006596Z",
- "shell.execute_reply": "2024-04-24T07:13:16.005572Z"
+ "iopub.execute_input": "2024-04-24T07:20:25.055163Z",
+ "iopub.status.busy": "2024-04-24T07:20:25.054785Z",
+ "iopub.status.idle": "2024-04-24T07:20:56.331232Z",
+ "shell.execute_reply": "2024-04-24T07:20:56.330632Z"
}
},
"outputs": [
@@ -258,10 +258,10 @@
" message: STOP: TOTAL NO. of ITERATIONS REACHED LIMIT\n",
" success: False\n",
" status: 1\n",
- " fun: -77.45741509166481\n",
- " x: [ 1.261e+00 4.805e-01 ... 8.055e-03 8.157e-03]\n",
+ " fun: -77.4573876180965\n",
+ " x: [ 1.379e+00 -5.841e-01 ... 1.335e-03 1.164e-02]\n",
" nit: 5\n",
- " jac: [ 1.876e-04 6.963e-05 ... -1.320e-03 -3.342e-03]\n",
+ " jac: [-2.785e-04 1.043e-03 ... -1.458e-03 -3.206e-03]\n",
" nfev: 423\n",
" njev: 9\n",
" hess_inv: <46x46 LbfgsInvHessProduct with dtype=float64>\n"
@@ -311,10 +311,10 @@
"execution_count": 5,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:16.009766Z",
- "iopub.status.busy": "2024-04-24T07:13:16.009475Z",
- "iopub.status.idle": "2024-04-24T07:13:31.585400Z",
- "shell.execute_reply": "2024-04-24T07:13:31.584778Z"
+ "iopub.execute_input": "2024-04-24T07:20:56.335386Z",
+ "iopub.status.busy": "2024-04-24T07:20:56.334139Z",
+ "iopub.status.idle": "2024-04-24T07:21:26.130216Z",
+ "shell.execute_reply": "2024-04-24T07:21:26.129603Z"
}
},
"outputs": [
@@ -325,34 +325,34 @@
"Number of parameters: 46\n",
" message: Stop: Total number of iterations reached limit.\n",
" success: False\n",
- " fun: -77.45818447456564\n",
- " x: [ 1.287e+00 4.532e-01 ... 3.552e-02 -8.566e-03]\n",
+ " fun: -77.47175561491798\n",
+ " x: [ 1.257e+00 -6.227e-01 ... 1.571e-01 -4.884e-01]\n",
" nit: 5\n",
- " jac: [-5.629e-04 3.020e-04 ... 7.026e-04 -1.219e-03]\n",
- " nfev: 634\n",
+ " jac: [ 1.432e-03 3.994e-03 ... -1.628e-03 3.073e-03]\n",
+ " nfev: 811\n",
" njev: 5\n",
- " nlinop: 404\n",
+ " nlinop: 581\n",
"\n",
"Iteration 1\n",
- " Energy: -77.45029302626645\n",
- " Norm of gradient: 0.02020004370995382\n",
- " Regularization hyperparameter: 0.8826379901342593\n",
- " Variation hyperparameter: 0.6648183897123532\n",
+ " Energy: -77.45722852885665\n",
+ " Norm of gradient: 0.010438531340874496\n",
+ " Regularization hyperparameter: 0.026774080397317174\n",
+ " Variation hyperparameter: 0.9756423838465609\n",
"Iteration 2\n",
- " Energy: -77.45045534010309\n",
- " Norm of gradient: 0.018881646064850023\n",
- " Regularization hyperparameter: 0.8823610881773326\n",
- " Variation hyperparameter: 0.6648238632610717\n",
+ " Energy: -77.45809401560325\n",
+ " Norm of gradient: 0.007688124706737847\n",
+ " Regularization hyperparameter: 0.0006148678602191823\n",
+ " Variation hyperparameter: 0.9755488167407622\n",
"Iteration 3\n",
- " Energy: -77.45711181898201\n",
- " Norm of gradient: 0.01200729687112761\n",
- " Regularization hyperparameter: 0.025598521789727345\n",
- " Variation hyperparameter: 0.6940657521578105\n",
+ " Energy: -77.45812036241128\n",
+ " Norm of gradient: 0.007483502338004985\n",
+ " Regularization hyperparameter: 1.0501985117388104\n",
+ " Variation hyperparameter: 0.975492191556643\n",
"Iteration 4\n",
- " Energy: -77.45816307257847\n",
- " Norm of gradient: 0.007591266502855039\n",
- " Regularization hyperparameter: 0.00041396927536031585\n",
- " Variation hyperparameter: 0.6982897824464199\n"
+ " Energy: -77.46252943879958\n",
+ " Norm of gradient: 0.02612332292389617\n",
+ " Regularization hyperparameter: 0.0033002348706717304\n",
+ " Variation hyperparameter: 0.9857004057142639\n"
]
}
],
diff --git a/.doctrees/nbsphinx/tutorials/double-factorized.ipynb b/.doctrees/nbsphinx/tutorials/double-factorized.ipynb
index 468fa1869..dfa767fe3 100644
--- a/.doctrees/nbsphinx/tutorials/double-factorized.ipynb
+++ b/.doctrees/nbsphinx/tutorials/double-factorized.ipynb
@@ -43,10 +43,10 @@
"execution_count": 1,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:33.304169Z",
- "iopub.status.busy": "2024-04-24T07:13:33.303980Z",
- "iopub.status.idle": "2024-04-24T07:13:34.095562Z",
- "shell.execute_reply": "2024-04-24T07:13:34.094949Z"
+ "iopub.execute_input": "2024-04-24T07:21:27.796281Z",
+ "iopub.status.busy": "2024-04-24T07:21:27.796047Z",
+ "iopub.status.idle": "2024-04-24T07:21:28.617051Z",
+ "shell.execute_reply": "2024-04-24T07:21:28.616405Z"
}
},
"outputs": [
@@ -54,7 +54,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "converged SCF energy = -77.4456267643962\n"
+ "converged SCF energy = -77.4456267643963\n"
]
}
],
@@ -109,10 +109,10 @@
"execution_count": 2,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.099267Z",
- "iopub.status.busy": "2024-04-24T07:13:34.098155Z",
- "iopub.status.idle": "2024-04-24T07:13:34.104600Z",
- "shell.execute_reply": "2024-04-24T07:13:34.103979Z"
+ "iopub.execute_input": "2024-04-24T07:21:28.620369Z",
+ "iopub.status.busy": "2024-04-24T07:21:28.619750Z",
+ "iopub.status.idle": "2024-04-24T07:21:28.625335Z",
+ "shell.execute_reply": "2024-04-24T07:21:28.624771Z"
}
},
"outputs": [
@@ -215,10 +215,10 @@
"execution_count": 3,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.106916Z",
- "iopub.status.busy": "2024-04-24T07:13:34.106566Z",
- "iopub.status.idle": "2024-04-24T07:13:34.110796Z",
- "shell.execute_reply": "2024-04-24T07:13:34.110309Z"
+ "iopub.execute_input": "2024-04-24T07:21:28.627651Z",
+ "iopub.status.busy": "2024-04-24T07:21:28.627454Z",
+ "iopub.status.idle": "2024-04-24T07:21:28.631911Z",
+ "shell.execute_reply": "2024-04-24T07:21:28.631428Z"
}
},
"outputs": [],
@@ -273,10 +273,10 @@
"execution_count": 4,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.113143Z",
- "iopub.status.busy": "2024-04-24T07:13:34.112766Z",
- "iopub.status.idle": "2024-04-24T07:13:34.116180Z",
- "shell.execute_reply": "2024-04-24T07:13:34.115721Z"
+ "iopub.execute_input": "2024-04-24T07:21:28.634435Z",
+ "iopub.status.busy": "2024-04-24T07:21:28.634013Z",
+ "iopub.status.idle": "2024-04-24T07:21:28.637725Z",
+ "shell.execute_reply": "2024-04-24T07:21:28.637121Z"
}
},
"outputs": [],
@@ -313,10 +313,10 @@
"execution_count": 5,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.118250Z",
- "iopub.status.busy": "2024-04-24T07:13:34.118060Z",
- "iopub.status.idle": "2024-04-24T07:13:34.124011Z",
- "shell.execute_reply": "2024-04-24T07:13:34.123434Z"
+ "iopub.execute_input": "2024-04-24T07:21:28.640267Z",
+ "iopub.status.busy": "2024-04-24T07:21:28.639744Z",
+ "iopub.status.idle": "2024-04-24T07:21:28.646424Z",
+ "shell.execute_reply": "2024-04-24T07:21:28.645880Z"
}
},
"outputs": [
@@ -352,10 +352,10 @@
"execution_count": 6,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.127621Z",
- "iopub.status.busy": "2024-04-24T07:13:34.126498Z",
- "iopub.status.idle": "2024-04-24T07:13:34.959622Z",
- "shell.execute_reply": "2024-04-24T07:13:34.959044Z"
+ "iopub.execute_input": "2024-04-24T07:21:28.650210Z",
+ "iopub.status.busy": "2024-04-24T07:21:28.649034Z",
+ "iopub.status.idle": "2024-04-24T07:21:29.494030Z",
+ "shell.execute_reply": "2024-04-24T07:21:29.493456Z"
}
},
"outputs": [
@@ -363,7 +363,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Fidelity of evolved state w.r.t. initial state: 0.931506230139706\n"
+ "Fidelity of evolved state w.r.t. initial state: 0.93150623014006\n"
]
}
],
@@ -394,10 +394,10 @@
"execution_count": 7,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.963777Z",
- "iopub.status.busy": "2024-04-24T07:13:34.962800Z",
- "iopub.status.idle": "2024-04-24T07:13:34.994265Z",
- "shell.execute_reply": "2024-04-24T07:13:34.993645Z"
+ "iopub.execute_input": "2024-04-24T07:21:29.497039Z",
+ "iopub.status.busy": "2024-04-24T07:21:29.496586Z",
+ "iopub.status.idle": "2024-04-24T07:21:29.536866Z",
+ "shell.execute_reply": "2024-04-24T07:21:29.536255Z"
}
},
"outputs": [
@@ -405,7 +405,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Fidelity of Trotter-evolved state with exact state: 0.9928527668210921\n"
+ "Fidelity of Trotter-evolved state with exact state: 0.9928527668214251\n"
]
}
],
@@ -435,10 +435,10 @@
"execution_count": 8,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.997907Z",
- "iopub.status.busy": "2024-04-24T07:13:34.996932Z",
- "iopub.status.idle": "2024-04-24T07:13:35.144603Z",
- "shell.execute_reply": "2024-04-24T07:13:35.144044Z"
+ "iopub.execute_input": "2024-04-24T07:21:29.541716Z",
+ "iopub.status.busy": "2024-04-24T07:21:29.540733Z",
+ "iopub.status.idle": "2024-04-24T07:21:29.689942Z",
+ "shell.execute_reply": "2024-04-24T07:21:29.689349Z"
}
},
"outputs": [
@@ -446,7 +446,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Fidelity of Trotter-evolved state with exact state: 0.999932085128466\n"
+ "Fidelity of Trotter-evolved state with exact state: 0.9999320851287457\n"
]
}
],
@@ -478,10 +478,10 @@
"execution_count": 9,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:35.148420Z",
- "iopub.status.busy": "2024-04-24T07:13:35.147427Z",
- "iopub.status.idle": "2024-04-24T07:13:35.294623Z",
- "shell.execute_reply": "2024-04-24T07:13:35.294088Z"
+ "iopub.execute_input": "2024-04-24T07:21:29.694153Z",
+ "iopub.status.busy": "2024-04-24T07:21:29.693184Z",
+ "iopub.status.idle": "2024-04-24T07:21:29.831768Z",
+ "shell.execute_reply": "2024-04-24T07:21:29.831129Z"
}
},
"outputs": [
@@ -489,7 +489,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Fidelity of Trotter-evolved state with exact state: 0.999932085128466\n"
+ "Fidelity of Trotter-evolved state with exact state: 0.9999320851287457\n"
]
}
],
@@ -520,10 +520,10 @@
"execution_count": 10,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:35.298402Z",
- "iopub.status.busy": "2024-04-24T07:13:35.297445Z",
- "iopub.status.idle": "2024-04-24T07:13:35.384316Z",
- "shell.execute_reply": "2024-04-24T07:13:35.383754Z"
+ "iopub.execute_input": "2024-04-24T07:21:29.835304Z",
+ "iopub.status.busy": "2024-04-24T07:21:29.835066Z",
+ "iopub.status.idle": "2024-04-24T07:21:29.883385Z",
+ "shell.execute_reply": "2024-04-24T07:21:29.882741Z"
}
},
"outputs": [
@@ -531,7 +531,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Fidelity of Trotter-evolved state with exact state: 0.9999913261305375\n"
+ "Fidelity of Trotter-evolved state with exact state: 0.999991326130849\n"
]
}
],
diff --git a/.doctrees/tutorials/double-factorized.doctree b/.doctrees/tutorials/double-factorized.doctree
index e2aaab779..b6cbcc048 100644
Binary files a/.doctrees/tutorials/double-factorized.doctree and b/.doctrees/tutorials/double-factorized.doctree differ
diff --git a/_modules/ffsim/cistring.html b/_modules/ffsim/cistring.html
index da65202a5..7b993d386 100644
--- a/_modules/ffsim/cistring.html
+++ b/_modules/ffsim/cistring.html
@@ -159,18 +159,18 @@
Diagonal Coulomb operators and double-factorized Trotter simulation
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
ffsim
ffsim.contract
diff --git a/_sources/index.md.txt b/_sources/index.md.txt
index 538d4647b..eabd8c103 100644
--- a/_sources/index.md.txt
+++ b/_sources/index.md.txt
@@ -36,7 +36,7 @@ See the [developer guide](https://github.com/qiskit-community/ffsim/blob/main/CO
install
tutorials/index
-how-to-guides/index
explanations/index
+how-to-guides/index
api/index
```
diff --git a/api/ffsim.contract.html b/api/ffsim.contract.html
index 976256b26..d7ec18a4f 100644
--- a/api/ffsim.contract.html
+++ b/api/ffsim.contract.html
@@ -160,18 +160,18 @@
Diagonal Coulomb operators and double-factorized Trotter simulation
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
ffsim
ffsim.contract
@@ -296,12 +296,12 @@ Time evolution by a quadratic Hamiltonian
+
Next
-
API Reference
+
How-to guides
diff --git a/explanations/orbital-rotation.ipynb b/explanations/orbital-rotation.ipynb
index aa96276e9..cc1b71d4c 100644
--- a/explanations/orbital-rotation.ipynb
+++ b/explanations/orbital-rotation.ipynb
@@ -62,10 +62,10 @@
"execution_count": 1,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:38.021734Z",
- "iopub.status.busy": "2024-04-24T07:11:38.021535Z",
- "iopub.status.idle": "2024-04-24T07:11:38.638847Z",
- "shell.execute_reply": "2024-04-24T07:11:38.638242Z"
+ "iopub.execute_input": "2024-04-24T07:19:19.612998Z",
+ "iopub.status.busy": "2024-04-24T07:19:19.612793Z",
+ "iopub.status.idle": "2024-04-24T07:19:20.260363Z",
+ "shell.execute_reply": "2024-04-24T07:19:20.259523Z"
}
},
"outputs": [],
diff --git a/explanations/state-vectors-and-gates.html b/explanations/state-vectors-and-gates.html
index d7c04ce26..a744de2b7 100644
--- a/explanations/state-vectors-and-gates.html
+++ b/explanations/state-vectors-and-gates.html
@@ -161,18 +161,18 @@
Diagonal Coulomb operators and double-factorized Trotter simulation
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
ffsim
ffsim.contract
diff --git a/explanations/state-vectors-and-gates.ipynb b/explanations/state-vectors-and-gates.ipynb
index 525a3b2fd..4b6ada2e4 100644
--- a/explanations/state-vectors-and-gates.ipynb
+++ b/explanations/state-vectors-and-gates.ipynb
@@ -26,10 +26,10 @@
"execution_count": 1,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:40.151148Z",
- "iopub.status.busy": "2024-04-24T07:11:40.150954Z",
- "iopub.status.idle": "2024-04-24T07:11:40.761322Z",
- "shell.execute_reply": "2024-04-24T07:11:40.760688Z"
+ "iopub.execute_input": "2024-04-24T07:19:21.736871Z",
+ "iopub.status.busy": "2024-04-24T07:19:21.736662Z",
+ "iopub.status.idle": "2024-04-24T07:19:22.375746Z",
+ "shell.execute_reply": "2024-04-24T07:19:22.375110Z"
}
},
"outputs": [
@@ -74,10 +74,10 @@
"execution_count": 2,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:40.764095Z",
- "iopub.status.busy": "2024-04-24T07:11:40.763511Z",
- "iopub.status.idle": "2024-04-24T07:11:40.770429Z",
- "shell.execute_reply": "2024-04-24T07:11:40.769866Z"
+ "iopub.execute_input": "2024-04-24T07:19:22.378630Z",
+ "iopub.status.busy": "2024-04-24T07:19:22.378169Z",
+ "iopub.status.idle": "2024-04-24T07:19:22.385331Z",
+ "shell.execute_reply": "2024-04-24T07:19:22.384824Z"
}
},
"outputs": [
@@ -118,10 +118,10 @@
"execution_count": 3,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:40.772636Z",
- "iopub.status.busy": "2024-04-24T07:11:40.772317Z",
- "iopub.status.idle": "2024-04-24T07:11:40.776546Z",
- "shell.execute_reply": "2024-04-24T07:11:40.775984Z"
+ "iopub.execute_input": "2024-04-24T07:19:22.387685Z",
+ "iopub.status.busy": "2024-04-24T07:19:22.387344Z",
+ "iopub.status.idle": "2024-04-24T07:19:22.391896Z",
+ "shell.execute_reply": "2024-04-24T07:19:22.391378Z"
}
},
"outputs": [
@@ -155,10 +155,10 @@
"execution_count": 4,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:40.778903Z",
- "iopub.status.busy": "2024-04-24T07:11:40.778521Z",
- "iopub.status.idle": "2024-04-24T07:11:40.782526Z",
- "shell.execute_reply": "2024-04-24T07:11:40.782049Z"
+ "iopub.execute_input": "2024-04-24T07:19:22.394313Z",
+ "iopub.status.busy": "2024-04-24T07:19:22.393866Z",
+ "iopub.status.idle": "2024-04-24T07:19:22.398152Z",
+ "shell.execute_reply": "2024-04-24T07:19:22.397672Z"
}
},
"outputs": [
@@ -197,10 +197,10 @@
"execution_count": 5,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:40.784698Z",
- "iopub.status.busy": "2024-04-24T07:11:40.784373Z",
- "iopub.status.idle": "2024-04-24T07:11:40.790752Z",
- "shell.execute_reply": "2024-04-24T07:11:40.790182Z"
+ "iopub.execute_input": "2024-04-24T07:19:22.400483Z",
+ "iopub.status.busy": "2024-04-24T07:19:22.400094Z",
+ "iopub.status.idle": "2024-04-24T07:19:22.406184Z",
+ "shell.execute_reply": "2024-04-24T07:19:22.405604Z"
}
},
"outputs": [
@@ -243,10 +243,10 @@
"execution_count": 6,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:11:40.793072Z",
- "iopub.status.busy": "2024-04-24T07:11:40.792741Z",
- "iopub.status.idle": "2024-04-24T07:11:40.798031Z",
- "shell.execute_reply": "2024-04-24T07:11:40.797467Z"
+ "iopub.execute_input": "2024-04-24T07:19:22.408494Z",
+ "iopub.status.busy": "2024-04-24T07:19:22.408125Z",
+ "iopub.status.idle": "2024-04-24T07:19:22.413467Z",
+ "shell.execute_reply": "2024-04-24T07:19:22.412907Z"
}
},
"outputs": [
diff --git a/genindex.html b/genindex.html
index 99b2269b5..03250f206 100644
--- a/genindex.html
+++ b/genindex.html
@@ -158,18 +158,18 @@
Diagonal Coulomb operators and double-factorized Trotter simulation
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
ffsim
ffsim.contract
diff --git a/searchindex.js b/searchindex.js
index 8aa208430..7167cfc43 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"API Reference": [[7, "api-reference"]], "Brief background on Trotter-Suzuki formulas": [[18, "Brief-background-on-Trotter-Suzuki-formulas"]], "Citing ffsim": [[16, "citing-ffsim"]], "Data representation": [[8, "Data-representation"]], "Developer guide": [[16, "developer-guide"]], "Diagonal Coulomb operators and double-factorized Trotter simulation": [[18, "Diagonal-Coulomb-operators-and-double-factorized-Trotter-simulation"]], "Double-factorized representation of the molecular Hamiltonian": [[18, "Double-factorized-representation-of-the-molecular-Hamiltonian"]], "Explanations": [[9, "explanations"]], "Gates": [[11, "Gates"]], "Hamiltonians": [[8, "Hamiltonians"]], "How to simulate entanglement forging": [[12, "How-to-simulate-entanglement-forging"]], "How to simulate the local unitary cluster Jastrow (LUCJ) ansatz": [[15, "How-to-simulate-the-local-unitary-cluster-Jastrow-(LUCJ)-ansatz"]], "How to use the FermionOperator class": [[13, "How-to-use-the-FermionOperator-class"]], "How-to guides": [[14, "how-to-guides"]], "Implementing Trotter simulation of the double-factorized Hamiltonian": [[18, "Implementing-Trotter-simulation-of-the-double-factorized-Hamiltonian"]], "Install from source": [[17, "install-from-source"]], "Installation": [[16, "installation"], [17, "installation"]], "Next steps": [[16, "next-steps"]], "Operator action via SciPy LinearOperators": [[8, "Operator-action-via-SciPy-LinearOperators"]], "Optimize with the linear method": [[15, "Optimize-with-the-linear-method"]], "Orbital rotations": [[10, "Orbital-rotations"]], "Orbital rotations and quadratic Hamiltonians": [[10, "Orbital-rotations-and-quadratic-Hamiltonians"]], "Pip install": [[17, "pip-install"]], "State vectors": [[11, "State-vectors"]], "State vectors and gates": [[11, "State-vectors-and-gates"]], "The local unitary cluster Jastrow (LUCJ) ansatz": [[15, "The-local-unitary-cluster-Jastrow-(LUCJ)-ansatz"]], "The unitary cluster Jastrow (UCJ) ansatz": [[15, "The-unitary-cluster-Jastrow-(UCJ)-ansatz"]], "Time evolution by a quadratic Hamiltonian": [[10, "Time-evolution-by-a-quadratic-Hamiltonian"]], "Trotter simulation of the double-factorized Hamiltonian": [[18, "Trotter-simulation-of-the-double-factorized-Hamiltonian"]], "Tutorials": [[19, "tutorials"]], "Use within Docker": [[17, "use-within-docker"]], "ffsim": [[0, "module-ffsim"], [16, "ffsim"]], "ffsim.contract": [[1, "module-ffsim.contract"]], "ffsim.linalg": [[2, "module-ffsim.linalg"]], "ffsim.optimize": [[3, "module-ffsim.optimize"]], "ffsim.qiskit": [[4, "module-ffsim.qiskit"]], "ffsim.random": [[5, "module-ffsim.random"]], "ffsim.testing": [[6, "module-ffsim.testing"]]}, "docnames": ["api/ffsim", "api/ffsim.contract", "api/ffsim.linalg", "api/ffsim.optimize", "api/ffsim.qiskit", "api/ffsim.random", "api/ffsim.testing", "api/index", "explanations/hamiltonians", "explanations/index", "explanations/orbital-rotation", "explanations/state-vectors-and-gates", "how-to-guides/entanglement-forging", "how-to-guides/fermion-operator", "how-to-guides/index", "how-to-guides/lucj", "index", "install", "tutorials/double-factorized", "tutorials/index"], "envversion": {"nbsphinx": 4, "sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["api/ffsim.rst", "api/ffsim.contract.rst", "api/ffsim.linalg.rst", "api/ffsim.optimize.rst", "api/ffsim.qiskit.rst", "api/ffsim.random.rst", "api/ffsim.testing.rst", "api/index.md", "explanations/hamiltonians.ipynb", "explanations/index.md", "explanations/orbital-rotation.ipynb", "explanations/state-vectors-and-gates.ipynb", "how-to-guides/entanglement-forging.ipynb", "how-to-guides/fermion-operator.ipynb", "how-to-guides/index.md", "how-to-guides/lucj.ipynb", "index.md", "install.md", "tutorials/double-factorized.ipynb", "tutorials/index.md"], "indexentries": {"action (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.action", false]], "active_space (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.active_space", false]], "alpha (ffsim.spin attribute)": [[0, "ffsim.Spin.ALPHA", false]], "alpha_and_beta (ffsim.spin attribute)": [[0, "ffsim.Spin.ALPHA_AND_BETA", false]], "apply_diag_coulomb_evolution() (in module ffsim)": [[0, "ffsim.apply_diag_coulomb_evolution", false]], "apply_fsim_gate() (in module ffsim)": [[0, "ffsim.apply_fsim_gate", false]], "apply_givens_rotation() (in module ffsim)": [[0, "ffsim.apply_givens_rotation", false]], "apply_hop_gate() (in module ffsim)": [[0, "ffsim.apply_hop_gate", false]], "apply_matrix_to_slices() (in module ffsim.linalg)": [[2, "ffsim.linalg.apply_matrix_to_slices", false]], "apply_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_interaction", false]], "apply_num_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_num_interaction", false]], "apply_num_op_prod_interaction() (in module ffsim)": [[0, "ffsim.apply_num_op_prod_interaction", false]], "apply_num_op_sum_evolution() (in module ffsim)": [[0, "ffsim.apply_num_op_sum_evolution", false]], "apply_on_site_interaction() (in module ffsim)": [[0, "ffsim.apply_on_site_interaction", false]], "apply_on_site_num_num_interaction() (in module ffsim)": [[0, "ffsim.apply_on_site_num_num_interaction", false]], "apply_orbital_rotation() (in module ffsim)": [[0, "ffsim.apply_orbital_rotation", false]], "apply_tunneling_interaction() (in module ffsim)": [[0, "ffsim.apply_tunneling_interaction", false]], "apply_unitary() (in module ffsim)": [[0, "ffsim.apply_unitary", false]], "approx_eq() (in module ffsim)": [[0, "ffsim.approx_eq", false]], "assert_allclose_up_to_global_phase() (in module ffsim.testing)": [[6, "ffsim.testing.assert_allclose_up_to_global_phase", false]], "atom (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.atom", false]], "basis (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.basis", false]], "beta (ffsim.spin attribute)": [[0, "ffsim.Spin.BETA", false]], "c (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.c", false]], "ccsd_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_energy", false]], "ccsd_t1 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_t1", false]], "ccsd_t2 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_t2", false]], "coeffs (ffsim.productstatesum attribute)": [[0, "ffsim.ProductStateSum.coeffs", false]], "conserves_particle_number() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_particle_number", false]], "conserves_spin_z() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_spin_z", false]], "constant (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.constant", false]], "constant (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.constant", false]], "constant (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.constant", false]], "contract_diag_coulomb() (in module ffsim.contract)": [[1, "ffsim.contract.contract_diag_coulomb", false]], "contract_num_op_sum() (in module ffsim.contract)": [[1, "ffsim.contract.contract_num_op_sum", false]], "contract_one_body() (in module ffsim.contract)": [[1, "ffsim.contract.contract_one_body", false]], "core_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.core_energy", false]], "cre() (in module ffsim)": [[0, "ffsim.cre", false]], "cre_a() (in module ffsim)": [[0, "ffsim.cre_a", false]], "cre_b() (in module ffsim)": [[0, "ffsim.cre_b", false]], "des() (in module ffsim)": [[0, "ffsim.des", false]], "des_a() (in module ffsim)": [[0, "ffsim.des_a", false]], "des_b() (in module ffsim)": [[0, "ffsim.des_b", false]], "diag_coulomb_linop() (in module ffsim.contract)": [[1, "ffsim.contract.diag_coulomb_linop", false]], "diag_coulomb_mats (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.diag_coulomb_mats", false]], "diag_coulomb_mats_alpha_alpha (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.diag_coulomb_mats_alpha_alpha", false]], "diag_coulomb_mats_alpha_alpha (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.diag_coulomb_mats_alpha_alpha", false]], "diag_coulomb_mats_alpha_beta (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.diag_coulomb_mats_alpha_beta", false]], "diag_coulomb_mats_alpha_beta (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.diag_coulomb_mats_alpha_beta", false]], "diagcoulombevolutionjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW", false]], "dim() (in module ffsim)": [[0, "ffsim.dim", false]], "dims() (in module ffsim)": [[0, "ffsim.dims", false]], "dipole_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.dipole_integrals", false]], "double_factorized() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized", false]], "double_factorized_t2() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized_t2", false]], "doublefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.DoubleFactorizedHamiltonian", false]], "dropnegligible (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DropNegligible", false]], "expectation_one_body_power() (in module ffsim)": [[0, "ffsim.expectation_one_body_power", false]], "expectation_one_body_product() (in module ffsim)": [[0, "ffsim.expectation_one_body_product", false]], "expectation_product_state() (ffsim.singlefactorizedhamiltonian method)": [[0, "ffsim.SingleFactorizedHamiltonian.expectation_product_state", false]], "expm_multiply_taylor() (in module ffsim.linalg)": [[2, "ffsim.linalg.expm_multiply_taylor", false]], "fci_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.fci_energy", false]], "fci_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.fci_vec", false]], "fermi_hubbard_1d() (in module ffsim)": [[0, "ffsim.fermi_hubbard_1d", false]], "fermion_operator() (in module ffsim)": [[0, "ffsim.fermion_operator", false]], "fermionaction (class in ffsim)": [[0, "ffsim.FermionAction", false]], "fermionoperator (class in ffsim)": [[0, "ffsim.FermionOperator", false]], "ffsim": [[0, "module-ffsim", false]], "ffsim.contract": [[1, "module-ffsim.contract", false]], "ffsim.linalg": [[2, "module-ffsim.linalg", false]], "ffsim.optimize": [[3, "module-ffsim.optimize", false]], "ffsim.qiskit": [[4, "module-ffsim.qiskit", false]], "ffsim.random": [[5, "module-ffsim.random", false]], "ffsim.testing": [[6, "module-ffsim.testing", false]], "ffsim_vec_to_qiskit_vec() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.ffsim_vec_to_qiskit_vec", false]], "final_orbital_rotation (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.final_orbital_rotation", false]], "from_mole() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_mole", false]], "from_molecular_hamiltonian() (ffsim.doublefactorizedhamiltonian static method)": [[0, "ffsim.DoubleFactorizedHamiltonian.from_molecular_hamiltonian", false]], "from_molecular_hamiltonian() (ffsim.singlefactorizedhamiltonian static method)": [[0, "ffsim.SingleFactorizedHamiltonian.from_molecular_hamiltonian", false]], "from_parameters() (ffsim.realucjoperator static method)": [[0, "ffsim.RealUCJOperator.from_parameters", false]], "from_parameters() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.from_parameters", false]], "from_scf() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_scf", false]], "from_t_amplitudes() (ffsim.realucjoperator static method)": [[0, "ffsim.RealUCJOperator.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.from_t_amplitudes", false]], "generate_norb_nelec() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nelec", false]], "generate_norb_nelec_spin() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nelec_spin", false]], "generate_norb_spin() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_spin", false]], "givens_decomposition() (in module ffsim.linalg)": [[2, "ffsim.linalg.givens_decomposition", false]], "givensrotation (class in ffsim.linalg)": [[2, "ffsim.linalg.GivensRotation", false]], "hamiltonian (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.hamiltonian", false]], "hartree_fock_state() (in module ffsim)": [[0, "ffsim.hartree_fock_state", false]], "hf_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_energy", false]], "hopgateansatzoperator (class in ffsim)": [[0, "ffsim.HopGateAnsatzOperator", false]], "i (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.i", false]], "indices_to_strings() (in module ffsim)": [[0, "ffsim.indices_to_strings", false]], "init_cache() (in module ffsim)": [[0, "ffsim.init_cache", false]], "inverse() (ffsim.qiskit.diagcoulombevolutionjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW.inverse", false]], "inverse() (ffsim.qiskit.orbitalrotationjw method)": [[4, "ffsim.qiskit.OrbitalRotationJW.inverse", false]], "is_antihermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_antihermitian", false]], "is_hermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_hermitian", false]], "is_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_orthogonal", false]], "is_real_symmetric() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_real_symmetric", false]], "is_special_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_special_orthogonal", false]], "is_unitary() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_unitary", false]], "j (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.j", false]], "linear_operator() (in module ffsim)": [[0, "ffsim.linear_operator", false]], "lup() (in module ffsim.linalg)": [[2, "ffsim.linalg.lup", false]], "many_body_order() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.many_body_order", false]], "match_global_phase() (in module ffsim.linalg)": [[2, "ffsim.linalg.match_global_phase", false]], "mergeorbitalrotations (class in ffsim.qiskit)": [[4, "ffsim.qiskit.MergeOrbitalRotations", false]], "minimize_linear_method() (in module ffsim.optimize)": [[3, "ffsim.optimize.minimize_linear_method", false]], "mo_coeff (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mo_coeff", false]], "mo_occ (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mo_occ", false]], "modified_cholesky() (in module ffsim.linalg)": [[2, "ffsim.linalg.modified_cholesky", false]], "module": [[0, "module-ffsim", false], [1, "module-ffsim.contract", false], [2, "module-ffsim.linalg", false], [3, "module-ffsim.optimize", false], [4, "module-ffsim.qiskit", false], [5, "module-ffsim.random", false], [6, "module-ffsim.testing", false]], "mole (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.mole", false]], "moleculardata (class in ffsim)": [[0, "ffsim.MolecularData", false]], "molecularhamiltonian (class in ffsim)": [[0, "ffsim.MolecularHamiltonian", false]], "mp2_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mp2_energy", false]], "mp2_t2 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mp2_t2", false]], "multireference_state() (in module ffsim)": [[0, "ffsim.multireference_state", false]], "multireference_state_prod() (in module ffsim)": [[0, "ffsim.multireference_state_prod", false]], "n_params() (ffsim.realucjoperator static method)": [[0, "ffsim.RealUCJOperator.n_params", false]], "n_params() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.n_params", false]], "n_reps (ffsim.realucjoperator property)": [[0, "ffsim.RealUCJOperator.n_reps", false]], "n_reps (ffsim.ucjoperator property)": [[0, "ffsim.UCJOperator.n_reps", false]], "nelec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.nelec", false]], "norb (ffsim.doublefactorizedhamiltonian property)": [[0, "ffsim.DoubleFactorizedHamiltonian.norb", false]], "norb (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.norb", false]], "norb (ffsim.molecularhamiltonian property)": [[0, "ffsim.MolecularHamiltonian.norb", false]], "norb (ffsim.realucjoperator property)": [[0, "ffsim.RealUCJOperator.norb", false]], "norb (ffsim.singlefactorizedhamiltonian property)": [[0, "ffsim.SingleFactorizedHamiltonian.norb", false]], "norb (ffsim.ucjoperator property)": [[0, "ffsim.UCJOperator.norb", false]], "normal_ordered() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.normal_ordered", false]], "num_op_sum_linop() (in module ffsim.contract)": [[1, "ffsim.contract.num_op_sum_linop", false]], "number_operator() (in module ffsim)": [[0, "ffsim.number_operator", false]], "one_body_linop() (in module ffsim.contract)": [[1, "ffsim.contract.one_body_linop", false]], "one_body_squares (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.one_body_squares", false]], "one_body_tensor (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.one_body_tensor", false]], "one_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.one_body_tensor", false]], "one_hot() (in module ffsim)": [[0, "ffsim.one_hot", false]], "orb (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.orb", false]], "orbital_rotations (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.orbital_rotations", false]], "orbital_rotations (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.orbital_rotations", false]], "orbital_rotations (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.orbital_rotations", false]], "orbital_symmetries (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.orbital_symmetries", false]], "orbitalrotationjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.OrbitalRotationJW", false]], "productstatesum (class in ffsim)": [[0, "ffsim.ProductStateSum", false]], "qiskit_vec_to_ffsim_vec() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.qiskit_vec_to_ffsim_vec", false]], "random_antihermitian() (in module ffsim.random)": [[5, "ffsim.random.random_antihermitian", false]], "random_hermitian() (in module ffsim.random)": [[5, "ffsim.random.random_hermitian", false]], "random_molecular_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_molecular_hamiltonian", false]], "random_nelec() (in module ffsim.testing)": [[6, "ffsim.testing.random_nelec", false]], "random_occupied_orbitals() (in module ffsim.testing)": [[6, "ffsim.testing.random_occupied_orbitals", false]], "random_orthogonal() (in module ffsim.random)": [[5, "ffsim.random.random_orthogonal", false]], "random_real_symmetric_matrix() (in module ffsim.random)": [[5, "ffsim.random.random_real_symmetric_matrix", false]], "random_special_orthogonal() (in module ffsim.random)": [[5, "ffsim.random.random_special_orthogonal", false]], "random_statevector() (in module ffsim.random)": [[5, "ffsim.random.random_statevector", false]], "random_t2_amplitudes() (in module ffsim.random)": [[5, "ffsim.random.random_t2_amplitudes", false]], "random_two_body_tensor() (in module ffsim.random)": [[5, "ffsim.random.random_two_body_tensor", false]], "random_unitary() (in module ffsim.random)": [[5, "ffsim.random.random_unitary", false]], "rdm() (in module ffsim)": [[0, "ffsim.rdm", false]], "realucjoperator (class in ffsim)": [[0, "ffsim.RealUCJOperator", false]], "reduced_matrix() (in module ffsim.linalg)": [[2, "ffsim.linalg.reduced_matrix", false]], "reduced_matrix_product_states() (ffsim.singlefactorizedhamiltonian method)": [[0, "ffsim.SingleFactorizedHamiltonian.reduced_matrix_product_states", false]], "rotated() (ffsim.molecularhamiltonian method)": [[0, "ffsim.MolecularHamiltonian.rotated", false]], "run() (ffsim.qiskit.dropnegligible method)": [[4, "ffsim.qiskit.DropNegligible.run", false]], "run() (ffsim.qiskit.mergeorbitalrotations method)": [[4, "ffsim.qiskit.MergeOrbitalRotations.run", false]], "run_ccsd() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_ccsd", false]], "run_fci() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_fci", false]], "run_mp2() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_mp2", false]], "s (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.s", false]], "scf (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.scf", false]], "simulate_qdrift_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_qdrift_double_factorized", false]], "simulate_trotter_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_trotter_double_factorized", false]], "singlefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.SingleFactorizedHamiltonian", false]], "slater_determinant() (in module ffsim)": [[0, "ffsim.slater_determinant", false]], "slater_determinant_rdm() (in module ffsim)": [[0, "ffsim.slater_determinant_rdm", false]], "spin (class in ffsim)": [[0, "ffsim.Spin", false]], "spin (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.spin", false]], "spin (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.spin", false]], "spin_square() (in module ffsim)": [[0, "ffsim.spin_square", false]], "states (ffsim.productstatesum attribute)": [[0, "ffsim.ProductStateSum.states", false]], "supportsapplyunitary (class in ffsim)": [[0, "ffsim.SupportsApplyUnitary", false]], "supportsapproximateequality (class in ffsim)": [[0, "ffsim.SupportsApproximateEquality", false]], "supportsfermionoperator (class in ffsim)": [[0, "ffsim.SupportsFermionOperator", false]], "supportslinearoperator (class in ffsim)": [[0, "ffsim.SupportsLinearOperator", false]], "supportstrace (class in ffsim)": [[0, "ffsim.SupportsTrace", false]], "symmetry (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.symmetry", false]], "to_number_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_number_representation", false]], "to_parameters() (ffsim.hopgateansatzoperator method)": [[0, "ffsim.HopGateAnsatzOperator.to_parameters", false]], "to_parameters() (ffsim.realucjoperator method)": [[0, "ffsim.RealUCJOperator.to_parameters", false]], "to_parameters() (ffsim.ucjoperator method)": [[0, "ffsim.UCJOperator.to_parameters", false]], "to_t_amplitudes() (ffsim.realucjoperator method)": [[0, "ffsim.RealUCJOperator.to_t_amplitudes", false]], "to_t_amplitudes() (ffsim.ucjoperator method)": [[0, "ffsim.UCJOperator.to_t_amplitudes", false]], "to_z_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_z_representation", false]], "trace() (in module ffsim)": [[0, "ffsim.trace", false]], "two_body_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.two_body_integrals", false]], "two_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.two_body_tensor", false]], "ucjoperator (class in ffsim)": [[0, "ffsim.UCJOperator", false]], "ucjoperatorjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOperatorJW", false]], "z_representation (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.z_representation", false]]}, "objects": {"": [[0, 0, 0, "-", "ffsim"]], "ffsim": [[0, 1, 1, "", "DoubleFactorizedHamiltonian"], [0, 1, 1, "", "FermionAction"], [0, 1, 1, "", "FermionOperator"], [0, 1, 1, "", "HopGateAnsatzOperator"], [0, 1, 1, "", "MolecularData"], [0, 1, 1, "", "MolecularHamiltonian"], [0, 1, 1, "", "ProductStateSum"], [0, 1, 1, "", "RealUCJOperator"], [0, 1, 1, "", "SingleFactorizedHamiltonian"], [0, 1, 1, "", "Spin"], [0, 1, 1, "", "SupportsApplyUnitary"], [0, 1, 1, "", "SupportsApproximateEquality"], [0, 1, 1, "", "SupportsFermionOperator"], [0, 1, 1, "", "SupportsLinearOperator"], [0, 1, 1, "", "SupportsTrace"], [0, 1, 1, "", "UCJOperator"], [0, 5, 1, "", "apply_diag_coulomb_evolution"], [0, 5, 1, "", "apply_fsim_gate"], [0, 5, 1, "", "apply_givens_rotation"], [0, 5, 1, "", "apply_hop_gate"], [0, 5, 1, "", "apply_num_interaction"], [0, 5, 1, "", "apply_num_num_interaction"], [0, 5, 1, "", "apply_num_op_prod_interaction"], [0, 5, 1, "", "apply_num_op_sum_evolution"], [0, 5, 1, "", "apply_on_site_interaction"], [0, 5, 1, "", "apply_on_site_num_num_interaction"], [0, 5, 1, "", "apply_orbital_rotation"], [0, 5, 1, "", "apply_tunneling_interaction"], [0, 5, 1, "", "apply_unitary"], [0, 5, 1, "", "approx_eq"], [1, 0, 0, "-", "contract"], [0, 5, 1, "", "cre"], [0, 5, 1, "", "cre_a"], [0, 5, 1, "", "cre_b"], [0, 5, 1, "", "des"], [0, 5, 1, "", "des_a"], [0, 5, 1, "", "des_b"], [0, 5, 1, "", "dim"], [0, 5, 1, "", "dims"], [0, 5, 1, "", "expectation_one_body_power"], [0, 5, 1, "", "expectation_one_body_product"], [0, 5, 1, "", "fermi_hubbard_1d"], [0, 5, 1, "", "fermion_operator"], [0, 5, 1, "", "hartree_fock_state"], [0, 5, 1, "", "indices_to_strings"], [0, 5, 1, "", "init_cache"], [2, 0, 0, "-", "linalg"], [0, 5, 1, "", "linear_operator"], [0, 5, 1, "", "multireference_state"], [0, 5, 1, "", "multireference_state_prod"], [0, 5, 1, "", "number_operator"], [0, 5, 1, "", "one_hot"], [3, 0, 0, "-", "optimize"], [4, 0, 0, "-", "qiskit"], [5, 0, 0, "-", "random"], [0, 5, 1, "", "rdm"], [0, 5, 1, "", "simulate_qdrift_double_factorized"], [0, 5, 1, "", "simulate_trotter_double_factorized"], [0, 5, 1, "", "slater_determinant"], [0, 5, 1, "", "slater_determinant_rdm"], [0, 5, 1, "", "spin_square"], [6, 0, 0, "-", "testing"], [0, 5, 1, "", "trace"]], "ffsim.DoubleFactorizedHamiltonian": [[0, 2, 1, "", "constant"], [0, 2, 1, "", "diag_coulomb_mats"], [0, 3, 1, "", "from_molecular_hamiltonian"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_number_representation"], [0, 3, 1, "", "to_z_representation"], [0, 2, 1, "", "z_representation"]], "ffsim.FermionAction": [[0, 2, 1, "", "action"], [0, 2, 1, "", "orb"], [0, 2, 1, "", "spin"]], "ffsim.FermionOperator": [[0, 3, 1, "", "conserves_particle_number"], [0, 3, 1, "", "conserves_spin_z"], [0, 3, 1, "", "many_body_order"], [0, 3, 1, "", "normal_ordered"]], "ffsim.HopGateAnsatzOperator": [[0, 3, 1, "", "to_parameters"]], "ffsim.MolecularData": [[0, 2, 1, "", "active_space"], [0, 2, 1, "", "atom"], [0, 2, 1, "", "basis"], [0, 2, 1, "", "ccsd_energy"], [0, 2, 1, "", "ccsd_t1"], [0, 2, 1, "", "ccsd_t2"], [0, 2, 1, "", "core_energy"], [0, 2, 1, "", "dipole_integrals"], [0, 2, 1, "", "fci_energy"], [0, 2, 1, "", "fci_vec"], [0, 3, 1, "", "from_mole"], [0, 3, 1, "", "from_scf"], [0, 4, 1, "", "hamiltonian"], [0, 2, 1, "", "hf_energy"], [0, 2, 1, "", "mo_coeff"], [0, 2, 1, "", "mo_occ"], [0, 4, 1, "", "mole"], [0, 2, 1, "", "mp2_energy"], [0, 2, 1, "", "mp2_t2"], [0, 2, 1, "", "nelec"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 2, 1, "", "orbital_symmetries"], [0, 3, 1, "", "run_ccsd"], [0, 3, 1, "", "run_fci"], [0, 3, 1, "", "run_mp2"], [0, 4, 1, "", "scf"], [0, 2, 1, "", "spin"], [0, 2, 1, "", "symmetry"], [0, 2, 1, "", "two_body_integrals"]], "ffsim.MolecularHamiltonian": [[0, 2, 1, "", "constant"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 3, 1, "", "rotated"], [0, 2, 1, "", "two_body_tensor"]], "ffsim.ProductStateSum": [[0, 2, 1, "", "coeffs"], [0, 2, 1, "", "states"]], "ffsim.RealUCJOperator": [[0, 2, 1, "", "diag_coulomb_mats_alpha_alpha"], [0, 2, 1, "", "diag_coulomb_mats_alpha_beta"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"], [0, 3, 1, "", "to_t_amplitudes"]], "ffsim.SingleFactorizedHamiltonian": [[0, 2, 1, "", "constant"], [0, 3, 1, "", "expectation_product_state"], [0, 3, 1, "", "from_molecular_hamiltonian"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_squares"], [0, 2, 1, "", "one_body_tensor"], [0, 3, 1, "", "reduced_matrix_product_states"]], "ffsim.Spin": [[0, 2, 1, "", "ALPHA"], [0, 2, 1, "", "ALPHA_AND_BETA"], [0, 2, 1, "", "BETA"]], "ffsim.UCJOperator": [[0, 2, 1, "", "diag_coulomb_mats_alpha_alpha"], [0, 2, 1, "", "diag_coulomb_mats_alpha_beta"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"], [0, 3, 1, "", "to_t_amplitudes"]], "ffsim.contract": [[1, 5, 1, "", "contract_diag_coulomb"], [1, 5, 1, "", "contract_num_op_sum"], [1, 5, 1, "", "contract_one_body"], [1, 5, 1, "", "diag_coulomb_linop"], [1, 5, 1, "", "num_op_sum_linop"], [1, 5, 1, "", "one_body_linop"]], "ffsim.linalg": [[2, 1, 1, "", "GivensRotation"], [2, 5, 1, "", "apply_matrix_to_slices"], [2, 5, 1, "", "double_factorized"], [2, 5, 1, "", "double_factorized_t2"], [2, 5, 1, "", "expm_multiply_taylor"], [2, 5, 1, "", "givens_decomposition"], [2, 5, 1, "", "is_antihermitian"], [2, 5, 1, "", "is_hermitian"], [2, 5, 1, "", "is_orthogonal"], [2, 5, 1, "", "is_real_symmetric"], [2, 5, 1, "", "is_special_orthogonal"], [2, 5, 1, "", "is_unitary"], [2, 5, 1, "", "lup"], [2, 5, 1, "", "match_global_phase"], [2, 5, 1, "", "modified_cholesky"], [2, 5, 1, "", "reduced_matrix"]], "ffsim.linalg.GivensRotation": [[2, 2, 1, "", "c"], [2, 2, 1, "", "i"], [2, 2, 1, "", "j"], [2, 2, 1, "", "s"]], "ffsim.optimize": [[3, 5, 1, "", "minimize_linear_method"]], "ffsim.qiskit": [[4, 1, 1, "", "DiagCoulombEvolutionJW"], [4, 1, 1, "", "DropNegligible"], [4, 1, 1, "", "MergeOrbitalRotations"], [4, 1, 1, "", "OrbitalRotationJW"], [4, 1, 1, "", "UCJOperatorJW"], [4, 5, 1, "", "ffsim_vec_to_qiskit_vec"], [4, 5, 1, "", "qiskit_vec_to_ffsim_vec"]], "ffsim.qiskit.DiagCoulombEvolutionJW": [[4, 3, 1, "", "inverse"]], "ffsim.qiskit.DropNegligible": [[4, 3, 1, "", "run"]], "ffsim.qiskit.MergeOrbitalRotations": [[4, 3, 1, "", "run"]], "ffsim.qiskit.OrbitalRotationJW": [[4, 3, 1, "", "inverse"]], "ffsim.random": [[5, 5, 1, "", "random_antihermitian"], [5, 5, 1, "", "random_hermitian"], [5, 5, 1, "", "random_molecular_hamiltonian"], [5, 5, 1, "", "random_orthogonal"], [5, 5, 1, "", "random_real_symmetric_matrix"], [5, 5, 1, "", "random_special_orthogonal"], [5, 5, 1, "", "random_statevector"], [5, 5, 1, "", "random_t2_amplitudes"], [5, 5, 1, "", "random_two_body_tensor"], [5, 5, 1, "", "random_unitary"]], "ffsim.testing": [[6, 5, 1, "", "assert_allclose_up_to_global_phase"], [6, 5, 1, "", "generate_norb_nelec"], [6, 5, 1, "", "generate_norb_nelec_spin"], [6, 5, 1, "", "generate_norb_spin"], [6, 5, 1, "", "random_nelec"], [6, 5, 1, "", "random_occupied_orbitals"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "method", "Python method"], "4": ["py", "property", "Python property"], "5": ["py", "function", "Python function"]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:property", "5": "py:function"}, "terms": {"": [0, 2, 4, 7, 8, 11, 12, 13, 15, 17, 18], "0": [0, 2, 3, 6, 8, 11, 12, 13, 15, 18], "00": [12, 15], "0000000": [12, 15], "00041396927536031585": 15, "001011": [0, 11], "001101": [0, 11], "001110": [0, 11], "007591266502855039": 15, "01": [12, 15], "010011": [0, 11], "010101": [0, 11], "010110": [0, 11], "01200729687112761": 15, "012e": 12, "018881646064850023": 15, "02": [12, 15], "02020004370995382": 15, "020e": 15, "02242": 2, "02459434j": 11, "025598521789727345": 15, "02625": 2, "026e": 15, "02998708j": 11, "03": [12, 15], "03101213j": 11, "03525116j": 11, "04": [12, 15], "04824536314851544": 15, "05": [0, 2, 3, 4, 15], "055e": 15, "0609050": 5, "0625": [0, 13], "06273307": 11, "06551571": 11, "06677383j": 11, "06844774j": 11, "07": 6, "08": [0, 2, 3, 4], "08957": 2, "09723851": 11, "0j": 13, "1": [0, 2, 3, 5, 8, 10, 11, 12, 13, 15, 18], "10": 18, "100": 12, "1000": 3, "100011": [0, 11], "100101": [0, 11], "100110": [0, 11], "104": 12, "1102529j": 11, "11157654": 11, "112": 12, "11588432j": 13, "12": [2, 13], "121e": 12, "12204343": 11, "1234": [8, 11, 12], "125": [0, 13], "12j": 13, "13113848": 11, "13117779": 13, "13327423j": 11, "13957088j": 11, "15": 12, "15624569": 11, "157e": 15, "15828306": 11, "15x15": 12, "1711": 2, "17276745j": 11, "17558331": 11, "180": 12, "1808": 2, "18j": 13, "192e": 12, "196e": 15, "1e": [0, 2, 3, 4, 6], "1j": [0, 8, 13, 18], "2": [0, 1, 2, 4, 5, 8, 11, 12, 13, 15, 18], "20656273321637": 12, "20835741": 11, "20881506": 11, "2104": 2, "2190712273": 8, "21928194": 11, "21984743e": 13, "219e": 15, "22392824": 11, "23": 12, "23550198": 11, "23611476": 11, "25": [0, 13], "25j": [0, 13], "261e": 15, "262e": 15, "287e": 15, "29821173j": 11, "2j": [0, 13], "2n": 11, "3": [0, 2, 4, 8, 11, 12, 13, 15, 18], "30052742j": 11, "308e": 12, "31980058j": 11, "320e": 15, "33731417j": 11, "342e": 15, "366e": 15, "36730125j": 11, "3714141": 11, "39": [11, 13], "39075171": 11, "3j": 13, "4": [0, 2, 8, 11, 12, 13, 15, 18], "404": 15, "423": 15, "4456267643962": [15, 18], "44562676439627": 18, "45029302626645": 15, "45045534010309": 15, "45711181898201": 15, "45741509166481": 15, "45816307257847": 15, "45818447456564": 15, "46": 15, "46975600021707": 15, "46x46": 15, "478": 12, "488e": 15, "49094286j": 11, "49387212754468": 15, "4j": 13, "5": [0, 3, 8, 11, 13, 15, 18], "50964180496058": 15, "51253171j": 11, "532e": 15, "549e": 12, "552e": 15, "5571707255155": 8, "5626": [15, 18], "566e": 15, "57322412553863": 15, "584": 15, "58888": 17, "5j": [0, 13], "6": [8, 11, 12, 13, 15, 18], "617e": 15, "6290254326717": 15, "629e": 15, "6332495815006": 12, "634": 15, "64": 11, "650e": 12, "6648183897123532": 15, "6648238632610717": 15, "678": [15, 18], "6787887956297": 12, "68085147140957": 12, "691e": 15, "6940657521578105": 15, "694e": 15, "6982897824464199": 15, "6g": [0, 12, 15, 18], "6j": 13, "7": [8, 12, 13, 15, 18], "72": 15, "7288249991515": 12, "72x72": 15, "74": 12, "75": 12, "764e": 12, "77": [15, 18], "8": [12, 13, 15, 18], "805e": 15, "816e": 15, "876e": 15, "8823610881773326": 15, "8826379901342593": 15, "9": [11, 12, 13, 15, 18], "9289": [15, 18], "931506230139706": 18, "958": 12, "963e": 15, "99": 8, "9928527668210921": 18, "996e": 12, "999932085128466": 18, "9999913261305375": 18, "A": [0, 1, 2, 3, 4, 5, 6, 10, 11, 13, 15, 17, 18], "AND": 12, "As": [0, 11, 15, 18], "By": 16, "For": [0, 3, 8, 11, 13, 15, 17], "If": [0, 1, 2, 3, 4, 5, 6, 13], "In": [0, 8, 11, 12, 13, 15, 18], "It": [0, 2, 3, 4, 11, 13, 15, 17, 18], "Its": 3, "NO": [12, 15], "No": 2, "Of": 15, "On": [11, 17], "One": [0, 18], "Such": 13, "That": [0, 3, 10, 13], "The": [0, 1, 2, 3, 4, 5, 6, 8, 10, 11, 13, 16, 17, 18], "Then": [0, 16], "These": 13, "To": [0, 8, 11, 15, 18], "With": 15, "_": [0, 2, 4, 10, 12, 15, 18], "_1": 10, "_2": 10, "_k": [0, 15, 18], "a_": [0, 4, 8, 10, 13, 18], "a_j": 1, "a_p": 0, "a_q": 0, "ab": 18, "abl": 17, "about": 16, "abov": [13, 18], "absolut": [0, 2, 6], "acceler": 17, "accept": [10, 15], "access": [8, 17], "achiev": [2, 18], "across": 17, "act": [0, 2, 8, 13], "action": [0, 1, 7, 10, 13, 17], "activ": [0, 12, 15, 18], "active_spac": [0, 7, 12, 15, 18], "actual": [0, 6, 15], "ad": 0, "addit": [0, 13, 18], "addition": 2, "after": [3, 15], "al": 2, "algebra": [2, 8, 13], "algorithm": [2, 3, 15, 16], "alia": [0, 2], "align": [0, 10, 15], "all": [0, 3, 6, 13, 15, 17], "alloc": 0, "allow": [0, 2, 15, 17], "allow_col_permut": 0, "allow_row_permut": 0, "alpha": [0, 1, 4, 6, 7, 8, 11, 13, 15], "alpha_alpha_indic": [0, 15], "alpha_and_beta": [0, 4, 7], "alpha_beta_indic": [0, 15], "alpha_i": 0, "alpha_j": 0, "alreadi": [0, 10, 18], "also": [0, 1, 3, 4, 8, 10, 11, 13, 15], "altern": [0, 18], "although": 18, "alwai": [0, 2, 5, 10, 11], "amplitud": [0, 2, 5, 15], "an": [0, 1, 2, 4, 5, 8, 10, 11, 13, 15, 16, 18], "angl": [0, 12], "ani": [0, 3, 10, 15], "annihil": [0, 13], "anoth": [2, 6], "ansatz": [0, 3, 12, 14], "ansatz_oper": 0, "ansatz_st": 15, "anti": [2, 5], "anticommut": 10, "ao": 0, "ap": 2, "api": 11, "appear": [0, 2, 13], "append": [6, 15], "appli": [0, 1, 2, 3, 8, 10, 11, 15, 18], "applic": 10, "apply_": 11, "apply_diag_coulomb_evolut": [0, 7, 18], "apply_fsim_g": [0, 7], "apply_givens_rot": [0, 7], "apply_hop_g": [0, 7], "apply_matrix_to_slic": [2, 7], "apply_num_interact": [0, 7], "apply_num_num_interact": [0, 7], "apply_num_op_prod_interact": [0, 7], "apply_num_op_sum_evolut": [0, 7, 10, 18], "apply_on_site_interact": [0, 7, 11], "apply_on_site_num_num_interact": [0, 7], "apply_orbital_rot": [0, 7, 10, 11], "apply_quad_ham_evolut": 10, "apply_tunneling_interact": [0, 7, 11], "apply_unitari": [0, 7, 15], "appropri": 0, "approx": 18, "approx_eq": [0, 7], "approxim": [0, 2, 3, 18], "apt": 17, "ar": [0, 1, 2, 4, 5, 6, 8, 10, 11, 13, 15, 17, 18], "arch": 17, "arg": [0, 4], "argument": [0, 2, 3, 8, 10, 11], "arithmet": 13, "arrai": [0, 2, 6, 8, 11, 13], "arxiv": [2, 5], "assembl": 2, "assert": 11, "assert_allclose_up_to_global_phas": [6, 7], "assertionerror": 6, "associ": [0, 3, 11, 13, 15], "assum": [4, 11], "asterisk": 0, "asymmetr": 18, "atol": [0, 2, 4, 6], "atom": [0, 7, 12, 15, 18], "attempt": 2, "attribut": [3, 8], "author": 16, "avail": [8, 17], "avoid": [0, 8, 13], "awar": 13, "b": [0, 2, 3, 6, 10, 12, 15, 18], "backflow": 3, "base": [0, 2, 4], "basi": [0, 2, 7, 10, 12, 15, 18], "basic": [8, 18], "becaus": [8, 13, 18], "been": 0, "befor": [0, 13, 15, 17], "begin": [0, 2, 10, 11, 15], "behavior": [2, 5], "being": [2, 13, 15], "below": [0, 15, 18], "benchmark": 0, "beta": [0, 1, 4, 6, 7, 8, 11, 13, 15], "beta_i": 0, "beta_j": 0, "better": 18, "between": [0, 1, 2, 3, 15], "bfg": [0, 2, 3, 12, 15], "bibtex": 16, "bit": 11, "bitstr": [0, 11], "bla": 17, "block_diag": 0, "bodi": [0, 1, 2, 5, 8, 12, 15, 18], "bond": [12, 15, 18], "bond_angle_deg": 12, "bond_dist": [15, 18], "bool": [0, 1, 2, 3, 6], "bool_": 2, "both": [0, 2], "bound": [0, 2], "boundari": 0, "bq": 2, "break": 16, "brickwork": 12, "browser": 17, "build": [12, 15, 17, 18], "built": 18, "c": [0, 2, 7, 15, 18], "c2v": 12, "cach": 0, "calcul": [0, 11, 15, 18], "call": [0, 3, 8, 10, 11, 13, 15, 18], "callabl": [3, 15], "callback": [0, 2, 3, 15], "can": [0, 2, 8, 10, 11, 13, 15, 16, 17, 18], "canon": 0, "casci": [12, 15], "case": 6, "categori": 16, "cc": 15, "ccsd": [0, 15], "ccsd_energi": [0, 7], "ccsd_t1": [0, 7], "ccsd_t2": [0, 7], "cd": 17, "cdot": 2, "cell": [8, 11, 15, 18], "certain": 2, "challeng": 15, "chang": 16, "character": 0, "check": [2, 6, 16, 18], "chemic": 0, "chemical_potenti": 0, "chemistri": 16, "choic": [0, 6, 11], "choleski": [0, 2], "choos": [2, 11, 15], "ci": [12, 15], "circuit": [0, 4, 11, 16], "class": [0, 2, 4, 5, 8, 14, 15], "clement": 2, "clone": 17, "cluster": [0, 4, 14], "co": [0, 12], "code": [4, 8, 11, 13, 15, 16, 18], "coeff": [0, 1, 7], "coeffici": [0, 1, 2, 10, 13, 15], "collect": [2, 15], "column": [0, 2, 10, 11], "com": [16, 17], "comb": 4, "combin": [0, 1, 10, 13], "command": 17, "commonli": 18, "commun": [16, 17], "commut": [0, 15, 18], "compar": [0, 6, 18], "compil": 17, "complet": 0, "complex": [0, 1, 2, 5, 8], "complic": 15, "compon": [0, 13, 16], "compos": [17, 18], "compress": [0, 2], "compris": [0, 13], "comput": [0, 2, 8, 10, 12, 15], "concaten": 11, "concret": 8, "condit": 0, "configur": [0, 11, 17], "conflict": 6, "conj": 10, "conjug": 2, "connect": 15, "consecut": 4, "conserv": [0, 13, 16], "conserves_particle_numb": [0, 7, 13], "conserves_spin_z": [0, 7, 13], "consid": [10, 15], "consist": [0, 8], "constant": [0, 5, 7, 8, 15, 18], "constrain": 2, "constraint": 15, "construct": [0, 1, 3, 4, 11, 12, 13, 15, 18], "constructor": 15, "contain": [0, 2, 3, 13, 15, 16, 17], "contract": 7, "contract_diag_coulomb": [1, 7], "contract_num_op_sum": [1, 7], "contract_one_bodi": [1, 7], "contrast": 11, "contribut": 16, "control": 3, "conveni": 11, "convent": 0, "converg": [3, 12, 15, 18], "convers": 15, "convert": [0, 1, 4, 11, 13, 15, 18], "coordin": 0, "copi": [0, 13], "core": 0, "core_energi": [0, 7], "correl": 3, "correspond": [0, 2, 3, 4, 10, 11, 15, 18], "cost": 0, "coulomb": [0, 1, 2, 4, 15, 19], "count": 0, "cours": 15, "cre": [0, 7], "cre_a": [0, 7, 13], "cre_b": [0, 7, 13], "creat": [0, 11, 13, 15, 18], "creation": [0, 10, 13], "criteria": 13, "current": [0, 2, 15, 16], "d": [2, 17], "d2h": [15, 18], "dag": 4, "dagcircuit": 4, "dagger": [0, 1, 2, 10, 13, 15, 18], "dagger_": [0, 4, 8, 10, 18], "dagger_i": 1, "data": [0, 5, 12, 13, 15, 18], "dataclass": [15, 18], "daunt": 18, "de": [0, 7], "decompos": [2, 18], "decomposit": [0, 2], "decreas": 15, "def": [10, 12, 15, 18], "default": [0, 2, 3, 5, 8], "default_rng": [0, 5, 6, 8, 12], "defaultdict": 15, "defin": [0, 2, 12, 15, 18], "definit": [0, 2, 3, 11], "demonstr": [11, 15, 18], "denot": [0, 1, 2, 4, 10], "densiti": 0, "depend": [0, 2, 3, 17], "deprec": 0, "depth": 15, "deriv": 18, "des_a": [0, 7, 13], "des_b": [0, 7, 13], "descend": [0, 13], "describ": [0, 1, 2, 10, 13, 15, 18], "descript": [0, 4], "design": [2, 10], "desir": [0, 6], "destroi": [0, 13], "determin": [0, 2, 11, 18], "dev": 17, "devel": 17, "develop": 4, "df_hamiltonian": 18, "diag_coulomb_indic": [0, 2], "diag_coulomb_linop": [1, 7], "diag_coulomb_mat": [0, 7, 18], "diag_coulomb_mats_alpha_alpha": [0, 7], "diag_coulomb_mats_alpha_beta": [0, 7], "diagcoulombevolutionjw": [4, 7], "diagon": [0, 1, 2, 4, 15, 19], "dict": [0, 2, 3, 12, 15], "dictionari": [0, 13], "differ": [0, 1, 2, 3, 4, 8, 15, 17], "dim": [0, 5, 7, 11, 13], "dim_a": [0, 11], "dim_b": [0, 11], "dimens": [0, 5, 11], "dimension": [0, 2, 4, 11], "dipol": 0, "dipole_integr": [0, 7], "directli": [15, 17, 18], "directori": 17, "disclaim": 16, "discuss": 10, "disjoint": 2, "displai": 13, "distribut": 5, "divid": 18, "divis": [0, 13], "dnf": 17, "do": [13, 18], "dockerfil": 17, "docstr": 0, "document": [0, 2], "doe": 13, "dot": 0, "doubl": [0, 2, 15, 19], "double_factor": [0, 2, 7], "double_factorized_t2": [2, 7], "doublefactorizedhamiltonian": [0, 7, 18], "down": 11, "drop": 4, "dropneglig": [4, 7], "dtype": [0, 5, 8, 12, 15], "e": [0, 2, 4, 8, 12, 13, 15, 18], "e_corr": 15, "each": [0, 2, 3, 11, 13, 15, 17, 18], "effect": [0, 4, 15], "effici": 13, "eig": [8, 13], "eigendecomposit": 10, "eigenvalu": [0, 2, 3, 8], "eigenvector": 0, "eigh": [10, 18], "eigsh": 8, "either": [2, 15], "electron": [0, 1, 4, 5, 6, 8, 11, 18], "element": [0, 2], "ell": 2, "els": [0, 5, 11], "elsewher": 0, "enabl": 2, "end": [0, 2, 10, 15], "energi": [0, 3, 8, 10, 12, 15, 18], "enforc": [0, 15], "ensur": 8, "entangl": 14, "entir": 2, "entri": [0, 2, 11, 15], "enumer": [0, 15], "environ": 17, "epsilon": 3, "equal": [0, 2, 6], "equal_nan": 6, "equilibrium": 12, "equival": 0, "err_msg": 6, "error": [0, 2, 6], "especi": 13, "estim": 8, "et": 2, "ethen": [15, 18], "evalu": [3, 12], "everi": 10, "everywher": 11, "evolut": [0, 4, 8, 18], "evolv": [0, 18], "evolved_vec": 8, "exact": [2, 8, 18], "exact_st": 18, "exampl": [0, 8, 11, 13, 15, 17], "exce": [2, 12], "except": [0, 3], "exp": [0, 2, 4, 6], "expand": 0, "expans": [2, 3], "expect": [0, 3], "expectation_one_body_pow": [0, 7], "expectation_one_body_product": [0, 7], "expectation_product_st": [0, 7], "expens": [0, 2], "experiment": 16, "explain": [8, 11], "explan": [0, 16], "explicit": 0, "exploit": 16, "expm": 2, "expm_multipli": [8, 18], "expm_multiply_taylor": [2, 7], "exponenti": [8, 18], "express": [11, 15], "f": [3, 11, 12, 15, 18], "facilit": 15, "factor": [0, 2, 15, 19], "failur": 6, "fals": [0, 1, 2, 4, 12, 13, 15], "far": 13, "fast": 0, "faster": [15, 16], "fault": 15, "fci": [0, 11, 15], "fci_energi": [0, 7], "fci_vec": [0, 7], "fcivec": 0, "fedora": 17, "feenberg": 3, "fermi": 0, "fermi_hubbard_1d": [0, 7], "fermion": [0, 10, 13, 15, 16], "fermion_oper": [0, 7], "fermionact": [0, 7], "fermionoper": [0, 7, 14], "few": [11, 17], "fewer": [3, 18], "ffsim": [7, 8, 10, 11, 12, 13, 15, 17, 18], "ffsim_vec_to_qiskit_vec": [4, 7], "fidel": 18, "field": [0, 2], "file": 17, "filter": 0, "final": [0, 3, 15, 18], "final_orbital_rot": [0, 7], "final_st": [15, 18], "finish": 18, "finit": 3, "first": [0, 2, 4, 11, 12, 15, 18], "fix": 11, "flag": 0, "float": [0, 2, 3, 5, 6, 8, 10, 18], "float64": [12, 15], "fock": [0, 11, 15, 18], "focu": 8, "follow": [0, 3, 8, 10, 11, 13, 15, 16, 17, 18], "foot": 0, "forg": 14, "form": [0, 1, 2, 8, 10, 13, 15, 18], "format": [0, 4], "formula": 0, "fourth": 18, "frac": [0, 2], "frac12": [0, 8, 15, 18], "frac18": 0, "framework": 17, "from": [0, 5, 10, 11, 12, 13, 15, 16], "from_mol": [0, 7, 12, 18], "from_molecular_hamiltonian": [0, 7, 18], "from_paramet": [0, 7, 15], "from_scf": [0, 7, 15], "from_t_amplitud": [0, 7, 15], "frozen": 15, "fsim": 0, "full": [0, 2, 11], "fulli": 8, "fun": [3, 12, 15], "function": [0, 1, 2, 3, 8, 10, 11, 13, 15, 18], "fundament": 10, "further": 11, "furthermor": [0, 2], "g": [0, 4, 12, 15], "g_": 2, "g_1": 2, "g_k": 2, "g_l": 2, "gate": [0, 4, 9, 15, 16], "gener": [0, 3, 5, 6, 11, 15, 16, 18], "generate_norb_nelec": [6, 7], "generate_norb_nelec_spin": [6, 7], "generate_norb_spin": [6, 7], "get": [0, 11, 12, 15, 18], "git": 17, "github": [16, 17], "give": 0, "given": [0, 1, 2, 4, 6, 10, 18], "givens_decomposit": [2, 7], "givensrot": [2, 7], "global": 6, "go": [0, 13], "good": 13, "gradient": [2, 3, 15], "greater": 3, "ground": [8, 15], "gt": [12, 15], "gto": [12, 15, 18], "gtol": 3, "guess": 3, "guid": [12, 15], "h": [0, 8, 12, 15, 18], "h1_x": 12, "h2_x": 12, "h2_y": 12, "h_": [0, 2, 8, 18], "h_k": 18, "ha": [0, 1, 2, 4, 10, 11, 15, 18], "haar": 5, "ham": 11, "hamiltonian": [0, 3, 5, 7, 9, 12, 15], "hand": 11, "handl": 18, "hartre": [0, 11, 15, 18], "hartree_fock": [0, 15], "hartree_fock_st": [0, 7, 8, 11, 15, 18], "hasattr": 15, "hash": 13, "have": [0, 2, 8, 10, 11, 13, 15, 17], "height": 5, "helper": 13, "here": [0, 2, 10, 15, 18], "hermitian": [0, 2, 5, 10], "hess_inv": [12, 15], "hf_energi": [0, 7, 18], "higher": [0, 18], "hold": 3, "home": 17, "hop": 0, "hopgateansatzoper": [0, 7, 12], "host": 16, "hot": 0, "how": [0, 8, 10, 11, 16, 18], "howev": 16, "http": [16, 17], "hubbard": 0, "hyperparamet": [3, 15], "i": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 15, 16, 17, 18], "idea": 15, "ignor": [0, 2, 18], "ij": [0, 1, 2, 4, 10, 15, 18], "ijab": 2, "ik": 10, "imag": 17, "implement": [1, 3, 4, 8, 10, 15, 17], "import": [0, 8, 10, 11, 12, 13, 15, 18], "impos": 15, "improv": 18, "includ": [0, 2, 8, 10, 11, 15, 16, 17, 18], "incorpor": 0, "increas": [0, 11, 15, 18], "increment": 3, "incur": 3, "index": [0, 11, 13, 15], "indic": [0, 2, 11, 13, 15], "indices_to_str": [0, 7, 11], "individu": [11, 13, 18], "info": 15, "inform": [8, 13, 15, 16], "init_cach": [0, 7], "initi": [0, 3, 5, 6, 8, 12, 15, 18], "initial_st": 18, "initiali": 12, "input": [0, 1, 3, 5, 6, 15], "instanc": [5, 8, 18], "instead": [0, 2, 15], "instruct": [16, 17], "int": [0, 1, 2, 3, 4, 5, 6, 10, 12, 18], "integ": [0, 2], "integr": 0, "interact": [0, 1], "interaction_pair": [0, 12], "interfac": [15, 17], "interferomet": 2, "intermedi": 15, "intermediate_result": [3, 15], "intern": 13, "interpret": 0, "introduc": [10, 15, 16], "invers": [4, 7], "involv": [0, 10, 15], "ip": 2, "ipykernel_4332": 8, "is_antihermitian": [2, 7], "is_hermitian": [2, 7], "is_orthogon": [2, 7], "is_real_symmetr": [2, 7], "is_special_orthogon": [2, 7], "is_unitari": [2, 7], "isclos": 0, "issu": 8, "iter": [0, 3, 6, 15], "its": [0, 2, 8, 11, 13, 18], "itself": [0, 11, 13], "j": [0, 1, 2, 4, 7, 10, 11, 12, 13, 15, 18], "jac": [3, 12, 15], "jastrow": [0, 3, 4, 14], "ji": [0, 10], "jk": 10, "jordan": [0, 4], "jq": 2, "jupyt": 17, "just": [0, 11, 15, 17, 18], "k": [0, 2, 8, 13, 15, 18], "kappa": 0, "kappa_": 0, "keep": [0, 2], "kernel": 15, "known": 18, "kron": 0, "kwarg": [0, 4], "l": [0, 2, 3, 12, 15, 18], "label": [4, 11], "ladder": 15, "lambda_i": [0, 1, 10], "lambda_k": 10, "langl": 0, "larger": [0, 2, 3, 13], "last": [3, 4], "later": 18, "lattic": 15, "layer": 2, "lbfgsinvhessproduct": [12, 15], "ldot": [2, 15], "lead": [0, 3], "least": 2, "left": [0, 4, 10, 11, 13], "len": [12, 15], "length": [0, 4, 11, 15, 18], "leq": [0, 2], "less": [2, 15], "let": [0, 11, 13, 18], "level": 18, "lexicograph": [0, 13], "libopenbla": 17, "librari": [0, 16], "like": [15, 17], "limit": [0, 2, 12, 15], "linalg": [0, 7, 8, 10, 13, 15, 18], "lindep": 3, "line": 15, "linear": [0, 1, 2, 3, 8, 10, 13], "linear_oper": [0, 7, 8, 13, 15, 18], "linearoper": [0, 1, 3, 13, 15, 18], "linop": [8, 13], "linux": 17, "list": [0, 2, 6, 11, 12, 15], "ll": [8, 10, 15, 18], "lm": 13, "local": 14, "localhost": 17, "log": [0, 4], "logic": 10, "longest": 0, "lookup": 0, "low": 0, "lower": [0, 2], "lowest": [0, 11, 18], "lt": [12, 15], "lu": 2, "lucj": 14, "lup": [2, 7], "lvert": [0, 11, 15], "m": [0, 1, 2, 10], "m_": [0, 1, 2], "maco": 17, "mai": [0, 2, 3, 15, 16, 17], "main": [15, 17], "make": 15, "manag": 17, "mani": [0, 8, 10, 16], "manual": 18, "many_body_ord": [0, 7], "map": [0, 10, 13], "mapsto": [0, 10], "mat": [0, 1, 2, 4, 10, 11], "mat_alpha_beta": [0, 1, 4], "match": [2, 18], "match_global_phas": [2, 7], "math": [5, 12], "mathbf": [0, 10, 15, 18], "mathcal": [0, 1, 10, 15, 18], "matric": [0, 1, 2, 10, 15, 18], "matrix": [0, 1, 2, 3, 4, 5, 8, 10, 11, 13, 15, 18], "max_vec": [0, 2], "maxfun": 12, "maximum": [0, 2, 3, 5], "maxit": [3, 15], "mcscf": [12, 15], "measur": 5, "mention": 18, "merg": 4, "mergeorbitalrot": [4, 7], "messag": [6, 12, 15], "method": [0, 2, 3, 12, 13, 16], "minim": [0, 2, 3, 12, 15], "minimize_linear_method": [3, 7, 15], "mo_coeff": [0, 7], "mo_occ": [0, 7], "mode": 10, "model": 0, "modifi": [0, 2], "modified_choleski": [2, 7], "modul": [0, 11], "mol": [12, 15, 18], "mol_data": [12, 15, 18], "mol_hamiltonian": [8, 12, 15, 18], "mole": [0, 7, 12, 15, 18], "molecul": [0, 12, 15, 18], "molecular": [0, 5, 8, 11, 12, 15], "moleculardata": [0, 7, 12, 15, 18], "molecularhamiltonian": [0, 5, 7, 8, 18], "more": [0, 2, 3, 8, 11, 15], "most": [0, 2, 13], "mp2": [0, 15], "mp2_energi": [0, 7], "mp2_t2": [0, 7], "mu": 0, "much": [0, 2, 16], "multipl": [0, 8, 13, 18], "multipli": [0, 13], "multiport": 2, "multirefer": 0, "multireference_st": [0, 7], "multireference_state_prod": [0, 7, 12], "must": [0, 2, 3, 13], "n": [0, 2, 8, 10, 11, 15, 18], "n_": [0, 1, 4, 10, 11, 15, 18], "n_alpha": [4, 6], "n_beta": [4, 6], "n_layer": 12, "n_p": 0, "n_param": [0, 7], "n_rep": [0, 7, 15], "n_sampl": 0, "n_step": [0, 18], "name": [0, 8, 11, 17], "namedtupl": [0, 2], "nan": 6, "nao_nr": [12, 15], "nativ": 16, "navig": 17, "ndarrai": [0, 1, 2, 3, 4, 5, 6, 10, 15, 18], "nearest": 0, "nearest_neighbor_interact": 0, "need": [0, 8, 15, 17], "neg": 0, "neglig": 4, "neighbor": 0, "nelec": [0, 1, 4, 6, 7, 8, 10, 11, 12, 13, 15, 18], "nelectron": [15, 18], "neq": [0, 1, 4], "nest": 2, "network": 15, "new": [0, 10, 13], "newli": 0, "nfev": [3, 12, 15], "nit": [12, 15], "njev": [12, 15], "nlinop": [3, 15], "nn": 0, "nocc": [0, 5], "noisi": 15, "non": 15, "none": [0, 1, 2, 3, 4, 5, 6], "nonzero": [0, 2, 15], "norb": [0, 1, 4, 5, 6, 7, 8, 10, 11, 12, 13, 15, 18], "norb_rang": 6, "norm": [0, 3, 15], "normal": [0, 13], "normal_ord": [0, 7, 13], "note": [0, 2, 3, 11, 13], "notebook": 17, "notic": 15, "notimplementederror": 4, "now": [8, 18], "np": [0, 5, 6, 8, 10, 12, 15, 18], "num_op_sum_linop": [1, 7], "number": [0, 1, 2, 3, 4, 5, 6, 8, 10, 11, 12, 13, 15, 16, 18], "number_oper": [0, 7], "numer": [0, 2, 13], "numpi": [0, 2, 6, 8, 10, 11, 12, 15, 18], "o": [0, 12], "o_1": 0, "o_2": 0, "o_k": 0, "obj": 0, "object": [0, 2, 3, 8, 13, 15], "obtain": [0, 8, 10, 15, 18], "occ_a": 6, "occ_b": 6, "occup": [0, 10, 11, 18], "occupi": [0, 5, 6, 11, 18], "occupied_orbit": 0, "often": 15, "onc": [10, 17], "one": [0, 1, 2, 4, 5, 8, 11, 12, 15, 17, 18], "one_body_basis_chang": 18, "one_body_energi": 18, "one_body_integr": 0, "one_body_linop": [1, 7], "one_body_squar": [0, 7], "one_body_tensor": [0, 7, 8, 18], "one_hot": [0, 7], "one_rdm": 0, "ones": 8, "onli": [0, 2, 10, 15, 17], "onsit": 0, "onto": 13, "op": [0, 13], "op1": [0, 13], "op2": [0, 13], "op3": 13, "op4": 13, "openbla": 17, "oper": [0, 1, 2, 3, 4, 10, 12, 13, 15, 17, 19], "optim": [0, 2, 7, 12], "optimize_hyperparamet": 3, "optimize_hyperparameters_arg": 3, "optimizeresult": [3, 15], "option": [0, 1, 2, 3, 8, 12, 15, 17], "orb": [0, 7, 13], "orbit": [0, 1, 2, 4, 5, 6, 8, 9, 11, 13, 15, 18], "orbital_rot": [0, 1, 4, 7, 10, 11, 18], "orbital_symmetri": [0, 7], "orbitalrotationjw": [4, 7], "order": [0, 4, 8, 11, 13, 15, 18], "origin": [0, 2, 18], "orthogon": [2, 5], "other": [0, 11, 15], "otherwis": 0, "our": [15, 18], "out": [2, 16, 18], "output": [0, 3, 15, 18], "over": 0, "overal": 3, "overrid": [0, 2], "overwritten": 0, "p": [0, 2, 8, 15, 18], "packag": 17, "pacman": 17, "page": [8, 10, 11], "pair": [0, 2, 6], "parallel": [2, 15], "param": 0, "paramet": [0, 1, 2, 3, 4, 5, 6, 12, 15], "params_to_vec": [3, 15], "part": [0, 10, 11], "particl": [0, 6, 10, 13, 16], "pass": [0, 2, 4, 8, 10, 11, 13, 15], "pauli": 0, "perform": [0, 2, 3, 8, 10, 18], "period": 0, "permut": [0, 2], "persist": 17, "ph": 5, "phase": [0, 2, 6], "phi": [0, 2, 6], "phi_0": 15, "pi": [0, 12], "piec": [8, 13], "pip": 16, "pivot": 2, "pk": 2, "place": [0, 1, 4, 13, 15, 17], "plain": 11, "pmatrix": [0, 2], "posit": [2, 3, 11, 12], "possibl": [0, 2, 6, 16], "possibli": [0, 15], "potenti": 0, "power": 0, "pq": [0, 2, 8, 18], "pqr": [0, 2, 8, 18], "pre": 15, "precis": [6, 15], "prepar": 0, "present": 3, "preserv": 13, "previou": 15, "previous": 11, "print": [0, 6, 11, 12, 13, 15, 18], "probabl": 0, "problem": 3, "processor": 15, "prod_": [0, 4, 15], "prod_k": 18, "prod_state_sum": 0, "product": [0, 11, 13, 18], "productstatesum": [0, 7], "programmat": 13, "project": 3, "properti": [0, 2, 10], "proport": 0, "protocol": 0, "provid": [8, 15, 17], "pseudorandom": [0, 5, 6], "psi": [0, 15], "py": 8, "pypi": 17, "pyscf": [0, 4, 11, 12, 15, 18], "q": [0, 8, 18], "qdrift": 0, "qi": 0, "qiskit": [7, 16, 17], "qiskit_vec_to_ffsim_vec": [4, 7], "qk": 2, "quadrat": [9, 18], "qualnam": 0, "quantifi": 2, "quantiti": 0, "quantum": [0, 4, 11, 15, 16, 18], "qubit": [0, 4, 15], "r": [0, 2, 8, 18], "radius_1": 12, "radius_2": 12, "rais": [0, 2, 4, 6], "random": [0, 6, 7, 8, 11, 12, 13], "random_antihermitian": [5, 7], "random_hermitian": [5, 7], "random_molecular_hamiltonian": [5, 7], "random_nelec": [6, 7], "random_occupied_orbit": [6, 7], "random_orthogon": [5, 7], "random_real_symmetric_matrix": [5, 7, 8], "random_special_orthogon": [5, 7], "random_statevector": [5, 7, 13], "random_t2_amplitud": [5, 7], "random_two_body_tensor": [5, 7, 8], "random_unitari": [5, 7, 11], "rang": [0, 6, 11, 12, 15, 18], "rangl": [0, 11, 15], "rank": [0, 2, 5], "rather": [0, 10], "rdm": [0, 7], "rdm1": 0, "rdm2": 0, "rdm3": 0, "rdm4": 0, "reach": 15, "real": [0, 1, 2, 3, 4, 5, 6, 8, 10, 15, 18], "realucjoper": [0, 7], "reason": 10, "recal": 18, "recommend": [13, 16], "reconstruct": [0, 2], "recover": 0, "reduc": [0, 2], "reduced_matrix": [2, 7], "reduced_matrix_product_st": [0, 7], "redund": 15, "refer": [0, 2, 3, 5, 10, 11, 15, 16], "reference_occup": [0, 12], "reference_occupations_spati": 12, "reference_st": 15, "regular": [3, 15], "rel": [0, 2, 6], "relat": [10, 15], "releas": 16, "reorder": 0, "repeatedli": 10, "repetit": [0, 15], "repositori": 17, "repr": 13, "repres": [0, 2, 3, 8, 11, 13, 15], "represent": [0, 1, 2, 11, 13], "reproduc": 18, "requir": [0, 8, 11, 15, 17], "reshap": 11, "resourc": 16, "respect": [0, 2, 3], "rest": [0, 18], "result": [0, 1, 2, 3, 5, 8, 12, 15, 18], "return": [0, 1, 2, 3, 4, 5, 6, 10, 12, 13, 15, 18], "return_lower_rank": 0, "rewrit": 0, "rewritten": 10, "rhf": [0, 15], "right": [0, 4, 10, 11, 13], "rng": [8, 12], "root": 0, "rotat": [0, 1, 2, 4, 7, 9, 11, 15, 18], "rotated_vec": 11, "routin": [2, 8, 13], "row": [0, 11], "rtol": [0, 2, 4, 6], "rtype": 2, "run": [0, 4, 7, 15, 16, 17], "run_ccsd": [0, 7], "run_fci": [0, 7, 12, 15], "run_mp2": [0, 7], "rung": 15, "rust": 17, "rvert": 0, "s_": [0, 11], "sa": 8, "same": [0, 8, 10, 11, 15], "sampl": [0, 5, 6, 8], "satisfi": [10, 13, 17], "save": [15, 17], "scalar": [0, 13], "scale": 18, "scf": [0, 7, 12, 15, 18], "scf_func": 0, "scipi": [0, 2, 3, 12, 13, 15, 18], "scipy_optimize_minimize_arg": 3, "search": 11, "second": [0, 2, 12, 18], "sector": 0, "see": [0, 2, 4, 11, 16, 17], "seed": [0, 5, 6, 8, 11], "select": 3, "separ": 11, "sequenc": [0, 2], "seri": 2, "set": [0, 2, 10, 15, 18], "setup": 15, "sever": 8, "shape": [0, 2, 5, 15, 18], "share": 15, "short": 15, "should": [0, 2, 4, 5, 6, 8, 10, 17, 18], "show": [12, 13, 15, 18], "shown": 13, "side": 0, "sigma": [0, 1, 4, 8, 10, 15, 18], "sign": 0, "signatur": 3, "similar": 15, "similarli": [0, 18], "simpl": 17, "simpler": 0, "simpli": 11, "simul": [0, 10, 11, 14, 16, 19], "simulate_qdrift_double_factor": [0, 7], "simulate_trotter_double_factor": [0, 7, 18], "simulate_trotter_step_double_factor": 18, "sin": [0, 12], "sinc": [0, 2, 10, 15], "singl": [0, 18], "singlefactorizedhamiltonian": [0, 7], "site": 0, "size": [3, 12], "slater": [0, 18], "slater_determin": [0, 7], "slater_determinant_rdm": [0, 7], "slice": 2, "small": [2, 15], "smaller": [0, 2, 13, 18], "so": [0, 2, 10, 13, 15, 17, 18], "softwar": [0, 16], "solv": 3, "some": [0, 2, 6, 8, 11, 13, 15], "sometim": [0, 11], "somewhat": 15, "sourc": [0, 1, 2, 3, 4, 5, 6, 16], "space": [0, 8, 11, 12, 15, 18], "span": [0, 2], "spars": [8, 13, 18], "sparsiti": 15, "spatial": [0, 1, 4, 6, 8, 10, 11, 13, 15, 18], "special": [2, 5, 16], "specif": 11, "specifi": [0, 2, 3, 6, 8, 15], "spectral": 0, "speed": 3, "spin": [0, 1, 4, 6, 7, 10, 11, 13, 15, 16], "spin_squar": [0, 7], "spin_sum": 0, "split": 18, "squar": [0, 2, 15], "standard": 15, "standard_norm": 8, "star": 2, "start": [0, 16], "state": [0, 1, 3, 5, 7, 8, 9, 10, 12, 15, 16, 18], "statevector": [0, 4], "static": 0, "statu": [12, 15], "step": [0, 10, 18], "step_tim": 18, "still": [0, 15], "sto": [0, 12, 15, 18], "stop": [12, 15], "store": [0, 2, 8, 15, 18], "store_fci_vec": 0, "store_t1": 0, "store_t2": 0, "str": [0, 2, 6], "straightforward": 2, "strength": 0, "stretch": [15, 18], "strictli": 3, "string": [0, 11, 13], "structur": 0, "subdirectori": 17, "subroutin": 10, "subspac": [0, 2, 13], "subsystem": [11, 17], "subtract": [0, 13], "success": [12, 15], "sudo": 17, "sum": [0, 1, 4, 18], "sum_": [0, 1, 2, 4, 8, 10, 15, 18], "sum_j": 10, "sum_k": [10, 18], "sum_t": 0, "summat": 0, "support": [0, 2, 8, 11, 13, 17], "supportsapplyunitari": [0, 7], "supportsapproximateequ": [0, 7], "supportsfermionoper": [0, 7], "supportslinearoper": [0, 7], "supportstrac": [0, 7], "suzuki": 0, "swap": 15, "symmetr": [0, 1, 2, 4, 5, 15, 18], "symmetri": [0, 7, 10, 12, 15, 16, 18], "system": [10, 11, 17], "t": [0, 2, 4, 10, 16, 18], "t1": [0, 15], "t2": [0, 2, 5, 15], "t2_amplitud": 2, "t_": 2, "tabl": [0, 13], "take": [0, 3, 15], "taken": 15, "target": 2, "target_orb": 0, "tau": [0, 1, 4, 8, 15, 18], "taylor": 2, "tensor": [0, 1, 2, 5, 8, 12, 15, 18], "term": [0, 1, 2, 4, 5, 13, 15, 18], "test": [7, 18], "text": [0, 8, 18], "th": [2, 10], "than": [0, 10, 15, 16], "thei": [0, 8, 10, 13, 15], "them": [11, 15], "therefor": 2, "theta": [0, 12], "thi": [0, 2, 4, 8, 10, 11, 12, 15, 16, 17, 18], "think": [2, 18], "those": 3, "three": [8, 13], "threshold": [0, 2, 3], "time": [0, 2, 3, 4, 8, 11, 18], "titl": 16, "tmp": 8, "to_number_represent": [0, 7], "to_paramet": [0, 7, 15], "to_t_amplitud": [0, 7], "to_z_represent": [0, 7], "tol": [0, 2], "toler": [0, 2, 6, 15], "too": 2, "topologi": 15, "total": [0, 12, 15, 18], "trace": [0, 7, 8, 18], "tracea": [8, 18], "trajectori": 0, "transform": [0, 1, 4], "transformationpass": 4, "treat": 0, "triangl": 15, "trianglular": [0, 2], "triangular": [0, 2], "triplet": 6, "trotter": [0, 19], "true": [0, 2, 3, 4, 6, 13], "truncat": 15, "tunnel": 0, "tupl": [0, 1, 2, 4, 6, 10, 13, 18], "tutori": [16, 18], "two": [0, 2, 5, 8, 11, 12, 15, 17, 18], "two_body_integr": [0, 7], "two_body_tensor": [0, 2, 7, 8, 18], "type": [0, 1, 2, 3, 4, 5, 6, 17], "typic": 0, "u": [0, 1, 2, 4], "u_": 0, "ubuntu": 17, "ucj": 0, "ucj_oper": 4, "ucjoper": [0, 4, 7, 15], "ucjoperatorjw": [4, 7], "under": [0, 4], "uniform": [0, 5, 12], "unimpl": 4, "union": 2, "unit": 2, "unitari": [0, 1, 2, 4, 5, 10, 11, 14, 18], "univers": 2, "unlik": 0, "unord": 0, "untouch": 0, "up": [0, 3, 6, 11, 17], "updat": [0, 18], "upon": 13, "upper": [0, 2, 15], "url": 16, "us": [0, 1, 2, 3, 4, 5, 8, 10, 11, 14, 15, 16, 18], "usag": [0, 2, 13], "user": 17, "userwarn": 8, "usual": 0, "util": [2, 5, 6], "v": 0, "v_i": 2, "v_j": 2, "valid": [0, 4, 5, 6], "valu": [0, 1, 2, 3, 6, 8, 15, 18], "valueerror": [0, 2], "vari": 0, "variat": [0, 3, 15], "vdot": [15, 18], "vec": [0, 1, 2, 4, 8, 10, 11, 13, 18], "vec_a": 0, "vec_b": 0, "vector": [0, 1, 2, 3, 4, 5, 8, 9, 10, 12, 13, 15, 16], "verbos": 6, "verifi": 2, "via": [0, 18], "view": 13, "volum": 17, "w": [0, 10, 15, 18], "w_k": [0, 15], "wa": [0, 3], "wai": 15, "warn": [8, 16], "water": 12, "wavefunct": [3, 15], "we": [0, 2, 8, 10, 11, 12, 13, 15, 16, 17, 18], "web": 17, "weight": 11, "well": [0, 3, 11, 16, 17], "when": [0, 3, 4, 8, 11, 13, 15, 16, 18], "whenev": 0, "where": [0, 1, 2, 3, 4, 10, 11, 15, 17, 18], "whether": [0, 1, 2, 3, 13], "which": [0, 2, 4, 5, 8, 10, 11, 13, 15, 17, 18], "while": 15, "whose": [0, 2, 11], "width": 5, "wigner": [0, 4], "william": 2, "window": [16, 17], "wise": 2, "with_final_orbital_rot": 0, "within": [0, 2, 13], "without": [15, 16], "won": 16, "word": [0, 15], "work": [8, 16, 17], "would": [11, 15], "write": 18, "wrote": 18, "wsl": 17, "x": [3, 12, 15], "x0": [3, 12, 15], "yaml": 17, "yet": 8, "yield": [0, 2, 12, 15, 18], "you": [8, 11, 15, 16, 17], "your": 17, "z": [0, 1, 2, 4, 10, 13, 15, 16], "z_": [0, 1, 4], "z_represent": [0, 1, 4, 7], "zero": [0, 2, 8], "zip": [0, 12, 15, 18], "\u03c8": [15, 18]}, "titles": ["ffsim", "ffsim.contract", "ffsim.linalg", "ffsim.optimize", "ffsim.qiskit", "ffsim.random", "ffsim.testing", "API Reference", "Hamiltonians", "Explanations", "Orbital rotations and quadratic Hamiltonians", "State vectors and gates", "How to simulate entanglement forging", "How to use the FermionOperator class", "How-to guides", "How to simulate the local unitary cluster Jastrow (LUCJ) ansatz", "ffsim", "Installation", "Diagonal Coulomb operators and double-factorized Trotter simulation", "Tutorials"], "titleterms": {"The": 15, "action": 8, "ansatz": 15, "api": 7, "background": 18, "brief": 18, "cite": 16, "class": 13, "cluster": 15, "contract": 1, "coulomb": 18, "data": 8, "develop": 16, "diagon": 18, "docker": 17, "doubl": 18, "entangl": 12, "evolut": 10, "explan": 9, "factor": 18, "fermionoper": 13, "ffsim": [0, 1, 2, 3, 4, 5, 6, 16], "forg": 12, "formula": 18, "from": 17, "gate": 11, "guid": [14, 16], "hamiltonian": [8, 10, 18], "how": [12, 13, 14, 15], "implement": 18, "instal": [16, 17], "jastrow": 15, "linalg": 2, "linear": 15, "linearoper": 8, "local": 15, "lucj": 15, "method": 15, "molecular": 18, "next": 16, "oper": [8, 18], "optim": [3, 15], "orbit": 10, "pip": 17, "qiskit": 4, "quadrat": 10, "random": 5, "refer": 7, "represent": [8, 18], "rotat": 10, "scipi": 8, "simul": [12, 15, 18], "sourc": 17, "state": 11, "step": 16, "suzuki": 18, "test": 6, "time": 10, "trotter": 18, "tutori": 19, "ucj": 15, "unitari": 15, "us": [13, 17], "vector": 11, "via": 8, "within": 17}})
\ No newline at end of file
+Search.setIndex({"alltitles": {"API Reference": [[7, "api-reference"]], "Brief background on Trotter-Suzuki formulas": [[18, "Brief-background-on-Trotter-Suzuki-formulas"]], "Citing ffsim": [[16, "citing-ffsim"]], "Data representation": [[8, "Data-representation"]], "Developer guide": [[16, "developer-guide"]], "Diagonal Coulomb operators and double-factorized Trotter simulation": [[18, "Diagonal-Coulomb-operators-and-double-factorized-Trotter-simulation"]], "Double-factorized representation of the molecular Hamiltonian": [[18, "Double-factorized-representation-of-the-molecular-Hamiltonian"]], "Explanations": [[9, "explanations"]], "Gates": [[11, "Gates"]], "Hamiltonians": [[8, "Hamiltonians"]], "How to simulate entanglement forging": [[12, "How-to-simulate-entanglement-forging"]], "How to simulate the local unitary cluster Jastrow (LUCJ) ansatz": [[15, "How-to-simulate-the-local-unitary-cluster-Jastrow-(LUCJ)-ansatz"]], "How to use the FermionOperator class": [[13, "How-to-use-the-FermionOperator-class"]], "How-to guides": [[14, "how-to-guides"]], "Implementing Trotter simulation of the double-factorized Hamiltonian": [[18, "Implementing-Trotter-simulation-of-the-double-factorized-Hamiltonian"]], "Install from source": [[17, "install-from-source"]], "Installation": [[16, "installation"], [17, "installation"]], "Next steps": [[16, "next-steps"]], "Operator action via SciPy LinearOperators": [[8, "Operator-action-via-SciPy-LinearOperators"]], "Optimize with the linear method": [[15, "Optimize-with-the-linear-method"]], "Orbital rotations": [[10, "Orbital-rotations"]], "Orbital rotations and quadratic Hamiltonians": [[10, "Orbital-rotations-and-quadratic-Hamiltonians"]], "Pip install": [[17, "pip-install"]], "State vectors": [[11, "State-vectors"]], "State vectors and gates": [[11, "State-vectors-and-gates"]], "The local unitary cluster Jastrow (LUCJ) ansatz": [[15, "The-local-unitary-cluster-Jastrow-(LUCJ)-ansatz"]], "The unitary cluster Jastrow (UCJ) ansatz": [[15, "The-unitary-cluster-Jastrow-(UCJ)-ansatz"]], "Time evolution by a quadratic Hamiltonian": [[10, "Time-evolution-by-a-quadratic-Hamiltonian"]], "Trotter simulation of the double-factorized Hamiltonian": [[18, "Trotter-simulation-of-the-double-factorized-Hamiltonian"]], "Tutorials": [[19, "tutorials"]], "Use within Docker": [[17, "use-within-docker"]], "ffsim": [[0, "module-ffsim"], [16, "ffsim"]], "ffsim.contract": [[1, "module-ffsim.contract"]], "ffsim.linalg": [[2, "module-ffsim.linalg"]], "ffsim.optimize": [[3, "module-ffsim.optimize"]], "ffsim.qiskit": [[4, "module-ffsim.qiskit"]], "ffsim.random": [[5, "module-ffsim.random"]], "ffsim.testing": [[6, "module-ffsim.testing"]]}, "docnames": ["api/ffsim", "api/ffsim.contract", "api/ffsim.linalg", "api/ffsim.optimize", "api/ffsim.qiskit", "api/ffsim.random", "api/ffsim.testing", "api/index", "explanations/hamiltonians", "explanations/index", "explanations/orbital-rotation", "explanations/state-vectors-and-gates", "how-to-guides/entanglement-forging", "how-to-guides/fermion-operator", "how-to-guides/index", "how-to-guides/lucj", "index", "install", "tutorials/double-factorized", "tutorials/index"], "envversion": {"nbsphinx": 4, "sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["api/ffsim.rst", "api/ffsim.contract.rst", "api/ffsim.linalg.rst", "api/ffsim.optimize.rst", "api/ffsim.qiskit.rst", "api/ffsim.random.rst", "api/ffsim.testing.rst", "api/index.md", "explanations/hamiltonians.ipynb", "explanations/index.md", "explanations/orbital-rotation.ipynb", "explanations/state-vectors-and-gates.ipynb", "how-to-guides/entanglement-forging.ipynb", "how-to-guides/fermion-operator.ipynb", "how-to-guides/index.md", "how-to-guides/lucj.ipynb", "index.md", "install.md", "tutorials/double-factorized.ipynb", "tutorials/index.md"], "indexentries": {"action (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.action", false]], "active_space (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.active_space", false]], "alpha (ffsim.spin attribute)": [[0, "ffsim.Spin.ALPHA", false]], "alpha_and_beta (ffsim.spin attribute)": [[0, "ffsim.Spin.ALPHA_AND_BETA", false]], "apply_diag_coulomb_evolution() (in module ffsim)": [[0, "ffsim.apply_diag_coulomb_evolution", false]], "apply_fsim_gate() (in module ffsim)": [[0, "ffsim.apply_fsim_gate", false]], "apply_givens_rotation() (in module ffsim)": [[0, "ffsim.apply_givens_rotation", false]], "apply_hop_gate() (in module ffsim)": [[0, "ffsim.apply_hop_gate", false]], "apply_matrix_to_slices() (in module ffsim.linalg)": [[2, "ffsim.linalg.apply_matrix_to_slices", false]], "apply_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_interaction", false]], "apply_num_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_num_interaction", false]], "apply_num_op_prod_interaction() (in module ffsim)": [[0, "ffsim.apply_num_op_prod_interaction", false]], "apply_num_op_sum_evolution() (in module ffsim)": [[0, "ffsim.apply_num_op_sum_evolution", false]], "apply_on_site_interaction() (in module ffsim)": [[0, "ffsim.apply_on_site_interaction", false]], "apply_on_site_num_num_interaction() (in module ffsim)": [[0, "ffsim.apply_on_site_num_num_interaction", false]], "apply_orbital_rotation() (in module ffsim)": [[0, "ffsim.apply_orbital_rotation", false]], "apply_tunneling_interaction() (in module ffsim)": [[0, "ffsim.apply_tunneling_interaction", false]], "apply_unitary() (in module ffsim)": [[0, "ffsim.apply_unitary", false]], "approx_eq() (in module ffsim)": [[0, "ffsim.approx_eq", false]], "assert_allclose_up_to_global_phase() (in module ffsim.testing)": [[6, "ffsim.testing.assert_allclose_up_to_global_phase", false]], "atom (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.atom", false]], "basis (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.basis", false]], "beta (ffsim.spin attribute)": [[0, "ffsim.Spin.BETA", false]], "c (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.c", false]], "ccsd_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_energy", false]], "ccsd_t1 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_t1", false]], "ccsd_t2 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_t2", false]], "coeffs (ffsim.productstatesum attribute)": [[0, "ffsim.ProductStateSum.coeffs", false]], "conserves_particle_number() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_particle_number", false]], "conserves_spin_z() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_spin_z", false]], "constant (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.constant", false]], "constant (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.constant", false]], "constant (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.constant", false]], "contract_diag_coulomb() (in module ffsim.contract)": [[1, "ffsim.contract.contract_diag_coulomb", false]], "contract_num_op_sum() (in module ffsim.contract)": [[1, "ffsim.contract.contract_num_op_sum", false]], "contract_one_body() (in module ffsim.contract)": [[1, "ffsim.contract.contract_one_body", false]], "core_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.core_energy", false]], "cre() (in module ffsim)": [[0, "ffsim.cre", false]], "cre_a() (in module ffsim)": [[0, "ffsim.cre_a", false]], "cre_b() (in module ffsim)": [[0, "ffsim.cre_b", false]], "des() (in module ffsim)": [[0, "ffsim.des", false]], "des_a() (in module ffsim)": [[0, "ffsim.des_a", false]], "des_b() (in module ffsim)": [[0, "ffsim.des_b", false]], "diag_coulomb_linop() (in module ffsim.contract)": [[1, "ffsim.contract.diag_coulomb_linop", false]], "diag_coulomb_mats (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.diag_coulomb_mats", false]], "diag_coulomb_mats_alpha_alpha (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.diag_coulomb_mats_alpha_alpha", false]], "diag_coulomb_mats_alpha_alpha (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.diag_coulomb_mats_alpha_alpha", false]], "diag_coulomb_mats_alpha_beta (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.diag_coulomb_mats_alpha_beta", false]], "diag_coulomb_mats_alpha_beta (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.diag_coulomb_mats_alpha_beta", false]], "diagcoulombevolutionjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW", false]], "dim() (in module ffsim)": [[0, "ffsim.dim", false]], "dims() (in module ffsim)": [[0, "ffsim.dims", false]], "dipole_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.dipole_integrals", false]], "double_factorized() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized", false]], "double_factorized_t2() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized_t2", false]], "doublefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.DoubleFactorizedHamiltonian", false]], "dropnegligible (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DropNegligible", false]], "expectation_one_body_power() (in module ffsim)": [[0, "ffsim.expectation_one_body_power", false]], "expectation_one_body_product() (in module ffsim)": [[0, "ffsim.expectation_one_body_product", false]], "expectation_product_state() (ffsim.singlefactorizedhamiltonian method)": [[0, "ffsim.SingleFactorizedHamiltonian.expectation_product_state", false]], "expm_multiply_taylor() (in module ffsim.linalg)": [[2, "ffsim.linalg.expm_multiply_taylor", false]], "fci_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.fci_energy", false]], "fci_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.fci_vec", false]], "fermi_hubbard_1d() (in module ffsim)": [[0, "ffsim.fermi_hubbard_1d", false]], "fermion_operator() (in module ffsim)": [[0, "ffsim.fermion_operator", false]], "fermionaction (class in ffsim)": [[0, "ffsim.FermionAction", false]], "fermionoperator (class in ffsim)": [[0, "ffsim.FermionOperator", false]], "ffsim": [[0, "module-ffsim", false]], "ffsim.contract": [[1, "module-ffsim.contract", false]], "ffsim.linalg": [[2, "module-ffsim.linalg", false]], "ffsim.optimize": [[3, "module-ffsim.optimize", false]], "ffsim.qiskit": [[4, "module-ffsim.qiskit", false]], "ffsim.random": [[5, "module-ffsim.random", false]], "ffsim.testing": [[6, "module-ffsim.testing", false]], "ffsim_vec_to_qiskit_vec() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.ffsim_vec_to_qiskit_vec", false]], "final_orbital_rotation (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.final_orbital_rotation", false]], "from_mole() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_mole", false]], "from_molecular_hamiltonian() (ffsim.doublefactorizedhamiltonian static method)": [[0, "ffsim.DoubleFactorizedHamiltonian.from_molecular_hamiltonian", false]], "from_molecular_hamiltonian() (ffsim.singlefactorizedhamiltonian static method)": [[0, "ffsim.SingleFactorizedHamiltonian.from_molecular_hamiltonian", false]], "from_parameters() (ffsim.realucjoperator static method)": [[0, "ffsim.RealUCJOperator.from_parameters", false]], "from_parameters() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.from_parameters", false]], "from_scf() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_scf", false]], "from_t_amplitudes() (ffsim.realucjoperator static method)": [[0, "ffsim.RealUCJOperator.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.from_t_amplitudes", false]], "generate_norb_nelec() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nelec", false]], "generate_norb_nelec_spin() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nelec_spin", false]], "generate_norb_spin() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_spin", false]], "givens_decomposition() (in module ffsim.linalg)": [[2, "ffsim.linalg.givens_decomposition", false]], "givensrotation (class in ffsim.linalg)": [[2, "ffsim.linalg.GivensRotation", false]], "hamiltonian (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.hamiltonian", false]], "hartree_fock_state() (in module ffsim)": [[0, "ffsim.hartree_fock_state", false]], "hf_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_energy", false]], "hopgateansatzoperator (class in ffsim)": [[0, "ffsim.HopGateAnsatzOperator", false]], "i (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.i", false]], "indices_to_strings() (in module ffsim)": [[0, "ffsim.indices_to_strings", false]], "init_cache() (in module ffsim)": [[0, "ffsim.init_cache", false]], "inverse() (ffsim.qiskit.diagcoulombevolutionjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW.inverse", false]], "inverse() (ffsim.qiskit.orbitalrotationjw method)": [[4, "ffsim.qiskit.OrbitalRotationJW.inverse", false]], "is_antihermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_antihermitian", false]], "is_hermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_hermitian", false]], "is_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_orthogonal", false]], "is_real_symmetric() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_real_symmetric", false]], "is_special_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_special_orthogonal", false]], "is_unitary() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_unitary", false]], "j (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.j", false]], "linear_operator() (in module ffsim)": [[0, "ffsim.linear_operator", false]], "lup() (in module ffsim.linalg)": [[2, "ffsim.linalg.lup", false]], "many_body_order() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.many_body_order", false]], "match_global_phase() (in module ffsim.linalg)": [[2, "ffsim.linalg.match_global_phase", false]], "mergeorbitalrotations (class in ffsim.qiskit)": [[4, "ffsim.qiskit.MergeOrbitalRotations", false]], "minimize_linear_method() (in module ffsim.optimize)": [[3, "ffsim.optimize.minimize_linear_method", false]], "mo_coeff (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mo_coeff", false]], "mo_occ (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mo_occ", false]], "modified_cholesky() (in module ffsim.linalg)": [[2, "ffsim.linalg.modified_cholesky", false]], "module": [[0, "module-ffsim", false], [1, "module-ffsim.contract", false], [2, "module-ffsim.linalg", false], [3, "module-ffsim.optimize", false], [4, "module-ffsim.qiskit", false], [5, "module-ffsim.random", false], [6, "module-ffsim.testing", false]], "mole (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.mole", false]], "moleculardata (class in ffsim)": [[0, "ffsim.MolecularData", false]], "molecularhamiltonian (class in ffsim)": [[0, "ffsim.MolecularHamiltonian", false]], "mp2_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mp2_energy", false]], "mp2_t2 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mp2_t2", false]], "multireference_state() (in module ffsim)": [[0, "ffsim.multireference_state", false]], "multireference_state_prod() (in module ffsim)": [[0, "ffsim.multireference_state_prod", false]], "n_params() (ffsim.realucjoperator static method)": [[0, "ffsim.RealUCJOperator.n_params", false]], "n_params() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.n_params", false]], "n_reps (ffsim.realucjoperator property)": [[0, "ffsim.RealUCJOperator.n_reps", false]], "n_reps (ffsim.ucjoperator property)": [[0, "ffsim.UCJOperator.n_reps", false]], "nelec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.nelec", false]], "norb (ffsim.doublefactorizedhamiltonian property)": [[0, "ffsim.DoubleFactorizedHamiltonian.norb", false]], "norb (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.norb", false]], "norb (ffsim.molecularhamiltonian property)": [[0, "ffsim.MolecularHamiltonian.norb", false]], "norb (ffsim.realucjoperator property)": [[0, "ffsim.RealUCJOperator.norb", false]], "norb (ffsim.singlefactorizedhamiltonian property)": [[0, "ffsim.SingleFactorizedHamiltonian.norb", false]], "norb (ffsim.ucjoperator property)": [[0, "ffsim.UCJOperator.norb", false]], "normal_ordered() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.normal_ordered", false]], "num_op_sum_linop() (in module ffsim.contract)": [[1, "ffsim.contract.num_op_sum_linop", false]], "number_operator() (in module ffsim)": [[0, "ffsim.number_operator", false]], "one_body_linop() (in module ffsim.contract)": [[1, "ffsim.contract.one_body_linop", false]], "one_body_squares (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.one_body_squares", false]], "one_body_tensor (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.one_body_tensor", false]], "one_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.one_body_tensor", false]], "one_hot() (in module ffsim)": [[0, "ffsim.one_hot", false]], "orb (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.orb", false]], "orbital_rotations (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.orbital_rotations", false]], "orbital_rotations (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.orbital_rotations", false]], "orbital_rotations (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.orbital_rotations", false]], "orbital_symmetries (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.orbital_symmetries", false]], "orbitalrotationjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.OrbitalRotationJW", false]], "productstatesum (class in ffsim)": [[0, "ffsim.ProductStateSum", false]], "qiskit_vec_to_ffsim_vec() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.qiskit_vec_to_ffsim_vec", false]], "random_antihermitian() (in module ffsim.random)": [[5, "ffsim.random.random_antihermitian", false]], "random_hermitian() (in module ffsim.random)": [[5, "ffsim.random.random_hermitian", false]], "random_molecular_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_molecular_hamiltonian", false]], "random_nelec() (in module ffsim.testing)": [[6, "ffsim.testing.random_nelec", false]], "random_occupied_orbitals() (in module ffsim.testing)": [[6, "ffsim.testing.random_occupied_orbitals", false]], "random_orthogonal() (in module ffsim.random)": [[5, "ffsim.random.random_orthogonal", false]], "random_real_symmetric_matrix() (in module ffsim.random)": [[5, "ffsim.random.random_real_symmetric_matrix", false]], "random_special_orthogonal() (in module ffsim.random)": [[5, "ffsim.random.random_special_orthogonal", false]], "random_statevector() (in module ffsim.random)": [[5, "ffsim.random.random_statevector", false]], "random_t2_amplitudes() (in module ffsim.random)": [[5, "ffsim.random.random_t2_amplitudes", false]], "random_two_body_tensor() (in module ffsim.random)": [[5, "ffsim.random.random_two_body_tensor", false]], "random_unitary() (in module ffsim.random)": [[5, "ffsim.random.random_unitary", false]], "rdm() (in module ffsim)": [[0, "ffsim.rdm", false]], "realucjoperator (class in ffsim)": [[0, "ffsim.RealUCJOperator", false]], "reduced_matrix() (in module ffsim.linalg)": [[2, "ffsim.linalg.reduced_matrix", false]], "reduced_matrix_product_states() (ffsim.singlefactorizedhamiltonian method)": [[0, "ffsim.SingleFactorizedHamiltonian.reduced_matrix_product_states", false]], "rotated() (ffsim.molecularhamiltonian method)": [[0, "ffsim.MolecularHamiltonian.rotated", false]], "run() (ffsim.qiskit.dropnegligible method)": [[4, "ffsim.qiskit.DropNegligible.run", false]], "run() (ffsim.qiskit.mergeorbitalrotations method)": [[4, "ffsim.qiskit.MergeOrbitalRotations.run", false]], "run_ccsd() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_ccsd", false]], "run_fci() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_fci", false]], "run_mp2() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_mp2", false]], "s (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.s", false]], "scf (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.scf", false]], "simulate_qdrift_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_qdrift_double_factorized", false]], "simulate_trotter_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_trotter_double_factorized", false]], "singlefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.SingleFactorizedHamiltonian", false]], "slater_determinant() (in module ffsim)": [[0, "ffsim.slater_determinant", false]], "slater_determinant_rdm() (in module ffsim)": [[0, "ffsim.slater_determinant_rdm", false]], "spin (class in ffsim)": [[0, "ffsim.Spin", false]], "spin (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.spin", false]], "spin (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.spin", false]], "spin_square() (in module ffsim)": [[0, "ffsim.spin_square", false]], "states (ffsim.productstatesum attribute)": [[0, "ffsim.ProductStateSum.states", false]], "supportsapplyunitary (class in ffsim)": [[0, "ffsim.SupportsApplyUnitary", false]], "supportsapproximateequality (class in ffsim)": [[0, "ffsim.SupportsApproximateEquality", false]], "supportsfermionoperator (class in ffsim)": [[0, "ffsim.SupportsFermionOperator", false]], "supportslinearoperator (class in ffsim)": [[0, "ffsim.SupportsLinearOperator", false]], "supportstrace (class in ffsim)": [[0, "ffsim.SupportsTrace", false]], "symmetry (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.symmetry", false]], "to_number_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_number_representation", false]], "to_parameters() (ffsim.hopgateansatzoperator method)": [[0, "ffsim.HopGateAnsatzOperator.to_parameters", false]], "to_parameters() (ffsim.realucjoperator method)": [[0, "ffsim.RealUCJOperator.to_parameters", false]], "to_parameters() (ffsim.ucjoperator method)": [[0, "ffsim.UCJOperator.to_parameters", false]], "to_t_amplitudes() (ffsim.realucjoperator method)": [[0, "ffsim.RealUCJOperator.to_t_amplitudes", false]], "to_t_amplitudes() (ffsim.ucjoperator method)": [[0, "ffsim.UCJOperator.to_t_amplitudes", false]], "to_z_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_z_representation", false]], "trace() (in module ffsim)": [[0, "ffsim.trace", false]], "two_body_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.two_body_integrals", false]], "two_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.two_body_tensor", false]], "ucjoperator (class in ffsim)": [[0, "ffsim.UCJOperator", false]], "ucjoperatorjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOperatorJW", false]], "z_representation (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.z_representation", false]]}, "objects": {"": [[0, 0, 0, "-", "ffsim"]], "ffsim": [[0, 1, 1, "", "DoubleFactorizedHamiltonian"], [0, 1, 1, "", "FermionAction"], [0, 1, 1, "", "FermionOperator"], [0, 1, 1, "", "HopGateAnsatzOperator"], [0, 1, 1, "", "MolecularData"], [0, 1, 1, "", "MolecularHamiltonian"], [0, 1, 1, "", "ProductStateSum"], [0, 1, 1, "", "RealUCJOperator"], [0, 1, 1, "", "SingleFactorizedHamiltonian"], [0, 1, 1, "", "Spin"], [0, 1, 1, "", "SupportsApplyUnitary"], [0, 1, 1, "", "SupportsApproximateEquality"], [0, 1, 1, "", "SupportsFermionOperator"], [0, 1, 1, "", "SupportsLinearOperator"], [0, 1, 1, "", "SupportsTrace"], [0, 1, 1, "", "UCJOperator"], [0, 5, 1, "", "apply_diag_coulomb_evolution"], [0, 5, 1, "", "apply_fsim_gate"], [0, 5, 1, "", "apply_givens_rotation"], [0, 5, 1, "", "apply_hop_gate"], [0, 5, 1, "", "apply_num_interaction"], [0, 5, 1, "", "apply_num_num_interaction"], [0, 5, 1, "", "apply_num_op_prod_interaction"], [0, 5, 1, "", "apply_num_op_sum_evolution"], [0, 5, 1, "", "apply_on_site_interaction"], [0, 5, 1, "", "apply_on_site_num_num_interaction"], [0, 5, 1, "", "apply_orbital_rotation"], [0, 5, 1, "", "apply_tunneling_interaction"], [0, 5, 1, "", "apply_unitary"], [0, 5, 1, "", "approx_eq"], [1, 0, 0, "-", "contract"], [0, 5, 1, "", "cre"], [0, 5, 1, "", "cre_a"], [0, 5, 1, "", "cre_b"], [0, 5, 1, "", "des"], [0, 5, 1, "", "des_a"], [0, 5, 1, "", "des_b"], [0, 5, 1, "", "dim"], [0, 5, 1, "", "dims"], [0, 5, 1, "", "expectation_one_body_power"], [0, 5, 1, "", "expectation_one_body_product"], [0, 5, 1, "", "fermi_hubbard_1d"], [0, 5, 1, "", "fermion_operator"], [0, 5, 1, "", "hartree_fock_state"], [0, 5, 1, "", "indices_to_strings"], [0, 5, 1, "", "init_cache"], [2, 0, 0, "-", "linalg"], [0, 5, 1, "", "linear_operator"], [0, 5, 1, "", "multireference_state"], [0, 5, 1, "", "multireference_state_prod"], [0, 5, 1, "", "number_operator"], [0, 5, 1, "", "one_hot"], [3, 0, 0, "-", "optimize"], [4, 0, 0, "-", "qiskit"], [5, 0, 0, "-", "random"], [0, 5, 1, "", "rdm"], [0, 5, 1, "", "simulate_qdrift_double_factorized"], [0, 5, 1, "", "simulate_trotter_double_factorized"], [0, 5, 1, "", "slater_determinant"], [0, 5, 1, "", "slater_determinant_rdm"], [0, 5, 1, "", "spin_square"], [6, 0, 0, "-", "testing"], [0, 5, 1, "", "trace"]], "ffsim.DoubleFactorizedHamiltonian": [[0, 2, 1, "", "constant"], [0, 2, 1, "", "diag_coulomb_mats"], [0, 3, 1, "", "from_molecular_hamiltonian"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_number_representation"], [0, 3, 1, "", "to_z_representation"], [0, 2, 1, "", "z_representation"]], "ffsim.FermionAction": [[0, 2, 1, "", "action"], [0, 2, 1, "", "orb"], [0, 2, 1, "", "spin"]], "ffsim.FermionOperator": [[0, 3, 1, "", "conserves_particle_number"], [0, 3, 1, "", "conserves_spin_z"], [0, 3, 1, "", "many_body_order"], [0, 3, 1, "", "normal_ordered"]], "ffsim.HopGateAnsatzOperator": [[0, 3, 1, "", "to_parameters"]], "ffsim.MolecularData": [[0, 2, 1, "", "active_space"], [0, 2, 1, "", "atom"], [0, 2, 1, "", "basis"], [0, 2, 1, "", "ccsd_energy"], [0, 2, 1, "", "ccsd_t1"], [0, 2, 1, "", "ccsd_t2"], [0, 2, 1, "", "core_energy"], [0, 2, 1, "", "dipole_integrals"], [0, 2, 1, "", "fci_energy"], [0, 2, 1, "", "fci_vec"], [0, 3, 1, "", "from_mole"], [0, 3, 1, "", "from_scf"], [0, 4, 1, "", "hamiltonian"], [0, 2, 1, "", "hf_energy"], [0, 2, 1, "", "mo_coeff"], [0, 2, 1, "", "mo_occ"], [0, 4, 1, "", "mole"], [0, 2, 1, "", "mp2_energy"], [0, 2, 1, "", "mp2_t2"], [0, 2, 1, "", "nelec"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 2, 1, "", "orbital_symmetries"], [0, 3, 1, "", "run_ccsd"], [0, 3, 1, "", "run_fci"], [0, 3, 1, "", "run_mp2"], [0, 4, 1, "", "scf"], [0, 2, 1, "", "spin"], [0, 2, 1, "", "symmetry"], [0, 2, 1, "", "two_body_integrals"]], "ffsim.MolecularHamiltonian": [[0, 2, 1, "", "constant"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 3, 1, "", "rotated"], [0, 2, 1, "", "two_body_tensor"]], "ffsim.ProductStateSum": [[0, 2, 1, "", "coeffs"], [0, 2, 1, "", "states"]], "ffsim.RealUCJOperator": [[0, 2, 1, "", "diag_coulomb_mats_alpha_alpha"], [0, 2, 1, "", "diag_coulomb_mats_alpha_beta"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"], [0, 3, 1, "", "to_t_amplitudes"]], "ffsim.SingleFactorizedHamiltonian": [[0, 2, 1, "", "constant"], [0, 3, 1, "", "expectation_product_state"], [0, 3, 1, "", "from_molecular_hamiltonian"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_squares"], [0, 2, 1, "", "one_body_tensor"], [0, 3, 1, "", "reduced_matrix_product_states"]], "ffsim.Spin": [[0, 2, 1, "", "ALPHA"], [0, 2, 1, "", "ALPHA_AND_BETA"], [0, 2, 1, "", "BETA"]], "ffsim.UCJOperator": [[0, 2, 1, "", "diag_coulomb_mats_alpha_alpha"], [0, 2, 1, "", "diag_coulomb_mats_alpha_beta"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"], [0, 3, 1, "", "to_t_amplitudes"]], "ffsim.contract": [[1, 5, 1, "", "contract_diag_coulomb"], [1, 5, 1, "", "contract_num_op_sum"], [1, 5, 1, "", "contract_one_body"], [1, 5, 1, "", "diag_coulomb_linop"], [1, 5, 1, "", "num_op_sum_linop"], [1, 5, 1, "", "one_body_linop"]], "ffsim.linalg": [[2, 1, 1, "", "GivensRotation"], [2, 5, 1, "", "apply_matrix_to_slices"], [2, 5, 1, "", "double_factorized"], [2, 5, 1, "", "double_factorized_t2"], [2, 5, 1, "", "expm_multiply_taylor"], [2, 5, 1, "", "givens_decomposition"], [2, 5, 1, "", "is_antihermitian"], [2, 5, 1, "", "is_hermitian"], [2, 5, 1, "", "is_orthogonal"], [2, 5, 1, "", "is_real_symmetric"], [2, 5, 1, "", "is_special_orthogonal"], [2, 5, 1, "", "is_unitary"], [2, 5, 1, "", "lup"], [2, 5, 1, "", "match_global_phase"], [2, 5, 1, "", "modified_cholesky"], [2, 5, 1, "", "reduced_matrix"]], "ffsim.linalg.GivensRotation": [[2, 2, 1, "", "c"], [2, 2, 1, "", "i"], [2, 2, 1, "", "j"], [2, 2, 1, "", "s"]], "ffsim.optimize": [[3, 5, 1, "", "minimize_linear_method"]], "ffsim.qiskit": [[4, 1, 1, "", "DiagCoulombEvolutionJW"], [4, 1, 1, "", "DropNegligible"], [4, 1, 1, "", "MergeOrbitalRotations"], [4, 1, 1, "", "OrbitalRotationJW"], [4, 1, 1, "", "UCJOperatorJW"], [4, 5, 1, "", "ffsim_vec_to_qiskit_vec"], [4, 5, 1, "", "qiskit_vec_to_ffsim_vec"]], "ffsim.qiskit.DiagCoulombEvolutionJW": [[4, 3, 1, "", "inverse"]], "ffsim.qiskit.DropNegligible": [[4, 3, 1, "", "run"]], "ffsim.qiskit.MergeOrbitalRotations": [[4, 3, 1, "", "run"]], "ffsim.qiskit.OrbitalRotationJW": [[4, 3, 1, "", "inverse"]], "ffsim.random": [[5, 5, 1, "", "random_antihermitian"], [5, 5, 1, "", "random_hermitian"], [5, 5, 1, "", "random_molecular_hamiltonian"], [5, 5, 1, "", "random_orthogonal"], [5, 5, 1, "", "random_real_symmetric_matrix"], [5, 5, 1, "", "random_special_orthogonal"], [5, 5, 1, "", "random_statevector"], [5, 5, 1, "", "random_t2_amplitudes"], [5, 5, 1, "", "random_two_body_tensor"], [5, 5, 1, "", "random_unitary"]], "ffsim.testing": [[6, 5, 1, "", "assert_allclose_up_to_global_phase"], [6, 5, 1, "", "generate_norb_nelec"], [6, 5, 1, "", "generate_norb_nelec_spin"], [6, 5, 1, "", "generate_norb_spin"], [6, 5, 1, "", "random_nelec"], [6, 5, 1, "", "random_occupied_orbitals"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "method", "Python method"], "4": ["py", "property", "Python property"], "5": ["py", "function", "Python function"]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:property", "5": "py:function"}, "terms": {"": [0, 2, 4, 7, 8, 11, 12, 13, 15, 17, 18], "0": [0, 2, 3, 6, 8, 11, 12, 13, 15, 18], "00": [12, 15], "0000000": [12, 15], "0006148678602191823": 15, "001011": [0, 11], "001101": [0, 11], "001110": [0, 11], "0033002348706717304": 15, "007483502338004985": 15, "007688124706737847": 15, "01": [12, 15], "010011": [0, 11], "010101": [0, 11], "010110": [0, 11], "010438531340874496": 15, "012e": 12, "02": [12, 15], "02242": 2, "02459434j": 11, "02612332292389617": 15, "02625": 2, "026774080397317174": 15, "02998708j": 11, "03": [12, 15], "03101213j": 11, "03525116j": 11, "04": [12, 15], "043e": 15, "04824536314851349": 15, "05": [0, 2, 3, 4, 15], "0501985117388104": 15, "0609050": 5, "0625": [0, 13], "06273307": 11, "06551571": 11, "06677383j": 11, "06844774j": 11, "07": 6, "073e": 15, "07453016": 13, "079e": 15, "08": [0, 2, 3, 4], "08957": 2, "09723851": 11, "0j": 13, "1": [0, 2, 3, 5, 8, 10, 11, 12, 13, 15, 18], "10": 18, "100": 12, "1000": 3, "100011": [0, 11], "100101": [0, 11], "100110": [0, 11], "10200987j": 13, "104": 12, "1102529j": 11, "11157654": 11, "112": 12, "119e": 12, "12": [2, 13], "12204343": 11, "1234": [8, 11, 12], "125": [0, 13], "12j": 13, "13113848": 11, "13327423j": 11, "13957088j": 11, "15": 12, "15624569": 11, "15828306": 11, "15x15": 12, "161e": 15, "164e": 15, "1711": 2, "17276745j": 11, "17558331": 11, "180": 12, "1808": 2, "18j": 13, "192e": 12, "1e": [0, 2, 3, 4, 6], "1j": [0, 8, 13, 18], "2": [0, 1, 2, 4, 5, 8, 11, 12, 13, 15, 18], "20656273321634": 12, "206e": 15, "20835741": 11, "20881506": 11, "2104": 2, "2190712273": 8, "21928194": 11, "21984743e": 13, "22392824": 11, "227e": 15, "23": 12, "23550198": 11, "23611476": 11, "25": [0, 13], "257e": 15, "25j": [0, 13], "29821173j": 11, "299e": 15, "2j": [0, 13], "2n": 11, "3": [0, 2, 4, 8, 11, 12, 13, 15, 18], "30052742j": 11, "31980058j": 11, "335e": 15, "33731417j": 11, "36730125j": 11, "3714141": 11, "377e": 15, "379e": 15, "39": [11, 13], "39075171": 11, "397e": 15, "3j": 13, "4": [0, 2, 8, 11, 12, 13, 15, 18], "423": 15, "432e": 15, "44562676439627": 18, "4456267643963": [15, 18], "45722852885665": 15, "4573876180965": 15, "45809401560325": 15, "45812036241128": 15, "458e": 15, "46": 15, "46252943879958": 15, "46975600021699": 15, "46x46": 15, "47175561491798": 15, "478": 12, "49094286j": 11, "49387212754476": 15, "4j": 13, "5": [0, 3, 8, 11, 13, 15, 18], "50963982505083": 15, "51253171j": 11, "549e": 12, "55717072551582": 8, "5626": [15, 18], "571e": 15, "57322412553862": 15, "581": 15, "584": 15, "58888": 17, "5j": [0, 13], "6": [8, 11, 12, 13, 15, 18], "628e": 15, "6290254326717": 15, "6332495815006": 12, "64": 11, "650e": 12, "678": [15, 18], "6787887956297": 12, "68085339233603": 12, "6g": [0, 12, 15, 18], "6j": 13, "7": [8, 12, 13, 18], "72": 15, "7288249991515": 12, "72x72": 15, "74": 12, "75": 12, "762e": 12, "766e": 15, "77": [15, 18], "785e": 15, "791e": 12, "8": [12, 13, 15, 18], "811": 15, "841e": 15, "884e": 15, "9": [11, 12, 13, 15, 18], "9289": [15, 18], "93150623014006": 18, "945e": 15, "958": 12, "963e": 15, "975492191556643": 15, "9755488167407622": 15, "9756423838465609": 15, "9857004057142639": 15, "99": 8, "9928527668214251": 18, "994e": 15, "996e": 12, "9999320851287457": 18, "999991326130849": 18, "A": [0, 1, 2, 3, 4, 5, 6, 10, 11, 13, 15, 17, 18], "AND": 12, "As": [0, 11, 15, 18], "By": 16, "For": [0, 3, 8, 11, 13, 15, 17], "If": [0, 1, 2, 3, 4, 5, 6, 13], "In": [0, 8, 11, 12, 13, 15, 18], "It": [0, 2, 3, 4, 11, 13, 15, 17, 18], "Its": 3, "NO": [12, 15], "No": 2, "Of": 15, "On": [11, 17], "One": [0, 18], "Such": 13, "That": [0, 3, 10, 13], "The": [0, 1, 2, 3, 4, 5, 6, 8, 10, 11, 13, 16, 17, 18], "Then": [0, 16], "These": 13, "To": [0, 8, 11, 15, 18], "With": 15, "_": [0, 2, 4, 10, 12, 15, 18], "_1": 10, "_2": 10, "_k": [0, 15, 18], "a_": [0, 4, 8, 10, 13, 18], "a_j": 1, "a_p": 0, "a_q": 0, "ab": 18, "abl": 17, "about": 16, "abov": [13, 18], "absolut": [0, 2, 6], "acceler": 17, "accept": [10, 15], "access": [8, 17], "achiev": [2, 18], "across": 17, "act": [0, 2, 8, 13], "action": [0, 1, 7, 10, 13, 17], "activ": [0, 12, 15, 18], "active_spac": [0, 7, 12, 15, 18], "actual": [0, 6, 15], "ad": 0, "addit": [0, 13, 18], "addition": 2, "after": [3, 15], "al": 2, "algebra": [2, 8, 13], "algorithm": [2, 3, 15, 16], "alia": [0, 2], "align": [0, 10, 15], "all": [0, 3, 6, 13, 15, 17], "alloc": 0, "allow": [0, 2, 15, 17], "allow_col_permut": 0, "allow_row_permut": 0, "alpha": [0, 1, 4, 6, 7, 8, 11, 13, 15], "alpha_alpha_indic": [0, 15], "alpha_and_beta": [0, 4, 7], "alpha_beta_indic": [0, 15], "alpha_i": 0, "alpha_j": 0, "alreadi": [0, 10, 18], "also": [0, 1, 3, 4, 8, 10, 11, 13, 15], "altern": [0, 18], "although": 18, "alwai": [0, 2, 5, 10, 11], "amplitud": [0, 2, 5, 15], "an": [0, 1, 2, 4, 5, 8, 10, 11, 13, 15, 16, 18], "angl": [0, 12], "ani": [0, 3, 10, 15], "annihil": [0, 13], "anoth": [2, 6], "ansatz": [0, 3, 12, 14], "ansatz_oper": 0, "ansatz_st": 15, "anti": [2, 5], "anticommut": 10, "ao": 0, "ap": 2, "api": 11, "appear": [0, 2, 13], "append": [6, 15], "appli": [0, 1, 2, 3, 8, 10, 11, 15, 18], "applic": 10, "apply_": 11, "apply_diag_coulomb_evolut": [0, 7, 18], "apply_fsim_g": [0, 7], "apply_givens_rot": [0, 7], "apply_hop_g": [0, 7], "apply_matrix_to_slic": [2, 7], "apply_num_interact": [0, 7], "apply_num_num_interact": [0, 7], "apply_num_op_prod_interact": [0, 7], "apply_num_op_sum_evolut": [0, 7, 10, 18], "apply_on_site_interact": [0, 7, 11], "apply_on_site_num_num_interact": [0, 7], "apply_orbital_rot": [0, 7, 10, 11], "apply_quad_ham_evolut": 10, "apply_tunneling_interact": [0, 7, 11], "apply_unitari": [0, 7, 15], "appropri": 0, "approx": 18, "approx_eq": [0, 7], "approxim": [0, 2, 3, 18], "apt": 17, "ar": [0, 1, 2, 4, 5, 6, 8, 10, 11, 13, 15, 17, 18], "arch": 17, "arg": [0, 4], "argument": [0, 2, 3, 8, 10, 11], "arithmet": 13, "arrai": [0, 2, 6, 8, 11, 13], "arxiv": [2, 5], "assembl": 2, "assert": 11, "assert_allclose_up_to_global_phas": [6, 7], "assertionerror": 6, "associ": [0, 3, 11, 13, 15], "assum": [4, 11], "asterisk": 0, "asymmetr": 18, "atol": [0, 2, 4, 6], "atom": [0, 7, 12, 15, 18], "attempt": 2, "attribut": [3, 8], "author": 16, "avail": [8, 17], "avoid": [0, 8, 13], "awar": 13, "b": [0, 2, 3, 6, 10, 12, 15, 18], "backflow": 3, "base": [0, 2, 4], "basi": [0, 2, 7, 10, 12, 15, 18], "basic": [8, 18], "becaus": [8, 13, 18], "been": 0, "befor": [0, 13, 15, 17], "begin": [0, 2, 10, 11, 15], "behavior": [2, 5], "being": [2, 13, 15], "below": [0, 15, 18], "benchmark": 0, "beta": [0, 1, 4, 6, 7, 8, 11, 13, 15], "beta_i": 0, "beta_j": 0, "better": 18, "between": [0, 1, 2, 3, 15], "bfg": [0, 2, 3, 12, 15], "bibtex": 16, "bit": 11, "bitstr": [0, 11], "bla": 17, "block_diag": 0, "bodi": [0, 1, 2, 5, 8, 12, 15, 18], "bond": [12, 15, 18], "bond_angle_deg": 12, "bond_dist": [15, 18], "bool": [0, 1, 2, 3, 6], "bool_": 2, "both": [0, 2], "bound": [0, 2], "boundari": 0, "bq": 2, "break": 16, "brickwork": 12, "browser": 17, "build": [12, 15, 17, 18], "built": 18, "c": [0, 2, 7, 15, 18], "c2v": 12, "cach": 0, "calcul": [0, 11, 15, 18], "call": [0, 3, 8, 10, 11, 13, 15, 18], "callabl": [3, 15], "callback": [0, 2, 3, 15], "can": [0, 2, 8, 10, 11, 13, 15, 16, 17, 18], "canon": 0, "casci": [12, 15], "case": 6, "categori": 16, "cc": 15, "ccsd": [0, 15], "ccsd_energi": [0, 7], "ccsd_t1": [0, 7], "ccsd_t2": [0, 7], "cd": 17, "cdot": 2, "cell": [8, 11, 15, 18], "certain": 2, "challeng": 15, "chang": 16, "character": 0, "check": [2, 6, 16, 18], "chemic": 0, "chemical_potenti": 0, "chemistri": 16, "choic": [0, 6, 11], "choleski": [0, 2], "choos": [2, 11, 15], "ci": [12, 15], "circuit": [0, 4, 11, 16], "class": [0, 2, 4, 5, 8, 14, 15], "clement": 2, "clone": 17, "cluster": [0, 4, 14], "co": [0, 12], "code": [4, 8, 11, 13, 15, 16, 18], "coeff": [0, 1, 7], "coeffici": [0, 1, 2, 10, 13, 15], "collect": [2, 15], "column": [0, 2, 10, 11], "com": [16, 17], "comb": 4, "combin": [0, 1, 10, 13], "command": 17, "commonli": 18, "commun": [16, 17], "commut": [0, 15, 18], "compar": [0, 6, 18], "compil": 17, "complet": 0, "complex": [0, 1, 2, 5, 8], "complic": 15, "compon": [0, 13, 16], "compos": [17, 18], "compress": [0, 2], "compris": [0, 13], "comput": [0, 2, 8, 10, 12, 15], "concaten": 11, "concret": 8, "condit": 0, "configur": [0, 11, 17], "conflict": 6, "conj": 10, "conjug": 2, "connect": 15, "consecut": 4, "conserv": [0, 13, 16], "conserves_particle_numb": [0, 7, 13], "conserves_spin_z": [0, 7, 13], "consid": [10, 15], "consist": [0, 8], "constant": [0, 5, 7, 8, 15, 18], "constrain": 2, "constraint": 15, "construct": [0, 1, 3, 4, 11, 12, 13, 15, 18], "constructor": 15, "contain": [0, 2, 3, 13, 15, 16, 17], "contract": 7, "contract_diag_coulomb": [1, 7], "contract_num_op_sum": [1, 7], "contract_one_bodi": [1, 7], "contrast": 11, "contribut": 16, "control": 3, "conveni": 11, "convent": 0, "converg": [3, 12, 15, 18], "convers": 15, "convert": [0, 1, 4, 11, 13, 15, 18], "coordin": 0, "copi": [0, 13], "core": 0, "core_energi": [0, 7], "correl": 3, "correspond": [0, 2, 3, 4, 10, 11, 15, 18], "cost": 0, "coulomb": [0, 1, 2, 4, 15, 19], "count": 0, "cours": 15, "cre": [0, 7], "cre_a": [0, 7, 13], "cre_b": [0, 7, 13], "creat": [0, 11, 13, 15, 18], "creation": [0, 10, 13], "criteria": 13, "current": [0, 2, 15, 16], "d": [2, 17], "d2h": [15, 18], "dag": 4, "dagcircuit": 4, "dagger": [0, 1, 2, 10, 13, 15, 18], "dagger_": [0, 4, 8, 10, 18], "dagger_i": 1, "data": [0, 5, 12, 13, 15, 18], "dataclass": [15, 18], "daunt": 18, "de": [0, 7], "decompos": [2, 18], "decomposit": [0, 2], "decreas": 15, "def": [10, 12, 15, 18], "default": [0, 2, 3, 5, 8], "default_rng": [0, 5, 6, 8, 12], "defaultdict": 15, "defin": [0, 2, 12, 15, 18], "definit": [0, 2, 3, 11], "demonstr": [11, 15, 18], "denot": [0, 1, 2, 4, 10], "densiti": 0, "depend": [0, 2, 3, 17], "deprec": 0, "depth": 15, "deriv": 18, "des_a": [0, 7, 13], "des_b": [0, 7, 13], "descend": [0, 13], "describ": [0, 1, 2, 10, 13, 15, 18], "descript": [0, 4], "design": [2, 10], "desir": [0, 6], "destroi": [0, 13], "determin": [0, 2, 11, 18], "dev": 17, "devel": 17, "develop": 4, "df_hamiltonian": 18, "diag_coulomb_indic": [0, 2], "diag_coulomb_linop": [1, 7], "diag_coulomb_mat": [0, 7, 18], "diag_coulomb_mats_alpha_alpha": [0, 7], "diag_coulomb_mats_alpha_beta": [0, 7], "diagcoulombevolutionjw": [4, 7], "diagon": [0, 1, 2, 4, 15, 19], "dict": [0, 2, 3, 12, 15], "dictionari": [0, 13], "differ": [0, 1, 2, 3, 4, 8, 15, 17], "dim": [0, 5, 7, 11, 13], "dim_a": [0, 11], "dim_b": [0, 11], "dimens": [0, 5, 11], "dimension": [0, 2, 4, 11], "dipol": 0, "dipole_integr": [0, 7], "directli": [15, 17, 18], "directori": 17, "disclaim": 16, "discuss": 10, "disjoint": 2, "displai": 13, "distribut": 5, "divid": 18, "divis": [0, 13], "dnf": 17, "do": [13, 18], "dockerfil": 17, "docstr": 0, "document": [0, 2], "doe": 13, "dot": 0, "doubl": [0, 2, 15, 19], "double_factor": [0, 2, 7], "double_factorized_t2": [2, 7], "doublefactorizedhamiltonian": [0, 7, 18], "down": 11, "drop": 4, "dropneglig": [4, 7], "dtype": [0, 5, 8, 12, 15], "e": [0, 2, 4, 8, 12, 13, 15, 18], "e_corr": 15, "each": [0, 2, 3, 11, 13, 15, 17, 18], "effect": [0, 4, 15], "effici": 13, "eig": [8, 13], "eigendecomposit": 10, "eigenvalu": [0, 2, 3, 8], "eigenvector": 0, "eigh": [10, 18], "eigsh": 8, "either": [2, 15], "electron": [0, 1, 4, 5, 6, 8, 11, 18], "element": [0, 2], "ell": 2, "els": [0, 5, 11], "elsewher": 0, "enabl": 2, "end": [0, 2, 10, 15], "energi": [0, 3, 8, 10, 12, 15, 18], "enforc": [0, 15], "ensur": 8, "entangl": 14, "entir": 2, "entri": [0, 2, 11, 15], "enumer": [0, 15], "environ": 17, "epsilon": 3, "equal": [0, 2, 6], "equal_nan": 6, "equilibrium": 12, "equival": 0, "err_msg": 6, "error": [0, 2, 6], "especi": 13, "estim": 8, "et": 2, "ethen": [15, 18], "evalu": [3, 12], "everi": 10, "everywher": 11, "evolut": [0, 4, 8, 18], "evolv": [0, 18], "evolved_vec": 8, "exact": [2, 8, 18], "exact_st": 18, "exampl": [0, 8, 11, 13, 15, 17], "exce": [2, 12], "except": [0, 3], "exp": [0, 2, 4, 6], "expand": 0, "expans": [2, 3], "expect": [0, 3], "expectation_one_body_pow": [0, 7], "expectation_one_body_product": [0, 7], "expectation_product_st": [0, 7], "expens": [0, 2], "experiment": 16, "explain": [8, 11], "explan": [0, 16], "explicit": 0, "exploit": 16, "expm": 2, "expm_multipli": [8, 18], "expm_multiply_taylor": [2, 7], "exponenti": [8, 18], "express": [11, 15], "f": [3, 11, 12, 15, 18], "facilit": 15, "factor": [0, 2, 15, 19], "failur": 6, "fals": [0, 1, 2, 4, 12, 13, 15], "far": 13, "fast": 0, "faster": [15, 16], "fault": 15, "fci": [0, 11, 15], "fci_energi": [0, 7], "fci_vec": [0, 7], "fcivec": 0, "fedora": 17, "feenberg": 3, "fermi": 0, "fermi_hubbard_1d": [0, 7], "fermion": [0, 10, 13, 15, 16], "fermion_oper": [0, 7], "fermionact": [0, 7], "fermionoper": [0, 7, 14], "few": [11, 17], "fewer": [3, 18], "ffsim": [7, 8, 10, 11, 12, 13, 15, 17, 18], "ffsim_vec_to_qiskit_vec": [4, 7], "fidel": 18, "field": [0, 2], "file": 17, "filter": 0, "final": [0, 3, 15, 18], "final_orbital_rot": [0, 7], "final_st": [15, 18], "finish": 18, "finit": 3, "first": [0, 2, 4, 11, 12, 15, 18], "fix": 11, "flag": 0, "float": [0, 2, 3, 5, 6, 8, 10, 18], "float64": [12, 15], "fock": [0, 11, 15, 18], "focu": 8, "follow": [0, 3, 8, 10, 11, 13, 15, 16, 17, 18], "foot": 0, "forg": 14, "form": [0, 1, 2, 8, 10, 13, 15, 18], "format": [0, 4], "formula": 0, "fourth": 18, "frac": [0, 2], "frac12": [0, 8, 15, 18], "frac18": 0, "framework": 17, "from": [0, 5, 10, 11, 12, 13, 15, 16], "from_mol": [0, 7, 12, 18], "from_molecular_hamiltonian": [0, 7, 18], "from_paramet": [0, 7, 15], "from_scf": [0, 7, 15], "from_t_amplitud": [0, 7, 15], "frozen": 15, "fsim": 0, "full": [0, 2, 11], "fulli": 8, "fun": [3, 12, 15], "function": [0, 1, 2, 3, 8, 10, 11, 13, 15, 18], "fundament": 10, "further": 11, "furthermor": [0, 2], "g": [0, 4, 12, 15], "g_": 2, "g_1": 2, "g_k": 2, "g_l": 2, "gate": [0, 4, 9, 15, 16], "gener": [0, 3, 5, 6, 11, 15, 16, 18], "generate_norb_nelec": [6, 7], "generate_norb_nelec_spin": [6, 7], "generate_norb_spin": [6, 7], "get": [0, 11, 12, 15, 18], "git": 17, "github": [16, 17], "give": 0, "given": [0, 1, 2, 4, 6, 10, 18], "givens_decomposit": [2, 7], "givensrot": [2, 7], "global": 6, "go": [0, 13], "good": 13, "gradient": [2, 3, 15], "greater": 3, "ground": [8, 15], "gt": [12, 15], "gto": [12, 15, 18], "gtol": 3, "guess": 3, "guid": [12, 15], "h": [0, 8, 12, 15, 18], "h1_x": 12, "h2_x": 12, "h2_y": 12, "h_": [0, 2, 8, 18], "h_k": 18, "ha": [0, 1, 2, 4, 10, 11, 15, 18], "haar": 5, "ham": 11, "hamiltonian": [0, 3, 5, 7, 9, 12, 15], "hand": 11, "handl": 18, "hartre": [0, 11, 15, 18], "hartree_fock": [0, 15], "hartree_fock_st": [0, 7, 8, 11, 15, 18], "hasattr": 15, "hash": 13, "have": [0, 2, 8, 10, 11, 13, 15, 17], "height": 5, "helper": 13, "here": [0, 2, 10, 15, 18], "hermitian": [0, 2, 5, 10], "hess_inv": [12, 15], "hf_energi": [0, 7, 18], "higher": [0, 18], "hold": 3, "home": 17, "hop": 0, "hopgateansatzoper": [0, 7, 12], "host": 16, "hot": 0, "how": [0, 8, 10, 11, 16, 18], "howev": 16, "http": [16, 17], "hubbard": 0, "hyperparamet": [3, 15], "i": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 15, 16, 17, 18], "idea": 15, "ignor": [0, 2, 18], "ij": [0, 1, 2, 4, 10, 15, 18], "ijab": 2, "ik": 10, "imag": 17, "implement": [1, 3, 4, 8, 10, 15, 17], "import": [0, 8, 10, 11, 12, 13, 15, 18], "impos": 15, "improv": 18, "includ": [0, 2, 8, 10, 11, 15, 16, 17, 18], "incorpor": 0, "increas": [0, 11, 15, 18], "increment": 3, "incur": 3, "index": [0, 11, 13, 15], "indic": [0, 2, 11, 13, 15], "indices_to_str": [0, 7, 11], "individu": [11, 13, 18], "info": 15, "inform": [8, 13, 15, 16], "init_cach": [0, 7], "initi": [0, 3, 5, 6, 8, 12, 15, 18], "initial_st": 18, "initiali": 12, "input": [0, 1, 3, 5, 6, 15], "instanc": [5, 8, 18], "instead": [0, 2, 15], "instruct": [16, 17], "int": [0, 1, 2, 3, 4, 5, 6, 10, 12, 18], "integ": [0, 2], "integr": 0, "interact": [0, 1], "interaction_pair": [0, 12], "interfac": [15, 17], "interferomet": 2, "intermedi": 15, "intermediate_result": [3, 15], "intern": 13, "interpret": 0, "introduc": [10, 15, 16], "invers": [4, 7], "involv": [0, 10, 15], "ip": 2, "ipykernel_4308": 8, "is_antihermitian": [2, 7], "is_hermitian": [2, 7], "is_orthogon": [2, 7], "is_real_symmetr": [2, 7], "is_special_orthogon": [2, 7], "is_unitari": [2, 7], "isclos": 0, "issu": 8, "iter": [0, 3, 6, 15], "its": [0, 2, 8, 11, 13, 18], "itself": [0, 11, 13], "j": [0, 1, 2, 4, 7, 10, 11, 12, 13, 15, 18], "jac": [3, 12, 15], "jastrow": [0, 3, 4, 14], "ji": [0, 10], "jk": 10, "jordan": [0, 4], "jq": 2, "jupyt": 17, "just": [0, 11, 15, 17, 18], "k": [0, 2, 8, 13, 15, 18], "kappa": 0, "kappa_": 0, "keep": [0, 2], "kernel": 15, "known": 18, "kron": 0, "kwarg": [0, 4], "l": [0, 2, 3, 12, 15, 18], "label": [4, 11], "ladder": 15, "lambda_i": [0, 1, 10], "lambda_k": 10, "langl": 0, "larger": [0, 2, 3, 13], "last": [3, 4], "later": 18, "lattic": 15, "layer": 2, "lbfgsinvhessproduct": [12, 15], "ldot": [2, 15], "lead": [0, 3], "least": 2, "left": [0, 4, 10, 11, 13], "len": [12, 15], "length": [0, 4, 11, 15, 18], "leq": [0, 2], "less": [2, 15], "let": [0, 11, 13, 18], "level": 18, "lexicograph": [0, 13], "libopenbla": 17, "librari": [0, 16], "like": [15, 17], "limit": [0, 2, 12, 15], "linalg": [0, 7, 8, 10, 13, 15, 18], "lindep": 3, "line": 15, "linear": [0, 1, 2, 3, 8, 10, 13], "linear_oper": [0, 7, 8, 13, 15, 18], "linearoper": [0, 1, 3, 13, 15, 18], "linop": [8, 13], "linux": 17, "list": [0, 2, 6, 11, 12, 15], "ll": [8, 10, 15, 18], "lm": 13, "local": 14, "localhost": 17, "log": [0, 4], "logic": 10, "longest": 0, "lookup": 0, "low": 0, "lower": [0, 2], "lowest": [0, 11, 18], "lt": [12, 15], "lu": 2, "lucj": 14, "lup": [2, 7], "lvert": [0, 11, 15], "m": [0, 1, 2, 10], "m_": [0, 1, 2], "maco": 17, "mai": [0, 2, 3, 15, 16, 17], "main": [15, 17], "make": 15, "manag": 17, "mani": [0, 8, 10, 16], "manual": 18, "many_body_ord": [0, 7], "map": [0, 10, 13], "mapsto": [0, 10], "mat": [0, 1, 2, 4, 10, 11], "mat_alpha_beta": [0, 1, 4], "match": [2, 18], "match_global_phas": [2, 7], "math": [5, 12], "mathbf": [0, 10, 15, 18], "mathcal": [0, 1, 10, 15, 18], "matric": [0, 1, 2, 10, 15, 18], "matrix": [0, 1, 2, 3, 4, 5, 8, 10, 11, 13, 15, 18], "max_vec": [0, 2], "maxfun": 12, "maximum": [0, 2, 3, 5], "maxit": [3, 15], "mcscf": [12, 15], "measur": 5, "mention": 18, "merg": 4, "mergeorbitalrot": [4, 7], "messag": [6, 12, 15], "method": [0, 2, 3, 12, 13, 16], "minim": [0, 2, 3, 12, 15], "minimize_linear_method": [3, 7, 15], "mo_coeff": [0, 7], "mo_occ": [0, 7], "mode": 10, "model": 0, "modifi": [0, 2], "modified_choleski": [2, 7], "modul": [0, 11], "mol": [12, 15, 18], "mol_data": [12, 15, 18], "mol_hamiltonian": [8, 12, 15, 18], "mole": [0, 7, 12, 15, 18], "molecul": [0, 12, 15, 18], "molecular": [0, 5, 8, 11, 12, 15], "moleculardata": [0, 7, 12, 15, 18], "molecularhamiltonian": [0, 5, 7, 8, 18], "more": [0, 2, 3, 8, 11, 15], "most": [0, 2, 13], "mp2": [0, 15], "mp2_energi": [0, 7], "mp2_t2": [0, 7], "mu": 0, "much": [0, 2, 16], "multipl": [0, 8, 13, 18], "multipli": [0, 13], "multiport": 2, "multirefer": 0, "multireference_st": [0, 7], "multireference_state_prod": [0, 7, 12], "must": [0, 2, 3, 13], "n": [0, 2, 8, 10, 11, 15, 18], "n_": [0, 1, 4, 10, 11, 15, 18], "n_alpha": [4, 6], "n_beta": [4, 6], "n_layer": 12, "n_p": 0, "n_param": [0, 7], "n_rep": [0, 7, 15], "n_sampl": 0, "n_step": [0, 18], "name": [0, 8, 11, 17], "namedtupl": [0, 2], "nan": 6, "nao_nr": [12, 15], "nativ": 16, "navig": 17, "ndarrai": [0, 1, 2, 3, 4, 5, 6, 10, 15, 18], "nearest": 0, "nearest_neighbor_interact": 0, "need": [0, 8, 15, 17], "neg": 0, "neglig": 4, "neighbor": 0, "nelec": [0, 1, 4, 6, 7, 8, 10, 11, 12, 13, 15, 18], "nelectron": [15, 18], "neq": [0, 1, 4], "nest": 2, "network": 15, "new": [0, 10, 13], "newli": 0, "nfev": [3, 12, 15], "nit": [12, 15], "njev": [12, 15], "nlinop": [3, 15], "nn": 0, "nocc": [0, 5], "noisi": 15, "non": 15, "none": [0, 1, 2, 3, 4, 5, 6], "nonzero": [0, 2, 15], "norb": [0, 1, 4, 5, 6, 7, 8, 10, 11, 12, 13, 15, 18], "norb_rang": 6, "norm": [0, 3, 15], "normal": [0, 13], "normal_ord": [0, 7, 13], "note": [0, 2, 3, 11, 13], "notebook": 17, "notic": 15, "notimplementederror": 4, "now": [8, 18], "np": [0, 5, 6, 8, 10, 12, 15, 18], "num_op_sum_linop": [1, 7], "number": [0, 1, 2, 3, 4, 5, 6, 8, 10, 11, 12, 13, 15, 16, 18], "number_oper": [0, 7], "numer": [0, 2, 13], "numpi": [0, 2, 6, 8, 10, 11, 12, 15, 18], "o": [0, 12], "o_1": 0, "o_2": 0, "o_k": 0, "obj": 0, "object": [0, 2, 3, 8, 13, 15], "obtain": [0, 8, 10, 15, 18], "occ_a": 6, "occ_b": 6, "occup": [0, 10, 11, 18], "occupi": [0, 5, 6, 11, 18], "occupied_orbit": 0, "often": 15, "onc": [10, 17], "one": [0, 1, 2, 4, 5, 8, 11, 12, 15, 17, 18], "one_body_basis_chang": 18, "one_body_energi": 18, "one_body_integr": 0, "one_body_linop": [1, 7], "one_body_squar": [0, 7], "one_body_tensor": [0, 7, 8, 18], "one_hot": [0, 7], "one_rdm": 0, "ones": 8, "onli": [0, 2, 10, 15, 17], "onsit": 0, "onto": 13, "op": [0, 13], "op1": [0, 13], "op2": [0, 13], "op3": 13, "op4": 13, "openbla": 17, "oper": [0, 1, 2, 3, 4, 10, 12, 13, 15, 17, 19], "optim": [0, 2, 7, 12], "optimize_hyperparamet": 3, "optimize_hyperparameters_arg": 3, "optimizeresult": [3, 15], "option": [0, 1, 2, 3, 8, 12, 15, 17], "orb": [0, 7, 13], "orbit": [0, 1, 2, 4, 5, 6, 8, 9, 11, 13, 15, 18], "orbital_rot": [0, 1, 4, 7, 10, 11, 18], "orbital_symmetri": [0, 7], "orbitalrotationjw": [4, 7], "order": [0, 4, 8, 11, 13, 15, 18], "origin": [0, 2, 18], "orthogon": [2, 5], "other": [0, 11, 15], "otherwis": 0, "our": [15, 18], "out": [2, 16, 18], "output": [0, 3, 15, 18], "over": 0, "overal": 3, "overrid": [0, 2], "overwritten": 0, "p": [0, 2, 8, 15, 18], "packag": 17, "pacman": 17, "page": [8, 10, 11], "pair": [0, 2, 6], "parallel": [2, 15], "param": 0, "paramet": [0, 1, 2, 3, 4, 5, 6, 12, 15], "params_to_vec": [3, 15], "part": [0, 10, 11], "particl": [0, 6, 10, 13, 16], "pass": [0, 2, 4, 8, 10, 11, 13, 15], "pauli": 0, "perform": [0, 2, 3, 8, 10, 18], "period": 0, "permut": [0, 2], "persist": 17, "ph": 5, "phase": [0, 2, 6], "phi": [0, 2, 6], "phi_0": 15, "pi": [0, 12], "piec": [8, 13], "pip": 16, "pivot": 2, "pk": 2, "place": [0, 1, 4, 13, 15, 17], "plain": 11, "pmatrix": [0, 2], "posit": [2, 3, 11, 12], "possibl": [0, 2, 6, 16], "possibli": [0, 15], "potenti": 0, "power": 0, "pq": [0, 2, 8, 18], "pqr": [0, 2, 8, 18], "pre": 15, "precis": [6, 15], "prepar": 0, "present": 3, "preserv": 13, "previou": 15, "previous": 11, "print": [0, 6, 11, 12, 13, 15, 18], "probabl": 0, "problem": 3, "processor": 15, "prod_": [0, 4, 15], "prod_k": 18, "prod_state_sum": 0, "product": [0, 11, 13, 18], "productstatesum": [0, 7], "programmat": 13, "project": 3, "properti": [0, 2, 10], "proport": 0, "protocol": 0, "provid": [8, 15, 17], "pseudorandom": [0, 5, 6], "psi": [0, 15], "py": 8, "pypi": 17, "pyscf": [0, 4, 11, 12, 15, 18], "q": [0, 8, 18], "qdrift": 0, "qi": 0, "qiskit": [7, 16, 17], "qiskit_vec_to_ffsim_vec": [4, 7], "qk": 2, "quadrat": [9, 18], "qualnam": 0, "quantifi": 2, "quantiti": 0, "quantum": [0, 4, 11, 15, 16, 18], "qubit": [0, 4, 15], "r": [0, 2, 8, 18], "radius_1": 12, "radius_2": 12, "rais": [0, 2, 4, 6], "random": [0, 6, 7, 8, 11, 12, 13], "random_antihermitian": [5, 7], "random_hermitian": [5, 7], "random_molecular_hamiltonian": [5, 7], "random_nelec": [6, 7], "random_occupied_orbit": [6, 7], "random_orthogon": [5, 7], "random_real_symmetric_matrix": [5, 7, 8], "random_special_orthogon": [5, 7], "random_statevector": [5, 7, 13], "random_t2_amplitud": [5, 7], "random_two_body_tensor": [5, 7, 8], "random_unitari": [5, 7, 11], "rang": [0, 6, 11, 12, 15, 18], "rangl": [0, 11, 15], "rank": [0, 2, 5], "rather": [0, 10], "rdm": [0, 7], "rdm1": 0, "rdm2": 0, "rdm3": 0, "rdm4": 0, "reach": 15, "real": [0, 1, 2, 3, 4, 5, 6, 8, 10, 15, 18], "realucjoper": [0, 7], "reason": 10, "recal": 18, "recommend": [13, 16], "reconstruct": [0, 2], "recover": 0, "reduc": [0, 2], "reduced_matrix": [2, 7], "reduced_matrix_product_st": [0, 7], "redund": 15, "refer": [0, 2, 3, 5, 10, 11, 15, 16], "reference_occup": [0, 12], "reference_occupations_spati": 12, "reference_st": 15, "regular": [3, 15], "rel": [0, 2, 6], "relat": [10, 15], "releas": 16, "reorder": 0, "repeatedli": 10, "repetit": [0, 15], "repositori": 17, "repr": 13, "repres": [0, 2, 3, 8, 11, 13, 15], "represent": [0, 1, 2, 11, 13], "reproduc": 18, "requir": [0, 8, 11, 15, 17], "reshap": 11, "resourc": 16, "respect": [0, 2, 3], "rest": [0, 18], "result": [0, 1, 2, 3, 5, 8, 12, 15, 18], "return": [0, 1, 2, 3, 4, 5, 6, 10, 12, 13, 15, 18], "return_lower_rank": 0, "rewrit": 0, "rewritten": 10, "rhf": [0, 15], "right": [0, 4, 10, 11, 13], "rng": [8, 12], "root": 0, "rotat": [0, 1, 2, 4, 7, 9, 11, 15, 18], "rotated_vec": 11, "routin": [2, 8, 13], "row": [0, 11], "rtol": [0, 2, 4, 6], "rtype": 2, "run": [0, 4, 7, 15, 16, 17], "run_ccsd": [0, 7], "run_fci": [0, 7, 12, 15], "run_mp2": [0, 7], "rung": 15, "rust": 17, "rvert": 0, "s_": [0, 11], "sa": 8, "same": [0, 8, 10, 11, 15], "sampl": [0, 5, 6, 8], "satisfi": [10, 13, 17], "save": [15, 17], "scalar": [0, 13], "scale": 18, "scf": [0, 7, 12, 15, 18], "scf_func": 0, "scipi": [0, 2, 3, 12, 13, 15, 18], "scipy_optimize_minimize_arg": 3, "search": 11, "second": [0, 2, 12, 18], "sector": 0, "see": [0, 2, 4, 11, 16, 17], "seed": [0, 5, 6, 8, 11], "select": 3, "separ": 11, "sequenc": [0, 2], "seri": 2, "set": [0, 2, 10, 15, 18], "setup": 15, "sever": 8, "shape": [0, 2, 5, 15, 18], "share": 15, "short": 15, "should": [0, 2, 4, 5, 6, 8, 10, 17, 18], "show": [12, 13, 15, 18], "shown": 13, "side": 0, "sigma": [0, 1, 4, 8, 10, 15, 18], "sign": 0, "signatur": 3, "similar": 15, "similarli": [0, 18], "simpl": 17, "simpler": 0, "simpli": 11, "simul": [0, 10, 11, 14, 16, 19], "simulate_qdrift_double_factor": [0, 7], "simulate_trotter_double_factor": [0, 7, 18], "simulate_trotter_step_double_factor": 18, "sin": [0, 12], "sinc": [0, 2, 10, 15], "singl": [0, 18], "singlefactorizedhamiltonian": [0, 7], "site": 0, "size": [3, 12], "slater": [0, 18], "slater_determin": [0, 7], "slater_determinant_rdm": [0, 7], "slice": 2, "small": [2, 15], "smaller": [0, 2, 13, 18], "so": [0, 2, 10, 13, 15, 17, 18], "softwar": [0, 16], "solv": 3, "some": [0, 2, 6, 8, 11, 13, 15], "sometim": [0, 11], "somewhat": 15, "sourc": [0, 1, 2, 3, 4, 5, 6, 16], "space": [0, 8, 11, 12, 15, 18], "span": [0, 2], "spars": [8, 13, 18], "sparsiti": 15, "spatial": [0, 1, 4, 6, 8, 10, 11, 13, 15, 18], "special": [2, 5, 16], "specif": 11, "specifi": [0, 2, 3, 6, 8, 15], "spectral": 0, "speed": 3, "spin": [0, 1, 4, 6, 7, 10, 11, 13, 15, 16], "spin_squar": [0, 7], "spin_sum": 0, "split": 18, "squar": [0, 2, 15], "standard": 15, "standard_norm": 8, "star": 2, "start": [0, 16], "state": [0, 1, 3, 5, 7, 8, 9, 10, 12, 15, 16, 18], "statevector": [0, 4], "static": 0, "statu": [12, 15], "step": [0, 10, 18], "step_tim": 18, "still": [0, 15], "sto": [0, 12, 15, 18], "stop": [12, 15], "store": [0, 2, 8, 15, 18], "store_fci_vec": 0, "store_t1": 0, "store_t2": 0, "str": [0, 2, 6], "straightforward": 2, "strength": 0, "stretch": [15, 18], "strictli": 3, "string": [0, 11, 13], "structur": 0, "subdirectori": 17, "subroutin": 10, "subspac": [0, 2, 13], "subsystem": [11, 17], "subtract": [0, 13], "success": [12, 15], "sudo": 17, "sum": [0, 1, 4, 18], "sum_": [0, 1, 2, 4, 8, 10, 15, 18], "sum_j": 10, "sum_k": [10, 18], "sum_t": 0, "summat": 0, "support": [0, 2, 8, 11, 13, 17], "supportsapplyunitari": [0, 7], "supportsapproximateequ": [0, 7], "supportsfermionoper": [0, 7], "supportslinearoper": [0, 7], "supportstrac": [0, 7], "suzuki": 0, "swap": 15, "symmetr": [0, 1, 2, 4, 5, 15, 18], "symmetri": [0, 7, 10, 12, 15, 16, 18], "system": [10, 11, 17], "t": [0, 2, 4, 10, 16, 18], "t1": [0, 15], "t2": [0, 2, 5, 15], "t2_amplitud": 2, "t_": 2, "tabl": [0, 13], "take": [0, 3, 15], "taken": 15, "target": 2, "target_orb": 0, "tau": [0, 1, 4, 8, 15, 18], "taylor": 2, "tensor": [0, 1, 2, 5, 8, 12, 15, 18], "term": [0, 1, 2, 4, 5, 13, 15, 18], "test": [7, 18], "text": [0, 8, 18], "th": [2, 10], "than": [0, 10, 15, 16], "thei": [0, 8, 10, 13, 15], "them": [11, 15], "therefor": 2, "theta": [0, 12], "thi": [0, 2, 4, 8, 10, 11, 12, 15, 16, 17, 18], "think": [2, 18], "those": 3, "three": [8, 13], "threshold": [0, 2, 3], "time": [0, 2, 3, 4, 8, 11, 18], "titl": 16, "tmp": 8, "to_number_represent": [0, 7], "to_paramet": [0, 7, 15], "to_t_amplitud": [0, 7], "to_z_represent": [0, 7], "tol": [0, 2], "toler": [0, 2, 6, 15], "too": 2, "topologi": 15, "total": [0, 12, 15, 18], "trace": [0, 7, 8, 18], "tracea": [8, 18], "trajectori": 0, "transform": [0, 1, 4], "transformationpass": 4, "treat": 0, "triangl": 15, "trianglular": [0, 2], "triangular": [0, 2], "triplet": 6, "trotter": [0, 19], "true": [0, 2, 3, 4, 6, 13], "truncat": 15, "tunnel": 0, "tupl": [0, 1, 2, 4, 6, 10, 13, 18], "tutori": [16, 18], "two": [0, 2, 5, 8, 11, 12, 15, 17, 18], "two_body_integr": [0, 7], "two_body_tensor": [0, 2, 7, 8, 18], "type": [0, 1, 2, 3, 4, 5, 6, 17], "typic": 0, "u": [0, 1, 2, 4], "u_": 0, "ubuntu": 17, "ucj": 0, "ucj_oper": 4, "ucjoper": [0, 4, 7, 15], "ucjoperatorjw": [4, 7], "under": [0, 4], "uniform": [0, 5, 12], "unimpl": 4, "union": 2, "unit": 2, "unitari": [0, 1, 2, 4, 5, 10, 11, 14, 18], "univers": 2, "unlik": 0, "unord": 0, "untouch": 0, "up": [0, 3, 6, 11, 17], "updat": [0, 18], "upon": 13, "upper": [0, 2, 15], "url": 16, "us": [0, 1, 2, 3, 4, 5, 8, 10, 11, 14, 15, 16, 18], "usag": [0, 2, 13], "user": 17, "userwarn": 8, "usual": 0, "util": [2, 5, 6], "v": 0, "v_i": 2, "v_j": 2, "valid": [0, 4, 5, 6], "valu": [0, 1, 2, 3, 6, 8, 15, 18], "valueerror": [0, 2], "vari": 0, "variat": [0, 3, 15], "vdot": [15, 18], "vec": [0, 1, 2, 4, 8, 10, 11, 13, 18], "vec_a": 0, "vec_b": 0, "vector": [0, 1, 2, 3, 4, 5, 8, 9, 10, 12, 13, 15, 16], "verbos": 6, "verifi": 2, "via": [0, 18], "view": 13, "volum": 17, "w": [0, 10, 15, 18], "w_k": [0, 15], "wa": [0, 3], "wai": 15, "warn": [8, 16], "water": 12, "wavefunct": [3, 15], "we": [0, 2, 8, 10, 11, 12, 13, 15, 16, 17, 18], "web": 17, "weight": 11, "well": [0, 3, 11, 16, 17], "when": [0, 3, 4, 8, 11, 13, 15, 16, 18], "whenev": 0, "where": [0, 1, 2, 3, 4, 10, 11, 15, 17, 18], "whether": [0, 1, 2, 3, 13], "which": [0, 2, 4, 5, 8, 10, 11, 13, 15, 17, 18], "while": 15, "whose": [0, 2, 11], "width": 5, "wigner": [0, 4], "william": 2, "window": [16, 17], "wise": 2, "with_final_orbital_rot": 0, "within": [0, 2, 13], "without": [15, 16], "won": 16, "word": [0, 15], "work": [8, 16, 17], "would": [11, 15], "write": 18, "wrote": 18, "wsl": 17, "x": [3, 12, 15], "x0": [3, 12, 15], "yaml": 17, "yet": 8, "yield": [0, 2, 12, 15, 18], "you": [8, 11, 15, 16, 17], "your": 17, "z": [0, 1, 2, 4, 10, 13, 15, 16], "z_": [0, 1, 4], "z_represent": [0, 1, 4, 7], "zero": [0, 2, 8], "zip": [0, 12, 15, 18], "\u03c8": [15, 18]}, "titles": ["ffsim", "ffsim.contract", "ffsim.linalg", "ffsim.optimize", "ffsim.qiskit", "ffsim.random", "ffsim.testing", "API Reference", "Hamiltonians", "Explanations", "Orbital rotations and quadratic Hamiltonians", "State vectors and gates", "How to simulate entanglement forging", "How to use the FermionOperator class", "How-to guides", "How to simulate the local unitary cluster Jastrow (LUCJ) ansatz", "ffsim", "Installation", "Diagonal Coulomb operators and double-factorized Trotter simulation", "Tutorials"], "titleterms": {"The": 15, "action": 8, "ansatz": 15, "api": 7, "background": 18, "brief": 18, "cite": 16, "class": 13, "cluster": 15, "contract": 1, "coulomb": 18, "data": 8, "develop": 16, "diagon": 18, "docker": 17, "doubl": 18, "entangl": 12, "evolut": 10, "explan": 9, "factor": 18, "fermionoper": 13, "ffsim": [0, 1, 2, 3, 4, 5, 6, 16], "forg": 12, "formula": 18, "from": 17, "gate": 11, "guid": [14, 16], "hamiltonian": [8, 10, 18], "how": [12, 13, 14, 15], "implement": 18, "instal": [16, 17], "jastrow": 15, "linalg": 2, "linear": 15, "linearoper": 8, "local": 15, "lucj": 15, "method": 15, "molecular": 18, "next": 16, "oper": [8, 18], "optim": [3, 15], "orbit": 10, "pip": 17, "qiskit": 4, "quadrat": 10, "random": 5, "refer": 7, "represent": [8, 18], "rotat": 10, "scipi": 8, "simul": [12, 15, 18], "sourc": 17, "state": 11, "step": 16, "suzuki": 18, "test": 6, "time": 10, "trotter": 18, "tutori": 19, "ucj": 15, "unitari": 15, "us": [13, 17], "vector": 11, "via": 8, "within": 17}})
\ No newline at end of file
diff --git a/tutorials/double-factorized.html b/tutorials/double-factorized.html
index aa0d085bb..84c45b89c 100644
--- a/tutorials/double-factorized.html
+++ b/tutorials/double-factorized.html
@@ -3,7 +3,7 @@
-
+
Diagonal Coulomb operators and double-factorized Trotter simulation - ffsim 0.0.29.dev0 documentation
@@ -161,18 +161,18 @@
Diagonal Coulomb operators and double-factorized Trotter simulation
-How-to guides Toggle navigation of How-to guides
-
-Explanations Toggle navigation of Explanations
+Explanations Toggle navigation of Explanations
+How-to guides Toggle navigation of How-to guides
+
API Reference Toggle navigation of API Reference
ffsim
ffsim.contract
@@ -292,7 +292,7 @@ Double-factorized representation of the molecular Hamiltonian
-converged SCF energy = -77.4456267643962
+converged SCF energy = -77.4456267643963
Here, mol_hamiltonian
is an instance of MolecularHamiltonian
, a dataclass that stores the one- and two-body tensors, and df_hamiltonian
is an instance of DoubleFactorizedHamiltonian
, a dataclass that stores the updated one-body-tensor, diagonal Coulomb matrices, and orbital rotations. In the cell below, we print out the shapes of the tensors describing the original and double-factorized representations.
@@ -504,7 +504,7 @@ Implementing Trotter simulation of the double-factorized Hamiltonian
-Fidelity of evolved state w.r.t. initial state: 0.931506230139706
+Fidelity of evolved state w.r.t. initial state: 0.93150623014006
Now, let’s test our implementation.
@@ -531,7 +531,7 @@ Implementing Trotter simulation of the double-factorized Hamiltonian
-Fidelity of Trotter-evolved state with exact state: 0.9928527668210921
+Fidelity of Trotter-evolved state with exact state: 0.9928527668214251
The fidelity of the final result can be improved by increasing the number of Trotter steps.
@@ -558,7 +558,7 @@ Implementing Trotter simulation of the double-factorized Hamiltonian
-Fidelity of Trotter-evolved state with exact state: 0.999932085128466
+Fidelity of Trotter-evolved state with exact state: 0.9999320851287457
As mentioned above, ffsim already includes functionality for Trotter simulation of double-factorized Hamiltonians. The implementation in ffsim includes higher-order Trotter-Suzuki formulas. The first-order asymmetric formula that we just implemented corresponds to order=0
in ffsim’s implementation. order=1
corresponds to the first-order symmetric (commonly known as the second-order) formula, order=2
corresponds to the second-order symmetric (fourth-order) formula, and so on.
@@ -587,7 +587,7 @@ Implementing Trotter simulation of the double-factorized Hamiltonian
-Fidelity of Trotter-evolved state with exact state: 0.999932085128466
+Fidelity of Trotter-evolved state with exact state: 0.9999320851287457
A higher order formula achieves a higher fidelity with fewer Trotter steps:
@@ -615,7 +615,7 @@ Implementing Trotter simulation of the double-factorized Hamiltonian
-Fidelity of Trotter-evolved state with exact state: 0.9999913261305375
+Fidelity of Trotter-evolved state with exact state: 0.999991326130849
@@ -627,12 +627,12 @@ Implementing Trotter simulation of the double-factorized Hamiltonian
-
+
Next
-
How-to guides
+
Explanations
diff --git a/tutorials/double-factorized.ipynb b/tutorials/double-factorized.ipynb
index 468fa1869..dfa767fe3 100644
--- a/tutorials/double-factorized.ipynb
+++ b/tutorials/double-factorized.ipynb
@@ -43,10 +43,10 @@
"execution_count": 1,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:33.304169Z",
- "iopub.status.busy": "2024-04-24T07:13:33.303980Z",
- "iopub.status.idle": "2024-04-24T07:13:34.095562Z",
- "shell.execute_reply": "2024-04-24T07:13:34.094949Z"
+ "iopub.execute_input": "2024-04-24T07:21:27.796281Z",
+ "iopub.status.busy": "2024-04-24T07:21:27.796047Z",
+ "iopub.status.idle": "2024-04-24T07:21:28.617051Z",
+ "shell.execute_reply": "2024-04-24T07:21:28.616405Z"
}
},
"outputs": [
@@ -54,7 +54,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "converged SCF energy = -77.4456267643962\n"
+ "converged SCF energy = -77.4456267643963\n"
]
}
],
@@ -109,10 +109,10 @@
"execution_count": 2,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.099267Z",
- "iopub.status.busy": "2024-04-24T07:13:34.098155Z",
- "iopub.status.idle": "2024-04-24T07:13:34.104600Z",
- "shell.execute_reply": "2024-04-24T07:13:34.103979Z"
+ "iopub.execute_input": "2024-04-24T07:21:28.620369Z",
+ "iopub.status.busy": "2024-04-24T07:21:28.619750Z",
+ "iopub.status.idle": "2024-04-24T07:21:28.625335Z",
+ "shell.execute_reply": "2024-04-24T07:21:28.624771Z"
}
},
"outputs": [
@@ -215,10 +215,10 @@
"execution_count": 3,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.106916Z",
- "iopub.status.busy": "2024-04-24T07:13:34.106566Z",
- "iopub.status.idle": "2024-04-24T07:13:34.110796Z",
- "shell.execute_reply": "2024-04-24T07:13:34.110309Z"
+ "iopub.execute_input": "2024-04-24T07:21:28.627651Z",
+ "iopub.status.busy": "2024-04-24T07:21:28.627454Z",
+ "iopub.status.idle": "2024-04-24T07:21:28.631911Z",
+ "shell.execute_reply": "2024-04-24T07:21:28.631428Z"
}
},
"outputs": [],
@@ -273,10 +273,10 @@
"execution_count": 4,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.113143Z",
- "iopub.status.busy": "2024-04-24T07:13:34.112766Z",
- "iopub.status.idle": "2024-04-24T07:13:34.116180Z",
- "shell.execute_reply": "2024-04-24T07:13:34.115721Z"
+ "iopub.execute_input": "2024-04-24T07:21:28.634435Z",
+ "iopub.status.busy": "2024-04-24T07:21:28.634013Z",
+ "iopub.status.idle": "2024-04-24T07:21:28.637725Z",
+ "shell.execute_reply": "2024-04-24T07:21:28.637121Z"
}
},
"outputs": [],
@@ -313,10 +313,10 @@
"execution_count": 5,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.118250Z",
- "iopub.status.busy": "2024-04-24T07:13:34.118060Z",
- "iopub.status.idle": "2024-04-24T07:13:34.124011Z",
- "shell.execute_reply": "2024-04-24T07:13:34.123434Z"
+ "iopub.execute_input": "2024-04-24T07:21:28.640267Z",
+ "iopub.status.busy": "2024-04-24T07:21:28.639744Z",
+ "iopub.status.idle": "2024-04-24T07:21:28.646424Z",
+ "shell.execute_reply": "2024-04-24T07:21:28.645880Z"
}
},
"outputs": [
@@ -352,10 +352,10 @@
"execution_count": 6,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.127621Z",
- "iopub.status.busy": "2024-04-24T07:13:34.126498Z",
- "iopub.status.idle": "2024-04-24T07:13:34.959622Z",
- "shell.execute_reply": "2024-04-24T07:13:34.959044Z"
+ "iopub.execute_input": "2024-04-24T07:21:28.650210Z",
+ "iopub.status.busy": "2024-04-24T07:21:28.649034Z",
+ "iopub.status.idle": "2024-04-24T07:21:29.494030Z",
+ "shell.execute_reply": "2024-04-24T07:21:29.493456Z"
}
},
"outputs": [
@@ -363,7 +363,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Fidelity of evolved state w.r.t. initial state: 0.931506230139706\n"
+ "Fidelity of evolved state w.r.t. initial state: 0.93150623014006\n"
]
}
],
@@ -394,10 +394,10 @@
"execution_count": 7,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.963777Z",
- "iopub.status.busy": "2024-04-24T07:13:34.962800Z",
- "iopub.status.idle": "2024-04-24T07:13:34.994265Z",
- "shell.execute_reply": "2024-04-24T07:13:34.993645Z"
+ "iopub.execute_input": "2024-04-24T07:21:29.497039Z",
+ "iopub.status.busy": "2024-04-24T07:21:29.496586Z",
+ "iopub.status.idle": "2024-04-24T07:21:29.536866Z",
+ "shell.execute_reply": "2024-04-24T07:21:29.536255Z"
}
},
"outputs": [
@@ -405,7 +405,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Fidelity of Trotter-evolved state with exact state: 0.9928527668210921\n"
+ "Fidelity of Trotter-evolved state with exact state: 0.9928527668214251\n"
]
}
],
@@ -435,10 +435,10 @@
"execution_count": 8,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:34.997907Z",
- "iopub.status.busy": "2024-04-24T07:13:34.996932Z",
- "iopub.status.idle": "2024-04-24T07:13:35.144603Z",
- "shell.execute_reply": "2024-04-24T07:13:35.144044Z"
+ "iopub.execute_input": "2024-04-24T07:21:29.541716Z",
+ "iopub.status.busy": "2024-04-24T07:21:29.540733Z",
+ "iopub.status.idle": "2024-04-24T07:21:29.689942Z",
+ "shell.execute_reply": "2024-04-24T07:21:29.689349Z"
}
},
"outputs": [
@@ -446,7 +446,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Fidelity of Trotter-evolved state with exact state: 0.999932085128466\n"
+ "Fidelity of Trotter-evolved state with exact state: 0.9999320851287457\n"
]
}
],
@@ -478,10 +478,10 @@
"execution_count": 9,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:35.148420Z",
- "iopub.status.busy": "2024-04-24T07:13:35.147427Z",
- "iopub.status.idle": "2024-04-24T07:13:35.294623Z",
- "shell.execute_reply": "2024-04-24T07:13:35.294088Z"
+ "iopub.execute_input": "2024-04-24T07:21:29.694153Z",
+ "iopub.status.busy": "2024-04-24T07:21:29.693184Z",
+ "iopub.status.idle": "2024-04-24T07:21:29.831768Z",
+ "shell.execute_reply": "2024-04-24T07:21:29.831129Z"
}
},
"outputs": [
@@ -489,7 +489,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Fidelity of Trotter-evolved state with exact state: 0.999932085128466\n"
+ "Fidelity of Trotter-evolved state with exact state: 0.9999320851287457\n"
]
}
],
@@ -520,10 +520,10 @@
"execution_count": 10,
"metadata": {
"execution": {
- "iopub.execute_input": "2024-04-24T07:13:35.298402Z",
- "iopub.status.busy": "2024-04-24T07:13:35.297445Z",
- "iopub.status.idle": "2024-04-24T07:13:35.384316Z",
- "shell.execute_reply": "2024-04-24T07:13:35.383754Z"
+ "iopub.execute_input": "2024-04-24T07:21:29.835304Z",
+ "iopub.status.busy": "2024-04-24T07:21:29.835066Z",
+ "iopub.status.idle": "2024-04-24T07:21:29.883385Z",
+ "shell.execute_reply": "2024-04-24T07:21:29.882741Z"
}
},
"outputs": [
@@ -531,7 +531,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Fidelity of Trotter-evolved state with exact state: 0.9999913261305375\n"
+ "Fidelity of Trotter-evolved state with exact state: 0.999991326130849\n"
]
}
],
diff --git a/tutorials/index.html b/tutorials/index.html
index e2b12b02d..98a948e9e 100644
--- a/tutorials/index.html
+++ b/tutorials/index.html
@@ -160,18 +160,18 @@
Diagonal Coulomb operators and double-factorized Trotter simulation
-
How-to guides Toggle navigation of How-to guides
-
-
Explanations Toggle navigation of Explanations