diff --git a/.buildinfo b/.buildinfo index 4f605302e..5ca9a4a7f 100644 --- a/.buildinfo +++ b/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: e98ddc2dcab3fc721d4f441489d65b0c +config: e9a5625b3ee718a7a7233d57a3723492 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle index 279ba2224..86359567a 100644 Binary files a/.doctrees/environment.pickle and b/.doctrees/environment.pickle differ diff --git a/.doctrees/nbsphinx/tutorials/01-introduction.ipynb b/.doctrees/nbsphinx/tutorials/01-introduction.ipynb index da461b7a9..367f691d4 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-09-20T01:34:52.136968Z", - "iopub.status.busy": "2023-09-20T01:34:52.136627Z", - "iopub.status.idle": "2023-09-20T01:34:52.429111Z", - "shell.execute_reply": "2023-09-20T01:34:52.428582Z" + "iopub.execute_input": "2023-09-20T17:46:13.131136Z", + "iopub.status.busy": "2023-09-20T17:46:13.130880Z", + "iopub.status.idle": "2023-09-20T17:46:13.438663Z", + "shell.execute_reply": "2023-09-20T17:46:13.438042Z" } }, "outputs": [], @@ -62,10 +62,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:52.432828Z", - "iopub.status.busy": "2023-09-20T01:34:52.431752Z", - "iopub.status.idle": "2023-09-20T01:34:52.436656Z", - "shell.execute_reply": "2023-09-20T01:34:52.436203Z" + "iopub.execute_input": "2023-09-20T17:46:13.442948Z", + "iopub.status.busy": "2023-09-20T17:46:13.442359Z", + "iopub.status.idle": "2023-09-20T17:46:13.447538Z", + "shell.execute_reply": "2023-09-20T17:46:13.447069Z" } }, "outputs": [], @@ -92,10 +92,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:52.440313Z", - "iopub.status.busy": "2023-09-20T01:34:52.439379Z", - "iopub.status.idle": "2023-09-20T01:34:52.443177Z", - "shell.execute_reply": "2023-09-20T01:34:52.442736Z" + "iopub.execute_input": "2023-09-20T17:46:13.451439Z", + "iopub.status.busy": "2023-09-20T17:46:13.450378Z", + "iopub.status.idle": "2023-09-20T17:46:13.454412Z", + "shell.execute_reply": "2023-09-20T17:46:13.453962Z" } }, "outputs": [], diff --git a/.doctrees/nbsphinx/tutorials/02-orbital-rotation.ipynb b/.doctrees/nbsphinx/tutorials/02-orbital-rotation.ipynb index 9453e4632..cb6816d59 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-09-20T01:34:54.037186Z", - "iopub.status.busy": "2023-09-20T01:34:54.036843Z", - "iopub.status.idle": "2023-09-20T01:34:54.310698Z", - "shell.execute_reply": "2023-09-20T01:34:54.310166Z" + "iopub.execute_input": "2023-09-20T17:46:14.977269Z", + "iopub.status.busy": "2023-09-20T17:46:14.977056Z", + "iopub.status.idle": "2023-09-20T17:46:15.284786Z", + "shell.execute_reply": "2023-09-20T17:46:15.284154Z" } }, "outputs": [], @@ -111,10 +111,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:54.314980Z", - "iopub.status.busy": "2023-09-20T01:34:54.313975Z", - "iopub.status.idle": "2023-09-20T01:34:54.338879Z", - "shell.execute_reply": "2023-09-20T01:34:54.338397Z" + "iopub.execute_input": "2023-09-20T17:46:15.289025Z", + "iopub.status.busy": "2023-09-20T17:46:15.287674Z", + "iopub.status.idle": "2023-09-20T17:46:15.314430Z", + "shell.execute_reply": "2023-09-20T17:46:15.313865Z" } }, "outputs": [], @@ -160,10 +160,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:54.342618Z", - "iopub.status.busy": "2023-09-20T01:34:54.341703Z", - "iopub.status.idle": "2023-09-20T01:34:54.353128Z", - "shell.execute_reply": "2023-09-20T01:34:54.352653Z" + "iopub.execute_input": "2023-09-20T17:46:15.318890Z", + "iopub.status.busy": "2023-09-20T17:46:15.317903Z", + "iopub.status.idle": "2023-09-20T17:46:15.329348Z", + "shell.execute_reply": "2023-09-20T17:46:15.328828Z" } }, "outputs": [], @@ -203,10 +203,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:54.357099Z", - "iopub.status.busy": "2023-09-20T01:34:54.355798Z", - "iopub.status.idle": "2023-09-20T01:34:54.361562Z", - "shell.execute_reply": "2023-09-20T01:34:54.361093Z" + "iopub.execute_input": "2023-09-20T17:46:15.333773Z", + "iopub.status.busy": "2023-09-20T17:46:15.332377Z", + "iopub.status.idle": "2023-09-20T17:46:15.338701Z", + "shell.execute_reply": "2023-09-20T17:46:15.338222Z" } }, "outputs": [], diff --git a/.doctrees/nbsphinx/tutorials/03-double-factorized.ipynb b/.doctrees/nbsphinx/tutorials/03-double-factorized.ipynb index 00097a483..99b3e92bf 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-09-20T01:34:55.840954Z", - "iopub.status.busy": "2023-09-20T01:34:55.840563Z", - "iopub.status.idle": "2023-09-20T01:34:56.218443Z", - "shell.execute_reply": "2023-09-20T01:34:56.217867Z" + "iopub.execute_input": "2023-09-20T17:46:17.194975Z", + "iopub.status.busy": "2023-09-20T17:46:17.194538Z", + "iopub.status.idle": "2023-09-20T17:46:17.605270Z", + "shell.execute_reply": "2023-09-20T17:46:17.604710Z" } }, "outputs": [ @@ -93,10 +93,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.222374Z", - "iopub.status.busy": "2023-09-20T01:34:56.221359Z", - "iopub.status.idle": "2023-09-20T01:34:56.228537Z", - "shell.execute_reply": "2023-09-20T01:34:56.228058Z" + "iopub.execute_input": "2023-09-20T17:46:17.622334Z", + "iopub.status.busy": "2023-09-20T17:46:17.621749Z", + "iopub.status.idle": "2023-09-20T17:46:17.628257Z", + "shell.execute_reply": "2023-09-20T17:46:17.627734Z" } }, "outputs": [ @@ -111,44 +111,44 @@ " [-3.07220771e-16 -6.77238770e-01]]\n", "\n", "Two-body tensor:\n", - "[[[[5.23173938e-01 1.94289029e-16]\n", - " [1.94289029e-16 5.33545754e-01]]\n", + "[[[[5.23173938e-01 1.57437591e-16]\n", + " [1.57437591e-16 5.33545754e-01]]\n", "\n", - " [[1.94289029e-16 2.48240570e-01]\n", - " [2.48240570e-01 8.32667268e-17]]]\n", + " [[2.12704463e-16 2.48240570e-01]\n", + " [2.48240570e-01 1.61492903e-16]]]\n", "\n", "\n", - " [[[1.94289029e-16 2.48240570e-01]\n", - " [2.48240570e-01 8.32667268e-17]]\n", + " [[[2.12704463e-16 2.48240570e-01]\n", + " [2.48240570e-01 1.61492903e-16]]\n", "\n", - " [[5.33545754e-01 1.11022302e-16]\n", - " [1.11022302e-16 5.53132024e-01]]]]\n", + " [[5.33545754e-01 1.24884750e-16]\n", + " [1.24884750e-16 5.53132024e-01]]]]\n", "\n", "Double-factorized representation\n", "--------------------------------\n", "One-body tensor:\n", - "[[-1.21318608e+00 -4.05183033e-16]\n", - " [-4.59876437e-16 -1.07792507e+00]]\n", + "[[-1.21318608e+00 -4.25870402e-16]\n", + " [-4.76015378e-16 -1.07792507e+00]]\n", "\n", "Diagonal Coulomb matrices:\n", - "[[[ 5.14653029e-001 5.33545754e-001]\n", - " [ 5.33545754e-001 5.53132024e-001]]\n", + "[[[ 5.14653029e-01 5.33545754e-01]\n", + " [ 5.33545754e-01 5.53132024e-01]]\n", "\n", - " [[ 2.48240570e-001 -2.48240570e-001]\n", - " [-2.48240570e-001 2.48240570e-001]]\n", + " [[ 2.48240570e-01 -2.48240570e-01]\n", + " [-2.48240570e-01 2.48240570e-01]]\n", "\n", - " [[ 5.96958401e-121 -7.13206008e-062]\n", - " [-7.13206008e-062 8.52090881e-003]]]\n", + " [[ 1.50800163e-59 -3.58462611e-31]\n", + " [-3.58462611e-31 8.52090881e-03]]]\n", "\n", "Orbital rotations:\n", - "[[[-1.00000000e+00 4.25128053e-15]\n", - " [ 4.25128053e-15 1.00000000e+00]]\n", + "[[[-1.00000000e+00 8.24520980e-15]\n", + " [ 8.24520980e-15 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", - " [[ 2.89310728e-30 -1.00000000e+00]\n", - " [-1.00000000e+00 -2.89310728e-30]]]\n" + " [[ 6.48603030e-15 -1.00000000e+00]\n", + " [-1.00000000e+00 -6.48603030e-15]]]\n" ] } ], @@ -227,10 +227,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.231096Z", - "iopub.status.busy": "2023-09-20T01:34:56.230741Z", - "iopub.status.idle": "2023-09-20T01:34:56.235201Z", - "shell.execute_reply": "2023-09-20T01:34:56.234751Z" + "iopub.execute_input": "2023-09-20T17:46:17.631023Z", + "iopub.status.busy": "2023-09-20T17:46:17.630464Z", + "iopub.status.idle": "2023-09-20T17:46:17.635183Z", + "shell.execute_reply": "2023-09-20T17:46:17.634736Z" } }, "outputs": [], @@ -285,10 +285,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.237589Z", - "iopub.status.busy": "2023-09-20T01:34:56.237231Z", - "iopub.status.idle": "2023-09-20T01:34:56.240867Z", - "shell.execute_reply": "2023-09-20T01:34:56.240424Z" + "iopub.execute_input": "2023-09-20T17:46:17.637670Z", + "iopub.status.busy": "2023-09-20T17:46:17.637308Z", + "iopub.status.idle": "2023-09-20T17:46:17.641139Z", + "shell.execute_reply": "2023-09-20T17:46:17.640680Z" } }, "outputs": [], @@ -325,10 +325,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.243205Z", - "iopub.status.busy": "2023-09-20T01:34:56.242855Z", - "iopub.status.idle": "2023-09-20T01:34:56.247340Z", - "shell.execute_reply": "2023-09-20T01:34:56.246908Z" + "iopub.execute_input": "2023-09-20T17:46:17.643737Z", + "iopub.status.busy": "2023-09-20T17:46:17.643196Z", + "iopub.status.idle": "2023-09-20T17:46:17.647995Z", + "shell.execute_reply": "2023-09-20T17:46:17.647549Z" } }, "outputs": [ @@ -336,7 +336,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Hartree Fock energy: -0.837796382593709\n" + "Hartree Fock energy: -0.8377963825937088\n" ] } ], @@ -367,10 +367,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.249736Z", - "iopub.status.busy": "2023-09-20T01:34:56.249390Z", - "iopub.status.idle": "2023-09-20T01:34:56.258321Z", - "shell.execute_reply": "2023-09-20T01:34:56.257831Z" + "iopub.execute_input": "2023-09-20T17:46:17.650603Z", + "iopub.status.busy": "2023-09-20T17:46:17.650030Z", + "iopub.status.idle": "2023-09-20T17:46:17.662198Z", + "shell.execute_reply": "2023-09-20T17:46:17.661755Z" } }, "outputs": [ @@ -409,10 +409,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.260674Z", - "iopub.status.busy": "2023-09-20T01:34:56.260322Z", - "iopub.status.idle": "2023-09-20T01:34:56.267335Z", - "shell.execute_reply": "2023-09-20T01:34:56.266865Z" + "iopub.execute_input": "2023-09-20T17:46:17.664757Z", + "iopub.status.busy": "2023-09-20T17:46:17.664216Z", + "iopub.status.idle": "2023-09-20T17:46:17.671931Z", + "shell.execute_reply": "2023-09-20T17:46:17.671466Z" } }, "outputs": [ @@ -420,7 +420,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.999027574408349\n" ] } ], @@ -450,10 +450,10 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.269551Z", - "iopub.status.busy": "2023-09-20T01:34:56.269374Z", - "iopub.status.idle": "2023-09-20T01:34:56.303345Z", - "shell.execute_reply": "2023-09-20T01:34:56.302913Z" + "iopub.execute_input": "2023-09-20T17:46:17.674637Z", + "iopub.status.busy": "2023-09-20T17:46:17.674119Z", + "iopub.status.idle": "2023-09-20T17:46:17.715452Z", + "shell.execute_reply": "2023-09-20T17:46:17.714903Z" } }, "outputs": [ @@ -461,7 +461,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9999906233109653\n" + "Fidelity of Trotter-evolved state with exact state: 0.9999906233109657\n" ] } ], @@ -493,10 +493,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.305778Z", - "iopub.status.busy": "2023-09-20T01:34:56.305495Z", - "iopub.status.idle": "2023-09-20T01:34:56.333099Z", - "shell.execute_reply": "2023-09-20T01:34:56.332671Z" + "iopub.execute_input": "2023-09-20T17:46:17.718205Z", + "iopub.status.busy": "2023-09-20T17:46:17.717998Z", + "iopub.status.idle": "2023-09-20T17:46:17.752827Z", + "shell.execute_reply": "2023-09-20T17:46:17.752049Z" } }, "outputs": [ @@ -504,7 +504,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9999906233109653\n" + "Fidelity of Trotter-evolved state with exact state: 0.9999906233109657\n" ] } ], @@ -535,10 +535,10 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.336145Z", - "iopub.status.busy": "2023-09-20T01:34:56.335857Z", - "iopub.status.idle": "2023-09-20T01:34:56.347760Z", - "shell.execute_reply": "2023-09-20T01:34:56.347303Z" + "iopub.execute_input": "2023-09-20T17:46:17.755461Z", + "iopub.status.busy": "2023-09-20T17:46:17.755203Z", + "iopub.status.idle": "2023-09-20T17:46:17.770614Z", + "shell.execute_reply": "2023-09-20T17:46:17.769998Z" } }, "outputs": [ @@ -546,7 +546,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9999999336740059\n" + "Fidelity of Trotter-evolved state with exact state: 0.9999999336740057\n" ] } ], diff --git a/.doctrees/nbsphinx/tutorials/04-lucj.ipynb b/.doctrees/nbsphinx/tutorials/04-lucj.ipynb index f73758980..4a2ae017f 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-09-20T01:34:58.213087Z", - "iopub.status.busy": "2023-09-20T01:34:58.212754Z", - "iopub.status.idle": "2023-09-20T01:34:58.559605Z", - "shell.execute_reply": "2023-09-20T01:34:58.559099Z" + "iopub.execute_input": "2023-09-20T17:46:19.990857Z", + "iopub.status.busy": "2023-09-20T17:46:19.990518Z", + "iopub.status.idle": "2023-09-20T17:46:20.385048Z", + "shell.execute_reply": "2023-09-20T17:46:20.384351Z" } }, "outputs": [ @@ -80,10 +80,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:58.563775Z", - "iopub.status.busy": "2023-09-20T01:34:58.562763Z", - "iopub.status.idle": "2023-09-20T01:34:58.718229Z", - "shell.execute_reply": "2023-09-20T01:34:58.717692Z" + "iopub.execute_input": "2023-09-20T17:46:20.388608Z", + "iopub.status.busy": "2023-09-20T17:46:20.387961Z", + "iopub.status.idle": "2023-09-20T17:46:20.499044Z", + "shell.execute_reply": "2023-09-20T17:46:20.498416Z" } }, "outputs": [ @@ -91,14 +91,14 @@ "name": "stdout", "output_type": "stream", "text": [ - "E(CCSD) = -0.970773076716434 E_corr = -0.1329766941227252\n" + "E(CCSD) = -0.9707730767164341 E_corr = -0.1329766941227253\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Energy at initialialization: -0.9696246123746335\n" + "Energy at initialialization: -0.9696246123746332\n" ] } ], @@ -145,10 +145,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:58.723326Z", - "iopub.status.busy": "2023-09-20T01:34:58.723122Z", - "iopub.status.idle": "2023-09-20T01:34:58.867773Z", - "shell.execute_reply": "2023-09-20T01:34:58.867282Z" + "iopub.execute_input": "2023-09-20T17:46:20.502690Z", + "iopub.status.busy": "2023-09-20T17:46:20.502471Z", + "iopub.status.idle": "2023-09-20T17:46:20.630373Z", + "shell.execute_reply": "2023-09-20T17:46:20.629777Z" } }, "outputs": [ @@ -160,15 +160,15 @@ " message: Optimization terminated successfully.\n", " success: True\n", " status: 0\n", - " fun: -0.970773075391498\n", + " fun: -0.9707730753913614\n", " x: [-2.678e-01 2.678e-01 ... -1.970e+00 -1.970e+00]\n", " nit: 2\n", - " jac: [-5.960e-08 0.000e+00 ... -2.980e-08 -1.490e-07]\n", - " hess_inv: [[ 1.000e+00 0.000e+00 ... 1.364e-12 -2.206e-13]\n", + " jac: [ 1.490e-08 0.000e+00 ... 9.686e-08 -1.714e-07]\n", + " hess_inv: [[ 1.000e+00 0.000e+00 ... 4.080e-13 -3.192e-13]\n", " [ 0.000e+00 1.000e+00 ... 0.000e+00 0.000e+00]\n", " ...\n", - " [ 1.364e-12 0.000e+00 ... 1.000e+00 1.818e-12]\n", - " [-2.206e-13 0.000e+00 ... 1.818e-12 1.000e+00]]\n", + " [ 4.080e-13 0.000e+00 ... 1.000e+00 -2.505e-12]\n", + " [-3.192e-13 0.000e+00 ... -2.505e-12 1.000e+00]]\n", " nfev: 63\n", " njev: 3\n" ] @@ -222,10 +222,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:58.870553Z", - "iopub.status.busy": "2023-09-20T01:34:58.870226Z", - "iopub.status.idle": "2023-09-20T01:34:59.038955Z", - "shell.execute_reply": "2023-09-20T01:34:59.038479Z" + "iopub.execute_input": "2023-09-20T17:46:20.633922Z", + "iopub.status.busy": "2023-09-20T17:46:20.633704Z", + "iopub.status.idle": "2023-09-20T17:46:20.779854Z", + "shell.execute_reply": "2023-09-20T17:46:20.779264Z" } }, "outputs": [ @@ -237,15 +237,15 @@ " message: Optimization terminated successfully.\n", " success: True\n", " status: 0\n", - " fun: -0.9707730754179825\n", + " fun: -0.9707730754179815\n", " x: [ 2.678e-01 -2.678e-01 ... -1.970e+00 -1.970e+00]\n", " nit: 4\n", - " jac: [ 0.000e+00 0.000e+00 ... 8.196e-08 -7.451e-08]\n", + " jac: [ 0.000e+00 0.000e+00 ... -4.470e-08 -2.980e-08]\n", " hess_inv: [[ 1.000e+00 0.000e+00 ... 0.000e+00 0.000e+00]\n", " [ 0.000e+00 1.000e+00 ... 0.000e+00 0.000e+00]\n", " ...\n", - " [ 0.000e+00 0.000e+00 ... 1.000e+00 2.029e-10]\n", - " [ 0.000e+00 0.000e+00 ... 2.029e-10 1.000e+00]]\n", + " [ 0.000e+00 0.000e+00 ... 1.000e+00 -6.132e-10]\n", + " [ 0.000e+00 0.000e+00 ... -6.132e-10 1.000e+00]]\n", " nfev: 75\n", " njev: 5\n" ] diff --git a/.doctrees/tutorials/03-double-factorized.doctree b/.doctrees/tutorials/03-double-factorized.doctree index f54f0264c..09a268958 100644 Binary files a/.doctrees/tutorials/03-double-factorized.doctree and b/.doctrees/tutorials/03-double-factorized.doctree differ diff --git a/.doctrees/tutorials/04-lucj.doctree b/.doctrees/tutorials/04-lucj.doctree index 66221ca8f..34d6b2460 100644 Binary files a/.doctrees/tutorials/04-lucj.doctree and b/.doctrees/tutorials/04-lucj.doctree differ diff --git a/_modules/ffsim/contract/diag_coulomb.html b/_modules/ffsim/contract/diag_coulomb.html index c7570e367..c31b2b3f4 100644 --- a/_modules/ffsim/contract/diag_coulomb.html +++ b/_modules/ffsim/contract/diag_coulomb.html @@ -4,12 +4,12 @@ - ffsim.contract.diag_coulomb — ffsim 0.0.5 documentation + ffsim.contract.diag_coulomb — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/contract/hamiltonian.html b/_modules/ffsim/contract/hamiltonian.html index 9c81b0dc4..aa6f53cb0 100644 --- a/_modules/ffsim/contract/hamiltonian.html +++ b/_modules/ffsim/contract/hamiltonian.html @@ -4,12 +4,12 @@ - ffsim.contract.hamiltonian — ffsim 0.0.5 documentation + ffsim.contract.hamiltonian — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/contract/num_op_sum.html b/_modules/ffsim/contract/num_op_sum.html index c47f6cf4c..306137654 100644 --- a/_modules/ffsim/contract/num_op_sum.html +++ b/_modules/ffsim/contract/num_op_sum.html @@ -4,12 +4,12 @@ - ffsim.contract.num_op_sum — ffsim 0.0.5 documentation + ffsim.contract.num_op_sum — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/gates/diag_coulomb.html b/_modules/ffsim/gates/diag_coulomb.html index 43a948cc8..4f850f893 100644 --- a/_modules/ffsim/gates/diag_coulomb.html +++ b/_modules/ffsim/gates/diag_coulomb.html @@ -4,12 +4,12 @@ - ffsim.gates.diag_coulomb — ffsim 0.0.5 documentation + ffsim.gates.diag_coulomb — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/gates/gates.html b/_modules/ffsim/gates/gates.html index d5cec41a1..d54cf1c9a 100644 --- a/_modules/ffsim/gates/gates.html +++ b/_modules/ffsim/gates/gates.html @@ -4,12 +4,12 @@ - ffsim.gates.gates — ffsim 0.0.5 documentation + ffsim.gates.gates — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/gates/num_op_sum.html b/_modules/ffsim/gates/num_op_sum.html index 5735fba94..e6dd30d92 100644 --- a/_modules/ffsim/gates/num_op_sum.html +++ b/_modules/ffsim/gates/num_op_sum.html @@ -4,12 +4,12 @@ - ffsim.gates.num_op_sum — ffsim 0.0.5 documentation + ffsim.gates.num_op_sum — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/gates/orbital_rotation.html b/_modules/ffsim/gates/orbital_rotation.html index 80c941f94..39df90bb4 100644 --- a/_modules/ffsim/gates/orbital_rotation.html +++ b/_modules/ffsim/gates/orbital_rotation.html @@ -4,12 +4,12 @@ - ffsim.gates.orbital_rotation — ffsim 0.0.5 documentation + ffsim.gates.orbital_rotation — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/hamiltonians/double_factorized_hamiltonian.html b/_modules/ffsim/hamiltonians/double_factorized_hamiltonian.html index 49b47b7b1..4e612354a 100644 --- a/_modules/ffsim/hamiltonians/double_factorized_hamiltonian.html +++ b/_modules/ffsim/hamiltonians/double_factorized_hamiltonian.html @@ -4,12 +4,12 @@ - ffsim.hamiltonians.double_factorized_hamiltonian — ffsim 0.0.5 documentation + ffsim.hamiltonians.double_factorized_hamiltonian — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/hamiltonians/molecular_hamiltonian.html b/_modules/ffsim/hamiltonians/molecular_hamiltonian.html index 9d117fe24..38ba4541e 100644 --- a/_modules/ffsim/hamiltonians/molecular_hamiltonian.html +++ b/_modules/ffsim/hamiltonians/molecular_hamiltonian.html @@ -4,12 +4,12 @@ - ffsim.hamiltonians.molecular_hamiltonian — ffsim 0.0.5 documentation + ffsim.hamiltonians.molecular_hamiltonian — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/linalg/double_factorized.html b/_modules/ffsim/linalg/double_factorized.html index 97ccac904..4b574a0c7 100644 --- a/_modules/ffsim/linalg/double_factorized.html +++ b/_modules/ffsim/linalg/double_factorized.html @@ -4,12 +4,12 @@ - ffsim.linalg.double_factorized — ffsim 0.0.5 documentation + ffsim.linalg.double_factorized — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/linalg/givens.html b/_modules/ffsim/linalg/givens.html index e7130d95c..7cfdbecfc 100644 --- a/_modules/ffsim/linalg/givens.html +++ b/_modules/ffsim/linalg/givens.html @@ -4,12 +4,12 @@ - ffsim.linalg.givens — ffsim 0.0.5 documentation + ffsim.linalg.givens — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/linalg/linalg.html b/_modules/ffsim/linalg/linalg.html index c32ff5671..a5bd21fb8 100644 --- a/_modules/ffsim/linalg/linalg.html +++ b/_modules/ffsim/linalg/linalg.html @@ -4,12 +4,12 @@ - ffsim.linalg.linalg — ffsim 0.0.5 documentation + ffsim.linalg.linalg — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/linalg/predicates.html b/_modules/ffsim/linalg/predicates.html index e388ba40f..d259b1dfe 100644 --- a/_modules/ffsim/linalg/predicates.html +++ b/_modules/ffsim/linalg/predicates.html @@ -4,12 +4,12 @@ - ffsim.linalg.predicates — ffsim 0.0.5 documentation + ffsim.linalg.predicates — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/molecular_data.html b/_modules/ffsim/molecular_data.html index d3dbe91ad..4ff8655eb 100644 --- a/_modules/ffsim/molecular_data.html +++ b/_modules/ffsim/molecular_data.html @@ -4,12 +4,12 @@ - ffsim.molecular_data — ffsim 0.0.5 documentation + ffsim.molecular_data — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/protocols/linear_operator.html b/_modules/ffsim/protocols/linear_operator.html index be37f9964..6f16cc4ea 100644 --- a/_modules/ffsim/protocols/linear_operator.html +++ b/_modules/ffsim/protocols/linear_operator.html @@ -4,12 +4,12 @@ - ffsim.protocols.linear_operator — ffsim 0.0.5 documentation + ffsim.protocols.linear_operator — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/protocols/trace.html b/_modules/ffsim/protocols/trace.html index 93a33da69..ec66e9cc8 100644 --- a/_modules/ffsim/protocols/trace.html +++ b/_modules/ffsim/protocols/trace.html @@ -4,12 +4,12 @@ - ffsim.protocols.trace — ffsim 0.0.5 documentation + ffsim.protocols.trace — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/random.html b/_modules/ffsim/random.html index 7cd057822..3575882d6 100644 --- a/_modules/ffsim/random.html +++ b/_modules/ffsim/random.html @@ -4,12 +4,12 @@ - ffsim.random — ffsim 0.0.5 documentation + ffsim.random — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/slow/gates/diag_coulomb.html b/_modules/ffsim/slow/gates/diag_coulomb.html index a1e99e120..fde73407e 100644 --- a/_modules/ffsim/slow/gates/diag_coulomb.html +++ b/_modules/ffsim/slow/gates/diag_coulomb.html @@ -4,12 +4,12 @@ - ffsim.slow.gates.diag_coulomb — ffsim 0.0.5 documentation + ffsim.slow.gates.diag_coulomb — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/slow/gates/num_op_sum.html b/_modules/ffsim/slow/gates/num_op_sum.html index a2df376f7..8d5dafd0d 100644 --- a/_modules/ffsim/slow/gates/num_op_sum.html +++ b/_modules/ffsim/slow/gates/num_op_sum.html @@ -4,12 +4,12 @@ - ffsim.slow.gates.num_op_sum — ffsim 0.0.5 documentation + ffsim.slow.gates.num_op_sum — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/slow/gates/orbital_rotation.html b/_modules/ffsim/slow/gates/orbital_rotation.html index 95f9295aa..1519f2a7d 100644 --- a/_modules/ffsim/slow/gates/orbital_rotation.html +++ b/_modules/ffsim/slow/gates/orbital_rotation.html @@ -4,12 +4,12 @@ - ffsim.slow.gates.orbital_rotation — ffsim 0.0.5 documentation + ffsim.slow.gates.orbital_rotation — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/states.html b/_modules/ffsim/states.html index a3f7f0226..968496d61 100644 --- a/_modules/ffsim/states.html +++ b/_modules/ffsim/states.html @@ -4,12 +4,12 @@ - ffsim.states — ffsim 0.0.5 documentation + ffsim.states — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/testing.html b/_modules/ffsim/testing.html index 5f0b82a5b..06e709684 100644 --- a/_modules/ffsim/testing.html +++ b/_modules/ffsim/testing.html @@ -4,12 +4,12 @@ - ffsim.testing — ffsim 0.0.5 documentation + ffsim.testing — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/trotter/qdrift.html b/_modules/ffsim/trotter/qdrift.html index 6cd3c6024..e88fdb897 100644 --- a/_modules/ffsim/trotter/qdrift.html +++ b/_modules/ffsim/trotter/qdrift.html @@ -4,12 +4,12 @@ - ffsim.trotter.qdrift — ffsim 0.0.5 documentation + ffsim.trotter.qdrift — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/trotter/trotter.html b/_modules/ffsim/trotter/trotter.html index 0cb786121..503c30c29 100644 --- a/_modules/ffsim/trotter/trotter.html +++ b/_modules/ffsim/trotter/trotter.html @@ -4,12 +4,12 @@ - ffsim.trotter.trotter — ffsim 0.0.5 documentation + ffsim.trotter.trotter — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/variational/lucj.html b/_modules/ffsim/variational/lucj.html index dac096a80..7f41d4aa9 100644 --- a/_modules/ffsim/variational/lucj.html +++ b/_modules/ffsim/variational/lucj.html @@ -4,12 +4,12 @@ - ffsim.variational.lucj — ffsim 0.0.5 documentation + ffsim.variational.lucj — ffsim 0.0.6 documentation - + diff --git a/_modules/ffsim/wick.html b/_modules/ffsim/wick.html index f8b03a625..fc08cdfc1 100644 --- a/_modules/ffsim/wick.html +++ b/_modules/ffsim/wick.html @@ -4,12 +4,12 @@ - ffsim.wick — ffsim 0.0.5 documentation + ffsim.wick — ffsim 0.0.6 documentation - + diff --git a/_modules/index.html b/_modules/index.html index d6acb783d..b0787969e 100644 --- a/_modules/index.html +++ b/_modules/index.html @@ -4,12 +4,12 @@ - Overview: module code — ffsim 0.0.5 documentation + Overview: module code — ffsim 0.0.6 documentation - + diff --git a/_static/documentation_options.js b/_static/documentation_options.js index 9c6d3573f..a8a18f581 100644 --- a/_static/documentation_options.js +++ b/_static/documentation_options.js @@ -1,5 +1,5 @@ const DOCUMENTATION_OPTIONS = { - VERSION: '0.0.5', + VERSION: '0.0.6', LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/api/generated/ffsim.contract.html b/api/generated/ffsim.contract.html index aa58e9588..5f07710b2 100644 --- a/api/generated/ffsim.contract.html +++ b/api/generated/ffsim.contract.html @@ -5,12 +5,12 @@ - ffsim.contract package — ffsim 0.0.5 documentation + ffsim.contract package — ffsim 0.0.6 documentation - + diff --git a/api/generated/ffsim.gates.html b/api/generated/ffsim.gates.html index 75add910a..bca4bc504 100644 --- a/api/generated/ffsim.gates.html +++ b/api/generated/ffsim.gates.html @@ -5,12 +5,12 @@ - ffsim.gates package — ffsim 0.0.5 documentation + ffsim.gates package — ffsim 0.0.6 documentation - + diff --git a/api/generated/ffsim.hamiltonians.html b/api/generated/ffsim.hamiltonians.html index 0f5bb32e6..e8acabbe2 100644 --- a/api/generated/ffsim.hamiltonians.html +++ b/api/generated/ffsim.hamiltonians.html @@ -5,12 +5,12 @@ - ffsim.hamiltonians package — ffsim 0.0.5 documentation + ffsim.hamiltonians package — ffsim 0.0.6 documentation - + diff --git a/api/generated/ffsim.html b/api/generated/ffsim.html index 3e92c73af..7885b0d05 100644 --- a/api/generated/ffsim.html +++ b/api/generated/ffsim.html @@ -5,12 +5,12 @@ - ffsim package — ffsim 0.0.5 documentation + ffsim package — ffsim 0.0.6 documentation - + diff --git a/api/generated/ffsim.linalg.html b/api/generated/ffsim.linalg.html index 283b62a13..f220ce0b9 100644 --- a/api/generated/ffsim.linalg.html +++ b/api/generated/ffsim.linalg.html @@ -5,12 +5,12 @@ - ffsim.linalg package — ffsim 0.0.5 documentation + ffsim.linalg package — ffsim 0.0.6 documentation - + diff --git a/api/generated/ffsim.protocols.html b/api/generated/ffsim.protocols.html index a7fb22205..a2b6431d9 100644 --- a/api/generated/ffsim.protocols.html +++ b/api/generated/ffsim.protocols.html @@ -5,12 +5,12 @@ - ffsim.protocols package — ffsim 0.0.5 documentation + ffsim.protocols package — ffsim 0.0.6 documentation - + diff --git a/api/generated/ffsim.slow.contract.html b/api/generated/ffsim.slow.contract.html index 4608e1eb3..744feafb0 100644 --- a/api/generated/ffsim.slow.contract.html +++ b/api/generated/ffsim.slow.contract.html @@ -5,12 +5,12 @@ - ffsim.slow.contract package — ffsim 0.0.5 documentation + ffsim.slow.contract package — ffsim 0.0.6 documentation - + diff --git a/api/generated/ffsim.slow.gates.html b/api/generated/ffsim.slow.gates.html index c66bd0177..5b7eb6237 100644 --- a/api/generated/ffsim.slow.gates.html +++ b/api/generated/ffsim.slow.gates.html @@ -5,12 +5,12 @@ - ffsim.slow.gates package — ffsim 0.0.5 documentation + ffsim.slow.gates package — ffsim 0.0.6 documentation - + diff --git a/api/generated/ffsim.slow.html b/api/generated/ffsim.slow.html index 1f7e25773..9c2c26ca4 100644 --- a/api/generated/ffsim.slow.html +++ b/api/generated/ffsim.slow.html @@ -5,12 +5,12 @@ - ffsim.slow package — ffsim 0.0.5 documentation + ffsim.slow package — ffsim 0.0.6 documentation - + diff --git a/api/generated/ffsim.trotter.html b/api/generated/ffsim.trotter.html index 98b4a75c2..d2cebbbb1 100644 --- a/api/generated/ffsim.trotter.html +++ b/api/generated/ffsim.trotter.html @@ -5,12 +5,12 @@ - ffsim.trotter package — ffsim 0.0.5 documentation + ffsim.trotter package — ffsim 0.0.6 documentation - + diff --git a/api/generated/ffsim.variational.html b/api/generated/ffsim.variational.html index b25b71318..d42f264b2 100644 --- a/api/generated/ffsim.variational.html +++ b/api/generated/ffsim.variational.html @@ -5,12 +5,12 @@ - ffsim.variational package — ffsim 0.0.5 documentation + ffsim.variational package — ffsim 0.0.6 documentation - + diff --git a/api/generated/modules.html b/api/generated/modules.html index f959d21e1..eb3622d20 100644 --- a/api/generated/modules.html +++ b/api/generated/modules.html @@ -5,12 +5,12 @@ - ffsim — ffsim 0.0.5 documentation + ffsim — ffsim 0.0.6 documentation - + diff --git a/api/index.html b/api/index.html index 73640364d..d4b54f545 100644 --- a/api/index.html +++ b/api/index.html @@ -5,12 +5,12 @@ - API reference — ffsim 0.0.5 documentation + API reference — ffsim 0.0.6 documentation - + diff --git a/genindex.html b/genindex.html index a297cfb2f..d36dd496e 100644 --- a/genindex.html +++ b/genindex.html @@ -4,12 +4,12 @@ - Index — ffsim 0.0.5 documentation + Index — ffsim 0.0.6 documentation - + diff --git a/index.html b/index.html index 0a7001996..d76e73ed4 100644 --- a/index.html +++ b/index.html @@ -5,12 +5,12 @@ - ffsim documentation — ffsim 0.0.5 documentation + ffsim documentation — ffsim 0.0.6 documentation - + diff --git a/py-modindex.html b/py-modindex.html index 539a02229..83738e11e 100644 --- a/py-modindex.html +++ b/py-modindex.html @@ -4,12 +4,12 @@ - Python Module Index — ffsim 0.0.5 documentation + Python Module Index — ffsim 0.0.6 documentation - + diff --git a/search.html b/search.html index 539a2e4eb..30d9d11c4 100644 --- a/search.html +++ b/search.html @@ -4,13 +4,13 @@ - Search — ffsim 0.0.5 documentation + Search — ffsim 0.0.6 documentation - + diff --git a/searchindex.js b/searchindex.js index 72607e6b5..91e4e7a3b 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["api/generated/ffsim", "api/generated/ffsim.contract", "api/generated/ffsim.gates", "api/generated/ffsim.hamiltonians", "api/generated/ffsim.linalg", "api/generated/ffsim.protocols", "api/generated/ffsim.slow", "api/generated/ffsim.slow.contract", "api/generated/ffsim.slow.gates", "api/generated/ffsim.trotter", "api/generated/ffsim.variational", "api/generated/modules", "api/index", "index", "tutorials/01-introduction", "tutorials/02-orbital-rotation", "tutorials/03-double-factorized", "tutorials/04-lucj", "tutorials/index"], "filenames": ["api/generated/ffsim.rst", "api/generated/ffsim.contract.rst", "api/generated/ffsim.gates.rst", "api/generated/ffsim.hamiltonians.rst", "api/generated/ffsim.linalg.rst", "api/generated/ffsim.protocols.rst", "api/generated/ffsim.slow.rst", "api/generated/ffsim.slow.contract.rst", "api/generated/ffsim.slow.gates.rst", "api/generated/ffsim.trotter.rst", "api/generated/ffsim.variational.rst", "api/generated/modules.rst", "api/index.rst", "index.rst", "tutorials/01-introduction.ipynb", "tutorials/02-orbital-rotation.ipynb", "tutorials/03-double-factorized.ipynb", "tutorials/04-lucj.ipynb", "tutorials/index.rst"], "titles": ["ffsim package", "ffsim.contract package", "ffsim.gates package", "ffsim.hamiltonians package", "ffsim.linalg package", "ffsim.protocols package", "ffsim.slow package", "ffsim.slow.contract package", "ffsim.slow.gates package", "ffsim.trotter package", "ffsim.variational package", "ffsim", "API reference", "ffsim documentation", "Introduction to ffsim", "Orbital rotations and quadratic Hamiltonians", "Diagonal Coulomb operators and double-factorized Trotter simulation", "The local unitary cluster Jastrow (LUCJ) ansatz", "Tutorials"], "terms": {"contract": [0, 6, 11, 12, 15], "diag_coulomb": [0, 6, 11], "contract_diag_coulomb": [0, 1], "diag_coulomb_linop": [0, 1], "hamiltonian": [0, 9, 11, 12, 17, 18], "hamiltonian_linop": [0, 1, 15], "hamiltonian_trac": [0, 1], "num_op_sum": [0, 6, 11], "contract_num_op_sum": [0, 1], "num_op_sum_linop": [0, 1], "gate": [0, 6, 11, 12, 17], "apply_diag_coulomb_evolut": [0, 2, 16], "apply_givens_rot": [0, 2], "apply_num_interact": [0, 2], "apply_num_op_prod_interact": [0, 2], "apply_tunneling_interact": [0, 2], "apply_num_op_sum_evolut": [0, 2, 15, 16], "orbital_rot": [0, 1, 3, 4, 6, 9, 10, 11, 14, 15, 16], "apply_orbital_rot": [0, 2, 14, 15], "gen_orbital_rotation_index": [0, 2], "double_factorized_hamiltonian": [0, 11, 16], "doublefactorizedhamiltonian": [0, 3, 9, 16], "one_body_tensor": [0, 1, 3, 9, 15, 16], "diag_coulomb_mat": [0, 3, 9, 16], "constant": [0, 1, 3, 16, 17], "z_represent": [0, 1, 2, 3, 9], "norb": [0, 1, 2, 3, 5, 8, 9, 10, 14, 15, 16, 17], "to_number_represent": [0, 3], "to_z_represent": [0, 3], "molecular_hamiltonian": [0, 11], "molecularhamiltonian": [0, 3], "two_body_tensor": [0, 1, 3, 4, 16], "linalg": [0, 11, 12, 15, 16], "double_factor": [0, 11], "double_factorized_t2": [0, 4], "modified_choleski": [0, 4], "optimal_diag_coulomb_mat": [0, 4], "given": [0, 1, 2, 8, 9, 11, 15, 16], "apply_matrix_to_slic": [0, 4], "givens_decomposit": [0, 4], "givens_matrix": [0, 4], "expm_multiply_taylor": [0, 4], "lup": [0, 4], "predic": [0, 11], "is_antihermitian": [0, 4], "is_hermitian": [0, 4], "is_orthogon": [0, 4], "is_real_symmetr": [0, 4], "is_special_orthogon": [0, 4], "is_unitari": [0, 4], "protocol": [0, 11, 12], "linear_oper": [0, 11, 16, 17], "supportslinearoper": [0, 5], "trace": [0, 1, 11, 16], "supportstrac": [0, 5], "slow": [0, 11, 12], "trotter": [0, 11, 12, 18], "qdrift": [0, 11], "expectation_squared_diag_coulomb": [0, 9], "one_body_square_decomposit": [0, 9], "qdrift_prob": [0, 9], "simulate_qdrift_double_factor": [0, 9], "spectral_norm_diag_coulomb": [0, 9], "spectral_norm_one_body_tensor": [0, 9], "variance_diag_coulomb": [0, 9], "variance_one_body_tensor": [0, 9], "simulate_trotter_double_factor": [0, 9, 16], "variat": [0, 11, 12, 17], "lucj": [0, 11, 18], "ucjoper": [0, 10, 17], "diag_coulomb_mats_alpha_alpha": [0, 10], "diag_coulomb_mats_alpha_beta": [0, 10], "final_orbital_rot": [0, 10], "from_paramet": [0, 10, 17], "from_t_amplitud": [0, 10, 17], "n_rep": [0, 10, 17], "to_paramet": [0, 10, 17], "to_t_amplitud": [0, 10], "apply_ucj_oper": [0, 10, 17], "class": [0, 3, 5, 10, 14, 17], "moleculardata": [0, 11, 12, 16, 17], "nelec": [0, 1, 2, 5, 8, 9, 10, 14, 15, 16, 17], "core_energi": 0, "dipole_integr": 0, "none": [0, 1, 2, 3, 4, 8, 9, 10], "orbital_symmetri": 0, "sourc": [0, 1, 2, 3, 4, 5, 8, 9, 10], "base": [0, 3, 4, 5, 10], "object": [0, 3, 4, 5, 10, 16, 17], "random_antihermitian": [0, 11, 12], "dim": [0, 9, 11, 12, 14], "seed": [0, 9, 14, 15], "dtype": 0, "complex": [0, 4], "return": [0, 1, 2, 3, 4, 5, 8, 9, 10, 16, 17], "anti": [0, 4], "hermitian": [0, 4, 15], "matrix": [0, 1, 2, 3, 4, 9, 14, 15, 16, 17], "paramet": [0, 1, 2, 3, 4, 9, 10, 17], "int": [0, 1, 2, 3, 4, 9, 10, 16], "The": [0, 1, 2, 3, 4, 9, 10, 14, 15, 16, 18], "width": 0, "height": 0, "rank": [0, 3, 4], "If": [0, 1, 2, 3, 4, 9, 10], "maximum": [0, 3, 4], "i": [0, 1, 2, 3, 4, 9, 10, 14, 15, 16, 17], "us": [0, 1, 2, 3, 4, 9, 14, 15, 16, 17], "A": [0, 1, 2, 3, 4, 5, 9, 10, 15, 16, 17], "initi": [0, 9, 10, 16, 17], "pseudorandom": [0, 9], "number": [0, 1, 2, 3, 4, 8, 9, 10, 14, 15, 16, 17], "gener": [0, 2, 8, 9, 14, 15, 16, 17], "should": [0, 2, 9, 15, 16], "valid": [0, 9], "input": [0, 1, 9, 17], "np": [0, 2, 9, 15, 16, 17], "default_rng": [0, 9], "dype": 0, "data": [0, 2, 9, 10, 16, 17], "type": [0, 1, 2, 3, 4, 5, 8, 9, 10, 16], "result": [0, 1, 4, 10, 15, 16, 17], "ndarrai": [0, 1, 2, 3, 4, 9, 10, 16], "sampl": [0, 9], "random_hermitian": [0, 11, 12, 15], "random_orthogon": [0, 11, 12], "float": [0, 1, 2, 3, 4, 5, 9, 16], "orthogon": [0, 4], "distribut": 0, "haar": 0, "measur": 0, "an": [0, 1, 2, 3, 4, 5, 9, 10, 14, 15, 16, 17], "instanc": [0, 15], "els": [0, 9], "refer": [0, 3, 4, 13, 17], "arxiv": [0, 3, 4], "math": 0, "ph": 0, "0609050": 0, "random_real_symmetric_matrix": [0, 11, 12], "real": [0, 1, 2, 3, 4, 10, 15, 16, 17], "symmetr": [0, 1, 2, 3, 4, 9, 16, 17], "option": [0, 1, 2, 3, 4, 9, 10], "random_special_orthogon": [0, 11, 12], "special": [0, 4, 14], "random_statevector": [0, 11, 12], "vector": [0, 1, 2, 4, 8, 9, 10, 14, 15, 17], "from": [0, 10, 14, 15, 17], "uniform": [0, 9], "dimens": [0, 9, 14], "random_t2_amplitud": [0, 11, 12], "nocc": [0, 2, 8, 10], "t2": [0, 4, 10, 17], "amplitud": [0, 4, 10, 17], "tensor": [0, 1, 3, 4, 9, 16, 17], "orbit": [0, 1, 2, 3, 4, 8, 9, 10, 14, 16, 17, 18], "ar": [0, 1, 2, 3, 4, 9, 14, 15, 16, 17], "occupi": [0, 1, 2, 16], "electron": [0, 1, 2, 9, 10, 14, 16], "random_two_body_tensor_r": [0, 11, 12], "two": [0, 1, 2, 3, 4, 9, 10, 16, 17], "bodi": [0, 1, 3, 4, 9, 16, 17], "valu": [0, 3, 4, 9, 10, 16, 17], "shape": [0, 4, 9, 14, 17], "default": [0, 3, 4], "behavior": [0, 3, 4], "which": [0, 2, 3, 4, 14, 15, 16, 17], "1": [0, 2, 3, 4, 9, 10, 14, 15, 16, 17], "2": [0, 1, 2, 3, 4, 14, 15, 16, 17], "random_unitari": [0, 11, 12, 14, 15], "unitari": [0, 1, 2, 3, 4, 10, 15, 16, 18], "get": [0, 1, 15, 16, 17], "fci": [0, 1, 14], "space": 0, "spatial": [0, 1, 2, 3, 10, 14, 16, 17], "tupl": [0, 1, 2, 4, 9, 10, 16], "alpha": [0, 1, 2, 9, 10, 14, 17], "beta": [0, 1, 2, 9, 10, 14, 17], "pair": [0, 2], "integ": 0, "dim_a": [0, 14], "dim_b": [0, 14], "repres": [0, 3, 4, 5, 9, 14, 17], "one_hot": [0, 11, 12], "index": [0, 2, 8, 13, 14, 17], "arrai": [0, 2, 4, 9, 14], "all": [0, 2, 17], "zero": [0, 4], "except": 0, "one": [0, 1, 2, 3, 4, 9, 14, 16, 17], "specifi": [0, 3, 4, 9, 17], "desir": 0, "place": [0, 1, 2, 8, 9, 10, 17], "hot": 0, "slater_determin": [0, 11, 12, 14, 15, 16, 17], "occupied_orbit": [0, 14, 15, 16, 17], "slater": [0, 9, 14, 15, 16], "determin": [0, 4, 9, 14, 15, 16], "sequenc": 0, "list": [0, 1, 2, 4, 9, 17], "first": [0, 2, 4, 9, 15, 16, 17], "second": [0, 4, 16], "rotat": [0, 1, 2, 3, 4, 8, 9, 10, 14, 16, 17, 18], "appli": [0, 1, 2, 4, 8, 10, 14, 15, 16, 17], "configur": [0, 14], "In": [0, 10, 15, 16, 17], "other": [0, 17], "word": [0, 17], "thi": [0, 2, 3, 4, 9, 10, 14, 15, 16, 17], "describ": [0, 1, 2, 10, 14, 15, 16, 17], "slater_determinant_one_rdm": [0, 11, 12], "particl": [0, 9, 14, 15], "reduc": [0, 9], "densiti": [0, 9], "contain": [0, 2, 4, 10, 17], "indic": [0, 3, 4, 17], "similarli": [0, 16], "util": [0, 4], "random_nelec": [0, 11, 12], "n_alpha": [0, 14, 15, 16, 17], "n_beta": [0, 14, 15, 16, 17], "random_occupied_orbit": [0, 11, 12], "occ_a": 0, "occ_b": 0, "expectation_pow": [0, 11, 12], "one_rdm": [0, 9], "power": 0, "expect": [0, 9, 15], "oper": [0, 1, 2, 3, 5, 8, 9, 10, 15, 17, 18], "w": [0, 15, 16], "r": [0, 1, 3, 4, 16], "t": [0, 2, 3, 4, 15, 16], "o": 0, "ha": [0, 1, 4, 10, 14, 15, 16, 17], "form": [0, 1, 2, 3, 4, 10, 15, 16, 17], "sum_": [0, 1, 2, 3, 4, 10, 15, 16, 17], "pq": [0, 1, 3, 4, 16], "m_": 0, "a_p": 0, "dagger": [0, 1, 2, 4, 10, 15, 16, 17], "a_q": 0, "function": [0, 1, 2, 3, 4, 6, 9, 10, 14, 15, 16, 17], "take": [0, 3, 14, 17], "m": [0, 4, 15], "its": [0, 2, 3, 4, 9, 10, 15, 16], "argument": [0, 3, 4, 9, 15], "let": [0, 16], "lvert": [0, 17], "psi": [0, 17], "rangl": [0, 17], "Then": 0, "quantiti": 0, "langl": 0, "rvert": 0, "k": [0, 4, 10, 15, 16, 17], "expectation_product": [0, 11, 12], "product": [0, 2, 16], "matric": [0, 1, 3, 4, 10, 15, 16, 17], "o_1": 0, "o_2": 0, "dot": 0, "o_k": 0, "softwar": [0, 14], "librari": [0, 14], "fast": 0, "simul": [0, 9, 13, 14, 15, 17, 18], "fermion": [0, 2, 13, 14, 15, 17], "quantum": [0, 2, 3, 13, 14, 16, 17], "circuit": [0, 3, 13, 14], "diagon": [1, 2, 3, 4, 8, 9, 10, 15, 17, 18], "coulomb": [1, 2, 3, 4, 8, 9, 10, 17, 18], "vec": [1, 2, 4, 8, 9, 10, 14, 15, 16], "mat": [1, 2, 4], "mat_alpha_beta": [1, 2], "fals": [1, 2, 3, 4, 9, 10], "occupations_a": [1, 2, 8], "occupations_b": [1, 2, 8], "strings_a": [1, 2, 8], "strings_b": [1, 2, 8], "j": [1, 2, 3, 10, 15, 16, 17], "sigma": [1, 2, 3, 10, 15, 16, 17], "tau": [1, 2, 3, 10, 16, 17], "z_": [1, 2], "ij": [1, 2, 3, 10, 15, 16, 17], "n_": [1, 2, 10, 14, 15, 16, 17], "where": [1, 2, 3, 4, 9, 10, 15, 16, 17], "denot": [1, 2, 3, 15], "spin": [1, 2, 10, 14, 15, 17], "z": [1, 2, 3, 4, 9, 14], "also": [1, 2, 9, 10, 15], "term": [1, 2, 3, 4, 9, 10, 16, 17], "sum": [1, 2, 8, 9, 16], "differ": [1, 2, 3, 4, 10, 17], "neq": [1, 2, 3], "state": [1, 2, 8, 9, 10, 11, 12, 15, 16, 17], "transform": [1, 2, 3, 10, 14, 15], "coeffici": [1, 2, 3, 4, 10, 15, 17], "interact": [1, 2, 14], "between": [1, 2, 3, 4, 17], "bool": [1, 2, 3, 4, 9, 10], "whether": [1, 2, 3, 4, 9, 10], "represent": [1, 3, 4, 9, 14], "string": [1, 2, 9, 14], "convert": [1, 5, 10, 14, 15, 16], "linear": [1, 2, 4, 5, 15], "mathcal": [1, 2, 10, 15, 16, 17], "u": [1, 2, 3, 4], "linearoper": [1, 5, 15, 16], "implement": [1, 14, 15, 17], "action": [1, 15], "molecular": [1, 3, 17], "0": [1, 3, 4, 9, 15, 16, 17], "h": [1, 3, 16, 17], "h_": [1, 3, 4, 16], "dagger_": [1, 2, 3, 15, 16], "p": [1, 2, 3, 4, 16, 17], "a_": [1, 2, 3, 15, 16], "q": [1, 3, 16], "frac12": [1, 3, 10, 16, 17], "pqr": [1, 3, 4, 16], "": [1, 3, 4, 8, 12, 14, 16], "here": [1, 3, 4, 14, 15, 16], "call": [1, 3, 14, 15, 16], "basi": [1, 3, 10, 15, 16, 17], "combin": [1, 2, 15], "coeff": [1, 2], "lambda_i": [1, 2, 15], "construct": [1, 16, 17], "time": [2, 3, 4, 8, 9, 14, 16], "evolut": [2, 8, 9, 16], "orbital_rotation_index_a": 2, "orbital_rotation_index_b": 2, "copi": [2, 9, 10], "true": [2, 3, 4, 9, 10, 14, 17], "exp": [2, 15], "befor": [2, 9, 10, 17], "alwai": [2, 4, 9, 10, 15], "newli": [2, 9, 10], "alloc": [2, 9, 10], "origin": [2, 3, 4, 9, 10, 16], "left": [2, 9, 10, 15], "untouch": [2, 9, 10], "mai": [2, 4, 9, 10, 17], "still": [2, 9, 10, 17], "have": [2, 3, 4, 9, 10, 14, 15, 17], "overwritten": [2, 9, 10], "It": [2, 3, 4, 9, 10, 14, 16], "possibl": [2, 3, 4, 9, 10], "modifi": [2, 3, 4, 9, 10], "evolv": [2, 9, 16], "comput": [2, 4, 5, 9, 15, 17], "theta": 2, "target_orb": 2, "g": [2, 4, 9, 17], "dagger_i": 2, "a_j": 2, "dagger_j": 2, "a_i": 2, "angl": 2, "n": [2, 3, 4, 14, 15, 16, 17], "prod": 2, "tunnel": 2, "rais": 2, "valueerror": 2, "must": [2, 4], "dimension": [2, 4, 9, 14], "length": [2, 14, 16, 17], "allow_row_permut": 2, "allow_col_permut": 2, "map": [2, 15], "creation": [2, 15], "mapsto": [2, 15], "u_": 2, "ji": [2, 15], "equival": 2, "log": 2, "_": [2, 3, 4, 10, 15, 16, 17], "allow": [2, 3, 4, 17], "permut": [2, 4], "row": [2, 4, 14], "column": [2, 4, 8, 14, 15], "wa": 2, "well": 2, "actual": [2, 15, 17], "effect": 2, "both": [2, 3, 4], "set": [2, 3, 4, 10, 14, 15, 16, 17], "onli": [2, 3, 4, 14, 15, 17], "linkstr_index": [2, 8], "perform": [2, 3, 4, 10, 15, 16], "diag_str": [2, 8], "off_diag_str": [2, 8], "off_diag_index": [2, 8], "three": 2, "numpi": [2, 4, 9, 14, 15, 16, 17], "x": [2, 17], "binom": 2, "th": [2, 15], "unoccupi": 2, "3": [2, 14, 15, 16, 17], "ax": 2, "correspond": [2, 3, 4, 9, 15, 16], "For": [2, 14, 15, 17], "fix": [2, 4, 14], "choic": [2, 14], "str0": 2, "last": 2, "each": [2, 3, 4, 9, 10, 14, 16, 17], "str1": 2, "sign": 2, "annihil": 2, "creat": [2, 14, 15, 16, 17], "give": [2, 15], "pariti": 2, "doubl": [3, 4, 9, 17, 18], "factor": [3, 4, 9, 17, 18], "low": [3, 4, 14], "decomposit": [3, 4, 9], "kappa_": 3, "sum_t": 3, "text": [3, 16], "pi": 3, "qi": 3, "altern": [3, 16], "sometim": 3, "yield": [3, 4, 16, 17], "simpler": 3, "under": 3, "jordan": 3, "wigner": 3, "frac": 3, "pauli": 3, "obtain": [3, 15, 16, 17], "rewrit": 3, "part": [3, 4], "updat": [3, 16], "appropri": 3, "kappa": 3, "frac18": 3, "asterisk": 3, "summat": 3, "over": 3, "rather": [3, 14], "than": [3, 9, 14, 17], "properti": [3, 10, 15], "tol": [3, 4, 10], "1e": [3, 4, 9, 10], "08": [3, 4, 10, 17], "max_vec": [3, 4], "optim": [3, 4, 9, 10, 17], "method": [3, 4, 9, 17], "l": [3, 4, 10, 16, 17], "bfg": [3, 4], "b": [3, 4, 15], "diag_coulomb_mask": [3, 4], "choleski": [3, 4], "act": 3, "decompos": [3, 4, 9, 16], "output": [3, 16, 17], "guarante": 3, "so": [3, 4, 15, 16, 17], "depend": [3, 4, 9, 14], "error": [3, 4], "threshold": [3, 4], "larger": [3, 4], "lead": 3, "smaller": [3, 4, 16], "furthermor": [3, 4], "max_rank": 3, "upper": [3, 4, 9, 17], "bound": [3, 4, 9], "routin": [3, 4, 14], "straightforward": [3, 4], "exact": [3, 4, 14, 16], "nest": [3, 4], "eigenvalu": [3, 4, 9, 15], "addition": [3, 4], "can": [3, 4, 5, 10, 14, 15, 16, 17], "choos": [3, 4, 14, 17], "store": [3, 4, 9, 16, 17], "achiev": [3, 4, 16], "compress": [3, 4], "enabl": [3, 4], "attempt": [3, 4], "minim": [3, 4, 17], "least": [3, 4], "squar": [3, 4, 9, 17], "quantifi": [3, 4], "scipi": [3, 4, 5, 14, 15, 16, 17], "pass": [3, 4, 15], "gradient": [3, 4], "core": [3, 4], "constrain": [3, 4], "certain": [3, 4], "element": [3, 4], "nonzero": [3, 4, 17], "boolean": [3, 4], "triangular": [3, 4], "becaus": [3, 4, 14, 16, 17], "note": [3, 17], "current": 3, "support": [3, 9, 10], "toler": [3, 4, 17], "defin": [3, 4, 17], "absolut": [3, 4, 9], "reconstruct": [3, 4], "limit": [3, 4, 17], "keep": [3, 4], "overrid": [3, 4], "str": [3, 4, 9], "see": [3, 4], "document": [3, 4], "callback": [3, 4], "usag": [3, 4], "dict": [3, 4], "mask": [3, 4], "full": [3, 4, 14], "instead": [3, 4], "much": [3, 4, 14], "more": [3, 4, 14, 17], "expens": [3, 4], "ignor": [3, 4, 16], "1808": [3, 4], "02625": [3, 4], "2104": [3, 4], "08957": [3, 4], "ell": 4, "pk": 4, "qk": 4, "respect": 4, "too": 4, "small": 4, "exce": 4, "collect": 4, "t2_amplitud": [4, 10], "t_": 4, "ijab": 4, "ap": 4, "ip": 4, "bq": 4, "jq": 4, "v_i": 4, "posit": 4, "definit": 4, "No": 4, "check": [4, 15, 16], "verifi": 4, "1711": 4, "02242": 4, "includ": [4, 10, 14, 15, 16], "assembl": 4, "whose": [4, 5, 14], "target": 4, "slice": [4, 8], "out": [4, 16], "entri": [4, 17], "satisfi": [4, 15], "begin": [4, 15, 17], "pmatrix": 4, "end": [4, 10, 15, 17], "http": 4, "en": 4, "wikipedia": 4, "org": 4, "wiki": 4, "givens_rot": 4, "stable_calcul": 4, "www": 4, "netlib": 4, "lapack": 4, "lawnspdf": 4, "lawn148": 4, "pdf": 4, "algebra": 4, "12": [4, 9, 17], "expm": 4, "taylor": 4, "seri": 4, "expans": 4, "pivot": 4, "lu": 4, "rtype": 4, "lower": 4, "unit": 4, "rtol": 4, "05": 4, "atol": 4, "approxim": [4, 16], "rel": 4, "numer": 4, "within": 4, "union": 4, "bool_": 4, "arg": 5, "kwarg": 5, "obj": 5, "submodul": [6, 11, 12], "apply_diag_coulomb_evolution_in_place_num_rep_numpi": [6, 8], "apply_diag_coulomb_evolution_in_place_num_rep_slow": [6, 8], "apply_diag_coulomb_evolution_in_place_z_rep_slow": [6, 8], "apply_num_op_sum_evolution_in_place_slow": [6, 8], "apply_givens_rotation_in_place_slow": [6, 8], "apply_single_column_transformation_in_place_slow": [6, 8], "gen_orbital_rotation_index_in_place_slow": [6, 8], "python": 6, "version": 6, "were": 6, "rewritten": [6, 15], "rust": 6, "mat_exp": 8, "mat_alpha_beta_exp": 8, "mat_exp_conj": 8, "mat_alpha_beta_exp_conj": 8, "phase": [8, 15], "occup": [8, 14, 15, 16], "c": 8, "slice1": 8, "slice2": 8, "diag_val": 8, "singl": [8, 16], "off_diag_strings_index": 8, "diag": 9, "op": 9, "truncation_threshold": 9, "less": [9, 17], "truncat": [9, 17], "sampling_method": 9, "probabl": 9, "rest": [9, 16], "same": [9, 10, 14, 17], "order": [9, 10, 14, 16, 17], "thei": [9, 15, 17], "e": [9, 10, 16, 17], "follow": [9, 14, 15, 16, 17], "norm": 9, "proport": [9, 15], "spectral": 9, "requir": [9, 17], "incoher": 9, "channel": 9, "n_particl": 9, "total": [9, 10, 16, 17], "n_step": [9, 16], "n_sampl": 9, "via": [9, 16], "step": [9, 15, 16], "explicit": 9, "whenev": 9, "complet": 9, "character": 9, "trajectori": 9, "random": [9, 11, 12, 14, 15], "final": [9, 10, 16, 17], "just": [9, 16, 17], "statevector": [9, 14, 15], "otherwis": 9, "largest": 9, "singular": 9, "varianc": 9, "rdm": 9, "suzuki": 9, "formula": 9, "local": [10, 18], "cluster": [10, 18], "jastrow": [10, 18], "ansatz": [10, 18], "ucj": 10, "prod_": [10, 17], "w_k": [10, 17], "_k": [10, 16, 17], "mathbf": [10, 15, 16, 17], "commut": [10, 16, 17], "we": [10, 15, 16, 17], "enforc": [10, 17], "As": [10, 14, 15, 16, 17], "involv": [10, 17], "To": [10, 14, 15, 16, 17], "static": 10, "param": 10, "alpha_alpha_indic": [10, 17], "alpha_beta_indic": [10, 17], "with_final_orbital_rot": 10, "t1_amplitud": 10, "t1": 10, "repetit": [10, 17], "possibli": 10, "packag": [11, 12], "subpackag": [11, 12], "modul": [11, 12, 13, 14], "content": [11, 12], "molecular_data": [11, 12], "test": [11, 12, 15, 16], "wick": [11, 12], "ffsim": [12, 15, 16, 17, 18], "faster": 13, "tutori": [13, 15, 16, 17], "api": 13, "search": 13, "page": 13, "conserv": 14, "compon": 14, "By": 14, "advantag": 14, "symmetri": [14, 15], "effici": 14, "level": [14, 16], "doe": 14, "primari": 14, "wai": [14, 15, 17], "directli": [14, 16], "exampl": [14, 15, 17], "code": [14, 16, 17], "show": [14, 15, 16, 17], "how": [14, 15, 16, 17], "import": [14, 15, 16, 17], "6": [14, 15, 16], "rang": [14, 15, 16, 17], "1234": [14, 15], "rotated_vec": [14, 15], "plain": 14, "Its": 14, "system": [14, 15], "conveni": 14, "calcul": [14, 16, 17], "comb": 14, "assert": 14, "standard": 14, "often": [14, 17], "simpli": [14, 15], "reshap": 14, "reshaped_vec": 14, "pyscf": [14, 16, 17], "fundament": 15, "mode": 15, "sum_j": 15, "That": 15, "new": 15, "anticommut": 15, "relat": [15, 17], "align": [15, 17], "_1": 15, "_2": 15, "ani": [15, 17], "section": 15, "ll": [15, 16, 17], "demonstr": [15, 16, 17], "task": 15, "consid": [15, 17], "right": 15, "introduc": [15, 17], "eigendecomposit": 15, "sum_k": [15, 16], "lambda_k": 15, "ik": 15, "jk": 15, "our": [15, 16, 17], "ground": [15, 17], "pick": 15, "up": 15, "energi": [15, 16, 17], "spars": [15, 16], "lowest": [15, 16], "eigenvector": 15, "eig": 15, "eigsh": 15, "la": 15, "fact": 15, "you": 15, "illustr": 15, "purpos": 15, "explicitli": 15, "eigh": [15, 16], "evolved_vec": 15, "conj": 15, "undo": 15, "expected_phas": 15, "1j": [15, 16], "assert_allclos": 15, "mention": [15, 16], "abov": [15, 16], "below": [15, 16, 17], "better": [15, 16], "4": [15, 16, 17], "evolved_vec_alt": 15, "daunt": 16, "scale": 16, "cell": [16, 17], "hydrogen": [16, 17], "molecul": [16, 17], "stretch": [16, 17], "bond": [16, 17], "build": [16, 17], "h2": [16, 17], "mol": [16, 17], "gto": [16, 17], "mole": [16, 17], "atom": [16, 17], "8": [16, 17], "sto": [16, 17], "6g": [16, 17], "hartree_fock": [16, 17], "scf": [16, 17], "rhf": [16, 17], "kernel": [16, 17], "mol_data": [16, 17], "from_hartree_fock": [16, 17], "mol_hamiltonian": [16, 17], "df_hamiltonian": 16, "converg": [16, 17], "837796382593709": [16, 17], "dataclass": [16, 17], "print": [16, 17], "some": 16, "inform": 16, "One": 16, "27478830e": 16, "01": [16, 17], "66405155e": 16, "16": 16, "07220771e": 16, "77238770e": 16, "5": [16, 17], "23173938e": 16, "94289029e": 16, "33545754e": 16, "48240570e": 16, "32667268e": 16, "17": 16, "11022302e": 16, "53132024e": 16, "21318608e": 16, "00": [16, 17], "05183033e": 16, "59876437e": 16, "07792507e": 16, "14653029e": 16, "001": 16, "96958401e": 16, "121": 16, "7": [16, 17], "13206008e": 16, "062": 16, "52090881e": 16, "003": 16, "00000000e": 16, "25128053e": 16, "15": 16, "07106781e": 16, "89310728e": 16, "30": 16, "although": 16, "alreadi": 16, "built": 16, "manual": 16, "asymmetr": 16, "basic": 16, "h_k": 16, "divid": 16, "exponenti": 16, "individu": 16, "do": 16, "approx": 16, "prod_k": 16, "higher": 16, "deriv": 16, "write": 16, "recal": 16, "addit": 16, "think": 16, "compos": 16, "quadrat": [16, 18], "def": [16, 17], "simulate_trotter_step_double_factor": 16, "one_body_energi": 16, "one_body_basis_chang": 16, "zip": 16, "finish": 16, "handl": 16, "split": 16, "multipl": 16, "wrote": 16, "step_tim": 16, "hartre": [16, 17], "fock": [16, 17], "match": 16, "when": [16, 17], "initial_st": 16, "\u03c8": [16, 17], "hf_energi": 16, "vdot": [16, 17], "f": [16, 17], "now": 16, "later": 16, "compar": 16, "exact_st": 16, "expm_multipli": 16, "tracea": 16, "fidel": 16, "ab": 16, "9696296369955066": 16, "final_st": [16, 17], "9990275744083491": 16, "improv": 16, "increas": 16, "10": [16, 17], "9999906233109653": 16, "commonli": 16, "known": 16, "fourth": 16, "reproduc": 16, "9": 16, "fewer": 16, "9999999336740059": 16, "phi_0": 17, "taken": 17, "express": 17, "previou": 17, "constructor": 17, "provid": 17, "ccsd": 17, "mp2": 17, "run": 17, "cc": 17, "reference_st": 17, "ansatz_st": 17, "initiali": 17, "970773076716434": 17, "e_corr": 17, "1329766941227252": 17, "9696246123746335": 17, "facilit": 17, "convers": 17, "precis": 17, "somewhat": 17, "complic": 17, "short": 17, "non": 17, "redund": 17, "associ": 17, "fun": 17, "x0": 17, "len": 17, "20": 17, "messag": 17, "termin": 17, "successfulli": 17, "success": 17, "statu": 17, "970773075391498": 17, "678e": 17, "970e": 17, "nit": 17, "jac": 17, "960e": 17, "000e": 17, "980e": 17, "490e": 17, "07": 17, "hess_inv": 17, "364e": 17, "206e": 17, "13": 17, "818e": 17, "nfev": 17, "63": 17, "njev": 17, "either": 17, "connect": 17, "swap": 17, "network": 17, "make": 17, "challeng": 17, "noisi": 17, "pre": 17, "fault": 17, "processor": 17, "idea": 17, "impos": 17, "sparsiti": 17, "constraint": 17, "them": 17, "depth": 17, "qubit": 17, "topologi": 17, "triangl": 17, "sinc": 17, "need": 17, "lattic": 17, "parallel": 17, "line": 17, "rung": 17, "ladder": 17, "With": 17, "setup": 17, "while": 17, "share": 17, "ldot": 17, "without": 17, "Of": 17, "cours": 17, "notic": 17, "decreas": 17, "14": 17, "simpl": 17, "abl": 17, "recov": 17, "exactli": 17, "9707730754179825": 17, "196e": 17, "451e": 17, "029e": 17, "75": 17, "introduct": 18}, "objects": {"": [[0, 0, 0, "-", "ffsim"]], "ffsim": [[1, 0, 0, "-", "contract"], [2, 0, 0, "-", "gates"], [3, 0, 0, "-", "hamiltonians"], [4, 0, 0, "-", "linalg"], [0, 0, 0, "-", "molecular_data"], [5, 0, 0, "-", "protocols"], [0, 0, 0, "-", "random"], [6, 0, 0, "-", "slow"], [0, 0, 0, "-", "states"], [0, 0, 0, "-", "testing"], [9, 0, 0, "-", "trotter"], [10, 0, 0, "-", "variational"], [0, 0, 0, "-", "wick"]], "ffsim.contract": [[1, 0, 0, "-", "diag_coulomb"], [1, 0, 0, "-", "hamiltonian"], [1, 0, 0, "-", "num_op_sum"]], "ffsim.contract.diag_coulomb": [[1, 1, 1, "", "contract_diag_coulomb"], [1, 1, 1, "", "diag_coulomb_linop"]], "ffsim.contract.hamiltonian": [[1, 1, 1, "", "hamiltonian_linop"], [1, 1, 1, "", "hamiltonian_trace"]], "ffsim.contract.num_op_sum": [[1, 1, 1, "", "contract_num_op_sum"], [1, 1, 1, "", "num_op_sum_linop"]], "ffsim.gates": [[2, 0, 0, "-", "diag_coulomb"], [2, 0, 0, "-", "gates"], [2, 0, 0, "-", "num_op_sum"], [2, 0, 0, "-", "orbital_rotation"]], "ffsim.gates.diag_coulomb": [[2, 1, 1, "", "apply_diag_coulomb_evolution"]], "ffsim.gates.gates": [[2, 1, 1, "", "apply_givens_rotation"], [2, 1, 1, "", "apply_num_interaction"], [2, 1, 1, "", "apply_num_op_prod_interaction"], [2, 1, 1, "", "apply_tunneling_interaction"]], "ffsim.gates.num_op_sum": [[2, 1, 1, "", "apply_num_op_sum_evolution"]], "ffsim.gates.orbital_rotation": [[2, 1, 1, "", "apply_orbital_rotation"], [2, 1, 1, "", "gen_orbital_rotation_index"]], "ffsim.hamiltonians": [[3, 0, 0, "-", "double_factorized_hamiltonian"], [3, 0, 0, "-", "molecular_hamiltonian"]], "ffsim.hamiltonians.double_factorized_hamiltonian": [[3, 2, 1, "", "DoubleFactorizedHamiltonian"], [3, 1, 1, "", "double_factorized_hamiltonian"]], "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian": [[3, 3, 1, "", "constant"], [3, 3, 1, "", "diag_coulomb_mats"], [3, 4, 1, "", "norb"], [3, 3, 1, "", "one_body_tensor"], [3, 3, 1, "", "orbital_rotations"], [3, 5, 1, "", "to_number_representation"], [3, 5, 1, "", "to_z_representation"], [3, 3, 1, "", "z_representation"]], "ffsim.hamiltonians.molecular_hamiltonian": [[3, 2, 1, "", "MolecularHamiltonian"]], "ffsim.hamiltonians.molecular_hamiltonian.MolecularHamiltonian": [[3, 3, 1, "", "constant"], [3, 4, 1, "", "norb"], [3, 3, 1, "", "one_body_tensor"], [3, 3, 1, "", "two_body_tensor"]], "ffsim.linalg": [[4, 0, 0, "-", "double_factorized"], [4, 0, 0, "-", "givens"], [4, 0, 0, "-", "linalg"], [4, 0, 0, "-", "predicates"]], "ffsim.linalg.double_factorized": [[4, 1, 1, "", "double_factorized"], [4, 1, 1, "", "double_factorized_t2"], [4, 1, 1, "", "modified_cholesky"], [4, 1, 1, "", "optimal_diag_coulomb_mats"]], "ffsim.linalg.givens": [[4, 1, 1, "", "apply_matrix_to_slices"], [4, 1, 1, "", "givens_decomposition"], [4, 1, 1, "", "givens_matrix"]], "ffsim.linalg.linalg": [[4, 1, 1, "", "expm_multiply_taylor"], [4, 1, 1, "", "lup"]], "ffsim.linalg.predicates": [[4, 1, 1, "", "is_antihermitian"], [4, 1, 1, "", "is_hermitian"], [4, 1, 1, "", "is_orthogonal"], [4, 1, 1, "", "is_real_symmetric"], [4, 1, 1, "", "is_special_orthogonal"], [4, 1, 1, "", "is_unitary"]], "ffsim.molecular_data": [[0, 2, 1, "", "MolecularData"]], "ffsim.protocols": [[5, 0, 0, "-", "linear_operator"], [5, 0, 0, "-", "trace"]], "ffsim.protocols.linear_operator": [[5, 2, 1, "", "SupportsLinearOperator"], [5, 1, 1, "", "linear_operator"]], "ffsim.protocols.trace": [[5, 2, 1, "", "SupportsTrace"], [5, 1, 1, "", "trace"]], "ffsim.random": [[0, 1, 1, "", "random_antihermitian"], [0, 1, 1, "", "random_hermitian"], [0, 1, 1, "", "random_orthogonal"], [0, 1, 1, "", "random_real_symmetric_matrix"], [0, 1, 1, "", "random_special_orthogonal"], [0, 1, 1, "", "random_statevector"], [0, 1, 1, "", "random_t2_amplitudes"], [0, 1, 1, "", "random_two_body_tensor_real"], [0, 1, 1, "", "random_unitary"]], "ffsim.slow": [[7, 0, 0, "-", "contract"], [8, 0, 0, "-", "gates"]], "ffsim.slow.contract": [[7, 0, 0, "-", "diag_coulomb"], [7, 0, 0, "-", "num_op_sum"]], "ffsim.slow.gates": [[8, 0, 0, "-", "diag_coulomb"], [8, 0, 0, "-", "num_op_sum"], [8, 0, 0, "-", "orbital_rotation"]], "ffsim.slow.gates.diag_coulomb": [[8, 1, 1, "", "apply_diag_coulomb_evolution_in_place_num_rep_numpy"], [8, 1, 1, "", "apply_diag_coulomb_evolution_in_place_num_rep_slow"], [8, 1, 1, "", "apply_diag_coulomb_evolution_in_place_z_rep_slow"]], "ffsim.slow.gates.num_op_sum": [[8, 1, 1, "", "apply_num_op_sum_evolution_in_place_slow"]], "ffsim.slow.gates.orbital_rotation": [[8, 1, 1, "", "apply_givens_rotation_in_place_slow"], [8, 1, 1, "", "apply_single_column_transformation_in_place_slow"], [8, 1, 1, "", "gen_orbital_rotation_index_in_place_slow"]], "ffsim.states": [[0, 1, 1, "", "dim"], [0, 1, 1, "", "dims"], [0, 1, 1, "", "one_hot"], [0, 1, 1, "", "slater_determinant"], [0, 1, 1, "", "slater_determinant_one_rdm"]], "ffsim.testing": [[0, 1, 1, "", "random_nelec"], [0, 1, 1, "", "random_occupied_orbitals"]], "ffsim.trotter": [[9, 0, 0, "-", "qdrift"], [9, 0, 0, "-", "trotter"]], "ffsim.trotter.qdrift": [[9, 1, 1, "", "expectation_squared_diag_coulomb"], [9, 1, 1, "", "one_body_square_decomposition"], [9, 1, 1, "", "qdrift_probabilities"], [9, 1, 1, "", "simulate_qdrift_double_factorized"], [9, 1, 1, "", "spectral_norm_diag_coulomb"], [9, 1, 1, "", "spectral_norm_one_body_tensor"], [9, 1, 1, "", "variance_diag_coulomb"], [9, 1, 1, "", "variance_one_body_tensor"]], "ffsim.trotter.trotter": [[9, 1, 1, "", "simulate_trotter_double_factorized"]], "ffsim.variational": [[10, 0, 0, "-", "lucj"]], "ffsim.variational.lucj": [[10, 2, 1, "", "UCJOperator"], [10, 1, 1, "", "apply_ucj_operator"]], "ffsim.variational.lucj.UCJOperator": [[10, 3, 1, "", "diag_coulomb_mats_alpha_alpha"], [10, 3, 1, "", "diag_coulomb_mats_alpha_beta"], [10, 3, 1, "", "final_orbital_rotation"], [10, 5, 1, "", "from_parameters"], [10, 5, 1, "", "from_t_amplitudes"], [10, 4, 1, "", "n_reps"], [10, 4, 1, "", "norb"], [10, 3, 1, "", "orbital_rotations"], [10, 5, 1, "", "to_parameters"], [10, 5, 1, "", "to_t_amplitudes"]], "ffsim.wick": [[0, 1, 1, "", "expectation_power"], [0, 1, 1, "", "expectation_product"]]}, "objtypes": {"0": "py:module", "1": "py:function", "2": "py:class", "3": "py:attribute", "4": "py:property", "5": "py:method"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "function", "Python function"], "2": ["py", "class", "Python class"], "3": ["py", "attribute", "Python attribute"], "4": ["py", "property", "Python property"], "5": ["py", "method", "Python method"]}, "titleterms": {"ffsim": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14], "packag": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10], "subpackag": [0, 6], "submodul": [0, 1, 2, 3, 4, 5, 7, 8, 9, 10], "molecular_data": 0, "modul": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10], "random": 0, "state": 0, "test": 0, "wick": 0, "content": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 13, 18], "contract": [1, 7], "diag_coulomb": [1, 2, 7, 8], "hamiltonian": [1, 3, 15, 16], "num_op_sum": [1, 2, 7, 8], "gate": [2, 8], "orbital_rot": [2, 8], "double_factorized_hamiltonian": 3, "molecular_hamiltonian": 3, "linalg": 4, "double_factor": 4, "given": 4, "predic": 4, "protocol": 5, "linear_oper": 5, "trace": 5, "slow": [6, 7, 8], "trotter": [9, 16], "qdrift": 9, "variat": 10, "lucj": [10, 17], "api": 12, "refer": 12, "document": 13, "indic": 13, "tabl": 13, "introduct": 14, "orbit": 15, "rotat": 15, "quadrat": 15, "time": 15, "evolut": 15, "diagon": 16, "coulomb": 16, "oper": 16, "doubl": 16, "factor": 16, "simul": 16, "represent": 16, "molecular": 16, "brief": 16, "background": 16, "suzuki": 16, "formula": 16, "implement": 16, "The": 17, "local": 17, "unitari": 17, "cluster": 17, "jastrow": 17, "ansatz": 17, "ucj": 17, "tutori": 18}, "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 package": [[0, "ffsim-package"]], "Subpackages": [[0, "subpackages"], [6, "subpackages"]], "Submodules": [[0, "submodules"], [1, "submodules"], [2, "submodules"], [3, "submodules"], [4, "submodules"], [5, "submodules"], [7, "submodules"], [8, "submodules"], [9, "submodules"], [10, "submodules"]], "ffsim.molecular_data module": [[0, "module-ffsim.molecular_data"]], "ffsim.random module": [[0, "module-ffsim.random"]], "ffsim.states module": [[0, "module-ffsim.states"]], "ffsim.testing module": [[0, "module-ffsim.testing"]], "ffsim.wick module": [[0, "module-ffsim.wick"]], "Module contents": [[0, "module-ffsim"], [1, "module-ffsim.contract"], [2, "module-ffsim.gates"], [3, "module-ffsim.hamiltonians"], [4, "module-ffsim.linalg"], [5, "module-ffsim.protocols"], [6, "module-ffsim.slow"], [7, "module-ffsim.slow.contract"], [8, "module-ffsim.slow.gates"], [9, "module-ffsim.trotter"], [10, "module-ffsim.variational"]], "ffsim.contract package": [[1, "ffsim-contract-package"]], "ffsim.contract.diag_coulomb module": [[1, "module-ffsim.contract.diag_coulomb"]], "ffsim.contract.hamiltonian module": [[1, "module-ffsim.contract.hamiltonian"]], "ffsim.contract.num_op_sum module": [[1, "module-ffsim.contract.num_op_sum"]], "ffsim.gates package": [[2, "ffsim-gates-package"]], "ffsim.gates.diag_coulomb module": [[2, "module-ffsim.gates.diag_coulomb"]], "ffsim.gates.gates module": [[2, "module-ffsim.gates.gates"]], "ffsim.gates.num_op_sum module": [[2, "module-ffsim.gates.num_op_sum"]], "ffsim.gates.orbital_rotation module": [[2, "module-ffsim.gates.orbital_rotation"]], "ffsim.hamiltonians package": [[3, "ffsim-hamiltonians-package"]], "ffsim.hamiltonians.double_factorized_hamiltonian module": [[3, "module-ffsim.hamiltonians.double_factorized_hamiltonian"]], "ffsim.hamiltonians.molecular_hamiltonian module": [[3, "module-ffsim.hamiltonians.molecular_hamiltonian"]], "ffsim.linalg package": [[4, "ffsim-linalg-package"]], "ffsim.linalg.double_factorized module": [[4, "module-ffsim.linalg.double_factorized"]], "ffsim.linalg.givens module": [[4, "module-ffsim.linalg.givens"]], "ffsim.linalg.linalg module": [[4, "module-ffsim.linalg.linalg"]], "ffsim.linalg.predicates module": [[4, "module-ffsim.linalg.predicates"]], "ffsim.protocols package": [[5, "ffsim-protocols-package"]], "ffsim.protocols.linear_operator module": [[5, "module-ffsim.protocols.linear_operator"]], "ffsim.protocols.trace module": [[5, "module-ffsim.protocols.trace"]], "ffsim.slow package": [[6, "ffsim-slow-package"]], "ffsim.slow.contract package": [[7, "ffsim-slow-contract-package"]], "ffsim.slow.contract.diag_coulomb module": [[7, "module-ffsim.slow.contract.diag_coulomb"]], "ffsim.slow.contract.num_op_sum module": [[7, "module-ffsim.slow.contract.num_op_sum"]], "ffsim.slow.gates package": [[8, "ffsim-slow-gates-package"]], "ffsim.slow.gates.diag_coulomb module": [[8, "module-ffsim.slow.gates.diag_coulomb"]], "ffsim.slow.gates.num_op_sum module": [[8, "module-ffsim.slow.gates.num_op_sum"]], "ffsim.slow.gates.orbital_rotation module": [[8, "module-ffsim.slow.gates.orbital_rotation"]], "ffsim.trotter package": [[9, "ffsim-trotter-package"]], "ffsim.trotter.qdrift module": [[9, "module-ffsim.trotter.qdrift"]], "ffsim.trotter.trotter module": [[9, "module-ffsim.trotter.trotter"]], "ffsim.variational package": [[10, "ffsim-variational-package"]], "ffsim.variational.lucj module": [[10, "module-ffsim.variational.lucj"]], "ffsim": [[11, "ffsim"]], "API reference": [[12, "api-reference"]], "ffsim documentation": [[13, "ffsim-documentation"]], "Contents:": [[13, null], [18, null]], "Indices and tables": [[13, "indices-and-tables"]], "Introduction to ffsim": [[14, "Introduction-to-ffsim"]], "Orbital rotations and quadratic Hamiltonians": [[15, "Orbital-rotations-and-quadratic-Hamiltonians"]], "Orbital rotations": [[15, "Orbital-rotations"]], "Time evolution by a quadratic Hamiltonian": [[15, "Time-evolution-by-a-quadratic-Hamiltonian"]], "Diagonal Coulomb operators and double-factorized Trotter simulation": [[16, "Diagonal-Coulomb-operators-and-double-factorized-Trotter-simulation"]], "Double-factorized representation of the molecular Hamiltonian": [[16, "Double-factorized-representation-of-the-molecular-Hamiltonian"]], "Trotter simulation of the double-factorized Hamiltonian": [[16, "Trotter-simulation-of-the-double-factorized-Hamiltonian"]], "Brief background on Trotter-Suzuki formulas": [[16, "Brief-background-on-Trotter-Suzuki-formulas"]], "Implementing Trotter simulation of the double-factorized Hamiltonian": [[16, "Implementing-Trotter-simulation-of-the-double-factorized-Hamiltonian"]], "The local unitary cluster Jastrow (LUCJ) ansatz": [[17, "The-local-unitary-cluster-Jastrow-(LUCJ)-ansatz"], [17, "id1"]], "The unitary cluster Jastrow (UCJ) ansatz": [[17, "The-unitary-cluster-Jastrow-(UCJ)-ansatz"]], "Tutorials": [[18, "tutorials"]]}, "indexentries": {"moleculardata (class in ffsim.molecular_data)": [[0, "ffsim.molecular_data.MolecularData"]], "dim() (in module ffsim.states)": [[0, "ffsim.states.dim"]], "dims() (in module ffsim.states)": [[0, "ffsim.states.dims"]], "expectation_power() (in module ffsim.wick)": [[0, "ffsim.wick.expectation_power"]], "expectation_product() (in module ffsim.wick)": [[0, "ffsim.wick.expectation_product"]], "ffsim": [[0, "module-ffsim"]], "ffsim.molecular_data": [[0, "module-ffsim.molecular_data"]], "ffsim.random": [[0, "module-ffsim.random"]], "ffsim.states": [[0, "module-ffsim.states"]], "ffsim.testing": [[0, "module-ffsim.testing"]], "ffsim.wick": [[0, "module-ffsim.wick"]], "module": [[0, "module-ffsim"], [0, "module-ffsim.molecular_data"], [0, "module-ffsim.random"], [0, "module-ffsim.states"], [0, "module-ffsim.testing"], [0, "module-ffsim.wick"], [1, "module-ffsim.contract"], [1, "module-ffsim.contract.diag_coulomb"], [1, "module-ffsim.contract.hamiltonian"], [1, "module-ffsim.contract.num_op_sum"], [2, "module-ffsim.gates"], [2, "module-ffsim.gates.diag_coulomb"], [2, "module-ffsim.gates.gates"], [2, "module-ffsim.gates.num_op_sum"], [2, "module-ffsim.gates.orbital_rotation"], [3, "module-ffsim.hamiltonians"], [3, "module-ffsim.hamiltonians.double_factorized_hamiltonian"], [3, "module-ffsim.hamiltonians.molecular_hamiltonian"], [4, "module-ffsim.linalg"], [4, "module-ffsim.linalg.double_factorized"], [4, "module-ffsim.linalg.givens"], [4, "module-ffsim.linalg.linalg"], [4, "module-ffsim.linalg.predicates"], [5, "module-ffsim.protocols"], [5, "module-ffsim.protocols.linear_operator"], [5, "module-ffsim.protocols.trace"], [6, "module-ffsim.slow"], [7, "module-ffsim.slow.contract"], [7, "module-ffsim.slow.contract.diag_coulomb"], [7, "module-ffsim.slow.contract.num_op_sum"], [8, "module-ffsim.slow.gates"], [8, "module-ffsim.slow.gates.diag_coulomb"], [8, "module-ffsim.slow.gates.num_op_sum"], [8, "module-ffsim.slow.gates.orbital_rotation"], [9, "module-ffsim.trotter"], [9, "module-ffsim.trotter.qdrift"], [9, "module-ffsim.trotter.trotter"], [10, "module-ffsim.variational"], [10, "module-ffsim.variational.lucj"]], "one_hot() (in module ffsim.states)": [[0, "ffsim.states.one_hot"]], "random_antihermitian() (in module ffsim.random)": [[0, "ffsim.random.random_antihermitian"]], "random_hermitian() (in module ffsim.random)": [[0, "ffsim.random.random_hermitian"]], "random_nelec() (in module ffsim.testing)": [[0, "ffsim.testing.random_nelec"]], "random_occupied_orbitals() (in module ffsim.testing)": [[0, "ffsim.testing.random_occupied_orbitals"]], "random_orthogonal() (in module ffsim.random)": [[0, "ffsim.random.random_orthogonal"]], "random_real_symmetric_matrix() (in module ffsim.random)": [[0, "ffsim.random.random_real_symmetric_matrix"]], "random_special_orthogonal() (in module ffsim.random)": [[0, "ffsim.random.random_special_orthogonal"]], "random_statevector() (in module ffsim.random)": [[0, "ffsim.random.random_statevector"]], "random_t2_amplitudes() (in module ffsim.random)": [[0, "ffsim.random.random_t2_amplitudes"]], "random_two_body_tensor_real() (in module ffsim.random)": [[0, "ffsim.random.random_two_body_tensor_real"]], "random_unitary() (in module ffsim.random)": [[0, "ffsim.random.random_unitary"]], "slater_determinant() (in module ffsim.states)": [[0, "ffsim.states.slater_determinant"]], "slater_determinant_one_rdm() (in module ffsim.states)": [[0, "ffsim.states.slater_determinant_one_rdm"]], "contract_diag_coulomb() (in module ffsim.contract.diag_coulomb)": [[1, "ffsim.contract.diag_coulomb.contract_diag_coulomb"]], "contract_num_op_sum() (in module ffsim.contract.num_op_sum)": [[1, "ffsim.contract.num_op_sum.contract_num_op_sum"]], "diag_coulomb_linop() (in module ffsim.contract.diag_coulomb)": [[1, "ffsim.contract.diag_coulomb.diag_coulomb_linop"]], "ffsim.contract": [[1, "module-ffsim.contract"]], "ffsim.contract.diag_coulomb": [[1, "module-ffsim.contract.diag_coulomb"]], "ffsim.contract.hamiltonian": [[1, "module-ffsim.contract.hamiltonian"]], "ffsim.contract.num_op_sum": [[1, "module-ffsim.contract.num_op_sum"]], "hamiltonian_linop() (in module ffsim.contract.hamiltonian)": [[1, "ffsim.contract.hamiltonian.hamiltonian_linop"]], "hamiltonian_trace() (in module ffsim.contract.hamiltonian)": [[1, "ffsim.contract.hamiltonian.hamiltonian_trace"]], "num_op_sum_linop() (in module ffsim.contract.num_op_sum)": [[1, "ffsim.contract.num_op_sum.num_op_sum_linop"]], "apply_diag_coulomb_evolution() (in module ffsim.gates.diag_coulomb)": [[2, "ffsim.gates.diag_coulomb.apply_diag_coulomb_evolution"]], "apply_givens_rotation() (in module ffsim.gates.gates)": [[2, "ffsim.gates.gates.apply_givens_rotation"]], "apply_num_interaction() (in module ffsim.gates.gates)": [[2, "ffsim.gates.gates.apply_num_interaction"]], "apply_num_op_prod_interaction() (in module ffsim.gates.gates)": [[2, "ffsim.gates.gates.apply_num_op_prod_interaction"]], "apply_num_op_sum_evolution() (in module ffsim.gates.num_op_sum)": [[2, "ffsim.gates.num_op_sum.apply_num_op_sum_evolution"]], "apply_orbital_rotation() (in module ffsim.gates.orbital_rotation)": [[2, "ffsim.gates.orbital_rotation.apply_orbital_rotation"]], "apply_tunneling_interaction() (in module ffsim.gates.gates)": [[2, "ffsim.gates.gates.apply_tunneling_interaction"]], "ffsim.gates": [[2, "module-ffsim.gates"]], "ffsim.gates.diag_coulomb": [[2, "module-ffsim.gates.diag_coulomb"]], "ffsim.gates.gates": [[2, "module-ffsim.gates.gates"]], "ffsim.gates.num_op_sum": [[2, "module-ffsim.gates.num_op_sum"]], "ffsim.gates.orbital_rotation": [[2, "module-ffsim.gates.orbital_rotation"]], "gen_orbital_rotation_index() (in module ffsim.gates.orbital_rotation)": [[2, "ffsim.gates.orbital_rotation.gen_orbital_rotation_index"]], "doublefactorizedhamiltonian (class in ffsim.hamiltonians.double_factorized_hamiltonian)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian"]], "molecularhamiltonian (class in ffsim.hamiltonians.molecular_hamiltonian)": [[3, "ffsim.hamiltonians.molecular_hamiltonian.MolecularHamiltonian"]], "constant (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian attribute)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.constant"]], "constant (ffsim.hamiltonians.molecular_hamiltonian.molecularhamiltonian attribute)": [[3, "ffsim.hamiltonians.molecular_hamiltonian.MolecularHamiltonian.constant"]], "diag_coulomb_mats (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian attribute)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.diag_coulomb_mats"]], "double_factorized_hamiltonian() (in module ffsim.hamiltonians.double_factorized_hamiltonian)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.double_factorized_hamiltonian"]], "ffsim.hamiltonians": [[3, "module-ffsim.hamiltonians"]], "ffsim.hamiltonians.double_factorized_hamiltonian": [[3, "module-ffsim.hamiltonians.double_factorized_hamiltonian"]], "ffsim.hamiltonians.molecular_hamiltonian": [[3, "module-ffsim.hamiltonians.molecular_hamiltonian"]], "norb (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian property)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.norb"]], "norb (ffsim.hamiltonians.molecular_hamiltonian.molecularhamiltonian property)": [[3, "ffsim.hamiltonians.molecular_hamiltonian.MolecularHamiltonian.norb"]], "one_body_tensor (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian attribute)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.one_body_tensor"]], "one_body_tensor (ffsim.hamiltonians.molecular_hamiltonian.molecularhamiltonian attribute)": [[3, "ffsim.hamiltonians.molecular_hamiltonian.MolecularHamiltonian.one_body_tensor"]], "orbital_rotations (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian attribute)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.orbital_rotations"]], "to_number_representation() (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian method)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.to_number_representation"]], "to_z_representation() (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian method)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.to_z_representation"]], "two_body_tensor (ffsim.hamiltonians.molecular_hamiltonian.molecularhamiltonian attribute)": [[3, "ffsim.hamiltonians.molecular_hamiltonian.MolecularHamiltonian.two_body_tensor"]], "z_representation (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian attribute)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.z_representation"]], "apply_matrix_to_slices() (in module ffsim.linalg.givens)": [[4, "ffsim.linalg.givens.apply_matrix_to_slices"]], "double_factorized() (in module ffsim.linalg.double_factorized)": [[4, "ffsim.linalg.double_factorized.double_factorized"]], "double_factorized_t2() (in module ffsim.linalg.double_factorized)": [[4, "ffsim.linalg.double_factorized.double_factorized_t2"]], "expm_multiply_taylor() (in module ffsim.linalg.linalg)": [[4, "ffsim.linalg.linalg.expm_multiply_taylor"]], "ffsim.linalg": [[4, "module-ffsim.linalg"]], "ffsim.linalg.double_factorized": [[4, "module-ffsim.linalg.double_factorized"]], "ffsim.linalg.givens": [[4, "module-ffsim.linalg.givens"]], "ffsim.linalg.linalg": [[4, "module-ffsim.linalg.linalg"]], "ffsim.linalg.predicates": [[4, "module-ffsim.linalg.predicates"]], "givens_decomposition() (in module ffsim.linalg.givens)": [[4, "ffsim.linalg.givens.givens_decomposition"]], "givens_matrix() (in module ffsim.linalg.givens)": [[4, "ffsim.linalg.givens.givens_matrix"]], "is_antihermitian() (in module ffsim.linalg.predicates)": [[4, "ffsim.linalg.predicates.is_antihermitian"]], "is_hermitian() (in module ffsim.linalg.predicates)": [[4, "ffsim.linalg.predicates.is_hermitian"]], "is_orthogonal() (in module ffsim.linalg.predicates)": [[4, "ffsim.linalg.predicates.is_orthogonal"]], "is_real_symmetric() (in module ffsim.linalg.predicates)": [[4, "ffsim.linalg.predicates.is_real_symmetric"]], "is_special_orthogonal() (in module ffsim.linalg.predicates)": [[4, "ffsim.linalg.predicates.is_special_orthogonal"]], "is_unitary() (in module ffsim.linalg.predicates)": [[4, "ffsim.linalg.predicates.is_unitary"]], "lup() (in module ffsim.linalg.linalg)": [[4, "ffsim.linalg.linalg.lup"]], "modified_cholesky() (in module ffsim.linalg.double_factorized)": [[4, "ffsim.linalg.double_factorized.modified_cholesky"]], "optimal_diag_coulomb_mats() (in module ffsim.linalg.double_factorized)": [[4, "ffsim.linalg.double_factorized.optimal_diag_coulomb_mats"]], "supportslinearoperator (class in ffsim.protocols.linear_operator)": [[5, "ffsim.protocols.linear_operator.SupportsLinearOperator"]], "supportstrace (class in ffsim.protocols.trace)": [[5, "ffsim.protocols.trace.SupportsTrace"]], "ffsim.protocols": [[5, "module-ffsim.protocols"]], "ffsim.protocols.linear_operator": [[5, "module-ffsim.protocols.linear_operator"]], "ffsim.protocols.trace": [[5, "module-ffsim.protocols.trace"]], "linear_operator() (in module ffsim.protocols.linear_operator)": [[5, "ffsim.protocols.linear_operator.linear_operator"]], "trace() (in module ffsim.protocols.trace)": [[5, "ffsim.protocols.trace.trace"]], "ffsim.slow": [[6, "module-ffsim.slow"]], "ffsim.slow.contract": [[7, "module-ffsim.slow.contract"]], "ffsim.slow.contract.diag_coulomb": [[7, "module-ffsim.slow.contract.diag_coulomb"]], "ffsim.slow.contract.num_op_sum": [[7, "module-ffsim.slow.contract.num_op_sum"]], "apply_diag_coulomb_evolution_in_place_num_rep_numpy() (in module ffsim.slow.gates.diag_coulomb)": [[8, "ffsim.slow.gates.diag_coulomb.apply_diag_coulomb_evolution_in_place_num_rep_numpy"]], "apply_diag_coulomb_evolution_in_place_num_rep_slow() (in module ffsim.slow.gates.diag_coulomb)": [[8, "ffsim.slow.gates.diag_coulomb.apply_diag_coulomb_evolution_in_place_num_rep_slow"]], "apply_diag_coulomb_evolution_in_place_z_rep_slow() (in module ffsim.slow.gates.diag_coulomb)": [[8, "ffsim.slow.gates.diag_coulomb.apply_diag_coulomb_evolution_in_place_z_rep_slow"]], "apply_givens_rotation_in_place_slow() (in module ffsim.slow.gates.orbital_rotation)": [[8, "ffsim.slow.gates.orbital_rotation.apply_givens_rotation_in_place_slow"]], "apply_num_op_sum_evolution_in_place_slow() (in module ffsim.slow.gates.num_op_sum)": [[8, "ffsim.slow.gates.num_op_sum.apply_num_op_sum_evolution_in_place_slow"]], "apply_single_column_transformation_in_place_slow() (in module ffsim.slow.gates.orbital_rotation)": [[8, "ffsim.slow.gates.orbital_rotation.apply_single_column_transformation_in_place_slow"]], "ffsim.slow.gates": [[8, "module-ffsim.slow.gates"]], "ffsim.slow.gates.diag_coulomb": [[8, "module-ffsim.slow.gates.diag_coulomb"]], "ffsim.slow.gates.num_op_sum": [[8, "module-ffsim.slow.gates.num_op_sum"]], "ffsim.slow.gates.orbital_rotation": [[8, "module-ffsim.slow.gates.orbital_rotation"]], "gen_orbital_rotation_index_in_place_slow() (in module ffsim.slow.gates.orbital_rotation)": [[8, "ffsim.slow.gates.orbital_rotation.gen_orbital_rotation_index_in_place_slow"]], "expectation_squared_diag_coulomb() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.expectation_squared_diag_coulomb"]], "ffsim.trotter": [[9, "module-ffsim.trotter"]], "ffsim.trotter.qdrift": [[9, "module-ffsim.trotter.qdrift"]], "ffsim.trotter.trotter": [[9, "module-ffsim.trotter.trotter"]], "one_body_square_decomposition() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.one_body_square_decomposition"]], "qdrift_probabilities() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.qdrift_probabilities"]], "simulate_qdrift_double_factorized() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.simulate_qdrift_double_factorized"]], "simulate_trotter_double_factorized() (in module ffsim.trotter.trotter)": [[9, "ffsim.trotter.trotter.simulate_trotter_double_factorized"]], "spectral_norm_diag_coulomb() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.spectral_norm_diag_coulomb"]], "spectral_norm_one_body_tensor() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.spectral_norm_one_body_tensor"]], "variance_diag_coulomb() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.variance_diag_coulomb"]], "variance_one_body_tensor() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.variance_one_body_tensor"]], "ucjoperator (class in ffsim.variational.lucj)": [[10, "ffsim.variational.lucj.UCJOperator"]], "apply_ucj_operator() (in module ffsim.variational.lucj)": [[10, "ffsim.variational.lucj.apply_ucj_operator"]], "diag_coulomb_mats_alpha_alpha (ffsim.variational.lucj.ucjoperator attribute)": [[10, "ffsim.variational.lucj.UCJOperator.diag_coulomb_mats_alpha_alpha"]], "diag_coulomb_mats_alpha_beta (ffsim.variational.lucj.ucjoperator attribute)": [[10, "ffsim.variational.lucj.UCJOperator.diag_coulomb_mats_alpha_beta"]], "ffsim.variational": [[10, "module-ffsim.variational"]], "ffsim.variational.lucj": [[10, "module-ffsim.variational.lucj"]], "final_orbital_rotation (ffsim.variational.lucj.ucjoperator attribute)": [[10, "ffsim.variational.lucj.UCJOperator.final_orbital_rotation"]], "from_parameters() (ffsim.variational.lucj.ucjoperator static method)": [[10, "ffsim.variational.lucj.UCJOperator.from_parameters"]], "from_t_amplitudes() (ffsim.variational.lucj.ucjoperator static method)": [[10, "ffsim.variational.lucj.UCJOperator.from_t_amplitudes"]], "n_reps (ffsim.variational.lucj.ucjoperator property)": [[10, "ffsim.variational.lucj.UCJOperator.n_reps"]], "norb (ffsim.variational.lucj.ucjoperator property)": [[10, "ffsim.variational.lucj.UCJOperator.norb"]], "orbital_rotations (ffsim.variational.lucj.ucjoperator attribute)": [[10, "ffsim.variational.lucj.UCJOperator.orbital_rotations"]], "to_parameters() (ffsim.variational.lucj.ucjoperator method)": [[10, "ffsim.variational.lucj.UCJOperator.to_parameters"]], "to_t_amplitudes() (ffsim.variational.lucj.ucjoperator method)": [[10, "ffsim.variational.lucj.UCJOperator.to_t_amplitudes"]]}}) \ No newline at end of file +Search.setIndex({"docnames": ["api/generated/ffsim", "api/generated/ffsim.contract", "api/generated/ffsim.gates", "api/generated/ffsim.hamiltonians", "api/generated/ffsim.linalg", "api/generated/ffsim.protocols", "api/generated/ffsim.slow", "api/generated/ffsim.slow.contract", "api/generated/ffsim.slow.gates", "api/generated/ffsim.trotter", "api/generated/ffsim.variational", "api/generated/modules", "api/index", "index", "tutorials/01-introduction", "tutorials/02-orbital-rotation", "tutorials/03-double-factorized", "tutorials/04-lucj", "tutorials/index"], "filenames": ["api/generated/ffsim.rst", "api/generated/ffsim.contract.rst", "api/generated/ffsim.gates.rst", "api/generated/ffsim.hamiltonians.rst", "api/generated/ffsim.linalg.rst", "api/generated/ffsim.protocols.rst", "api/generated/ffsim.slow.rst", "api/generated/ffsim.slow.contract.rst", "api/generated/ffsim.slow.gates.rst", "api/generated/ffsim.trotter.rst", "api/generated/ffsim.variational.rst", "api/generated/modules.rst", "api/index.rst", "index.rst", "tutorials/01-introduction.ipynb", "tutorials/02-orbital-rotation.ipynb", "tutorials/03-double-factorized.ipynb", "tutorials/04-lucj.ipynb", "tutorials/index.rst"], "titles": ["ffsim package", "ffsim.contract package", "ffsim.gates package", "ffsim.hamiltonians package", "ffsim.linalg package", "ffsim.protocols package", "ffsim.slow package", "ffsim.slow.contract package", "ffsim.slow.gates package", "ffsim.trotter package", "ffsim.variational package", "ffsim", "API reference", "ffsim documentation", "Introduction to ffsim", "Orbital rotations and quadratic Hamiltonians", "Diagonal Coulomb operators and double-factorized Trotter simulation", "The local unitary cluster Jastrow (LUCJ) ansatz", "Tutorials"], "terms": {"contract": [0, 6, 11, 12, 15], "diag_coulomb": [0, 6, 11], "contract_diag_coulomb": [0, 1], "diag_coulomb_linop": [0, 1], "hamiltonian": [0, 9, 11, 12, 17, 18], "hamiltonian_linop": [0, 1, 15], "hamiltonian_trac": [0, 1], "num_op_sum": [0, 6, 11], "contract_num_op_sum": [0, 1], "num_op_sum_linop": [0, 1], "gate": [0, 6, 11, 12, 17], "apply_diag_coulomb_evolut": [0, 2, 16], "apply_givens_rot": [0, 2], "apply_num_interact": [0, 2], "apply_num_op_prod_interact": [0, 2], "apply_tunneling_interact": [0, 2], "apply_num_op_sum_evolut": [0, 2, 15, 16], "orbital_rot": [0, 1, 3, 4, 6, 9, 10, 11, 14, 15, 16], "apply_orbital_rot": [0, 2, 14, 15], "gen_orbital_rotation_index": [0, 2], "double_factorized_hamiltonian": [0, 11, 16], "doublefactorizedhamiltonian": [0, 3, 9, 16], "one_body_tensor": [0, 1, 3, 9, 15, 16], "diag_coulomb_mat": [0, 3, 9, 16], "constant": [0, 1, 3, 16, 17], "z_represent": [0, 1, 2, 3, 9], "norb": [0, 1, 2, 3, 5, 8, 9, 10, 14, 15, 16, 17], "to_number_represent": [0, 3], "to_z_represent": [0, 3], "molecular_hamiltonian": [0, 11], "molecularhamiltonian": [0, 3], "two_body_tensor": [0, 1, 3, 4, 16], "linalg": [0, 11, 12, 15, 16], "double_factor": [0, 11], "double_factorized_t2": [0, 4], "modified_choleski": [0, 4], "optimal_diag_coulomb_mat": [0, 4], "given": [0, 1, 2, 8, 9, 11, 15, 16], "apply_matrix_to_slic": [0, 4], "givens_decomposit": [0, 4], "givens_matrix": [0, 4], "expm_multiply_taylor": [0, 4], "lup": [0, 4], "predic": [0, 11], "is_antihermitian": [0, 4], "is_hermitian": [0, 4], "is_orthogon": [0, 4], "is_real_symmetr": [0, 4], "is_special_orthogon": [0, 4], "is_unitari": [0, 4], "protocol": [0, 11, 12], "linear_oper": [0, 11, 16, 17], "supportslinearoper": [0, 5], "trace": [0, 1, 11, 16], "supportstrac": [0, 5], "slow": [0, 11, 12], "trotter": [0, 11, 12, 18], "qdrift": [0, 11], "expectation_squared_diag_coulomb": [0, 9], "one_body_square_decomposit": [0, 9], "qdrift_prob": [0, 9], "simulate_qdrift_double_factor": [0, 9], "spectral_norm_diag_coulomb": [0, 9], "spectral_norm_one_body_tensor": [0, 9], "variance_diag_coulomb": [0, 9], "variance_one_body_tensor": [0, 9], "simulate_trotter_double_factor": [0, 9, 16], "variat": [0, 11, 12, 17], "lucj": [0, 11, 18], "ucjoper": [0, 10, 17], "diag_coulomb_mats_alpha_alpha": [0, 10], "diag_coulomb_mats_alpha_beta": [0, 10], "final_orbital_rot": [0, 10], "from_paramet": [0, 10, 17], "from_t_amplitud": [0, 10, 17], "n_rep": [0, 10, 17], "to_paramet": [0, 10, 17], "to_t_amplitud": [0, 10], "apply_ucj_oper": [0, 10, 17], "class": [0, 3, 5, 10, 14, 17], "moleculardata": [0, 11, 12, 16, 17], "nelec": [0, 1, 2, 5, 8, 9, 10, 14, 15, 16, 17], "core_energi": 0, "dipole_integr": 0, "none": [0, 1, 2, 3, 4, 8, 9, 10], "orbital_symmetri": 0, "sourc": [0, 1, 2, 3, 4, 5, 8, 9, 10], "base": [0, 3, 4, 5, 10], "object": [0, 3, 4, 5, 10, 16, 17], "random_antihermitian": [0, 11, 12], "dim": [0, 9, 11, 12, 14], "seed": [0, 9, 14, 15], "dtype": 0, "complex": [0, 4], "return": [0, 1, 2, 3, 4, 5, 8, 9, 10, 16, 17], "anti": [0, 4], "hermitian": [0, 4, 15], "matrix": [0, 1, 2, 3, 4, 9, 14, 15, 16, 17], "paramet": [0, 1, 2, 3, 4, 9, 10, 17], "int": [0, 1, 2, 3, 4, 9, 10, 16], "The": [0, 1, 2, 3, 4, 9, 10, 14, 15, 16, 18], "width": 0, "height": 0, "rank": [0, 3, 4], "If": [0, 1, 2, 3, 4, 9, 10], "maximum": [0, 3, 4], "i": [0, 1, 2, 3, 4, 9, 10, 14, 15, 16, 17], "us": [0, 1, 2, 3, 4, 9, 14, 15, 16, 17], "A": [0, 1, 2, 3, 4, 5, 9, 10, 15, 16, 17], "initi": [0, 9, 10, 16, 17], "pseudorandom": [0, 9], "number": [0, 1, 2, 3, 4, 8, 9, 10, 14, 15, 16, 17], "gener": [0, 2, 8, 9, 14, 15, 16, 17], "should": [0, 2, 9, 15, 16], "valid": [0, 9], "input": [0, 1, 9, 17], "np": [0, 2, 9, 15, 16, 17], "default_rng": [0, 9], "dype": 0, "data": [0, 2, 9, 10, 16, 17], "type": [0, 1, 2, 3, 4, 5, 8, 9, 10, 16], "result": [0, 1, 4, 10, 15, 16, 17], "ndarrai": [0, 1, 2, 3, 4, 9, 10, 16], "sampl": [0, 9], "random_hermitian": [0, 11, 12, 15], "random_orthogon": [0, 11, 12], "float": [0, 1, 2, 3, 4, 5, 9, 16], "orthogon": [0, 4], "distribut": 0, "haar": 0, "measur": 0, "an": [0, 1, 2, 3, 4, 5, 9, 10, 14, 15, 16, 17], "instanc": [0, 15], "els": [0, 9], "refer": [0, 3, 4, 13, 17], "arxiv": [0, 3, 4], "math": 0, "ph": 0, "0609050": 0, "random_real_symmetric_matrix": [0, 11, 12], "real": [0, 1, 2, 3, 4, 10, 15, 16, 17], "symmetr": [0, 1, 2, 3, 4, 9, 16, 17], "option": [0, 1, 2, 3, 4, 9, 10], "random_special_orthogon": [0, 11, 12], "special": [0, 4, 14], "random_statevector": [0, 11, 12], "vector": [0, 1, 2, 4, 8, 9, 10, 14, 15, 17], "from": [0, 10, 14, 15, 17], "uniform": [0, 9], "dimens": [0, 9, 14], "random_t2_amplitud": [0, 11, 12], "nocc": [0, 2, 8, 10], "t2": [0, 4, 10, 17], "amplitud": [0, 4, 10, 17], "tensor": [0, 1, 3, 4, 9, 16, 17], "orbit": [0, 1, 2, 3, 4, 8, 9, 10, 14, 16, 17, 18], "ar": [0, 1, 2, 3, 4, 9, 14, 15, 16, 17], "occupi": [0, 1, 2, 16], "electron": [0, 1, 2, 9, 10, 14, 16], "random_two_body_tensor_r": [0, 11, 12], "two": [0, 1, 2, 3, 4, 9, 10, 16, 17], "bodi": [0, 1, 3, 4, 9, 16, 17], "valu": [0, 3, 4, 9, 10, 16, 17], "shape": [0, 4, 9, 14, 17], "default": [0, 3, 4], "behavior": [0, 3, 4], "which": [0, 2, 3, 4, 14, 15, 16, 17], "1": [0, 2, 3, 4, 9, 10, 14, 15, 16, 17], "2": [0, 1, 2, 3, 4, 14, 15, 16, 17], "random_unitari": [0, 11, 12, 14, 15], "unitari": [0, 1, 2, 3, 4, 10, 15, 16, 18], "get": [0, 1, 15, 16, 17], "fci": [0, 1, 14], "space": 0, "spatial": [0, 1, 2, 3, 10, 14, 16, 17], "tupl": [0, 1, 2, 4, 9, 10, 16], "alpha": [0, 1, 2, 9, 10, 14, 17], "beta": [0, 1, 2, 9, 10, 14, 17], "pair": [0, 2], "integ": 0, "dim_a": [0, 14], "dim_b": [0, 14], "repres": [0, 3, 4, 5, 9, 14, 17], "one_hot": [0, 11, 12], "index": [0, 2, 8, 13, 14, 17], "arrai": [0, 2, 4, 9, 14], "all": [0, 2, 17], "zero": [0, 4], "except": 0, "one": [0, 1, 2, 3, 4, 9, 14, 16, 17], "specifi": [0, 3, 4, 9, 17], "desir": 0, "place": [0, 1, 2, 8, 9, 10, 17], "hot": 0, "slater_determin": [0, 11, 12, 14, 15, 16, 17], "occupied_orbit": [0, 14, 15, 16, 17], "slater": [0, 9, 14, 15, 16], "determin": [0, 4, 9, 14, 15, 16], "sequenc": 0, "list": [0, 1, 2, 4, 9, 17], "first": [0, 2, 4, 9, 15, 16, 17], "second": [0, 4, 16], "rotat": [0, 1, 2, 3, 4, 8, 9, 10, 14, 16, 17, 18], "appli": [0, 1, 2, 4, 8, 10, 14, 15, 16, 17], "configur": [0, 14], "In": [0, 10, 15, 16, 17], "other": [0, 17], "word": [0, 17], "thi": [0, 2, 3, 4, 9, 10, 14, 15, 16, 17], "describ": [0, 1, 2, 10, 14, 15, 16, 17], "slater_determinant_one_rdm": [0, 11, 12], "particl": [0, 9, 14, 15], "reduc": [0, 9], "densiti": [0, 9], "contain": [0, 2, 4, 10, 17], "indic": [0, 3, 4, 17], "similarli": [0, 16], "util": [0, 4], "random_nelec": [0, 11, 12], "n_alpha": [0, 14, 15, 16, 17], "n_beta": [0, 14, 15, 16, 17], "random_occupied_orbit": [0, 11, 12], "occ_a": 0, "occ_b": 0, "expectation_pow": [0, 11, 12], "one_rdm": [0, 9], "power": 0, "expect": [0, 9, 15], "oper": [0, 1, 2, 3, 5, 8, 9, 10, 15, 17, 18], "w": [0, 15, 16], "r": [0, 1, 3, 4, 16], "t": [0, 2, 3, 4, 15, 16], "o": 0, "ha": [0, 1, 4, 10, 14, 15, 16, 17], "form": [0, 1, 2, 3, 4, 10, 15, 16, 17], "sum_": [0, 1, 2, 3, 4, 10, 15, 16, 17], "pq": [0, 1, 3, 4, 16], "m_": 0, "a_p": 0, "dagger": [0, 1, 2, 4, 10, 15, 16, 17], "a_q": 0, "function": [0, 1, 2, 3, 4, 6, 9, 10, 14, 15, 16, 17], "take": [0, 3, 14, 17], "m": [0, 4, 15], "its": [0, 2, 3, 4, 9, 10, 15, 16], "argument": [0, 3, 4, 9, 15], "let": [0, 16], "lvert": [0, 17], "psi": [0, 17], "rangl": [0, 17], "Then": 0, "quantiti": 0, "langl": 0, "rvert": 0, "k": [0, 4, 10, 15, 16, 17], "expectation_product": [0, 11, 12], "product": [0, 2, 16], "matric": [0, 1, 3, 4, 10, 15, 16, 17], "o_1": 0, "o_2": 0, "dot": 0, "o_k": 0, "softwar": [0, 14], "librari": [0, 14], "fast": 0, "simul": [0, 9, 13, 14, 15, 17, 18], "fermion": [0, 2, 13, 14, 15, 17], "quantum": [0, 2, 3, 13, 14, 16, 17], "circuit": [0, 3, 13, 14], "diagon": [1, 2, 3, 4, 8, 9, 10, 15, 17, 18], "coulomb": [1, 2, 3, 4, 8, 9, 10, 17, 18], "vec": [1, 2, 4, 8, 9, 10, 14, 15, 16], "mat": [1, 2, 4], "mat_alpha_beta": [1, 2], "fals": [1, 2, 3, 4, 9, 10], "occupations_a": [1, 2, 8], "occupations_b": [1, 2, 8], "strings_a": [1, 2, 8], "strings_b": [1, 2, 8], "j": [1, 2, 3, 10, 15, 16, 17], "sigma": [1, 2, 3, 10, 15, 16, 17], "tau": [1, 2, 3, 10, 16, 17], "z_": [1, 2], "ij": [1, 2, 3, 10, 15, 16, 17], "n_": [1, 2, 10, 14, 15, 16, 17], "where": [1, 2, 3, 4, 9, 10, 15, 16, 17], "denot": [1, 2, 3, 15], "spin": [1, 2, 10, 14, 15, 17], "z": [1, 2, 3, 4, 9, 14], "also": [1, 2, 9, 10, 15], "term": [1, 2, 3, 4, 9, 10, 16, 17], "sum": [1, 2, 8, 9, 16], "differ": [1, 2, 3, 4, 10, 17], "neq": [1, 2, 3], "state": [1, 2, 8, 9, 10, 11, 12, 15, 16, 17], "transform": [1, 2, 3, 10, 14, 15], "coeffici": [1, 2, 3, 4, 10, 15, 17], "interact": [1, 2, 14], "between": [1, 2, 3, 4, 17], "bool": [1, 2, 3, 4, 9, 10], "whether": [1, 2, 3, 4, 9, 10], "represent": [1, 3, 4, 9, 14], "string": [1, 2, 9, 14], "convert": [1, 5, 10, 14, 15, 16], "linear": [1, 2, 4, 5, 15], "mathcal": [1, 2, 10, 15, 16, 17], "u": [1, 2, 3, 4], "linearoper": [1, 5, 15, 16], "implement": [1, 14, 15, 17], "action": [1, 15], "molecular": [1, 3, 17], "0": [1, 3, 4, 9, 15, 16, 17], "h": [1, 3, 16, 17], "h_": [1, 3, 4, 16], "dagger_": [1, 2, 3, 15, 16], "p": [1, 2, 3, 4, 16, 17], "a_": [1, 2, 3, 15, 16], "q": [1, 3, 16], "frac12": [1, 3, 10, 16, 17], "pqr": [1, 3, 4, 16], "": [1, 3, 4, 8, 12, 14, 16], "here": [1, 3, 4, 14, 15, 16], "call": [1, 3, 14, 15, 16], "basi": [1, 3, 10, 15, 16, 17], "combin": [1, 2, 15], "coeff": [1, 2], "lambda_i": [1, 2, 15], "construct": [1, 16, 17], "time": [2, 3, 4, 8, 9, 14, 16], "evolut": [2, 8, 9, 16], "orbital_rotation_index_a": 2, "orbital_rotation_index_b": 2, "copi": [2, 9, 10], "true": [2, 3, 4, 9, 10, 14, 17], "exp": [2, 15], "befor": [2, 9, 10, 17], "alwai": [2, 4, 9, 10, 15], "newli": [2, 9, 10], "alloc": [2, 9, 10], "origin": [2, 3, 4, 9, 10, 16], "left": [2, 9, 10, 15], "untouch": [2, 9, 10], "mai": [2, 4, 9, 10, 17], "still": [2, 9, 10, 17], "have": [2, 3, 4, 9, 10, 14, 15, 17], "overwritten": [2, 9, 10], "It": [2, 3, 4, 9, 10, 14, 16], "possibl": [2, 3, 4, 9, 10], "modifi": [2, 3, 4, 9, 10], "evolv": [2, 9, 16], "comput": [2, 4, 5, 9, 15, 17], "theta": 2, "target_orb": 2, "g": [2, 4, 9, 17], "dagger_i": 2, "a_j": 2, "dagger_j": 2, "a_i": 2, "angl": 2, "n": [2, 3, 4, 14, 15, 16, 17], "prod": 2, "tunnel": 2, "rais": 2, "valueerror": 2, "must": [2, 4], "dimension": [2, 4, 9, 14], "length": [2, 14, 16, 17], "allow_row_permut": 2, "allow_col_permut": 2, "map": [2, 15], "creation": [2, 15], "mapsto": [2, 15], "u_": 2, "ji": [2, 15], "equival": 2, "log": 2, "_": [2, 3, 4, 10, 15, 16, 17], "allow": [2, 3, 4, 17], "permut": [2, 4], "row": [2, 4, 14], "column": [2, 4, 8, 14, 15], "wa": 2, "well": 2, "actual": [2, 15, 17], "effect": 2, "both": [2, 3, 4], "set": [2, 3, 4, 10, 14, 15, 16, 17], "onli": [2, 3, 4, 14, 15, 17], "linkstr_index": [2, 8], "perform": [2, 3, 4, 10, 15, 16], "diag_str": [2, 8], "off_diag_str": [2, 8], "off_diag_index": [2, 8], "three": 2, "numpi": [2, 4, 9, 14, 15, 16, 17], "x": [2, 17], "binom": 2, "th": [2, 15], "unoccupi": 2, "3": [2, 14, 15, 16, 17], "ax": 2, "correspond": [2, 3, 4, 9, 15, 16], "For": [2, 14, 15, 17], "fix": [2, 4, 14], "choic": [2, 14], "str0": 2, "last": 2, "each": [2, 3, 4, 9, 10, 14, 16, 17], "str1": 2, "sign": 2, "annihil": 2, "creat": [2, 14, 15, 16, 17], "give": [2, 15], "pariti": 2, "doubl": [3, 4, 9, 17, 18], "factor": [3, 4, 9, 17, 18], "low": [3, 4, 14], "decomposit": [3, 4, 9], "kappa_": 3, "sum_t": 3, "text": [3, 16], "pi": 3, "qi": 3, "altern": [3, 16], "sometim": 3, "yield": [3, 4, 16, 17], "simpler": 3, "under": 3, "jordan": 3, "wigner": 3, "frac": 3, "pauli": 3, "obtain": [3, 15, 16, 17], "rewrit": 3, "part": [3, 4], "updat": [3, 16], "appropri": 3, "kappa": 3, "frac18": 3, "asterisk": 3, "summat": 3, "over": 3, "rather": [3, 14], "than": [3, 9, 14, 17], "properti": [3, 10, 15], "tol": [3, 4, 10], "1e": [3, 4, 9, 10], "08": [3, 4, 10, 17], "max_vec": [3, 4], "optim": [3, 4, 9, 10, 17], "method": [3, 4, 9, 17], "l": [3, 4, 10, 16, 17], "bfg": [3, 4], "b": [3, 4, 15], "diag_coulomb_mask": [3, 4], "choleski": [3, 4], "act": 3, "decompos": [3, 4, 9, 16], "output": [3, 16, 17], "guarante": 3, "so": [3, 4, 15, 16, 17], "depend": [3, 4, 9, 14], "error": [3, 4], "threshold": [3, 4], "larger": [3, 4], "lead": 3, "smaller": [3, 4, 16], "furthermor": [3, 4], "max_rank": 3, "upper": [3, 4, 9, 17], "bound": [3, 4, 9], "routin": [3, 4, 14], "straightforward": [3, 4], "exact": [3, 4, 14, 16], "nest": [3, 4], "eigenvalu": [3, 4, 9, 15], "addition": [3, 4], "can": [3, 4, 5, 10, 14, 15, 16, 17], "choos": [3, 4, 14, 17], "store": [3, 4, 9, 16, 17], "achiev": [3, 4, 16], "compress": [3, 4], "enabl": [3, 4], "attempt": [3, 4], "minim": [3, 4, 17], "least": [3, 4], "squar": [3, 4, 9, 17], "quantifi": [3, 4], "scipi": [3, 4, 5, 14, 15, 16, 17], "pass": [3, 4, 15], "gradient": [3, 4], "core": [3, 4], "constrain": [3, 4], "certain": [3, 4], "element": [3, 4], "nonzero": [3, 4, 17], "boolean": [3, 4], "triangular": [3, 4], "becaus": [3, 4, 14, 16, 17], "note": [3, 17], "current": 3, "support": [3, 9, 10], "toler": [3, 4, 17], "defin": [3, 4, 17], "absolut": [3, 4, 9], "reconstruct": [3, 4], "limit": [3, 4, 17], "keep": [3, 4], "overrid": [3, 4], "str": [3, 4, 9], "see": [3, 4], "document": [3, 4], "callback": [3, 4], "usag": [3, 4], "dict": [3, 4], "mask": [3, 4], "full": [3, 4, 14], "instead": [3, 4], "much": [3, 4, 14], "more": [3, 4, 14, 17], "expens": [3, 4], "ignor": [3, 4, 16], "1808": [3, 4], "02625": [3, 4], "2104": [3, 4], "08957": [3, 4], "ell": 4, "pk": 4, "qk": 4, "respect": 4, "too": 4, "small": 4, "exce": 4, "collect": 4, "t2_amplitud": [4, 10], "t_": 4, "ijab": 4, "ap": 4, "ip": 4, "bq": 4, "jq": 4, "v_i": 4, "posit": 4, "definit": 4, "No": 4, "check": [4, 15, 16], "verifi": 4, "1711": 4, "02242": 4, "includ": [4, 10, 14, 15, 16], "assembl": 4, "whose": [4, 5, 14], "target": 4, "slice": [4, 8], "out": [4, 16], "entri": [4, 17], "satisfi": [4, 15], "begin": [4, 15, 17], "pmatrix": 4, "end": [4, 10, 15, 17], "http": 4, "en": 4, "wikipedia": 4, "org": 4, "wiki": 4, "givens_rot": 4, "stable_calcul": 4, "www": 4, "netlib": 4, "lapack": 4, "lawnspdf": 4, "lawn148": 4, "pdf": 4, "algebra": 4, "12": [4, 9, 17], "expm": 4, "taylor": 4, "seri": 4, "expans": 4, "pivot": 4, "lu": 4, "rtype": 4, "lower": 4, "unit": 4, "rtol": 4, "05": 4, "atol": 4, "approxim": [4, 16], "rel": 4, "numer": 4, "within": 4, "union": 4, "bool_": 4, "arg": 5, "kwarg": 5, "obj": 5, "submodul": [6, 11, 12], "apply_diag_coulomb_evolution_in_place_num_rep_numpi": [6, 8], "apply_diag_coulomb_evolution_in_place_num_rep_slow": [6, 8], "apply_diag_coulomb_evolution_in_place_z_rep_slow": [6, 8], "apply_num_op_sum_evolution_in_place_slow": [6, 8], "apply_givens_rotation_in_place_slow": [6, 8], "apply_single_column_transformation_in_place_slow": [6, 8], "gen_orbital_rotation_index_in_place_slow": [6, 8], "python": 6, "version": 6, "were": 6, "rewritten": [6, 15], "rust": 6, "mat_exp": 8, "mat_alpha_beta_exp": 8, "mat_exp_conj": 8, "mat_alpha_beta_exp_conj": 8, "phase": [8, 15], "occup": [8, 14, 15, 16], "c": 8, "slice1": 8, "slice2": 8, "diag_val": 8, "singl": [8, 16], "off_diag_strings_index": 8, "diag": 9, "op": 9, "truncation_threshold": 9, "less": [9, 17], "truncat": [9, 17], "sampling_method": 9, "probabl": 9, "rest": [9, 16], "same": [9, 10, 14, 17], "order": [9, 10, 14, 16, 17], "thei": [9, 15, 17], "e": [9, 10, 16, 17], "follow": [9, 14, 15, 16, 17], "norm": 9, "proport": [9, 15], "spectral": 9, "requir": [9, 17], "incoher": 9, "channel": 9, "n_particl": 9, "total": [9, 10, 16, 17], "n_step": [9, 16], "n_sampl": 9, "via": [9, 16], "step": [9, 15, 16], "explicit": 9, "whenev": 9, "complet": 9, "character": 9, "trajectori": 9, "random": [9, 11, 12, 14, 15], "final": [9, 10, 16, 17], "just": [9, 16, 17], "statevector": [9, 14, 15], "otherwis": 9, "largest": 9, "singular": 9, "varianc": 9, "rdm": 9, "suzuki": 9, "formula": 9, "local": [10, 18], "cluster": [10, 18], "jastrow": [10, 18], "ansatz": [10, 18], "ucj": 10, "prod_": [10, 17], "w_k": [10, 17], "_k": [10, 16, 17], "mathbf": [10, 15, 16, 17], "commut": [10, 16, 17], "we": [10, 15, 16, 17], "enforc": [10, 17], "As": [10, 14, 15, 16, 17], "involv": [10, 17], "To": [10, 14, 15, 16, 17], "static": 10, "param": 10, "alpha_alpha_indic": [10, 17], "alpha_beta_indic": [10, 17], "with_final_orbital_rot": 10, "t1_amplitud": 10, "t1": 10, "repetit": [10, 17], "possibli": 10, "packag": [11, 12], "subpackag": [11, 12], "modul": [11, 12, 13, 14], "content": [11, 12], "molecular_data": [11, 12], "test": [11, 12, 15, 16], "wick": [11, 12], "ffsim": [12, 15, 16, 17, 18], "faster": 13, "tutori": [13, 15, 16, 17], "api": 13, "search": 13, "page": 13, "conserv": 14, "compon": 14, "By": 14, "advantag": 14, "symmetri": [14, 15], "effici": 14, "level": [14, 16], "doe": 14, "primari": 14, "wai": [14, 15, 17], "directli": [14, 16], "exampl": [14, 15, 17], "code": [14, 16, 17], "show": [14, 15, 16, 17], "how": [14, 15, 16, 17], "import": [14, 15, 16, 17], "6": [14, 15, 16, 17], "rang": [14, 15, 16, 17], "1234": [14, 15], "rotated_vec": [14, 15], "plain": 14, "Its": 14, "system": [14, 15], "conveni": 14, "calcul": [14, 16, 17], "comb": 14, "assert": 14, "standard": 14, "often": [14, 17], "simpli": [14, 15], "reshap": 14, "reshaped_vec": 14, "pyscf": [14, 16, 17], "fundament": 15, "mode": 15, "sum_j": 15, "That": 15, "new": 15, "anticommut": 15, "relat": [15, 17], "align": [15, 17], "_1": 15, "_2": 15, "ani": [15, 17], "section": 15, "ll": [15, 16, 17], "demonstr": [15, 16, 17], "task": 15, "consid": [15, 17], "right": 15, "introduc": [15, 17], "eigendecomposit": 15, "sum_k": [15, 16], "lambda_k": 15, "ik": 15, "jk": 15, "our": [15, 16, 17], "ground": [15, 17], "pick": 15, "up": 15, "energi": [15, 16, 17], "spars": [15, 16], "lowest": [15, 16], "eigenvector": 15, "eig": 15, "eigsh": 15, "la": 15, "fact": 15, "you": 15, "illustr": 15, "purpos": 15, "explicitli": 15, "eigh": [15, 16], "evolved_vec": 15, "conj": 15, "undo": 15, "expected_phas": 15, "1j": [15, 16], "assert_allclos": 15, "mention": [15, 16], "abov": [15, 16], "below": [15, 16, 17], "better": [15, 16], "4": [15, 16, 17], "evolved_vec_alt": 15, "daunt": 16, "scale": 16, "cell": [16, 17], "hydrogen": [16, 17], "molecul": [16, 17], "stretch": [16, 17], "bond": [16, 17], "build": [16, 17], "h2": [16, 17], "mol": [16, 17], "gto": [16, 17], "mole": [16, 17], "atom": [16, 17], "8": [16, 17], "sto": [16, 17], "6g": [16, 17], "hartree_fock": [16, 17], "scf": [16, 17], "rhf": [16, 17], "kernel": [16, 17], "mol_data": [16, 17], "from_hartree_fock": [16, 17], "mol_hamiltonian": [16, 17], "df_hamiltonian": 16, "converg": [16, 17], "837796382593709": [16, 17], "dataclass": [16, 17], "print": [16, 17], "some": 16, "inform": 16, "One": 16, "27478830e": 16, "01": [16, 17], "66405155e": 16, "16": 16, "07220771e": 16, "77238770e": 16, "5": [16, 17], "23173938e": 16, "57437591e": 16, "33545754e": 16, "12704463e": 16, "48240570e": 16, "61492903e": 16, "24884750e": 16, "53132024e": 16, "21318608e": 16, "00": [16, 17], "25870402e": 16, "76015378e": 16, "07792507e": 16, "14653029e": 16, "50800163e": 16, "59": 16, "58462611e": 16, "31": 16, "52090881e": 16, "03": 16, "00000000e": 16, "24520980e": 16, "15": 16, "7": 16, "07106781e": 16, "48603030e": 16, "although": 16, "alreadi": 16, "built": 16, "manual": 16, "asymmetr": 16, "basic": 16, "h_k": 16, "divid": 16, "exponenti": 16, "individu": 16, "do": 16, "approx": 16, "prod_k": 16, "higher": 16, "deriv": 16, "write": 16, "recal": 16, "addit": 16, "think": 16, "compos": 16, "quadrat": [16, 18], "def": [16, 17], "simulate_trotter_step_double_factor": 16, "one_body_energi": 16, "one_body_basis_chang": 16, "zip": 16, "finish": 16, "handl": 16, "split": 16, "multipl": 16, "wrote": 16, "step_tim": 16, "hartre": [16, 17], "fock": [16, 17], "match": 16, "when": [16, 17], "initial_st": 16, "\u03c8": [16, 17], "hf_energi": 16, "vdot": [16, 17], "f": [16, 17], "8377963825937088": 16, "now": 16, "later": 16, "compar": 16, "exact_st": 16, "expm_multipli": 16, "tracea": 16, "fidel": 16, "ab": 16, "9696296369955066": 16, "final_st": [16, 17], "999027574408349": 16, "improv": 16, "increas": 16, "10": [16, 17], "9999906233109657": 16, "commonli": 16, "known": 16, "fourth": 16, "reproduc": 16, "9": [16, 17], "fewer": 16, "9999999336740057": 16, "phi_0": 17, "taken": 17, "express": 17, "previou": 17, "constructor": 17, "provid": 17, "ccsd": 17, "mp2": 17, "run": 17, "cc": 17, "reference_st": 17, "ansatz_st": 17, "initiali": 17, "9707730767164341": 17, "e_corr": 17, "1329766941227253": 17, "9696246123746332": 17, "facilit": 17, "convers": 17, "precis": 17, "somewhat": 17, "complic": 17, "short": 17, "non": 17, "redund": 17, "associ": 17, "fun": 17, "x0": 17, "len": 17, "20": 17, "messag": 17, "termin": 17, "successfulli": 17, "success": 17, "statu": 17, "9707730753913614": 17, "678e": 17, "970e": 17, "nit": 17, "jac": 17, "490e": 17, "000e": 17, "686e": 17, "714e": 17, "07": 17, "hess_inv": 17, "080e": 17, "13": 17, "192e": 17, "505e": 17, "nfev": 17, "63": 17, "njev": 17, "either": 17, "connect": 17, "swap": 17, "network": 17, "make": 17, "challeng": 17, "noisi": 17, "pre": 17, "fault": 17, "processor": 17, "idea": 17, "impos": 17, "sparsiti": 17, "constraint": 17, "them": 17, "depth": 17, "qubit": 17, "topologi": 17, "triangl": 17, "sinc": 17, "need": 17, "lattic": 17, "parallel": 17, "line": 17, "rung": 17, "ladder": 17, "With": 17, "setup": 17, "while": 17, "share": 17, "ldot": 17, "without": 17, "Of": 17, "cours": 17, "notic": 17, "decreas": 17, "14": 17, "simpl": 17, "abl": 17, "recov": 17, "exactli": 17, "9707730754179815": 17, "470e": 17, "980e": 17, "132e": 17, "75": 17, "introduct": 18}, "objects": {"": [[0, 0, 0, "-", "ffsim"]], "ffsim": [[1, 0, 0, "-", "contract"], [2, 0, 0, "-", "gates"], [3, 0, 0, "-", "hamiltonians"], [4, 0, 0, "-", "linalg"], [0, 0, 0, "-", "molecular_data"], [5, 0, 0, "-", "protocols"], [0, 0, 0, "-", "random"], [6, 0, 0, "-", "slow"], [0, 0, 0, "-", "states"], [0, 0, 0, "-", "testing"], [9, 0, 0, "-", "trotter"], [10, 0, 0, "-", "variational"], [0, 0, 0, "-", "wick"]], "ffsim.contract": [[1, 0, 0, "-", "diag_coulomb"], [1, 0, 0, "-", "hamiltonian"], [1, 0, 0, "-", "num_op_sum"]], "ffsim.contract.diag_coulomb": [[1, 1, 1, "", "contract_diag_coulomb"], [1, 1, 1, "", "diag_coulomb_linop"]], "ffsim.contract.hamiltonian": [[1, 1, 1, "", "hamiltonian_linop"], [1, 1, 1, "", "hamiltonian_trace"]], "ffsim.contract.num_op_sum": [[1, 1, 1, "", "contract_num_op_sum"], [1, 1, 1, "", "num_op_sum_linop"]], "ffsim.gates": [[2, 0, 0, "-", "diag_coulomb"], [2, 0, 0, "-", "gates"], [2, 0, 0, "-", "num_op_sum"], [2, 0, 0, "-", "orbital_rotation"]], "ffsim.gates.diag_coulomb": [[2, 1, 1, "", "apply_diag_coulomb_evolution"]], "ffsim.gates.gates": [[2, 1, 1, "", "apply_givens_rotation"], [2, 1, 1, "", "apply_num_interaction"], [2, 1, 1, "", "apply_num_op_prod_interaction"], [2, 1, 1, "", "apply_tunneling_interaction"]], "ffsim.gates.num_op_sum": [[2, 1, 1, "", "apply_num_op_sum_evolution"]], "ffsim.gates.orbital_rotation": [[2, 1, 1, "", "apply_orbital_rotation"], [2, 1, 1, "", "gen_orbital_rotation_index"]], "ffsim.hamiltonians": [[3, 0, 0, "-", "double_factorized_hamiltonian"], [3, 0, 0, "-", "molecular_hamiltonian"]], "ffsim.hamiltonians.double_factorized_hamiltonian": [[3, 2, 1, "", "DoubleFactorizedHamiltonian"], [3, 1, 1, "", "double_factorized_hamiltonian"]], "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian": [[3, 3, 1, "", "constant"], [3, 3, 1, "", "diag_coulomb_mats"], [3, 4, 1, "", "norb"], [3, 3, 1, "", "one_body_tensor"], [3, 3, 1, "", "orbital_rotations"], [3, 5, 1, "", "to_number_representation"], [3, 5, 1, "", "to_z_representation"], [3, 3, 1, "", "z_representation"]], "ffsim.hamiltonians.molecular_hamiltonian": [[3, 2, 1, "", "MolecularHamiltonian"]], "ffsim.hamiltonians.molecular_hamiltonian.MolecularHamiltonian": [[3, 3, 1, "", "constant"], [3, 4, 1, "", "norb"], [3, 3, 1, "", "one_body_tensor"], [3, 3, 1, "", "two_body_tensor"]], "ffsim.linalg": [[4, 0, 0, "-", "double_factorized"], [4, 0, 0, "-", "givens"], [4, 0, 0, "-", "linalg"], [4, 0, 0, "-", "predicates"]], "ffsim.linalg.double_factorized": [[4, 1, 1, "", "double_factorized"], [4, 1, 1, "", "double_factorized_t2"], [4, 1, 1, "", "modified_cholesky"], [4, 1, 1, "", "optimal_diag_coulomb_mats"]], "ffsim.linalg.givens": [[4, 1, 1, "", "apply_matrix_to_slices"], [4, 1, 1, "", "givens_decomposition"], [4, 1, 1, "", "givens_matrix"]], "ffsim.linalg.linalg": [[4, 1, 1, "", "expm_multiply_taylor"], [4, 1, 1, "", "lup"]], "ffsim.linalg.predicates": [[4, 1, 1, "", "is_antihermitian"], [4, 1, 1, "", "is_hermitian"], [4, 1, 1, "", "is_orthogonal"], [4, 1, 1, "", "is_real_symmetric"], [4, 1, 1, "", "is_special_orthogonal"], [4, 1, 1, "", "is_unitary"]], "ffsim.molecular_data": [[0, 2, 1, "", "MolecularData"]], "ffsim.protocols": [[5, 0, 0, "-", "linear_operator"], [5, 0, 0, "-", "trace"]], "ffsim.protocols.linear_operator": [[5, 2, 1, "", "SupportsLinearOperator"], [5, 1, 1, "", "linear_operator"]], "ffsim.protocols.trace": [[5, 2, 1, "", "SupportsTrace"], [5, 1, 1, "", "trace"]], "ffsim.random": [[0, 1, 1, "", "random_antihermitian"], [0, 1, 1, "", "random_hermitian"], [0, 1, 1, "", "random_orthogonal"], [0, 1, 1, "", "random_real_symmetric_matrix"], [0, 1, 1, "", "random_special_orthogonal"], [0, 1, 1, "", "random_statevector"], [0, 1, 1, "", "random_t2_amplitudes"], [0, 1, 1, "", "random_two_body_tensor_real"], [0, 1, 1, "", "random_unitary"]], "ffsim.slow": [[7, 0, 0, "-", "contract"], [8, 0, 0, "-", "gates"]], "ffsim.slow.contract": [[7, 0, 0, "-", "diag_coulomb"], [7, 0, 0, "-", "num_op_sum"]], "ffsim.slow.gates": [[8, 0, 0, "-", "diag_coulomb"], [8, 0, 0, "-", "num_op_sum"], [8, 0, 0, "-", "orbital_rotation"]], "ffsim.slow.gates.diag_coulomb": [[8, 1, 1, "", "apply_diag_coulomb_evolution_in_place_num_rep_numpy"], [8, 1, 1, "", "apply_diag_coulomb_evolution_in_place_num_rep_slow"], [8, 1, 1, "", "apply_diag_coulomb_evolution_in_place_z_rep_slow"]], "ffsim.slow.gates.num_op_sum": [[8, 1, 1, "", "apply_num_op_sum_evolution_in_place_slow"]], "ffsim.slow.gates.orbital_rotation": [[8, 1, 1, "", "apply_givens_rotation_in_place_slow"], [8, 1, 1, "", "apply_single_column_transformation_in_place_slow"], [8, 1, 1, "", "gen_orbital_rotation_index_in_place_slow"]], "ffsim.states": [[0, 1, 1, "", "dim"], [0, 1, 1, "", "dims"], [0, 1, 1, "", "one_hot"], [0, 1, 1, "", "slater_determinant"], [0, 1, 1, "", "slater_determinant_one_rdm"]], "ffsim.testing": [[0, 1, 1, "", "random_nelec"], [0, 1, 1, "", "random_occupied_orbitals"]], "ffsim.trotter": [[9, 0, 0, "-", "qdrift"], [9, 0, 0, "-", "trotter"]], "ffsim.trotter.qdrift": [[9, 1, 1, "", "expectation_squared_diag_coulomb"], [9, 1, 1, "", "one_body_square_decomposition"], [9, 1, 1, "", "qdrift_probabilities"], [9, 1, 1, "", "simulate_qdrift_double_factorized"], [9, 1, 1, "", "spectral_norm_diag_coulomb"], [9, 1, 1, "", "spectral_norm_one_body_tensor"], [9, 1, 1, "", "variance_diag_coulomb"], [9, 1, 1, "", "variance_one_body_tensor"]], "ffsim.trotter.trotter": [[9, 1, 1, "", "simulate_trotter_double_factorized"]], "ffsim.variational": [[10, 0, 0, "-", "lucj"]], "ffsim.variational.lucj": [[10, 2, 1, "", "UCJOperator"], [10, 1, 1, "", "apply_ucj_operator"]], "ffsim.variational.lucj.UCJOperator": [[10, 3, 1, "", "diag_coulomb_mats_alpha_alpha"], [10, 3, 1, "", "diag_coulomb_mats_alpha_beta"], [10, 3, 1, "", "final_orbital_rotation"], [10, 5, 1, "", "from_parameters"], [10, 5, 1, "", "from_t_amplitudes"], [10, 4, 1, "", "n_reps"], [10, 4, 1, "", "norb"], [10, 3, 1, "", "orbital_rotations"], [10, 5, 1, "", "to_parameters"], [10, 5, 1, "", "to_t_amplitudes"]], "ffsim.wick": [[0, 1, 1, "", "expectation_power"], [0, 1, 1, "", "expectation_product"]]}, "objtypes": {"0": "py:module", "1": "py:function", "2": "py:class", "3": "py:attribute", "4": "py:property", "5": "py:method"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "function", "Python function"], "2": ["py", "class", "Python class"], "3": ["py", "attribute", "Python attribute"], "4": ["py", "property", "Python property"], "5": ["py", "method", "Python method"]}, "titleterms": {"ffsim": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14], "packag": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10], "subpackag": [0, 6], "submodul": [0, 1, 2, 3, 4, 5, 7, 8, 9, 10], "molecular_data": 0, "modul": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10], "random": 0, "state": 0, "test": 0, "wick": 0, "content": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 13, 18], "contract": [1, 7], "diag_coulomb": [1, 2, 7, 8], "hamiltonian": [1, 3, 15, 16], "num_op_sum": [1, 2, 7, 8], "gate": [2, 8], "orbital_rot": [2, 8], "double_factorized_hamiltonian": 3, "molecular_hamiltonian": 3, "linalg": 4, "double_factor": 4, "given": 4, "predic": 4, "protocol": 5, "linear_oper": 5, "trace": 5, "slow": [6, 7, 8], "trotter": [9, 16], "qdrift": 9, "variat": 10, "lucj": [10, 17], "api": 12, "refer": 12, "document": 13, "indic": 13, "tabl": 13, "introduct": 14, "orbit": 15, "rotat": 15, "quadrat": 15, "time": 15, "evolut": 15, "diagon": 16, "coulomb": 16, "oper": 16, "doubl": 16, "factor": 16, "simul": 16, "represent": 16, "molecular": 16, "brief": 16, "background": 16, "suzuki": 16, "formula": 16, "implement": 16, "The": 17, "local": 17, "unitari": 17, "cluster": 17, "jastrow": 17, "ansatz": 17, "ucj": 17, "tutori": 18}, "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 package": [[0, "ffsim-package"]], "Subpackages": [[0, "subpackages"], [6, "subpackages"]], "Submodules": [[0, "submodules"], [1, "submodules"], [2, "submodules"], [3, "submodules"], [4, "submodules"], [5, "submodules"], [7, "submodules"], [8, "submodules"], [9, "submodules"], [10, "submodules"]], "ffsim.molecular_data module": [[0, "module-ffsim.molecular_data"]], "ffsim.random module": [[0, "module-ffsim.random"]], "ffsim.states module": [[0, "module-ffsim.states"]], "ffsim.testing module": [[0, "module-ffsim.testing"]], "ffsim.wick module": [[0, "module-ffsim.wick"]], "Module contents": [[0, "module-ffsim"], [1, "module-ffsim.contract"], [2, "module-ffsim.gates"], [3, "module-ffsim.hamiltonians"], [4, "module-ffsim.linalg"], [5, "module-ffsim.protocols"], [6, "module-ffsim.slow"], [7, "module-ffsim.slow.contract"], [8, "module-ffsim.slow.gates"], [9, "module-ffsim.trotter"], [10, "module-ffsim.variational"]], "ffsim.contract package": [[1, "ffsim-contract-package"]], "ffsim.contract.diag_coulomb module": [[1, "module-ffsim.contract.diag_coulomb"]], "ffsim.contract.hamiltonian module": [[1, "module-ffsim.contract.hamiltonian"]], "ffsim.contract.num_op_sum module": [[1, "module-ffsim.contract.num_op_sum"]], "ffsim.gates package": [[2, "ffsim-gates-package"]], "ffsim.gates.diag_coulomb module": [[2, "module-ffsim.gates.diag_coulomb"]], "ffsim.gates.gates module": [[2, "module-ffsim.gates.gates"]], "ffsim.gates.num_op_sum module": [[2, "module-ffsim.gates.num_op_sum"]], "ffsim.gates.orbital_rotation module": [[2, "module-ffsim.gates.orbital_rotation"]], "ffsim.hamiltonians package": [[3, "ffsim-hamiltonians-package"]], "ffsim.hamiltonians.double_factorized_hamiltonian module": [[3, "module-ffsim.hamiltonians.double_factorized_hamiltonian"]], "ffsim.hamiltonians.molecular_hamiltonian module": [[3, "module-ffsim.hamiltonians.molecular_hamiltonian"]], "ffsim.linalg package": [[4, "ffsim-linalg-package"]], "ffsim.linalg.double_factorized module": [[4, "module-ffsim.linalg.double_factorized"]], "ffsim.linalg.givens module": [[4, "module-ffsim.linalg.givens"]], "ffsim.linalg.linalg module": [[4, "module-ffsim.linalg.linalg"]], "ffsim.linalg.predicates module": [[4, "module-ffsim.linalg.predicates"]], "ffsim.protocols package": [[5, "ffsim-protocols-package"]], "ffsim.protocols.linear_operator module": [[5, "module-ffsim.protocols.linear_operator"]], "ffsim.protocols.trace module": [[5, "module-ffsim.protocols.trace"]], "ffsim.slow package": [[6, "ffsim-slow-package"]], "ffsim.slow.contract package": [[7, "ffsim-slow-contract-package"]], "ffsim.slow.contract.diag_coulomb module": [[7, "module-ffsim.slow.contract.diag_coulomb"]], "ffsim.slow.contract.num_op_sum module": [[7, "module-ffsim.slow.contract.num_op_sum"]], "ffsim.slow.gates package": [[8, "ffsim-slow-gates-package"]], "ffsim.slow.gates.diag_coulomb module": [[8, "module-ffsim.slow.gates.diag_coulomb"]], "ffsim.slow.gates.num_op_sum module": [[8, "module-ffsim.slow.gates.num_op_sum"]], "ffsim.slow.gates.orbital_rotation module": [[8, "module-ffsim.slow.gates.orbital_rotation"]], "ffsim.trotter package": [[9, "ffsim-trotter-package"]], "ffsim.trotter.qdrift module": [[9, "module-ffsim.trotter.qdrift"]], "ffsim.trotter.trotter module": [[9, "module-ffsim.trotter.trotter"]], "ffsim.variational package": [[10, "ffsim-variational-package"]], "ffsim.variational.lucj module": [[10, "module-ffsim.variational.lucj"]], "ffsim": [[11, "ffsim"]], "API reference": [[12, "api-reference"]], "ffsim documentation": [[13, "ffsim-documentation"]], "Contents:": [[13, null], [18, null]], "Indices and tables": [[13, "indices-and-tables"]], "Introduction to ffsim": [[14, "Introduction-to-ffsim"]], "Orbital rotations and quadratic Hamiltonians": [[15, "Orbital-rotations-and-quadratic-Hamiltonians"]], "Orbital rotations": [[15, "Orbital-rotations"]], "Time evolution by a quadratic Hamiltonian": [[15, "Time-evolution-by-a-quadratic-Hamiltonian"]], "Diagonal Coulomb operators and double-factorized Trotter simulation": [[16, "Diagonal-Coulomb-operators-and-double-factorized-Trotter-simulation"]], "Double-factorized representation of the molecular Hamiltonian": [[16, "Double-factorized-representation-of-the-molecular-Hamiltonian"]], "Trotter simulation of the double-factorized Hamiltonian": [[16, "Trotter-simulation-of-the-double-factorized-Hamiltonian"]], "Brief background on Trotter-Suzuki formulas": [[16, "Brief-background-on-Trotter-Suzuki-formulas"]], "Implementing Trotter simulation of the double-factorized Hamiltonian": [[16, "Implementing-Trotter-simulation-of-the-double-factorized-Hamiltonian"]], "The local unitary cluster Jastrow (LUCJ) ansatz": [[17, "The-local-unitary-cluster-Jastrow-(LUCJ)-ansatz"], [17, "id1"]], "The unitary cluster Jastrow (UCJ) ansatz": [[17, "The-unitary-cluster-Jastrow-(UCJ)-ansatz"]], "Tutorials": [[18, "tutorials"]]}, "indexentries": {"moleculardata (class in ffsim.molecular_data)": [[0, "ffsim.molecular_data.MolecularData"]], "dim() (in module ffsim.states)": [[0, "ffsim.states.dim"]], "dims() (in module ffsim.states)": [[0, "ffsim.states.dims"]], "expectation_power() (in module ffsim.wick)": [[0, "ffsim.wick.expectation_power"]], "expectation_product() (in module ffsim.wick)": [[0, "ffsim.wick.expectation_product"]], "ffsim": [[0, "module-ffsim"]], "ffsim.molecular_data": [[0, "module-ffsim.molecular_data"]], "ffsim.random": [[0, "module-ffsim.random"]], "ffsim.states": [[0, "module-ffsim.states"]], "ffsim.testing": [[0, "module-ffsim.testing"]], "ffsim.wick": [[0, "module-ffsim.wick"]], "module": [[0, "module-ffsim"], [0, "module-ffsim.molecular_data"], [0, "module-ffsim.random"], [0, "module-ffsim.states"], [0, "module-ffsim.testing"], [0, "module-ffsim.wick"], [1, "module-ffsim.contract"], [1, "module-ffsim.contract.diag_coulomb"], [1, "module-ffsim.contract.hamiltonian"], [1, "module-ffsim.contract.num_op_sum"], [2, "module-ffsim.gates"], [2, "module-ffsim.gates.diag_coulomb"], [2, "module-ffsim.gates.gates"], [2, "module-ffsim.gates.num_op_sum"], [2, "module-ffsim.gates.orbital_rotation"], [3, "module-ffsim.hamiltonians"], [3, "module-ffsim.hamiltonians.double_factorized_hamiltonian"], [3, "module-ffsim.hamiltonians.molecular_hamiltonian"], [4, "module-ffsim.linalg"], [4, "module-ffsim.linalg.double_factorized"], [4, "module-ffsim.linalg.givens"], [4, "module-ffsim.linalg.linalg"], [4, "module-ffsim.linalg.predicates"], [5, "module-ffsim.protocols"], [5, "module-ffsim.protocols.linear_operator"], [5, "module-ffsim.protocols.trace"], [6, "module-ffsim.slow"], [7, "module-ffsim.slow.contract"], [7, "module-ffsim.slow.contract.diag_coulomb"], [7, "module-ffsim.slow.contract.num_op_sum"], [8, "module-ffsim.slow.gates"], [8, "module-ffsim.slow.gates.diag_coulomb"], [8, "module-ffsim.slow.gates.num_op_sum"], [8, "module-ffsim.slow.gates.orbital_rotation"], [9, "module-ffsim.trotter"], [9, "module-ffsim.trotter.qdrift"], [9, "module-ffsim.trotter.trotter"], [10, "module-ffsim.variational"], [10, "module-ffsim.variational.lucj"]], "one_hot() (in module ffsim.states)": [[0, "ffsim.states.one_hot"]], "random_antihermitian() (in module ffsim.random)": [[0, "ffsim.random.random_antihermitian"]], "random_hermitian() (in module ffsim.random)": [[0, "ffsim.random.random_hermitian"]], "random_nelec() (in module ffsim.testing)": [[0, "ffsim.testing.random_nelec"]], "random_occupied_orbitals() (in module ffsim.testing)": [[0, "ffsim.testing.random_occupied_orbitals"]], "random_orthogonal() (in module ffsim.random)": [[0, "ffsim.random.random_orthogonal"]], "random_real_symmetric_matrix() (in module ffsim.random)": [[0, "ffsim.random.random_real_symmetric_matrix"]], "random_special_orthogonal() (in module ffsim.random)": [[0, "ffsim.random.random_special_orthogonal"]], "random_statevector() (in module ffsim.random)": [[0, "ffsim.random.random_statevector"]], "random_t2_amplitudes() (in module ffsim.random)": [[0, "ffsim.random.random_t2_amplitudes"]], "random_two_body_tensor_real() (in module ffsim.random)": [[0, "ffsim.random.random_two_body_tensor_real"]], "random_unitary() (in module ffsim.random)": [[0, "ffsim.random.random_unitary"]], "slater_determinant() (in module ffsim.states)": [[0, "ffsim.states.slater_determinant"]], "slater_determinant_one_rdm() (in module ffsim.states)": [[0, "ffsim.states.slater_determinant_one_rdm"]], "contract_diag_coulomb() (in module ffsim.contract.diag_coulomb)": [[1, "ffsim.contract.diag_coulomb.contract_diag_coulomb"]], "contract_num_op_sum() (in module ffsim.contract.num_op_sum)": [[1, "ffsim.contract.num_op_sum.contract_num_op_sum"]], "diag_coulomb_linop() (in module ffsim.contract.diag_coulomb)": [[1, "ffsim.contract.diag_coulomb.diag_coulomb_linop"]], "ffsim.contract": [[1, "module-ffsim.contract"]], "ffsim.contract.diag_coulomb": [[1, "module-ffsim.contract.diag_coulomb"]], "ffsim.contract.hamiltonian": [[1, "module-ffsim.contract.hamiltonian"]], "ffsim.contract.num_op_sum": [[1, "module-ffsim.contract.num_op_sum"]], "hamiltonian_linop() (in module ffsim.contract.hamiltonian)": [[1, "ffsim.contract.hamiltonian.hamiltonian_linop"]], "hamiltonian_trace() (in module ffsim.contract.hamiltonian)": [[1, "ffsim.contract.hamiltonian.hamiltonian_trace"]], "num_op_sum_linop() (in module ffsim.contract.num_op_sum)": [[1, "ffsim.contract.num_op_sum.num_op_sum_linop"]], "apply_diag_coulomb_evolution() (in module ffsim.gates.diag_coulomb)": [[2, "ffsim.gates.diag_coulomb.apply_diag_coulomb_evolution"]], "apply_givens_rotation() (in module ffsim.gates.gates)": [[2, "ffsim.gates.gates.apply_givens_rotation"]], "apply_num_interaction() (in module ffsim.gates.gates)": [[2, "ffsim.gates.gates.apply_num_interaction"]], "apply_num_op_prod_interaction() (in module ffsim.gates.gates)": [[2, "ffsim.gates.gates.apply_num_op_prod_interaction"]], "apply_num_op_sum_evolution() (in module ffsim.gates.num_op_sum)": [[2, "ffsim.gates.num_op_sum.apply_num_op_sum_evolution"]], "apply_orbital_rotation() (in module ffsim.gates.orbital_rotation)": [[2, "ffsim.gates.orbital_rotation.apply_orbital_rotation"]], "apply_tunneling_interaction() (in module ffsim.gates.gates)": [[2, "ffsim.gates.gates.apply_tunneling_interaction"]], "ffsim.gates": [[2, "module-ffsim.gates"]], "ffsim.gates.diag_coulomb": [[2, "module-ffsim.gates.diag_coulomb"]], "ffsim.gates.gates": [[2, "module-ffsim.gates.gates"]], "ffsim.gates.num_op_sum": [[2, "module-ffsim.gates.num_op_sum"]], "ffsim.gates.orbital_rotation": [[2, "module-ffsim.gates.orbital_rotation"]], "gen_orbital_rotation_index() (in module ffsim.gates.orbital_rotation)": [[2, "ffsim.gates.orbital_rotation.gen_orbital_rotation_index"]], "doublefactorizedhamiltonian (class in ffsim.hamiltonians.double_factorized_hamiltonian)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian"]], "molecularhamiltonian (class in ffsim.hamiltonians.molecular_hamiltonian)": [[3, "ffsim.hamiltonians.molecular_hamiltonian.MolecularHamiltonian"]], "constant (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian attribute)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.constant"]], "constant (ffsim.hamiltonians.molecular_hamiltonian.molecularhamiltonian attribute)": [[3, "ffsim.hamiltonians.molecular_hamiltonian.MolecularHamiltonian.constant"]], "diag_coulomb_mats (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian attribute)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.diag_coulomb_mats"]], "double_factorized_hamiltonian() (in module ffsim.hamiltonians.double_factorized_hamiltonian)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.double_factorized_hamiltonian"]], "ffsim.hamiltonians": [[3, "module-ffsim.hamiltonians"]], "ffsim.hamiltonians.double_factorized_hamiltonian": [[3, "module-ffsim.hamiltonians.double_factorized_hamiltonian"]], "ffsim.hamiltonians.molecular_hamiltonian": [[3, "module-ffsim.hamiltonians.molecular_hamiltonian"]], "norb (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian property)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.norb"]], "norb (ffsim.hamiltonians.molecular_hamiltonian.molecularhamiltonian property)": [[3, "ffsim.hamiltonians.molecular_hamiltonian.MolecularHamiltonian.norb"]], "one_body_tensor (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian attribute)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.one_body_tensor"]], "one_body_tensor (ffsim.hamiltonians.molecular_hamiltonian.molecularhamiltonian attribute)": [[3, "ffsim.hamiltonians.molecular_hamiltonian.MolecularHamiltonian.one_body_tensor"]], "orbital_rotations (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian attribute)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.orbital_rotations"]], "to_number_representation() (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian method)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.to_number_representation"]], "to_z_representation() (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian method)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.to_z_representation"]], "two_body_tensor (ffsim.hamiltonians.molecular_hamiltonian.molecularhamiltonian attribute)": [[3, "ffsim.hamiltonians.molecular_hamiltonian.MolecularHamiltonian.two_body_tensor"]], "z_representation (ffsim.hamiltonians.double_factorized_hamiltonian.doublefactorizedhamiltonian attribute)": [[3, "ffsim.hamiltonians.double_factorized_hamiltonian.DoubleFactorizedHamiltonian.z_representation"]], "apply_matrix_to_slices() (in module ffsim.linalg.givens)": [[4, "ffsim.linalg.givens.apply_matrix_to_slices"]], "double_factorized() (in module ffsim.linalg.double_factorized)": [[4, "ffsim.linalg.double_factorized.double_factorized"]], "double_factorized_t2() (in module ffsim.linalg.double_factorized)": [[4, "ffsim.linalg.double_factorized.double_factorized_t2"]], "expm_multiply_taylor() (in module ffsim.linalg.linalg)": [[4, "ffsim.linalg.linalg.expm_multiply_taylor"]], "ffsim.linalg": [[4, "module-ffsim.linalg"]], "ffsim.linalg.double_factorized": [[4, "module-ffsim.linalg.double_factorized"]], "ffsim.linalg.givens": [[4, "module-ffsim.linalg.givens"]], "ffsim.linalg.linalg": [[4, "module-ffsim.linalg.linalg"]], "ffsim.linalg.predicates": [[4, "module-ffsim.linalg.predicates"]], "givens_decomposition() (in module ffsim.linalg.givens)": [[4, "ffsim.linalg.givens.givens_decomposition"]], "givens_matrix() (in module ffsim.linalg.givens)": [[4, "ffsim.linalg.givens.givens_matrix"]], "is_antihermitian() (in module ffsim.linalg.predicates)": [[4, "ffsim.linalg.predicates.is_antihermitian"]], "is_hermitian() (in module ffsim.linalg.predicates)": [[4, "ffsim.linalg.predicates.is_hermitian"]], "is_orthogonal() (in module ffsim.linalg.predicates)": [[4, "ffsim.linalg.predicates.is_orthogonal"]], "is_real_symmetric() (in module ffsim.linalg.predicates)": [[4, "ffsim.linalg.predicates.is_real_symmetric"]], "is_special_orthogonal() (in module ffsim.linalg.predicates)": [[4, "ffsim.linalg.predicates.is_special_orthogonal"]], "is_unitary() (in module ffsim.linalg.predicates)": [[4, "ffsim.linalg.predicates.is_unitary"]], "lup() (in module ffsim.linalg.linalg)": [[4, "ffsim.linalg.linalg.lup"]], "modified_cholesky() (in module ffsim.linalg.double_factorized)": [[4, "ffsim.linalg.double_factorized.modified_cholesky"]], "optimal_diag_coulomb_mats() (in module ffsim.linalg.double_factorized)": [[4, "ffsim.linalg.double_factorized.optimal_diag_coulomb_mats"]], "supportslinearoperator (class in ffsim.protocols.linear_operator)": [[5, "ffsim.protocols.linear_operator.SupportsLinearOperator"]], "supportstrace (class in ffsim.protocols.trace)": [[5, "ffsim.protocols.trace.SupportsTrace"]], "ffsim.protocols": [[5, "module-ffsim.protocols"]], "ffsim.protocols.linear_operator": [[5, "module-ffsim.protocols.linear_operator"]], "ffsim.protocols.trace": [[5, "module-ffsim.protocols.trace"]], "linear_operator() (in module ffsim.protocols.linear_operator)": [[5, "ffsim.protocols.linear_operator.linear_operator"]], "trace() (in module ffsim.protocols.trace)": [[5, "ffsim.protocols.trace.trace"]], "ffsim.slow": [[6, "module-ffsim.slow"]], "ffsim.slow.contract": [[7, "module-ffsim.slow.contract"]], "ffsim.slow.contract.diag_coulomb": [[7, "module-ffsim.slow.contract.diag_coulomb"]], "ffsim.slow.contract.num_op_sum": [[7, "module-ffsim.slow.contract.num_op_sum"]], "apply_diag_coulomb_evolution_in_place_num_rep_numpy() (in module ffsim.slow.gates.diag_coulomb)": [[8, "ffsim.slow.gates.diag_coulomb.apply_diag_coulomb_evolution_in_place_num_rep_numpy"]], "apply_diag_coulomb_evolution_in_place_num_rep_slow() (in module ffsim.slow.gates.diag_coulomb)": [[8, "ffsim.slow.gates.diag_coulomb.apply_diag_coulomb_evolution_in_place_num_rep_slow"]], "apply_diag_coulomb_evolution_in_place_z_rep_slow() (in module ffsim.slow.gates.diag_coulomb)": [[8, "ffsim.slow.gates.diag_coulomb.apply_diag_coulomb_evolution_in_place_z_rep_slow"]], "apply_givens_rotation_in_place_slow() (in module ffsim.slow.gates.orbital_rotation)": [[8, "ffsim.slow.gates.orbital_rotation.apply_givens_rotation_in_place_slow"]], "apply_num_op_sum_evolution_in_place_slow() (in module ffsim.slow.gates.num_op_sum)": [[8, "ffsim.slow.gates.num_op_sum.apply_num_op_sum_evolution_in_place_slow"]], "apply_single_column_transformation_in_place_slow() (in module ffsim.slow.gates.orbital_rotation)": [[8, "ffsim.slow.gates.orbital_rotation.apply_single_column_transformation_in_place_slow"]], "ffsim.slow.gates": [[8, "module-ffsim.slow.gates"]], "ffsim.slow.gates.diag_coulomb": [[8, "module-ffsim.slow.gates.diag_coulomb"]], "ffsim.slow.gates.num_op_sum": [[8, "module-ffsim.slow.gates.num_op_sum"]], "ffsim.slow.gates.orbital_rotation": [[8, "module-ffsim.slow.gates.orbital_rotation"]], "gen_orbital_rotation_index_in_place_slow() (in module ffsim.slow.gates.orbital_rotation)": [[8, "ffsim.slow.gates.orbital_rotation.gen_orbital_rotation_index_in_place_slow"]], "expectation_squared_diag_coulomb() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.expectation_squared_diag_coulomb"]], "ffsim.trotter": [[9, "module-ffsim.trotter"]], "ffsim.trotter.qdrift": [[9, "module-ffsim.trotter.qdrift"]], "ffsim.trotter.trotter": [[9, "module-ffsim.trotter.trotter"]], "one_body_square_decomposition() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.one_body_square_decomposition"]], "qdrift_probabilities() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.qdrift_probabilities"]], "simulate_qdrift_double_factorized() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.simulate_qdrift_double_factorized"]], "simulate_trotter_double_factorized() (in module ffsim.trotter.trotter)": [[9, "ffsim.trotter.trotter.simulate_trotter_double_factorized"]], "spectral_norm_diag_coulomb() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.spectral_norm_diag_coulomb"]], "spectral_norm_one_body_tensor() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.spectral_norm_one_body_tensor"]], "variance_diag_coulomb() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.variance_diag_coulomb"]], "variance_one_body_tensor() (in module ffsim.trotter.qdrift)": [[9, "ffsim.trotter.qdrift.variance_one_body_tensor"]], "ucjoperator (class in ffsim.variational.lucj)": [[10, "ffsim.variational.lucj.UCJOperator"]], "apply_ucj_operator() (in module ffsim.variational.lucj)": [[10, "ffsim.variational.lucj.apply_ucj_operator"]], "diag_coulomb_mats_alpha_alpha (ffsim.variational.lucj.ucjoperator attribute)": [[10, "ffsim.variational.lucj.UCJOperator.diag_coulomb_mats_alpha_alpha"]], "diag_coulomb_mats_alpha_beta (ffsim.variational.lucj.ucjoperator attribute)": [[10, "ffsim.variational.lucj.UCJOperator.diag_coulomb_mats_alpha_beta"]], "ffsim.variational": [[10, "module-ffsim.variational"]], "ffsim.variational.lucj": [[10, "module-ffsim.variational.lucj"]], "final_orbital_rotation (ffsim.variational.lucj.ucjoperator attribute)": [[10, "ffsim.variational.lucj.UCJOperator.final_orbital_rotation"]], "from_parameters() (ffsim.variational.lucj.ucjoperator static method)": [[10, "ffsim.variational.lucj.UCJOperator.from_parameters"]], "from_t_amplitudes() (ffsim.variational.lucj.ucjoperator static method)": [[10, "ffsim.variational.lucj.UCJOperator.from_t_amplitudes"]], "n_reps (ffsim.variational.lucj.ucjoperator property)": [[10, "ffsim.variational.lucj.UCJOperator.n_reps"]], "norb (ffsim.variational.lucj.ucjoperator property)": [[10, "ffsim.variational.lucj.UCJOperator.norb"]], "orbital_rotations (ffsim.variational.lucj.ucjoperator attribute)": [[10, "ffsim.variational.lucj.UCJOperator.orbital_rotations"]], "to_parameters() (ffsim.variational.lucj.ucjoperator method)": [[10, "ffsim.variational.lucj.UCJOperator.to_parameters"]], "to_t_amplitudes() (ffsim.variational.lucj.ucjoperator method)": [[10, "ffsim.variational.lucj.UCJOperator.to_t_amplitudes"]]}}) \ No newline at end of file diff --git a/tutorials/01-introduction.html b/tutorials/01-introduction.html index 866040844..793d8097f 100644 --- a/tutorials/01-introduction.html +++ b/tutorials/01-introduction.html @@ -5,13 +5,13 @@ - Introduction to ffsim — ffsim 0.0.5 documentation + Introduction to ffsim — ffsim 0.0.6 documentation - + diff --git a/tutorials/01-introduction.ipynb b/tutorials/01-introduction.ipynb index da461b7a9..367f691d4 100644 --- a/tutorials/01-introduction.ipynb +++ b/tutorials/01-introduction.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:52.136968Z", - "iopub.status.busy": "2023-09-20T01:34:52.136627Z", - "iopub.status.idle": "2023-09-20T01:34:52.429111Z", - "shell.execute_reply": "2023-09-20T01:34:52.428582Z" + "iopub.execute_input": "2023-09-20T17:46:13.131136Z", + "iopub.status.busy": "2023-09-20T17:46:13.130880Z", + "iopub.status.idle": "2023-09-20T17:46:13.438663Z", + "shell.execute_reply": "2023-09-20T17:46:13.438042Z" } }, "outputs": [], @@ -62,10 +62,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:52.432828Z", - "iopub.status.busy": "2023-09-20T01:34:52.431752Z", - "iopub.status.idle": "2023-09-20T01:34:52.436656Z", - "shell.execute_reply": "2023-09-20T01:34:52.436203Z" + "iopub.execute_input": "2023-09-20T17:46:13.442948Z", + "iopub.status.busy": "2023-09-20T17:46:13.442359Z", + "iopub.status.idle": "2023-09-20T17:46:13.447538Z", + "shell.execute_reply": "2023-09-20T17:46:13.447069Z" } }, "outputs": [], @@ -92,10 +92,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:52.440313Z", - "iopub.status.busy": "2023-09-20T01:34:52.439379Z", - "iopub.status.idle": "2023-09-20T01:34:52.443177Z", - "shell.execute_reply": "2023-09-20T01:34:52.442736Z" + "iopub.execute_input": "2023-09-20T17:46:13.451439Z", + "iopub.status.busy": "2023-09-20T17:46:13.450378Z", + "iopub.status.idle": "2023-09-20T17:46:13.454412Z", + "shell.execute_reply": "2023-09-20T17:46:13.453962Z" } }, "outputs": [], diff --git a/tutorials/02-orbital-rotation.html b/tutorials/02-orbital-rotation.html index 88e0cf24b..272f20440 100644 --- a/tutorials/02-orbital-rotation.html +++ b/tutorials/02-orbital-rotation.html @@ -5,13 +5,13 @@ - Orbital rotations and quadratic Hamiltonians — ffsim 0.0.5 documentation + Orbital rotations and quadratic Hamiltonians — ffsim 0.0.6 documentation - + diff --git a/tutorials/02-orbital-rotation.ipynb b/tutorials/02-orbital-rotation.ipynb index 9453e4632..cb6816d59 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-09-20T01:34:54.037186Z", - "iopub.status.busy": "2023-09-20T01:34:54.036843Z", - "iopub.status.idle": "2023-09-20T01:34:54.310698Z", - "shell.execute_reply": "2023-09-20T01:34:54.310166Z" + "iopub.execute_input": "2023-09-20T17:46:14.977269Z", + "iopub.status.busy": "2023-09-20T17:46:14.977056Z", + "iopub.status.idle": "2023-09-20T17:46:15.284786Z", + "shell.execute_reply": "2023-09-20T17:46:15.284154Z" } }, "outputs": [], @@ -111,10 +111,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:54.314980Z", - "iopub.status.busy": "2023-09-20T01:34:54.313975Z", - "iopub.status.idle": "2023-09-20T01:34:54.338879Z", - "shell.execute_reply": "2023-09-20T01:34:54.338397Z" + "iopub.execute_input": "2023-09-20T17:46:15.289025Z", + "iopub.status.busy": "2023-09-20T17:46:15.287674Z", + "iopub.status.idle": "2023-09-20T17:46:15.314430Z", + "shell.execute_reply": "2023-09-20T17:46:15.313865Z" } }, "outputs": [], @@ -160,10 +160,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:54.342618Z", - "iopub.status.busy": "2023-09-20T01:34:54.341703Z", - "iopub.status.idle": "2023-09-20T01:34:54.353128Z", - "shell.execute_reply": "2023-09-20T01:34:54.352653Z" + "iopub.execute_input": "2023-09-20T17:46:15.318890Z", + "iopub.status.busy": "2023-09-20T17:46:15.317903Z", + "iopub.status.idle": "2023-09-20T17:46:15.329348Z", + "shell.execute_reply": "2023-09-20T17:46:15.328828Z" } }, "outputs": [], @@ -203,10 +203,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:54.357099Z", - "iopub.status.busy": "2023-09-20T01:34:54.355798Z", - "iopub.status.idle": "2023-09-20T01:34:54.361562Z", - "shell.execute_reply": "2023-09-20T01:34:54.361093Z" + "iopub.execute_input": "2023-09-20T17:46:15.333773Z", + "iopub.status.busy": "2023-09-20T17:46:15.332377Z", + "iopub.status.idle": "2023-09-20T17:46:15.338701Z", + "shell.execute_reply": "2023-09-20T17:46:15.338222Z" } }, "outputs": [], diff --git a/tutorials/03-double-factorized.html b/tutorials/03-double-factorized.html index 6f79bc4a0..2809172fc 100644 --- a/tutorials/03-double-factorized.html +++ b/tutorials/03-double-factorized.html @@ -5,13 +5,13 @@ - Diagonal Coulomb operators and double-factorized Trotter simulation — ffsim 0.0.5 documentation + Diagonal Coulomb operators and double-factorized Trotter simulation — ffsim 0.0.6 documentation - + @@ -136,44 +136,44 @@

Double-factorized representation of the molecular Hamiltonian
-Hartree Fock energy: -0.837796382593709
+Hartree Fock energy: -0.8377963825937088
 

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.

@@ -352,7 +352,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.999027574408349
 

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

@@ -379,7 +379,7 @@

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

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.

@@ -408,7 +408,7 @@

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

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

@@ -436,7 +436,7 @@

Implementing Trotter simulation of the double-factorized Hamiltonian
-Fidelity of Trotter-evolved state with exact state: 0.9999999336740059
+Fidelity of Trotter-evolved state with exact state: 0.9999999336740057
 
diff --git a/tutorials/03-double-factorized.ipynb b/tutorials/03-double-factorized.ipynb index 00097a483..99b3e92bf 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-09-20T01:34:55.840954Z", - "iopub.status.busy": "2023-09-20T01:34:55.840563Z", - "iopub.status.idle": "2023-09-20T01:34:56.218443Z", - "shell.execute_reply": "2023-09-20T01:34:56.217867Z" + "iopub.execute_input": "2023-09-20T17:46:17.194975Z", + "iopub.status.busy": "2023-09-20T17:46:17.194538Z", + "iopub.status.idle": "2023-09-20T17:46:17.605270Z", + "shell.execute_reply": "2023-09-20T17:46:17.604710Z" } }, "outputs": [ @@ -93,10 +93,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.222374Z", - "iopub.status.busy": "2023-09-20T01:34:56.221359Z", - "iopub.status.idle": "2023-09-20T01:34:56.228537Z", - "shell.execute_reply": "2023-09-20T01:34:56.228058Z" + "iopub.execute_input": "2023-09-20T17:46:17.622334Z", + "iopub.status.busy": "2023-09-20T17:46:17.621749Z", + "iopub.status.idle": "2023-09-20T17:46:17.628257Z", + "shell.execute_reply": "2023-09-20T17:46:17.627734Z" } }, "outputs": [ @@ -111,44 +111,44 @@ " [-3.07220771e-16 -6.77238770e-01]]\n", "\n", "Two-body tensor:\n", - "[[[[5.23173938e-01 1.94289029e-16]\n", - " [1.94289029e-16 5.33545754e-01]]\n", + "[[[[5.23173938e-01 1.57437591e-16]\n", + " [1.57437591e-16 5.33545754e-01]]\n", "\n", - " [[1.94289029e-16 2.48240570e-01]\n", - " [2.48240570e-01 8.32667268e-17]]]\n", + " [[2.12704463e-16 2.48240570e-01]\n", + " [2.48240570e-01 1.61492903e-16]]]\n", "\n", "\n", - " [[[1.94289029e-16 2.48240570e-01]\n", - " [2.48240570e-01 8.32667268e-17]]\n", + " [[[2.12704463e-16 2.48240570e-01]\n", + " [2.48240570e-01 1.61492903e-16]]\n", "\n", - " [[5.33545754e-01 1.11022302e-16]\n", - " [1.11022302e-16 5.53132024e-01]]]]\n", + " [[5.33545754e-01 1.24884750e-16]\n", + " [1.24884750e-16 5.53132024e-01]]]]\n", "\n", "Double-factorized representation\n", "--------------------------------\n", "One-body tensor:\n", - "[[-1.21318608e+00 -4.05183033e-16]\n", - " [-4.59876437e-16 -1.07792507e+00]]\n", + "[[-1.21318608e+00 -4.25870402e-16]\n", + " [-4.76015378e-16 -1.07792507e+00]]\n", "\n", "Diagonal Coulomb matrices:\n", - "[[[ 5.14653029e-001 5.33545754e-001]\n", - " [ 5.33545754e-001 5.53132024e-001]]\n", + "[[[ 5.14653029e-01 5.33545754e-01]\n", + " [ 5.33545754e-01 5.53132024e-01]]\n", "\n", - " [[ 2.48240570e-001 -2.48240570e-001]\n", - " [-2.48240570e-001 2.48240570e-001]]\n", + " [[ 2.48240570e-01 -2.48240570e-01]\n", + " [-2.48240570e-01 2.48240570e-01]]\n", "\n", - " [[ 5.96958401e-121 -7.13206008e-062]\n", - " [-7.13206008e-062 8.52090881e-003]]]\n", + " [[ 1.50800163e-59 -3.58462611e-31]\n", + " [-3.58462611e-31 8.52090881e-03]]]\n", "\n", "Orbital rotations:\n", - "[[[-1.00000000e+00 4.25128053e-15]\n", - " [ 4.25128053e-15 1.00000000e+00]]\n", + "[[[-1.00000000e+00 8.24520980e-15]\n", + " [ 8.24520980e-15 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", - " [[ 2.89310728e-30 -1.00000000e+00]\n", - " [-1.00000000e+00 -2.89310728e-30]]]\n" + " [[ 6.48603030e-15 -1.00000000e+00]\n", + " [-1.00000000e+00 -6.48603030e-15]]]\n" ] } ], @@ -227,10 +227,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.231096Z", - "iopub.status.busy": "2023-09-20T01:34:56.230741Z", - "iopub.status.idle": "2023-09-20T01:34:56.235201Z", - "shell.execute_reply": "2023-09-20T01:34:56.234751Z" + "iopub.execute_input": "2023-09-20T17:46:17.631023Z", + "iopub.status.busy": "2023-09-20T17:46:17.630464Z", + "iopub.status.idle": "2023-09-20T17:46:17.635183Z", + "shell.execute_reply": "2023-09-20T17:46:17.634736Z" } }, "outputs": [], @@ -285,10 +285,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.237589Z", - "iopub.status.busy": "2023-09-20T01:34:56.237231Z", - "iopub.status.idle": "2023-09-20T01:34:56.240867Z", - "shell.execute_reply": "2023-09-20T01:34:56.240424Z" + "iopub.execute_input": "2023-09-20T17:46:17.637670Z", + "iopub.status.busy": "2023-09-20T17:46:17.637308Z", + "iopub.status.idle": "2023-09-20T17:46:17.641139Z", + "shell.execute_reply": "2023-09-20T17:46:17.640680Z" } }, "outputs": [], @@ -325,10 +325,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.243205Z", - "iopub.status.busy": "2023-09-20T01:34:56.242855Z", - "iopub.status.idle": "2023-09-20T01:34:56.247340Z", - "shell.execute_reply": "2023-09-20T01:34:56.246908Z" + "iopub.execute_input": "2023-09-20T17:46:17.643737Z", + "iopub.status.busy": "2023-09-20T17:46:17.643196Z", + "iopub.status.idle": "2023-09-20T17:46:17.647995Z", + "shell.execute_reply": "2023-09-20T17:46:17.647549Z" } }, "outputs": [ @@ -336,7 +336,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Hartree Fock energy: -0.837796382593709\n" + "Hartree Fock energy: -0.8377963825937088\n" ] } ], @@ -367,10 +367,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.249736Z", - "iopub.status.busy": "2023-09-20T01:34:56.249390Z", - "iopub.status.idle": "2023-09-20T01:34:56.258321Z", - "shell.execute_reply": "2023-09-20T01:34:56.257831Z" + "iopub.execute_input": "2023-09-20T17:46:17.650603Z", + "iopub.status.busy": "2023-09-20T17:46:17.650030Z", + "iopub.status.idle": "2023-09-20T17:46:17.662198Z", + "shell.execute_reply": "2023-09-20T17:46:17.661755Z" } }, "outputs": [ @@ -409,10 +409,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.260674Z", - "iopub.status.busy": "2023-09-20T01:34:56.260322Z", - "iopub.status.idle": "2023-09-20T01:34:56.267335Z", - "shell.execute_reply": "2023-09-20T01:34:56.266865Z" + "iopub.execute_input": "2023-09-20T17:46:17.664757Z", + "iopub.status.busy": "2023-09-20T17:46:17.664216Z", + "iopub.status.idle": "2023-09-20T17:46:17.671931Z", + "shell.execute_reply": "2023-09-20T17:46:17.671466Z" } }, "outputs": [ @@ -420,7 +420,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.999027574408349\n" ] } ], @@ -450,10 +450,10 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.269551Z", - "iopub.status.busy": "2023-09-20T01:34:56.269374Z", - "iopub.status.idle": "2023-09-20T01:34:56.303345Z", - "shell.execute_reply": "2023-09-20T01:34:56.302913Z" + "iopub.execute_input": "2023-09-20T17:46:17.674637Z", + "iopub.status.busy": "2023-09-20T17:46:17.674119Z", + "iopub.status.idle": "2023-09-20T17:46:17.715452Z", + "shell.execute_reply": "2023-09-20T17:46:17.714903Z" } }, "outputs": [ @@ -461,7 +461,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9999906233109653\n" + "Fidelity of Trotter-evolved state with exact state: 0.9999906233109657\n" ] } ], @@ -493,10 +493,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.305778Z", - "iopub.status.busy": "2023-09-20T01:34:56.305495Z", - "iopub.status.idle": "2023-09-20T01:34:56.333099Z", - "shell.execute_reply": "2023-09-20T01:34:56.332671Z" + "iopub.execute_input": "2023-09-20T17:46:17.718205Z", + "iopub.status.busy": "2023-09-20T17:46:17.717998Z", + "iopub.status.idle": "2023-09-20T17:46:17.752827Z", + "shell.execute_reply": "2023-09-20T17:46:17.752049Z" } }, "outputs": [ @@ -504,7 +504,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9999906233109653\n" + "Fidelity of Trotter-evolved state with exact state: 0.9999906233109657\n" ] } ], @@ -535,10 +535,10 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2023-09-20T01:34:56.336145Z", - "iopub.status.busy": "2023-09-20T01:34:56.335857Z", - "iopub.status.idle": "2023-09-20T01:34:56.347760Z", - "shell.execute_reply": "2023-09-20T01:34:56.347303Z" + "iopub.execute_input": "2023-09-20T17:46:17.755461Z", + "iopub.status.busy": "2023-09-20T17:46:17.755203Z", + "iopub.status.idle": "2023-09-20T17:46:17.770614Z", + "shell.execute_reply": "2023-09-20T17:46:17.769998Z" } }, "outputs": [ @@ -546,7 +546,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9999999336740059\n" + "Fidelity of Trotter-evolved state with exact state: 0.9999999336740057\n" ] } ], diff --git a/tutorials/04-lucj.html b/tutorials/04-lucj.html index dff044635..40530e2e6 100644 --- a/tutorials/04-lucj.html +++ b/tutorials/04-lucj.html @@ -5,13 +5,13 @@ - The local unitary cluster Jastrow (LUCJ) ansatz — ffsim 0.0.5 documentation + The local unitary cluster Jastrow (LUCJ) ansatz — ffsim 0.0.6 documentation - + @@ -125,8 +125,8 @@

The unitary cluster Jastrow (UCJ) ansatz
-E(CCSD) = -0.970773076716434  E_corr = -0.1329766941227252
-Energy at initialialization: -0.9696246123746335
+E(CCSD) = -0.9707730767164341  E_corr = -0.1329766941227253
+Energy at initialialization: -0.9696246123746332
 

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.)

@@ -165,15 +165,15 @@

The unitary cluster Jastrow (UCJ) ansatz - Tutorials — ffsim 0.0.5 documentation + Tutorials — ffsim 0.0.6 documentation - +