From 818928d3d7d7de3b87e8680f6d2555c3f00fda98 Mon Sep 17 00:00:00 2001 From: kevinsung Date: Wed, 25 Oct 2023 22:39:45 +0000 Subject: [PATCH] deploy: 419440f6f68aa531a98a4058b06c1cbca1684b75 --- .doctrees/api/ffsim.doctree | Bin 464754 -> 464526 bytes .doctrees/environment.pickle | Bin 1486832 -> 1486283 bytes .../nbsphinx/tutorials/01-introduction.ipynb | 24 ++-- .../tutorials/02-orbital-rotation.ipynb | 32 ++--- .../tutorials/03-double-factorized.ipynb | 128 +++++++++--------- .doctrees/nbsphinx/tutorials/04-lucj.ipynb | 62 ++++----- .../tutorials/05-entanglement-forging.ipynb | 32 ++--- .../tutorials/06-fermion-operator.ipynb | 128 +++++++++--------- .../tutorials/03-double-factorized.doctree | Bin 54828 -> 54750 bytes .doctrees/tutorials/04-lucj.doctree | Bin 38276 -> 38282 bytes .../tutorials/05-entanglement-forging.doctree | Bin 15260 -> 15260 bytes .../tutorials/06-fermion-operator.doctree | Bin 41445 -> 41385 bytes _modules/ffsim/states/states.html | 15 +- api/ffsim.html | 14 +- searchindex.js | 2 +- tutorials/01-introduction.ipynb | 24 ++-- tutorials/02-orbital-rotation.ipynb | 32 ++--- tutorials/03-double-factorized.html | 48 +++---- tutorials/03-double-factorized.ipynb | 128 +++++++++--------- tutorials/04-lucj.html | 30 ++-- tutorials/04-lucj.ipynb | 62 ++++----- tutorials/05-entanglement-forging.html | 8 +- tutorials/05-entanglement-forging.ipynb | 32 ++--- tutorials/06-fermion-operator.html | 56 ++++---- tutorials/06-fermion-operator.ipynb | 128 +++++++++--------- 25 files changed, 483 insertions(+), 502 deletions(-) diff --git a/.doctrees/api/ffsim.doctree b/.doctrees/api/ffsim.doctree index 9acc000690cc80d536c860522105ff077157cd44..ea24b10f4f7624187f1f75f5aa42abb2ee567d88 100644 GIT binary patch delta 321 zcmeygPNr|IOhXG}3sVbo3(FK%KSqYF{;VOdnR+fxU-6pNb^7`HtP<1t->^z0N2?nc z8X6cFs_Q6#S%wBs7ElnxGBkk6f>;n)APtiR(h$91Lm)c9TGV5wWUvFV7>1RRG_!KL z@jKS=>6Z%`1*bPWWfb4O=^g7z!RZT=Y7AsHDklRlVu4_KVhE%7^uGVBC#D}TW!Bl+&Gzpf=hQ!9U`dAQo&VXcO`pKXB(}AV HT|f)~uc3Ro diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle index 62f0d996fea40608aa39e8ab89fcd1cc77b16c82..3d7029ea99d9a20eab664feb3649ea31e43c9abf 100644 GIT binary patch delta 23257 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 X>b!=jkS5Wwt{^Rk^J(nZ*Ten~6AjxN delta 23921 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 QiruQ_V0=%RGSdJ50LFA~R{#J2 diff --git a/.doctrees/nbsphinx/tutorials/01-introduction.ipynb b/.doctrees/nbsphinx/tutorials/01-introduction.ipynb index e3fc47f00..aabe78f3d 100644 --- a/.doctrees/nbsphinx/tutorials/01-introduction.ipynb +++ b/.doctrees/nbsphinx/tutorials/01-introduction.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:36.422033Z", - "iopub.status.busy": "2023-10-25T21:53:36.421607Z", - "iopub.status.idle": "2023-10-25T21:53:36.770566Z", - "shell.execute_reply": "2023-10-25T21:53:36.769858Z" + "iopub.execute_input": "2023-10-25T22:36:55.806469Z", + "iopub.status.busy": "2023-10-25T22:36:55.806037Z", + "iopub.status.idle": "2023-10-25T22:36:56.173437Z", + "shell.execute_reply": "2023-10-25T22:36:56.172708Z" } }, "outputs": [], @@ -62,10 +62,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:36.775004Z", - "iopub.status.busy": "2023-10-25T21:53:36.774487Z", - "iopub.status.idle": "2023-10-25T21:53:36.779640Z", - "shell.execute_reply": "2023-10-25T21:53:36.778903Z" + "iopub.execute_input": "2023-10-25T22:36:56.178612Z", + "iopub.status.busy": "2023-10-25T22:36:56.177304Z", + "iopub.status.idle": "2023-10-25T22:36:56.183207Z", + "shell.execute_reply": "2023-10-25T22:36:56.182642Z" } }, "outputs": [], @@ -93,10 +93,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:36.782688Z", - "iopub.status.busy": "2023-10-25T21:53:36.782324Z", - "iopub.status.idle": "2023-10-25T21:53:36.786964Z", - "shell.execute_reply": "2023-10-25T21:53:36.786217Z" + "iopub.execute_input": "2023-10-25T22:36:56.187737Z", + "iopub.status.busy": "2023-10-25T22:36:56.186648Z", + "iopub.status.idle": "2023-10-25T22:36:56.191149Z", + "shell.execute_reply": "2023-10-25T22:36:56.190587Z" } }, "outputs": [], diff --git a/.doctrees/nbsphinx/tutorials/02-orbital-rotation.ipynb b/.doctrees/nbsphinx/tutorials/02-orbital-rotation.ipynb index 96459fef7..9abbe1985 100644 --- a/.doctrees/nbsphinx/tutorials/02-orbital-rotation.ipynb +++ b/.doctrees/nbsphinx/tutorials/02-orbital-rotation.ipynb @@ -43,10 +43,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:38.602093Z", - "iopub.status.busy": "2023-10-25T21:53:38.601841Z", - "iopub.status.idle": "2023-10-25T21:53:38.985484Z", - "shell.execute_reply": "2023-10-25T21:53:38.984468Z" + "iopub.execute_input": "2023-10-25T22:36:58.052305Z", + "iopub.status.busy": "2023-10-25T22:36:58.052068Z", + "iopub.status.idle": "2023-10-25T22:36:58.418054Z", + "shell.execute_reply": "2023-10-25T22:36:58.417323Z" } }, "outputs": [], @@ -111,10 +111,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:38.989836Z", - "iopub.status.busy": "2023-10-25T21:53:38.989071Z", - "iopub.status.idle": "2023-10-25T21:53:39.051050Z", - "shell.execute_reply": "2023-10-25T21:53:39.050278Z" + "iopub.execute_input": "2023-10-25T22:36:58.422655Z", + "iopub.status.busy": "2023-10-25T22:36:58.422015Z", + "iopub.status.idle": "2023-10-25T22:36:58.459609Z", + "shell.execute_reply": "2023-10-25T22:36:58.458938Z" } }, "outputs": [], @@ -158,10 +158,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:39.064621Z", - "iopub.status.busy": "2023-10-25T21:53:39.064262Z", - "iopub.status.idle": "2023-10-25T21:53:39.077872Z", - "shell.execute_reply": "2023-10-25T21:53:39.077164Z" + "iopub.execute_input": "2023-10-25T22:36:58.463437Z", + "iopub.status.busy": "2023-10-25T22:36:58.463084Z", + "iopub.status.idle": "2023-10-25T22:36:58.475859Z", + "shell.execute_reply": "2023-10-25T22:36:58.475248Z" } }, "outputs": [], @@ -201,10 +201,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:39.082834Z", - "iopub.status.busy": "2023-10-25T21:53:39.081654Z", - "iopub.status.idle": "2023-10-25T21:53:39.089958Z", - "shell.execute_reply": "2023-10-25T21:53:39.089197Z" + "iopub.execute_input": "2023-10-25T22:36:58.478982Z", + "iopub.status.busy": "2023-10-25T22:36:58.478632Z", + "iopub.status.idle": "2023-10-25T22:36:58.485259Z", + "shell.execute_reply": "2023-10-25T22:36:58.484661Z" } }, "outputs": [], diff --git a/.doctrees/nbsphinx/tutorials/03-double-factorized.ipynb b/.doctrees/nbsphinx/tutorials/03-double-factorized.ipynb index dad276ce2..e679311ce 100644 --- a/.doctrees/nbsphinx/tutorials/03-double-factorized.ipynb +++ b/.doctrees/nbsphinx/tutorials/03-double-factorized.ipynb @@ -43,10 +43,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:40.985297Z", - "iopub.status.busy": "2023-10-25T21:53:40.984655Z", - "iopub.status.idle": "2023-10-25T21:53:41.493651Z", - "shell.execute_reply": "2023-10-25T21:53:41.492879Z" + "iopub.execute_input": "2023-10-25T22:37:00.564527Z", + "iopub.status.busy": "2023-10-25T22:37:00.563943Z", + "iopub.status.idle": "2023-10-25T22:37:01.040069Z", + "shell.execute_reply": "2023-10-25T22:37:01.039225Z" } }, "outputs": [ @@ -92,10 +92,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.497703Z", - "iopub.status.busy": "2023-10-25T21:53:41.497199Z", - "iopub.status.idle": "2023-10-25T21:53:41.504110Z", - "shell.execute_reply": "2023-10-25T21:53:41.503540Z" + "iopub.execute_input": "2023-10-25T22:37:01.043849Z", + "iopub.status.busy": "2023-10-25T22:37:01.043504Z", + "iopub.status.idle": "2023-10-25T22:37:01.049845Z", + "shell.execute_reply": "2023-10-25T22:37:01.049303Z" } }, "outputs": [ @@ -106,28 +106,28 @@ "Original representation\n", "-----------------------\n", "One-body tensor:\n", - "[[-8.27478830e-01 -1.09243819e-16]\n", - " [-7.48351655e-17 -6.77238770e-01]]\n", + "[[-8.27478830e-01 -8.52909490e-17]\n", + " [-5.57029092e-17 -6.77238770e-01]]\n", "\n", "Two-body tensor:\n", - "[[[[ 5.23173938e-01 -5.00678144e-19]\n", - " [-5.00678144e-19 5.33545754e-01]]\n", + "[[[[5.23173938e-01 3.58782168e-17]\n", + " [3.58782168e-17 5.33545754e-01]]\n", "\n", - " [[ 5.85364508e-18 2.48240570e-01]\n", - " [ 2.48240570e-01 -1.17688164e-17]]]\n", + " [[2.49859013e-17 2.48240570e-01]\n", + " [2.48240570e-01 4.83067333e-17]]]\n", "\n", "\n", - " [[[ 5.85364508e-18 2.48240570e-01]\n", - " [ 2.48240570e-01 -1.17688164e-17]]\n", + " [[[2.49859013e-17 2.48240570e-01]\n", + " [2.48240570e-01 4.83067333e-17]]\n", "\n", - " [[ 5.33545754e-01 1.05429868e-17]\n", - " [ 1.05429868e-17 5.53132024e-01]]]]\n", + " [[5.33545754e-01 4.01841799e-17]\n", + " [4.01841799e-17 5.53132024e-01]]]]\n", "\n", "Double-factorized representation\n", "--------------------------------\n", "One-body tensor:\n", - "[[-1.21318608e+00 -1.03109072e-16]\n", - " [-8.30334814e-17 -1.07792507e+00]]\n", + "[[-1.21318608e+00 -1.27383424e-16]\n", + " [-8.82879498e-17 -1.07792507e+00]]\n", "\n", "Diagonal Coulomb matrices:\n", "[[[ 5.14653029e-01 5.33545754e-01]\n", @@ -136,18 +136,18 @@ " [[ 2.48240570e-01 -2.48240570e-01]\n", " [-2.48240570e-01 2.48240570e-01]]\n", "\n", - " [[ 1.44655364e-30 -1.11022302e-16]\n", - " [-1.11022302e-16 8.52090881e-03]]]\n", + " [[ 2.27521846e-62 -1.39236953e-32]\n", + " [-1.39236953e-32 8.52090881e-03]]]\n", "\n", "Orbital rotations:\n", "[[[ 1.00000000e+00 0.00000000e+00]\n", " [ 0.00000000e+00 1.00000000e+00]]\n", "\n", - " [[-7.07106781e-01 7.07106781e-01]\n", - " [ 7.07106781e-01 7.07106781e-01]]\n", + " [[-7.07106781e-01 -7.07106781e-01]\n", + " [ 7.07106781e-01 -7.07106781e-01]]\n", "\n", - " [[ 7.45733039e-16 -1.00000000e+00]\n", - " [-1.00000000e+00 -7.45733039e-16]]]\n" + " [[-1.27830444e-15 -1.00000000e+00]\n", + " [-1.00000000e+00 1.27830444e-15]]]\n" ] } ], @@ -226,10 +226,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.507131Z", - "iopub.status.busy": "2023-10-25T21:53:41.506795Z", - "iopub.status.idle": "2023-10-25T21:53:41.511343Z", - "shell.execute_reply": "2023-10-25T21:53:41.510807Z" + "iopub.execute_input": "2023-10-25T22:37:01.053112Z", + "iopub.status.busy": "2023-10-25T22:37:01.052436Z", + "iopub.status.idle": "2023-10-25T22:37:01.058006Z", + "shell.execute_reply": "2023-10-25T22:37:01.057392Z" } }, "outputs": [], @@ -284,10 +284,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.514318Z", - "iopub.status.busy": "2023-10-25T21:53:41.513949Z", - "iopub.status.idle": "2023-10-25T21:53:41.518651Z", - "shell.execute_reply": "2023-10-25T21:53:41.517792Z" + "iopub.execute_input": "2023-10-25T22:37:01.061751Z", + "iopub.status.busy": "2023-10-25T22:37:01.060649Z", + "iopub.status.idle": "2023-10-25T22:37:01.066205Z", + "shell.execute_reply": "2023-10-25T22:37:01.065642Z" } }, "outputs": [], @@ -324,10 +324,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.521969Z", - "iopub.status.busy": "2023-10-25T21:53:41.521553Z", - "iopub.status.idle": "2023-10-25T21:53:41.526968Z", - "shell.execute_reply": "2023-10-25T21:53:41.526313Z" + "iopub.execute_input": "2023-10-25T22:37:01.069111Z", + "iopub.status.busy": "2023-10-25T22:37:01.068667Z", + "iopub.status.idle": "2023-10-25T22:37:01.074495Z", + "shell.execute_reply": "2023-10-25T22:37:01.073941Z" } }, "outputs": [ @@ -335,7 +335,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Hartree Fock energy: -0.837796382593709\n" + "Hartree Fock energy: -0.8377963825937084\n" ] } ], @@ -366,10 +366,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.529813Z", - "iopub.status.busy": "2023-10-25T21:53:41.529471Z", - "iopub.status.idle": "2023-10-25T21:53:41.543792Z", - "shell.execute_reply": "2023-10-25T21:53:41.543084Z" + "iopub.execute_input": "2023-10-25T22:37:01.077458Z", + "iopub.status.busy": "2023-10-25T22:37:01.076848Z", + "iopub.status.idle": "2023-10-25T22:37:01.087132Z", + "shell.execute_reply": "2023-10-25T22:37:01.086577Z" } }, "outputs": [ @@ -377,7 +377,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of evolved state w.r.t. initial state: 0.9696296369955065\n" + "Fidelity of evolved state w.r.t. initial state: 0.9696296369955066\n" ] } ], @@ -408,10 +408,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.548578Z", - "iopub.status.busy": "2023-10-25T21:53:41.547991Z", - "iopub.status.idle": "2023-10-25T21:53:41.558765Z", - "shell.execute_reply": "2023-10-25T21:53:41.558188Z" + "iopub.execute_input": "2023-10-25T22:37:01.090228Z", + "iopub.status.busy": "2023-10-25T22:37:01.089559Z", + "iopub.status.idle": "2023-10-25T22:37:01.098344Z", + "shell.execute_reply": "2023-10-25T22:37:01.097773Z" } }, "outputs": [ @@ -419,7 +419,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9990275744083491\n" + "Fidelity of Trotter-evolved state with exact state: 0.9990275744083494\n" ] } ], @@ -449,10 +449,10 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.561180Z", - "iopub.status.busy": "2023-10-25T21:53:41.560905Z", - "iopub.status.idle": "2023-10-25T21:53:41.619285Z", - "shell.execute_reply": "2023-10-25T21:53:41.618575Z" + "iopub.execute_input": "2023-10-25T22:37:01.101276Z", + "iopub.status.busy": "2023-10-25T22:37:01.100835Z", + "iopub.status.idle": "2023-10-25T22:37:01.145337Z", + "shell.execute_reply": "2023-10-25T22:37:01.144745Z" } }, "outputs": [ @@ -460,7 +460,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.999990623310968\n" + "Fidelity of Trotter-evolved state with exact state: 0.9999906233109686\n" ] } ], @@ -492,10 +492,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.622724Z", - "iopub.status.busy": "2023-10-25T21:53:41.622148Z", - "iopub.status.idle": "2023-10-25T21:53:41.662416Z", - "shell.execute_reply": "2023-10-25T21:53:41.661522Z" + "iopub.execute_input": "2023-10-25T22:37:01.148276Z", + "iopub.status.busy": "2023-10-25T22:37:01.147912Z", + "iopub.status.idle": "2023-10-25T22:37:01.188137Z", + "shell.execute_reply": "2023-10-25T22:37:01.186555Z" } }, "outputs": [ @@ -503,7 +503,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.999990623310968\n" + "Fidelity of Trotter-evolved state with exact state: 0.9999906233109686\n" ] } ], @@ -534,10 +534,10 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.665700Z", - "iopub.status.busy": "2023-10-25T21:53:41.665151Z", - "iopub.status.idle": "2023-10-25T21:53:41.682901Z", - "shell.execute_reply": "2023-10-25T21:53:41.682093Z" + "iopub.execute_input": "2023-10-25T22:37:01.191299Z", + "iopub.status.busy": "2023-10-25T22:37:01.190992Z", + "iopub.status.idle": "2023-10-25T22:37:01.208147Z", + "shell.execute_reply": "2023-10-25T22:37:01.207353Z" } }, "outputs": [ @@ -545,7 +545,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9999999336740071\n" + "Fidelity of Trotter-evolved state with exact state: 0.9999999336740067\n" ] } ], diff --git a/.doctrees/nbsphinx/tutorials/04-lucj.ipynb b/.doctrees/nbsphinx/tutorials/04-lucj.ipynb index 70307138c..67833f1b8 100644 --- a/.doctrees/nbsphinx/tutorials/04-lucj.ipynb +++ b/.doctrees/nbsphinx/tutorials/04-lucj.ipynb @@ -14,10 +14,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:44.078429Z", - "iopub.status.busy": "2023-10-25T21:53:44.077924Z", - "iopub.status.idle": "2023-10-25T21:53:44.812655Z", - "shell.execute_reply": "2023-10-25T21:53:44.811830Z" + "iopub.execute_input": "2023-10-25T22:37:03.486939Z", + "iopub.status.busy": "2023-10-25T22:37:03.486686Z", + "iopub.status.idle": "2023-10-25T22:37:04.171218Z", + "shell.execute_reply": "2023-10-25T22:37:04.170426Z" } }, "outputs": [ @@ -32,7 +32,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "CASCI E = -77.6290254326718 E(CI) = -3.57322412553863 S^2 = 0.0000000\n" + "CASCI E = -77.6290254326716 E(CI) = -3.57322412553862 S^2 = 0.0000000\n" ] } ], @@ -110,10 +110,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:44.817817Z", - "iopub.status.busy": "2023-10-25T21:53:44.816247Z", - "iopub.status.idle": "2023-10-25T21:53:45.434451Z", - "shell.execute_reply": "2023-10-25T21:53:45.433734Z" + "iopub.execute_input": "2023-10-25T22:37:04.175035Z", + "iopub.status.busy": "2023-10-25T22:37:04.174671Z", + "iopub.status.idle": "2023-10-25T22:37:04.834102Z", + "shell.execute_reply": "2023-10-25T22:37:04.833507Z" } }, "outputs": [ @@ -121,14 +121,14 @@ "name": "stdout", "output_type": "stream", "text": [ - "E(CCSD) = -77.49387212754468 E_corr = -0.0482453631485136\n" + "E(CCSD) = -77.49387212754473 E_corr = -0.04824536314851268\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Energy at initialialization: -77.46975600021709\n" + "Energy at initialialization: -77.46975600021676\n" ] } ], @@ -176,10 +176,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:45.439326Z", - "iopub.status.busy": "2023-10-25T21:53:45.438024Z", - "iopub.status.idle": "2023-10-25T21:55:25.791712Z", - "shell.execute_reply": "2023-10-25T21:55:25.791019Z" + "iopub.execute_input": "2023-10-25T22:37:04.838993Z", + "iopub.status.busy": "2023-10-25T22:37:04.838311Z", + "iopub.status.idle": "2023-10-25T22:38:17.168913Z", + "shell.execute_reply": "2023-10-25T22:38:17.168300Z" } }, "outputs": [ @@ -191,12 +191,12 @@ " message: CONVERGENCE: REL_REDUCTION_OF_F_<=_FACTR*EPSMCH\n", " success: True\n", " status: 0\n", - " fun: -77.62901312277772\n", - " x: [-6.514e-01 2.992e-01 ... -3.724e-01 -2.902e-02]\n", - " nit: 311\n", - " jac: [ 2.132e-05 -1.847e-05 ... -3.268e-05 -2.274e-05]\n", - " nfev: 24163\n", - " njev: 331\n", + " fun: -77.62902198093012\n", + " x: [-2.843e-01 5.591e-01 ... -1.720e-01 -3.600e-01]\n", + " nit: 269\n", + " jac: [ 2.416e-05 -3.126e-05 ... -1.606e-04 9.948e-06]\n", + " nfev: 21316\n", + " njev: 292\n", " hess_inv: <72x72 LbfgsInvHessProduct with dtype=float64>\n" ] } @@ -251,10 +251,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:55:25.795545Z", - "iopub.status.busy": "2023-10-25T21:55:25.795176Z", - "iopub.status.idle": "2023-10-25T21:56:39.495475Z", - "shell.execute_reply": "2023-10-25T21:56:39.494482Z" + "iopub.execute_input": "2023-10-25T22:38:17.173783Z", + "iopub.status.busy": "2023-10-25T22:38:17.172653Z", + "iopub.status.idle": "2023-10-25T22:39:33.968944Z", + "shell.execute_reply": "2023-10-25T22:39:33.968334Z" } }, "outputs": [ @@ -266,12 +266,12 @@ " message: CONVERGENCE: REL_REDUCTION_OF_F_<=_FACTR*EPSMCH\n", " success: True\n", " status: 0\n", - " fun: -77.62654295304475\n", - " x: [-3.511e-01 9.702e-01 ... 2.266e-01 6.193e-01]\n", - " nit: 360\n", - " jac: [ 4.547e-05 -2.217e-04 ... 6.537e-05 9.805e-05]\n", - " nfev: 17954\n", - " njev: 382\n", + " fun: -77.62848215844997\n", + " x: [ 6.198e-01 -6.593e-02 ... 1.183e-01 -1.078e-01]\n", + " nit: 450\n", + " jac: [ 1.492e-04 -2.629e-04 ... 1.435e-04 -3.638e-04]\n", + " nfev: 22701\n", + " njev: 483\n", " hess_inv: <46x46 LbfgsInvHessProduct with dtype=float64>\n" ] } diff --git a/.doctrees/nbsphinx/tutorials/05-entanglement-forging.ipynb b/.doctrees/nbsphinx/tutorials/05-entanglement-forging.ipynb index 05eb57a0e..fa8dfa58b 100644 --- a/.doctrees/nbsphinx/tutorials/05-entanglement-forging.ipynb +++ b/.doctrees/nbsphinx/tutorials/05-entanglement-forging.ipynb @@ -14,10 +14,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:41.347499Z", - "iopub.status.busy": "2023-10-25T21:56:41.347061Z", - "iopub.status.idle": "2023-10-25T21:56:41.952534Z", - "shell.execute_reply": "2023-10-25T21:56:41.951903Z" + "iopub.execute_input": "2023-10-25T22:39:35.902653Z", + "iopub.status.busy": "2023-10-25T22:39:35.902244Z", + "iopub.status.idle": "2023-10-25T22:39:36.610182Z", + "shell.execute_reply": "2023-10-25T22:39:36.609495Z" } }, "outputs": [ @@ -32,7 +32,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "CASCI E = -75.7079508859772 E(CI) = -14.3336207346504 S^2 = 0.0000000\n" + "CASCI E = -75.7079508859773 E(CI) = -14.3336207346502 S^2 = 0.0000000\n" ] } ], @@ -90,10 +90,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:41.956825Z", - "iopub.status.busy": "2023-10-25T21:56:41.955773Z", - "iopub.status.idle": "2023-10-25T21:56:41.984310Z", - "shell.execute_reply": "2023-10-25T21:56:41.983733Z" + "iopub.execute_input": "2023-10-25T22:39:36.614713Z", + "iopub.status.busy": "2023-10-25T22:39:36.614126Z", + "iopub.status.idle": "2023-10-25T22:39:36.641876Z", + "shell.execute_reply": "2023-10-25T22:39:36.641194Z" } }, "outputs": [ @@ -101,7 +101,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Energy at initialialization: -75.68366174447614\n" + "Energy at initialialization: -75.68366174447621\n" ] } ], @@ -135,10 +135,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:41.987584Z", - "iopub.status.busy": "2023-10-25T21:56:41.987058Z", - "iopub.status.idle": "2023-10-25T21:56:44.585083Z", - "shell.execute_reply": "2023-10-25T21:56:44.584230Z" + "iopub.execute_input": "2023-10-25T22:39:36.645471Z", + "iopub.status.busy": "2023-10-25T22:39:36.644784Z", + "iopub.status.idle": "2023-10-25T22:39:38.706845Z", + "shell.execute_reply": "2023-10-25T22:39:38.706152Z" } }, "outputs": [ @@ -150,8 +150,8 @@ " message: Maximum number of function evaluations has been exceeded.\n", " success: False\n", " status: 2\n", - " fun: -75.69448131178467\n", - " x: [ 1.354e+00 9.651e-02 -1.863e-03 1.095e+00 -2.132e-01]\n", + " fun: -75.69430210093412\n", + " x: [ 1.344e+00 8.447e-02 -1.883e-03 1.105e+00 -1.881e-01]\n", " nfev: 100\n", " maxcv: 0.0\n" ] diff --git a/.doctrees/nbsphinx/tutorials/06-fermion-operator.ipynb b/.doctrees/nbsphinx/tutorials/06-fermion-operator.ipynb index bd91d074e..300ae3e7f 100644 --- a/.doctrees/nbsphinx/tutorials/06-fermion-operator.ipynb +++ b/.doctrees/nbsphinx/tutorials/06-fermion-operator.ipynb @@ -29,10 +29,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.230891Z", - "iopub.status.busy": "2023-10-25T21:56:46.230482Z", - "iopub.status.idle": "2023-10-25T21:56:46.593704Z", - "shell.execute_reply": "2023-10-25T21:56:46.592852Z" + "iopub.execute_input": "2023-10-25T22:39:40.366920Z", + "iopub.status.busy": "2023-10-25T22:39:40.366331Z", + "iopub.status.idle": "2023-10-25T22:39:40.732340Z", + "shell.execute_reply": "2023-10-25T22:39:40.731690Z" } }, "outputs": [ @@ -40,9 +40,9 @@ "data": { "text/plain": [ "FermionOperator({\n", + " (cre_a(3), des_a(0)): -0.25,\n", " (cre_b(1), des_b(5), cre_a(4)): 1+1j,\n", - " (cre_a(0), des_a(3)): 0.5,\n", - " (cre_a(3), des_a(0)): -0.25\n", + " (cre_a(0), des_a(3)): 0.5\n", "})" ] }, @@ -76,17 +76,17 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.597330Z", - "iopub.status.busy": "2023-10-25T21:56:46.596978Z", - "iopub.status.idle": "2023-10-25T21:56:46.604015Z", - "shell.execute_reply": "2023-10-25T21:56:46.603028Z" + "iopub.execute_input": "2023-10-25T22:39:40.737597Z", + "iopub.status.busy": "2023-10-25T22:39:40.736319Z", + "iopub.status.idle": "2023-10-25T22:39:40.743718Z", + "shell.execute_reply": "2023-10-25T22:39:40.742835Z" } }, "outputs": [ { "data": { "text/plain": [ - "'FermionOperator({((True, True, 1), (False, True, 5), (True, False, 4)): 1+1j, ((True, False, 0), (False, False, 3)): 0.5+0j, ((True, False, 3), (False, False, 0)): -0.25+0j})'" + "'FermionOperator({((True, False, 3), (False, False, 0)): -0.25+0j, ((True, True, 1), (False, True, 5), (True, False, 4)): 1+1j, ((True, False, 0), (False, False, 3)): 0.5+0j})'" ] }, "execution_count": 2, @@ -110,10 +110,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.607682Z", - "iopub.status.busy": "2023-10-25T21:56:46.607460Z", - "iopub.status.idle": "2023-10-25T21:56:46.614940Z", - "shell.execute_reply": "2023-10-25T21:56:46.614327Z" + "iopub.execute_input": "2023-10-25T22:39:40.748237Z", + "iopub.status.busy": "2023-10-25T22:39:40.747115Z", + "iopub.status.idle": "2023-10-25T22:39:40.754695Z", + "shell.execute_reply": "2023-10-25T22:39:40.754158Z" } }, "outputs": [ @@ -121,17 +121,17 @@ "data": { "text/plain": [ "FermionOperator({\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", - " (cre_a(0), des_a(3)): 1,\n", - " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -0.25-0.25j,\n", - " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,\n", + " (cre_a(3), des_a(0)): -0.5,\n", + " (cre_b(2)): 0-0.25j,\n", " (cre_a(0), des_a(3), cre_b(2)): 0+0.5j,\n", + " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -0.25-0.25j,\n", " (des_a(3), des_b(3)): 0.0625,\n", - " (cre_a(3), des_a(0)): -0.5,\n", - " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625,\n", " (cre_a(3), des_a(0), cre_b(2)): 0-0.25j,\n", - " (cre_b(2)): 0-0.25j,\n", - " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): -1+1j\n", + " (cre_a(0), des_a(3)): 1,\n", + " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125\n", "})" ] }, @@ -169,10 +169,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.618541Z", - "iopub.status.busy": "2023-10-25T21:56:46.618310Z", - "iopub.status.idle": "2023-10-25T21:56:46.624843Z", - "shell.execute_reply": "2023-10-25T21:56:46.624168Z" + "iopub.execute_input": "2023-10-25T22:39:40.759235Z", + "iopub.status.busy": "2023-10-25T22:39:40.758153Z", + "iopub.status.idle": "2023-10-25T22:39:40.765084Z", + "shell.execute_reply": "2023-10-25T22:39:40.764539Z" } }, "outputs": [ @@ -180,17 +180,17 @@ "data": { "text/plain": [ "FermionOperator({\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", - " (cre_a(0), des_a(3)): 0-6j,\n", - " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -1+1j,\n", - " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,\n", + " (cre_a(3), des_a(0)): 0+3j,\n", + " (cre_b(2)): -5,\n", " (cre_a(0), des_a(3), cre_b(2)): 2,\n", + " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -1+1j,\n", " (des_a(3), des_b(3)): 0-1.25j,\n", - " (cre_a(3), des_a(0)): 0+3j,\n", - " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j,\n", " (cre_a(3), des_a(0), cre_b(2)): -1,\n", - " (cre_b(2)): -5,\n", - " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): 4+4j\n", + " (cre_a(0), des_a(3)): 0-6j,\n", + " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j\n", "})" ] }, @@ -219,10 +219,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.628819Z", - "iopub.status.busy": "2023-10-25T21:56:46.628590Z", - "iopub.status.idle": "2023-10-25T21:56:46.634834Z", - "shell.execute_reply": "2023-10-25T21:56:46.634045Z" + "iopub.execute_input": "2023-10-25T22:39:40.769541Z", + "iopub.status.busy": "2023-10-25T22:39:40.768482Z", + "iopub.status.idle": "2023-10-25T22:39:40.774962Z", + "shell.execute_reply": "2023-10-25T22:39:40.774400Z" } }, "outputs": [ @@ -230,16 +230,16 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (cre_b(1), cre_a(4), des_b(5)): -12+12j,\n", - " (cre_b(2)): -5,\n", + " (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,\n", + " (des_b(3), des_a(3)): 0+1.25j,\n", " (cre_b(2), cre_a(3), des_a(0)): -1,\n", " (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j,\n", - " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n", - " (cre_b(2), cre_a(0), des_a(3)): 2,\n", " (cre_a(0), des_a(3)): 0-6j,\n", - " (des_b(3), des_a(3)): 0+1.25j,\n", " (cre_a(3), des_a(0)): 0+3j,\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(1), cre_a(4), des_b(5)): -12+12j,\n", + " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n", + " (cre_b(2)): -5\n", "})" ] }, @@ -264,10 +264,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.638995Z", - "iopub.status.busy": "2023-10-25T21:56:46.638794Z", - "iopub.status.idle": "2023-10-25T21:56:46.644017Z", - "shell.execute_reply": "2023-10-25T21:56:46.643220Z" + "iopub.execute_input": "2023-10-25T22:39:40.779369Z", + "iopub.status.busy": "2023-10-25T22:39:40.778283Z", + "iopub.status.idle": "2023-10-25T22:39:40.784339Z", + "shell.execute_reply": "2023-10-25T22:39:40.783767Z" } }, "outputs": [ @@ -297,10 +297,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.649003Z", - "iopub.status.busy": "2023-10-25T21:56:46.648427Z", - "iopub.status.idle": "2023-10-25T21:56:46.655255Z", - "shell.execute_reply": "2023-10-25T21:56:46.654615Z" + "iopub.execute_input": "2023-10-25T22:39:40.789452Z", + "iopub.status.busy": "2023-10-25T22:39:40.788382Z", + "iopub.status.idle": "2023-10-25T22:39:40.795811Z", + "shell.execute_reply": "2023-10-25T22:39:40.795259Z" } }, "outputs": [ @@ -340,21 +340,21 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.658481Z", - "iopub.status.busy": "2023-10-25T21:56:46.658055Z", - "iopub.status.idle": "2023-10-25T21:56:46.668426Z", - "shell.execute_reply": "2023-10-25T21:56:46.667669Z" + "iopub.execute_input": "2023-10-25T22:39:40.800327Z", + "iopub.status.busy": "2023-10-25T22:39:40.799255Z", + "iopub.status.idle": "2023-10-25T22:39:40.808120Z", + "shell.execute_reply": "2023-10-25T22:39:40.807530Z" } }, "outputs": [ { "data": { "text/plain": [ - "array([ 0. +0.j , 0. +0.j ,\n", - " 0. +0.j , 0. +0.j ,\n", - " -0.11069268+0.09977553j, 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.14416721+0.01183319j, 0. +0.j ,\n", + " 0. +0.j , 0. +0.j ,\n", + " 0. +0.j ])" ] }, "execution_count": 8, @@ -379,10 +379,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.673633Z", - "iopub.status.busy": "2023-10-25T21:56:46.672103Z", - "iopub.status.idle": "2023-10-25T21:56:46.689493Z", - "shell.execute_reply": "2023-10-25T21:56:46.688934Z" + "iopub.execute_input": "2023-10-25T22:39:40.812478Z", + "iopub.status.busy": "2023-10-25T22:39:40.811398Z", + "iopub.status.idle": "2023-10-25T22:39:40.826762Z", + "shell.execute_reply": "2023-10-25T22:39:40.826205Z" } }, "outputs": [ diff --git a/.doctrees/tutorials/03-double-factorized.doctree b/.doctrees/tutorials/03-double-factorized.doctree index c6e7bf4ba2298e51501eb4457d0c11c41d9227ce..61df3933ff9f7059c5ecb87d4b6aeedb282a74d4 100644 GIT binary patch delta 2927 zcmeHJ&1(}u6z{f;sYz*}P(ApOjbic8U3b2AXJcu_STNuxh?S;$@DQ4MY3Z>jC@7>7 zyu7qtw5bXnY@vpz7iqmn+t7ANo$5uWbyIX86uaJdyRohg2BMwtDt4)sHC4%)woP%t ztbsyw4@7!`wea{4T@@d-?ZXp+<@i8j+|8bIq?S3=sW%6=X3lz{sYM3AC;v~aDSkSW zJgx{B$#k|!Uim4=dT_nu@Gvu`40+Y)<#>k+l%K&}_1R5m1b&Y@%2BX09bw7+m}fm3 zX~pMvpYB#n=*#tCJD2;3t*-Ak>(IQ$iQLLBlW@cw+e^e?crJz#9-_p2H4}l<9N-v67t%pim z3!-mZJsG1Y*!IwxV89YT#;0&n&76eg_Tqo zr;1b=Gfa!?I=a~CLeZ%lq|m0dUPDhy3PYC+J-J1xhRmAIq{%#{f@cLt6|QpAuqUN zGc|mzP%cXqOb8w80k^~(jjOtjrNgw7ieP>^oN1b1B@ZkX#>;6+YFtZnrB=!;=HjH&ZoHqZqLeM=nL{k13?HzB2`B*ES#lbR!LVDaGyFs03 z58K5bV$$CdJ9~QKNr*`J31@IU<$l7oaGnPtF*V@tqVRbtjn??|p@?)x-RthKn~I)q z0g`Tk?-PyB?%oL!4rK8tyiG^Y`gVUA*8G~aPH~h z=JJc(qz^)9<}$f~X<5*mvr8eBAyIfd>yR#(pXmyfvhsJ?dvn_w|Hkbs{+s(pZguYE t=VIL&lS3@u=RJn=U%iKy>&VMX1v3g;UOn{8c;)~M=GUW{jl6yr`30qUF;QVaxXau7|4ZHYfpq)`Z;=#eBNl)&A${=EB5Q?#Z)?tHXD1 zHsx6G+q*nQxqx)unBflBbJv4(vpP|3R^7wDA0AVOfw^_<6O{9}0;e-~uIm&g^ZB`d zB`>KmFT#{p)Yi|bWm4I9i#RVIe8Incvyg32B84d}lTaOXep`!Z#h_R)t74c0AsgG0 zgc4(n41yhMhM{3$Zicelxm$s-ajd9XoFS0UD|l~c(cAUvbW!MV~#@% zz}Jh}r1t=NaXH)}a_{G0~;z$@K=ZwFUkex;Vk27IryaJ3GjQyI#@iz_o`*-=XI%nHm{ zKZ2-Zk~o5xu%NxS1gpEPgqH8O_tv#RYwuxbMDOpRxZ@B*@Q?S?$?pP=_ahLcUi}z! fB%|Jj+;H2VqiUsIhc7P~d_8!Z_$K^2uf^maX;ol4 delta 2610 zcmeBL&D64*iKT&cYUM_jXZ(y7lM4l;7>y_Q2uMzr7YIb+zk{=<2`)rpYfWn7nA|Ef z6)t2Z91CM_UN1aFlfB%gpeWUjYjU206qA|7DR6E(su9$Jnb&^6XGH-gCM0%Z(9GDfjb&3Tz6Rtm<3hEQ%+VlvPypaF))AZ4Zsx`uidCgxx! z#4Hm%BQpz#l#!m1Imld7s9||&sby9QMka=4#t`H3vOogH#)gxhhj>h$6Fg%`I)3x> zkQ_$RTwWcMlagOjTuZgEueL)nk&Fn~ED$a@)cr77AUtqV8|P$;$a|#4#$d?=C!ESQwZBrBF*BLvu@0 z6O_`&!f5jLMvuuk4bz6G^EYpA%w{Cj?eG$aO5yLIfH0A)NZ9Wp` W)Yup-8DVz&iJ|Ls>&?NP<~#uR)>w)F diff --git a/.doctrees/tutorials/05-entanglement-forging.doctree b/.doctrees/tutorials/05-entanglement-forging.doctree index 2dd4444f4296fb0825c8e9ce2febf5af9ce2574a..c7100c277c7f30b31a62ff4502b80ecdaa199f42 100644 GIT binary patch delta 621 zcmbPJKBs(xhajWz?tC#F!p9%(H<@) zBg4tF<()y)1NpNcYP~`^gc6%ephQkz+oQaL@14U7y83@nXJ42`%HAfUoZ zAzHyu&)CEyRolQoLBT@L#Kb&R*T6_Y*HF*G!WhUjRsbq6G%y7#0E-$<-mjxM`HuE1 s>Y2ECzm6{>^^5~LP-$|x-c>4_xLyArRZUc!EN?i8x+ZRxHfrPq076caqW}N^ delta 621 zcmbPJKBs(xhajWT?tC#F!p9%(H<@) zLzBs~<()y)1NpNcYP~`^gc6%ephQkz+oQaL?MEDVhe4b3e~%*?qIAfUoZ zAzHyu&)C!?RolQoLBUeb%+xSd*T6_Y*HF*G%oxZtRsbq6urviL&^6LCG&Y*NUq^HD v9qn1vGja2N9bZQ383%Nr(&Tczt5h~|yZ%3_ny5Hg-f$9iP24PP)W`_{^OBS; diff --git a/.doctrees/tutorials/06-fermion-operator.doctree b/.doctrees/tutorials/06-fermion-operator.doctree index 32f590898ee5df7ba351309dbaad7c98ed822a5c..79330dbeece826a1d8dd7e1434c0c7f76c9af986 100644 GIT binary patch delta 2168 zcmcJPTS${(9L9Cb!O zsK+QUG`b6lvJnJA2|`p}*iCnK5foiy*lh=>*D+!0Rn1*}{Ga##KJUx_`MuxgW!{5j z9{*z6t+@sMB!v}<0^=-(rkRg9N{f$_WtTRlc!df!H`N5%Yrs*Z5%bDZJCxzP*m4MP#Y?ofgmvl+r_ELqBumH`vbMf*qy*{pt$PHgI z(cUV>2ZtWDP94Ttq~xoF+LVJKa~2jIa)g;Y_#5*v?ht`>s?pIxVT6|9vcm$gQv`L5 zoUDscZ<634CB{8dAyye%Qhe9UZ^%R?@U!Kp^BVb;OgV#2s{t=9xfpH|p@z-Ib5@0U zn+&3+tTeiuuBygq*Fj7Z<*Y}Ed{%=juNdvtY|nq(XiIa61@MGJ+E1{ooxH1;Z}C@tSZIVf|=qZAA_rSoL7vn z_d+bdIWF&>yG*UBkyxZze`MTG7#%g-0QAH249t7@NSn=+)u4 zzY+sxA+Gl_X{8QLWi{3V%?Ua@3x0xxQ{#RYgUN0YzHw~`xHK4Sl3+9B$?h`Dax|&; z!P{-YDwh@w)We1TdEaJe13fbd-gx}vp~M^_*1n&Gvdq+!l-iNeo_b;D=xFD8V>=e6 z6etR7aA!&hZFs+eu3{_}#%eP$D5_*bHHTDvMp+$FMp?T7p?Pukx- delta 2355 zcmcJQT}V@57{}Fgn_t_`)U&hsv1QJ$O*@-A$Kx`QK&Rq#3PF~WZ7OYICKiaI=}nkn zV*QnF%B~}`Vgx~1k`PItS3#6yLD7wUFGGV{hY4DN&$NAyeNp=gLp~WYI4$}a6Eu9PJkMb)U<+-SW;*}7 z*QL9)Cr?nHv)c}B=r7Cg-Q_B;l7ZJ zPl5qH;_GxJV46!rlOW(paS}3k3S~76mh2Q+vnX$uql-%-vAN;a?=VI@(J*&#A<^A?;JE%s|=V3Xy9rTnaaUtRW4?{v1lQ&r8d(cyV;I5ryzL^fAyQc zpYB{uG66~rk6#^zib1|R9@V@EmJZ5V85BYS>Ub3_>zn~AuEY3PlZ17bh*&;( zno;RWAsH+Xp|aQRK&8dOS2(Xbg0Z>*$>+4>HcMS2^rA5o2d_7U{8+X@c;;zAeWT(= z(29AF0<(cse9&tMYjK$Jh|DMnL&<3N*s#`8zu(Zu-Y?i_qqju6*Omw;M?vOyV$&51 zb-Nu8+OlzuNPgO{#B-l0u!;ztg4?b9mcXvoz`o-}`8wMt_uG2^*%SK=4e`OB=@b*?|J<(>gG%D^|SL-&XRy(2pK#~E?Wh}VLZSource code for ffsim.states.states
         >>> norb = 3
         >>> nelec = (2, 1)
         >>> dim = ffsim.dim(norb, nelec)
-        >>> strings = ffsim.indices_to_strings(range(dim), norb, nelec)
-        >>> assert strings == [
-                "011001",
-                "011010",
-                "011100",
-                "101001",
-                "101010",
-                "101100",
-                "110001",
-                "110010",
-                "110100",
-            ]
+        >>> ffsim.indices_to_strings(range(dim), norb, nelec)
+        ['011001', '011010', '011100', '101001', '101010', '101100', '110001', \
+'110010', '110100']
     """
     n_alpha, n_beta = nelec
     dim_b = comb(norb, n_beta, exact=True)
diff --git a/api/ffsim.html b/api/ffsim.html
index 2a59ff885..5294fabef 100644
--- a/api/ffsim.html
+++ b/api/ffsim.html
@@ -1274,18 +1274,8 @@
 
>>> norb = 3
 >>> nelec = (2, 1)
 >>> dim = ffsim.dim(norb, nelec)
->>> strings = ffsim.indices_to_strings(range(dim), norb, nelec)
->>> assert strings == [
-        "011001",
-        "011010",
-        "011100",
-        "101001",
-        "101010",
-        "101100",
-        "110001",
-        "110010",
-        "110100",
-    ]
+>>> ffsim.indices_to_strings(range(dim), norb, nelec)
+['011001', '011010', '011100', '101001', '101010', '101100', '110001', '110010', '110100']
 
diff --git a/searchindex.js b/searchindex.js index 9a72085a1..766048bdb 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["api/ffsim", "api/ffsim.contract", "api/ffsim.linalg", "api/ffsim.random", "api/ffsim.testing", "index", "tutorials/01-introduction", "tutorials/02-orbital-rotation", "tutorials/03-double-factorized", "tutorials/04-lucj", "tutorials/05-entanglement-forging", "tutorials/06-fermion-operator"], "filenames": ["api/ffsim.rst", "api/ffsim.contract.rst", "api/ffsim.linalg.rst", "api/ffsim.random.rst", "api/ffsim.testing.rst", "index.rst", "tutorials/01-introduction.ipynb", "tutorials/02-orbital-rotation.ipynb", "tutorials/03-double-factorized.ipynb", "tutorials/04-lucj.ipynb", "tutorials/05-entanglement-forging.ipynb", "tutorials/06-fermion-operator.ipynb"], "titles": ["ffsim", "ffsim.contract", "ffsim.linalg", "ffsim.random", "ffsim.testing", "Welcome to ffsim\u2019s documentation!", "Introduction to ffsim", "Orbital rotations and quadratic Hamiltonians", "Diagonal Coulomb operators and double-factorized Trotter simulation", "The local unitary cluster Jastrow (LUCJ) ansatz", "Entanglement forging", "The FermionOperator class"], "terms": {"i": [0, 1, 2, 3, 5, 6, 7, 8, 9, 11], "softwar": [0, 5, 6], "librari": [0, 5, 6], "fast": 0, "simul": [0, 5, 6, 7, 9, 10], "fermion": [0, 5, 6, 7, 9, 11], "quantum": [0, 5, 6, 8, 9], "circuit": [0, 5, 6], "class": [0, 3, 5, 6, 9], "doublefactorizedhamiltonian": [0, 5, 8], "one_body_tensor": [0, 7, 8], "diag_coulomb_mat": [0, 8], "orbital_rot": [0, 1, 6, 7, 8], "constant": [0, 8, 9], "0": [0, 7, 8, 9, 10, 11], "z_represent": [0, 1], "fals": [0, 1, 2, 10, 11], "sourc": [0, 1, 2, 3, 4], "base": [0, 2, 9, 10], "object": [0, 2, 9, 11], "A": [0, 1, 2, 3, 4, 7, 8, 9, 11], "hamiltonian": [0, 5, 9, 10], "doubl": [0, 2, 5, 9], "factor": [0, 2, 5, 9], "form": [0, 1, 2, 7, 8, 9, 11], "low": [0, 2, 6], "rank": [0, 2, 3], "decomposit": [0, 2], "The": [0, 1, 2, 3, 4, 5, 6, 7, 8], "molecular": [0, 9, 10], "h": [0, 8, 9, 10], "sum_": [0, 1, 2, 7, 8, 9], "pq": [0, 2, 8], "sigma": [0, 1, 7, 8, 9], "kappa_": 0, "dagger_": [0, 7, 8], "p": [0, 2, 8, 9], "a_": [0, 7, 8, 11], "q": [0, 8], "frac12": [0, 8, 9], "sum_t": 0, "ij": [0, 1, 2, 7, 8, 9], "tau": [0, 1, 8, 9], "z": [0, 1, 2, 5, 6, 11], "t": [0, 2, 7, 8], "_": [0, 2, 7, 8, 9], "n": [0, 2, 6, 7, 8, 9], "j": [0, 1, 7, 8, 9, 11], "text": [0, 8], "where": [0, 1, 2, 7, 8, 9], "u": [0, 1, 2], "pi": [0, 10], "qi": 0, "here": [0, 2, 6, 7, 8], "each": [0, 2, 6, 8, 9, 11], "unitari": [0, 1, 2, 3, 5, 7, 8], "matrix": [0, 1, 2, 3, 6, 7, 8, 9, 11], "real": [0, 1, 2, 3, 7, 8, 9, 10], "symmetr": [0, 1, 2, 3, 8, 9], "represent": [0, 1, 2, 6, 11], "an": [0, 1, 2, 3, 6, 7, 8, 9, 11], "altern": [0, 8], "sometim": 0, "yield": [0, 2, 8, 9], "simpler": 0, "under": 0, "jordan": 0, "wigner": 0, "transform": [0, 1, 6, 7], "number": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11], "oper": [0, 1, 2, 5, 7, 9, 10, 11], "take": [0, 6, 9], "frac": 0, "1": [0, 2, 3, 6, 7, 8, 9, 10, 11], "2": [0, 1, 2, 3, 6, 7, 8, 9, 10, 11], "pauli": 0, "rotat": [0, 1, 2, 5, 6, 8, 9], "basi": [0, 7, 8, 9, 10], "obtain": [0, 7, 8, 9], "rewrit": 0, "two": [0, 2, 3, 8, 9, 10], "bodi": [0, 1, 2, 3, 8, 9, 10], "part": [0, 2], "term": [0, 1, 2, 8, 9, 11], "updat": [0, 8], "one": [0, 1, 2, 6, 8, 9, 10], "appropri": 0, "kappa": 0, "frac18": 0, "asterisk": 0, "denot": [0, 1, 7], "summat": 0, "over": 0, "indic": [0, 2, 9, 11], "neq": [0, 1], "tensor": [0, 1, 2, 3, 8, 9, 10], "type": [0, 1, 2, 3, 4], "np": [0, 3, 4, 7, 8, 9, 10], "ndarrai": [0, 1, 2, 3, 8], "diagon": [0, 1, 2, 5, 7, 9], "coulomb": [0, 1, 2, 5, 9], "matric": [0, 1, 2, 7, 8, 9], "orbit": [0, 1, 2, 3, 4, 5, 6, 8, 9, 11], "float": [0, 2, 3, 8], "whether": [0, 1, 2, 11], "rather": [0, 6], "than": [0, 5, 6, 9], "bool": [0, 1, 2], "static": 0, "from_molecular_hamiltonian": [0, 8], "tol": [0, 2], "1e": [0, 2], "08": [0, 2], "max_vec": [0, 2], "none": [0, 1, 2, 3, 4], "optim": [0, 2, 9, 10], "method": [0, 2, 9, 10], "l": [0, 2, 8, 9], "bfg": [0, 2, 9], "b": [0, 2, 7, 9], "option": [0, 1, 2, 3, 9, 10], "diag_coulomb_mask": [0, 2], "choleski": [0, 2], "true": [0, 2, 6, 9, 11], "act": [0, 11], "h_": [0, 2, 8], "pqr": [0, 2, 8], "r": [0, 2, 8], "": [0, 2, 6, 8, 9, 10, 11], "decompos": [0, 2, 8], "ar": [0, 1, 2, 3, 6, 7, 8, 9, 11], "output": [0, 8, 9], "guarante": 0, "so": [0, 2, 7, 8, 9, 11], "depend": [0, 2, 6], "allow": [0, 2, 9], "error": [0, 2], "threshold": [0, 2], "larger": [0, 2, 11], "lead": 0, "smaller": [0, 2, 8, 11], "furthermor": [0, 2], "max_rank": 0, "paramet": [0, 1, 2, 3, 4, 9, 10], "specifi": [0, 2, 9], "upper": [0, 2, 9], "bound": [0, 2], "default": [0, 2, 3], "behavior": [0, 2, 3], "thi": [0, 2, 5, 6, 7, 8, 9, 10], "routin": [0, 2, 6, 11], "perform": [0, 2, 7, 8], "straightforward": [0, 2], "exact": [0, 2, 6, 8], "nest": [0, 2], "eigenvalu": [0, 2, 7], "addition": [0, 2], "can": [0, 2, 5, 6, 7, 8, 9, 11], "choos": [0, 2, 6, 9], "coeffici": [0, 1, 2, 7, 9, 11], "store": [0, 2, 8, 9], "achiev": [0, 2, 8], "compress": [0, 2], "enabl": [0, 2], "set": [0, 2, 6, 7, 8, 9], "attempt": [0, 2], "minim": [0, 2, 9, 10], "least": [0, 2], "squar": [0, 2, 9], "function": [0, 1, 2, 6, 7, 8, 9, 10, 11], "quantifi": [0, 2], "It": [0, 2, 6, 8, 11], "us": [0, 1, 2, 3, 5, 6, 7, 8, 9, 11], "scipi": [0, 2, 6, 7, 8, 9, 10, 11], "pass": [0, 2, 7, 11], "both": [0, 2], "its": [0, 2, 7, 8, 11], "gradient": [0, 2], "return": [0, 1, 2, 3, 4, 8, 9, 10, 11], "constrain": [0, 2], "have": [0, 2, 6, 7, 9, 11], "onli": [0, 2, 6, 7, 9], "certain": [0, 2], "element": [0, 2], "nonzero": [0, 2, 9], "which": [0, 2, 3, 6, 7, 8, 9, 11], "time": [0, 2, 6, 8], "boolean": [0, 2], "valu": [0, 1, 2, 3, 8, 9], "triangular": [0, 2], "becaus": [0, 2, 6, 8, 9, 11], "note": [0, 9, 11], "current": 0, "support": [0, 11], "two_body_tensor": [0, 2, 8], "toler": [0, 2, 9], "defin": [0, 2, 9, 10], "maximum": [0, 2, 3, 10], "absolut": [0, 2], "differ": [0, 1, 2, 9], "between": [0, 1, 2, 9], "origin": [0, 2, 8], "correspond": [0, 2, 7, 8], "reconstruct": [0, 2], "int": [0, 1, 2, 3, 4, 8, 10], "limit": [0, 2, 9], "keep": [0, 2], "argument": [0, 2, 7], "overrid": [0, 2], "str": [0, 2], "see": [0, 2], "document": [0, 2], "possibl": [0, 2], "callback": [0, 2], "usag": [0, 2, 11], "dict": [0, 2, 9, 10], "mask": [0, 2], "modifi": [0, 2], "If": [0, 1, 2, 3, 11], "full": [0, 2, 6], "instead": [0, 2], "much": [0, 2, 5, 6], "more": [0, 2, 6, 9], "expens": [0, 2], "ignor": [0, 2, 8], "refer": [0, 2, 3, 9], "arxiv": [0, 2, 3], "1808": [0, 2], "02625": [0, 2], "2104": [0, 2], "08957": [0, 2], "properti": [0, 7], "norb": [0, 1, 3, 4, 6, 7, 8, 9, 10, 11], "spatial": [0, 1, 4, 6, 8, 9, 11], "to_number_represent": 0, "to_z_represent": 0, "fermionact": [0, 5], "action": [0, 1, 7, 11], "spin": [0, 1, 5, 6, 7, 9, 10, 11], "orb": [0, 11], "namedtupl": 0, "alia": 0, "field": 0, "fermionoper": [0, 5], "coeff": [0, 1], "repres": [0, 6, 9, 11], "linear": [0, 1, 2, 7, 11], "combin": [0, 1, 7, 11], "product": [0, 8, 11], "creation": [0, 7, 11], "annihil": [0, 11], "tupl": [0, 1, 2, 4, 8, 11], "complex": [0, 1, 2, 3], "conserves_particle_numb": [0, 11], "conserv": [0, 6, 11], "particl": [0, 4, 5, 6, 7, 11], "otherwis": 0, "conserves_spin_z": [0, 11], "compon": [0, 5, 6, 11], "many_body_ord": 0, "mani": [0, 5], "order": [0, 6, 8, 9, 11], "length": [0, 6, 8, 9], "longest": 0, "contain": [0, 2, 9, 11], "normal_ord": [0, 11], "normal": [0, 11], "equival": 0, "ha": [0, 1, 2, 6, 7, 8, 9, 10], "been": [0, 10], "reorder": 0, "canon": 0, "In": [0, 7, 8, 9, 10, 11], "compris": [0, 11], "appear": [0, 11], "from": [0, 3, 6, 7, 9, 10, 11], "left": [0, 7, 11], "right": [0, 7, 11], "descend": [0, 11], "lexicograph": [0, 11], "That": [0, 7, 11], "all": [0, 9, 11], "befor": [0, 9, 11], "within": [0, 2, 11], "beta": [0, 1, 4, 6, 9, 11], "alpha": [0, 1, 4, 6, 9, 11], "hopgateansatzoper": [0, 5, 10], "interaction_pair": [0, 10], "theta": [0, 10], "hop": 0, "gate": [0, 9], "ansatz": [0, 5, 10], "moleculardata": [0, 5, 8, 9, 10], "nelec": [0, 1, 4, 6, 7, 8, 9, 10, 11], "core_energi": 0, "dipole_integr": 0, "orbital_symmetri": 0, "data": [0, 3, 8, 9, 10, 11], "electron": [0, 1, 3, 4, 6, 8], "core": [0, 2], "energi": [0, 7, 8, 9, 10], "dipol": 0, "integr": 0, "symmetri": [0, 5, 6, 7, 8, 9, 10], "from_hartree_fock": [0, 8, 9, 10], "hartree_fock": [0, 8, 9, 10], "active_spac": [0, 9, 10], "initi": [0, 3, 4, 8, 9, 10], "hartre": [0, 8, 9], "fock": [0, 8, 9], "calcul": [0, 6, 8, 9], "scf": [0, 8, 9, 10], "iter": 0, "list": [0, 1, 2, 4, 9, 10], "activ": [0, 9, 10], "space": [0, 9, 10], "molecularhamiltonian": [0, 5, 8], "call": [0, 6, 7, 8, 11], "supportsapplyunitari": [0, 5], "arg": 0, "kwarg": 0, "protocol": 0, "appli": [0, 1, 2, 6, 7, 8, 9], "vector": [0, 1, 2, 3, 6, 7, 9, 10, 11], "supportsapproximateequ": [0, 5], "compar": [0, 8], "approxim": [0, 2, 8], "supportslinearoper": [0, 5], "convert": [0, 1, 6, 7, 8, 11], "linearoper": [0, 1, 7, 8, 11], "supportstrac": [0, 5], "whose": [0, 2, 6], "trace": [0, 5, 8], "comput": [0, 2, 7, 9, 10], "ucjoper": [0, 5, 9], "diag_coulomb_mats_alpha_alpha": 0, "diag_coulomb_mats_alpha_beta": 0, "final_orbital_rot": 0, "cluster": [0, 5], "jastrow": [0, 5], "ucj": 0, "prod_": [0, 9], "k": [0, 2, 7, 8, 9, 11], "mathcal": [0, 1, 7, 8, 9], "w_k": [0, 9], "e": [0, 8, 9, 10, 11], "_k": [0, 8, 9], "dagger": [0, 1, 2, 7, 8, 9, 11], "mathbf": [0, 7, 8, 9], "n_": [0, 1, 6, 7, 8, 9], "commut": [0, 8, 9], "total": [0, 8, 9], "we": [0, 7, 8, 9, 10, 11], "enforc": [0, 9], "As": [0, 6, 7, 8, 9], "result": [0, 1, 2, 3, 7, 8, 9, 10], "describ": [0, 1, 6, 7, 8, 9, 11], "involv": [0, 9], "same": [0, 6, 9], "To": [0, 6, 7, 8, 9], "variat": [0, 9], "final": [0, 8, 9], "includ": [0, 2, 5, 6, 7, 8], "end": [0, 7, 9], "from_paramet": [0, 9], "param": 0, "n_rep": [0, 9, 10], "alpha_alpha_indic": [0, 9], "alpha_beta_indic": [0, 9], "with_final_orbital_rot": 0, "from_t_amplitud": [0, 9], "t2_amplitud": [0, 2], "t1_amplitud": 0, "t2": [0, 2, 3, 9], "t1": [0, 9], "amplitud": [0, 2, 3, 9], "repetit": [0, 9], "to_paramet": [0, 9], "to_t_amplitud": 0, "nocc": [0, 3], "possibli": 0, "apply_diag_coulomb_evolut": [0, 5, 8], "vec": [0, 1, 2, 6, 7, 8, 11], "mat": [0, 1, 2], "mat_alpha_beta": [0, 1], "occupations_a": [0, 1], "occupations_b": [0, 1], "strings_a": [0, 1], "strings_b": [0, 1], "orbital_rotation_index_a": 0, "orbital_rotation_index_b": 0, "copi": [0, 11], "evolut": [0, 8], "exp": [0, 7], "z_": [0, 1], "also": [0, 1, 7, 11], "given": [0, 1, 2, 7, 8], "place": [0, 1, 9, 11], "sum": [0, 1, 8, 10], "state": [0, 1, 3, 7, 8, 9, 10], "interact": [0, 1, 6], "occupi": [0, 1, 3, 4, 8], "string": [0, 1, 6, 11], "index": [0, 6, 9, 11], "alwai": [0, 2, 7], "newli": 0, "alloc": 0, "untouch": 0, "mai": [0, 2, 9], "still": [0, 9], "overwritten": 0, "evolv": [0, 8], "apply_fsim_g": [0, 5], "phi": 0, "target_orb": 0, "fsim": 0, "consist": 0, "tunnel": 0, "follow": [0, 6, 7, 8, 9, 11], "neg": 0, "sign": 0, "convent": 0, "angl": [0, 10], "nn": 0, "dagger_i": 0, "a_i": 0, "dagger_j": 0, "a_j": [0, 1], "when": [0, 8, 9, 11], "neighbor": 0, "qubit": [0, 9], "begin": [0, 7, 9], "pmatrix": 0, "co": [0, 10], "sin": [0, 10], "apply_givens_rot": [0, 5], "g": [0, 9], "apply_hop_g": [0, 5], "apply_num_interact": [0, 5], "apply_num_num_interact": [0, 5], "apply_num_op_prod_interact": [0, 5], "prod": 0, "sequenc": 0, "pair": [0, 4], "integ": 0, "give": [0, 7], "first": [0, 2, 7, 8, 9, 10], "second": [0, 2, 8, 10], "apply_num_op_sum_evolut": [0, 5, 7, 8], "lambda_i": [0, 1, 7], "rais": 0, "valueerror": 0, "must": [0, 2, 11], "dimension": [0, 2, 6], "apply_orbital_rot": [0, 5, 6, 7], "allow_row_permut": 0, "allow_col_permut": 0, "map": [0, 7, 11], "mapsto": [0, 7], "u_": 0, "ji": [0, 7], "log": 0, "permut": [0, 2], "row": [0, 6], "column": [0, 2, 6, 7], "wa": 0, "well": 0, "actual": [0, 7, 9], "effect": [0, 9], "apply_tunneling_interact": [0, 5], "apply_unitari": [0, 5, 9], "obj": 0, "ani": [0, 7, 9], "approx_eq": [0, 5], "other": [0, 9], "rtol": [0, 2], "05": [0, 2, 9], "atol": [0, 2], "equal": 0, "isclos": 0, "interpret": 0, "rel": [0, 2], "numer": [0, 2, 11], "up": [0, 7], "cre": [0, 5], "creat": [0, 6, 7, 8, 9, 11], "cre_a": [0, 5, 11], "cre_b": [0, 5, 11], "de": [0, 5], "destroi": [0, 11], "des_a": [0, 5, 11], "des_b": [0, 5, 11], "dim": [0, 3, 5, 6, 11], "get": [0, 7, 8, 9, 10], "dimens": [0, 3, 6], "fci": [0, 6, 9, 10], "dim_a": [0, 6], "dim_b": [0, 6], "expectation_one_body_pow": [0, 5], "one_rdm": 0, "power": 0, "expect": [0, 7], "w": [0, 7, 8], "slater": [0, 6, 7, 8], "determin": [0, 2, 6, 7, 8], "o": [0, 10], "m_": [0, 1, 2], "a_p": 0, "a_q": 0, "m": [0, 1, 2, 7], "let": [0, 8, 11], "lvert": [0, 9], "psi": [0, 9], "rangl": [0, 9], "Then": 0, "quantiti": 0, "langl": 0, "rvert": 0, "reduc": [0, 2], "densiti": 0, "expectation_one_body_product": [0, 5], "o_1": 0, "o_2": 0, "dot": 0, "o_k": 0, "indices_to_str": [0, 5], "statevector": [0, 6, 7], "bitstr": 0, "exampl": [0, 6, 7, 9, 11], "3": [0, 6, 7, 8, 9, 10, 11], "rang": [0, 6, 7, 8, 9], "assert": [0, 6], "011001": 0, "011010": 0, "011100": 0, "101001": 0, "101010": 0, "101100": 0, "110001": 0, "110010": 0, "110100": 0, "linear_oper": [0, 5, 8, 9, 10, 11], "multireference_st": [0, 5, 10], "ansatz_oper": 0, "reference_occup": [0, 10], "root": 0, "multirefer": 0, "occup": [0, 6, 7, 8], "desir": 0, "eigenvector": [0, 7], "lowest": [0, 7, 8], "one_hot": [0, 5], "shape": [0, 2, 3, 6, 9], "dtype": [0, 3, 9], "arrai": [0, 2, 6, 11], "zero": [0, 10], "except": 0, "hot": 0, "simulate_qdrift_double_factor": [0, 5], "n_step": [0, 8], "probabl": 0, "norm": 0, "n_sampl": 0, "seed": [0, 3, 4, 6, 7], "via": [0, 8], "qdrift": 0, "trotter": [0, 5], "step": [0, 7, 8], "sampl": [0, 3, 4], "els": [0, 3], "explicit": 0, "proport": [0, 7], "spectral": 0, "uniform": [0, 3], "requir": [0, 9], "whenev": 0, "complet": 0, "character": 0, "trajectori": 0, "pseudorandom": [0, 3, 4], "gener": [0, 3, 4, 5, 6, 7, 8, 9], "should": [0, 3, 4, 7, 8], "valid": [0, 3, 4], "input": [0, 1, 3, 4, 9], "random": [0, 4, 5, 6, 7, 11], "default_rng": [0, 3, 4], "numpi": [0, 2, 6, 7, 8, 9, 10], "just": [0, 8, 9], "simulate_trotter_double_factor": [0, 5, 8], "suzuki": 0, "formula": 0, "slater_determin": [0, 5, 6, 7, 8, 9], "occupied_orbit": [0, 6, 7, 8, 9], "configur": [0, 6], "word": [0, 9], "slater_determinant_one_rdm": [0, 5], "similarli": [0, 8], "construct": [1, 8, 9, 10, 11], "contract_diag_coulomb": [1, 5], "contract_num_op_sum": [1, 5], "diag_coulomb_linop": [1, 5], "implement": [1, 6, 7, 9], "num_op_sum_linop": [1, 5], "one_body_linop": [1, 5, 7], "algebra": [2, 11], "util": [2, 3, 4], "apply_matrix_to_slic": [2, 5], "target": 2, "slice": 2, "out": [2, 8], "double_factor": [2, 5], "ell": 2, "pk": 2, "qk": 2, "respect": 2, "too": 2, "small": 2, "exce": 2, "collect": 2, "double_factorized_t2": [2, 5], "t_": 2, "ijab": 2, "ap": 2, "ip": 2, "bq": 2, "jq": 2, "expm_multiply_taylor": [2, 5], "12": [2, 11], "expm": 2, "taylor": 2, "seri": 2, "expans": 2, "givens_decomposit": [2, 5], "is_antihermitian": [2, 5], "anti": [2, 3], "hermitian": [2, 3, 7], "is_hermitian": [2, 5], "is_orthogon": [2, 5], "orthogon": [2, 3], "union": 2, "bool_": 2, "is_real_symmetr": [2, 5], "is_special_orthogon": [2, 5], "special": [2, 3, 5, 6], "is_unitari": [2, 5], "lup": [2, 5], "pivot": 2, "lu": 2, "rtype": 2, "lower": 2, "unit": 2, "modified_choleski": [2, 5], "v_i": 2, "posit": [2, 10], "definit": 2, "No": 2, "check": [2, 7, 8], "verifi": 2, "1711": 2, "02242": 2, "assembl": 2, "reduced_matrix": [2, 5], "subspac": [2, 11], "span": 2, "some": [2, 8, 11], "v_j": 2, "random_antihermitian": [3, 5], "width": 3, "height": 3, "dype": 3, "random_hermitian": [3, 5, 7], "random_orthogon": [3, 5], "distribut": 3, "haar": 3, "measur": 3, "instanc": [3, 7, 8], "math": [3, 10], "ph": 3, "0609050": 3, "random_real_symmetric_matrix": [3, 5], "random_special_orthogon": [3, 5], "random_statevector": [3, 5, 11], "random_t2_amplitud": [3, 5], "random_two_body_tensor_r": [3, 5], "random_unitari": [3, 5, 6, 7], "random_nelec": [4, 5], "n_alpha": [4, 6, 7, 8, 9, 10], "n_beta": [4, 6, 7, 8, 9, 10], "random_occupied_orbit": [4, 5], "occ_a": 4, "occ_b": 4, "preserv": [5, 11], "categori": 5, "chemistri": 5, "By": [5, 6], "exploit": 5, "algorithm": 5, "faster": 5, "introduct": 5, "quadrat": [5, 8], "local": 5, "lucj": 5, "entangl": 5, "forg": 5, "contract": [5, 7], "linalg": [5, 7, 8, 11], "test": [5, 7, 8], "advantag": 6, "effici": [6, 11], "level": [6, 8], "doe": [6, 11], "primari": 6, "wai": [6, 7, 9], "directli": [6, 8], "code": [6, 8, 9, 11], "show": [6, 7, 8, 9, 10, 11], "how": [6, 7, 8, 9, 10, 11], "import": [6, 7, 8, 9, 10, 11], "6": [6, 7, 8, 9, 10, 11], "1234": [6, 7], "rotated_vec": [6, 7], "plain": 6, "Its": 6, "fix": 6, "For": [6, 7, 9, 11], "system": [6, 7], "conveni": 6, "comb": 6, "standard": 6, "often": [6, 9], "simpli": [6, 7], "reshap": 6, "reshaped_vec": 6, "choic": 6, "pyscf": [6, 8, 9, 10], "modul": 6, "tutori": [7, 8, 9, 10], "ffsim": [7, 8, 9, 10, 11], "fundament": 7, "mode": 7, "sum_j": 7, "new": [7, 11], "th": 7, "satisfi": [7, 11], "anticommut": 7, "relat": [7, 9], "thei": [7, 9, 11], "align": [7, 9], "_1": 7, "_2": 7, "section": 7, "ll": [7, 8, 9], "demonstr": [7, 8, 9], "task": 7, "consid": [7, 9], "rewritten": 7, "introduc": [7, 9], "eigendecomposit": 7, "sum_k": [7, 8], "lambda_k": 7, "ik": 7, "jk": 7, "our": [7, 8, 9], "ground": [7, 9], "pick": 7, "phase": 7, "spars": [7, 8, 11], "eig": [7, 11], "eigsh": 7, "la": 7, "fact": 7, "you": 7, "illustr": 7, "purpos": 7, "explicitli": 7, "eigh": [7, 8], "evolved_vec": 7, "conj": 7, "undo": 7, "expected_phas": 7, "1j": [7, 8, 11], "assert_allclos": 7, "mention": [7, 8], "abov": [7, 8, 11], "below": [7, 8, 9], "better": [7, 8], "4": [7, 8, 9, 10, 11], "evolved_vec_alt": 7, "daunt": 8, "scale": 8, "cell": [8, 9], "hydrogen": 8, "molecul": [8, 9, 10], "stretch": [8, 9], "bond": [8, 9, 10], "build": [8, 9, 10], "h2": 8, "mol": [8, 9, 10], "gto": [8, 9, 10], "mole": [8, 9, 10], "atom": [8, 9, 10], "8": [8, 11], "sto": [8, 9, 10], "6g": [8, 9, 10], "d2h": [8, 9], "rhf": [8, 9, 10], "kernel": [8, 9, 10], "mol_data": [8, 9, 10], "mol_hamiltonian": [8, 9, 10], "df_hamiltonian": 8, "converg": [8, 9, 10], "837796382593709": 8, "dataclass": [8, 9], "print": [8, 9, 10, 11], "inform": [8, 11], "One": 8, "27478830e": 8, "01": [8, 9, 10], "09243819e": 8, "16": 8, "7": [8, 11], "48351655e": 8, "17": 8, "77238770e": 8, "5": [8, 9, 10, 11], "23173938e": 8, "00678144e": 8, "19": 8, "33545754e": 8, "85364508e": 8, "18": 8, "48240570e": 8, "17688164e": 8, "05429868e": 8, "53132024e": 8, "21318608e": 8, "00": [8, 10], "03109072e": 8, "30334814e": 8, "07792507e": 8, "14653029e": 8, "44655364e": 8, "30": 8, "11022302e": 8, "52090881e": 8, "03": [8, 10], "00000000e": 8, "07106781e": 8, "45733039e": 8, "rest": 8, "although": 8, "alreadi": 8, "built": 8, "manual": 8, "asymmetr": 8, "basic": 8, "h_k": 8, "divid": 8, "singl": 8, "exponenti": 8, "individu": [8, 11], "do": [8, 11], "approx": 8, "prod_k": 8, "higher": 8, "deriv": 8, "write": 8, "recal": 8, "addit": [8, 11], "think": 8, "compos": 8, "def": [8, 9, 10], "simulate_trotter_step_double_factor": 8, "one_body_energi": 8, "one_body_basis_chang": 8, "zip": [8, 10], "finish": 8, "handl": 8, "split": 8, "multipl": [8, 11], "wrote": 8, "step_tim": 8, "match": 8, "initial_st": 8, "\u03c8": [8, 9, 10], "hf_energi": 8, "vdot": [8, 9, 10], "f": [8, 9, 10], "now": 8, "later": 8, "exact_st": 8, "expm_multipli": 8, "tracea": 8, "fidel": 8, "ab": 8, "9696296369955065": 8, "final_st": [8, 9], "9990275744083491": 8, "improv": 8, "increas": 8, "10": 8, "999990623310968": 8, "commonli": 8, "known": 8, "fourth": 8, "reproduc": 8, "9": [8, 9, 10, 11], "fewer": 8, "9999999336740071": 8, "ethen": 9, "mcscf": [9, 10], "bond_dist": 9, "678": 9, "5626": 9, "c": 9, "9289": 9, "nelectron": 9, "ca": [9, 10], "casci": [9, 10], "nca": [9, 10], "neleca": [9, 10], "mo": [9, 10], "sort_mo": [9, 10], "energy_fci": [9, 10], "77": 9, "4456267643962": 9, "6290254326718": 9, "ci": [9, 10], "57322412553863": 9, "0000000": [9, 10], "phi_0": 9, "taken": 9, "express": 9, "previou": 9, "constructor": 9, "provid": 9, "truncat": 9, "ccsd": 9, "mp2": 9, "run": 9, "sinc": 9, "cc": 9, "frozen": 9, "nao_nr": 9, "reference_st": 9, "ansatz_st": [9, 10], "initiali": [9, 10], "49387212754468": 9, "e_corr": 9, "0482453631485136": 9, "46975600021709": 9, "facilit": 9, "convers": 9, "precis": 9, "somewhat": 9, "complic": 9, "short": 9, "entri": 9, "non": 9, "redund": 9, "associ": [9, 11], "fun": [9, 10], "x": [9, 10], "x0": [9, 10], "maxfun": 9, "50000": 9, "len": [9, 10], "72": 9, "messag": [9, 10], "rel_reduction_of_f_": 9, "lt": 9, "_factr": 9, "epsmch": 9, "success": [9, 10], "statu": [9, 10], "62901312277772": 9, "514e": 9, "992e": 9, "724e": 9, "902e": 9, "02": [9, 10], "nit": 9, "311": 9, "jac": 9, "132e": [9, 10], "847e": 9, "268e": 9, "274e": 9, "nfev": [9, 10], "24163": 9, "njev": 9, "331": 9, "hess_inv": 9, "72x72": 9, "lbfgsinvhessproduct": 9, "float64": 9, "gt": 9, "either": 9, "connect": 9, "swap": 9, "network": 9, "make": 9, "challeng": 9, "noisi": 9, "pre": 9, "fault": 9, "processor": 9, "idea": 9, "impos": 9, "sparsiti": 9, "constraint": 9, "them": 9, "depth": 9, "topologi": 9, "triangl": 9, "need": 9, "lattic": 9, "parallel": 9, "line": 9, "rung": 9, "ladder": 9, "With": 9, "setup": 9, "while": 9, "share": 9, "ldot": 9, "without": 9, "Of": 9, "cours": 9, "less": 9, "notic": 9, "decreas": 9, "46": 9, "62654295304475": 9, "511e": 9, "702e": 9, "266e": 9, "193e": 9, "360": 9, "547e": 9, "217e": 9, "04": 9, "537e": 9, "805e": 9, "17954": 9, "382": 9, "46x46": 9, "water": 10, "equilibrium": 10, "radius_1": 10, "958": 10, "radius_2": 10, "bond_angle_deg": 10, "104": 10, "478": 10, "h1_x": 10, "h2_x": 10, "180": 10, "h2_y": 10, "c2v": 10, "n_electron": 10, "mo_occ": 10, "75": 10, "6787887956297": 10, "7079508859772": 10, "14": 10, "3336207346504": 10, "reference_occupations_spati": 10, "68366174447614": 10, "cobyla": 10, "maxit": 10, "100": 10, "evalu": 10, "exceed": 10, "69448131178467": 10, "354e": 10, "651e": 10, "863e": 10, "095e": 10, "maxcv": 10, "25": 11, "Such": 11, "programmat": 11, "dictionari": 11, "hash": 11, "tabl": 11, "three": 11, "piec": 11, "being": 11, "upon": 11, "intern": 11, "itself": 11, "recommend": 11, "helper": 11, "shown": 11, "op1": 11, "repr": 11, "view": 11, "displai": 11, "39": 11, "0j": 11, "arithmet": 11, "multipli": 11, "scalar": 11, "go": 11, "op": 11, "op2": 11, "op3": 11, "2j": 11, "25j": 11, "125": 11, "5j": 11, "0625": 11, "good": 11, "awar": 11, "especi": 11, "avoid": 11, "These": 11, "subtract": 11, "divis": 11, "12j": 11, "6j": 11, "3j": 11, "4j": 11, "far": 11, "criteria": 11, "op4": 11, "linop": 11, "onto": 11, "11069268": 11, "09977553j": 11, "most": 11, "lm": 11, "21984743e": 11, "18j": 11}, "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, "", "SupportsApplyUnitary"], [0, 1, 1, "", "SupportsApproximateEquality"], [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_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, "", "indices_to_strings"], [2, 0, 0, "-", "linalg"], [0, 5, 1, "", "linear_operator"], [0, 5, 1, "", "multireference_state"], [0, 5, 1, "", "one_hot"], [3, 0, 0, "-", "random"], [0, 5, 1, "", "simulate_qdrift_double_factorized"], [0, 5, 1, "", "simulate_trotter_double_factorized"], [0, 5, 1, "", "slater_determinant"], [0, 5, 1, "", "slater_determinant_one_rdm"], [4, 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.MolecularData": [[0, 2, 1, "", "core_energy"], [0, 2, 1, "", "dipole_integrals"], [0, 3, 1, "", "from_hartree_fock"], [0, 4, 1, "", "hamiltonian"], [0, 2, 1, "", "nelec"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 2, 1, "", "orbital_symmetries"], [0, 2, 1, "", "two_body_tensor"]], "ffsim.MolecularHamiltonian": [[0, 2, 1, "", "constant"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 2, 1, "", "two_body_tensor"]], "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, 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, "", "diag_coulomb_linop"], [1, 5, 1, "", "num_op_sum_linop"], [1, 5, 1, "", "one_body_linop"]], "ffsim.linalg": [[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, "", "modified_cholesky"], [2, 5, 1, "", "reduced_matrix"]], "ffsim.random": [[3, 5, 1, "", "random_antihermitian"], [3, 5, 1, "", "random_hermitian"], [3, 5, 1, "", "random_orthogonal"], [3, 5, 1, "", "random_real_symmetric_matrix"], [3, 5, 1, "", "random_special_orthogonal"], [3, 5, 1, "", "random_statevector"], [3, 5, 1, "", "random_t2_amplitudes"], [3, 5, 1, "", "random_two_body_tensor_real"], [3, 5, 1, "", "random_unitary"]], "ffsim.testing": [[4, 5, 1, "", "random_nelec"], [4, 5, 1, "", "random_occupied_orbitals"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:property", "5": "py:function"}, "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"]}, "titleterms": {"ffsim": [0, 1, 2, 3, 4, 5, 6], "contract": 1, "linalg": 2, "random": 3, "test": 4, "welcom": 5, "": 5, "document": 5, "tutori": 5, "api": 5, "refer": 5, "introduct": 6, "orbit": 7, "rotat": 7, "quadrat": 7, "hamiltonian": [7, 8], "time": 7, "evolut": 7, "diagon": 8, "coulomb": 8, "oper": 8, "doubl": 8, "factor": 8, "trotter": 8, "simul": 8, "represent": 8, "molecular": 8, "brief": 8, "background": 8, "suzuki": 8, "formula": 8, "implement": 8, "The": [9, 11], "local": 9, "unitari": 9, "cluster": 9, "jastrow": 9, "lucj": 9, "ansatz": 9, "ucj": 9, "entangl": 10, "forg": 10, "fermionoper": 11, "class": 11}, "envversion": {"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, "nbsphinx": 4, "sphinx": 60}, "alltitles": {"ffsim": [[0, "module-ffsim"]], "ffsim.contract": [[1, "module-ffsim.contract"]], "ffsim.linalg": [[2, "module-ffsim.linalg"]], "ffsim.random": [[3, "module-ffsim.random"]], "ffsim.testing": [[4, "module-ffsim.testing"]], "Welcome to ffsim\u2019s documentation!": [[5, "welcome-to-ffsim-s-documentation"]], "Tutorials": [[5, "tutorials"]], "API Reference": [[5, "api-reference"]], "Introduction to ffsim": [[6, "Introduction-to-ffsim"]], "Orbital rotations and quadratic Hamiltonians": [[7, "Orbital-rotations-and-quadratic-Hamiltonians"]], "Orbital rotations": [[7, "Orbital-rotations"]], "Time evolution by a quadratic Hamiltonian": [[7, "Time-evolution-by-a-quadratic-Hamiltonian"]], "Diagonal Coulomb operators and double-factorized Trotter simulation": [[8, "Diagonal-Coulomb-operators-and-double-factorized-Trotter-simulation"]], "Double-factorized representation of the molecular Hamiltonian": [[8, "Double-factorized-representation-of-the-molecular-Hamiltonian"]], "Trotter simulation of the double-factorized Hamiltonian": [[8, "Trotter-simulation-of-the-double-factorized-Hamiltonian"]], "Brief background on Trotter-Suzuki formulas": [[8, "Brief-background-on-Trotter-Suzuki-formulas"]], "Implementing Trotter simulation of the double-factorized Hamiltonian": [[8, "Implementing-Trotter-simulation-of-the-double-factorized-Hamiltonian"]], "The local unitary cluster Jastrow (LUCJ) ansatz": [[9, "The-local-unitary-cluster-Jastrow-(LUCJ)-ansatz"], [9, "id1"]], "The unitary cluster Jastrow (UCJ) ansatz": [[9, "The-unitary-cluster-Jastrow-(UCJ)-ansatz"]], "Entanglement forging": [[10, "Entanglement-forging"]], "The FermionOperator class": [[11, "The-FermionOperator-class"]]}, "indexentries": {"doublefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.DoubleFactorizedHamiltonian"]], "fermionaction (class in ffsim)": [[0, "ffsim.FermionAction"]], "fermionoperator (class in ffsim)": [[0, "ffsim.FermionOperator"]], "hopgateansatzoperator (class in ffsim)": [[0, "ffsim.HopGateAnsatzOperator"]], "moleculardata (class in ffsim)": [[0, "ffsim.MolecularData"]], "molecularhamiltonian (class in ffsim)": [[0, "ffsim.MolecularHamiltonian"]], "supportsapplyunitary (class in ffsim)": [[0, "ffsim.SupportsApplyUnitary"]], "supportsapproximateequality (class in ffsim)": [[0, "ffsim.SupportsApproximateEquality"]], "supportslinearoperator (class in ffsim)": [[0, "ffsim.SupportsLinearOperator"]], "supportstrace (class in ffsim)": [[0, "ffsim.SupportsTrace"]], "ucjoperator (class in ffsim)": [[0, "ffsim.UCJOperator"]], "action (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.action"]], "apply_diag_coulomb_evolution() (in module ffsim)": [[0, "ffsim.apply_diag_coulomb_evolution"]], "apply_fsim_gate() (in module ffsim)": [[0, "ffsim.apply_fsim_gate"]], "apply_givens_rotation() (in module ffsim)": [[0, "ffsim.apply_givens_rotation"]], "apply_hop_gate() (in module ffsim)": [[0, "ffsim.apply_hop_gate"]], "apply_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_interaction"]], "apply_num_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_num_interaction"]], "apply_num_op_prod_interaction() (in module ffsim)": [[0, "ffsim.apply_num_op_prod_interaction"]], "apply_num_op_sum_evolution() (in module ffsim)": [[0, "ffsim.apply_num_op_sum_evolution"]], "apply_orbital_rotation() (in module ffsim)": [[0, "ffsim.apply_orbital_rotation"]], "apply_tunneling_interaction() (in module ffsim)": [[0, "ffsim.apply_tunneling_interaction"]], "apply_unitary() (in module ffsim)": [[0, "ffsim.apply_unitary"]], "approx_eq() (in module ffsim)": [[0, "ffsim.approx_eq"]], "conserves_particle_number() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_particle_number"]], "conserves_spin_z() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_spin_z"]], "constant (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.constant"]], "constant (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.constant"]], "core_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.core_energy"]], "cre() (in module ffsim)": [[0, "ffsim.cre"]], "cre_a() (in module ffsim)": [[0, "ffsim.cre_a"]], "cre_b() (in module ffsim)": [[0, "ffsim.cre_b"]], "des() (in module ffsim)": [[0, "ffsim.des"]], "des_a() (in module ffsim)": [[0, "ffsim.des_a"]], "des_b() (in module ffsim)": [[0, "ffsim.des_b"]], "diag_coulomb_mats (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.diag_coulomb_mats"]], "diag_coulomb_mats_alpha_alpha (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.diag_coulomb_mats_alpha_alpha"]], "diag_coulomb_mats_alpha_beta (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.diag_coulomb_mats_alpha_beta"]], "dim() (in module ffsim)": [[0, "ffsim.dim"]], "dims() (in module ffsim)": [[0, "ffsim.dims"]], "dipole_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.dipole_integrals"]], "expectation_one_body_power() (in module ffsim)": [[0, "ffsim.expectation_one_body_power"]], "expectation_one_body_product() (in module ffsim)": [[0, "ffsim.expectation_one_body_product"]], "ffsim": [[0, "module-ffsim"]], "final_orbital_rotation (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.final_orbital_rotation"]], "from_hartree_fock() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_hartree_fock"]], "from_molecular_hamiltonian() (ffsim.doublefactorizedhamiltonian static method)": [[0, "ffsim.DoubleFactorizedHamiltonian.from_molecular_hamiltonian"]], "from_parameters() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.from_parameters"]], "from_t_amplitudes() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.from_t_amplitudes"]], "hamiltonian (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.hamiltonian"]], "indices_to_strings() (in module ffsim)": [[0, "ffsim.indices_to_strings"]], "linear_operator() (in module ffsim)": [[0, "ffsim.linear_operator"]], "many_body_order() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.many_body_order"]], "module": [[0, "module-ffsim"], [1, "module-ffsim.contract"], [2, "module-ffsim.linalg"], [3, "module-ffsim.random"], [4, "module-ffsim.testing"]], "multireference_state() (in module ffsim)": [[0, "ffsim.multireference_state"]], "n_reps (ffsim.ucjoperator property)": [[0, "ffsim.UCJOperator.n_reps"]], "nelec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.nelec"]], "norb (ffsim.doublefactorizedhamiltonian property)": [[0, "ffsim.DoubleFactorizedHamiltonian.norb"]], "norb (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.norb"]], "norb (ffsim.molecularhamiltonian property)": [[0, "ffsim.MolecularHamiltonian.norb"]], "norb (ffsim.ucjoperator property)": [[0, "ffsim.UCJOperator.norb"]], "normal_ordered() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.normal_ordered"]], "one_body_tensor (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.one_body_tensor"]], "one_body_tensor (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.one_body_tensor"]], "one_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.one_body_tensor"]], "one_hot() (in module ffsim)": [[0, "ffsim.one_hot"]], "orb (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.orb"]], "orbital_rotations (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.orbital_rotations"]], "orbital_rotations (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.orbital_rotations"]], "orbital_symmetries (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.orbital_symmetries"]], "simulate_qdrift_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_qdrift_double_factorized"]], "simulate_trotter_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_trotter_double_factorized"]], "slater_determinant() (in module ffsim)": [[0, "ffsim.slater_determinant"]], "slater_determinant_one_rdm() (in module ffsim)": [[0, "ffsim.slater_determinant_one_rdm"]], "spin (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.spin"]], "to_number_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_number_representation"]], "to_parameters() (ffsim.ucjoperator method)": [[0, "ffsim.UCJOperator.to_parameters"]], "to_t_amplitudes() (ffsim.ucjoperator method)": [[0, "ffsim.UCJOperator.to_t_amplitudes"]], "to_z_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_z_representation"]], "trace() (in module ffsim)": [[0, "ffsim.trace"]], "two_body_tensor (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.two_body_tensor"]], "two_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.two_body_tensor"]], "z_representation (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.z_representation"]], "contract_diag_coulomb() (in module ffsim.contract)": [[1, "ffsim.contract.contract_diag_coulomb"]], "contract_num_op_sum() (in module ffsim.contract)": [[1, "ffsim.contract.contract_num_op_sum"]], "diag_coulomb_linop() (in module ffsim.contract)": [[1, "ffsim.contract.diag_coulomb_linop"]], "ffsim.contract": [[1, "module-ffsim.contract"]], "num_op_sum_linop() (in module ffsim.contract)": [[1, "ffsim.contract.num_op_sum_linop"]], "one_body_linop() (in module ffsim.contract)": [[1, "ffsim.contract.one_body_linop"]], "apply_matrix_to_slices() (in module ffsim.linalg)": [[2, "ffsim.linalg.apply_matrix_to_slices"]], "double_factorized() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized"]], "double_factorized_t2() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized_t2"]], "expm_multiply_taylor() (in module ffsim.linalg)": [[2, "ffsim.linalg.expm_multiply_taylor"]], "ffsim.linalg": [[2, "module-ffsim.linalg"]], "givens_decomposition() (in module ffsim.linalg)": [[2, "ffsim.linalg.givens_decomposition"]], "is_antihermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_antihermitian"]], "is_hermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_hermitian"]], "is_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_orthogonal"]], "is_real_symmetric() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_real_symmetric"]], "is_special_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_special_orthogonal"]], "is_unitary() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_unitary"]], "lup() (in module ffsim.linalg)": [[2, "ffsim.linalg.lup"]], "modified_cholesky() (in module ffsim.linalg)": [[2, "ffsim.linalg.modified_cholesky"]], "reduced_matrix() (in module ffsim.linalg)": [[2, "ffsim.linalg.reduced_matrix"]], "ffsim.random": [[3, "module-ffsim.random"]], "random_antihermitian() (in module ffsim.random)": [[3, "ffsim.random.random_antihermitian"]], "random_hermitian() (in module ffsim.random)": [[3, "ffsim.random.random_hermitian"]], "random_orthogonal() (in module ffsim.random)": [[3, "ffsim.random.random_orthogonal"]], "random_real_symmetric_matrix() (in module ffsim.random)": [[3, "ffsim.random.random_real_symmetric_matrix"]], "random_special_orthogonal() (in module ffsim.random)": [[3, "ffsim.random.random_special_orthogonal"]], "random_statevector() (in module ffsim.random)": [[3, "ffsim.random.random_statevector"]], "random_t2_amplitudes() (in module ffsim.random)": [[3, "ffsim.random.random_t2_amplitudes"]], "random_two_body_tensor_real() (in module ffsim.random)": [[3, "ffsim.random.random_two_body_tensor_real"]], "random_unitary() (in module ffsim.random)": [[3, "ffsim.random.random_unitary"]], "ffsim.testing": [[4, "module-ffsim.testing"]], "random_nelec() (in module ffsim.testing)": [[4, "ffsim.testing.random_nelec"]], "random_occupied_orbitals() (in module ffsim.testing)": [[4, "ffsim.testing.random_occupied_orbitals"]]}}) \ No newline at end of file +Search.setIndex({"docnames": ["api/ffsim", "api/ffsim.contract", "api/ffsim.linalg", "api/ffsim.random", "api/ffsim.testing", "index", "tutorials/01-introduction", "tutorials/02-orbital-rotation", "tutorials/03-double-factorized", "tutorials/04-lucj", "tutorials/05-entanglement-forging", "tutorials/06-fermion-operator"], "filenames": ["api/ffsim.rst", "api/ffsim.contract.rst", "api/ffsim.linalg.rst", "api/ffsim.random.rst", "api/ffsim.testing.rst", "index.rst", "tutorials/01-introduction.ipynb", "tutorials/02-orbital-rotation.ipynb", "tutorials/03-double-factorized.ipynb", "tutorials/04-lucj.ipynb", "tutorials/05-entanglement-forging.ipynb", "tutorials/06-fermion-operator.ipynb"], "titles": ["ffsim", "ffsim.contract", "ffsim.linalg", "ffsim.random", "ffsim.testing", "Welcome to ffsim\u2019s documentation!", "Introduction to ffsim", "Orbital rotations and quadratic Hamiltonians", "Diagonal Coulomb operators and double-factorized Trotter simulation", "The local unitary cluster Jastrow (LUCJ) ansatz", "Entanglement forging", "The FermionOperator class"], "terms": {"i": [0, 1, 2, 3, 5, 6, 7, 8, 9, 11], "softwar": [0, 5, 6], "librari": [0, 5, 6], "fast": 0, "simul": [0, 5, 6, 7, 9, 10], "fermion": [0, 5, 6, 7, 9, 11], "quantum": [0, 5, 6, 8, 9], "circuit": [0, 5, 6], "class": [0, 3, 5, 6, 9], "doublefactorizedhamiltonian": [0, 5, 8], "one_body_tensor": [0, 7, 8], "diag_coulomb_mat": [0, 8], "orbital_rot": [0, 1, 6, 7, 8], "constant": [0, 8, 9], "0": [0, 7, 8, 9, 10, 11], "z_represent": [0, 1], "fals": [0, 1, 2, 10, 11], "sourc": [0, 1, 2, 3, 4], "base": [0, 2, 9, 10], "object": [0, 2, 9, 11], "A": [0, 1, 2, 3, 4, 7, 8, 9, 11], "hamiltonian": [0, 5, 9, 10], "doubl": [0, 2, 5, 9], "factor": [0, 2, 5, 9], "form": [0, 1, 2, 7, 8, 9, 11], "low": [0, 2, 6], "rank": [0, 2, 3], "decomposit": [0, 2], "The": [0, 1, 2, 3, 4, 5, 6, 7, 8], "molecular": [0, 9, 10], "h": [0, 8, 9, 10], "sum_": [0, 1, 2, 7, 8, 9], "pq": [0, 2, 8], "sigma": [0, 1, 7, 8, 9], "kappa_": 0, "dagger_": [0, 7, 8], "p": [0, 2, 8, 9], "a_": [0, 7, 8, 11], "q": [0, 8], "frac12": [0, 8, 9], "sum_t": 0, "ij": [0, 1, 2, 7, 8, 9], "tau": [0, 1, 8, 9], "z": [0, 1, 2, 5, 6, 11], "t": [0, 2, 7, 8], "_": [0, 2, 7, 8, 9], "n": [0, 2, 6, 7, 8, 9], "j": [0, 1, 7, 8, 9, 11], "text": [0, 8], "where": [0, 1, 2, 7, 8, 9], "u": [0, 1, 2], "pi": [0, 10], "qi": 0, "here": [0, 2, 6, 7, 8], "each": [0, 2, 6, 8, 9, 11], "unitari": [0, 1, 2, 3, 5, 7, 8], "matrix": [0, 1, 2, 3, 6, 7, 8, 9, 11], "real": [0, 1, 2, 3, 7, 8, 9, 10], "symmetr": [0, 1, 2, 3, 8, 9], "represent": [0, 1, 2, 6, 11], "an": [0, 1, 2, 3, 6, 7, 8, 9, 11], "altern": [0, 8], "sometim": 0, "yield": [0, 2, 8, 9], "simpler": 0, "under": 0, "jordan": 0, "wigner": 0, "transform": [0, 1, 6, 7], "number": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11], "oper": [0, 1, 2, 5, 7, 9, 10, 11], "take": [0, 6, 9], "frac": 0, "1": [0, 2, 3, 6, 7, 8, 9, 10, 11], "2": [0, 1, 2, 3, 6, 7, 8, 9, 10, 11], "pauli": 0, "rotat": [0, 1, 2, 5, 6, 8, 9], "basi": [0, 7, 8, 9, 10], "obtain": [0, 7, 8, 9], "rewrit": 0, "two": [0, 2, 3, 8, 9, 10], "bodi": [0, 1, 2, 3, 8, 9, 10], "part": [0, 2], "term": [0, 1, 2, 8, 9, 11], "updat": [0, 8], "one": [0, 1, 2, 6, 8, 9, 10], "appropri": 0, "kappa": 0, "frac18": 0, "asterisk": 0, "denot": [0, 1, 7], "summat": 0, "over": 0, "indic": [0, 2, 9, 11], "neq": [0, 1], "tensor": [0, 1, 2, 3, 8, 9, 10], "type": [0, 1, 2, 3, 4], "np": [0, 3, 4, 7, 8, 9, 10], "ndarrai": [0, 1, 2, 3, 8], "diagon": [0, 1, 2, 5, 7, 9], "coulomb": [0, 1, 2, 5, 9], "matric": [0, 1, 2, 7, 8, 9], "orbit": [0, 1, 2, 3, 4, 5, 6, 8, 9, 11], "float": [0, 2, 3, 8], "whether": [0, 1, 2, 11], "rather": [0, 6], "than": [0, 5, 6, 9], "bool": [0, 1, 2], "static": 0, "from_molecular_hamiltonian": [0, 8], "tol": [0, 2], "1e": [0, 2], "08": [0, 2], "max_vec": [0, 2], "none": [0, 1, 2, 3, 4], "optim": [0, 2, 9, 10], "method": [0, 2, 9, 10], "l": [0, 2, 8, 9], "bfg": [0, 2, 9], "b": [0, 2, 7, 9], "option": [0, 1, 2, 3, 9, 10], "diag_coulomb_mask": [0, 2], "choleski": [0, 2], "true": [0, 2, 6, 9, 11], "act": [0, 11], "h_": [0, 2, 8], "pqr": [0, 2, 8], "r": [0, 2, 8], "": [0, 2, 6, 8, 9, 10, 11], "decompos": [0, 2, 8], "ar": [0, 1, 2, 3, 6, 7, 8, 9, 11], "output": [0, 8, 9], "guarante": 0, "so": [0, 2, 7, 8, 9, 11], "depend": [0, 2, 6], "allow": [0, 2, 9], "error": [0, 2], "threshold": [0, 2], "larger": [0, 2, 11], "lead": 0, "smaller": [0, 2, 8, 11], "furthermor": [0, 2], "max_rank": 0, "paramet": [0, 1, 2, 3, 4, 9, 10], "specifi": [0, 2, 9], "upper": [0, 2, 9], "bound": [0, 2], "default": [0, 2, 3], "behavior": [0, 2, 3], "thi": [0, 2, 5, 6, 7, 8, 9, 10], "routin": [0, 2, 6, 11], "perform": [0, 2, 7, 8], "straightforward": [0, 2], "exact": [0, 2, 6, 8], "nest": [0, 2], "eigenvalu": [0, 2, 7], "addition": [0, 2], "can": [0, 2, 5, 6, 7, 8, 9, 11], "choos": [0, 2, 6, 9], "coeffici": [0, 1, 2, 7, 9, 11], "store": [0, 2, 8, 9], "achiev": [0, 2, 8], "compress": [0, 2], "enabl": [0, 2], "set": [0, 2, 6, 7, 8, 9], "attempt": [0, 2], "minim": [0, 2, 9, 10], "least": [0, 2], "squar": [0, 2, 9], "function": [0, 1, 2, 6, 7, 8, 9, 10, 11], "quantifi": [0, 2], "It": [0, 2, 6, 8, 11], "us": [0, 1, 2, 3, 5, 6, 7, 8, 9, 11], "scipi": [0, 2, 6, 7, 8, 9, 10, 11], "pass": [0, 2, 7, 11], "both": [0, 2], "its": [0, 2, 7, 8, 11], "gradient": [0, 2], "return": [0, 1, 2, 3, 4, 8, 9, 10, 11], "constrain": [0, 2], "have": [0, 2, 6, 7, 9, 11], "onli": [0, 2, 6, 7, 9], "certain": [0, 2], "element": [0, 2], "nonzero": [0, 2, 9], "which": [0, 2, 3, 6, 7, 8, 9, 11], "time": [0, 2, 6, 8], "boolean": [0, 2], "valu": [0, 1, 2, 3, 8, 9], "triangular": [0, 2], "becaus": [0, 2, 6, 8, 9, 11], "note": [0, 9, 11], "current": 0, "support": [0, 11], "two_body_tensor": [0, 2, 8], "toler": [0, 2, 9], "defin": [0, 2, 9, 10], "maximum": [0, 2, 3, 10], "absolut": [0, 2], "differ": [0, 1, 2, 9], "between": [0, 1, 2, 9], "origin": [0, 2, 8], "correspond": [0, 2, 7, 8], "reconstruct": [0, 2], "int": [0, 1, 2, 3, 4, 8, 10], "limit": [0, 2, 9], "keep": [0, 2], "argument": [0, 2, 7], "overrid": [0, 2], "str": [0, 2], "see": [0, 2], "document": [0, 2], "possibl": [0, 2], "callback": [0, 2], "usag": [0, 2, 11], "dict": [0, 2, 9, 10], "mask": [0, 2], "modifi": [0, 2], "If": [0, 1, 2, 3, 11], "full": [0, 2, 6], "instead": [0, 2], "much": [0, 2, 5, 6], "more": [0, 2, 6, 9], "expens": [0, 2], "ignor": [0, 2, 8], "refer": [0, 2, 3, 9], "arxiv": [0, 2, 3], "1808": [0, 2], "02625": [0, 2], "2104": [0, 2], "08957": [0, 2], "properti": [0, 7], "norb": [0, 1, 3, 4, 6, 7, 8, 9, 10, 11], "spatial": [0, 1, 4, 6, 8, 9, 11], "to_number_represent": 0, "to_z_represent": 0, "fermionact": [0, 5], "action": [0, 1, 7, 11], "spin": [0, 1, 5, 6, 7, 9, 10, 11], "orb": [0, 11], "namedtupl": 0, "alia": 0, "field": 0, "fermionoper": [0, 5], "coeff": [0, 1], "repres": [0, 6, 9, 11], "linear": [0, 1, 2, 7, 11], "combin": [0, 1, 7, 11], "product": [0, 8, 11], "creation": [0, 7, 11], "annihil": [0, 11], "tupl": [0, 1, 2, 4, 8, 11], "complex": [0, 1, 2, 3], "conserves_particle_numb": [0, 11], "conserv": [0, 6, 11], "particl": [0, 4, 5, 6, 7, 11], "otherwis": 0, "conserves_spin_z": [0, 11], "compon": [0, 5, 6, 11], "many_body_ord": 0, "mani": [0, 5], "order": [0, 6, 8, 9, 11], "length": [0, 6, 8, 9], "longest": 0, "contain": [0, 2, 9, 11], "normal_ord": [0, 11], "normal": [0, 11], "equival": 0, "ha": [0, 1, 2, 6, 7, 8, 9, 10], "been": [0, 10], "reorder": 0, "canon": 0, "In": [0, 7, 8, 9, 10, 11], "compris": [0, 11], "appear": [0, 11], "from": [0, 3, 6, 7, 9, 10, 11], "left": [0, 7, 11], "right": [0, 7, 11], "descend": [0, 11], "lexicograph": [0, 11], "That": [0, 7, 11], "all": [0, 9, 11], "befor": [0, 9, 11], "within": [0, 2, 11], "beta": [0, 1, 4, 6, 9, 11], "alpha": [0, 1, 4, 6, 9, 11], "hopgateansatzoper": [0, 5, 10], "interaction_pair": [0, 10], "theta": [0, 10], "hop": 0, "gate": [0, 9], "ansatz": [0, 5, 10], "moleculardata": [0, 5, 8, 9, 10], "nelec": [0, 1, 4, 6, 7, 8, 9, 10, 11], "core_energi": 0, "dipole_integr": 0, "orbital_symmetri": 0, "data": [0, 3, 8, 9, 10, 11], "electron": [0, 1, 3, 4, 6, 8], "core": [0, 2], "energi": [0, 7, 8, 9, 10], "dipol": 0, "integr": 0, "symmetri": [0, 5, 6, 7, 8, 9, 10], "from_hartree_fock": [0, 8, 9, 10], "hartree_fock": [0, 8, 9, 10], "active_spac": [0, 9, 10], "initi": [0, 3, 4, 8, 9, 10], "hartre": [0, 8, 9], "fock": [0, 8, 9], "calcul": [0, 6, 8, 9], "scf": [0, 8, 9, 10], "iter": 0, "list": [0, 1, 2, 4, 9, 10], "activ": [0, 9, 10], "space": [0, 9, 10], "molecularhamiltonian": [0, 5, 8], "call": [0, 6, 7, 8, 11], "supportsapplyunitari": [0, 5], "arg": 0, "kwarg": 0, "protocol": 0, "appli": [0, 1, 2, 6, 7, 8, 9], "vector": [0, 1, 2, 3, 6, 7, 9, 10, 11], "supportsapproximateequ": [0, 5], "compar": [0, 8], "approxim": [0, 2, 8], "supportslinearoper": [0, 5], "convert": [0, 1, 6, 7, 8, 11], "linearoper": [0, 1, 7, 8, 11], "supportstrac": [0, 5], "whose": [0, 2, 6], "trace": [0, 5, 8], "comput": [0, 2, 7, 9, 10], "ucjoper": [0, 5, 9], "diag_coulomb_mats_alpha_alpha": 0, "diag_coulomb_mats_alpha_beta": 0, "final_orbital_rot": 0, "cluster": [0, 5], "jastrow": [0, 5], "ucj": 0, "prod_": [0, 9], "k": [0, 2, 7, 8, 9, 11], "mathcal": [0, 1, 7, 8, 9], "w_k": [0, 9], "e": [0, 8, 9, 10, 11], "_k": [0, 8, 9], "dagger": [0, 1, 2, 7, 8, 9, 11], "mathbf": [0, 7, 8, 9], "n_": [0, 1, 6, 7, 8, 9], "commut": [0, 8, 9], "total": [0, 8, 9], "we": [0, 7, 8, 9, 10, 11], "enforc": [0, 9], "As": [0, 6, 7, 8, 9], "result": [0, 1, 2, 3, 7, 8, 9, 10], "describ": [0, 1, 6, 7, 8, 9, 11], "involv": [0, 9], "same": [0, 6, 9], "To": [0, 6, 7, 8, 9], "variat": [0, 9], "final": [0, 8, 9], "includ": [0, 2, 5, 6, 7, 8], "end": [0, 7, 9], "from_paramet": [0, 9], "param": 0, "n_rep": [0, 9, 10], "alpha_alpha_indic": [0, 9], "alpha_beta_indic": [0, 9], "with_final_orbital_rot": 0, "from_t_amplitud": [0, 9], "t2_amplitud": [0, 2], "t1_amplitud": 0, "t2": [0, 2, 3, 9], "t1": [0, 9], "amplitud": [0, 2, 3, 9], "repetit": [0, 9], "to_paramet": [0, 9], "to_t_amplitud": 0, "nocc": [0, 3], "possibli": 0, "apply_diag_coulomb_evolut": [0, 5, 8], "vec": [0, 1, 2, 6, 7, 8, 11], "mat": [0, 1, 2], "mat_alpha_beta": [0, 1], "occupations_a": [0, 1], "occupations_b": [0, 1], "strings_a": [0, 1], "strings_b": [0, 1], "orbital_rotation_index_a": 0, "orbital_rotation_index_b": 0, "copi": [0, 11], "evolut": [0, 8], "exp": [0, 7], "z_": [0, 1], "also": [0, 1, 7, 11], "given": [0, 1, 2, 7, 8], "place": [0, 1, 9, 11], "sum": [0, 1, 8, 10], "state": [0, 1, 3, 7, 8, 9, 10], "interact": [0, 1, 6], "occupi": [0, 1, 3, 4, 8], "string": [0, 1, 6, 11], "index": [0, 6, 9, 11], "alwai": [0, 2, 7], "newli": 0, "alloc": 0, "untouch": 0, "mai": [0, 2, 9], "still": [0, 9], "overwritten": 0, "evolv": [0, 8], "apply_fsim_g": [0, 5], "phi": 0, "target_orb": 0, "fsim": 0, "consist": 0, "tunnel": 0, "follow": [0, 6, 7, 8, 9, 11], "neg": 0, "sign": 0, "convent": 0, "angl": [0, 10], "nn": 0, "dagger_i": 0, "a_i": 0, "dagger_j": 0, "a_j": [0, 1], "when": [0, 8, 9, 11], "neighbor": 0, "qubit": [0, 9], "begin": [0, 7, 9], "pmatrix": 0, "co": [0, 10], "sin": [0, 10], "apply_givens_rot": [0, 5], "g": [0, 9], "apply_hop_g": [0, 5], "apply_num_interact": [0, 5], "apply_num_num_interact": [0, 5], "apply_num_op_prod_interact": [0, 5], "prod": 0, "sequenc": 0, "pair": [0, 4], "integ": 0, "give": [0, 7], "first": [0, 2, 7, 8, 9, 10], "second": [0, 2, 8, 10], "apply_num_op_sum_evolut": [0, 5, 7, 8], "lambda_i": [0, 1, 7], "rais": 0, "valueerror": 0, "must": [0, 2, 11], "dimension": [0, 2, 6], "apply_orbital_rot": [0, 5, 6, 7], "allow_row_permut": 0, "allow_col_permut": 0, "map": [0, 7, 11], "mapsto": [0, 7], "u_": 0, "ji": [0, 7], "log": 0, "permut": [0, 2], "row": [0, 6], "column": [0, 2, 6, 7], "wa": 0, "well": 0, "actual": [0, 7, 9], "effect": [0, 9], "apply_tunneling_interact": [0, 5], "apply_unitari": [0, 5, 9], "obj": 0, "ani": [0, 7, 9], "approx_eq": [0, 5], "other": [0, 9], "rtol": [0, 2], "05": [0, 2, 9], "atol": [0, 2], "equal": 0, "isclos": 0, "interpret": 0, "rel": [0, 2], "numer": [0, 2, 11], "up": [0, 7], "cre": [0, 5], "creat": [0, 6, 7, 8, 9, 11], "cre_a": [0, 5, 11], "cre_b": [0, 5, 11], "de": [0, 5], "destroi": [0, 11], "des_a": [0, 5, 11], "des_b": [0, 5, 11], "dim": [0, 3, 5, 6, 11], "get": [0, 7, 8, 9, 10], "dimens": [0, 3, 6], "fci": [0, 6, 9, 10], "dim_a": [0, 6], "dim_b": [0, 6], "expectation_one_body_pow": [0, 5], "one_rdm": 0, "power": 0, "expect": [0, 7], "w": [0, 7, 8], "slater": [0, 6, 7, 8], "determin": [0, 2, 6, 7, 8], "o": [0, 10], "m_": [0, 1, 2], "a_p": 0, "a_q": 0, "m": [0, 1, 2, 7], "let": [0, 8, 11], "lvert": [0, 9], "psi": [0, 9], "rangl": [0, 9], "Then": 0, "quantiti": 0, "langl": 0, "rvert": 0, "reduc": [0, 2], "densiti": 0, "expectation_one_body_product": [0, 5], "o_1": 0, "o_2": 0, "dot": 0, "o_k": 0, "indices_to_str": [0, 5], "statevector": [0, 6, 7], "bitstr": 0, "exampl": [0, 6, 7, 9, 11], "3": [0, 6, 7, 8, 9, 10, 11], "rang": [0, 6, 7, 8, 9], "011001": 0, "011010": 0, "011100": 0, "101001": 0, "101010": 0, "101100": 0, "110001": 0, "110010": 0, "110100": 0, "linear_oper": [0, 5, 8, 9, 10, 11], "multireference_st": [0, 5, 10], "ansatz_oper": 0, "reference_occup": [0, 10], "root": 0, "multirefer": 0, "occup": [0, 6, 7, 8], "desir": 0, "eigenvector": [0, 7], "lowest": [0, 7, 8], "one_hot": [0, 5], "shape": [0, 2, 3, 6, 9], "dtype": [0, 3, 9], "arrai": [0, 2, 6, 11], "zero": [0, 10], "except": 0, "hot": 0, "simulate_qdrift_double_factor": [0, 5], "n_step": [0, 8], "probabl": 0, "norm": 0, "n_sampl": 0, "seed": [0, 3, 4, 6, 7], "via": [0, 8], "qdrift": 0, "trotter": [0, 5], "step": [0, 7, 8], "sampl": [0, 3, 4], "els": [0, 3], "explicit": 0, "proport": [0, 7], "spectral": 0, "uniform": [0, 3], "requir": [0, 9], "whenev": 0, "complet": 0, "character": 0, "trajectori": 0, "pseudorandom": [0, 3, 4], "gener": [0, 3, 4, 5, 6, 7, 8, 9], "should": [0, 3, 4, 7, 8], "valid": [0, 3, 4], "input": [0, 1, 3, 4, 9], "random": [0, 4, 5, 6, 7, 11], "default_rng": [0, 3, 4], "numpi": [0, 2, 6, 7, 8, 9, 10], "just": [0, 8, 9], "simulate_trotter_double_factor": [0, 5, 8], "suzuki": 0, "formula": 0, "slater_determin": [0, 5, 6, 7, 8, 9], "occupied_orbit": [0, 6, 7, 8, 9], "configur": [0, 6], "word": [0, 9], "slater_determinant_one_rdm": [0, 5], "similarli": [0, 8], "construct": [1, 8, 9, 10, 11], "contract_diag_coulomb": [1, 5], "contract_num_op_sum": [1, 5], "diag_coulomb_linop": [1, 5], "implement": [1, 6, 7, 9], "num_op_sum_linop": [1, 5], "one_body_linop": [1, 5, 7], "algebra": [2, 11], "util": [2, 3, 4], "apply_matrix_to_slic": [2, 5], "target": 2, "slice": 2, "out": [2, 8], "double_factor": [2, 5], "ell": 2, "pk": 2, "qk": 2, "respect": 2, "too": 2, "small": 2, "exce": 2, "collect": 2, "double_factorized_t2": [2, 5], "t_": 2, "ijab": 2, "ap": 2, "ip": 2, "bq": 2, "jq": 2, "expm_multiply_taylor": [2, 5], "12": [2, 11], "expm": 2, "taylor": 2, "seri": 2, "expans": 2, "givens_decomposit": [2, 5], "is_antihermitian": [2, 5], "anti": [2, 3], "hermitian": [2, 3, 7], "is_hermitian": [2, 5], "is_orthogon": [2, 5], "orthogon": [2, 3], "union": 2, "bool_": 2, "is_real_symmetr": [2, 5], "is_special_orthogon": [2, 5], "special": [2, 3, 5, 6], "is_unitari": [2, 5], "lup": [2, 5], "pivot": 2, "lu": 2, "rtype": 2, "lower": 2, "unit": 2, "modified_choleski": [2, 5], "v_i": 2, "posit": [2, 10], "definit": 2, "No": 2, "check": [2, 7, 8], "verifi": 2, "1711": 2, "02242": 2, "assembl": 2, "reduced_matrix": [2, 5], "subspac": [2, 11], "span": 2, "some": [2, 8, 11], "v_j": 2, "random_antihermitian": [3, 5], "width": 3, "height": 3, "dype": 3, "random_hermitian": [3, 5, 7], "random_orthogon": [3, 5], "distribut": 3, "haar": 3, "measur": 3, "instanc": [3, 7, 8], "math": [3, 10], "ph": 3, "0609050": 3, "random_real_symmetric_matrix": [3, 5], "random_special_orthogon": [3, 5], "random_statevector": [3, 5, 11], "random_t2_amplitud": [3, 5], "random_two_body_tensor_r": [3, 5], "random_unitari": [3, 5, 6, 7], "random_nelec": [4, 5], "n_alpha": [4, 6, 7, 8, 9, 10], "n_beta": [4, 6, 7, 8, 9, 10], "random_occupied_orbit": [4, 5], "occ_a": 4, "occ_b": 4, "preserv": [5, 11], "categori": 5, "chemistri": 5, "By": [5, 6], "exploit": 5, "algorithm": 5, "faster": 5, "introduct": 5, "quadrat": [5, 8], "local": 5, "lucj": 5, "entangl": 5, "forg": 5, "contract": [5, 7], "linalg": [5, 7, 8, 11], "test": [5, 7, 8], "advantag": 6, "effici": [6, 11], "level": [6, 8], "doe": [6, 11], "primari": 6, "wai": [6, 7, 9], "directli": [6, 8], "code": [6, 8, 9, 11], "show": [6, 7, 8, 9, 10, 11], "how": [6, 7, 8, 9, 10, 11], "import": [6, 7, 8, 9, 10, 11], "6": [6, 7, 8, 9, 10, 11], "1234": [6, 7], "rotated_vec": [6, 7], "plain": 6, "Its": 6, "fix": 6, "For": [6, 7, 9, 11], "system": [6, 7], "conveni": 6, "comb": 6, "assert": 6, "standard": 6, "often": [6, 9], "simpli": [6, 7], "reshap": 6, "reshaped_vec": 6, "choic": 6, "pyscf": [6, 8, 9, 10], "modul": 6, "tutori": [7, 8, 9, 10], "ffsim": [7, 8, 9, 10, 11], "fundament": 7, "mode": 7, "sum_j": 7, "new": [7, 11], "th": 7, "satisfi": [7, 11], "anticommut": 7, "relat": [7, 9], "thei": [7, 9, 11], "align": [7, 9], "_1": 7, "_2": 7, "section": 7, "ll": [7, 8, 9], "demonstr": [7, 8, 9], "task": 7, "consid": [7, 9], "rewritten": 7, "introduc": [7, 9], "eigendecomposit": 7, "sum_k": [7, 8], "lambda_k": 7, "ik": 7, "jk": 7, "our": [7, 8, 9], "ground": [7, 9], "pick": 7, "phase": 7, "spars": [7, 8, 11], "eig": [7, 11], "eigsh": 7, "la": 7, "fact": 7, "you": 7, "illustr": 7, "purpos": 7, "explicitli": 7, "eigh": [7, 8], "evolved_vec": 7, "conj": 7, "undo": 7, "expected_phas": 7, "1j": [7, 8, 11], "assert_allclos": 7, "mention": [7, 8], "abov": [7, 8, 11], "below": [7, 8, 9], "better": [7, 8], "4": [7, 8, 9, 10, 11], "evolved_vec_alt": 7, "daunt": 8, "scale": 8, "cell": [8, 9], "hydrogen": 8, "molecul": [8, 9, 10], "stretch": [8, 9], "bond": [8, 9, 10], "build": [8, 9, 10], "h2": 8, "mol": [8, 9, 10], "gto": [8, 9, 10], "mole": [8, 9, 10], "atom": [8, 9, 10], "8": [8, 10, 11], "sto": [8, 9, 10], "6g": [8, 9, 10], "d2h": [8, 9], "rhf": [8, 9, 10], "kernel": [8, 9, 10], "mol_data": [8, 9, 10], "mol_hamiltonian": [8, 9, 10], "df_hamiltonian": 8, "converg": [8, 9, 10], "837796382593709": 8, "dataclass": [8, 9], "print": [8, 9, 10, 11], "inform": [8, 11], "One": 8, "27478830e": 8, "01": [8, 9, 10], "52909490e": 8, "17": 8, "5": [8, 9, 10, 11], "57029092e": 8, "77238770e": 8, "23173938e": 8, "58782168e": 8, "33545754e": 8, "49859013e": 8, "48240570e": 8, "83067333e": 8, "01841799e": 8, "53132024e": 8, "21318608e": 8, "00": [8, 10], "27383424e": 8, "16": 8, "82879498e": 8, "07792507e": 8, "14653029e": 8, "27521846e": 8, "62": 8, "39236953e": 8, "32": 8, "52090881e": 8, "03": [8, 10], "00000000e": 8, "7": [8, 11], "07106781e": 8, "27830444e": 8, "15": 8, "rest": 8, "although": 8, "alreadi": 8, "built": 8, "manual": 8, "asymmetr": 8, "basic": 8, "h_k": 8, "divid": 8, "singl": 8, "exponenti": 8, "individu": [8, 11], "do": [8, 11], "approx": 8, "prod_k": 8, "higher": 8, "deriv": 8, "write": 8, "recal": 8, "addit": [8, 11], "think": 8, "compos": 8, "def": [8, 9, 10], "simulate_trotter_step_double_factor": 8, "one_body_energi": 8, "one_body_basis_chang": 8, "zip": [8, 10], "finish": 8, "handl": 8, "split": 8, "multipl": [8, 11], "wrote": 8, "step_tim": 8, "match": 8, "initial_st": 8, "\u03c8": [8, 9, 10], "hf_energi": 8, "vdot": [8, 9, 10], "f": [8, 9, 10], "8377963825937084": 8, "now": 8, "later": 8, "exact_st": 8, "expm_multipli": 8, "tracea": 8, "fidel": 8, "ab": 8, "9696296369955066": 8, "final_st": [8, 9], "9990275744083494": 8, "improv": 8, "increas": 8, "10": 8, "9999906233109686": 8, "commonli": 8, "known": 8, "fourth": 8, "reproduc": 8, "9": [8, 9, 11], "fewer": 8, "9999999336740067": 8, "ethen": 9, "mcscf": [9, 10], "bond_dist": 9, "678": 9, "5626": 9, "c": 9, "9289": 9, "nelectron": 9, "ca": [9, 10], "casci": [9, 10], "nca": [9, 10], "neleca": [9, 10], "mo": [9, 10], "sort_mo": [9, 10], "energy_fci": [9, 10], "77": 9, "4456267643962": 9, "6290254326716": 9, "ci": [9, 10], "57322412553862": 9, "0000000": [9, 10], "phi_0": 9, "taken": 9, "express": 9, "previou": 9, "constructor": 9, "provid": 9, "truncat": 9, "ccsd": 9, "mp2": 9, "run": 9, "sinc": 9, "cc": 9, "frozen": 9, "nao_nr": 9, "reference_st": 9, "ansatz_st": [9, 10], "initiali": [9, 10], "49387212754473": 9, "e_corr": 9, "04824536314851268": 9, "46975600021676": 9, "facilit": 9, "convers": 9, "precis": 9, "somewhat": 9, "complic": 9, "short": 9, "entri": 9, "non": 9, "redund": 9, "associ": [9, 11], "fun": [9, 10], "x": [9, 10], "x0": [9, 10], "maxfun": 9, "50000": 9, "len": [9, 10], "72": 9, "messag": [9, 10], "rel_reduction_of_f_": 9, "lt": 9, "_factr": 9, "epsmch": 9, "success": [9, 10], "statu": [9, 10], "62902198093012": 9, "843e": 9, "591e": 9, "720e": 9, "600e": 9, "nit": 9, "269": 9, "jac": 9, "416e": 9, "126e": 9, "606e": 9, "04": 9, "948e": 9, "06": 9, "nfev": [9, 10], "21316": 9, "njev": 9, "292": 9, "hess_inv": 9, "72x72": 9, "lbfgsinvhessproduct": 9, "float64": 9, "gt": 9, "either": 9, "connect": 9, "swap": 9, "network": 9, "make": 9, "challeng": 9, "noisi": 9, "pre": 9, "fault": 9, "processor": 9, "idea": 9, "impos": 9, "sparsiti": 9, "constraint": 9, "them": 9, "depth": 9, "topologi": 9, "triangl": 9, "need": 9, "lattic": 9, "parallel": 9, "line": 9, "rung": 9, "ladder": 9, "With": 9, "setup": 9, "while": 9, "share": 9, "ldot": 9, "without": 9, "Of": 9, "cours": 9, "less": 9, "notic": 9, "decreas": 9, "46": 9, "62848215844997": 9, "198e": 9, "593e": 9, "02": [9, 10], "183e": 9, "078e": 9, "450": 9, "492e": 9, "629e": 9, "435e": 9, "638e": 9, "22701": 9, "483": 9, "46x46": 9, "water": 10, "equilibrium": 10, "radius_1": 10, "958": 10, "radius_2": 10, "bond_angle_deg": 10, "104": 10, "478": 10, "h1_x": 10, "h2_x": 10, "180": 10, "h2_y": 10, "c2v": 10, "n_electron": 10, "mo_occ": 10, "75": 10, "6787887956297": 10, "7079508859773": 10, "14": 10, "3336207346502": 10, "reference_occupations_spati": 10, "68366174447621": 10, "cobyla": 10, "maxit": 10, "100": 10, "evalu": 10, "exceed": 10, "69430210093412": 10, "344e": 10, "447e": 10, "883e": 10, "105e": 10, "881e": 10, "maxcv": 10, "25": 11, "Such": 11, "programmat": 11, "dictionari": 11, "hash": 11, "tabl": 11, "three": 11, "piec": 11, "being": 11, "upon": 11, "intern": 11, "itself": 11, "recommend": 11, "helper": 11, "shown": 11, "op1": 11, "repr": 11, "view": 11, "displai": 11, "39": 11, "0j": 11, "arithmet": 11, "multipli": 11, "scalar": 11, "go": 11, "op": 11, "op2": 11, "op3": 11, "0625": 11, "2j": 11, "25j": 11, "5j": 11, "125": 11, "good": 11, "awar": 11, "especi": 11, "avoid": 11, "These": 11, "subtract": 11, "divis": 11, "4j": 11, "12j": 11, "3j": 11, "6j": 11, "far": 11, "criteria": 11, "op4": 11, "linop": 11, "onto": 11, "14416721": 11, "01183319j": 11, "most": 11, "lm": 11, "21984743e": 11, "18j": 11}, "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, "", "SupportsApplyUnitary"], [0, 1, 1, "", "SupportsApproximateEquality"], [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_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, "", "indices_to_strings"], [2, 0, 0, "-", "linalg"], [0, 5, 1, "", "linear_operator"], [0, 5, 1, "", "multireference_state"], [0, 5, 1, "", "one_hot"], [3, 0, 0, "-", "random"], [0, 5, 1, "", "simulate_qdrift_double_factorized"], [0, 5, 1, "", "simulate_trotter_double_factorized"], [0, 5, 1, "", "slater_determinant"], [0, 5, 1, "", "slater_determinant_one_rdm"], [4, 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.MolecularData": [[0, 2, 1, "", "core_energy"], [0, 2, 1, "", "dipole_integrals"], [0, 3, 1, "", "from_hartree_fock"], [0, 4, 1, "", "hamiltonian"], [0, 2, 1, "", "nelec"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 2, 1, "", "orbital_symmetries"], [0, 2, 1, "", "two_body_tensor"]], "ffsim.MolecularHamiltonian": [[0, 2, 1, "", "constant"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 2, 1, "", "two_body_tensor"]], "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, 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, "", "diag_coulomb_linop"], [1, 5, 1, "", "num_op_sum_linop"], [1, 5, 1, "", "one_body_linop"]], "ffsim.linalg": [[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, "", "modified_cholesky"], [2, 5, 1, "", "reduced_matrix"]], "ffsim.random": [[3, 5, 1, "", "random_antihermitian"], [3, 5, 1, "", "random_hermitian"], [3, 5, 1, "", "random_orthogonal"], [3, 5, 1, "", "random_real_symmetric_matrix"], [3, 5, 1, "", "random_special_orthogonal"], [3, 5, 1, "", "random_statevector"], [3, 5, 1, "", "random_t2_amplitudes"], [3, 5, 1, "", "random_two_body_tensor_real"], [3, 5, 1, "", "random_unitary"]], "ffsim.testing": [[4, 5, 1, "", "random_nelec"], [4, 5, 1, "", "random_occupied_orbitals"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:property", "5": "py:function"}, "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"]}, "titleterms": {"ffsim": [0, 1, 2, 3, 4, 5, 6], "contract": 1, "linalg": 2, "random": 3, "test": 4, "welcom": 5, "": 5, "document": 5, "tutori": 5, "api": 5, "refer": 5, "introduct": 6, "orbit": 7, "rotat": 7, "quadrat": 7, "hamiltonian": [7, 8], "time": 7, "evolut": 7, "diagon": 8, "coulomb": 8, "oper": 8, "doubl": 8, "factor": 8, "trotter": 8, "simul": 8, "represent": 8, "molecular": 8, "brief": 8, "background": 8, "suzuki": 8, "formula": 8, "implement": 8, "The": [9, 11], "local": 9, "unitari": 9, "cluster": 9, "jastrow": 9, "lucj": 9, "ansatz": 9, "ucj": 9, "entangl": 10, "forg": 10, "fermionoper": 11, "class": 11}, "envversion": {"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, "nbsphinx": 4, "sphinx": 60}, "alltitles": {"ffsim": [[0, "module-ffsim"]], "ffsim.contract": [[1, "module-ffsim.contract"]], "ffsim.linalg": [[2, "module-ffsim.linalg"]], "ffsim.random": [[3, "module-ffsim.random"]], "ffsim.testing": [[4, "module-ffsim.testing"]], "Welcome to ffsim\u2019s documentation!": [[5, "welcome-to-ffsim-s-documentation"]], "Tutorials": [[5, "tutorials"]], "API Reference": [[5, "api-reference"]], "Introduction to ffsim": [[6, "Introduction-to-ffsim"]], "Orbital rotations and quadratic Hamiltonians": [[7, "Orbital-rotations-and-quadratic-Hamiltonians"]], "Orbital rotations": [[7, "Orbital-rotations"]], "Time evolution by a quadratic Hamiltonian": [[7, "Time-evolution-by-a-quadratic-Hamiltonian"]], "Diagonal Coulomb operators and double-factorized Trotter simulation": [[8, "Diagonal-Coulomb-operators-and-double-factorized-Trotter-simulation"]], "Double-factorized representation of the molecular Hamiltonian": [[8, "Double-factorized-representation-of-the-molecular-Hamiltonian"]], "Trotter simulation of the double-factorized Hamiltonian": [[8, "Trotter-simulation-of-the-double-factorized-Hamiltonian"]], "Brief background on Trotter-Suzuki formulas": [[8, "Brief-background-on-Trotter-Suzuki-formulas"]], "Implementing Trotter simulation of the double-factorized Hamiltonian": [[8, "Implementing-Trotter-simulation-of-the-double-factorized-Hamiltonian"]], "The local unitary cluster Jastrow (LUCJ) ansatz": [[9, "The-local-unitary-cluster-Jastrow-(LUCJ)-ansatz"], [9, "id1"]], "The unitary cluster Jastrow (UCJ) ansatz": [[9, "The-unitary-cluster-Jastrow-(UCJ)-ansatz"]], "Entanglement forging": [[10, "Entanglement-forging"]], "The FermionOperator class": [[11, "The-FermionOperator-class"]]}, "indexentries": {"doublefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.DoubleFactorizedHamiltonian"]], "fermionaction (class in ffsim)": [[0, "ffsim.FermionAction"]], "fermionoperator (class in ffsim)": [[0, "ffsim.FermionOperator"]], "hopgateansatzoperator (class in ffsim)": [[0, "ffsim.HopGateAnsatzOperator"]], "moleculardata (class in ffsim)": [[0, "ffsim.MolecularData"]], "molecularhamiltonian (class in ffsim)": [[0, "ffsim.MolecularHamiltonian"]], "supportsapplyunitary (class in ffsim)": [[0, "ffsim.SupportsApplyUnitary"]], "supportsapproximateequality (class in ffsim)": [[0, "ffsim.SupportsApproximateEquality"]], "supportslinearoperator (class in ffsim)": [[0, "ffsim.SupportsLinearOperator"]], "supportstrace (class in ffsim)": [[0, "ffsim.SupportsTrace"]], "ucjoperator (class in ffsim)": [[0, "ffsim.UCJOperator"]], "action (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.action"]], "apply_diag_coulomb_evolution() (in module ffsim)": [[0, "ffsim.apply_diag_coulomb_evolution"]], "apply_fsim_gate() (in module ffsim)": [[0, "ffsim.apply_fsim_gate"]], "apply_givens_rotation() (in module ffsim)": [[0, "ffsim.apply_givens_rotation"]], "apply_hop_gate() (in module ffsim)": [[0, "ffsim.apply_hop_gate"]], "apply_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_interaction"]], "apply_num_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_num_interaction"]], "apply_num_op_prod_interaction() (in module ffsim)": [[0, "ffsim.apply_num_op_prod_interaction"]], "apply_num_op_sum_evolution() (in module ffsim)": [[0, "ffsim.apply_num_op_sum_evolution"]], "apply_orbital_rotation() (in module ffsim)": [[0, "ffsim.apply_orbital_rotation"]], "apply_tunneling_interaction() (in module ffsim)": [[0, "ffsim.apply_tunneling_interaction"]], "apply_unitary() (in module ffsim)": [[0, "ffsim.apply_unitary"]], "approx_eq() (in module ffsim)": [[0, "ffsim.approx_eq"]], "conserves_particle_number() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_particle_number"]], "conserves_spin_z() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_spin_z"]], "constant (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.constant"]], "constant (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.constant"]], "core_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.core_energy"]], "cre() (in module ffsim)": [[0, "ffsim.cre"]], "cre_a() (in module ffsim)": [[0, "ffsim.cre_a"]], "cre_b() (in module ffsim)": [[0, "ffsim.cre_b"]], "des() (in module ffsim)": [[0, "ffsim.des"]], "des_a() (in module ffsim)": [[0, "ffsim.des_a"]], "des_b() (in module ffsim)": [[0, "ffsim.des_b"]], "diag_coulomb_mats (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.diag_coulomb_mats"]], "diag_coulomb_mats_alpha_alpha (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.diag_coulomb_mats_alpha_alpha"]], "diag_coulomb_mats_alpha_beta (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.diag_coulomb_mats_alpha_beta"]], "dim() (in module ffsim)": [[0, "ffsim.dim"]], "dims() (in module ffsim)": [[0, "ffsim.dims"]], "dipole_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.dipole_integrals"]], "expectation_one_body_power() (in module ffsim)": [[0, "ffsim.expectation_one_body_power"]], "expectation_one_body_product() (in module ffsim)": [[0, "ffsim.expectation_one_body_product"]], "ffsim": [[0, "module-ffsim"]], "final_orbital_rotation (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.final_orbital_rotation"]], "from_hartree_fock() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_hartree_fock"]], "from_molecular_hamiltonian() (ffsim.doublefactorizedhamiltonian static method)": [[0, "ffsim.DoubleFactorizedHamiltonian.from_molecular_hamiltonian"]], "from_parameters() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.from_parameters"]], "from_t_amplitudes() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.from_t_amplitudes"]], "hamiltonian (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.hamiltonian"]], "indices_to_strings() (in module ffsim)": [[0, "ffsim.indices_to_strings"]], "linear_operator() (in module ffsim)": [[0, "ffsim.linear_operator"]], "many_body_order() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.many_body_order"]], "module": [[0, "module-ffsim"], [1, "module-ffsim.contract"], [2, "module-ffsim.linalg"], [3, "module-ffsim.random"], [4, "module-ffsim.testing"]], "multireference_state() (in module ffsim)": [[0, "ffsim.multireference_state"]], "n_reps (ffsim.ucjoperator property)": [[0, "ffsim.UCJOperator.n_reps"]], "nelec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.nelec"]], "norb (ffsim.doublefactorizedhamiltonian property)": [[0, "ffsim.DoubleFactorizedHamiltonian.norb"]], "norb (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.norb"]], "norb (ffsim.molecularhamiltonian property)": [[0, "ffsim.MolecularHamiltonian.norb"]], "norb (ffsim.ucjoperator property)": [[0, "ffsim.UCJOperator.norb"]], "normal_ordered() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.normal_ordered"]], "one_body_tensor (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.one_body_tensor"]], "one_body_tensor (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.one_body_tensor"]], "one_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.one_body_tensor"]], "one_hot() (in module ffsim)": [[0, "ffsim.one_hot"]], "orb (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.orb"]], "orbital_rotations (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.orbital_rotations"]], "orbital_rotations (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.orbital_rotations"]], "orbital_symmetries (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.orbital_symmetries"]], "simulate_qdrift_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_qdrift_double_factorized"]], "simulate_trotter_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_trotter_double_factorized"]], "slater_determinant() (in module ffsim)": [[0, "ffsim.slater_determinant"]], "slater_determinant_one_rdm() (in module ffsim)": [[0, "ffsim.slater_determinant_one_rdm"]], "spin (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.spin"]], "to_number_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_number_representation"]], "to_parameters() (ffsim.ucjoperator method)": [[0, "ffsim.UCJOperator.to_parameters"]], "to_t_amplitudes() (ffsim.ucjoperator method)": [[0, "ffsim.UCJOperator.to_t_amplitudes"]], "to_z_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_z_representation"]], "trace() (in module ffsim)": [[0, "ffsim.trace"]], "two_body_tensor (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.two_body_tensor"]], "two_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.two_body_tensor"]], "z_representation (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.z_representation"]], "contract_diag_coulomb() (in module ffsim.contract)": [[1, "ffsim.contract.contract_diag_coulomb"]], "contract_num_op_sum() (in module ffsim.contract)": [[1, "ffsim.contract.contract_num_op_sum"]], "diag_coulomb_linop() (in module ffsim.contract)": [[1, "ffsim.contract.diag_coulomb_linop"]], "ffsim.contract": [[1, "module-ffsim.contract"]], "num_op_sum_linop() (in module ffsim.contract)": [[1, "ffsim.contract.num_op_sum_linop"]], "one_body_linop() (in module ffsim.contract)": [[1, "ffsim.contract.one_body_linop"]], "apply_matrix_to_slices() (in module ffsim.linalg)": [[2, "ffsim.linalg.apply_matrix_to_slices"]], "double_factorized() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized"]], "double_factorized_t2() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized_t2"]], "expm_multiply_taylor() (in module ffsim.linalg)": [[2, "ffsim.linalg.expm_multiply_taylor"]], "ffsim.linalg": [[2, "module-ffsim.linalg"]], "givens_decomposition() (in module ffsim.linalg)": [[2, "ffsim.linalg.givens_decomposition"]], "is_antihermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_antihermitian"]], "is_hermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_hermitian"]], "is_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_orthogonal"]], "is_real_symmetric() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_real_symmetric"]], "is_special_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_special_orthogonal"]], "is_unitary() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_unitary"]], "lup() (in module ffsim.linalg)": [[2, "ffsim.linalg.lup"]], "modified_cholesky() (in module ffsim.linalg)": [[2, "ffsim.linalg.modified_cholesky"]], "reduced_matrix() (in module ffsim.linalg)": [[2, "ffsim.linalg.reduced_matrix"]], "ffsim.random": [[3, "module-ffsim.random"]], "random_antihermitian() (in module ffsim.random)": [[3, "ffsim.random.random_antihermitian"]], "random_hermitian() (in module ffsim.random)": [[3, "ffsim.random.random_hermitian"]], "random_orthogonal() (in module ffsim.random)": [[3, "ffsim.random.random_orthogonal"]], "random_real_symmetric_matrix() (in module ffsim.random)": [[3, "ffsim.random.random_real_symmetric_matrix"]], "random_special_orthogonal() (in module ffsim.random)": [[3, "ffsim.random.random_special_orthogonal"]], "random_statevector() (in module ffsim.random)": [[3, "ffsim.random.random_statevector"]], "random_t2_amplitudes() (in module ffsim.random)": [[3, "ffsim.random.random_t2_amplitudes"]], "random_two_body_tensor_real() (in module ffsim.random)": [[3, "ffsim.random.random_two_body_tensor_real"]], "random_unitary() (in module ffsim.random)": [[3, "ffsim.random.random_unitary"]], "ffsim.testing": [[4, "module-ffsim.testing"]], "random_nelec() (in module ffsim.testing)": [[4, "ffsim.testing.random_nelec"]], "random_occupied_orbitals() (in module ffsim.testing)": [[4, "ffsim.testing.random_occupied_orbitals"]]}}) \ No newline at end of file diff --git a/tutorials/01-introduction.ipynb b/tutorials/01-introduction.ipynb index e3fc47f00..aabe78f3d 100644 --- a/tutorials/01-introduction.ipynb +++ b/tutorials/01-introduction.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:36.422033Z", - "iopub.status.busy": "2023-10-25T21:53:36.421607Z", - "iopub.status.idle": "2023-10-25T21:53:36.770566Z", - "shell.execute_reply": "2023-10-25T21:53:36.769858Z" + "iopub.execute_input": "2023-10-25T22:36:55.806469Z", + "iopub.status.busy": "2023-10-25T22:36:55.806037Z", + "iopub.status.idle": "2023-10-25T22:36:56.173437Z", + "shell.execute_reply": "2023-10-25T22:36:56.172708Z" } }, "outputs": [], @@ -62,10 +62,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:36.775004Z", - "iopub.status.busy": "2023-10-25T21:53:36.774487Z", - "iopub.status.idle": "2023-10-25T21:53:36.779640Z", - "shell.execute_reply": "2023-10-25T21:53:36.778903Z" + "iopub.execute_input": "2023-10-25T22:36:56.178612Z", + "iopub.status.busy": "2023-10-25T22:36:56.177304Z", + "iopub.status.idle": "2023-10-25T22:36:56.183207Z", + "shell.execute_reply": "2023-10-25T22:36:56.182642Z" } }, "outputs": [], @@ -93,10 +93,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:36.782688Z", - "iopub.status.busy": "2023-10-25T21:53:36.782324Z", - "iopub.status.idle": "2023-10-25T21:53:36.786964Z", - "shell.execute_reply": "2023-10-25T21:53:36.786217Z" + "iopub.execute_input": "2023-10-25T22:36:56.187737Z", + "iopub.status.busy": "2023-10-25T22:36:56.186648Z", + "iopub.status.idle": "2023-10-25T22:36:56.191149Z", + "shell.execute_reply": "2023-10-25T22:36:56.190587Z" } }, "outputs": [], diff --git a/tutorials/02-orbital-rotation.ipynb b/tutorials/02-orbital-rotation.ipynb index 96459fef7..9abbe1985 100644 --- a/tutorials/02-orbital-rotation.ipynb +++ b/tutorials/02-orbital-rotation.ipynb @@ -43,10 +43,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:38.602093Z", - "iopub.status.busy": "2023-10-25T21:53:38.601841Z", - "iopub.status.idle": "2023-10-25T21:53:38.985484Z", - "shell.execute_reply": "2023-10-25T21:53:38.984468Z" + "iopub.execute_input": "2023-10-25T22:36:58.052305Z", + "iopub.status.busy": "2023-10-25T22:36:58.052068Z", + "iopub.status.idle": "2023-10-25T22:36:58.418054Z", + "shell.execute_reply": "2023-10-25T22:36:58.417323Z" } }, "outputs": [], @@ -111,10 +111,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:38.989836Z", - "iopub.status.busy": "2023-10-25T21:53:38.989071Z", - "iopub.status.idle": "2023-10-25T21:53:39.051050Z", - "shell.execute_reply": "2023-10-25T21:53:39.050278Z" + "iopub.execute_input": "2023-10-25T22:36:58.422655Z", + "iopub.status.busy": "2023-10-25T22:36:58.422015Z", + "iopub.status.idle": "2023-10-25T22:36:58.459609Z", + "shell.execute_reply": "2023-10-25T22:36:58.458938Z" } }, "outputs": [], @@ -158,10 +158,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:39.064621Z", - "iopub.status.busy": "2023-10-25T21:53:39.064262Z", - "iopub.status.idle": "2023-10-25T21:53:39.077872Z", - "shell.execute_reply": "2023-10-25T21:53:39.077164Z" + "iopub.execute_input": "2023-10-25T22:36:58.463437Z", + "iopub.status.busy": "2023-10-25T22:36:58.463084Z", + "iopub.status.idle": "2023-10-25T22:36:58.475859Z", + "shell.execute_reply": "2023-10-25T22:36:58.475248Z" } }, "outputs": [], @@ -201,10 +201,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:39.082834Z", - "iopub.status.busy": "2023-10-25T21:53:39.081654Z", - "iopub.status.idle": "2023-10-25T21:53:39.089958Z", - "shell.execute_reply": "2023-10-25T21:53:39.089197Z" + "iopub.execute_input": "2023-10-25T22:36:58.478982Z", + "iopub.status.busy": "2023-10-25T22:36:58.478632Z", + "iopub.status.idle": "2023-10-25T22:36:58.485259Z", + "shell.execute_reply": "2023-10-25T22:36:58.484661Z" } }, "outputs": [], diff --git a/tutorials/03-double-factorized.html b/tutorials/03-double-factorized.html index 61bbf1f91..c59edd7d7 100644 --- a/tutorials/03-double-factorized.html +++ b/tutorials/03-double-factorized.html @@ -131,28 +131,28 @@

Double-factorized representation of the molecular Hamiltonian

@@ -296,7 +296,7 @@

Implementing Trotter simulation of the double-factorized Hamiltonian
-Hartree Fock energy: -0.837796382593709
+Hartree Fock energy: -0.8377963825937084
 

Now, we set the evolution time and calculate the exact result of time evolution by directly exponentiating the Hamiltonian using SciPy. Later, we will compare the result of our approximate time evolution with this exact result.

@@ -324,7 +324,7 @@

Implementing Trotter simulation of the double-factorized Hamiltonian
-Fidelity of evolved state w.r.t. initial state: 0.9696296369955065
+Fidelity of evolved state w.r.t. initial state: 0.9696296369955066
 

Now, let’s test our implementation.

@@ -351,7 +351,7 @@

Implementing Trotter simulation of the double-factorized Hamiltonian
-Fidelity of Trotter-evolved state with exact state: 0.9990275744083491
+Fidelity of Trotter-evolved state with exact state: 0.9990275744083494
 

The fidelity of the final result can be improved by increasing the number of Trotter steps.

@@ -378,7 +378,7 @@

Implementing Trotter simulation of the double-factorized Hamiltonian
-Fidelity of Trotter-evolved state with exact state: 0.999990623310968
+Fidelity of Trotter-evolved state with exact state: 0.9999906233109686
 

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.

@@ -407,7 +407,7 @@

Implementing Trotter simulation of the double-factorized Hamiltonian
-Fidelity of Trotter-evolved state with exact state: 0.999990623310968
+Fidelity of Trotter-evolved state with exact state: 0.9999906233109686
 

A higher order formula achieves a higher fidelity with fewer Trotter steps:

@@ -435,7 +435,7 @@

Implementing Trotter simulation of the double-factorized Hamiltonian
-Fidelity of Trotter-evolved state with exact state: 0.9999999336740071
+Fidelity of Trotter-evolved state with exact state: 0.9999999336740067
 
diff --git a/tutorials/03-double-factorized.ipynb b/tutorials/03-double-factorized.ipynb index dad276ce2..e679311ce 100644 --- a/tutorials/03-double-factorized.ipynb +++ b/tutorials/03-double-factorized.ipynb @@ -43,10 +43,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:40.985297Z", - "iopub.status.busy": "2023-10-25T21:53:40.984655Z", - "iopub.status.idle": "2023-10-25T21:53:41.493651Z", - "shell.execute_reply": "2023-10-25T21:53:41.492879Z" + "iopub.execute_input": "2023-10-25T22:37:00.564527Z", + "iopub.status.busy": "2023-10-25T22:37:00.563943Z", + "iopub.status.idle": "2023-10-25T22:37:01.040069Z", + "shell.execute_reply": "2023-10-25T22:37:01.039225Z" } }, "outputs": [ @@ -92,10 +92,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.497703Z", - "iopub.status.busy": "2023-10-25T21:53:41.497199Z", - "iopub.status.idle": "2023-10-25T21:53:41.504110Z", - "shell.execute_reply": "2023-10-25T21:53:41.503540Z" + "iopub.execute_input": "2023-10-25T22:37:01.043849Z", + "iopub.status.busy": "2023-10-25T22:37:01.043504Z", + "iopub.status.idle": "2023-10-25T22:37:01.049845Z", + "shell.execute_reply": "2023-10-25T22:37:01.049303Z" } }, "outputs": [ @@ -106,28 +106,28 @@ "Original representation\n", "-----------------------\n", "One-body tensor:\n", - "[[-8.27478830e-01 -1.09243819e-16]\n", - " [-7.48351655e-17 -6.77238770e-01]]\n", + "[[-8.27478830e-01 -8.52909490e-17]\n", + " [-5.57029092e-17 -6.77238770e-01]]\n", "\n", "Two-body tensor:\n", - "[[[[ 5.23173938e-01 -5.00678144e-19]\n", - " [-5.00678144e-19 5.33545754e-01]]\n", + "[[[[5.23173938e-01 3.58782168e-17]\n", + " [3.58782168e-17 5.33545754e-01]]\n", "\n", - " [[ 5.85364508e-18 2.48240570e-01]\n", - " [ 2.48240570e-01 -1.17688164e-17]]]\n", + " [[2.49859013e-17 2.48240570e-01]\n", + " [2.48240570e-01 4.83067333e-17]]]\n", "\n", "\n", - " [[[ 5.85364508e-18 2.48240570e-01]\n", - " [ 2.48240570e-01 -1.17688164e-17]]\n", + " [[[2.49859013e-17 2.48240570e-01]\n", + " [2.48240570e-01 4.83067333e-17]]\n", "\n", - " [[ 5.33545754e-01 1.05429868e-17]\n", - " [ 1.05429868e-17 5.53132024e-01]]]]\n", + " [[5.33545754e-01 4.01841799e-17]\n", + " [4.01841799e-17 5.53132024e-01]]]]\n", "\n", "Double-factorized representation\n", "--------------------------------\n", "One-body tensor:\n", - "[[-1.21318608e+00 -1.03109072e-16]\n", - " [-8.30334814e-17 -1.07792507e+00]]\n", + "[[-1.21318608e+00 -1.27383424e-16]\n", + " [-8.82879498e-17 -1.07792507e+00]]\n", "\n", "Diagonal Coulomb matrices:\n", "[[[ 5.14653029e-01 5.33545754e-01]\n", @@ -136,18 +136,18 @@ " [[ 2.48240570e-01 -2.48240570e-01]\n", " [-2.48240570e-01 2.48240570e-01]]\n", "\n", - " [[ 1.44655364e-30 -1.11022302e-16]\n", - " [-1.11022302e-16 8.52090881e-03]]]\n", + " [[ 2.27521846e-62 -1.39236953e-32]\n", + " [-1.39236953e-32 8.52090881e-03]]]\n", "\n", "Orbital rotations:\n", "[[[ 1.00000000e+00 0.00000000e+00]\n", " [ 0.00000000e+00 1.00000000e+00]]\n", "\n", - " [[-7.07106781e-01 7.07106781e-01]\n", - " [ 7.07106781e-01 7.07106781e-01]]\n", + " [[-7.07106781e-01 -7.07106781e-01]\n", + " [ 7.07106781e-01 -7.07106781e-01]]\n", "\n", - " [[ 7.45733039e-16 -1.00000000e+00]\n", - " [-1.00000000e+00 -7.45733039e-16]]]\n" + " [[-1.27830444e-15 -1.00000000e+00]\n", + " [-1.00000000e+00 1.27830444e-15]]]\n" ] } ], @@ -226,10 +226,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.507131Z", - "iopub.status.busy": "2023-10-25T21:53:41.506795Z", - "iopub.status.idle": "2023-10-25T21:53:41.511343Z", - "shell.execute_reply": "2023-10-25T21:53:41.510807Z" + "iopub.execute_input": "2023-10-25T22:37:01.053112Z", + "iopub.status.busy": "2023-10-25T22:37:01.052436Z", + "iopub.status.idle": "2023-10-25T22:37:01.058006Z", + "shell.execute_reply": "2023-10-25T22:37:01.057392Z" } }, "outputs": [], @@ -284,10 +284,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.514318Z", - "iopub.status.busy": "2023-10-25T21:53:41.513949Z", - "iopub.status.idle": "2023-10-25T21:53:41.518651Z", - "shell.execute_reply": "2023-10-25T21:53:41.517792Z" + "iopub.execute_input": "2023-10-25T22:37:01.061751Z", + "iopub.status.busy": "2023-10-25T22:37:01.060649Z", + "iopub.status.idle": "2023-10-25T22:37:01.066205Z", + "shell.execute_reply": "2023-10-25T22:37:01.065642Z" } }, "outputs": [], @@ -324,10 +324,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.521969Z", - "iopub.status.busy": "2023-10-25T21:53:41.521553Z", - "iopub.status.idle": "2023-10-25T21:53:41.526968Z", - "shell.execute_reply": "2023-10-25T21:53:41.526313Z" + "iopub.execute_input": "2023-10-25T22:37:01.069111Z", + "iopub.status.busy": "2023-10-25T22:37:01.068667Z", + "iopub.status.idle": "2023-10-25T22:37:01.074495Z", + "shell.execute_reply": "2023-10-25T22:37:01.073941Z" } }, "outputs": [ @@ -335,7 +335,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Hartree Fock energy: -0.837796382593709\n" + "Hartree Fock energy: -0.8377963825937084\n" ] } ], @@ -366,10 +366,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.529813Z", - "iopub.status.busy": "2023-10-25T21:53:41.529471Z", - "iopub.status.idle": "2023-10-25T21:53:41.543792Z", - "shell.execute_reply": "2023-10-25T21:53:41.543084Z" + "iopub.execute_input": "2023-10-25T22:37:01.077458Z", + "iopub.status.busy": "2023-10-25T22:37:01.076848Z", + "iopub.status.idle": "2023-10-25T22:37:01.087132Z", + "shell.execute_reply": "2023-10-25T22:37:01.086577Z" } }, "outputs": [ @@ -377,7 +377,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of evolved state w.r.t. initial state: 0.9696296369955065\n" + "Fidelity of evolved state w.r.t. initial state: 0.9696296369955066\n" ] } ], @@ -408,10 +408,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.548578Z", - "iopub.status.busy": "2023-10-25T21:53:41.547991Z", - "iopub.status.idle": "2023-10-25T21:53:41.558765Z", - "shell.execute_reply": "2023-10-25T21:53:41.558188Z" + "iopub.execute_input": "2023-10-25T22:37:01.090228Z", + "iopub.status.busy": "2023-10-25T22:37:01.089559Z", + "iopub.status.idle": "2023-10-25T22:37:01.098344Z", + "shell.execute_reply": "2023-10-25T22:37:01.097773Z" } }, "outputs": [ @@ -419,7 +419,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9990275744083491\n" + "Fidelity of Trotter-evolved state with exact state: 0.9990275744083494\n" ] } ], @@ -449,10 +449,10 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.561180Z", - "iopub.status.busy": "2023-10-25T21:53:41.560905Z", - "iopub.status.idle": "2023-10-25T21:53:41.619285Z", - "shell.execute_reply": "2023-10-25T21:53:41.618575Z" + "iopub.execute_input": "2023-10-25T22:37:01.101276Z", + "iopub.status.busy": "2023-10-25T22:37:01.100835Z", + "iopub.status.idle": "2023-10-25T22:37:01.145337Z", + "shell.execute_reply": "2023-10-25T22:37:01.144745Z" } }, "outputs": [ @@ -460,7 +460,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.999990623310968\n" + "Fidelity of Trotter-evolved state with exact state: 0.9999906233109686\n" ] } ], @@ -492,10 +492,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.622724Z", - "iopub.status.busy": "2023-10-25T21:53:41.622148Z", - "iopub.status.idle": "2023-10-25T21:53:41.662416Z", - "shell.execute_reply": "2023-10-25T21:53:41.661522Z" + "iopub.execute_input": "2023-10-25T22:37:01.148276Z", + "iopub.status.busy": "2023-10-25T22:37:01.147912Z", + "iopub.status.idle": "2023-10-25T22:37:01.188137Z", + "shell.execute_reply": "2023-10-25T22:37:01.186555Z" } }, "outputs": [ @@ -503,7 +503,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.999990623310968\n" + "Fidelity of Trotter-evolved state with exact state: 0.9999906233109686\n" ] } ], @@ -534,10 +534,10 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:53:41.665700Z", - "iopub.status.busy": "2023-10-25T21:53:41.665151Z", - "iopub.status.idle": "2023-10-25T21:53:41.682901Z", - "shell.execute_reply": "2023-10-25T21:53:41.682093Z" + "iopub.execute_input": "2023-10-25T22:37:01.191299Z", + "iopub.status.busy": "2023-10-25T22:37:01.190992Z", + "iopub.status.idle": "2023-10-25T22:37:01.208147Z", + "shell.execute_reply": "2023-10-25T22:37:01.207353Z" } }, "outputs": [ @@ -545,7 +545,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9999999336740071\n" + "Fidelity of Trotter-evolved state with exact state: 0.9999999336740067\n" ] } ], diff --git a/tutorials/04-lucj.html b/tutorials/04-lucj.html index 88bcfe48d..d998b841a 100644 --- a/tutorials/04-lucj.html +++ b/tutorials/04-lucj.html @@ -96,7 +96,7 @@

The local unitary cluster Jastrow (LUCJ) ansatz
 converged SCF energy = -77.4456267643962
-CASCI E = -77.6290254326718  E(CI) = -3.57322412553863  S^2 = 0.0000000
+CASCI E = -77.6290254326716  E(CI) = -3.57322412553862  S^2 = 0.0000000
 
@@ -150,8 +150,8 @@

The unitary cluster Jastrow (UCJ) ansatz
-E(CCSD) = -77.49387212754468  E_corr = -0.0482453631485136
-Energy at initialialization: -77.46975600021709
+E(CCSD) = -77.49387212754473  E_corr = -0.04824536314851268
+Energy at initialialization: -77.46975600021676
 

To facilitate variational optimization of the ansatz, UCJOperator implements methods for conversion to and from a vector of real-valued parameters. The precise relation between a parameter vector and the matrices of the UCJ operator is somewhat complicated. In short, the parameter vector stores the entries of the UCJ matrices in a non-redundant way (for the orbital rotations, the parameter vector actually stores the entries of their generators.)

@@ -192,12 +192,12 @@

The unitary cluster Jastrow (UCJ) ansatz\n" ] } @@ -251,10 +251,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:55:25.795545Z", - "iopub.status.busy": "2023-10-25T21:55:25.795176Z", - "iopub.status.idle": "2023-10-25T21:56:39.495475Z", - "shell.execute_reply": "2023-10-25T21:56:39.494482Z" + "iopub.execute_input": "2023-10-25T22:38:17.173783Z", + "iopub.status.busy": "2023-10-25T22:38:17.172653Z", + "iopub.status.idle": "2023-10-25T22:39:33.968944Z", + "shell.execute_reply": "2023-10-25T22:39:33.968334Z" } }, "outputs": [ @@ -266,12 +266,12 @@ " message: CONVERGENCE: REL_REDUCTION_OF_F_<=_FACTR*EPSMCH\n", " success: True\n", " status: 0\n", - " fun: -77.62654295304475\n", - " x: [-3.511e-01 9.702e-01 ... 2.266e-01 6.193e-01]\n", - " nit: 360\n", - " jac: [ 4.547e-05 -2.217e-04 ... 6.537e-05 9.805e-05]\n", - " nfev: 17954\n", - " njev: 382\n", + " fun: -77.62848215844997\n", + " x: [ 6.198e-01 -6.593e-02 ... 1.183e-01 -1.078e-01]\n", + " nit: 450\n", + " jac: [ 1.492e-04 -2.629e-04 ... 1.435e-04 -3.638e-04]\n", + " nfev: 22701\n", + " njev: 483\n", " hess_inv: <46x46 LbfgsInvHessProduct with dtype=float64>\n" ] } diff --git a/tutorials/05-entanglement-forging.html b/tutorials/05-entanglement-forging.html index 8acb6e43c..6beed5d3c 100644 --- a/tutorials/05-entanglement-forging.html +++ b/tutorials/05-entanglement-forging.html @@ -102,7 +102,7 @@

Entanglement forging
 converged SCF energy = -75.6787887956297
-CASCI E = -75.7079508859772  E(CI) = -14.3336207346504  S^2 = 0.0000000
+CASCI E = -75.7079508859773  E(CI) = -14.3336207346502  S^2 = 0.0000000
 
diff --git a/tutorials/05-entanglement-forging.ipynb b/tutorials/05-entanglement-forging.ipynb index 05eb57a0e..fa8dfa58b 100644 --- a/tutorials/05-entanglement-forging.ipynb +++ b/tutorials/05-entanglement-forging.ipynb @@ -14,10 +14,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:41.347499Z", - "iopub.status.busy": "2023-10-25T21:56:41.347061Z", - "iopub.status.idle": "2023-10-25T21:56:41.952534Z", - "shell.execute_reply": "2023-10-25T21:56:41.951903Z" + "iopub.execute_input": "2023-10-25T22:39:35.902653Z", + "iopub.status.busy": "2023-10-25T22:39:35.902244Z", + "iopub.status.idle": "2023-10-25T22:39:36.610182Z", + "shell.execute_reply": "2023-10-25T22:39:36.609495Z" } }, "outputs": [ @@ -32,7 +32,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "CASCI E = -75.7079508859772 E(CI) = -14.3336207346504 S^2 = 0.0000000\n" + "CASCI E = -75.7079508859773 E(CI) = -14.3336207346502 S^2 = 0.0000000\n" ] } ], @@ -90,10 +90,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:41.956825Z", - "iopub.status.busy": "2023-10-25T21:56:41.955773Z", - "iopub.status.idle": "2023-10-25T21:56:41.984310Z", - "shell.execute_reply": "2023-10-25T21:56:41.983733Z" + "iopub.execute_input": "2023-10-25T22:39:36.614713Z", + "iopub.status.busy": "2023-10-25T22:39:36.614126Z", + "iopub.status.idle": "2023-10-25T22:39:36.641876Z", + "shell.execute_reply": "2023-10-25T22:39:36.641194Z" } }, "outputs": [ @@ -101,7 +101,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Energy at initialialization: -75.68366174447614\n" + "Energy at initialialization: -75.68366174447621\n" ] } ], @@ -135,10 +135,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:41.987584Z", - "iopub.status.busy": "2023-10-25T21:56:41.987058Z", - "iopub.status.idle": "2023-10-25T21:56:44.585083Z", - "shell.execute_reply": "2023-10-25T21:56:44.584230Z" + "iopub.execute_input": "2023-10-25T22:39:36.645471Z", + "iopub.status.busy": "2023-10-25T22:39:36.644784Z", + "iopub.status.idle": "2023-10-25T22:39:38.706845Z", + "shell.execute_reply": "2023-10-25T22:39:38.706152Z" } }, "outputs": [ @@ -150,8 +150,8 @@ " message: Maximum number of function evaluations has been exceeded.\n", " success: False\n", " status: 2\n", - " fun: -75.69448131178467\n", - " x: [ 1.354e+00 9.651e-02 -1.863e-03 1.095e+00 -2.132e-01]\n", + " fun: -75.69430210093412\n", + " x: [ 1.344e+00 8.447e-02 -1.883e-03 1.105e+00 -1.881e-01]\n", " nfev: 100\n", " maxcv: 0.0\n" ] diff --git a/tutorials/06-fermion-operator.html b/tutorials/06-fermion-operator.html index eb9879ea4..0d0b59b92 100644 --- a/tutorials/06-fermion-operator.html +++ b/tutorials/06-fermion-operator.html @@ -78,9 +78,9 @@

The FermionOperator class
 FermionOperator({
+    (cre_a(3), des_a(0)): -0.25,
     (cre_b(1), des_b(5), cre_a(4)): 1+1j,
-    (cre_a(0), des_a(3)): 0.5,
-    (cre_a(3), des_a(0)): -0.25
+    (cre_a(0), des_a(3)): 0.5
 })
 
@@ -99,7 +99,7 @@

The FermionOperator class
-'FermionOperator({((True, True, 1), (False, True, 5), (True, False, 4)): 1+1j, ((True, False, 0), (False, False, 3)): 0.5+0j, ((True, False, 3), (False, False, 0)): -0.25+0j})'
+'FermionOperator({((True, False, 3), (False, False, 0)): -0.25+0j, ((True, True, 1), (False, True, 5), (True, False, 4)): 1+1j, ((True, False, 0), (False, False, 3)): 0.5+0j})'
 

FermionOperators support arithmetic operations. Note that when multiplying a FermionOperator by a scalar, the scalar must go on the left, i.e. 2 * op and not op * 2.

@@ -127,17 +127,17 @@

The FermionOperator class
 FermionOperator({
+    (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625,
+    (cre_b(1), des_b(5), cre_a(4), cre_b(2)): -1+1j,
     (cre_b(1), des_b(5), cre_a(4)): 2+2j,
-    (cre_a(0), des_a(3)): 1,
-    (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -0.25-0.25j,
-    (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,
+    (cre_a(3), des_a(0)): -0.5,
+    (cre_b(2)): 0-0.25j,
     (cre_a(0), des_a(3), cre_b(2)): 0+0.5j,
+    (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -0.25-0.25j,
     (des_a(3), des_b(3)): 0.0625,
-    (cre_a(3), des_a(0)): -0.5,
-    (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625,
     (cre_a(3), des_a(0), cre_b(2)): 0-0.25j,
-    (cre_b(2)): 0-0.25j,
-    (cre_b(1), des_b(5), cre_a(4), cre_b(2)): -1+1j
+    (cre_a(0), des_a(3)): 1,
+    (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125
 })
 
@@ -162,17 +162,17 @@

The FermionOperator class
 FermionOperator({
+    (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j,
+    (cre_b(1), des_b(5), cre_a(4), cre_b(2)): 4+4j,
     (cre_b(1), des_b(5), cre_a(4)): 12-12j,
-    (cre_a(0), des_a(3)): 0-6j,
-    (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -1+1j,
-    (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,
+    (cre_a(3), des_a(0)): 0+3j,
+    (cre_b(2)): -5,
     (cre_a(0), des_a(3), cre_b(2)): 2,
+    (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -1+1j,
     (des_a(3), des_b(3)): 0-1.25j,
-    (cre_a(3), des_a(0)): 0+3j,
-    (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j,
     (cre_a(3), des_a(0), cre_b(2)): -1,
-    (cre_b(2)): -5,
-    (cre_b(1), des_b(5), cre_a(4), cre_b(2)): 4+4j
+    (cre_a(0), des_a(3)): 0-6j,
+    (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j
 })
 
@@ -193,16 +193,16 @@

The FermionOperator class
 FermionOperator({
-    (cre_b(1), cre_a(4), des_b(5)): -12+12j,
-    (cre_b(2)): -5,
+    (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,
+    (des_b(3), des_a(3)): 0+1.25j,
     (cre_b(2), cre_a(3), des_a(0)): -1,
     (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j,
-    (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,
-    (cre_b(2), cre_a(0), des_a(3)): 2,
     (cre_a(0), des_a(3)): 0-6j,
-    (des_b(3), des_a(3)): 0+1.25j,
     (cre_a(3), des_a(0)): 0+3j,
-    (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j
+    (cre_b(2), cre_a(0), des_a(3)): 2,
+    (cre_b(1), cre_a(4), des_b(5)): -12+12j,
+    (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,
+    (cre_b(2)): -5
 })
 
@@ -271,11 +271,11 @@

The FermionOperator class
-array([ 0.        +0.j        ,  0.        +0.j        ,
-        0.        +0.j        ,  0.        +0.j        ,
-       -0.11069268+0.09977553j,  0.        +0.j        ,
-        0.        +0.j        ,  0.        +0.j        ,
-        0.        +0.j        ])
+array([0.        +0.j        , 0.        +0.j        ,
+       0.        +0.j        , 0.        +0.j        ,
+       0.14416721+0.01183319j, 0.        +0.j        ,
+       0.        +0.j        , 0.        +0.j        ,
+       0.        +0.j        ])
 

It can also be passed into most linear algebra routines in scipy.sparse.linalg.

diff --git a/tutorials/06-fermion-operator.ipynb b/tutorials/06-fermion-operator.ipynb index bd91d074e..300ae3e7f 100644 --- a/tutorials/06-fermion-operator.ipynb +++ b/tutorials/06-fermion-operator.ipynb @@ -29,10 +29,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.230891Z", - "iopub.status.busy": "2023-10-25T21:56:46.230482Z", - "iopub.status.idle": "2023-10-25T21:56:46.593704Z", - "shell.execute_reply": "2023-10-25T21:56:46.592852Z" + "iopub.execute_input": "2023-10-25T22:39:40.366920Z", + "iopub.status.busy": "2023-10-25T22:39:40.366331Z", + "iopub.status.idle": "2023-10-25T22:39:40.732340Z", + "shell.execute_reply": "2023-10-25T22:39:40.731690Z" } }, "outputs": [ @@ -40,9 +40,9 @@ "data": { "text/plain": [ "FermionOperator({\n", + " (cre_a(3), des_a(0)): -0.25,\n", " (cre_b(1), des_b(5), cre_a(4)): 1+1j,\n", - " (cre_a(0), des_a(3)): 0.5,\n", - " (cre_a(3), des_a(0)): -0.25\n", + " (cre_a(0), des_a(3)): 0.5\n", "})" ] }, @@ -76,17 +76,17 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.597330Z", - "iopub.status.busy": "2023-10-25T21:56:46.596978Z", - "iopub.status.idle": "2023-10-25T21:56:46.604015Z", - "shell.execute_reply": "2023-10-25T21:56:46.603028Z" + "iopub.execute_input": "2023-10-25T22:39:40.737597Z", + "iopub.status.busy": "2023-10-25T22:39:40.736319Z", + "iopub.status.idle": "2023-10-25T22:39:40.743718Z", + "shell.execute_reply": "2023-10-25T22:39:40.742835Z" } }, "outputs": [ { "data": { "text/plain": [ - "'FermionOperator({((True, True, 1), (False, True, 5), (True, False, 4)): 1+1j, ((True, False, 0), (False, False, 3)): 0.5+0j, ((True, False, 3), (False, False, 0)): -0.25+0j})'" + "'FermionOperator({((True, False, 3), (False, False, 0)): -0.25+0j, ((True, True, 1), (False, True, 5), (True, False, 4)): 1+1j, ((True, False, 0), (False, False, 3)): 0.5+0j})'" ] }, "execution_count": 2, @@ -110,10 +110,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.607682Z", - "iopub.status.busy": "2023-10-25T21:56:46.607460Z", - "iopub.status.idle": "2023-10-25T21:56:46.614940Z", - "shell.execute_reply": "2023-10-25T21:56:46.614327Z" + "iopub.execute_input": "2023-10-25T22:39:40.748237Z", + "iopub.status.busy": "2023-10-25T22:39:40.747115Z", + "iopub.status.idle": "2023-10-25T22:39:40.754695Z", + "shell.execute_reply": "2023-10-25T22:39:40.754158Z" } }, "outputs": [ @@ -121,17 +121,17 @@ "data": { "text/plain": [ "FermionOperator({\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", - " (cre_a(0), des_a(3)): 1,\n", - " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -0.25-0.25j,\n", - " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,\n", + " (cre_a(3), des_a(0)): -0.5,\n", + " (cre_b(2)): 0-0.25j,\n", " (cre_a(0), des_a(3), cre_b(2)): 0+0.5j,\n", + " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -0.25-0.25j,\n", " (des_a(3), des_b(3)): 0.0625,\n", - " (cre_a(3), des_a(0)): -0.5,\n", - " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625,\n", " (cre_a(3), des_a(0), cre_b(2)): 0-0.25j,\n", - " (cre_b(2)): 0-0.25j,\n", - " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): -1+1j\n", + " (cre_a(0), des_a(3)): 1,\n", + " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125\n", "})" ] }, @@ -169,10 +169,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.618541Z", - "iopub.status.busy": "2023-10-25T21:56:46.618310Z", - "iopub.status.idle": "2023-10-25T21:56:46.624843Z", - "shell.execute_reply": "2023-10-25T21:56:46.624168Z" + "iopub.execute_input": "2023-10-25T22:39:40.759235Z", + "iopub.status.busy": "2023-10-25T22:39:40.758153Z", + "iopub.status.idle": "2023-10-25T22:39:40.765084Z", + "shell.execute_reply": "2023-10-25T22:39:40.764539Z" } }, "outputs": [ @@ -180,17 +180,17 @@ "data": { "text/plain": [ "FermionOperator({\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", - " (cre_a(0), des_a(3)): 0-6j,\n", - " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -1+1j,\n", - " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,\n", + " (cre_a(3), des_a(0)): 0+3j,\n", + " (cre_b(2)): -5,\n", " (cre_a(0), des_a(3), cre_b(2)): 2,\n", + " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -1+1j,\n", " (des_a(3), des_b(3)): 0-1.25j,\n", - " (cre_a(3), des_a(0)): 0+3j,\n", - " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j,\n", " (cre_a(3), des_a(0), cre_b(2)): -1,\n", - " (cre_b(2)): -5,\n", - " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): 4+4j\n", + " (cre_a(0), des_a(3)): 0-6j,\n", + " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j\n", "})" ] }, @@ -219,10 +219,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.628819Z", - "iopub.status.busy": "2023-10-25T21:56:46.628590Z", - "iopub.status.idle": "2023-10-25T21:56:46.634834Z", - "shell.execute_reply": "2023-10-25T21:56:46.634045Z" + "iopub.execute_input": "2023-10-25T22:39:40.769541Z", + "iopub.status.busy": "2023-10-25T22:39:40.768482Z", + "iopub.status.idle": "2023-10-25T22:39:40.774962Z", + "shell.execute_reply": "2023-10-25T22:39:40.774400Z" } }, "outputs": [ @@ -230,16 +230,16 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (cre_b(1), cre_a(4), des_b(5)): -12+12j,\n", - " (cre_b(2)): -5,\n", + " (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,\n", + " (des_b(3), des_a(3)): 0+1.25j,\n", " (cre_b(2), cre_a(3), des_a(0)): -1,\n", " (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j,\n", - " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n", - " (cre_b(2), cre_a(0), des_a(3)): 2,\n", " (cre_a(0), des_a(3)): 0-6j,\n", - " (des_b(3), des_a(3)): 0+1.25j,\n", " (cre_a(3), des_a(0)): 0+3j,\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(1), cre_a(4), des_b(5)): -12+12j,\n", + " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n", + " (cre_b(2)): -5\n", "})" ] }, @@ -264,10 +264,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.638995Z", - "iopub.status.busy": "2023-10-25T21:56:46.638794Z", - "iopub.status.idle": "2023-10-25T21:56:46.644017Z", - "shell.execute_reply": "2023-10-25T21:56:46.643220Z" + "iopub.execute_input": "2023-10-25T22:39:40.779369Z", + "iopub.status.busy": "2023-10-25T22:39:40.778283Z", + "iopub.status.idle": "2023-10-25T22:39:40.784339Z", + "shell.execute_reply": "2023-10-25T22:39:40.783767Z" } }, "outputs": [ @@ -297,10 +297,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.649003Z", - "iopub.status.busy": "2023-10-25T21:56:46.648427Z", - "iopub.status.idle": "2023-10-25T21:56:46.655255Z", - "shell.execute_reply": "2023-10-25T21:56:46.654615Z" + "iopub.execute_input": "2023-10-25T22:39:40.789452Z", + "iopub.status.busy": "2023-10-25T22:39:40.788382Z", + "iopub.status.idle": "2023-10-25T22:39:40.795811Z", + "shell.execute_reply": "2023-10-25T22:39:40.795259Z" } }, "outputs": [ @@ -340,21 +340,21 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.658481Z", - "iopub.status.busy": "2023-10-25T21:56:46.658055Z", - "iopub.status.idle": "2023-10-25T21:56:46.668426Z", - "shell.execute_reply": "2023-10-25T21:56:46.667669Z" + "iopub.execute_input": "2023-10-25T22:39:40.800327Z", + "iopub.status.busy": "2023-10-25T22:39:40.799255Z", + "iopub.status.idle": "2023-10-25T22:39:40.808120Z", + "shell.execute_reply": "2023-10-25T22:39:40.807530Z" } }, "outputs": [ { "data": { "text/plain": [ - "array([ 0. +0.j , 0. +0.j ,\n", - " 0. +0.j , 0. +0.j ,\n", - " -0.11069268+0.09977553j, 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.14416721+0.01183319j, 0. +0.j ,\n", + " 0. +0.j , 0. +0.j ,\n", + " 0. +0.j ])" ] }, "execution_count": 8, @@ -379,10 +379,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2023-10-25T21:56:46.673633Z", - "iopub.status.busy": "2023-10-25T21:56:46.672103Z", - "iopub.status.idle": "2023-10-25T21:56:46.689493Z", - "shell.execute_reply": "2023-10-25T21:56:46.688934Z" + "iopub.execute_input": "2023-10-25T22:39:40.812478Z", + "iopub.status.busy": "2023-10-25T22:39:40.811398Z", + "iopub.status.idle": "2023-10-25T22:39:40.826762Z", + "shell.execute_reply": "2023-10-25T22:39:40.826205Z" } }, "outputs": [