diff --git a/dev/.buildinfo b/dev/.buildinfo index f9be41a96..cc5296178 100644 --- a/dev/.buildinfo +++ b/dev/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file records the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 3c0f095aecba750428a23f29c8c29931 +config: 76fb755d53a8be9ff9b6e43a6c01c555 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/dev/.doctrees/environment.pickle b/dev/.doctrees/environment.pickle index a5e9693ce..7a25280a0 100644 Binary files a/dev/.doctrees/environment.pickle and b/dev/.doctrees/environment.pickle differ diff --git a/dev/.doctrees/explanations/hamiltonians.doctree b/dev/.doctrees/explanations/hamiltonians.doctree index 07cedb918..504e33f6e 100644 Binary files a/dev/.doctrees/explanations/hamiltonians.doctree and b/dev/.doctrees/explanations/hamiltonians.doctree differ diff --git a/dev/.doctrees/how-to-guides/entanglement-forging.doctree b/dev/.doctrees/how-to-guides/entanglement-forging.doctree index b6ee2235e..c4a6636bc 100644 Binary files a/dev/.doctrees/how-to-guides/entanglement-forging.doctree and b/dev/.doctrees/how-to-guides/entanglement-forging.doctree differ diff --git a/dev/.doctrees/how-to-guides/fermion-operator.doctree b/dev/.doctrees/how-to-guides/fermion-operator.doctree index e2e104df7..1c9a1894d 100644 Binary files a/dev/.doctrees/how-to-guides/fermion-operator.doctree and b/dev/.doctrees/how-to-guides/fermion-operator.doctree differ diff --git a/dev/.doctrees/how-to-guides/lucj.doctree b/dev/.doctrees/how-to-guides/lucj.doctree index 050d74ecf..d5a930743 100644 Binary files a/dev/.doctrees/how-to-guides/lucj.doctree and b/dev/.doctrees/how-to-guides/lucj.doctree differ diff --git a/dev/.doctrees/how-to-guides/qiskit-circuits.doctree b/dev/.doctrees/how-to-guides/qiskit-circuits.doctree index 12947977c..b8e8f3037 100644 Binary files a/dev/.doctrees/how-to-guides/qiskit-circuits.doctree and b/dev/.doctrees/how-to-guides/qiskit-circuits.doctree differ diff --git a/dev/.doctrees/how-to-guides/qiskit-sampler.doctree b/dev/.doctrees/how-to-guides/qiskit-sampler.doctree index b941ecdb1..4d958a8eb 100644 Binary files a/dev/.doctrees/how-to-guides/qiskit-sampler.doctree and b/dev/.doctrees/how-to-guides/qiskit-sampler.doctree differ diff --git a/dev/.doctrees/nbsphinx/explanations/hamiltonians.ipynb b/dev/.doctrees/nbsphinx/explanations/hamiltonians.ipynb index 49624bb2e..2eecedef6 100644 --- a/dev/.doctrees/nbsphinx/explanations/hamiltonians.ipynb +++ b/dev/.doctrees/nbsphinx/explanations/hamiltonians.ipynb @@ -33,10 +33,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:49.217418Z", - "iopub.status.busy": "2024-10-30T11:01:49.216978Z", - "iopub.status.idle": "2024-10-30T11:01:49.899893Z", - "shell.execute_reply": "2024-10-30T11:01:49.899253Z" + "iopub.execute_input": "2024-10-30T17:21:12.331225Z", + "iopub.status.busy": "2024-10-30T17:21:12.330697Z", + "iopub.status.idle": "2024-10-30T17:21:13.024518Z", + "shell.execute_reply": "2024-10-30T17:21:13.023875Z" } }, "outputs": [], @@ -68,10 +68,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:49.902609Z", - "iopub.status.busy": "2024-10-30T11:01:49.902086Z", - "iopub.status.idle": "2024-10-30T11:01:49.905193Z", - "shell.execute_reply": "2024-10-30T11:01:49.904617Z" + "iopub.execute_input": "2024-10-30T17:21:13.026974Z", + "iopub.status.busy": "2024-10-30T17:21:13.026696Z", + "iopub.status.idle": "2024-10-30T17:21:13.029581Z", + "shell.execute_reply": "2024-10-30T17:21:13.029112Z" } }, "outputs": [], @@ -99,10 +99,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:49.906915Z", - "iopub.status.busy": "2024-10-30T11:01:49.906732Z", - "iopub.status.idle": "2024-10-30T11:01:49.909937Z", - "shell.execute_reply": "2024-10-30T11:01:49.909393Z" + "iopub.execute_input": "2024-10-30T17:21:13.031388Z", + "iopub.status.busy": "2024-10-30T17:21:13.031205Z", + "iopub.status.idle": "2024-10-30T17:21:13.034574Z", + "shell.execute_reply": "2024-10-30T17:21:13.034114Z" } }, "outputs": [], @@ -127,10 +127,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:49.911803Z", - "iopub.status.busy": "2024-10-30T11:01:49.911461Z", - "iopub.status.idle": "2024-10-30T11:01:49.915909Z", - "shell.execute_reply": "2024-10-30T11:01:49.915380Z" + "iopub.execute_input": "2024-10-30T17:21:13.036313Z", + "iopub.status.busy": "2024-10-30T17:21:13.036133Z", + "iopub.status.idle": "2024-10-30T17:21:13.041187Z", + "shell.execute_reply": "2024-10-30T17:21:13.040629Z" } }, "outputs": [], @@ -152,17 +152,17 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:49.918619Z", - "iopub.status.busy": "2024-10-30T11:01:49.918212Z", - "iopub.status.idle": "2024-10-30T11:01:49.945264Z", - "shell.execute_reply": "2024-10-30T11:01:49.944550Z" + "iopub.execute_input": "2024-10-30T17:21:13.043782Z", + "iopub.status.busy": "2024-10-30T17:21:13.042852Z", + "iopub.status.idle": "2024-10-30T17:21:13.071309Z", + "shell.execute_reply": "2024-10-30T17:21:13.070683Z" } }, "outputs": [ { "data": { "text/plain": [ - "np.float64(-99.55717072551532)" + "np.float64(-99.55717072551579)" ] }, "execution_count": 5, @@ -191,10 +191,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:49.976840Z", - "iopub.status.busy": "2024-10-30T11:01:49.976429Z", - "iopub.status.idle": "2024-10-30T11:01:50.629713Z", - "shell.execute_reply": "2024-10-30T11:01:50.629071Z" + "iopub.execute_input": "2024-10-30T17:21:13.104019Z", + "iopub.status.busy": "2024-10-30T17:21:13.103676Z", + "iopub.status.idle": "2024-10-30T17:21:13.753510Z", + "shell.execute_reply": "2024-10-30T17:21:13.752912Z" } }, "outputs": [ @@ -202,7 +202,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "/tmp/ipykernel_4162/2190712273.py:2: UserWarning: Trace of LinearOperator not available, it will be estimated. Provide `traceA` to ensure performance.\n", + "/tmp/ipykernel_4140/2190712273.py:2: UserWarning: Trace of LinearOperator not available, it will be estimated. Provide `traceA` to ensure performance.\n", " evolved_vec = scipy.sparse.linalg.expm_multiply(-1j * time * linop, vec)\n" ] } @@ -224,10 +224,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:50.632313Z", - "iopub.status.busy": "2024-10-30T11:01:50.631808Z", - "iopub.status.idle": "2024-10-30T11:01:51.340327Z", - "shell.execute_reply": "2024-10-30T11:01:51.339670Z" + "iopub.execute_input": "2024-10-30T17:21:13.756684Z", + "iopub.status.busy": "2024-10-30T17:21:13.755713Z", + "iopub.status.idle": "2024-10-30T17:21:14.362010Z", + "shell.execute_reply": "2024-10-30T17:21:14.361454Z" } }, "outputs": [], diff --git a/dev/.doctrees/nbsphinx/explanations/orbital-rotation.ipynb b/dev/.doctrees/nbsphinx/explanations/orbital-rotation.ipynb index 73f5652ff..1e19a5a1a 100644 --- a/dev/.doctrees/nbsphinx/explanations/orbital-rotation.ipynb +++ b/dev/.doctrees/nbsphinx/explanations/orbital-rotation.ipynb @@ -62,10 +62,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:54.516279Z", - "iopub.status.busy": "2024-10-30T11:01:54.516094Z", - "iopub.status.idle": "2024-10-30T11:01:55.224870Z", - "shell.execute_reply": "2024-10-30T11:01:55.224291Z" + "iopub.execute_input": "2024-10-30T17:21:17.583605Z", + "iopub.status.busy": "2024-10-30T17:21:17.583171Z", + "iopub.status.idle": "2024-10-30T17:21:18.280711Z", + "shell.execute_reply": "2024-10-30T17:21:18.280203Z" } }, "outputs": [], diff --git a/dev/.doctrees/nbsphinx/explanations/qiskit-gate-decompositions.ipynb b/dev/.doctrees/nbsphinx/explanations/qiskit-gate-decompositions.ipynb index 31aca657e..e7e712cf7 100644 --- a/dev/.doctrees/nbsphinx/explanations/qiskit-gate-decompositions.ipynb +++ b/dev/.doctrees/nbsphinx/explanations/qiskit-gate-decompositions.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:56.671557Z", - "iopub.status.busy": "2024-10-30T11:01:56.671366Z", - "iopub.status.idle": "2024-10-30T11:01:58.282690Z", - "shell.execute_reply": "2024-10-30T11:01:58.282012Z" + "iopub.execute_input": "2024-10-30T17:21:19.875965Z", + "iopub.status.busy": "2024-10-30T17:21:19.875495Z", + "iopub.status.idle": "2024-10-30T17:21:21.420656Z", + "shell.execute_reply": "2024-10-30T17:21:21.420128Z" } }, "outputs": [ @@ -81,10 +81,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:58.285083Z", - "iopub.status.busy": "2024-10-30T11:01:58.284639Z", - "iopub.status.idle": "2024-10-30T11:01:58.483336Z", - "shell.execute_reply": "2024-10-30T11:01:58.482727Z" + "iopub.execute_input": "2024-10-30T17:21:21.422712Z", + "iopub.status.busy": "2024-10-30T17:21:21.422403Z", + "iopub.status.idle": "2024-10-30T17:21:21.617651Z", + "shell.execute_reply": "2024-10-30T17:21:21.617048Z" } }, "outputs": [ @@ -119,10 +119,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:58.485404Z", - "iopub.status.busy": "2024-10-30T11:01:58.485051Z", - "iopub.status.idle": "2024-10-30T11:01:58.592622Z", - "shell.execute_reply": "2024-10-30T11:01:58.592048Z" + "iopub.execute_input": "2024-10-30T17:21:21.619868Z", + "iopub.status.busy": "2024-10-30T17:21:21.619548Z", + "iopub.status.idle": "2024-10-30T17:21:21.726645Z", + "shell.execute_reply": "2024-10-30T17:21:21.726163Z" } }, "outputs": [ @@ -156,10 +156,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:58.594552Z", - "iopub.status.busy": "2024-10-30T11:01:58.594218Z", - "iopub.status.idle": "2024-10-30T11:01:58.703116Z", - "shell.execute_reply": "2024-10-30T11:01:58.702508Z" + "iopub.execute_input": "2024-10-30T17:21:21.728640Z", + "iopub.status.busy": "2024-10-30T17:21:21.728280Z", + "iopub.status.idle": "2024-10-30T17:21:21.835281Z", + "shell.execute_reply": "2024-10-30T17:21:21.834813Z" } }, "outputs": [ @@ -196,10 +196,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:58.705001Z", - "iopub.status.busy": "2024-10-30T11:01:58.704693Z", - "iopub.status.idle": "2024-10-30T11:01:58.888055Z", - "shell.execute_reply": "2024-10-30T11:01:58.887497Z" + "iopub.execute_input": "2024-10-30T17:21:21.837176Z", + "iopub.status.busy": "2024-10-30T17:21:21.836968Z", + "iopub.status.idle": "2024-10-30T17:21:22.017592Z", + "shell.execute_reply": "2024-10-30T17:21:22.017112Z" } }, "outputs": [ @@ -250,10 +250,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:58.890158Z", - "iopub.status.busy": "2024-10-30T11:01:58.889764Z", - "iopub.status.idle": "2024-10-30T11:01:59.111358Z", - "shell.execute_reply": "2024-10-30T11:01:59.110782Z" + "iopub.execute_input": "2024-10-30T17:21:22.019579Z", + "iopub.status.busy": "2024-10-30T17:21:22.019386Z", + "iopub.status.idle": "2024-10-30T17:21:22.235849Z", + "shell.execute_reply": "2024-10-30T17:21:22.235366Z" } }, "outputs": [ @@ -292,10 +292,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:59.113336Z", - "iopub.status.busy": "2024-10-30T11:01:59.113148Z", - "iopub.status.idle": "2024-10-30T11:01:59.250211Z", - "shell.execute_reply": "2024-10-30T11:01:59.249625Z" + "iopub.execute_input": "2024-10-30T17:21:22.237645Z", + "iopub.status.busy": "2024-10-30T17:21:22.237447Z", + "iopub.status.idle": "2024-10-30T17:21:22.369489Z", + "shell.execute_reply": "2024-10-30T17:21:22.368993Z" } }, "outputs": [ @@ -334,10 +334,10 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:59.252340Z", - "iopub.status.busy": "2024-10-30T11:01:59.251970Z", - "iopub.status.idle": "2024-10-30T11:01:59.775195Z", - "shell.execute_reply": "2024-10-30T11:01:59.774623Z" + "iopub.execute_input": "2024-10-30T17:21:22.371662Z", + "iopub.status.busy": "2024-10-30T17:21:22.371178Z", + "iopub.status.idle": "2024-10-30T17:21:22.895279Z", + "shell.execute_reply": "2024-10-30T17:21:22.894636Z" } }, "outputs": [ @@ -378,10 +378,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:59.777576Z", - "iopub.status.busy": "2024-10-30T11:01:59.777039Z", - "iopub.status.idle": "2024-10-30T11:01:59.956640Z", - "shell.execute_reply": "2024-10-30T11:01:59.956081Z" + "iopub.execute_input": "2024-10-30T17:21:22.897522Z", + "iopub.status.busy": "2024-10-30T17:21:22.897179Z", + "iopub.status.idle": "2024-10-30T17:21:23.075759Z", + "shell.execute_reply": "2024-10-30T17:21:23.075214Z" } }, "outputs": [ @@ -430,10 +430,10 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:59.958832Z", - "iopub.status.busy": "2024-10-30T11:01:59.958418Z", - "iopub.status.idle": "2024-10-30T11:02:00.125313Z", - "shell.execute_reply": "2024-10-30T11:02:00.124820Z" + "iopub.execute_input": "2024-10-30T17:21:23.077736Z", + "iopub.status.busy": "2024-10-30T17:21:23.077526Z", + "iopub.status.idle": "2024-10-30T17:21:23.243005Z", + "shell.execute_reply": "2024-10-30T17:21:23.242536Z" } }, "outputs": [ @@ -474,10 +474,10 @@ "execution_count": 11, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:00.127170Z", - "iopub.status.busy": "2024-10-30T11:02:00.126970Z", - "iopub.status.idle": "2024-10-30T11:02:00.257509Z", - "shell.execute_reply": "2024-10-30T11:02:00.256896Z" + "iopub.execute_input": "2024-10-30T17:21:23.244902Z", + "iopub.status.busy": "2024-10-30T17:21:23.244712Z", + "iopub.status.idle": "2024-10-30T17:21:23.375331Z", + "shell.execute_reply": "2024-10-30T17:21:23.374741Z" } }, "outputs": [ @@ -513,10 +513,10 @@ "execution_count": 12, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:00.259632Z", - "iopub.status.busy": "2024-10-30T11:02:00.259291Z", - "iopub.status.idle": "2024-10-30T11:02:00.438288Z", - "shell.execute_reply": "2024-10-30T11:02:00.437658Z" + "iopub.execute_input": "2024-10-30T17:21:23.377545Z", + "iopub.status.busy": "2024-10-30T17:21:23.377079Z", + "iopub.status.idle": "2024-10-30T17:21:23.560471Z", + "shell.execute_reply": "2024-10-30T17:21:23.559995Z" } }, "outputs": [ @@ -553,10 +553,10 @@ "execution_count": 13, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:00.440329Z", - "iopub.status.busy": "2024-10-30T11:02:00.440124Z", - "iopub.status.idle": "2024-10-30T11:02:00.599978Z", - "shell.execute_reply": "2024-10-30T11:02:00.599400Z" + "iopub.execute_input": "2024-10-30T17:21:23.562532Z", + "iopub.status.busy": "2024-10-30T17:21:23.562157Z", + "iopub.status.idle": "2024-10-30T17:21:23.718715Z", + "shell.execute_reply": "2024-10-30T17:21:23.718259Z" } }, "outputs": [ @@ -593,10 +593,10 @@ "execution_count": 14, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:00.602113Z", - "iopub.status.busy": "2024-10-30T11:02:00.601733Z", - "iopub.status.idle": "2024-10-30T11:02:00.731332Z", - "shell.execute_reply": "2024-10-30T11:02:00.730735Z" + "iopub.execute_input": "2024-10-30T17:21:23.720829Z", + "iopub.status.busy": "2024-10-30T17:21:23.720331Z", + "iopub.status.idle": "2024-10-30T17:21:23.849803Z", + "shell.execute_reply": "2024-10-30T17:21:23.849220Z" } }, "outputs": [ @@ -630,10 +630,10 @@ "execution_count": 15, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:00.733265Z", - "iopub.status.busy": "2024-10-30T11:02:00.732920Z", - "iopub.status.idle": "2024-10-30T11:02:00.890313Z", - "shell.execute_reply": "2024-10-30T11:02:00.889792Z" + "iopub.execute_input": "2024-10-30T17:21:23.851908Z", + "iopub.status.busy": "2024-10-30T17:21:23.851441Z", + "iopub.status.idle": "2024-10-30T17:21:24.009042Z", + "shell.execute_reply": "2024-10-30T17:21:24.008482Z" } }, "outputs": [ @@ -677,10 +677,10 @@ "execution_count": 16, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:00.892452Z", - "iopub.status.busy": "2024-10-30T11:02:00.892016Z", - "iopub.status.idle": "2024-10-30T11:02:01.074551Z", - "shell.execute_reply": "2024-10-30T11:02:01.074015Z" + "iopub.execute_input": "2024-10-30T17:21:24.011201Z", + "iopub.status.busy": "2024-10-30T17:21:24.010714Z", + "iopub.status.idle": "2024-10-30T17:21:24.192361Z", + "shell.execute_reply": "2024-10-30T17:21:24.191772Z" } }, "outputs": [ @@ -736,16 +736,16 @@ "execution_count": 17, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:01.076613Z", - "iopub.status.busy": "2024-10-30T11:02:01.076414Z", - "iopub.status.idle": "2024-10-30T11:02:01.532466Z", - "shell.execute_reply": "2024-10-30T11:02:01.531873Z" + "iopub.execute_input": "2024-10-30T17:21:24.194672Z", + "iopub.status.busy": "2024-10-30T17:21:24.194237Z", + "iopub.status.idle": "2024-10-30T17:21:24.656870Z", + "shell.execute_reply": "2024-10-30T17:21:24.656325Z" } }, "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABLsAAAMkCAYAAABQkSLjAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAADXEklEQVR4nOzdeVxVdf7H8dddEEQ2wQ0UAcV9g8k09+ta1qSZWVmkme1WP2faVRortbF9msqptFIn07LFbDS1Ek2lyAW1RRRE3FdUQBCEe39/3EQJBBS4m+/n48EDzvd87zmfczye+72f+/1+j8Fms9kQERERERERERHxAEZnByAiIiIiIiIiIlJdlOwSERERERERERGPoWSXiIiIiIiIiIh4DCW7RERERERERETEYyjZJSIiIiIiIiIiHkPJLhERERERERER8RhKdomIiIiIiIiIiMdQsktERERERERERDyGkl0iIiIiIiIiIuIxlOwSERERERERERGPoWSXiIiIiIiIiIh4DCW7RERERERERETEYyjZJSIiIiIiIiIiHkPJLhERERERERER8RhKdomIiIiIiIiIiMdQsktERERERERERDyGkl0iIiIiIiIiIuIxlOwSERERERERERGPoWSXiIiIiIiIiIh4DCW7RERERERERETEYyjZJSIiIiIiIiIiHkPJLhERERERERER8RhKdomIiIiIiIiIiMdQsktERERERERERDyGkl0iIiIiIiIiIuIxlOwSERERERERERGPoWSXiIiIiIiIiIh4DCW7RERERERERETEYyjZJSIiIiIiIiIiHsPs7ABcWUF2Lsd/3+3sMDxG3TZNqeXvW2G9nDOQmuWAgMoQHQB+Xs7Zt4iIiIiIiIhUnZJd5Tj++26WDp3k7DA8xuBFU2jYpXWF9VKz4O61DgioDDN7QEyIc/YtIiIiIiIiIlWnYYwiIiIiIiIiIuIxlOwSERERERERERGPoWSXiIiIiIiIiIh4DCW7RERERERERETEY2iCevEIKRMtnNqWiMHshcFkxqdxa8LiphLQqb+zQxMRERERERERB1LPLvEYYXFTiV2QQ8fZh6jTqhtp026g6NRJZ4clIiIiIiIiIg6kZJd4HKOXN/UGjsV6OofTB1KdHY6IiIiIiIiIOJCSXeJxrPl5HF0xE6NvAD5hLZwdjoiIiIiIiIg4kNskuwoKCoiPjyc8PJzatWvTr18/kpKSMBgMLFq0yNnhiQvYPy+e5NuC2HpPJLnpm4me9DUm3wBnh+UUOWfgtxOQchIKrc6OxnOdLoJtJ+w/pwudHY1I1dhskJYFvxyHzHxnRyNSdQdz7dfz3lPOjkRE3EVuIfx+AradhIIiZ0cjIlXhFhPU22w2RowYQVJSEpMnTyY6Opp58+YxbNgwAGJjYx0aj8Fk5MrJo2k+vDcGo5Fd//uRnybMpCj/jEPjkJLCbnueRsMec3YYTnU8H97eBv/bAwV/JLnq1oJbouDOFmB2m/S2aztdCO+kwOcZcOqPJFcdMwxtCve1tv8t4i5sNvhyN8zeAXtz7WVGwBIKD7aBSD+nhidy0TYdgxnbYOOxc2Vtg+DeVtCzodPCEhEXln3Gft/4arf9y0yAAC8YHgl3twRvk1PDE5FL4BYfyd59912WLFlCcnIy7dq1A8BisRAVFUVwcDBNmzZ1aDwdH7mRRt3bs6jfoxSdKaT/h09yxaQ7SIp/36FxiJwvMx/G/AAHcuH8zlzHC+A/KfaeXi91AZPBWRF6htNF8ECivbeA7bzyU4Xw8U77h6t3e4CvW9xdReDfv8OcVDj/1mAFEg7AT0fg/Z7Q/PLsJCtuaM0heDTJnsQ93+8n4G8/wT9i4K+ObTaKiIvLOQN3r4Gd2SXbdlln4IMdsDUT3rgKainhJeJW3KKfx/Tp04mLiytOdAGYTCaioqKKe3Vt376dbt260bJlS7p168aOHTtqLJ4Wt/dn6xufk3swk/xjWSS/8gnRt1gwGN3idIqHeuv30omu860+BEv2ODQkjzQvDbb+KdF1lg370NE5ei6CuIlfjp+7Xv98TVuBvEJ4PtnBQYlcovwieGYjWG2l3wttf/xM2QwnCpwQnIi4rJnbSye6zrf+GCzc5ciIRKQ6uHx2ZseOHaSnpzN8+PBS6/bs2VOc7Lr//vsZN24c27dvZ9y4cdx33301Ek+tAF/8Gtcn89f04rJjW9Op5e+LX3j9GtmnSEWyz8DSvRdOdIH9P/sn6eVUkAoV2eDTXeXXsQGf7dJcaeIePttVfkPACvxyArafdEw8IlXx/QF7T4wLfWAFKLTB17sdFpKIuLj8Ivgio/z7hgF7G/rPPUZFxLW5/ECbffv2AdCgQYMS5du2bSMjI4PY2FgOHz7Mxo0bWbFiBQAjR47koYce4siRI9SvX3ECyt/fn4KC0l/zNTfX5YmAniXKzH61ASg4mVtcVnDSPvOp1x/rpGx9+1pIKzxeYT3fVt1oPiXhorbdaurF1b+Qvn0t5KYkVsu2HKl2iy5ET/uh3DpW4LfMQry96zgmKA9kCqhP21l7K6x3vACCmjTnzLGK64o4U4tXN+ET3rbCer1vvofjCXMcEJHIpQsd/SIhg8dhMF24eWsrOsPkdxYy9o07HReYiLgs77BWtPzXlnLr2LDPaVk7sC62/Nxy64pI9bLZbJjNZg4ePEhAwMXNq+HyPbtCQkIASE09Ny7IZrPx5JNPYrVaiY2NZc+ePTRu3BiTyT6Q2mQyERYWxp491T9mqzAnDwCvAN/islqB9uTBmT/WiThcUeUeBWiz6rEyVWKt/CMXda7FHdh07xAPYr+eK5qY0qDrWUSK2S6ibYfuHSIOZ7PZyMvLY+vWrRf9Wpfv2dWmTRuio6OZMGECXl5e+Pn5MWPGDDZt2oSvry+tWrVi06ZNVdpHdnZ2meWHkraxdOikEmUFWbnk7DtCcLtIstL2AxDSPoqC7Fxy9hypUhyebuXKBBp2aV1hveRjcPdaBwRUhpUrE4gJcc6+q6KgCK5Zbh++cSFGA/Ro7M3G/HzHBeZhbDYYmQBp5czrYACa+sHPB3Zh0MMAxMX961f4b1rFwzc2f/U+jWrrISzi2hIPw8M/ll/HYDLzr/Fx/PWVOMcEJSIurcgGQ1bAodMXrmME2tWF9TlZDotLROzWrl1Lz549K65YBpfv2WU2m1m4cCGhoaGMHj2a8ePHM3jwYPr06UPHjh0xGo2Eh4ezb98+iors2faioiL2799PeHh4jcS046Pv6PjwMGo3rIt3SAAxj95M6oIEbFZN0iPOUcsEI6LKr2O1wa3NHBOPpzIY4Lbm5ScGbMDIKJToErcwPLL8a9UI9GkEjTRKX9xA1/oQXufCjVsjEOgFA8McGZWIuDKTAUZW0D62UnEdEXE9Lp/sAujUqROJiYnk5uaSkpLCAw88wKZNm4onp2/QoAExMTF8/PHHAHz88cfExsZWar6uS7Hljc85+OPv3JDwGsPX/ZsTO/ayYep/a2RfIpV1d0vo9sclf/5n17P/ye9pCd0a/PlVcrGuD4dhEfa/z7+Bnv37uiZwY6SDgxK5RE3qwHOx9uu3rAZBpB9M6uToqEQujdEAr3SBgFqlBzMaAW8TvNbV/ltE5KyRzWHAH0nwstp2I5spSS7ijlx+GGNZ8vLySElJYfz48cVl//nPfxg9ejTPPfccdevWZc6cmptI11ZkJSn+fZLiNaTDGQqzM9nxj4Gc3pdC7IKcEuvSXx9N/sE0jF7eRI6fQ62QxqRMtNhfd/IIATEDCb/7dccH7QBeRnsj/qvd9ifGpP4xOrdrfXuPrh4NnRufpzAYYEJH6FIP5qfD5kx7ebu6cEsUXN1YvbrEvVzTxN4bZt5OWGZ/Jgyhte29vm6KBD8vZ0YncnGa+cO8Pvb781e74cQfzx+6KQpua2ZP8IqInM9kgKlXQM8G8Mku+O2EvTw2xN6GtjRS207EHbllsmvLli0UFRUV9+wCaN26NT/99JMToxJHMdX2p8WzK9j54s2l1oWNfBbvhpFkbf6OI0veovEd04qf1LhvztP4d+jr4Ggdy2y09yq6MRI6f2Uv+3c3Z0bkmQwGGNjY/nP2PH/Qy7kxiVRFu7r2hv7ZZNfigc6NR6QqGtSGR9raf87eo5/o4NyYRMS1mQzw16b2n7P3jXd6ODcmEakat0x2de3aFZutvFlzxJMZzF6Y/YPLXOfdMNJex2jiz4MYsn9JIHTkszUcnYiIiIiIiIg4k1vM2SVyMWxWKwcWTqPewLHFZacPpFKrfgRGr1pOjExEREREREREapqSXeJx9n8UT3CvW/FudO6xKSd/WkRQ16FOjEpEREREREREHEHJLvEox9d9RmFOJvUG3FWi/OSGJQReca2TohIRERERERERR1GyS9zS9vgB5KZvYnv8AHJ+W8PBz18CYO/7fycvfTMpEy0c+GQqAIVZRzGYvDDVCXRmyCIiIiIiIiLiAG45Qb1Iy+e/LbHs17YnAB1mZpSqaw6oR4vJ3zgkLhERERERERFxLvXsEhERERERERERj6Fkl4iIiIiIiIiIeAwlu0RERERERERExGMo2SUiIiIiIiIiIh5DE9SLy4kOgJk9nLfvy0FCQgJjxowhIiKCiIgIZs+eXWL93LlzCQ0NZcCAAfTq1YtNmzaxbds2mjRpUqLe/Pnzefrpp+nfvz8zZ84E4Omnn2bVqlWYTCbefvttOnTowLhx43jxxRepU6eOw45RRERERERELk9KdonL8fOCmBBnR+H5xo4dy6RJk3jkkUdITEykW7duxesWL17MggULAPj000956qmnytzGwIED6dy5M//85z+Ly+677z5eeOEF0tLSiI+PZ968eVx//fUsWLCAu+66q2YPSkRERERERC57GsYocplr3749+/btK17OzMzEx8cHg8EAQKNGjS742pCQEMzmkjnzyMhIAEwmU/E2evfuzbJly6o5chEREREREZHSlOwSucwlJiYSHR1dvJyamkpERESVtxsfH8+DDz4IgK+vL8ePH6/yNkVEREREREQqomSXyGVq1qxZWCwWGjduTExMTLVu+7333iMqKooePZw0+ZqIiIiIiIhctjRnl8hl6uycXX8WHR1NRkbGJW83MTGRJUuW8NlnnxWX5ebmEhQUdMnbFBEREREREaks9ewSkRKCg4PJzc0tXo6Li2P58uWMHDmS7777DoBHH30UgOXLlxMXF8fSpUsZPXo0AE899RQZGRn069ePhx9+GIDVq1czaNAgBx+JiIiIiIiIXI7Us0vkMmSxWLBYLBdcP2TIEL799lsGDBjAf//731LrX3nlFQAGDRpUKom1atWqUvUXL17M9OnTqxa0iIiIiIiISCUo2SUipYwaNapat/fWW29V6/ZERERERERELkTDGEVERERERERExGMo2SUiIiIiIiIiIh5DyS4REREREREREfEYSnaJiIiIiIiIiIjH0AT14nJyzkBqlnP2HR0Afl7O2beIiIiIiIiIVJ2SXeJyUrPg7rXO2ffMHhAT4px9i4iIiIiIiEjVaRijiIiIiIiIiIh4DCW7RERERERERETEYyjZJSIiIiIiIiIiHkPJLhERERERERER8RiaoF48QspEC6e2JWIwe2EwmfFp3JqwuKkEdOrv7NBERERERERExIHUs0s8RljcVGIX5NBx9iHqtOpG2rQbKDp10tlhiYiIiIiIiIgDKdklHsfo5U29gWOxns7h9IFUZ4cjIiIiIiIiIg6kZJd4HGt+HkdXzMToG4BPWAtnhyMiIiIiIiIiDuQ2ya6CggLi4+MJDw+ndu3a9OvXj6SkJAwGA4sWLXJ2eOIC9s+LJ/m2ILbeE0lu+maiJ32NyTfA2WE5RUHRub9tNufFIVIdbDY4mAt7T0F+UcX1RVzd8XzYnQM5Z5wdiYi4i9NFsCcHDuapbSfuz2qD/X+07c5YnR2NeCq3mKDeZrMxYsQIkpKSmDx5MtHR0cybN49hw4YBEBsb67BYIq/vRpu7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sdlsvPLKKyxZsoSVK1fSpUsXgoODOXHiBDk5OY48ZBERERERKYOSXSIiDtC+fXv27dtXvJyZmYmPjw8GgwGARo0aXfC1ISEhmM0lO+J6edkzszk5OXTo0AGA3r17s2zZsuoO3e2Ud67Xr19Pnz59AOjXrx9JSUllbmPx4sVcf/31HD16lKZNm2I0GunQoQOJiYmkpaWRl5fHkCFDuP322zl16hQAXbt2JSEhocaPT0REREREyqdkl4iIAyQmJhIdHV28nJqaSkRERJW2eccddzBw4ED69u0LgK+vL8ePH6/SNj1Beef6xIkTBATYxyv7+/tz4sSJUq/PyckhOzub0NBQ6tevT2pqKqdPn2b16tWcPHmSw4cPk5aWxldffcWAAQN47733AIiIiGD79u01f4AiIiIiIlIuJbtERGrQrFmzsFgsNG7cmJiYmGrd9ty5c0lKSuKZZ56p1u26q8qc66CgILKysgDIzs4mKCioVJ1ly5ZxzTXXAGAymXj88ce55ppr2Lx5Mw0bNiQwMJCuXbvi7e1N7969SUlJqalDEhERERGRS6Bkl4hIDTo7j9SUKVNKlEdHR5ORkXHJ283PzwfAz8+veEL63NzcMpM3l4vKnOsrrriC1atXAxTPt/VnixYtYujQocXLN954IwkJCXTt2pXBgwfTsmVLDhw4gM1mY+vWrURGRgKQkZFBixYtaujoRERERESkspTsEhFxguDgYHJzc4uX4+LiWL58OSNHjuS7774D4NFHHwVg+fLlxMXFsXTpUkaPHg3AAw88gMVi4brrrmPixIkArF69mkGDBjn4SFzf+ee6UaNGdOzYkV69epGfn0/nzp05ePAgL730EgBFRUVs376dtm3bFr/+wQcfpH///qxevZqbb74ZLy8vbr/9dnr37s2MGTO45557APjxxx+xWCwOPz4RERERESnJYLPZbM4OwlUdStrG0qGTnB2Gxxi8aAoNu7R2dhgi1arzV/bf64dc/GvnzJlDWFgYAwYMqJZYxo0bx/Tp0/Hz86uW7bmSqpxnqP5z/WeZmZk8//zzvPbaazWyfUep6nmWytF5dhyda/Ekup4dQ+fZMXSepTLWrl1Lz549WbNmDT169Lio15orriIiIjVh1KhR1bq9t956q1q350mq+1z/WXBwsNsnukREREREPIWGMYqIiIiIiIiIiMdQsktERERE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xCOPPEJiYiLdunUrXrd48WIWLFjAoUOH2LhxIz/88AN/+9vfWL9+PZ07dy6uFxcXR0xMDOvWrSsue+655/jiiy84cOAA06dP58033yQhIQGAp59+mr59+2I2m6lfvz5paWk0b97cYccsIiIiUl00jFFEREQqJSEhgaioKCwWC6NHjy61furUqezYsaPcbTz88MP06tWLadOmXbDO66+/zoABAwB455136N+/PxaLhTNnznDmzBluvvlmLBYLL730EgC///4706dPr8KRua727duzb9++4uXMzEx8fHwwGAysX7+ePn36ANCvXz+SkpJKvLZBgwYYjSWbeqdOnaJBgwZ06tSJ1NTUEusSEhKKe3lZLBaWLl1aA0ckl5uq3jfWrFnDVVddRffu3XnllVdKrd+1axehoaFYLBZGjRpFUlISPXr0oHv37sU9Gj35HiEiImVTsktEREQqbezYsSQkJBAYGEhiYmJxudVqZcuWLbRo0eKCr12/fj1ms5kffviBjRs3cujQoVJ1zpw5Q3JyMgC7d+9m69atfPfddyQkJODl5cXnn39O9+7dSUhIYMOGDRw5coQ2bdqwceNGbDZbtR+vsyUmJhIdHV28nJqaSkREBAAnTpwgIMA+/t7f358TJ05UuD2r1Vrm32e3W6tWLQAiIiLYvn17dRyCSJXuG82aNWP16tWsW7eOr7/+mtzc3FJ1rrvuOhISEpgzZw6xsbGsXbuWdevWkZiYSFZWlkffI0REpGxKdomIiMhF+3OPo82bN9OyZctyX/PTTz/Rr18/APr06cOGDRtK1Zk7dy4jR44EYPny5Zw6dYp+/foxefJkANLT0+nQoQMAbdq04eeffwbsH4h//fXXKh+Xq5g1axYWi4XGjRsTExNTZp2goCCysrIAyM7OJigoqMLtnt/T6/y/Fy1axNChQ6sUs0hFLuW+ERYWVpyENZlMpXorAixbtoxevXrx0Ucf4eXlBUBRURFhYWH4+voCnnePEBGR8inZJSIiIhftzz2OduzYQWRkZLmvqagnktVqZdmyZVx99dUAHD58GIPBwPfff096ejrJycm0atWKVatWYbPZ+OGHHzh58iTgeT2RzvaEmTJlSony6OhoMjIyALjiiitYvXo1ACtXrqRLly4VbtfX15cjR46wZcuWEv9+S5Ys4dprry1ezsjIKLe3jciluJT7xlkrVqygefPm+Pj4lCgPDQ0lJSWF5cuX884773Ds2DHmzZtHmzZtCAoKwmy2T1HsafcIEREpnyaoFxERkUqbNWsW3377LT179rxgj6PffvuNBx98sETZNddcU6on0p8nP//8888ZMmRI8XJgYGDxnFS9e/cmJSWFm266ieXLlzNw4EDq169PgwYNqvHoXF9wcHDxMK5GjRrRsWNHevXqRceOHencuTMHDx5k7ty5PP7448yZM4d//etfnDx5kqysLF588UXi4+O54YYb8PLyYs6cOQAcPXoULy8vAgMDi/eTkJDA2LFjnXKM4nmqct946qmn2Lt3Ly+88AJfffVVqdd5e3sX/92rVy/S0tK47bbbuPXWWxkxYgRbt24t7g0qIiKXDyW7REREpNLOPiXwz1q0aMHnn38OQNu2bYuf8He+n3/+mY8//pjrr7+e1atXc/PNN5dYn5KSQkJCAnPnziU5OZlBgwaRnp4OwNatWxk5ciQmk4kZM2Zgs9kYPXp08VMKMzIy6NGjRzUfrXNYLJbiieLLMmTIEL799lsGDBhAfHw88fHxxesaNWrE448/DsCoUaMYNWpUideenc/ofPXq1eObb74pXi4sLOTw4cMleuCIVEVV7hv5+fnceeedzJgxAz8/v1Lrc3Jy8PPzw2azsX79eu69917APkzX39+/uCeYJ90jRESkYhrGKCIiIlXWqVMnUlJSyq1z5ZVXkp+fT69evejUqRMNGzbk4MGDxU9VnDhxIitWrOCbb74hJiaGJ554gsLCQiwWC7m5uXTt2pXdu3djsVjo378/N910U/F8PKmpqbRv377Gj9MVjBo1qvhplTXBbDYza9asGtu+yFmVuW/MmzeP3377jfvuuw+LxcK+fftK3DfWrVtH586d6d69O4MGDSIpKQmLxULv3r1p0qRJ8XDcy+keISIi6tklIiIilVRejyOj0UjHjh3ZsWNHuXM9vfXWWyWWz++JdL5vv/0WgNdff71EedOmTUv1/vj999+54oorMBgMFR+EiDhUVe8bY8aMYcyYMaXKz943Bg0axKBBg0qsGzFiRIll3SNERC4/SnaJiIhItShrmJIjtGnThjZt2jhl3yJSNY64b+geISJy+dEwRhERERERERER8RhKdomIiIiIiIiIiMfQMEZxOTlnIDXLOfuODgA/L+fsW0RERERERESqTskucTmp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SEhIYMyYMURERBAREcHs2bNLrJ87dy6hoaEMGDCAXr16sWnTJrZt20aTJk1K1Js/fz5PP/00/fv3Z+bMmQA8/fTTrFq1CpPJxNtvv02HDh0YN24cL774InXq1HHYMYqIiIhcLirbtmvVqhW33HILZrOZ5s2b8/7772MwGIrrHTlyhHvvvZcTJ04wcuRI7r33Xq6//nqysrIwm80sWLCAoKAg7r///uK23+Wksuc5PDycu+66C6PRSOfOnXnttddK1Hv11Vd55ZVXeOCBB5g0aRKA2ssi1Uw9u8Tl+HlBTIhzfvy8nH30jjN27FgSEhIIDAwkMTGxxLrFixfTv39/AD799FNuuummMrcxcOBAVqxYUaLsvvvuY926dXz44Ye88MILAFx//fUsWLCgBo5CRERERKBybbuwsDDWrl3L6tWrMRqNbN26tUS95557jtdff52VK1dy7733AvD555+zatUq7rzzTubNm4fZbKZ+/fqkpaU57NhcSWXOc7169Vi2bBk//PADR48eZfv27SXqxcXFMXfu3BJlai+LVC8lu0Quc+3bt2ffvn3Fy5mZmfj4+BR/y9eoUaMLvjYkJASzuWQH0cjISABMJlPxNnr37s2yZcuqOXIRERER+bPy2nbnt8+8vb0JCwsr8drt27fz1FNPMWjQIFJSUgDw8rJ/G3z69GnatGkDgMViYenSpY44HJdV3nkOCQnBz88PKNkmPqtBgwYYjSU/iqu9LFK9lOwSucwlJiYSHR1dvJyamkpERESVtxsfH8+DDz4IgK+vL8ePH6/yNkVERESkfBW17b7//ns6duzIwYMHCQwMLPHaNWvWMGXKFN566y0mTpwI2JM43bt354033ihOdkVERJTqrXS5qUwb+tdff+Xo0aO0aNGiwu2pvSxSvZTsErlMzZo1C4vFQuPGjYmJianWbb/33ntERUXRo4eTJl8TERERucxUtm3Xr18/tmzZQkREBN98802Jde3ataN58+a0aNGCkydPAhAcHMy6deuYMmVKqbmnLkeVPc9ZWVk89NBDvPvuu44LTkSKaYJ6kcvU2LFjiyfEPF90dDQZGRmXvN3ExESWLFnCZ599VlyWm5tLUFDQJW9TRERERMpXmbZdQUEBtWrVAiAwMBAfH58SdSMjIzl69ChFRUX4+vpitVqxWq2YzeYS9TMyMirVW8kTVeY822w2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uqnMbQwcOJAVK1aUKIuPj2fVqlV8+umnvPzyywBcf/31LFiwoAaOwj1U5lwfOnSIjRs38sMPP2A2m1m/fn2JevPnzychIYF7772Xa6+9lsLCQmbPns2aNWu4++67mTlzJjabjVdeeYUlS5awcuVKunTpQnBwMCdOnCAnJ8eRhywiIiIicskq034OCwtj7dq1rF69GqPRyNatW0tt54MPPqBt27bFy88++yxr1qxhwoQJvPWW/UFzXbt2ZeXKlTV7QOdRsktExAHat2/Pvn37ipczMzPx8fEp/majUaNGF3xtSEgIZnPJjrheXvbMbE5ODh06dACgd+/eLFu2rLpDdzvlnev169fTp08fAPr160dSUlKZ21i8eDHXX389R48epWnTphiNRjp06EBiYiJpaWnk5eUxZMgQbr/9dk6dOgXY38ATEhJq/PhERERERKpTee1nk8lU/JnF29ubsLCwEq8tKipizZo19OrVq7gsMjISoMRr+/bty5IlS2r4SM5RsktExAESExOJjo4uXk5NTSUiIqJK27zjjjsYOHAgffv2BcDX15fjx49XaZueoLxzfeLECQIC7OOV/f39OXHiRKnX5+TkkJ2dTWhoKPXr1yc1NZXTp0+zevVqTp48yeHDh0lLS+Orr75iwIABvPfeewBERESwffv2mj9AEREREZFqVNFnle+//56OHTty8OBBAgMDS7x2/vz5ZY5QsVqtTJs2jbFjxwKObysr2SUiUoNmzZqFxWKhcePGxMTEVOu2586dS1JSEs8880y1btddVeZcBwUFkZWVBUB2djZBQUGl6ixbtoxrrrkGsH8b9fjjj3PNNdewefNmGjZsSGBgIF27dsXb25vevXuTkpJSU4ckIiIiIlJjKvtZpV+/fmzZsoWIiAi++eab4nKbzcaXX37J0KFDS70mPj6eW2+9lWbNmtVE6BXSBPUiIjVo7NixTJo0qVR5dHQ0GRkZl7zd/Px8vL298fPzK56QPjc3t8zkzeWiMuf6iiuu4MMPP+Thhx9m5cqV3HbbbaXqL1q0iKeeeqp4+cYbb+TGG2/k008/pbCwkJYtW3LgwAFsNhtbt24t7qadkZFBixYtaubgRERERESqWWXazwUFBdSqVQuAwMBAfHx8iuvl5OSwc+dOrr32WlJTU/nmm29ISEjgf//7H5mZmUydOrW4rqPbyurZJSLi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p3PWWWdxzjnn8Mtf/pKhQ4cCsHz5cgoLC3n77bdZvHgxAG3atGH58uU1+XJ1CjPskqrZl6+WLFiwgLPPPrvK+6Snp5df9TiS119/nYKCAp5//vlKl8GrI6p+J7I/v//++wwcOBCAAQMGMGfOnArrv7y/r1q1inPPPReIhbazZs2qtA3cxyVJkk7E008/TTgc5swzz6R79+6VbtO4cWN27NgBwM6dO2ncuHGF9SkpKRVup6amMnr0aC655BIWLFhAixYtWLp0KevXr6e4uJiHHnqIX/ziF0Bszq7U1FQuu+wyPvjggxp5jdIXGXZJ1ezLV0tKSkpo27btST1mq1atKC4uZurUqTz55JPUr1+/wvLnEz96dUTV7UT256NdFfyyjh078tZbbxGNRpkxYwbbt2+vtA3cxyVJkk7E5732f/zjH1doz83NZc2aNUBsXq3p06cD8Oabb9KrV68K22ZkZLB582YWLlxYfn549dVXU1hYSO/evbn00kuJRCI0adKEUChEVlYW27ZtY8+ePZSVlQGxc8ucnBwA1qxZU+VoAelkpCW6ACkonn76aaZNm0b//v2PeLXkgw8+4I477qjQdskll/Dd7363yseuW7du+e2CggLWrFlT/uFTUFDAypUradq06cm9AOkLTmZ//vJVwfbt21f5XFdeeSVTp07l4osvplmzZjRv3pxwOHxYmyRJkqpXVlYWe/bsAaBly5Z07dqVgoICunbtSs+ePdmwYQMTJ05k9OjRjBkzhquuuor09PTyqVTuuOMOiouL6dSpE48++iipqalEo1EuvPBCotEozz77LCtXruTWW2+lfv369OrVi/PPPx+IDaHs0qVLwl67gs2wS6omI0eO5MEHHzysvUOHDrzwwgsAdOrUicLCwuN+7F27dpGZmUk0GmX27NncfvvtAOXLd911FxC7OtKvX78TfxHSP53M/jxr1iwmT57MFVdcwfTp07nuuuuqfK7U1FTGjx9PNBplxIgR9OnTp9I2cB+XJEk6XuFwmHA4fMT1V155JdOmTWPw4MGMGTOGMWPGlK9r2bIlo0ePBiA/P5933nmnwn1/9atfHfZ4EyZMOKzty9NaLF26lB49ehAKhY7npUjHzGGMUg3r1q0bxcXFR91u8ODBzJs3j8GDB7N48WI2bNhQ/it07777Lj179qRv374MGTKEpUuXVlhu1aoV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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAABLsAAAMkCAYAAABQkSLjAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAADaiUlEQVR4nOzdd3hUVf7H8ffMpBHSCDW0JBBKaEmkSYkMELuiKNiWIoIdXXYVdRFc1qUsupZ1V1EWdAFFURZX8IdSlEiLREoAKSGBEJAOIaTXmd8fIyMhIaEkM5nh83qePM4959x7v/d6mbnznXPONVitVisiIiIiIiIiIiJuwOjsAERERERERERERKqLkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNtQsktERERERERERNyGkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNtQsktERERERERERNyGkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNtQsktERERERERERNyGkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbXg4O4DarCg7jzO7Dzo7DLdRL7IlXv6+VbbLKYbULAcEVIGIAPDzdM6+RUREREREROTqKdlViTO7D/LNXROdHYbbuPWrKTTu0b7KdqlZMGa9AwKqwOw+EF3fOfsWERERERERkaunYYwiIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbWiCenELyS+byd2TgMHDE4PJA59m7Wk6bCoBUQOdHZqIiIiIiIiIOJB6donbaDpsKjELc+gy9zh12/Vi37S7Kc096+ywRERERERERMSBlOwSt2P09KbBjaOxFORQcDTV2eGIiIiIiIiIiAMp2SVux1KYz6mVszH6BuDTtI2zwxERERERERERB3KZ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Q45PRERERERErl1Kdkmt4+cJ0fWdHYX7Gz16NBMnTuTZZ58lISGBXr162euWLl3KwoULycjIYPny5fj5+TF8+HD27t1L27Zt7e2GDRtGdHQ0GzZsKLPtjz76iA4dOtiX77zzThYuXMgjjzxS8wcmIiIiIiIi1zQNYxS5xnXq1InDhw/blzMyMvDx8cFgMFC/fn38/PwAMJlMGAyGMus2atQIo7Hs20hpaSnr1q0jNjbWXnbDDTewfPnyGjwKERERERERERslu0SucQkJCURERNiXU1NTCQ0NLdNm586dnDp1ijZt2lS5vc8++4whQ4aUKfP19eXMmTPVE7CIiIiIiIhIJZTsErlGzZkzB7PZTLNmzYiOjr5ou6ysLMaOHcusWbOq3KbVauV///sfd911VzVGKiIiIiIiInLpNGeXyDXq3JxdF4qIiCA9PR2wJa8eeeQRXn31VZo2bVrlNnNycti/fz+33XYbqampfPvtt8THx2OxWAgKCqruQxAREREREREpR8kuESkjODiYvLw8wPbUxu+//55Tp04B8MYbb9CsWTPmz5/P+PHjmTdvHv/4xz84e/YsWVlZvPbaa2zevBmAyZMnExcXh4+PD99++y033XST045JRERERERErh1Kdolcg8xmM2az+aL1gwYNYtWqVcTFxZGRkVGufvz48QCMGDGCESNGVLiNyZMn218vXbqUGTNmXFXMIiIiIiIiIpdCyS4RKediCawr9e6771br9kREREREREQuRhPUi4iIiIiIiIiI21CyS0RERERERERE3IaSXSIiIiIiIiIi4jaU7BIREREREREREbehCeql1skphtQs5+w7IgD8PJ2zbxERERERERG5ekp2Sa2TmgVj1jtn37P7QHR95+xbRERERERERK6ehjGKiIiIiIiIiIjbULJLRERERERERETchpJdIiIiIiIiIiLiNpTsEhERERERERERt6EJ6sUtJL9sJndPAgYPTwwmD3yatafpsKkERA10dmgiIiIiIiIi4kDq2SVuo+mwqcQszKHL3OPUbdeLfdPupjT3rLPDEhEREREREREHUrJL3I7R05sGN47GUpBDwdFUZ4cjIiIiIiIiIg6kZJe4HUthPqdWzsboG4BP0zbODkdEREREREREHMhlkl1FRUVMmjSJFi1aUKdOHQYMGEBiYiIGg4GvvvrK2eFJLXBk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6kWkjODgYPLy8gDbnATff/89p06dAuCNN96gWbNmzJ8/n/HjxzNv3jz+8Y9/cPbsWbKysnjttdfsv05NnjyZuLg4fHx8+Pbbb7npppucdkwiIiIi16rz7+1uuukmew8wDw8PvvjiC44dO2a/txsxYgQnT57E29ub//znPwA899xzDBw4EJPJZC+Lj49n9OjRTjoi55szZw6rVq2ib9++F+1Ft2vXLp566qkyZbfccgtBQUFkZWUBtuTihZP8X1gfGBjIoEGDym3/oYce4oEHHmDo0KHs2LGDzp07V8ORibgPJbtErkFmsxmz2XzR+kGDBrFq1Sri4uLIyMgoVz9+/HgARowYwYgRIyrcxuTJk+2vly5dqgkzRURERGrI5dzbLV68uFz9uXu7L7/8slxdXFycfWJ0gJKSEk6cOFGmR9O15tyTLy/Upk0b+/nt0KED8fHx5dr89NNPfPrpp9x5552sWbOG++67r0x9jx49ytR36tSJdevWMX/+fJKSkpg9ezbDhw/H29sbo9GIv78/Pj4+gK3HXZ8+far/gEVckIYxikg5I0aMKHNTc7Xeffdd+1MdRURERMSxqvPezsPDgzlz5lTLttxNVFRUlfOade/encLCQmJjY4mKiqJx48YcO3aM119/vcL6P//5z6xcuZJvv/2W6OhoxowZw5IlSzCbzdxwww00b97cPqQ0NTWVTp061fhxirgC9ewSERERERERuQSV9aIzGo106dKFlJSUSuc0e/fdd8ssN2nSxN67rqL6c1atWgXA0KFDGTp0aJm63bt307VrVwwGw6UchojbU7JLREREREREpBpUNLzRESIjI4mMjHTKvkVqIw1jFBERERERERERt6Fkl4iIiIiIiIiIuA0lu0RERERERERExG1ozi6pdXKKITXLOfuOCAA/T+fsW0RERERERESunpJdUuukZsGY9c7Z9+w+EF3fOfsWERERERERkaunYYwiIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4Dc3ZJW4h+WUzuXsSMHh4YjB54NOsPU2HTSUgaqCzQxMRERERERERB1LPLnEbTYdNJWZhDl3mHqduu17sm3Y3pblnnR2WiIiIiIiIiDiQkl3idoye3jS4cTSWghwKjqY6OxwRERERERERcSAlu8TtWArzObVyNkbfAHyatnF2OCIiIiIi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", "text/plain": [ "
" ] @@ -776,10 +776,10 @@ "execution_count": 18, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:01.534655Z", - "iopub.status.busy": "2024-10-30T11:02:01.534234Z", - "iopub.status.idle": "2024-10-30T11:02:01.825402Z", - "shell.execute_reply": "2024-10-30T11:02:01.824823Z" + "iopub.execute_input": "2024-10-30T17:21:24.659094Z", + "iopub.status.busy": "2024-10-30T17:21:24.658714Z", + "iopub.status.idle": "2024-10-30T17:21:24.918579Z", + "shell.execute_reply": "2024-10-30T17:21:24.918109Z" } }, "outputs": [ diff --git a/dev/.doctrees/nbsphinx/explanations/state-vectors-and-gates.ipynb b/dev/.doctrees/nbsphinx/explanations/state-vectors-and-gates.ipynb index a356abd7f..9f8eda941 100644 --- a/dev/.doctrees/nbsphinx/explanations/state-vectors-and-gates.ipynb +++ b/dev/.doctrees/nbsphinx/explanations/state-vectors-and-gates.ipynb @@ -26,10 +26,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.213294Z", - "iopub.status.busy": "2024-10-30T11:02:04.213106Z", - "iopub.status.idle": "2024-10-30T11:02:04.926361Z", - "shell.execute_reply": "2024-10-30T11:02:04.925764Z" + "iopub.execute_input": "2024-10-30T17:21:27.432929Z", + "iopub.status.busy": "2024-10-30T17:21:27.432497Z", + "iopub.status.idle": "2024-10-30T17:21:28.130913Z", + "shell.execute_reply": "2024-10-30T17:21:28.130418Z" } }, "outputs": [ @@ -74,10 +74,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.928557Z", - "iopub.status.busy": "2024-10-30T11:02:04.928276Z", - "iopub.status.idle": "2024-10-30T11:02:04.935032Z", - "shell.execute_reply": "2024-10-30T11:02:04.934564Z" + "iopub.execute_input": "2024-10-30T17:21:28.133138Z", + "iopub.status.busy": "2024-10-30T17:21:28.132648Z", + "iopub.status.idle": "2024-10-30T17:21:28.139425Z", + "shell.execute_reply": "2024-10-30T17:21:28.138859Z" } }, "outputs": [ @@ -120,10 +120,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.936777Z", - "iopub.status.busy": "2024-10-30T11:02:04.936585Z", - "iopub.status.idle": "2024-10-30T11:02:04.940977Z", - "shell.execute_reply": "2024-10-30T11:02:04.940362Z" + "iopub.execute_input": "2024-10-30T17:21:28.141328Z", + "iopub.status.busy": "2024-10-30T17:21:28.141036Z", + "iopub.status.idle": "2024-10-30T17:21:28.145088Z", + "shell.execute_reply": "2024-10-30T17:21:28.144629Z" } }, "outputs": [ @@ -157,10 +157,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.942770Z", - "iopub.status.busy": "2024-10-30T11:02:04.942578Z", - "iopub.status.idle": "2024-10-30T11:02:04.947073Z", - "shell.execute_reply": "2024-10-30T11:02:04.946594Z" + "iopub.execute_input": "2024-10-30T17:21:28.146841Z", + "iopub.status.busy": "2024-10-30T17:21:28.146518Z", + "iopub.status.idle": "2024-10-30T17:21:28.150558Z", + "shell.execute_reply": "2024-10-30T17:21:28.150019Z" } }, "outputs": [ @@ -199,10 +199,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.948769Z", - "iopub.status.busy": "2024-10-30T11:02:04.948581Z", - "iopub.status.idle": "2024-10-30T11:02:04.954461Z", - "shell.execute_reply": "2024-10-30T11:02:04.953858Z" + "iopub.execute_input": "2024-10-30T17:21:28.152282Z", + "iopub.status.busy": "2024-10-30T17:21:28.152101Z", + "iopub.status.idle": "2024-10-30T17:21:28.157873Z", + "shell.execute_reply": "2024-10-30T17:21:28.157326Z" } }, "outputs": [ @@ -245,10 +245,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.956465Z", - "iopub.status.busy": "2024-10-30T11:02:04.956116Z", - "iopub.status.idle": "2024-10-30T11:02:04.961532Z", - "shell.execute_reply": "2024-10-30T11:02:04.961064Z" + "iopub.execute_input": "2024-10-30T17:21:28.159747Z", + "iopub.status.busy": "2024-10-30T17:21:28.159337Z", + "iopub.status.idle": "2024-10-30T17:21:28.164883Z", + "shell.execute_reply": "2024-10-30T17:21:28.164416Z" } }, "outputs": [ @@ -293,10 +293,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.963449Z", - "iopub.status.busy": "2024-10-30T11:02:04.963161Z", - "iopub.status.idle": "2024-10-30T11:02:04.968007Z", - "shell.execute_reply": "2024-10-30T11:02:04.967443Z" + "iopub.execute_input": "2024-10-30T17:21:28.166721Z", + "iopub.status.busy": "2024-10-30T17:21:28.166370Z", + "iopub.status.idle": "2024-10-30T17:21:28.171141Z", + "shell.execute_reply": "2024-10-30T17:21:28.170697Z" } }, "outputs": [ diff --git a/dev/.doctrees/nbsphinx/explanations_qiskit-gate-decompositions_34_0.png b/dev/.doctrees/nbsphinx/explanations_qiskit-gate-decompositions_34_0.png index 7cf60ebf9..1f7923615 100644 Binary files a/dev/.doctrees/nbsphinx/explanations_qiskit-gate-decompositions_34_0.png and b/dev/.doctrees/nbsphinx/explanations_qiskit-gate-decompositions_34_0.png differ diff --git a/dev/.doctrees/nbsphinx/how-to-guides/entanglement-forging.ipynb b/dev/.doctrees/nbsphinx/how-to-guides/entanglement-forging.ipynb index e814c3cb4..47ca28ee6 100644 --- a/dev/.doctrees/nbsphinx/how-to-guides/entanglement-forging.ipynb +++ b/dev/.doctrees/nbsphinx/how-to-guides/entanglement-forging.ipynb @@ -18,10 +18,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:06.799619Z", - "iopub.status.busy": "2024-10-30T11:02:06.799177Z", - "iopub.status.idle": "2024-10-30T11:02:07.787317Z", - "shell.execute_reply": "2024-10-30T11:02:07.786723Z" + "iopub.execute_input": "2024-10-30T17:21:29.884603Z", + "iopub.status.busy": "2024-10-30T17:21:29.884389Z", + "iopub.status.idle": "2024-10-30T17:21:30.855172Z", + "shell.execute_reply": "2024-10-30T17:21:30.854521Z" } }, "outputs": [ @@ -36,7 +36,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Parsing /tmp/tmpq681a8rd\n", + "Parsing /tmp/tmpkl79nbln\n", "converged SCF energy = -75.6787887956314\n" ] }, @@ -125,10 +125,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:07.790330Z", - "iopub.status.busy": "2024-10-30T11:02:07.790010Z", - "iopub.status.idle": "2024-10-30T11:02:07.794567Z", - "shell.execute_reply": "2024-10-30T11:02:07.794106Z" + "iopub.execute_input": "2024-10-30T17:21:30.858507Z", + "iopub.status.busy": "2024-10-30T17:21:30.857593Z", + "iopub.status.idle": "2024-10-30T17:21:30.862817Z", + "shell.execute_reply": "2024-10-30T17:21:30.862223Z" } }, "outputs": [], @@ -168,10 +168,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:07.796858Z", - "iopub.status.busy": "2024-10-30T11:02:07.796248Z", - "iopub.status.idle": "2024-10-30T11:02:07.799770Z", - "shell.execute_reply": "2024-10-30T11:02:07.799294Z" + "iopub.execute_input": "2024-10-30T17:21:30.864491Z", + "iopub.status.busy": "2024-10-30T17:21:30.864304Z", + "iopub.status.idle": "2024-10-30T17:21:30.867442Z", + "shell.execute_reply": "2024-10-30T17:21:30.866989Z" } }, "outputs": [], @@ -200,10 +200,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:07.801529Z", - "iopub.status.busy": "2024-10-30T11:02:07.801340Z", - "iopub.status.idle": "2024-10-30T11:02:07.918957Z", - "shell.execute_reply": "2024-10-30T11:02:07.918469Z" + "iopub.execute_input": "2024-10-30T17:21:30.869482Z", + "iopub.status.busy": "2024-10-30T17:21:30.869102Z", + "iopub.status.idle": "2024-10-30T17:21:30.985754Z", + "shell.execute_reply": "2024-10-30T17:21:30.985235Z" } }, "outputs": [ @@ -211,7 +211,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Energy at initialialization: -75.67794403659727\n" + "Energy at initialialization: -75.67794403659725\n" ] } ], @@ -238,10 +238,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:07.920886Z", - "iopub.status.busy": "2024-10-30T11:02:07.920691Z", - "iopub.status.idle": "2024-10-30T11:02:16.033216Z", - "shell.execute_reply": "2024-10-30T11:02:16.032605Z" + "iopub.execute_input": "2024-10-30T17:21:30.988023Z", + "iopub.status.busy": "2024-10-30T17:21:30.987578Z", + "iopub.status.idle": "2024-10-30T17:21:38.832577Z", + "shell.execute_reply": "2024-10-30T17:21:38.832032Z" } }, "outputs": [ @@ -253,10 +253,10 @@ " message: STOP: TOTAL NO. of f AND g EVALUATIONS EXCEEDS LIMIT\n", " success: False\n", " status: 1\n", - " fun: -75.6838157319136\n", - " x: [-1.603e-01 6.419e-03 ... 5.748e-02 -1.005e-01]\n", + " fun: -75.68381553436124\n", + " x: [-1.603e-01 6.418e-03 ... 5.748e-02 -1.005e-01]\n", " nit: 3\n", - " jac: [ 2.146e-04 9.663e-05 ... -4.752e-03 7.383e-03]\n", + " jac: [ 2.146e-04 1.080e-04 ... -4.751e-03 7.452e-03]\n", " nfev: 112\n", " njev: 7\n", " hess_inv: <15x15 LbfgsInvHessProduct with dtype=float64>\n" diff --git a/dev/.doctrees/nbsphinx/how-to-guides/fermion-operator.ipynb b/dev/.doctrees/nbsphinx/how-to-guides/fermion-operator.ipynb index 6678d8406..27ce66995 100644 --- a/dev/.doctrees/nbsphinx/how-to-guides/fermion-operator.ipynb +++ b/dev/.doctrees/nbsphinx/how-to-guides/fermion-operator.ipynb @@ -29,10 +29,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:17.552188Z", - "iopub.status.busy": "2024-10-30T11:02:17.551987Z", - "iopub.status.idle": "2024-10-30T11:02:18.267889Z", - "shell.execute_reply": "2024-10-30T11:02:18.267279Z" + "iopub.execute_input": "2024-10-30T17:21:40.347687Z", + "iopub.status.busy": "2024-10-30T17:21:40.347502Z", + "iopub.status.idle": "2024-10-30T17:21:41.049309Z", + "shell.execute_reply": "2024-10-30T17:21:41.048730Z" } }, "outputs": [ @@ -40,8 +40,8 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (cre_a(3), des_a(0)): -0.25,\n", " (cre_b(1), des_b(5), cre_a(4)): 1+1j,\n", + " (cre_a(3), des_a(0)): -0.25,\n", " (cre_a(0), des_a(3)): 0.5\n", "})" ] @@ -76,17 +76,17 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.270150Z", - "iopub.status.busy": "2024-10-30T11:02:18.269663Z", - "iopub.status.idle": "2024-10-30T11:02:18.273713Z", - "shell.execute_reply": "2024-10-30T11:02:18.273176Z" + "iopub.execute_input": "2024-10-30T17:21:41.051594Z", + "iopub.status.busy": "2024-10-30T17:21:41.051035Z", + "iopub.status.idle": "2024-10-30T17:21:41.055085Z", + "shell.execute_reply": "2024-10-30T17:21:41.054612Z" } }, "outputs": [ { "data": { "text/plain": [ - "'FermionOperator({((True, False, 3), (False, False, 0)): -0.25+0j, ((True, True, 1), (False, True, 5), (True, False, 4)): 1+1j, ((True, False, 0), (False, False, 3)): 0.5+0j})'" + "'FermionOperator({((True, True, 1), (False, True, 5), (True, False, 4)): 1+1j, ((True, False, 3), (False, False, 0)): -0.25+0j, ((True, False, 0), (False, False, 3)): 0.5+0j})'" ] }, "execution_count": 2, @@ -110,10 +110,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.275787Z", - "iopub.status.busy": "2024-10-30T11:02:18.275434Z", - "iopub.status.idle": "2024-10-30T11:02:18.279632Z", - "shell.execute_reply": "2024-10-30T11:02:18.279166Z" + "iopub.execute_input": "2024-10-30T17:21:41.056801Z", + "iopub.status.busy": "2024-10-30T17:21:41.056614Z", + "iopub.status.idle": "2024-10-30T17:21:41.060853Z", + "shell.execute_reply": "2024-10-30T17:21:41.060278Z" } }, "outputs": [ @@ -121,17 +121,17 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (cre_b(2)): 0-0.25j,\n", - " (des_a(3), des_b(3)): 0.0625,\n", - " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625,\n", - " (cre_a(3), des_a(0)): -0.5,\n", " (cre_a(0), des_a(3)): 1,\n", + " (cre_b(2)): 0-0.25j,\n", + " (cre_a(0), des_a(3), cre_b(2)): 0+0.5j,\n", " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -0.25-0.25j,\n", " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): -1+1j,\n", - " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,\n", - " (cre_a(3), des_a(0), cre_b(2)): 0-0.25j,\n", + " (cre_a(3), des_a(0)): -0.5,\n", " (cre_b(1), des_b(5), cre_a(4)): 2+2j,\n", - " (cre_a(0), des_a(3), cre_b(2)): 0+0.5j\n", + " (cre_a(3), des_a(0), cre_b(2)): 0-0.25j,\n", + " (des_a(3), des_b(3)): 0.0625,\n", + " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,\n", + " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625\n", "})" ] }, @@ -170,10 +170,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.281589Z", - "iopub.status.busy": "2024-10-30T11:02:18.281176Z", - "iopub.status.idle": "2024-10-30T11:02:18.285250Z", - "shell.execute_reply": "2024-10-30T11:02:18.284683Z" + "iopub.execute_input": "2024-10-30T17:21:41.063022Z", + "iopub.status.busy": "2024-10-30T17:21:41.062604Z", + "iopub.status.idle": "2024-10-30T17:21:41.066826Z", + "shell.execute_reply": "2024-10-30T17:21:41.066353Z" } }, "outputs": [ @@ -181,17 +181,17 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (cre_b(2)): -5,\n", - " (des_a(3), des_b(3)): 0-1.25j,\n", - " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j,\n", - " (cre_a(3), des_a(0)): 0+3j,\n", " (cre_a(0), des_a(3)): 0-6j,\n", + " (cre_b(2)): -5,\n", + " (cre_a(0), des_a(3), cre_b(2)): 2,\n", " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -1+1j,\n", " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): 4+4j,\n", - " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,\n", - " (cre_a(3), des_a(0), cre_b(2)): -1,\n", + " (cre_a(3), des_a(0)): 0+3j,\n", " (cre_b(1), des_b(5), cre_a(4)): 12-12j,\n", - " (cre_a(0), des_a(3), cre_b(2)): 2\n", + " (cre_a(3), des_a(0), cre_b(2)): -1,\n", + " (des_a(3), des_b(3)): 0-1.25j,\n", + " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,\n", + " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j\n", "})" ] }, @@ -220,10 +220,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.287192Z", - "iopub.status.busy": "2024-10-30T11:02:18.286854Z", - "iopub.status.idle": "2024-10-30T11:02:18.290616Z", - "shell.execute_reply": "2024-10-30T11:02:18.290049Z" + "iopub.execute_input": "2024-10-30T17:21:41.068680Z", + "iopub.status.busy": "2024-10-30T17:21:41.068347Z", + "iopub.status.idle": "2024-10-30T17:21:41.072185Z", + "shell.execute_reply": "2024-10-30T17:21:41.071603Z" } }, "outputs": [ @@ -231,16 +231,16 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n", " (cre_b(2), cre_a(3), des_a(0)): -1,\n", " (cre_b(2)): -5,\n", - " (cre_a(0), des_a(3)): 0-6j,\n", - " (cre_b(1), cre_a(4), des_b(5)): -12+12j,\n", " (cre_b(2), cre_a(0), des_a(3)): 2,\n", + " (cre_a(3), des_a(0)): 0+3j,\n", " (des_b(3), des_a(3)): 0+1.25j,\n", - " (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j,\n", + " (cre_b(1), cre_a(4), des_b(5)): -12+12j,\n", " (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,\n", - " (cre_a(3), des_a(0)): 0+3j\n", + " (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j,\n", + " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n", + " (cre_a(0), des_a(3)): 0-6j\n", "})" ] }, @@ -265,10 +265,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.292591Z", - "iopub.status.busy": "2024-10-30T11:02:18.292261Z", - "iopub.status.idle": "2024-10-30T11:02:18.295191Z", - "shell.execute_reply": "2024-10-30T11:02:18.294730Z" + "iopub.execute_input": "2024-10-30T17:21:41.074327Z", + "iopub.status.busy": "2024-10-30T17:21:41.074013Z", + "iopub.status.idle": "2024-10-30T17:21:41.077472Z", + "shell.execute_reply": "2024-10-30T17:21:41.076971Z" } }, "outputs": [ @@ -298,10 +298,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.297177Z", - "iopub.status.busy": "2024-10-30T11:02:18.296716Z", - "iopub.status.idle": "2024-10-30T11:02:18.300923Z", - "shell.execute_reply": "2024-10-30T11:02:18.300358Z" + "iopub.execute_input": "2024-10-30T17:21:41.079311Z", + "iopub.status.busy": "2024-10-30T17:21:41.078974Z", + "iopub.status.idle": "2024-10-30T17:21:41.082757Z", + "shell.execute_reply": "2024-10-30T17:21:41.082305Z" } }, "outputs": [ @@ -341,21 +341,21 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.302788Z", - "iopub.status.busy": "2024-10-30T11:02:18.302463Z", - "iopub.status.idle": "2024-10-30T11:02:18.308637Z", - "shell.execute_reply": "2024-10-30T11:02:18.308163Z" + "iopub.execute_input": "2024-10-30T17:21:41.084705Z", + "iopub.status.busy": "2024-10-30T17:21:41.084342Z", + "iopub.status.idle": "2024-10-30T17:21:41.089856Z", + "shell.execute_reply": "2024-10-30T17:21:41.089286Z" } }, "outputs": [ { "data": { "text/plain": [ - "array([0. +0.j , 0. +0.j ,\n", - " 0. +0.j , 0. +0.j ,\n", - " 0.0241729+0.17754545j, 0. +0.j ,\n", - " 0. +0.j , 0. +0.j ,\n", - " 0. +0.j ])" + "array([0. +0.j , 0. +0.j ,\n", + " 0. +0.j , 0. +0.j ,\n", + " 0.02018867-0.06374738j, 0. +0.j ,\n", + " 0. +0.j , 0. +0.j ,\n", + " 0. +0.j ])" ] }, "execution_count": 8, @@ -380,10 +380,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.310646Z", - "iopub.status.busy": "2024-10-30T11:02:18.310306Z", - "iopub.status.idle": "2024-10-30T11:02:18.321305Z", - "shell.execute_reply": "2024-10-30T11:02:18.320759Z" + "iopub.execute_input": "2024-10-30T17:21:41.091835Z", + "iopub.status.busy": "2024-10-30T17:21:41.091492Z", + "iopub.status.idle": "2024-10-30T17:21:41.103941Z", + "shell.execute_reply": "2024-10-30T17:21:41.103447Z" } }, "outputs": [ diff --git a/dev/.doctrees/nbsphinx/how-to-guides/lucj.ipynb b/dev/.doctrees/nbsphinx/how-to-guides/lucj.ipynb index dc094e2cd..5bdf9777f 100644 --- a/dev/.doctrees/nbsphinx/how-to-guides/lucj.ipynb +++ b/dev/.doctrees/nbsphinx/how-to-guides/lucj.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:20.047012Z", - "iopub.status.busy": "2024-10-30T11:02:20.046561Z", - "iopub.status.idle": "2024-10-30T11:02:21.051798Z", - "shell.execute_reply": "2024-10-30T11:02:21.051163Z" + "iopub.execute_input": "2024-10-30T17:21:42.861143Z", + "iopub.status.busy": "2024-10-30T17:21:42.860674Z", + "iopub.status.idle": "2024-10-30T17:21:43.849007Z", + "shell.execute_reply": "2024-10-30T17:21:43.848438Z" } }, "outputs": [ @@ -34,7 +34,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Parsing /tmp/tmpegdtop9g\n", + "Parsing /tmp/tmpsd2yb9dw\n", "converged SCF energy = -77.8266321248744\n" ] }, @@ -123,10 +123,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:21.055188Z", - "iopub.status.busy": "2024-10-30T11:02:21.054241Z", - "iopub.status.idle": "2024-10-30T11:02:21.126291Z", - "shell.execute_reply": "2024-10-30T11:02:21.125695Z" + "iopub.execute_input": "2024-10-30T17:21:43.852334Z", + "iopub.status.busy": "2024-10-30T17:21:43.851596Z", + "iopub.status.idle": "2024-10-30T17:21:43.922312Z", + "shell.execute_reply": "2024-10-30T17:21:43.921696Z" } }, "outputs": [ @@ -134,14 +134,14 @@ "name": "stdout", "output_type": "stream", "text": [ - "E(CCSD) = -77.87421536374025 E_corr = -0.04758323886584519\n" + "E(CCSD) = -77.87421536374029 E_corr = -0.04758323886585046\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Energy at initialization: -77.87160024816285\n" + "Energy at initialization: -77.87160024816271\n" ] }, { @@ -189,10 +189,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:21.128941Z", - "iopub.status.busy": "2024-10-30T11:02:21.128722Z", - "iopub.status.idle": "2024-10-30T11:03:50.311436Z", - "shell.execute_reply": "2024-10-30T11:03:50.310850Z" + "iopub.execute_input": "2024-10-30T17:21:43.924766Z", + "iopub.status.busy": "2024-10-30T17:21:43.924483Z", + "iopub.status.idle": "2024-10-30T17:23:21.077774Z", + "shell.execute_reply": "2024-10-30T17:23:21.077139Z" } }, "outputs": [ @@ -201,15 +201,15 @@ "output_type": "stream", "text": [ "Number of parameters: 72\n", - " message: CONVERGENCE: REL_REDUCTION_OF_F_<=_FACTR*EPSMCH\n", - " success: True\n", - " status: 0\n", - " fun: -77.87387356072195\n", - " x: [-4.239e-04 -1.276e+00 ... 4.256e-04 1.285e-01]\n", - " nit: 8\n", - " jac: [-1.847e-05 8.527e-06 ... 1.094e-04 -1.577e-04]\n", - " nfev: 803\n", - " njev: 11\n", + " message: STOP: TOTAL NO. of ITERATIONS REACHED LIMIT\n", + " success: False\n", + " status: 1\n", + " fun: -77.87387391770547\n", + " x: [-4.774e-01 4.759e-04 ... 3.375e-04 1.287e-01]\n", + " nit: 10\n", + " jac: [-2.416e-05 1.279e-05 ... 4.263e-06 2.842e-06]\n", + " nfev: 876\n", + " njev: 12\n", " hess_inv: <72x72 LbfgsInvHessProduct with dtype=float64>\n" ] } @@ -251,10 +251,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:03:50.315488Z", - "iopub.status.busy": "2024-10-30T11:03:50.314200Z", - "iopub.status.idle": "2024-10-30T11:04:27.960416Z", - "shell.execute_reply": "2024-10-30T11:04:27.959828Z" + "iopub.execute_input": "2024-10-30T17:23:21.080223Z", + "iopub.status.busy": "2024-10-30T17:23:21.079847Z", + "iopub.status.idle": "2024-10-30T17:23:57.988481Z", + "shell.execute_reply": "2024-10-30T17:23:57.987916Z" } }, "outputs": [ @@ -266,10 +266,10 @@ " message: CONVERGENCE: REL_REDUCTION_OF_F_<=_FACTR*EPSMCH\n", " success: True\n", " status: 0\n", - " fun: -77.8736342667721\n", - " x: [ 1.265e-05 -1.276e+00 ... 3.522e-02 2.561e-01]\n", + " fun: -77.87363426550762\n", + " x: [-4.773e-01 -2.077e-05 ... 3.520e-02 2.561e-01]\n", " nit: 5\n", - " jac: [ 5.684e-06 -5.684e-06 ... 1.421e-06 -2.842e-06]\n", + " jac: [-1.990e-05 -2.842e-05 ... 0.000e+00 5.684e-06]\n", " nfev: 329\n", " njev: 7\n", " hess_inv: <46x46 LbfgsInvHessProduct with dtype=float64>\n" @@ -314,10 +314,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:27.963842Z", - "iopub.status.busy": "2024-10-30T11:04:27.962821Z", - "iopub.status.idle": "2024-10-30T11:04:45.377646Z", - "shell.execute_reply": "2024-10-30T11:04:45.377076Z" + "iopub.execute_input": "2024-10-30T17:23:57.991125Z", + "iopub.status.busy": "2024-10-30T17:23:57.990709Z", + "iopub.status.idle": "2024-10-30T17:24:22.818524Z", + "shell.execute_reply": "2024-10-30T17:24:22.817956Z" } }, "outputs": [ @@ -328,34 +328,29 @@ "Number of parameters: 46\n", " message: Convergence: Relative reduction of objective function <= ftol.\n", " success: True\n", - " fun: -77.87363426263045\n", - " x: [ 2.628e-03 -1.275e+00 ... 3.474e-02 2.555e-01]\n", - " nit: 4\n", - " jac: [-1.066e-05 -8.752e-07 ... 4.234e-06 -4.802e-06]\n", - " nfev: 604\n", - " njev: 5\n", - " nlinop: 374\n", + " fun: -77.87363432790247\n", + " x: [-4.781e-01 -4.027e-04 ... 3.489e-02 2.558e-01]\n", + " nit: 3\n", + " jac: [-3.952e-07 -4.066e-07 ... -9.950e-08 -1.825e-07]\n", + " nfev: 574\n", + " njev: 4\n", + " nlinop: 390\n", "\n", "Iteration 1\n", - " Energy: -77.87362139128116\n", - " Norm of gradient: 0.0029592887084727917\n", - " Regularization hyperparameter: 0.0007585233428996984\n", - " Variation hyperparameter: 0.9663689557372899\n", + " Energy: -77.87363172968752\n", + " Norm of gradient: 0.001111506023146444\n", + " Regularization hyperparameter: 0.0016794907520957037\n", + " Variation hyperparameter: 0.9974692033826795\n", "Iteration 2\n", - " Energy: -77.87363310790793\n", - " Norm of gradient: 0.00040023678229488967\n", - " Regularization hyperparameter: 0.019897526685627408\n", - " Variation hyperparameter: 0.9657827349147471\n", + " Energy: -77.87363431007884\n", + " Norm of gradient: 5.217569337446581e-05\n", + " Regularization hyperparameter: 0.003429956535936252\n", + " Variation hyperparameter: 0.9972372604839628\n", "Iteration 3\n", - " Energy: -77.8736339780716\n", - " Norm of gradient: 0.0001508084642978354\n", - " Regularization hyperparameter: 0.019897534413323977\n", - " Variation hyperparameter: 0.9657827374627213\n", - "Iteration 4\n", - " Energy: -77.87363426263045\n", - " Norm of gradient: 9.193707353569222e-05\n", - " Regularization hyperparameter: 0.019897463779375846\n", - " Variation hyperparameter: 0.9657827159506404\n" + " Energy: -77.87363432790247\n", + " Norm of gradient: 1.1534535000519323e-05\n", + " Regularization hyperparameter: 0.003429956535936252\n", + " Variation hyperparameter: 0.9972372604839628\n" ] } ], diff --git a/dev/.doctrees/nbsphinx/how-to-guides/qiskit-circuits.ipynb b/dev/.doctrees/nbsphinx/how-to-guides/qiskit-circuits.ipynb index 03b14b621..a37608e35 100644 --- a/dev/.doctrees/nbsphinx/how-to-guides/qiskit-circuits.ipynb +++ b/dev/.doctrees/nbsphinx/how-to-guides/qiskit-circuits.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:46.945295Z", - "iopub.status.busy": "2024-10-30T11:04:46.944930Z", - "iopub.status.idle": "2024-10-30T11:04:47.635931Z", - "shell.execute_reply": "2024-10-30T11:04:47.635400Z" + "iopub.execute_input": "2024-10-30T17:24:24.572909Z", + "iopub.status.busy": "2024-10-30T17:24:24.572728Z", + "iopub.status.idle": "2024-10-30T17:24:25.274720Z", + "shell.execute_reply": "2024-10-30T17:24:25.274188Z" } }, "outputs": [], @@ -54,10 +54,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:47.638410Z", - "iopub.status.busy": "2024-10-30T11:04:47.637912Z", - "iopub.status.idle": "2024-10-30T11:04:48.208954Z", - "shell.execute_reply": "2024-10-30T11:04:48.208394Z" + "iopub.execute_input": "2024-10-30T17:24:25.276979Z", + "iopub.status.busy": "2024-10-30T17:24:25.276684Z", + "iopub.status.idle": "2024-10-30T17:24:25.849816Z", + "shell.execute_reply": "2024-10-30T17:24:25.849202Z" } }, "outputs": [ @@ -103,10 +103,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.211147Z", - "iopub.status.busy": "2024-10-30T11:04:48.210859Z", - "iopub.status.idle": "2024-10-30T11:04:48.270195Z", - "shell.execute_reply": "2024-10-30T11:04:48.269544Z" + "iopub.execute_input": "2024-10-30T17:24:25.852374Z", + "iopub.status.busy": "2024-10-30T17:24:25.851675Z", + "iopub.status.idle": "2024-10-30T17:24:25.910786Z", + "shell.execute_reply": "2024-10-30T17:24:25.910314Z" } }, "outputs": [ @@ -160,17 +160,17 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.272183Z", - "iopub.status.busy": "2024-10-30T11:04:48.271985Z", - "iopub.status.idle": "2024-10-30T11:04:48.276051Z", - "shell.execute_reply": "2024-10-30T11:04:48.275565Z" + "iopub.execute_input": "2024-10-30T17:24:25.912814Z", + "iopub.status.busy": "2024-10-30T17:24:25.912450Z", + "iopub.status.idle": "2024-10-30T17:24:25.916282Z", + "shell.execute_reply": "2024-10-30T17:24:25.915818Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 4, @@ -195,17 +195,17 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.277936Z", - "iopub.status.busy": "2024-10-30T11:04:48.277746Z", - "iopub.status.idle": "2024-10-30T11:04:48.282606Z", - "shell.execute_reply": "2024-10-30T11:04:48.282005Z" + "iopub.execute_input": "2024-10-30T17:24:25.918341Z", + "iopub.status.busy": "2024-10-30T17:24:25.917986Z", + "iopub.status.idle": "2024-10-30T17:24:25.922531Z", + "shell.execute_reply": "2024-10-30T17:24:25.922078Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 5, @@ -242,17 +242,17 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.284718Z", - "iopub.status.busy": "2024-10-30T11:04:48.284277Z", - "iopub.status.idle": "2024-10-30T11:04:48.288868Z", - "shell.execute_reply": "2024-10-30T11:04:48.288283Z" + "iopub.execute_input": "2024-10-30T17:24:25.924383Z", + "iopub.status.busy": "2024-10-30T17:24:25.924041Z", + "iopub.status.idle": "2024-10-30T17:24:25.928566Z", + "shell.execute_reply": "2024-10-30T17:24:25.927985Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 6, @@ -279,17 +279,17 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.290983Z", - "iopub.status.busy": "2024-10-30T11:04:48.290606Z", - "iopub.status.idle": "2024-10-30T11:04:48.294874Z", - "shell.execute_reply": "2024-10-30T11:04:48.294325Z" + "iopub.execute_input": "2024-10-30T17:24:25.930403Z", + "iopub.status.busy": "2024-10-30T17:24:25.930062Z", + "iopub.status.idle": "2024-10-30T17:24:25.934042Z", + "shell.execute_reply": "2024-10-30T17:24:25.933582Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 7, @@ -315,17 +315,17 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.296829Z", - "iopub.status.busy": "2024-10-30T11:04:48.296641Z", - "iopub.status.idle": "2024-10-30T11:04:48.301109Z", - "shell.execute_reply": "2024-10-30T11:04:48.300529Z" + "iopub.execute_input": "2024-10-30T17:24:25.935770Z", + "iopub.status.busy": "2024-10-30T17:24:25.935570Z", + "iopub.status.idle": "2024-10-30T17:24:25.939868Z", + "shell.execute_reply": "2024-10-30T17:24:25.939415Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 8, @@ -354,17 +354,17 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.303149Z", - "iopub.status.busy": "2024-10-30T11:04:48.302796Z", - "iopub.status.idle": "2024-10-30T11:04:48.307688Z", - "shell.execute_reply": "2024-10-30T11:04:48.307191Z" + "iopub.execute_input": "2024-10-30T17:24:25.941870Z", + "iopub.status.busy": "2024-10-30T17:24:25.941492Z", + "iopub.status.idle": "2024-10-30T17:24:25.946559Z", + "shell.execute_reply": "2024-10-30T17:24:25.946102Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 9, @@ -391,17 +391,17 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.309384Z", - "iopub.status.busy": "2024-10-30T11:04:48.309196Z", - "iopub.status.idle": "2024-10-30T11:04:48.314198Z", - "shell.execute_reply": "2024-10-30T11:04:48.313717Z" + "iopub.execute_input": "2024-10-30T17:24:25.948516Z", + "iopub.status.busy": "2024-10-30T17:24:25.948163Z", + "iopub.status.idle": "2024-10-30T17:24:25.953909Z", + "shell.execute_reply": "2024-10-30T17:24:25.953332Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 10, @@ -428,17 +428,17 @@ "execution_count": 11, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.316024Z", - "iopub.status.busy": "2024-10-30T11:04:48.315711Z", - "iopub.status.idle": "2024-10-30T11:04:48.320840Z", - "shell.execute_reply": "2024-10-30T11:04:48.320376Z" + "iopub.execute_input": "2024-10-30T17:24:25.955887Z", + "iopub.status.busy": "2024-10-30T17:24:25.955680Z", + "iopub.status.idle": "2024-10-30T17:24:25.961637Z", + "shell.execute_reply": "2024-10-30T17:24:25.961032Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 11, diff --git a/dev/.doctrees/nbsphinx/how-to-guides/qiskit-sampler.ipynb b/dev/.doctrees/nbsphinx/how-to-guides/qiskit-sampler.ipynb index 0e6964dd0..88cc20abb 100644 --- a/dev/.doctrees/nbsphinx/how-to-guides/qiskit-sampler.ipynb +++ b/dev/.doctrees/nbsphinx/how-to-guides/qiskit-sampler.ipynb @@ -18,10 +18,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:50.271574Z", - "iopub.status.busy": "2024-10-30T11:04:50.271385Z", - "iopub.status.idle": "2024-10-30T11:04:50.954241Z", - "shell.execute_reply": "2024-10-30T11:04:50.953682Z" + "iopub.execute_input": "2024-10-30T17:24:27.954850Z", + "iopub.status.busy": "2024-10-30T17:24:27.954668Z", + "iopub.status.idle": "2024-10-30T17:24:28.653999Z", + "shell.execute_reply": "2024-10-30T17:24:28.653353Z" } }, "outputs": [], @@ -71,10 +71,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:50.956715Z", - "iopub.status.busy": "2024-10-30T11:04:50.956268Z", - "iopub.status.idle": "2024-10-30T11:04:51.020744Z", - "shell.execute_reply": "2024-10-30T11:04:51.020158Z" + "iopub.execute_input": "2024-10-30T17:24:28.656387Z", + "iopub.status.busy": "2024-10-30T17:24:28.655944Z", + "iopub.status.idle": "2024-10-30T17:24:28.719613Z", + "shell.execute_reply": "2024-10-30T17:24:28.719007Z" } }, "outputs": [ @@ -154,10 +154,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:51.023098Z", - "iopub.status.busy": "2024-10-30T11:04:51.022639Z", - "iopub.status.idle": "2024-10-30T11:04:51.341693Z", - "shell.execute_reply": "2024-10-30T11:04:51.341188Z" + "iopub.execute_input": "2024-10-30T17:24:28.721728Z", + "iopub.status.busy": "2024-10-30T17:24:28.721381Z", + "iopub.status.idle": "2024-10-30T17:24:29.088859Z", + "shell.execute_reply": "2024-10-30T17:24:29.088358Z" } }, "outputs": [ @@ -174,7 +174,7 @@ "text": [ "norb = 14\n", "nelec = (3, 3)\n", - "E(CCSD) = -108.9630419334855 E_corr = -0.1278053627110057\n" + "E(CCSD) = -108.9630419334855 E_corr = -0.1278053627110063\n" ] }, { @@ -187,16 +187,16 @@ { "data": { "text/plain": [ - "{'0000000000011100000000000111': 9926,\n", - " '0000000000110100000000001101': 13,\n", - " '0000000001110000000000000111': 12,\n", - " '0000000001011000000000010110': 10,\n", - " '0000000000011100000000011100': 9,\n", - " '0010000000110000000000000111': 6,\n", + "{'0000000000011100000000000111': 9924,\n", + " '0000000000110100000000001101': 14,\n", + " '0000000001110000000000000111': 10,\n", + " '0000000000011100000000011100': 10,\n", + " '0000000001011000000000010110': 9,\n", + " '0100000001001000000000000111': 6,\n", + " '0001000001010000000000000111': 4,\n", " '0000000001011000100000000110': 4,\n", - " '0010000000011000000000010110': 3,\n", - " '0001000001010000000000000111': 2,\n", - " '0001000000010100000000001101': 2}" + " '0000000000011100100000001100': 3,\n", + " '0010000000011000000000010110': 3}" ] }, "execution_count": 3, @@ -276,10 +276,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:51.343776Z", - "iopub.status.busy": "2024-10-30T11:04:51.343424Z", - "iopub.status.idle": "2024-10-30T11:04:51.884853Z", - "shell.execute_reply": "2024-10-30T11:04:51.884339Z" + "iopub.execute_input": "2024-10-30T17:24:29.090981Z", + "iopub.status.busy": "2024-10-30T17:24:29.090611Z", + "iopub.status.idle": "2024-10-30T17:24:29.632091Z", + "shell.execute_reply": "2024-10-30T17:24:29.631592Z" } }, "outputs": [ @@ -294,7 +294,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "SCF energy = -75.3484557077368\n" + "SCF energy = -75.3484557084194\n" ] }, { @@ -312,7 +312,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "E(UCCSD) = -75.45619739114197 E_corr = -0.1077416834051778\n" + "E(UCCSD) = -75.45619739101305 E_corr = -0.1077416825936833\n" ] }, { diff --git a/dev/.doctrees/nbsphinx/tutorials/double-factorized-trotter.ipynb b/dev/.doctrees/nbsphinx/tutorials/double-factorized-trotter.ipynb index bcc14d8d6..e058e01b5 100644 --- a/dev/.doctrees/nbsphinx/tutorials/double-factorized-trotter.ipynb +++ b/dev/.doctrees/nbsphinx/tutorials/double-factorized-trotter.ipynb @@ -18,10 +18,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:53.427921Z", - "iopub.status.busy": "2024-10-30T11:04:53.427469Z", - "iopub.status.idle": "2024-10-30T11:04:54.199474Z", - "shell.execute_reply": "2024-10-30T11:04:54.198896Z" + "iopub.execute_input": "2024-10-30T17:24:31.375719Z", + "iopub.status.busy": "2024-10-30T17:24:31.375291Z", + "iopub.status.idle": "2024-10-30T17:24:32.122148Z", + "shell.execute_reply": "2024-10-30T17:24:32.121566Z" } }, "outputs": [ @@ -29,7 +29,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "converged SCF energy = -108.464957764795\n" + "converged SCF energy = -108.464957764796\n" ] }, { @@ -80,10 +80,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.203151Z", - "iopub.status.busy": "2024-10-30T11:04:54.202076Z", - "iopub.status.idle": "2024-10-30T11:04:54.206796Z", - "shell.execute_reply": "2024-10-30T11:04:54.206336Z" + "iopub.execute_input": "2024-10-30T17:24:32.124940Z", + "iopub.status.busy": "2024-10-30T17:24:32.124320Z", + "iopub.status.idle": "2024-10-30T17:24:32.128523Z", + "shell.execute_reply": "2024-10-30T17:24:32.128099Z" } }, "outputs": [], @@ -106,10 +106,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.208835Z", - "iopub.status.busy": "2024-10-30T11:04:54.208366Z", - "iopub.status.idle": "2024-10-30T11:04:54.213278Z", - "shell.execute_reply": "2024-10-30T11:04:54.212796Z" + "iopub.execute_input": "2024-10-30T17:24:32.130523Z", + "iopub.status.busy": "2024-10-30T17:24:32.130043Z", + "iopub.status.idle": "2024-10-30T17:24:32.134942Z", + "shell.execute_reply": "2024-10-30T17:24:32.134447Z" } }, "outputs": [ @@ -172,10 +172,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.215080Z", - "iopub.status.busy": "2024-10-30T11:04:54.214896Z", - "iopub.status.idle": "2024-10-30T11:04:54.219051Z", - "shell.execute_reply": "2024-10-30T11:04:54.218568Z" + "iopub.execute_input": "2024-10-30T17:24:32.136686Z", + "iopub.status.busy": "2024-10-30T17:24:32.136496Z", + "iopub.status.idle": "2024-10-30T17:24:32.140408Z", + "shell.execute_reply": "2024-10-30T17:24:32.139948Z" } }, "outputs": [ @@ -208,10 +208,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.220804Z", - "iopub.status.busy": "2024-10-30T11:04:54.220616Z", - "iopub.status.idle": "2024-10-30T11:04:54.224629Z", - "shell.execute_reply": "2024-10-30T11:04:54.224127Z" + "iopub.execute_input": "2024-10-30T17:24:32.142562Z", + "iopub.status.busy": "2024-10-30T17:24:32.142044Z", + "iopub.status.idle": "2024-10-30T17:24:32.145932Z", + "shell.execute_reply": "2024-10-30T17:24:32.145372Z" } }, "outputs": [ @@ -242,10 +242,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.226489Z", - "iopub.status.busy": "2024-10-30T11:04:54.226146Z", - "iopub.status.idle": "2024-10-30T11:04:54.244121Z", - "shell.execute_reply": "2024-10-30T11:04:54.243650Z" + "iopub.execute_input": "2024-10-30T17:24:32.147920Z", + "iopub.status.busy": "2024-10-30T17:24:32.147547Z", + "iopub.status.idle": "2024-10-30T17:24:32.165114Z", + "shell.execute_reply": "2024-10-30T17:24:32.164615Z" } }, "outputs": [ @@ -253,7 +253,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Maximum error in a tensor entry: 0.036685417309836654\n" + "Maximum error in a tensor entry: 0.03668541730983588\n" ] } ], @@ -302,10 +302,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.246004Z", - "iopub.status.busy": "2024-10-30T11:04:54.245671Z", - "iopub.status.idle": "2024-10-30T11:04:54.249925Z", - "shell.execute_reply": "2024-10-30T11:04:54.249337Z" + "iopub.execute_input": "2024-10-30T17:24:32.167130Z", + "iopub.status.busy": "2024-10-30T17:24:32.166772Z", + "iopub.status.idle": "2024-10-30T17:24:32.170695Z", + "shell.execute_reply": "2024-10-30T17:24:32.170229Z" } }, "outputs": [], @@ -360,10 +360,10 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.251864Z", - "iopub.status.busy": "2024-10-30T11:04:54.251533Z", - "iopub.status.idle": "2024-10-30T11:04:54.255136Z", - "shell.execute_reply": "2024-10-30T11:04:54.254534Z" + "iopub.execute_input": "2024-10-30T17:24:32.172346Z", + "iopub.status.busy": "2024-10-30T17:24:32.172159Z", + "iopub.status.idle": "2024-10-30T17:24:32.175561Z", + "shell.execute_reply": "2024-10-30T17:24:32.175109Z" } }, "outputs": [], @@ -400,10 +400,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.257374Z", - "iopub.status.busy": "2024-10-30T11:04:54.256885Z", - "iopub.status.idle": "2024-10-30T11:04:54.355438Z", - "shell.execute_reply": "2024-10-30T11:04:54.354893Z" + "iopub.execute_input": "2024-10-30T17:24:32.177279Z", + "iopub.status.busy": "2024-10-30T17:24:32.177090Z", + "iopub.status.idle": "2024-10-30T17:24:32.275489Z", + "shell.execute_reply": "2024-10-30T17:24:32.274949Z" } }, "outputs": [], @@ -439,10 +439,10 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.357698Z", - "iopub.status.busy": "2024-10-30T11:04:54.357151Z", - "iopub.status.idle": "2024-10-30T11:04:54.409278Z", - "shell.execute_reply": "2024-10-30T11:04:54.408785Z" + "iopub.execute_input": "2024-10-30T17:24:32.278330Z", + "iopub.status.busy": "2024-10-30T17:24:32.277539Z", + "iopub.status.idle": "2024-10-30T17:24:32.327255Z", + "shell.execute_reply": "2024-10-30T17:24:32.326762Z" } }, "outputs": [ @@ -450,14 +450,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9402383980312086" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\n" + "Fidelity of Trotter-evolved state with exact state: 0.940243538699916\n" ] } ], @@ -487,10 +480,10 @@ "execution_count": 11, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.411308Z", - "iopub.status.busy": "2024-10-30T11:04:54.410955Z", - "iopub.status.idle": "2024-10-30T11:04:54.624077Z", - "shell.execute_reply": "2024-10-30T11:04:54.623590Z" + "iopub.execute_input": "2024-10-30T17:24:32.329038Z", + "iopub.status.busy": "2024-10-30T17:24:32.328678Z", + "iopub.status.idle": "2024-10-30T17:24:32.540707Z", + "shell.execute_reply": "2024-10-30T17:24:32.540213Z" } }, "outputs": [ @@ -498,7 +491,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9985210982782917\n" + "Fidelity of Trotter-evolved state with exact state: 0.9985212861520422\n" ] } ], @@ -528,10 +521,10 @@ "execution_count": 12, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.625771Z", - "iopub.status.busy": "2024-10-30T11:04:54.625588Z", - "iopub.status.idle": "2024-10-30T11:04:54.757697Z", - "shell.execute_reply": "2024-10-30T11:04:54.757242Z" + "iopub.execute_input": "2024-10-30T17:24:32.542745Z", + "iopub.status.busy": "2024-10-30T17:24:32.542392Z", + "iopub.status.idle": "2024-10-30T17:24:32.669581Z", + "shell.execute_reply": "2024-10-30T17:24:32.668937Z" } }, "outputs": [ @@ -539,7 +532,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9985210982781565\n" + "Fidelity of Trotter-evolved state with exact state: 0.9985212861519472\n" ] } ], @@ -570,10 +563,10 @@ "execution_count": 13, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.759459Z", - "iopub.status.busy": "2024-10-30T11:04:54.759278Z", - "iopub.status.idle": "2024-10-30T11:04:54.865454Z", - "shell.execute_reply": "2024-10-30T11:04:54.864934Z" + "iopub.execute_input": "2024-10-30T17:24:32.671552Z", + "iopub.status.busy": "2024-10-30T17:24:32.671190Z", + "iopub.status.idle": "2024-10-30T17:24:32.772668Z", + "shell.execute_reply": "2024-10-30T17:24:32.772195Z" } }, "outputs": [ @@ -581,7 +574,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9996731173188249\n" + "Fidelity of Trotter-evolved state with exact state: 0.9996731164191563\n" ] } ], diff --git a/dev/.doctrees/tutorials/double-factorized-trotter.doctree b/dev/.doctrees/tutorials/double-factorized-trotter.doctree index 32618b8fc..a7834df43 100644 Binary files a/dev/.doctrees/tutorials/double-factorized-trotter.doctree and b/dev/.doctrees/tutorials/double-factorized-trotter.doctree differ diff --git a/dev/_images/explanations_qiskit-gate-decompositions_34_0.png b/dev/_images/explanations_qiskit-gate-decompositions_34_0.png index 7cf60ebf9..1f7923615 100644 Binary files a/dev/_images/explanations_qiskit-gate-decompositions_34_0.png and b/dev/_images/explanations_qiskit-gate-decompositions_34_0.png differ diff --git a/dev/_modules/ffsim/cistring.html b/dev/_modules/ffsim/cistring.html index f8b3c60e4..e52b02fa6 100644 --- a/dev/_modules/ffsim/cistring.html +++ b/dev/_modules/ffsim/cistring.html @@ -5,7 +5,7 @@ - ffsim.cistring - ffsim 0.0.48.dev0 + ffsim.cistring - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/contract/diag_coulomb.html b/dev/_modules/ffsim/contract/diag_coulomb.html index 759e54da9..ccfcc7deb 100644 --- a/dev/_modules/ffsim/contract/diag_coulomb.html +++ b/dev/_modules/ffsim/contract/diag_coulomb.html @@ -5,7 +5,7 @@ - ffsim.contract.diag_coulomb - ffsim 0.0.48.dev0 + ffsim.contract.diag_coulomb - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/contract/num_op_sum.html b/dev/_modules/ffsim/contract/num_op_sum.html index d677291f9..d61e398ef 100644 --- a/dev/_modules/ffsim/contract/num_op_sum.html +++ b/dev/_modules/ffsim/contract/num_op_sum.html @@ -5,7 +5,7 @@ - ffsim.contract.num_op_sum - ffsim 0.0.48.dev0 + ffsim.contract.num_op_sum - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/contract/one_body.html b/dev/_modules/ffsim/contract/one_body.html index a3f1f28b0..e99e5ab3e 100644 --- a/dev/_modules/ffsim/contract/one_body.html +++ b/dev/_modules/ffsim/contract/one_body.html @@ -5,7 +5,7 @@ - ffsim.contract.one_body - ffsim 0.0.48.dev0 + ffsim.contract.one_body - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/gates/basic_gates.html b/dev/_modules/ffsim/gates/basic_gates.html index 75b43c100..3c71b1b32 100644 --- a/dev/_modules/ffsim/gates/basic_gates.html +++ b/dev/_modules/ffsim/gates/basic_gates.html @@ -5,7 +5,7 @@ - ffsim.gates.basic_gates - ffsim 0.0.48.dev0 + ffsim.gates.basic_gates - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/gates/diag_coulomb.html b/dev/_modules/ffsim/gates/diag_coulomb.html index 08905b1e1..ef7c12d3a 100644 --- a/dev/_modules/ffsim/gates/diag_coulomb.html +++ b/dev/_modules/ffsim/gates/diag_coulomb.html @@ -5,7 +5,7 @@ - ffsim.gates.diag_coulomb - ffsim 0.0.48.dev0 + ffsim.gates.diag_coulomb - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/gates/num_op_sum.html b/dev/_modules/ffsim/gates/num_op_sum.html index 881789d82..7ca2fb43f 100644 --- a/dev/_modules/ffsim/gates/num_op_sum.html +++ b/dev/_modules/ffsim/gates/num_op_sum.html @@ -5,7 +5,7 @@ - ffsim.gates.num_op_sum - ffsim 0.0.48.dev0 + ffsim.gates.num_op_sum - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/gates/orbital_rotation.html b/dev/_modules/ffsim/gates/orbital_rotation.html index 2fb2a06a8..918d8e689 100644 --- a/dev/_modules/ffsim/gates/orbital_rotation.html +++ b/dev/_modules/ffsim/gates/orbital_rotation.html @@ -5,7 +5,7 @@ - ffsim.gates.orbital_rotation - ffsim 0.0.48.dev0 + ffsim.gates.orbital_rotation - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/hamiltonians/diagonal_coulomb_hamiltonian.html b/dev/_modules/ffsim/hamiltonians/diagonal_coulomb_hamiltonian.html index 81af972c4..ca6253ac6 100644 --- a/dev/_modules/ffsim/hamiltonians/diagonal_coulomb_hamiltonian.html +++ b/dev/_modules/ffsim/hamiltonians/diagonal_coulomb_hamiltonian.html @@ -5,7 +5,7 @@ - ffsim.hamiltonians.diagonal_coulomb_hamiltonian - ffsim 0.0.48.dev0 + ffsim.hamiltonians.diagonal_coulomb_hamiltonian - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/hamiltonians/double_factorized_hamiltonian.html b/dev/_modules/ffsim/hamiltonians/double_factorized_hamiltonian.html index a27bc2f85..5a387fc97 100644 --- a/dev/_modules/ffsim/hamiltonians/double_factorized_hamiltonian.html +++ b/dev/_modules/ffsim/hamiltonians/double_factorized_hamiltonian.html @@ -5,7 +5,7 @@ - ffsim.hamiltonians.double_factorized_hamiltonian - ffsim 0.0.48.dev0 + ffsim.hamiltonians.double_factorized_hamiltonian - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/hamiltonians/molecular_hamiltonian.html b/dev/_modules/ffsim/hamiltonians/molecular_hamiltonian.html index 8d812f8f6..807d38bb2 100644 --- a/dev/_modules/ffsim/hamiltonians/molecular_hamiltonian.html +++ b/dev/_modules/ffsim/hamiltonians/molecular_hamiltonian.html @@ -5,7 +5,7 @@ - ffsim.hamiltonians.molecular_hamiltonian - ffsim 0.0.48.dev0 + ffsim.hamiltonians.molecular_hamiltonian - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/linalg/double_factorized_decomposition.html b/dev/_modules/ffsim/linalg/double_factorized_decomposition.html index bd1054a11..d23fb968e 100644 --- a/dev/_modules/ffsim/linalg/double_factorized_decomposition.html +++ b/dev/_modules/ffsim/linalg/double_factorized_decomposition.html @@ -5,7 +5,7 @@ - ffsim.linalg.double_factorized_decomposition - ffsim 0.0.48.dev0 + ffsim.linalg.double_factorized_decomposition - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/linalg/givens.html b/dev/_modules/ffsim/linalg/givens.html index f802b178c..5e0b5480f 100644 --- a/dev/_modules/ffsim/linalg/givens.html +++ b/dev/_modules/ffsim/linalg/givens.html @@ -5,7 +5,7 @@ - ffsim.linalg.givens - ffsim 0.0.48.dev0 + ffsim.linalg.givens - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/linalg/linalg.html b/dev/_modules/ffsim/linalg/linalg.html index a90e96539..a916d5aef 100644 --- a/dev/_modules/ffsim/linalg/linalg.html +++ b/dev/_modules/ffsim/linalg/linalg.html @@ -5,7 +5,7 @@ - ffsim.linalg.linalg - ffsim 0.0.48.dev0 + ffsim.linalg.linalg - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/linalg/predicates.html b/dev/_modules/ffsim/linalg/predicates.html index ab0ec6483..93c750e43 100644 --- a/dev/_modules/ffsim/linalg/predicates.html +++ b/dev/_modules/ffsim/linalg/predicates.html @@ -5,7 +5,7 @@ - ffsim.linalg.predicates - ffsim 0.0.48.dev0 + ffsim.linalg.predicates - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/molecular_data.html b/dev/_modules/ffsim/molecular_data.html index c122df47b..0babf3149 100644 --- a/dev/_modules/ffsim/molecular_data.html +++ b/dev/_modules/ffsim/molecular_data.html @@ -5,7 +5,7 @@ - ffsim.molecular_data - ffsim 0.0.48.dev0 + ffsim.molecular_data - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/operators/common_operators.html b/dev/_modules/ffsim/operators/common_operators.html index c0c10952b..afed88a36 100644 --- a/dev/_modules/ffsim/operators/common_operators.html +++ b/dev/_modules/ffsim/operators/common_operators.html @@ -5,7 +5,7 @@ - ffsim.operators.common_operators - ffsim 0.0.48.dev0 + ffsim.operators.common_operators - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/operators/fermi_hubbard.html b/dev/_modules/ffsim/operators/fermi_hubbard.html index 64bcd4bcc..cb8b78865 100644 --- a/dev/_modules/ffsim/operators/fermi_hubbard.html +++ b/dev/_modules/ffsim/operators/fermi_hubbard.html @@ -5,7 +5,7 @@ - ffsim.operators.fermi_hubbard - ffsim 0.0.48.dev0 + ffsim.operators.fermi_hubbard - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/operators/fermion_action.html b/dev/_modules/ffsim/operators/fermion_action.html index c8772275c..bc78f6bf0 100644 --- a/dev/_modules/ffsim/operators/fermion_action.html +++ b/dev/_modules/ffsim/operators/fermion_action.html @@ -5,7 +5,7 @@ - ffsim.operators.fermion_action - ffsim 0.0.48.dev0 + ffsim.operators.fermion_action - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/optimize/linear_method.html b/dev/_modules/ffsim/optimize/linear_method.html index 0926012ed..8a2736f5c 100644 --- a/dev/_modules/ffsim/optimize/linear_method.html +++ b/dev/_modules/ffsim/optimize/linear_method.html @@ -5,7 +5,7 @@ - ffsim.optimize.linear_method - ffsim 0.0.48.dev0 + ffsim.optimize.linear_method - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/protocols/apply_unitary_protocol.html b/dev/_modules/ffsim/protocols/apply_unitary_protocol.html index 9ceb4fcc5..4eabf736a 100644 --- a/dev/_modules/ffsim/protocols/apply_unitary_protocol.html +++ b/dev/_modules/ffsim/protocols/apply_unitary_protocol.html @@ -5,7 +5,7 @@ - ffsim.protocols.apply_unitary_protocol - ffsim 0.0.48.dev0 + ffsim.protocols.apply_unitary_protocol - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/protocols/diagonal_protocol.html b/dev/_modules/ffsim/protocols/diagonal_protocol.html index 10124d994..5c9b8b21e 100644 --- a/dev/_modules/ffsim/protocols/diagonal_protocol.html +++ b/dev/_modules/ffsim/protocols/diagonal_protocol.html @@ -5,7 +5,7 @@ - ffsim.protocols.diagonal_protocol - ffsim 0.0.48.dev0 + ffsim.protocols.diagonal_protocol - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/protocols/fermion_operator_protocol.html b/dev/_modules/ffsim/protocols/fermion_operator_protocol.html index 9df6257c3..423c899ee 100644 --- a/dev/_modules/ffsim/protocols/fermion_operator_protocol.html +++ b/dev/_modules/ffsim/protocols/fermion_operator_protocol.html @@ -5,7 +5,7 @@ - ffsim.protocols.fermion_operator_protocol - ffsim 0.0.48.dev0 + ffsim.protocols.fermion_operator_protocol - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@
@@ -182,7 +182,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/gates/diag_coulomb.html b/dev/_modules/ffsim/qiskit/gates/diag_coulomb.html index eaf71d2ed..42afcb2e5 100644 --- a/dev/_modules/ffsim/qiskit/gates/diag_coulomb.html +++ b/dev/_modules/ffsim/qiskit/gates/diag_coulomb.html @@ -5,7 +5,7 @@ - ffsim.qiskit.gates.diag_coulomb - ffsim 0.0.48.dev0 + ffsim.qiskit.gates.diag_coulomb - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/gates/diag_coulomb_trotter.html b/dev/_modules/ffsim/qiskit/gates/diag_coulomb_trotter.html index dfea7bde7..fa387145d 100644 --- a/dev/_modules/ffsim/qiskit/gates/diag_coulomb_trotter.html +++ b/dev/_modules/ffsim/qiskit/gates/diag_coulomb_trotter.html @@ -5,7 +5,7 @@ - ffsim.qiskit.gates.diag_coulomb_trotter - ffsim 0.0.48.dev0 + ffsim.qiskit.gates.diag_coulomb_trotter - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/gates/givens_ansatz.html b/dev/_modules/ffsim/qiskit/gates/givens_ansatz.html index 5d51a8f75..da480a15c 100644 --- a/dev/_modules/ffsim/qiskit/gates/givens_ansatz.html +++ b/dev/_modules/ffsim/qiskit/gates/givens_ansatz.html @@ -5,7 +5,7 @@ - ffsim.qiskit.gates.givens_ansatz - ffsim 0.0.48.dev0 + ffsim.qiskit.gates.givens_ansatz - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/gates/num_num_ansatz.html b/dev/_modules/ffsim/qiskit/gates/num_num_ansatz.html index 1bdd88f3d..dcff14c97 100644 --- a/dev/_modules/ffsim/qiskit/gates/num_num_ansatz.html +++ b/dev/_modules/ffsim/qiskit/gates/num_num_ansatz.html @@ -5,7 +5,7 @@ - ffsim.qiskit.gates.num_num_ansatz - ffsim 0.0.48.dev0 + ffsim.qiskit.gates.num_num_ansatz - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/gates/num_op_sum.html b/dev/_modules/ffsim/qiskit/gates/num_op_sum.html index d3261aa29..8a3071ca3 100644 --- a/dev/_modules/ffsim/qiskit/gates/num_op_sum.html +++ b/dev/_modules/ffsim/qiskit/gates/num_op_sum.html @@ -5,7 +5,7 @@ - ffsim.qiskit.gates.num_op_sum - ffsim 0.0.48.dev0 + ffsim.qiskit.gates.num_op_sum - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/gates/orbital_rotation.html b/dev/_modules/ffsim/qiskit/gates/orbital_rotation.html index dab037bf6..254cb7dd5 100644 --- a/dev/_modules/ffsim/qiskit/gates/orbital_rotation.html +++ b/dev/_modules/ffsim/qiskit/gates/orbital_rotation.html @@ -5,7 +5,7 @@ - ffsim.qiskit.gates.orbital_rotation - ffsim 0.0.48.dev0 + ffsim.qiskit.gates.orbital_rotation - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@
@@ -182,7 +182,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/jordan_wigner.html b/dev/_modules/ffsim/qiskit/jordan_wigner.html index 876fde460..4208e3388 100644 --- a/dev/_modules/ffsim/qiskit/jordan_wigner.html +++ b/dev/_modules/ffsim/qiskit/jordan_wigner.html @@ -5,7 +5,7 @@ - ffsim.qiskit.jordan_wigner - ffsim 0.0.48.dev0 + ffsim.qiskit.jordan_wigner - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/sampler.html b/dev/_modules/ffsim/qiskit/sampler.html index 4ae865bd8..03df18184 100644 --- a/dev/_modules/ffsim/qiskit/sampler.html +++ b/dev/_modules/ffsim/qiskit/sampler.html @@ -5,7 +5,7 @@ - ffsim.qiskit.sampler - ffsim 0.0.48.dev0 + ffsim.qiskit.sampler - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/sim.html b/dev/_modules/ffsim/qiskit/sim.html index b49ddbabb..4b1489d42 100644 --- a/dev/_modules/ffsim/qiskit/sim.html +++ b/dev/_modules/ffsim/qiskit/sim.html @@ -5,7 +5,7 @@ - ffsim.qiskit.sim - ffsim 0.0.48.dev0 + ffsim.qiskit.sim - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/transpiler_passes/drop_negligible.html b/dev/_modules/ffsim/qiskit/transpiler_passes/drop_negligible.html index f1e8f0689..9de94ded7 100644 --- a/dev/_modules/ffsim/qiskit/transpiler_passes/drop_negligible.html +++ b/dev/_modules/ffsim/qiskit/transpiler_passes/drop_negligible.html @@ -5,7 +5,7 @@ - ffsim.qiskit.transpiler_passes.drop_negligible - ffsim 0.0.48.dev0 + ffsim.qiskit.transpiler_passes.drop_negligible - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/transpiler_passes/merge_orbital_rotations.html b/dev/_modules/ffsim/qiskit/transpiler_passes/merge_orbital_rotations.html index ec3119deb..164075316 100644 --- a/dev/_modules/ffsim/qiskit/transpiler_passes/merge_orbital_rotations.html +++ b/dev/_modules/ffsim/qiskit/transpiler_passes/merge_orbital_rotations.html @@ -5,7 +5,7 @@ - ffsim.qiskit.transpiler_passes.merge_orbital_rotations - ffsim 0.0.48.dev0 + ffsim.qiskit.transpiler_passes.merge_orbital_rotations - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ -
+
diff --git a/dev/_modules/ffsim/qiskit/transpiler_stages.html b/dev/_modules/ffsim/qiskit/transpiler_stages.html index 7c6ef43f2..61ffec982 100644 --- a/dev/_modules/ffsim/qiskit/transpiler_stages.html +++ b/dev/_modules/ffsim/qiskit/transpiler_stages.html @@ -5,7 +5,7 @@ - ffsim.qiskit.transpiler_stages - ffsim 0.0.48.dev0 + ffsim.qiskit.transpiler_stages - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/util.html b/dev/_modules/ffsim/qiskit/util.html index a4645594f..b35d9932a 100644 --- a/dev/_modules/ffsim/qiskit/util.html +++ b/dev/_modules/ffsim/qiskit/util.html @@ -5,7 +5,7 @@ - ffsim.qiskit.util - ffsim 0.0.48.dev0 + ffsim.qiskit.util - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/random/random.html b/dev/_modules/ffsim/random/random.html index e90fc15f5..9249bba38 100644 --- a/dev/_modules/ffsim/random/random.html +++ b/dev/_modules/ffsim/random/random.html @@ -5,7 +5,7 @@ - ffsim.random.random - ffsim 0.0.48.dev0 + ffsim.random.random - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/spin.html b/dev/_modules/ffsim/spin.html index 6408aadfd..3f1dc9375 100644 --- a/dev/_modules/ffsim/spin.html +++ b/dev/_modules/ffsim/spin.html @@ -5,7 +5,7 @@ - ffsim.spin - ffsim 0.0.48.dev0 + ffsim.spin - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/states/bitstring.html b/dev/_modules/ffsim/states/bitstring.html index d5513f644..b2b1e0074 100644 --- a/dev/_modules/ffsim/states/bitstring.html +++ b/dev/_modules/ffsim/states/bitstring.html @@ -5,7 +5,7 @@ - ffsim.states.bitstring - ffsim 0.0.48.dev0 + ffsim.states.bitstring - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/states/product_state_sum.html b/dev/_modules/ffsim/states/product_state_sum.html index 423f8791c..4da047b54 100644 --- a/dev/_modules/ffsim/states/product_state_sum.html +++ b/dev/_modules/ffsim/states/product_state_sum.html @@ -5,7 +5,7 @@ - ffsim.states.product_state_sum - ffsim 0.0.48.dev0 + ffsim.states.product_state_sum - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/states/rdm.html b/dev/_modules/ffsim/states/rdm.html index 43c8f9d42..cca628d0b 100644 --- a/dev/_modules/ffsim/states/rdm.html +++ b/dev/_modules/ffsim/states/rdm.html @@ -5,7 +5,7 @@ - ffsim.states.rdm - ffsim 0.0.48.dev0 + ffsim.states.rdm - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/states/sample_slater.html b/dev/_modules/ffsim/states/sample_slater.html index 416ed61ae..139dd1ff5 100644 --- a/dev/_modules/ffsim/states/sample_slater.html +++ b/dev/_modules/ffsim/states/sample_slater.html @@ -5,7 +5,7 @@ - ffsim.states.sample_slater - ffsim 0.0.48.dev0 + ffsim.states.sample_slater - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/states/slater.html b/dev/_modules/ffsim/states/slater.html index 9f2ccf671..8f0aed2fb 100644 --- a/dev/_modules/ffsim/states/slater.html +++ b/dev/_modules/ffsim/states/slater.html @@ -5,7 +5,7 @@ - ffsim.states.slater - ffsim 0.0.48.dev0 + ffsim.states.slater - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/states/states.html b/dev/_modules/ffsim/states/states.html index 77c4b8005..9a7d3e23c 100644 --- a/dev/_modules/ffsim/states/states.html +++ b/dev/_modules/ffsim/states/states.html @@ -5,7 +5,7 @@ - ffsim.states.states - ffsim 0.0.48.dev0 + ffsim.states.states - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/states/wick.html b/dev/_modules/ffsim/states/wick.html index 210c5089a..d2ca88a76 100644 --- a/dev/_modules/ffsim/states/wick.html +++ b/dev/_modules/ffsim/states/wick.html @@ -5,7 +5,7 @@ - ffsim.states.wick - ffsim 0.0.48.dev0 + ffsim.states.wick - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/testing/testing.html b/dev/_modules/ffsim/testing/testing.html index 7cf071c9c..08a8357e8 100644 --- a/dev/_modules/ffsim/testing/testing.html +++ b/dev/_modules/ffsim/testing/testing.html @@ -5,7 +5,7 @@ - ffsim.testing.testing - ffsim 0.0.48.dev0 + ffsim.testing.testing - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/trotter/diagonal_coulomb.html b/dev/_modules/ffsim/trotter/diagonal_coulomb.html index b7d0d45e1..dacff051f 100644 --- a/dev/_modules/ffsim/trotter/diagonal_coulomb.html +++ b/dev/_modules/ffsim/trotter/diagonal_coulomb.html @@ -5,7 +5,7 @@ - ffsim.trotter.diagonal_coulomb - ffsim 0.0.48.dev0 + ffsim.trotter.diagonal_coulomb - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/trotter/double_factorized.html b/dev/_modules/ffsim/trotter/double_factorized.html index 3b2698d98..60febfa16 100644 --- a/dev/_modules/ffsim/trotter/double_factorized.html +++ b/dev/_modules/ffsim/trotter/double_factorized.html @@ -5,7 +5,7 @@ - ffsim.trotter.double_factorized - ffsim 0.0.48.dev0 + ffsim.trotter.double_factorized - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/trotter/qdrift.html b/dev/_modules/ffsim/trotter/qdrift.html index 0a3dc96a3..c4f61fc26 100644 --- a/dev/_modules/ffsim/trotter/qdrift.html +++ b/dev/_modules/ffsim/trotter/qdrift.html @@ -5,7 +5,7 @@ - ffsim.trotter.qdrift - ffsim 0.0.48.dev0 + ffsim.trotter.qdrift - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/variational/givens.html b/dev/_modules/ffsim/variational/givens.html index 7f441e7dc..7e699e52a 100644 --- a/dev/_modules/ffsim/variational/givens.html +++ b/dev/_modules/ffsim/variational/givens.html @@ -5,7 +5,7 @@ - ffsim.variational.givens - ffsim 0.0.48.dev0 + ffsim.variational.givens - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/variational/hopgate.html b/dev/_modules/ffsim/variational/hopgate.html index e766a31b5..d95355e2b 100644 --- a/dev/_modules/ffsim/variational/hopgate.html +++ b/dev/_modules/ffsim/variational/hopgate.html @@ -5,7 +5,7 @@ - ffsim.variational.hopgate - ffsim 0.0.48.dev0 + ffsim.variational.hopgate - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/variational/multireference.html b/dev/_modules/ffsim/variational/multireference.html index f0118cd4b..1ed265b66 100644 --- a/dev/_modules/ffsim/variational/multireference.html +++ b/dev/_modules/ffsim/variational/multireference.html @@ -5,7 +5,7 @@ - ffsim.variational.multireference - ffsim 0.0.48.dev0 + ffsim.variational.multireference - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/variational/num_num.html b/dev/_modules/ffsim/variational/num_num.html index 3a3e64957..7c074dfef 100644 --- a/dev/_modules/ffsim/variational/num_num.html +++ b/dev/_modules/ffsim/variational/num_num.html @@ -5,7 +5,7 @@ - ffsim.variational.num_num - ffsim 0.0.48.dev0 + ffsim.variational.num_num - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/variational/uccsd.html b/dev/_modules/ffsim/variational/uccsd.html index daf969d74..f759e7c63 100644 --- a/dev/_modules/ffsim/variational/uccsd.html +++ b/dev/_modules/ffsim/variational/uccsd.html @@ -5,7 +5,7 @@ - ffsim.variational.uccsd - ffsim 0.0.48.dev0 + ffsim.variational.uccsd - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/ffsim/variational/ucj_spin_balanced.html b/dev/_modules/ffsim/variational/ucj_spin_balanced.html index 347981d74..f3fd0178d 100644 --- a/dev/_modules/ffsim/variational/ucj_spin_balanced.html +++ b/dev/_modules/ffsim/variational/ucj_spin_balanced.html @@ -5,7 +5,7 @@ - ffsim.variational.ucj_spin_balanced - ffsim 0.0.48.dev0 + ffsim.variational.ucj_spin_balanced - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@
@@ -182,7 +182,7 @@
@@ -182,7 +182,7 @@ +
diff --git a/dev/_modules/index.html b/dev/_modules/index.html index 2a850fe82..3aab5073f 100644 --- a/dev/_modules/index.html +++ b/dev/_modules/index.html @@ -5,7 +5,7 @@ - Overview: module code - ffsim 0.0.48.dev0 + Overview: module code - ffsim 0.0.48 @@ -158,7 +158,7 @@
@@ -182,7 +182,7 @@ -
+
diff --git a/dev/_static/documentation_options.js b/dev/_static/documentation_options.js index 6e358db97..d5cc51dc8 100644 --- a/dev/_static/documentation_options.js +++ b/dev/_static/documentation_options.js @@ -1,5 +1,5 @@ const DOCUMENTATION_OPTIONS = { - VERSION: '0.0.48.dev0', + VERSION: '0.0.48', LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/dev/api/ffsim.contract.html b/dev/api/ffsim.contract.html index b6fc68ff6..cbd10b0f3 100644 --- a/dev/api/ffsim.contract.html +++ b/dev/api/ffsim.contract.html @@ -6,7 +6,7 @@ - ffsim.contract - ffsim 0.0.48.dev0 + ffsim.contract - ffsim 0.0.48 @@ -159,7 +159,7 @@
@@ -183,7 +183,7 @@ -
+
diff --git a/dev/api/ffsim.html b/dev/api/ffsim.html index fcb2bff0d..80f6b7791 100644 --- a/dev/api/ffsim.html +++ b/dev/api/ffsim.html @@ -6,7 +6,7 @@ - ffsim - ffsim 0.0.48.dev0 + ffsim - ffsim 0.0.48 @@ -159,7 +159,7 @@
@@ -183,7 +183,7 @@ -
+
diff --git a/dev/api/ffsim.linalg.html b/dev/api/ffsim.linalg.html index 19b0a2e34..a06565674 100644 --- a/dev/api/ffsim.linalg.html +++ b/dev/api/ffsim.linalg.html @@ -6,7 +6,7 @@ - ffsim.linalg - ffsim 0.0.48.dev0 + ffsim.linalg - ffsim 0.0.48 @@ -159,7 +159,7 @@
@@ -183,7 +183,7 @@ -
+
diff --git a/dev/api/ffsim.optimize.html b/dev/api/ffsim.optimize.html index 6c8d2a821..1321f3c47 100644 --- a/dev/api/ffsim.optimize.html +++ b/dev/api/ffsim.optimize.html @@ -6,7 +6,7 @@ - ffsim.optimize - ffsim 0.0.48.dev0 + ffsim.optimize - ffsim 0.0.48 @@ -159,7 +159,7 @@
@@ -183,7 +183,7 @@ -
+
diff --git a/dev/api/ffsim.qiskit.html b/dev/api/ffsim.qiskit.html index e69b99c26..8ca434397 100644 --- a/dev/api/ffsim.qiskit.html +++ b/dev/api/ffsim.qiskit.html @@ -6,7 +6,7 @@ - ffsim.qiskit - ffsim 0.0.48.dev0 + ffsim.qiskit - ffsim 0.0.48 @@ -159,7 +159,7 @@
@@ -183,7 +183,7 @@ -
+
diff --git a/dev/api/ffsim.random.html b/dev/api/ffsim.random.html index 9aa1121dc..8640ed11a 100644 --- a/dev/api/ffsim.random.html +++ b/dev/api/ffsim.random.html @@ -6,7 +6,7 @@ - ffsim.random - ffsim 0.0.48.dev0 + ffsim.random - ffsim 0.0.48 @@ -159,7 +159,7 @@
@@ -183,7 +183,7 @@ -
+
diff --git a/dev/api/ffsim.testing.html b/dev/api/ffsim.testing.html index 3a253e899..777495851 100644 --- a/dev/api/ffsim.testing.html +++ b/dev/api/ffsim.testing.html @@ -6,7 +6,7 @@ - ffsim.testing - ffsim 0.0.48.dev0 + ffsim.testing - ffsim 0.0.48 @@ -159,7 +159,7 @@
@@ -183,7 +183,7 @@ -
+
diff --git a/dev/api/index.html b/dev/api/index.html index 241a7083e..744769b58 100644 --- a/dev/api/index.html +++ b/dev/api/index.html @@ -6,7 +6,7 @@ - API reference - ffsim 0.0.48.dev0 + API reference - ffsim 0.0.48 @@ -159,7 +159,7 @@
@@ -483,7 +483,7 @@

Operator action via SciPy LinearOperators +

diff --git a/dev/explanations/hamiltonians.ipynb b/dev/explanations/hamiltonians.ipynb index 49624bb2e..2eecedef6 100644 --- a/dev/explanations/hamiltonians.ipynb +++ b/dev/explanations/hamiltonians.ipynb @@ -33,10 +33,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:49.217418Z", - "iopub.status.busy": "2024-10-30T11:01:49.216978Z", - "iopub.status.idle": "2024-10-30T11:01:49.899893Z", - "shell.execute_reply": "2024-10-30T11:01:49.899253Z" + "iopub.execute_input": "2024-10-30T17:21:12.331225Z", + "iopub.status.busy": "2024-10-30T17:21:12.330697Z", + "iopub.status.idle": "2024-10-30T17:21:13.024518Z", + "shell.execute_reply": "2024-10-30T17:21:13.023875Z" } }, "outputs": [], @@ -68,10 +68,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:49.902609Z", - "iopub.status.busy": "2024-10-30T11:01:49.902086Z", - "iopub.status.idle": "2024-10-30T11:01:49.905193Z", - "shell.execute_reply": "2024-10-30T11:01:49.904617Z" + "iopub.execute_input": "2024-10-30T17:21:13.026974Z", + "iopub.status.busy": "2024-10-30T17:21:13.026696Z", + "iopub.status.idle": "2024-10-30T17:21:13.029581Z", + "shell.execute_reply": "2024-10-30T17:21:13.029112Z" } }, "outputs": [], @@ -99,10 +99,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:49.906915Z", - "iopub.status.busy": "2024-10-30T11:01:49.906732Z", - "iopub.status.idle": "2024-10-30T11:01:49.909937Z", - "shell.execute_reply": "2024-10-30T11:01:49.909393Z" + "iopub.execute_input": "2024-10-30T17:21:13.031388Z", + "iopub.status.busy": "2024-10-30T17:21:13.031205Z", + "iopub.status.idle": "2024-10-30T17:21:13.034574Z", + "shell.execute_reply": "2024-10-30T17:21:13.034114Z" } }, "outputs": [], @@ -127,10 +127,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:49.911803Z", - "iopub.status.busy": "2024-10-30T11:01:49.911461Z", - "iopub.status.idle": "2024-10-30T11:01:49.915909Z", - "shell.execute_reply": "2024-10-30T11:01:49.915380Z" + "iopub.execute_input": "2024-10-30T17:21:13.036313Z", + "iopub.status.busy": "2024-10-30T17:21:13.036133Z", + "iopub.status.idle": "2024-10-30T17:21:13.041187Z", + "shell.execute_reply": "2024-10-30T17:21:13.040629Z" } }, "outputs": [], @@ -152,17 +152,17 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:49.918619Z", - "iopub.status.busy": "2024-10-30T11:01:49.918212Z", - "iopub.status.idle": "2024-10-30T11:01:49.945264Z", - "shell.execute_reply": "2024-10-30T11:01:49.944550Z" + "iopub.execute_input": "2024-10-30T17:21:13.043782Z", + "iopub.status.busy": "2024-10-30T17:21:13.042852Z", + "iopub.status.idle": "2024-10-30T17:21:13.071309Z", + "shell.execute_reply": "2024-10-30T17:21:13.070683Z" } }, "outputs": [ { "data": { "text/plain": [ - "np.float64(-99.55717072551532)" + "np.float64(-99.55717072551579)" ] }, "execution_count": 5, @@ -191,10 +191,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:49.976840Z", - "iopub.status.busy": "2024-10-30T11:01:49.976429Z", - "iopub.status.idle": "2024-10-30T11:01:50.629713Z", - "shell.execute_reply": "2024-10-30T11:01:50.629071Z" + "iopub.execute_input": "2024-10-30T17:21:13.104019Z", + "iopub.status.busy": "2024-10-30T17:21:13.103676Z", + "iopub.status.idle": "2024-10-30T17:21:13.753510Z", + "shell.execute_reply": "2024-10-30T17:21:13.752912Z" } }, "outputs": [ @@ -202,7 +202,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "/tmp/ipykernel_4162/2190712273.py:2: UserWarning: Trace of LinearOperator not available, it will be estimated. Provide `traceA` to ensure performance.\n", + "/tmp/ipykernel_4140/2190712273.py:2: UserWarning: Trace of LinearOperator not available, it will be estimated. Provide `traceA` to ensure performance.\n", " evolved_vec = scipy.sparse.linalg.expm_multiply(-1j * time * linop, vec)\n" ] } @@ -224,10 +224,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:50.632313Z", - "iopub.status.busy": "2024-10-30T11:01:50.631808Z", - "iopub.status.idle": "2024-10-30T11:01:51.340327Z", - "shell.execute_reply": "2024-10-30T11:01:51.339670Z" + "iopub.execute_input": "2024-10-30T17:21:13.756684Z", + "iopub.status.busy": "2024-10-30T17:21:13.755713Z", + "iopub.status.idle": "2024-10-30T17:21:14.362010Z", + "shell.execute_reply": "2024-10-30T17:21:14.361454Z" } }, "outputs": [], diff --git a/dev/explanations/index.html b/dev/explanations/index.html index 6fab06741..c47dd7335 100644 --- a/dev/explanations/index.html +++ b/dev/explanations/index.html @@ -6,7 +6,7 @@ - Explanations - ffsim 0.0.48.dev0 + Explanations - ffsim 0.0.48 @@ -159,7 +159,7 @@
@@ -184,7 +184,7 @@ diff --git a/dev/explanations/qiskit-gate-decompositions.ipynb b/dev/explanations/qiskit-gate-decompositions.ipynb index 31aca657e..e7e712cf7 100644 --- a/dev/explanations/qiskit-gate-decompositions.ipynb +++ b/dev/explanations/qiskit-gate-decompositions.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:56.671557Z", - "iopub.status.busy": "2024-10-30T11:01:56.671366Z", - "iopub.status.idle": "2024-10-30T11:01:58.282690Z", - "shell.execute_reply": "2024-10-30T11:01:58.282012Z" + "iopub.execute_input": "2024-10-30T17:21:19.875965Z", + "iopub.status.busy": "2024-10-30T17:21:19.875495Z", + "iopub.status.idle": "2024-10-30T17:21:21.420656Z", + "shell.execute_reply": "2024-10-30T17:21:21.420128Z" } }, "outputs": [ @@ -81,10 +81,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:58.285083Z", - "iopub.status.busy": "2024-10-30T11:01:58.284639Z", - "iopub.status.idle": "2024-10-30T11:01:58.483336Z", - "shell.execute_reply": "2024-10-30T11:01:58.482727Z" + "iopub.execute_input": "2024-10-30T17:21:21.422712Z", + "iopub.status.busy": "2024-10-30T17:21:21.422403Z", + "iopub.status.idle": "2024-10-30T17:21:21.617651Z", + "shell.execute_reply": "2024-10-30T17:21:21.617048Z" } }, "outputs": [ @@ -119,10 +119,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:58.485404Z", - "iopub.status.busy": "2024-10-30T11:01:58.485051Z", - "iopub.status.idle": "2024-10-30T11:01:58.592622Z", - "shell.execute_reply": "2024-10-30T11:01:58.592048Z" + "iopub.execute_input": "2024-10-30T17:21:21.619868Z", + "iopub.status.busy": "2024-10-30T17:21:21.619548Z", + "iopub.status.idle": "2024-10-30T17:21:21.726645Z", + "shell.execute_reply": "2024-10-30T17:21:21.726163Z" } }, "outputs": [ @@ -156,10 +156,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:58.594552Z", - "iopub.status.busy": "2024-10-30T11:01:58.594218Z", - "iopub.status.idle": "2024-10-30T11:01:58.703116Z", - "shell.execute_reply": "2024-10-30T11:01:58.702508Z" + "iopub.execute_input": "2024-10-30T17:21:21.728640Z", + "iopub.status.busy": "2024-10-30T17:21:21.728280Z", + "iopub.status.idle": "2024-10-30T17:21:21.835281Z", + "shell.execute_reply": "2024-10-30T17:21:21.834813Z" } }, "outputs": [ @@ -196,10 +196,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:58.705001Z", - "iopub.status.busy": "2024-10-30T11:01:58.704693Z", - "iopub.status.idle": "2024-10-30T11:01:58.888055Z", - "shell.execute_reply": "2024-10-30T11:01:58.887497Z" + "iopub.execute_input": "2024-10-30T17:21:21.837176Z", + "iopub.status.busy": "2024-10-30T17:21:21.836968Z", + "iopub.status.idle": "2024-10-30T17:21:22.017592Z", + "shell.execute_reply": "2024-10-30T17:21:22.017112Z" } }, "outputs": [ @@ -250,10 +250,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:58.890158Z", - "iopub.status.busy": "2024-10-30T11:01:58.889764Z", - "iopub.status.idle": "2024-10-30T11:01:59.111358Z", - "shell.execute_reply": "2024-10-30T11:01:59.110782Z" + "iopub.execute_input": "2024-10-30T17:21:22.019579Z", + "iopub.status.busy": "2024-10-30T17:21:22.019386Z", + "iopub.status.idle": "2024-10-30T17:21:22.235849Z", + "shell.execute_reply": "2024-10-30T17:21:22.235366Z" } }, "outputs": [ @@ -292,10 +292,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:59.113336Z", - "iopub.status.busy": "2024-10-30T11:01:59.113148Z", - "iopub.status.idle": "2024-10-30T11:01:59.250211Z", - "shell.execute_reply": "2024-10-30T11:01:59.249625Z" + "iopub.execute_input": "2024-10-30T17:21:22.237645Z", + "iopub.status.busy": "2024-10-30T17:21:22.237447Z", + "iopub.status.idle": "2024-10-30T17:21:22.369489Z", + "shell.execute_reply": "2024-10-30T17:21:22.368993Z" } }, "outputs": [ @@ -334,10 +334,10 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:59.252340Z", - "iopub.status.busy": "2024-10-30T11:01:59.251970Z", - "iopub.status.idle": "2024-10-30T11:01:59.775195Z", - "shell.execute_reply": "2024-10-30T11:01:59.774623Z" + "iopub.execute_input": "2024-10-30T17:21:22.371662Z", + "iopub.status.busy": "2024-10-30T17:21:22.371178Z", + "iopub.status.idle": "2024-10-30T17:21:22.895279Z", + "shell.execute_reply": "2024-10-30T17:21:22.894636Z" } }, "outputs": [ @@ -378,10 +378,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:59.777576Z", - "iopub.status.busy": "2024-10-30T11:01:59.777039Z", - "iopub.status.idle": "2024-10-30T11:01:59.956640Z", - "shell.execute_reply": "2024-10-30T11:01:59.956081Z" + "iopub.execute_input": "2024-10-30T17:21:22.897522Z", + "iopub.status.busy": "2024-10-30T17:21:22.897179Z", + "iopub.status.idle": "2024-10-30T17:21:23.075759Z", + "shell.execute_reply": "2024-10-30T17:21:23.075214Z" } }, "outputs": [ @@ -430,10 +430,10 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:01:59.958832Z", - "iopub.status.busy": "2024-10-30T11:01:59.958418Z", - "iopub.status.idle": "2024-10-30T11:02:00.125313Z", - "shell.execute_reply": "2024-10-30T11:02:00.124820Z" + "iopub.execute_input": "2024-10-30T17:21:23.077736Z", + "iopub.status.busy": "2024-10-30T17:21:23.077526Z", + "iopub.status.idle": "2024-10-30T17:21:23.243005Z", + "shell.execute_reply": "2024-10-30T17:21:23.242536Z" } }, "outputs": [ @@ -474,10 +474,10 @@ "execution_count": 11, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:00.127170Z", - "iopub.status.busy": "2024-10-30T11:02:00.126970Z", - "iopub.status.idle": "2024-10-30T11:02:00.257509Z", - "shell.execute_reply": "2024-10-30T11:02:00.256896Z" + "iopub.execute_input": "2024-10-30T17:21:23.244902Z", + "iopub.status.busy": "2024-10-30T17:21:23.244712Z", + "iopub.status.idle": "2024-10-30T17:21:23.375331Z", + "shell.execute_reply": "2024-10-30T17:21:23.374741Z" } }, "outputs": [ @@ -513,10 +513,10 @@ "execution_count": 12, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:00.259632Z", - "iopub.status.busy": "2024-10-30T11:02:00.259291Z", - "iopub.status.idle": "2024-10-30T11:02:00.438288Z", - "shell.execute_reply": "2024-10-30T11:02:00.437658Z" + "iopub.execute_input": "2024-10-30T17:21:23.377545Z", + "iopub.status.busy": "2024-10-30T17:21:23.377079Z", + "iopub.status.idle": "2024-10-30T17:21:23.560471Z", + "shell.execute_reply": "2024-10-30T17:21:23.559995Z" } }, "outputs": [ @@ -553,10 +553,10 @@ "execution_count": 13, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:00.440329Z", - "iopub.status.busy": "2024-10-30T11:02:00.440124Z", - "iopub.status.idle": "2024-10-30T11:02:00.599978Z", - "shell.execute_reply": "2024-10-30T11:02:00.599400Z" + "iopub.execute_input": "2024-10-30T17:21:23.562532Z", + "iopub.status.busy": "2024-10-30T17:21:23.562157Z", + "iopub.status.idle": "2024-10-30T17:21:23.718715Z", + "shell.execute_reply": "2024-10-30T17:21:23.718259Z" } }, "outputs": [ @@ -593,10 +593,10 @@ "execution_count": 14, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:00.602113Z", - "iopub.status.busy": "2024-10-30T11:02:00.601733Z", - "iopub.status.idle": "2024-10-30T11:02:00.731332Z", - "shell.execute_reply": "2024-10-30T11:02:00.730735Z" + "iopub.execute_input": "2024-10-30T17:21:23.720829Z", + "iopub.status.busy": "2024-10-30T17:21:23.720331Z", + "iopub.status.idle": "2024-10-30T17:21:23.849803Z", + "shell.execute_reply": "2024-10-30T17:21:23.849220Z" } }, "outputs": [ @@ -630,10 +630,10 @@ "execution_count": 15, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:00.733265Z", - "iopub.status.busy": "2024-10-30T11:02:00.732920Z", - "iopub.status.idle": "2024-10-30T11:02:00.890313Z", - "shell.execute_reply": "2024-10-30T11:02:00.889792Z" + "iopub.execute_input": "2024-10-30T17:21:23.851908Z", + "iopub.status.busy": "2024-10-30T17:21:23.851441Z", + "iopub.status.idle": "2024-10-30T17:21:24.009042Z", + "shell.execute_reply": "2024-10-30T17:21:24.008482Z" } }, "outputs": [ @@ -677,10 +677,10 @@ "execution_count": 16, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:00.892452Z", - "iopub.status.busy": "2024-10-30T11:02:00.892016Z", - "iopub.status.idle": "2024-10-30T11:02:01.074551Z", - "shell.execute_reply": "2024-10-30T11:02:01.074015Z" + "iopub.execute_input": "2024-10-30T17:21:24.011201Z", + "iopub.status.busy": "2024-10-30T17:21:24.010714Z", + "iopub.status.idle": "2024-10-30T17:21:24.192361Z", + "shell.execute_reply": "2024-10-30T17:21:24.191772Z" } }, "outputs": [ @@ -736,16 +736,16 @@ "execution_count": 17, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:01.076613Z", - "iopub.status.busy": "2024-10-30T11:02:01.076414Z", - "iopub.status.idle": "2024-10-30T11:02:01.532466Z", - "shell.execute_reply": "2024-10-30T11:02:01.531873Z" + "iopub.execute_input": "2024-10-30T17:21:24.194672Z", + "iopub.status.busy": "2024-10-30T17:21:24.194237Z", + "iopub.status.idle": "2024-10-30T17:21:24.656870Z", + "shell.execute_reply": "2024-10-30T17:21:24.656325Z" } }, "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABLsAAAMkCAYAAABQkSLjAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAADXEklEQVR4nOzdeVxVdf7H8dddEEQ2wQ0UAcV9g8k09+ta1qSZWVmkme1WP2faVRortbF9msqptFIn07LFbDS1Ek2lyAW1RRRE3FdUQBCEe39/3EQJBBS4m+/n48EDzvd87zmfczye+72f+/1+j8Fms9kQERERERERERHxAEZnByAiIiIiIiIiIlJdlOwSERERERERERGPoWSXiIiIiIiIiIh4DCW7RERERERERETEYyjZJSIiIiIiIiIiHkPJLhERERERERER8RhKdomIiIiIiIiIiMdQsktERERERERERDyGkl0iIiIiIiIiIuIxlOwSERERERERERGPoWSXiIiIiIiIiIh4DCW7RERERERERETEYyjZJSIiIiIiIiIiHkPJLhERERERERER8RhKdomIiIiIiIiIiMdQsktERERERERERDyGkl0iIiIiIiIiIuIxlOwSERERERERERGPoWSXiIiIiIiIiIh4DCW7RERERERERETEYyjZJSIiIiIiIiIiHkPJLhERERERERER8RhKdomIiIiIiIiIiMdQsktERERERERERDyGkl0iIiIiIiIiIuIxlOwSERERERERERGPoWSXiIiIiIiIiIh4DCW7RERERERERETEYyjZJSIiIiIiIiIiHsPs7ABcWUF2Lsd/3+3sMDxG3TZNqeXvW2G9nDOQmuWAgMoQHQB+Xs7Zt4iIiIiIiIhUnZJd5Tj++26WDp3k7DA8xuBFU2jYpXWF9VKz4O61DgioDDN7QEyIc/YtIiIiIiIiIlWnYYwiIiIiIiIiIuIxlOwSERERERERERGPoWSXiIiIiIiIiIh4DCW7RERERERERETEY2iCevEIKRMtnNqWiMHshcFkxqdxa8LiphLQqb+zQxMRERERERERB1LPLvEYYXFTiV2QQ8fZh6jTqhtp026g6NRJZ4clIiIiIiIiIg6kZJd4HKOXN/UGjsV6OofTB1KdHY6IiIiIiIiIOJCSXeJxrPl5HF0xE6NvAD5hLZwdjoiIiIiIiIg4kNskuwoK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00956qmnytzGwIED6dy5M//85z+Ly+677z5eeOEF0tLSiI+PZ968eVx//fUsWLCAu+66q2YPSkRERERERC57GsYocplr3749+/btK17OzMzEx8cHg8EAQKNGjS742pCQEMzmkjnzyMhIAEwmU/E2evfuzbJly6o5chEREREREZHSlOwSucwlJiYSHR1dvJyamkpERESVtxsfH8+DDz4IgK+vL8ePH6/yNkVEREREREQqomSXyGVq1qxZWCwWGjduTExMTLVu+7333iMqKooePZw0+ZqIiIiIiIhctjRnl8hl6uycXX8WHR1NRkbGJW83MTGRJUuW8NlnnxWX5ebmEhQUdMnbFBEREREREaks9ewSkRKCg4PJzc0tXo6Li2P58uWMHDmS7777DoBHH30UgOXLlxMXF8fSpUsZPXo0AE899RQZGRn069ePhx9+GIDVq1czaNAgBx+JiIiIiIiIXI7Us0vkMmSxWLBYLBdcP2TIEL799lsGDBjAf//731LrX3nlFQAGDRpUKom1atWqUvUXL17M9OnTqxa0iIiIiIiISCUo2SUipYwaNapat/fWW29V6/ZERERERERELkTDGEVERERERERExGMo2SUiIiIiIiIiIh5DyS4REREREREREfEYSnaJiIiIiIiIiIjH0AT14nJyzkBqlnP2HR0Afl7O2beIiIiIiIiIVJ2SXeJyUrPg7rXO2ffMHhAT4px9i4iIiIiIiEjVaRijiIiIiIiIiIh4DCW7RERERERERETEYyjZJSIiIiIiIiIiHkPJLhERERERERER8RiaoF48QspEC6e2JWIwe2EwmfFp3JqwuKkEdOrv7NBERERERERExIHUs0s8RljcVGIX5NBx9iHqtOpG2rQbKDp10tlhiYiIiIiIiIgDKdklHsfo5U29gWOxns7h9IFUZ4cjIiIiIiIiIg6kZJd4HGt+HkdXzMToG4BPWAtnhyMiIiIiIiIiDuQ2ya6CggLi4+MJDw+ndu3a9OvXj6SkJAwGA4sWLXJ2eOIC9s+LJ/m2ILbeE0lu+maiJ32NyTfA2WE5RUHRub9tNufFIVIdbDY4mAt7T0F+UcX1RVzd8XzYnQM5Z5wdiYi4i9NFsCcHDuapbSfuz2qD/X+07c5YnR2NeCq3mKDeZrMxYsQIkpKSmDx5MtHR0cybN49hw4YBEBsb67BYIq/vRpu7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sdlsvPLKKyxZsoSVK1fSpUsXgoODOXHiBDk5OY48ZBERERERKYOSXSIiDtC+fXv27dtXvJyZmYmPjw8GgwGARo0aXfC1ISEhmM0lO+J6edkzszk5OXTo0AGA3r17s2zZsuoO3e2Ud67Xr19Pnz59AOjXrx9JSUllbmPx4sVcf/31HD16lKZNm2I0GunQoQOJiYmkpaWRl5fHkCFDuP322zl16hQAXbt2JSEhocaPT0REREREyqdkl4iIAyQmJhIdHV28nJqaSkRERJW2eccddzBw4ED69u0LgK+vL8ePH6/SNj1Beef6xIkTBATYxyv7+/tz4sSJUq/PyckhOzub0NBQ6tevT2pqKqdPn2b16tWcPHmSw4cPk5aWxldffcWAAQN47733AIiIiGD79u01f4AiIiIiIlIuJbtERGrQrFmzsFgsNG7cmJiYmGrd9ty5c0lKSuKZZ56p1u26q8qc66CgILKysgDIzs4mKCioVJ1ly5ZxzTXXAGAymXj88ce55ppr2Lx5Mw0bNiQwMJCuXbvi7e1N7969SUlJqalDEhERERGRS6Bkl4hIDTo7j9SUKVNKlEdHR5ORkXHJ283PzwfAz8+veEL63NzcMpM3l4vKnOsrrriC1atXAxTPt/VnixYtYujQocXLN954IwkJCXTt2pXBgwfTsmVLDhw4gM1mY+vWrURGRgKQkZFBixYtaujoRERERESkspTsEhFxguDgYHJzc4uX4+LiWL58OSNHjuS7774D4NFHHwVg+fLlxMXFsXTpUkaPHg3AAw88gMVi4brrrmPixIkArF69mkGDBjn4SFzf+ee6UaNGdOzYkV69epGfn0/nzp05ePAgL730EgBFRUVs376dtm3bFr/+wQcfpH///qxevZqbb74ZLy8vbr/9dnr37s2MGTO45557APjxxx+xWCwOPz4RERERESnJYLPZbM4OwlUdStrG0qGTnB2Gxxi8aAoNu7R2dhgi1arzV/bf64dc/GvnzJlDWFgYAwYMqJZYxo0bx/Tp0/Hz86uW7bmSqpxnqP5z/WeZmZk8//zzvPbaazWyfUep6nmWytF5dhyda/Ekup4dQ+fZMXSepTLWrl1Lz549WbNmDT169Lio15orriIiIjVh1KhR1bq9t956q1q350mq+1z/WXBwsNsnukREREREPIWGMYqIiIiIiIiIiMdQsktERERE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xCOPPEJiYiLdunUrXrd48WIWLFjAoUOH2LhxIz/88AN/+9vfWL9+PZ07dy6uFxcXR0xMDOvWrSsue+655/jiiy84cOAA06dP58033yQhIQGAp59+mr59+2I2m6lfvz5paWk0b97cYccsIiIiUl00jFFEREQqJSEhgaioKCwWC6NHjy61furUqezYsaPcbTz88MP06tWLadOmXbDO66+/zoABAwB455136N+/PxaLhTNnznDmzBluvvlmLBYLL730EgC///4706dPr8KRua727duzb9++4uXMzEx8fHwwGAysX7+ePn36ANCvXz+SkpJKvLZBgwYYjSWbeqdOnaJBgwZ06tSJ1NTUEusSEhKKe3lZLBaWLl1aA0ckl5uq3jfWrFnDVVddRffu3XnllVdKrd+1axehoaFYLBZGjRpFUlISPXr0oHv37sU9Gj35HiEiImVTsktEREQqbezYsSQkJBAYGEhiYmJxudVqZcuWLbRo0eKCr12/fj1ms5kffviBjRs3cujQoVJ1zpw5Q3JyMgC7d+9m69atfPfddyQkJODl5cXnn39O9+7dSUhIYMOGDRw5coQ2bdqwceNGbDZbtR+vsyUmJhIdHV28nJqaSkREBAAnTpwgIMA+/t7f358TJ05UuD2r1Vrm32e3W6tWLQAiIiLYvn17dRyCSJXuG82aNWP16tWsW7eOr7/+mtzc3FJ1rrvuOhISEpgzZw6xsbGsXbuWdevWkZiYSFZWlkffI0REpGxKdomIiMhF+3OPo82bN9OyZctyX/PTTz/Rr18/APr06cOGDRtK1Zk7dy4jR44EYPny5Zw6dYp+/foxefJkANLT0+nQoQMAbdq04eeffwbsH4h//fXXKh+Xq5g1axYWi4XGjRsTExNTZp2goCCysrIAyM7OJigoqMLtnt/T6/y/Fy1axNChQ6sUs0hFLuW+ERYWVpyENZlMpXorAixbtoxevXrx0Ucf4eXlBUBRURFhYWH4+voCnnePEBGR8inZJSIiIhftzz2OduzYQWRkZLmvqagnktVqZdmyZVx99dUAHD58GIPBwPfff096ejrJycm0atWKVatWYbPZ+OGHHzh58iTgeT2RzvaEmTJlSony6OhoMjIyALjiiitYvXo1ACtXrqRLly4VbtfX15cjR46wZcuWEv9+S5Ys4dprry1ezsjIKLe3jciluJT7xlkrVqygefPm+Pj4lCgPDQ0lJSWF5cuX884773Ds2DHmzZtHmzZtCAoKwmy2T1HsafcIEREpnyaoFxERkUqbNWsW3377LT179rxgj6PffvuNBx98sETZNddcU6on0p8nP//8888ZMmRI8XJgYGDxnFS9e/cmJSWFm266ieXLlzNw4EDq169PgwYNqvHoXF9wcHDxMK5GjRrRsWNHevXqRceOHencuTMHDx5k7ty5PP7448yZM4d//etfnDx5kqysLF588UXi4+O54YYb8PLyYs6cOQAcPXoULy8vAgMDi/eTkJDA2LFjnXKM4nmqct946qmn2Lt3Ly+88AJfffVVqdd5e3sX/92rVy/S0tK47bbbuPXWWxkxYgRbt24t7g0qIiKXDyW7REREpNLOPiXwz1q0aMHnn38OQNu2bYuf8He+n3/+mY8//pjrr7+e1atXc/PNN5dYn5KSQkJCAnPnziU5OZlBgwaRnp4OwNatWxk5ciQmk4kZM2Zgs9kYPXp08VMKMzIy6NGjRzUfrXNYLJbiieLLMmTIEL799lsGDBhAfHw88fHxxesaNWrE448/DsCoUaMYNWpUideenc/ofPXq1eObb74pXi4sLOTw4cMleuCIVEVV7hv5+fnceeedzJgxAz8/v1Lrc3Jy8PPzw2azsX79eu69917APkzX39+/uCeYJ90jRESkYhrGKCIiIlXWqVMnUlJSyq1z5ZVXkp+fT69evejUqRMNGzbk4MGDxU9VnDhxIitWrOCbb74hJiaGJ554gsLCQiwWC7m5uXTt2pXdu3djsVjo378/N910U/F8PKmpqbRv377Gj9MVjBo1qvhplTXBbDYza9asGtu+yFmVuW/MmzeP3377jfvuuw+LxcK+fftK3DfWrVtH586d6d69O4MGDSIpKQmLxULv3r1p0qRJ8XDcy+keISIi6tklIiIilVRejyOj0UjHjh3ZsWNHuXM9vfXWWyWWz++JdL5vv/0WgNdff71EedOmTUv1/vj999+54oorMBgMFR+EiDhUVe8bY8aMYcyYMaXKz943Bg0axKBBg0qsGzFiRIll3SNERC4/SnaJiIhItShrmJIjtGnThjZt2jhl3yJSNY64b+geISJy+dEwRhERERERERER8RhKdomIiIiIiIiIiMfQMEZxOTlnIDXLOfuODgA/L+fsW0RERERERESqTskucTmp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SEhIYMyYMURERBAREcHs2bNLrJ87dy6hoaEMGDCAXr16sWnTJrZt20aTJk1K1Js/fz5PP/00/fv3Z+bMmQA8/fTTrFq1CpPJxNtvv02HDh0YN24cL774InXq1HHYMYqIiIhcLirbtmvVqhW33HILZrOZ5s2b8/7772MwGIrrHTlyhHvvvZcTJ04wcuRI7r33Xq6//nqysrIwm80sWLCAoKAg7r///uK23+Wksuc5PDycu+66C6PRSOfOnXnttddK1Hv11Vd55ZVXeOCBB5g0aRKA2ssi1Uw9u8Tl+HlBTIhzfvy8nH30jjN27FgSEhIIDAwkMTGxxLrFixfTv39/AD799FNuuummMrcxcOBAVqxYUaLsvvvuY926dXz44Ye88MILAFx//fUsWLCgBo5CRERERKBybbuwsDDWrl3L6tWrMRqNbN26tUS95557jtdff52VK1dy7733AvD555+zatUq7rzzTubNm4fZbKZ+/fqkpaU57NhcSWXOc7169Vi2bBk//PADR48eZfv27SXqxcXFMXfu3BJlai+LVC8lu0Quc+3bt2ffvn3Fy5mZmfj4+BR/y9eoUaMLvjYkJASzuWQH0cjISABMJlPxNnr37s2yZcuqOXIRERER+bPy2nbnt8+8vb0JCwsr8drt27fz1FNPMWjQIFJSUgDw8rJ/G3z69GnatGkDgMViYenSpY44HJdV3nkOCQnBz88PKNkmPqtBgwYYjSU/iqu9LFK9lOwSucwlJiYSHR1dvJyamkpERESVtxsfH8+DDz4IgK+vL8ePH6/yNkVERESkfBW17b7//ns6duzIwYMHCQwMLPHaNWvWMGXKFN566y0mTpwI2JM43bt354033ihOdkVERJTqrXS5qUwb+tdff+Xo0aO0aNGiwu2pvSxSvZTsErlMzZo1C4vFQuPGjYmJianWbb/33ntERUXRo4eTJl8TERERucxUtm3Xr18/tmzZQkREBN98802Jde3ataN58+a0aNGCkydPAhAcHMy6deuYMmVKqbmnLkeVPc9ZWVk89NBDvPvuu44LTkSKaYJ6kcvU2LFjiyfEPF90dDQZGRmXvN3ExESWLFnCZ599VlyWm5tLUFDQJW9TRERERMpXmbZdQUEBtWrVAiAwMBAfH58SdSMjIzl69ChFRUX4+vpitVqxWq2YzeYS9TMyMirVW8kTVeY822w2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uqnMbQwcOJAVK1aUKIuPj2fVqlV8+umnvPzyywBcf/31LFiwoAaOwj1U5lwfOnSIjRs38sMPP2A2m1m/fn2JevPnzychIYF7772Xa6+9lsLCQmbPns2aNWu4++67mTlzJjabjVdeeYUlS5awcuVKunTpQnBwMCdOnCAnJ8eRhywiIiIicskq034OCwtj7dq1rF69GqPRyNatW0tt54MPPqBt27bFy88++yxr1qxhwoQJvPWW/UFzXbt2ZeXKlTV7QOdRsktExAHat2/Pvn37ipczMzPx8fEp/majUaNGF3xtSEgIZnPJjrheXvbMbE5ODh06dACgd+/eLFu2rLpDdzvlnev169fTp08fAPr160dSUlKZ21i8eDHXX389R48epWnTphiNRjp06EBiYiJpaWnk5eUxZMgQbr/9dk6dOgXY38ATEhJq/PhERERERKpTee1nk8lU/JnF29ubsLCwEq8tKipizZo19OrVq7gsMjISoMRr+/bty5IlS2r4SM5RsktExAESExOJjo4uXk5NTSUiIqJK27zjjjsYOHAgffv2BcDX15fjx49XaZueoLxzfeLECQIC7OOV/f39OXHiRKnX5+TkkJ2dTWhoKPXr1yc1NZXTp0+zevVqTp48yeHDh0lLS+Orr75iwIABvPfeewBERESwffv2mj9AEREREZFqVNFnle+//56OHTty8OBBAgMDS7x2/vz5ZY5QsVqtTJs2jbFjxwKObysr2SUiUoNmzZqFxWKhcePGxMTEVOu2586dS1JSEs8880y1btddVeZcBwUFkZWVBUB2djZBQUGl6ixbtoxrrrkGsH8b9fjjj3PNNdewefNmGjZsSGBgIF27dsXb25vevXuTkpJSU4ckIiIiIlJjKvtZpV+/fmzZsoWIiAi++eab4nKbzcaXX37J0KFDS70mPj6eW2+9lWbNmtVE6BXSBPUiIjVo7NixTJo0qVR5dHQ0GRkZl7zd/Px8vL298fPzK56QPjc3t8zkzeWiMuf6iiuu4MMPP+Thhx9m5cqV3HbbbaXqL1q0iKeeeqp4+cYbb+TGG2/k008/pbCwkJYtW3LgwAFsNhtbt24t7qadkZFBixYtaubgRERERESqWWXazwUFBdSqVQuAwMBAfHx8iuvl5OSwc+dOrr32WlJTU/nmm29ISEjgf//7H5mZmUydOrW4rqPbyurZJSLi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p3PWWWdxzjnn8Mtf/pKhQ4cCsHz5cgoLC3n77bdZvHgxAG3atGH58uU1+XJ1CjPskqrZl6+WLFiwgLPPPrvK+6Snp5df9TiS119/nYKCAp5//vlKl8GrI6p+J7I/v//++wwcOBCAAQMGMGfOnArrv7y/r1q1inPPPReIhbazZs2qtA3cxyVJkk7E008/TTgc5swzz6R79+6VbtO4cWN27NgBwM6dO2ncuHGF9SkpKRVup6amMnr0aC655BIWLFhAixYtWLp0KevXr6e4uJiHHnqIX/ziF0Bszq7U1FQuu+wyPvjggxp5jdIXGXZJ1ezLV0tKSkpo27btST1mq1atKC4uZurUqTz55JPUr1+/wvLnEz96dUTV7UT256NdFfyyjh078tZbbxGNRpkxYwbbt2+vtA3cxyVJkk7E5732f/zjH1doz83NZc2aNUBsXq3p06cD8Oabb9KrV68K22ZkZLB582YWLlxYfn549dVXU1hYSO/evbn00kuJRCI0adKEUChEVlYW27ZtY8+ePZSVlQGxc8ucnBwA1qxZU+VoAelkpCW6ACkonn76aaZNm0b//v2PeLXkgw8+4I477qjQdskll/Dd7363yseuW7du+e2CggLWrFlT/uFTUFDAypUradq06cm9AOkLTmZ//vJVwfbt21f5XFdeeSVTp07l4osvplmzZjRv3pxwOHxYmyRJkqpXVlYWe/bsAaBly5Z07dqVgoICunbtSs+ePdmwYQMTJ05k9OjRjBkzhquuuor09PTyqVTuuOMOiouL6dSpE48++iipqalEo1EuvPBCotEozz77LCtXruTWW2+lfv369OrVi/PPPx+IDaHs0qVLwl67gs2wS6omI0eO5MEHHzysvUOHDrzwwgsAdOrUicLCwuN+7F27dpGZmUk0GmX27NncfvvtAOXLd911FxC7OtKvX78TfxHSP53M/jxr1iwmT57MFVdcwfTp07nuuuuqfK7U1FTGjx9PNBplxIgR9OnTp9I2cB+XJEk6XuFwmHA4fMT1V155JdOmTWPw4MGMGTOGMWPGlK9r2bIlo0ePBiA/P5933nmnwn1/9atfHfZ4EyZMOKzty9NaLF26lB49ehAKhY7npUjHzGGMUg3r1q0bxcXFR91u8ODBzJs3j8GDB7N48WI2bNhQ/it07777Lj179qRv374MGTKEpUuXVlhu1aoV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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAABLsAAAMkCAYAAABQkSLjAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAADaiUlEQVR4nOzdd3hUVf7H8ffMpBHSCDW0JBBKaEmkSYkMELuiKNiWIoIdXXYVdRFc1qUsupZ1V1EWdAFFURZX8IdSlEiLREoAKSGBEJAOIaTXmd8fIyMhIaEkM5nh83qePM4959x7v/d6mbnznXPONVitVisiIiIiIiIiIiJuwOjsAERERERERERERKqLkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNtQsktERERERERERNyGkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNtQsktERERERERERNyGkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNtQsktERERERERERNyGkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbXg4O4DarCg7jzO7Dzo7DLdRL7IlXv6+VbbLKYbULAcEVIGIAPDzdM6+RUREREREROTqKdlViTO7D/LNXROdHYbbuPWrKTTu0b7KdqlZMGa9AwKqwOw+EF3fOfsWERERERERkaunYYwiIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbWiCenELyS+byd2TgMHDE4PJA59m7Wk6bCoBUQOdHZqIiIiIiIiIOJB6donbaDpsKjELc+gy9zh12/Vi37S7Kc096+ywRERERERERMSBlOwSt2P09KbBjaOxFORQcDTV2eGIiIiIiIiIiAMp2SVux1KYz6mVszH6BuDTtI2zwxERERERERERB3KZ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Q45PRERERERErl1Kdkmt4+cJ0fWdHYX7Gz16NBMnTuTZZ58lISGBXr162euWLl3KwoULycjIYPny5fj5+TF8+HD27t1L27Zt7e2GDRtGdHQ0GzZsKLPtjz76iA4dOtiX77zzThYuXMgjjzxS8wcmIiIiIiIi1zQNYxS5xnXq1InDhw/blzMyMvDx8cFgMFC/fn38/PwAMJlMGAyGMus2atQIo7Hs20hpaSnr1q0jNjbWXnbDDTewfPnyGjwKERERERERERslu0SucQkJCURERNiXU1NTCQ0NLdNm586dnDp1ijZt2lS5vc8++4whQ4aUKfP19eXMmTPVE7CIiIiIiIhIJZTsErlGzZkzB7PZTLNmzYiOjr5ou6ysLMaOHcusWbOq3KbVauV///sfd911VzVGKiIiIiIiInLpNGeXyDXq3JxdF4qIiCA9PR2wJa8eeeQRXn31VZo2bVrlNnNycti/fz+33XYbqampfPvtt8THx2OxWAgKCqruQxAREREREREpR8kuESkjODiYvLw8wPbUxu+//55Tp04B8MYbb9CsWTPmz5/P+PHjmTdvHv/4xz84e/YsWVlZvPbaa2zevBmAyZMnExcXh4+PD99++y033XST045JRERERERErh1Kdolcg8xmM2az+aL1gwYNYtWqVcTFxZGRkVGufvz48QCMGDGCESNGVLiNyZMn218vXbqUGTNmXFXMIiIiIiIiIpdCyS4RKediCawr9e6771br9kREREREREQuRhPUi4iIiIiIiIiI21CyS0RERERERERE3IaSXSIiIiIiIiIi4jaU7BIREREREREREbehCeql1skphtQs5+w7IgD8PJ2zbxERERERERG5ekp2Sa2TmgVj1jtn37P7QHR95+xbRERERERERK6ehjGKiIiIiIiIiIjbULJLRERERERERETchpJdIiIiIiIiIiLiNpTsEhERERERERERt6EJ6sUtJL9sJndPAgYPTwwmD3yatafpsKkERA10dmgiIiIiIiIi4kDq2SVuo+mwqcQszKHL3OPUbdeLfdPupjT3rLPDEhEREREREREHUrJL3I7R05sGN47GUpBDwdFUZ4cjIiIiIiIiIg6kZJe4HUthPqdWzsboG4BP0zbODkdEREREREREHMhlkl1FRUVMmjSJFi1aUKdOHQYMGEBiYiIGg4GvvvrK2eFJLXBk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6kWkjODgYPLy8gDbnATff/89p06dAuCNN96gWbNmzJ8/n/HjxzNv3jz+8Y9/cPbsWbKysnjttdfsv05NnjyZuLg4fHx8+Pbbb7npppucdkwiIiIi16rz7+1uuukmew8wDw8PvvjiC44dO2a/txsxYgQnT57E29ub//znPwA899xzDBw4EJPJZC+Lj49n9OjRTjoi55szZw6rVq2ib9++F+1Ft2vXLp566qkyZbfccgtBQUFkZWUBtuTihZP8X1gfGBjIoEGDym3/oYce4oEHHmDo0KHs2LGDzp07V8ORibgPJbtErkFmsxmz2XzR+kGDBrFq1Sri4uLIyMgoVz9+/HgARowYwYgRIyrcxuTJk+2vly5dqgkzRURERGrI5dzbLV68uFz9uXu7L7/8slxdXFycfWJ0gJKSEk6cOFGmR9O15tyTLy/Upk0b+/nt0KED8fHx5dr89NNPfPrpp9x5552sWbOG++67r0x9jx49ytR36tSJdevWMX/+fJKSkpg9ezbDhw/H29sbo9GIv78/Pj4+gK3HXZ8+far/gEVckIYxikg5I0aMKHNTc7Xeffdd+1MdRURERMSxqvPezsPDgzlz5lTLttxNVFRUlfOade/encLCQmJjY4mKiqJx48YcO3aM119/vcL6P//5z6xcuZJvv/2W6OhoxowZw5IlSzCbzdxwww00b97cPqQ0NTWVTp061fhxirgC9ewSERERERERuQSV9aIzGo106dKFlJSUSuc0e/fdd8ssN2nSxN67rqL6c1atWgXA0KFDGTp0aJm63bt307VrVwwGw6UchojbU7JLREREREREpBpUNLzRESIjI4mMjHTKvkVqIw1jFBERERERERERt6Fkl4iIiIiIiIiIuA0lu0RERERERERExG1ozi6pdXKKITXLOfuOCAA/T+fsW0RERERERESunpJdUuukZsGY9c7Z9+w+EF3fOfsWERERERERkaunYYwiIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4Dc3ZJW4h+WUzuXsSMHh4YjB54NOsPU2HTSUgaqCzQxMRERERERERB1LPLnEbTYdNJWZhDl3mHqduu17sm3Y3pblnnR2WiIiIiIiIiDiQkl3idoye3jS4cTSWghwKjqY6OxwRERERERERcSAlu8TtWArzObVyNkbfAHyatnF2OCIiIiIi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", "text/plain": [ "
" ] @@ -776,10 +776,10 @@ "execution_count": 18, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:01.534655Z", - "iopub.status.busy": "2024-10-30T11:02:01.534234Z", - "iopub.status.idle": "2024-10-30T11:02:01.825402Z", - "shell.execute_reply": "2024-10-30T11:02:01.824823Z" + "iopub.execute_input": "2024-10-30T17:21:24.659094Z", + "iopub.status.busy": "2024-10-30T17:21:24.658714Z", + "iopub.status.idle": "2024-10-30T17:21:24.918579Z", + "shell.execute_reply": "2024-10-30T17:21:24.918109Z" } }, "outputs": [ diff --git a/dev/explanations/state-vectors-and-gates.html b/dev/explanations/state-vectors-and-gates.html index 5c17e494b..96fea79b2 100644 --- a/dev/explanations/state-vectors-and-gates.html +++ b/dev/explanations/state-vectors-and-gates.html @@ -6,7 +6,7 @@ - State vectors and gates - ffsim 0.0.48.dev0 + State vectors and gates - ffsim 0.0.48 @@ -160,7 +160,7 @@
@@ -184,7 +184,7 @@ diff --git a/dev/explanations/state-vectors-and-gates.ipynb b/dev/explanations/state-vectors-and-gates.ipynb index a356abd7f..9f8eda941 100644 --- a/dev/explanations/state-vectors-and-gates.ipynb +++ b/dev/explanations/state-vectors-and-gates.ipynb @@ -26,10 +26,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.213294Z", - "iopub.status.busy": "2024-10-30T11:02:04.213106Z", - "iopub.status.idle": "2024-10-30T11:02:04.926361Z", - "shell.execute_reply": "2024-10-30T11:02:04.925764Z" + "iopub.execute_input": "2024-10-30T17:21:27.432929Z", + "iopub.status.busy": "2024-10-30T17:21:27.432497Z", + "iopub.status.idle": "2024-10-30T17:21:28.130913Z", + "shell.execute_reply": "2024-10-30T17:21:28.130418Z" } }, "outputs": [ @@ -74,10 +74,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.928557Z", - "iopub.status.busy": "2024-10-30T11:02:04.928276Z", - "iopub.status.idle": "2024-10-30T11:02:04.935032Z", - "shell.execute_reply": "2024-10-30T11:02:04.934564Z" + "iopub.execute_input": "2024-10-30T17:21:28.133138Z", + "iopub.status.busy": "2024-10-30T17:21:28.132648Z", + "iopub.status.idle": "2024-10-30T17:21:28.139425Z", + "shell.execute_reply": "2024-10-30T17:21:28.138859Z" } }, "outputs": [ @@ -120,10 +120,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.936777Z", - "iopub.status.busy": "2024-10-30T11:02:04.936585Z", - "iopub.status.idle": "2024-10-30T11:02:04.940977Z", - "shell.execute_reply": "2024-10-30T11:02:04.940362Z" + "iopub.execute_input": "2024-10-30T17:21:28.141328Z", + "iopub.status.busy": "2024-10-30T17:21:28.141036Z", + "iopub.status.idle": "2024-10-30T17:21:28.145088Z", + "shell.execute_reply": "2024-10-30T17:21:28.144629Z" } }, "outputs": [ @@ -157,10 +157,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.942770Z", - "iopub.status.busy": "2024-10-30T11:02:04.942578Z", - "iopub.status.idle": "2024-10-30T11:02:04.947073Z", - "shell.execute_reply": "2024-10-30T11:02:04.946594Z" + "iopub.execute_input": "2024-10-30T17:21:28.146841Z", + "iopub.status.busy": "2024-10-30T17:21:28.146518Z", + "iopub.status.idle": "2024-10-30T17:21:28.150558Z", + "shell.execute_reply": "2024-10-30T17:21:28.150019Z" } }, "outputs": [ @@ -199,10 +199,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.948769Z", - "iopub.status.busy": "2024-10-30T11:02:04.948581Z", - "iopub.status.idle": "2024-10-30T11:02:04.954461Z", - "shell.execute_reply": "2024-10-30T11:02:04.953858Z" + "iopub.execute_input": "2024-10-30T17:21:28.152282Z", + "iopub.status.busy": "2024-10-30T17:21:28.152101Z", + "iopub.status.idle": "2024-10-30T17:21:28.157873Z", + "shell.execute_reply": "2024-10-30T17:21:28.157326Z" } }, "outputs": [ @@ -245,10 +245,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.956465Z", - "iopub.status.busy": "2024-10-30T11:02:04.956116Z", - "iopub.status.idle": "2024-10-30T11:02:04.961532Z", - "shell.execute_reply": "2024-10-30T11:02:04.961064Z" + "iopub.execute_input": "2024-10-30T17:21:28.159747Z", + "iopub.status.busy": "2024-10-30T17:21:28.159337Z", + "iopub.status.idle": "2024-10-30T17:21:28.164883Z", + "shell.execute_reply": "2024-10-30T17:21:28.164416Z" } }, "outputs": [ @@ -293,10 +293,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:04.963449Z", - "iopub.status.busy": "2024-10-30T11:02:04.963161Z", - "iopub.status.idle": "2024-10-30T11:02:04.968007Z", - "shell.execute_reply": "2024-10-30T11:02:04.967443Z" + "iopub.execute_input": "2024-10-30T17:21:28.166721Z", + "iopub.status.busy": "2024-10-30T17:21:28.166370Z", + "iopub.status.idle": "2024-10-30T17:21:28.171141Z", + "shell.execute_reply": "2024-10-30T17:21:28.170697Z" } }, "outputs": [ diff --git a/dev/genindex.html b/dev/genindex.html index 56c9cae03..38c0aad8c 100644 --- a/dev/genindex.html +++ b/dev/genindex.html @@ -4,7 +4,7 @@ - Index - ffsim 0.0.48.dev0 + Index - ffsim 0.0.48 @@ -157,7 +157,7 @@
@@ -181,7 +181,7 @@ -
+
diff --git a/dev/how-to-guides/entanglement-forging.html b/dev/how-to-guides/entanglement-forging.html index ed590e67d..0b006bfb8 100644 --- a/dev/how-to-guides/entanglement-forging.html +++ b/dev/how-to-guides/entanglement-forging.html @@ -6,7 +6,7 @@ - How to simulate entanglement forging - ffsim 0.0.48.dev0 + How to simulate entanglement forging - ffsim 0.0.48 @@ -160,7 +160,7 @@
diff --git a/dev/how-to-guides/entanglement-forging.ipynb b/dev/how-to-guides/entanglement-forging.ipynb index e814c3cb4..47ca28ee6 100644 --- a/dev/how-to-guides/entanglement-forging.ipynb +++ b/dev/how-to-guides/entanglement-forging.ipynb @@ -18,10 +18,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:06.799619Z", - "iopub.status.busy": "2024-10-30T11:02:06.799177Z", - "iopub.status.idle": "2024-10-30T11:02:07.787317Z", - "shell.execute_reply": "2024-10-30T11:02:07.786723Z" + "iopub.execute_input": "2024-10-30T17:21:29.884603Z", + "iopub.status.busy": "2024-10-30T17:21:29.884389Z", + "iopub.status.idle": "2024-10-30T17:21:30.855172Z", + "shell.execute_reply": "2024-10-30T17:21:30.854521Z" } }, "outputs": [ @@ -36,7 +36,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Parsing /tmp/tmpq681a8rd\n", + "Parsing /tmp/tmpkl79nbln\n", "converged SCF energy = -75.6787887956314\n" ] }, @@ -125,10 +125,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:07.790330Z", - "iopub.status.busy": "2024-10-30T11:02:07.790010Z", - "iopub.status.idle": "2024-10-30T11:02:07.794567Z", - "shell.execute_reply": "2024-10-30T11:02:07.794106Z" + "iopub.execute_input": "2024-10-30T17:21:30.858507Z", + "iopub.status.busy": "2024-10-30T17:21:30.857593Z", + "iopub.status.idle": "2024-10-30T17:21:30.862817Z", + "shell.execute_reply": "2024-10-30T17:21:30.862223Z" } }, "outputs": [], @@ -168,10 +168,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:07.796858Z", - "iopub.status.busy": "2024-10-30T11:02:07.796248Z", - "iopub.status.idle": "2024-10-30T11:02:07.799770Z", - "shell.execute_reply": "2024-10-30T11:02:07.799294Z" + "iopub.execute_input": "2024-10-30T17:21:30.864491Z", + "iopub.status.busy": "2024-10-30T17:21:30.864304Z", + "iopub.status.idle": "2024-10-30T17:21:30.867442Z", + "shell.execute_reply": "2024-10-30T17:21:30.866989Z" } }, "outputs": [], @@ -200,10 +200,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:07.801529Z", - "iopub.status.busy": "2024-10-30T11:02:07.801340Z", - "iopub.status.idle": "2024-10-30T11:02:07.918957Z", - "shell.execute_reply": "2024-10-30T11:02:07.918469Z" + "iopub.execute_input": "2024-10-30T17:21:30.869482Z", + "iopub.status.busy": "2024-10-30T17:21:30.869102Z", + "iopub.status.idle": "2024-10-30T17:21:30.985754Z", + "shell.execute_reply": "2024-10-30T17:21:30.985235Z" } }, "outputs": [ @@ -211,7 +211,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Energy at initialialization: -75.67794403659727\n" + "Energy at initialialization: -75.67794403659725\n" ] } ], @@ -238,10 +238,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:07.920886Z", - "iopub.status.busy": "2024-10-30T11:02:07.920691Z", - "iopub.status.idle": "2024-10-30T11:02:16.033216Z", - "shell.execute_reply": "2024-10-30T11:02:16.032605Z" + "iopub.execute_input": "2024-10-30T17:21:30.988023Z", + "iopub.status.busy": "2024-10-30T17:21:30.987578Z", + "iopub.status.idle": "2024-10-30T17:21:38.832577Z", + "shell.execute_reply": "2024-10-30T17:21:38.832032Z" } }, "outputs": [ @@ -253,10 +253,10 @@ " message: STOP: TOTAL NO. of f AND g EVALUATIONS EXCEEDS LIMIT\n", " success: False\n", " status: 1\n", - " fun: -75.6838157319136\n", - " x: [-1.603e-01 6.419e-03 ... 5.748e-02 -1.005e-01]\n", + " fun: -75.68381553436124\n", + " x: [-1.603e-01 6.418e-03 ... 5.748e-02 -1.005e-01]\n", " nit: 3\n", - " jac: [ 2.146e-04 9.663e-05 ... -4.752e-03 7.383e-03]\n", + " jac: [ 2.146e-04 1.080e-04 ... -4.751e-03 7.452e-03]\n", " nfev: 112\n", " njev: 7\n", " hess_inv: <15x15 LbfgsInvHessProduct with dtype=float64>\n" diff --git a/dev/how-to-guides/fermion-operator.html b/dev/how-to-guides/fermion-operator.html index e6a8724b2..b7b31f533 100644 --- a/dev/how-to-guides/fermion-operator.html +++ b/dev/how-to-guides/fermion-operator.html @@ -6,7 +6,7 @@ - How to use the FermionOperator class - ffsim 0.0.48.dev0 + How to use the FermionOperator class - ffsim 0.0.48 @@ -160,7 +160,7 @@

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

@@ -364,17 +364,17 @@

How to use the FermionOperator class
 FermionOperator({
-    (cre_b(2)): 0-0.25j,
-    (des_a(3), des_b(3)): 0.0625,
-    (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625,
-    (cre_a(3), des_a(0)): -0.5,
     (cre_a(0), des_a(3)): 1,
+    (cre_b(2)): 0-0.25j,
+    (cre_a(0), des_a(3), cre_b(2)): 0+0.5j,
     (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -0.25-0.25j,
     (cre_b(1), des_b(5), cre_a(4), cre_b(2)): -1+1j,
-    (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,
-    (cre_a(3), des_a(0), cre_b(2)): 0-0.25j,
+    (cre_a(3), des_a(0)): -0.5,
     (cre_b(1), des_b(5), cre_a(4)): 2+2j,
-    (cre_a(0), des_a(3), cre_b(2)): 0+0.5j
+    (cre_a(3), des_a(0), cre_b(2)): 0-0.25j,
+    (des_a(3), des_b(3)): 0.0625,
+    (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,
+    (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625
 })
 

@@ -403,17 +403,17 @@

How to use the FermionOperator class
 FermionOperator({
-    (cre_b(2)): -5,
-    (des_a(3), des_b(3)): 0-1.25j,
-    (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j,
-    (cre_a(3), des_a(0)): 0+3j,
     (cre_a(0), des_a(3)): 0-6j,
+    (cre_b(2)): -5,
+    (cre_a(0), des_a(3), cre_b(2)): 2,
     (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -1+1j,
     (cre_b(1), des_b(5), cre_a(4), cre_b(2)): 4+4j,
-    (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,
-    (cre_a(3), des_a(0), cre_b(2)): -1,
+    (cre_a(3), des_a(0)): 0+3j,
     (cre_b(1), des_b(5), cre_a(4)): 12-12j,
-    (cre_a(0), des_a(3), cre_b(2)): 2
+    (cre_a(3), des_a(0), cre_b(2)): -1,
+    (des_a(3), des_b(3)): 0-1.25j,
+    (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,
+    (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j
 })
 

@@ -434,16 +434,16 @@

How to use the FermionOperator class
 FermionOperator({
-    (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,
     (cre_b(2), cre_a(3), des_a(0)): -1,
     (cre_b(2)): -5,
-    (cre_a(0), des_a(3)): 0-6j,
-    (cre_b(1), cre_a(4), des_b(5)): -12+12j,
     (cre_b(2), cre_a(0), des_a(3)): 2,
+    (cre_a(3), des_a(0)): 0+3j,
     (des_b(3), des_a(3)): 0+1.25j,
-    (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j,
+    (cre_b(1), cre_a(4), des_b(5)): -12+12j,
     (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,
-    (cre_a(3), des_a(0)): 0+3j
+    (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j,
+    (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,
+    (cre_a(0), des_a(3)): 0-6j
 })
 

@@ -512,11 +512,11 @@

How to use the FermionOperator class
-array([0.       +0.j        , 0.       +0.j        ,
-       0.       +0.j        , 0.       +0.j        ,
-       0.0241729+0.17754545j, 0.       +0.j        ,
-       0.       +0.j        , 0.       +0.j        ,
-       0.       +0.j        ])
+array([0.        +0.j        , 0.        +0.j        ,
+       0.        +0.j        , 0.        +0.j        ,
+       0.02018867-0.06374738j, 0.        +0.j        ,
+       0.        +0.j        , 0.        +0.j        ,
+       0.        +0.j        ])
 

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

@@ -591,7 +591,7 @@

How to use the FermionOperator class +

diff --git a/dev/how-to-guides/fermion-operator.ipynb b/dev/how-to-guides/fermion-operator.ipynb index 6678d8406..27ce66995 100644 --- a/dev/how-to-guides/fermion-operator.ipynb +++ b/dev/how-to-guides/fermion-operator.ipynb @@ -29,10 +29,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:17.552188Z", - "iopub.status.busy": "2024-10-30T11:02:17.551987Z", - "iopub.status.idle": "2024-10-30T11:02:18.267889Z", - "shell.execute_reply": "2024-10-30T11:02:18.267279Z" + "iopub.execute_input": "2024-10-30T17:21:40.347687Z", + "iopub.status.busy": "2024-10-30T17:21:40.347502Z", + "iopub.status.idle": "2024-10-30T17:21:41.049309Z", + "shell.execute_reply": "2024-10-30T17:21:41.048730Z" } }, "outputs": [ @@ -40,8 +40,8 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (cre_a(3), des_a(0)): -0.25,\n", " (cre_b(1), des_b(5), cre_a(4)): 1+1j,\n", + " (cre_a(3), des_a(0)): -0.25,\n", " (cre_a(0), des_a(3)): 0.5\n", "})" ] @@ -76,17 +76,17 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.270150Z", - "iopub.status.busy": "2024-10-30T11:02:18.269663Z", - "iopub.status.idle": "2024-10-30T11:02:18.273713Z", - "shell.execute_reply": "2024-10-30T11:02:18.273176Z" + "iopub.execute_input": "2024-10-30T17:21:41.051594Z", + "iopub.status.busy": "2024-10-30T17:21:41.051035Z", + "iopub.status.idle": "2024-10-30T17:21:41.055085Z", + "shell.execute_reply": "2024-10-30T17:21:41.054612Z" } }, "outputs": [ { "data": { "text/plain": [ - "'FermionOperator({((True, False, 3), (False, False, 0)): -0.25+0j, ((True, True, 1), (False, True, 5), (True, False, 4)): 1+1j, ((True, False, 0), (False, False, 3)): 0.5+0j})'" + "'FermionOperator({((True, True, 1), (False, True, 5), (True, False, 4)): 1+1j, ((True, False, 3), (False, False, 0)): -0.25+0j, ((True, False, 0), (False, False, 3)): 0.5+0j})'" ] }, "execution_count": 2, @@ -110,10 +110,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.275787Z", - "iopub.status.busy": "2024-10-30T11:02:18.275434Z", - "iopub.status.idle": "2024-10-30T11:02:18.279632Z", - "shell.execute_reply": "2024-10-30T11:02:18.279166Z" + "iopub.execute_input": "2024-10-30T17:21:41.056801Z", + "iopub.status.busy": "2024-10-30T17:21:41.056614Z", + "iopub.status.idle": "2024-10-30T17:21:41.060853Z", + "shell.execute_reply": "2024-10-30T17:21:41.060278Z" } }, "outputs": [ @@ -121,17 +121,17 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (cre_b(2)): 0-0.25j,\n", - " (des_a(3), des_b(3)): 0.0625,\n", - " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625,\n", - " (cre_a(3), des_a(0)): -0.5,\n", " (cre_a(0), des_a(3)): 1,\n", + " (cre_b(2)): 0-0.25j,\n", + " (cre_a(0), des_a(3), cre_b(2)): 0+0.5j,\n", " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -0.25-0.25j,\n", " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): -1+1j,\n", - " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,\n", - " (cre_a(3), des_a(0), cre_b(2)): 0-0.25j,\n", + " (cre_a(3), des_a(0)): -0.5,\n", " (cre_b(1), des_b(5), cre_a(4)): 2+2j,\n", - " (cre_a(0), des_a(3), cre_b(2)): 0+0.5j\n", + " (cre_a(3), des_a(0), cre_b(2)): 0-0.25j,\n", + " (des_a(3), des_b(3)): 0.0625,\n", + " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,\n", + " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625\n", "})" ] }, @@ -170,10 +170,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.281589Z", - "iopub.status.busy": "2024-10-30T11:02:18.281176Z", - "iopub.status.idle": "2024-10-30T11:02:18.285250Z", - "shell.execute_reply": "2024-10-30T11:02:18.284683Z" + "iopub.execute_input": "2024-10-30T17:21:41.063022Z", + "iopub.status.busy": "2024-10-30T17:21:41.062604Z", + "iopub.status.idle": "2024-10-30T17:21:41.066826Z", + "shell.execute_reply": "2024-10-30T17:21:41.066353Z" } }, "outputs": [ @@ -181,17 +181,17 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (cre_b(2)): -5,\n", - " (des_a(3), des_b(3)): 0-1.25j,\n", - " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j,\n", - " (cre_a(3), des_a(0)): 0+3j,\n", " (cre_a(0), des_a(3)): 0-6j,\n", + " (cre_b(2)): -5,\n", + " (cre_a(0), des_a(3), cre_b(2)): 2,\n", " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -1+1j,\n", " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): 4+4j,\n", - " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,\n", - " (cre_a(3), des_a(0), cre_b(2)): -1,\n", + " (cre_a(3), des_a(0)): 0+3j,\n", " (cre_b(1), des_b(5), cre_a(4)): 12-12j,\n", - " (cre_a(0), des_a(3), cre_b(2)): 2\n", + " (cre_a(3), des_a(0), cre_b(2)): -1,\n", + " (des_a(3), des_b(3)): 0-1.25j,\n", + " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,\n", + " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j\n", "})" ] }, @@ -220,10 +220,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.287192Z", - "iopub.status.busy": "2024-10-30T11:02:18.286854Z", - "iopub.status.idle": "2024-10-30T11:02:18.290616Z", - "shell.execute_reply": "2024-10-30T11:02:18.290049Z" + "iopub.execute_input": "2024-10-30T17:21:41.068680Z", + "iopub.status.busy": "2024-10-30T17:21:41.068347Z", + "iopub.status.idle": "2024-10-30T17:21:41.072185Z", + "shell.execute_reply": "2024-10-30T17:21:41.071603Z" } }, "outputs": [ @@ -231,16 +231,16 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n", " (cre_b(2), cre_a(3), des_a(0)): -1,\n", " (cre_b(2)): -5,\n", - " (cre_a(0), des_a(3)): 0-6j,\n", - " (cre_b(1), cre_a(4), des_b(5)): -12+12j,\n", " (cre_b(2), cre_a(0), des_a(3)): 2,\n", + " (cre_a(3), des_a(0)): 0+3j,\n", " (des_b(3), des_a(3)): 0+1.25j,\n", - " (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j,\n", + " (cre_b(1), cre_a(4), des_b(5)): -12+12j,\n", " (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,\n", - " (cre_a(3), des_a(0)): 0+3j\n", + " (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j,\n", + " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n", + " (cre_a(0), des_a(3)): 0-6j\n", "})" ] }, @@ -265,10 +265,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.292591Z", - "iopub.status.busy": "2024-10-30T11:02:18.292261Z", - "iopub.status.idle": "2024-10-30T11:02:18.295191Z", - "shell.execute_reply": "2024-10-30T11:02:18.294730Z" + "iopub.execute_input": "2024-10-30T17:21:41.074327Z", + "iopub.status.busy": "2024-10-30T17:21:41.074013Z", + "iopub.status.idle": "2024-10-30T17:21:41.077472Z", + "shell.execute_reply": "2024-10-30T17:21:41.076971Z" } }, "outputs": [ @@ -298,10 +298,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.297177Z", - "iopub.status.busy": "2024-10-30T11:02:18.296716Z", - "iopub.status.idle": "2024-10-30T11:02:18.300923Z", - "shell.execute_reply": "2024-10-30T11:02:18.300358Z" + "iopub.execute_input": "2024-10-30T17:21:41.079311Z", + "iopub.status.busy": "2024-10-30T17:21:41.078974Z", + "iopub.status.idle": "2024-10-30T17:21:41.082757Z", + "shell.execute_reply": "2024-10-30T17:21:41.082305Z" } }, "outputs": [ @@ -341,21 +341,21 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.302788Z", - "iopub.status.busy": "2024-10-30T11:02:18.302463Z", - "iopub.status.idle": "2024-10-30T11:02:18.308637Z", - "shell.execute_reply": "2024-10-30T11:02:18.308163Z" + "iopub.execute_input": "2024-10-30T17:21:41.084705Z", + "iopub.status.busy": "2024-10-30T17:21:41.084342Z", + "iopub.status.idle": "2024-10-30T17:21:41.089856Z", + "shell.execute_reply": "2024-10-30T17:21:41.089286Z" } }, "outputs": [ { "data": { "text/plain": [ - "array([0. +0.j , 0. +0.j ,\n", - " 0. +0.j , 0. +0.j ,\n", - " 0.0241729+0.17754545j, 0. +0.j ,\n", - " 0. +0.j , 0. +0.j ,\n", - " 0. +0.j ])" + "array([0. +0.j , 0. +0.j ,\n", + " 0. +0.j , 0. +0.j ,\n", + " 0.02018867-0.06374738j, 0. +0.j ,\n", + " 0. +0.j , 0. +0.j ,\n", + " 0. +0.j ])" ] }, "execution_count": 8, @@ -380,10 +380,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:18.310646Z", - "iopub.status.busy": "2024-10-30T11:02:18.310306Z", - "iopub.status.idle": "2024-10-30T11:02:18.321305Z", - "shell.execute_reply": "2024-10-30T11:02:18.320759Z" + "iopub.execute_input": "2024-10-30T17:21:41.091835Z", + "iopub.status.busy": "2024-10-30T17:21:41.091492Z", + "iopub.status.idle": "2024-10-30T17:21:41.103941Z", + "shell.execute_reply": "2024-10-30T17:21:41.103447Z" } }, "outputs": [ diff --git a/dev/how-to-guides/index.html b/dev/how-to-guides/index.html index db7234656..80751fdb1 100644 --- a/dev/how-to-guides/index.html +++ b/dev/how-to-guides/index.html @@ -6,7 +6,7 @@ - How-to guides - ffsim 0.0.48.dev0 + How-to guides - ffsim 0.0.48 @@ -159,7 +159,7 @@
diff --git a/dev/how-to-guides/lucj.ipynb b/dev/how-to-guides/lucj.ipynb index dc094e2cd..5bdf9777f 100644 --- a/dev/how-to-guides/lucj.ipynb +++ b/dev/how-to-guides/lucj.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:20.047012Z", - "iopub.status.busy": "2024-10-30T11:02:20.046561Z", - "iopub.status.idle": "2024-10-30T11:02:21.051798Z", - "shell.execute_reply": "2024-10-30T11:02:21.051163Z" + "iopub.execute_input": "2024-10-30T17:21:42.861143Z", + "iopub.status.busy": "2024-10-30T17:21:42.860674Z", + "iopub.status.idle": "2024-10-30T17:21:43.849007Z", + "shell.execute_reply": "2024-10-30T17:21:43.848438Z" } }, "outputs": [ @@ -34,7 +34,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Parsing /tmp/tmpegdtop9g\n", + "Parsing /tmp/tmpsd2yb9dw\n", "converged SCF energy = -77.8266321248744\n" ] }, @@ -123,10 +123,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:21.055188Z", - "iopub.status.busy": "2024-10-30T11:02:21.054241Z", - "iopub.status.idle": "2024-10-30T11:02:21.126291Z", - "shell.execute_reply": "2024-10-30T11:02:21.125695Z" + "iopub.execute_input": "2024-10-30T17:21:43.852334Z", + "iopub.status.busy": "2024-10-30T17:21:43.851596Z", + "iopub.status.idle": "2024-10-30T17:21:43.922312Z", + "shell.execute_reply": "2024-10-30T17:21:43.921696Z" } }, "outputs": [ @@ -134,14 +134,14 @@ "name": "stdout", "output_type": "stream", "text": [ - "E(CCSD) = -77.87421536374025 E_corr = -0.04758323886584519\n" + "E(CCSD) = -77.87421536374029 E_corr = -0.04758323886585046\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Energy at initialization: -77.87160024816285\n" + "Energy at initialization: -77.87160024816271\n" ] }, { @@ -189,10 +189,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:02:21.128941Z", - "iopub.status.busy": "2024-10-30T11:02:21.128722Z", - "iopub.status.idle": "2024-10-30T11:03:50.311436Z", - "shell.execute_reply": "2024-10-30T11:03:50.310850Z" + "iopub.execute_input": "2024-10-30T17:21:43.924766Z", + "iopub.status.busy": "2024-10-30T17:21:43.924483Z", + "iopub.status.idle": "2024-10-30T17:23:21.077774Z", + "shell.execute_reply": "2024-10-30T17:23:21.077139Z" } }, "outputs": [ @@ -201,15 +201,15 @@ "output_type": "stream", "text": [ "Number of parameters: 72\n", - " message: CONVERGENCE: REL_REDUCTION_OF_F_<=_FACTR*EPSMCH\n", - " success: True\n", - " status: 0\n", - " fun: -77.87387356072195\n", - " x: [-4.239e-04 -1.276e+00 ... 4.256e-04 1.285e-01]\n", - " nit: 8\n", - " jac: [-1.847e-05 8.527e-06 ... 1.094e-04 -1.577e-04]\n", - " nfev: 803\n", - " njev: 11\n", + " message: STOP: TOTAL NO. of ITERATIONS REACHED LIMIT\n", + " success: False\n", + " status: 1\n", + " fun: -77.87387391770547\n", + " x: [-4.774e-01 4.759e-04 ... 3.375e-04 1.287e-01]\n", + " nit: 10\n", + " jac: [-2.416e-05 1.279e-05 ... 4.263e-06 2.842e-06]\n", + " nfev: 876\n", + " njev: 12\n", " hess_inv: <72x72 LbfgsInvHessProduct with dtype=float64>\n" ] } @@ -251,10 +251,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:03:50.315488Z", - "iopub.status.busy": "2024-10-30T11:03:50.314200Z", - "iopub.status.idle": "2024-10-30T11:04:27.960416Z", - "shell.execute_reply": "2024-10-30T11:04:27.959828Z" + "iopub.execute_input": "2024-10-30T17:23:21.080223Z", + "iopub.status.busy": "2024-10-30T17:23:21.079847Z", + "iopub.status.idle": "2024-10-30T17:23:57.988481Z", + "shell.execute_reply": "2024-10-30T17:23:57.987916Z" } }, "outputs": [ @@ -266,10 +266,10 @@ " message: CONVERGENCE: REL_REDUCTION_OF_F_<=_FACTR*EPSMCH\n", " success: True\n", " status: 0\n", - " fun: -77.8736342667721\n", - " x: [ 1.265e-05 -1.276e+00 ... 3.522e-02 2.561e-01]\n", + " fun: -77.87363426550762\n", + " x: [-4.773e-01 -2.077e-05 ... 3.520e-02 2.561e-01]\n", " nit: 5\n", - " jac: [ 5.684e-06 -5.684e-06 ... 1.421e-06 -2.842e-06]\n", + " jac: [-1.990e-05 -2.842e-05 ... 0.000e+00 5.684e-06]\n", " nfev: 329\n", " njev: 7\n", " hess_inv: <46x46 LbfgsInvHessProduct with dtype=float64>\n" @@ -314,10 +314,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:27.963842Z", - "iopub.status.busy": "2024-10-30T11:04:27.962821Z", - "iopub.status.idle": "2024-10-30T11:04:45.377646Z", - "shell.execute_reply": "2024-10-30T11:04:45.377076Z" + "iopub.execute_input": "2024-10-30T17:23:57.991125Z", + "iopub.status.busy": "2024-10-30T17:23:57.990709Z", + "iopub.status.idle": "2024-10-30T17:24:22.818524Z", + "shell.execute_reply": "2024-10-30T17:24:22.817956Z" } }, "outputs": [ @@ -328,34 +328,29 @@ "Number of parameters: 46\n", " message: Convergence: Relative reduction of objective function <= ftol.\n", " success: True\n", - " fun: -77.87363426263045\n", - " x: [ 2.628e-03 -1.275e+00 ... 3.474e-02 2.555e-01]\n", - " nit: 4\n", - " jac: [-1.066e-05 -8.752e-07 ... 4.234e-06 -4.802e-06]\n", - " nfev: 604\n", - " njev: 5\n", - " nlinop: 374\n", + " fun: -77.87363432790247\n", + " x: [-4.781e-01 -4.027e-04 ... 3.489e-02 2.558e-01]\n", + " nit: 3\n", + " jac: [-3.952e-07 -4.066e-07 ... -9.950e-08 -1.825e-07]\n", + " nfev: 574\n", + " njev: 4\n", + " nlinop: 390\n", "\n", "Iteration 1\n", - " Energy: -77.87362139128116\n", - " Norm of gradient: 0.0029592887084727917\n", - " Regularization hyperparameter: 0.0007585233428996984\n", - " Variation hyperparameter: 0.9663689557372899\n", + " Energy: -77.87363172968752\n", + " Norm of gradient: 0.001111506023146444\n", + " Regularization hyperparameter: 0.0016794907520957037\n", + " Variation hyperparameter: 0.9974692033826795\n", "Iteration 2\n", - " Energy: -77.87363310790793\n", - " Norm of gradient: 0.00040023678229488967\n", - " Regularization hyperparameter: 0.019897526685627408\n", - " Variation hyperparameter: 0.9657827349147471\n", + " Energy: -77.87363431007884\n", + " Norm of gradient: 5.217569337446581e-05\n", + " Regularization hyperparameter: 0.003429956535936252\n", + " Variation hyperparameter: 0.9972372604839628\n", "Iteration 3\n", - " Energy: -77.8736339780716\n", - " Norm of gradient: 0.0001508084642978354\n", - " Regularization hyperparameter: 0.019897534413323977\n", - " Variation hyperparameter: 0.9657827374627213\n", - "Iteration 4\n", - " Energy: -77.87363426263045\n", - " Norm of gradient: 9.193707353569222e-05\n", - " Regularization hyperparameter: 0.019897463779375846\n", - " Variation hyperparameter: 0.9657827159506404\n" + " Energy: -77.87363432790247\n", + " Norm of gradient: 1.1534535000519323e-05\n", + " Regularization hyperparameter: 0.003429956535936252\n", + " Variation hyperparameter: 0.9972372604839628\n" ] } ], diff --git a/dev/how-to-guides/qiskit-circuits.html b/dev/how-to-guides/qiskit-circuits.html index 458f83d75..ad78da0dd 100644 --- a/dev/how-to-guides/qiskit-circuits.html +++ b/dev/how-to-guides/qiskit-circuits.html @@ -6,7 +6,7 @@ - How to build and transpile Qiskit quantum circuits - ffsim 0.0.48.dev0 + How to build and transpile Qiskit quantum circuits - ffsim 0.0.48 @@ -160,7 +160,7 @@
@@ -447,7 +447,7 @@

Orbital rotation
-<qiskit.circuit.instructionset.InstructionSet at 0x7f3d188f6f20>
+<qiskit.circuit.instructionset.InstructionSet at 0x7f1f284233d0>
 

@@ -469,7 +469,7 @@

Number operator sum evolution
-<qiskit.circuit.instructionset.InstructionSet at 0x7f3d188f4c10>
+<qiskit.circuit.instructionset.InstructionSet at 0x7f1f28422e30>
 
@@ -494,7 +494,7 @@

Diagonal Coulomb evolution
-<qiskit.circuit.instructionset.InstructionSet at 0x7f3d18963ac0>
+<qiskit.circuit.instructionset.InstructionSet at 0x7f1f28421b10>
 
@@ -517,7 +517,7 @@

Spin-balanced unitary cluster Jastrow (UCJ) operator
-<qiskit.circuit.instructionset.InstructionSet at 0x7f3d0bf34460>
+<qiskit.circuit.instructionset.InstructionSet at 0x7f1f284231f0>
 
@@ -540,7 +540,7 @@

Spin-unbalanced unitary cluster Jastrow (UCJ) operator
-<qiskit.circuit.instructionset.InstructionSet at 0x7f3d188f6770>
+<qiskit.circuit.instructionset.InstructionSet at 0x7f1f28d923b0>
 
@@ -567,7 +567,7 @@

Trotter simulation of double-factorized Hamiltonian
-<qiskit.circuit.instructionset.InstructionSet at 0x7f3d18ac3a90>
+<qiskit.circuit.instructionset.InstructionSet at 0x7f1f28421f90>
 
@@ -660,7 +660,7 @@

Trotter simulation of double-factorized Hamiltonian - + diff --git a/dev/how-to-guides/qiskit-circuits.ipynb b/dev/how-to-guides/qiskit-circuits.ipynb index 03b14b621..a37608e35 100644 --- a/dev/how-to-guides/qiskit-circuits.ipynb +++ b/dev/how-to-guides/qiskit-circuits.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:46.945295Z", - "iopub.status.busy": "2024-10-30T11:04:46.944930Z", - "iopub.status.idle": "2024-10-30T11:04:47.635931Z", - "shell.execute_reply": "2024-10-30T11:04:47.635400Z" + "iopub.execute_input": "2024-10-30T17:24:24.572909Z", + "iopub.status.busy": "2024-10-30T17:24:24.572728Z", + "iopub.status.idle": "2024-10-30T17:24:25.274720Z", + "shell.execute_reply": "2024-10-30T17:24:25.274188Z" } }, "outputs": [], @@ -54,10 +54,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:47.638410Z", - "iopub.status.busy": "2024-10-30T11:04:47.637912Z", - "iopub.status.idle": "2024-10-30T11:04:48.208954Z", - "shell.execute_reply": "2024-10-30T11:04:48.208394Z" + "iopub.execute_input": "2024-10-30T17:24:25.276979Z", + "iopub.status.busy": "2024-10-30T17:24:25.276684Z", + "iopub.status.idle": "2024-10-30T17:24:25.849816Z", + "shell.execute_reply": "2024-10-30T17:24:25.849202Z" } }, "outputs": [ @@ -103,10 +103,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.211147Z", - "iopub.status.busy": "2024-10-30T11:04:48.210859Z", - "iopub.status.idle": "2024-10-30T11:04:48.270195Z", - "shell.execute_reply": "2024-10-30T11:04:48.269544Z" + "iopub.execute_input": "2024-10-30T17:24:25.852374Z", + "iopub.status.busy": "2024-10-30T17:24:25.851675Z", + "iopub.status.idle": "2024-10-30T17:24:25.910786Z", + "shell.execute_reply": "2024-10-30T17:24:25.910314Z" } }, "outputs": [ @@ -160,17 +160,17 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.272183Z", - "iopub.status.busy": "2024-10-30T11:04:48.271985Z", - "iopub.status.idle": "2024-10-30T11:04:48.276051Z", - "shell.execute_reply": "2024-10-30T11:04:48.275565Z" + "iopub.execute_input": "2024-10-30T17:24:25.912814Z", + "iopub.status.busy": "2024-10-30T17:24:25.912450Z", + "iopub.status.idle": "2024-10-30T17:24:25.916282Z", + "shell.execute_reply": "2024-10-30T17:24:25.915818Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 4, @@ -195,17 +195,17 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.277936Z", - "iopub.status.busy": "2024-10-30T11:04:48.277746Z", - "iopub.status.idle": "2024-10-30T11:04:48.282606Z", - "shell.execute_reply": "2024-10-30T11:04:48.282005Z" + "iopub.execute_input": "2024-10-30T17:24:25.918341Z", + "iopub.status.busy": "2024-10-30T17:24:25.917986Z", + "iopub.status.idle": "2024-10-30T17:24:25.922531Z", + "shell.execute_reply": "2024-10-30T17:24:25.922078Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 5, @@ -242,17 +242,17 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.284718Z", - "iopub.status.busy": "2024-10-30T11:04:48.284277Z", - "iopub.status.idle": "2024-10-30T11:04:48.288868Z", - "shell.execute_reply": "2024-10-30T11:04:48.288283Z" + "iopub.execute_input": "2024-10-30T17:24:25.924383Z", + "iopub.status.busy": "2024-10-30T17:24:25.924041Z", + "iopub.status.idle": "2024-10-30T17:24:25.928566Z", + "shell.execute_reply": "2024-10-30T17:24:25.927985Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 6, @@ -279,17 +279,17 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.290983Z", - "iopub.status.busy": "2024-10-30T11:04:48.290606Z", - "iopub.status.idle": "2024-10-30T11:04:48.294874Z", - "shell.execute_reply": "2024-10-30T11:04:48.294325Z" + "iopub.execute_input": "2024-10-30T17:24:25.930403Z", + "iopub.status.busy": "2024-10-30T17:24:25.930062Z", + "iopub.status.idle": "2024-10-30T17:24:25.934042Z", + "shell.execute_reply": "2024-10-30T17:24:25.933582Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 7, @@ -315,17 +315,17 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.296829Z", - "iopub.status.busy": "2024-10-30T11:04:48.296641Z", - "iopub.status.idle": "2024-10-30T11:04:48.301109Z", - "shell.execute_reply": "2024-10-30T11:04:48.300529Z" + "iopub.execute_input": "2024-10-30T17:24:25.935770Z", + "iopub.status.busy": "2024-10-30T17:24:25.935570Z", + "iopub.status.idle": "2024-10-30T17:24:25.939868Z", + "shell.execute_reply": "2024-10-30T17:24:25.939415Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 8, @@ -354,17 +354,17 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.303149Z", - "iopub.status.busy": "2024-10-30T11:04:48.302796Z", - "iopub.status.idle": "2024-10-30T11:04:48.307688Z", - "shell.execute_reply": "2024-10-30T11:04:48.307191Z" + "iopub.execute_input": "2024-10-30T17:24:25.941870Z", + "iopub.status.busy": "2024-10-30T17:24:25.941492Z", + "iopub.status.idle": "2024-10-30T17:24:25.946559Z", + "shell.execute_reply": "2024-10-30T17:24:25.946102Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 9, @@ -391,17 +391,17 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.309384Z", - "iopub.status.busy": "2024-10-30T11:04:48.309196Z", - "iopub.status.idle": "2024-10-30T11:04:48.314198Z", - "shell.execute_reply": "2024-10-30T11:04:48.313717Z" + "iopub.execute_input": "2024-10-30T17:24:25.948516Z", + "iopub.status.busy": "2024-10-30T17:24:25.948163Z", + "iopub.status.idle": "2024-10-30T17:24:25.953909Z", + "shell.execute_reply": "2024-10-30T17:24:25.953332Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 10, @@ -428,17 +428,17 @@ "execution_count": 11, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:48.316024Z", - "iopub.status.busy": "2024-10-30T11:04:48.315711Z", - "iopub.status.idle": "2024-10-30T11:04:48.320840Z", - "shell.execute_reply": "2024-10-30T11:04:48.320376Z" + "iopub.execute_input": "2024-10-30T17:24:25.955887Z", + "iopub.status.busy": "2024-10-30T17:24:25.955680Z", + "iopub.status.idle": "2024-10-30T17:24:25.961637Z", + "shell.execute_reply": "2024-10-30T17:24:25.961032Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 11, diff --git a/dev/how-to-guides/qiskit-sampler.html b/dev/how-to-guides/qiskit-sampler.html index 2228fbcd7..0fab945eb 100644 --- a/dev/how-to-guides/qiskit-sampler.html +++ b/dev/how-to-guides/qiskit-sampler.html @@ -6,7 +6,7 @@ - How to use ffsim’s Qiskit Sampler primitive - ffsim 0.0.48.dev0 + How to use ffsim’s Qiskit Sampler primitive - ffsim 0.0.48 @@ -160,7 +160,7 @@ diff --git a/dev/how-to-guides/qiskit-sampler.ipynb b/dev/how-to-guides/qiskit-sampler.ipynb index 0e6964dd0..88cc20abb 100644 --- a/dev/how-to-guides/qiskit-sampler.ipynb +++ b/dev/how-to-guides/qiskit-sampler.ipynb @@ -18,10 +18,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:50.271574Z", - "iopub.status.busy": "2024-10-30T11:04:50.271385Z", - "iopub.status.idle": "2024-10-30T11:04:50.954241Z", - "shell.execute_reply": "2024-10-30T11:04:50.953682Z" + "iopub.execute_input": "2024-10-30T17:24:27.954850Z", + "iopub.status.busy": "2024-10-30T17:24:27.954668Z", + "iopub.status.idle": "2024-10-30T17:24:28.653999Z", + "shell.execute_reply": "2024-10-30T17:24:28.653353Z" } }, "outputs": [], @@ -71,10 +71,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:50.956715Z", - "iopub.status.busy": "2024-10-30T11:04:50.956268Z", - "iopub.status.idle": "2024-10-30T11:04:51.020744Z", - "shell.execute_reply": "2024-10-30T11:04:51.020158Z" + "iopub.execute_input": "2024-10-30T17:24:28.656387Z", + "iopub.status.busy": "2024-10-30T17:24:28.655944Z", + "iopub.status.idle": "2024-10-30T17:24:28.719613Z", + "shell.execute_reply": "2024-10-30T17:24:28.719007Z" } }, "outputs": [ @@ -154,10 +154,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:51.023098Z", - "iopub.status.busy": "2024-10-30T11:04:51.022639Z", - "iopub.status.idle": "2024-10-30T11:04:51.341693Z", - "shell.execute_reply": "2024-10-30T11:04:51.341188Z" + "iopub.execute_input": "2024-10-30T17:24:28.721728Z", + "iopub.status.busy": "2024-10-30T17:24:28.721381Z", + "iopub.status.idle": "2024-10-30T17:24:29.088859Z", + "shell.execute_reply": "2024-10-30T17:24:29.088358Z" } }, "outputs": [ @@ -174,7 +174,7 @@ "text": [ "norb = 14\n", "nelec = (3, 3)\n", - "E(CCSD) = -108.9630419334855 E_corr = -0.1278053627110057\n" + "E(CCSD) = -108.9630419334855 E_corr = -0.1278053627110063\n" ] }, { @@ -187,16 +187,16 @@ { "data": { "text/plain": [ - "{'0000000000011100000000000111': 9926,\n", - " '0000000000110100000000001101': 13,\n", - " '0000000001110000000000000111': 12,\n", - " '0000000001011000000000010110': 10,\n", - " '0000000000011100000000011100': 9,\n", - " '0010000000110000000000000111': 6,\n", + "{'0000000000011100000000000111': 9924,\n", + " '0000000000110100000000001101': 14,\n", + " '0000000001110000000000000111': 10,\n", + " '0000000000011100000000011100': 10,\n", + " '0000000001011000000000010110': 9,\n", + " '0100000001001000000000000111': 6,\n", + " '0001000001010000000000000111': 4,\n", " '0000000001011000100000000110': 4,\n", - " '0010000000011000000000010110': 3,\n", - " '0001000001010000000000000111': 2,\n", - " '0001000000010100000000001101': 2}" + " '0000000000011100100000001100': 3,\n", + " '0010000000011000000000010110': 3}" ] }, "execution_count": 3, @@ -276,10 +276,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:51.343776Z", - "iopub.status.busy": "2024-10-30T11:04:51.343424Z", - "iopub.status.idle": "2024-10-30T11:04:51.884853Z", - "shell.execute_reply": "2024-10-30T11:04:51.884339Z" + "iopub.execute_input": "2024-10-30T17:24:29.090981Z", + "iopub.status.busy": "2024-10-30T17:24:29.090611Z", + "iopub.status.idle": "2024-10-30T17:24:29.632091Z", + "shell.execute_reply": "2024-10-30T17:24:29.631592Z" } }, "outputs": [ @@ -294,7 +294,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "SCF energy = -75.3484557077368\n" + "SCF energy = -75.3484557084194\n" ] }, { @@ -312,7 +312,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "E(UCCSD) = -75.45619739114197 E_corr = -0.1077416834051778\n" + "E(UCCSD) = -75.45619739101305 E_corr = -0.1077416825936833\n" ] }, { diff --git a/dev/index.html b/dev/index.html index 9a0389331..bc7756d6a 100644 --- a/dev/index.html +++ b/dev/index.html @@ -6,7 +6,7 @@ - ffsim 0.0.48.dev0 + ffsim 0.0.48 @@ -159,7 +159,7 @@
@@ -183,7 +183,7 @@ -
+
diff --git a/dev/install.html b/dev/install.html index 4d09707b8..6c429972b 100644 --- a/dev/install.html +++ b/dev/install.html @@ -6,7 +6,7 @@ - Installation - ffsim 0.0.48.dev0 + Installation - ffsim 0.0.48 @@ -159,7 +159,7 @@
@@ -181,7 +181,7 @@ -
+
diff --git a/dev/search.html b/dev/search.html index 6b9c9fb1b..62578bbdc 100644 --- a/dev/search.html +++ b/dev/search.html @@ -7,7 +7,7 @@ -Search - ffsim 0.0.48.dev0 +Search - ffsim 0.0.48 @@ -159,7 +159,7 @@
@@ -183,7 +183,7 @@ -
+
diff --git a/dev/searchindex.js b/dev/searchindex.js index bf62f0860..d44786f06 100644 --- a/dev/searchindex.js +++ b/dev/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"API reference": [[7, null]], "Application to the double-factorized Hamiltonian": [[8, "Application-to-the-double-factorized-Hamiltonian"]], "Application to time evolution via Trotter-Suzuki formulas": [[8, "Application-to-time-evolution-via-Trotter-Suzuki-formulas"]], "Brief background on Trotter-Suzuki formulas": [[8, "Brief-background-on-Trotter-Suzuki-formulas"]], "Build a molecule": [[15, "Build-a-molecule"]], "Build the Hamiltonian": [[23, "Build-the-Hamiltonian"]], "Choose reference occupations": [[15, "Choose-reference-occupations"]], "Circuit transpilation": [[19, "Circuit-transpilation"]], "Citing ffsim": [[21, "citing-ffsim"]], "Code example": [[21, "code-example"]], "Compute energy": [[15, "Compute-energy"]], "Contents": [[21, "contents"]], "Criteria for circuits that FfsimSampler can sample": [[20, "Criteria-for-circuits-that-FfsimSampler-can-sample"]], "Data representation": [[9, "Data-representation"]], "Diagonal Coulomb evolution": [[13, "Diagonal-Coulomb-evolution"], [19, "Diagonal-Coulomb-evolution"]], "Double-factorized representation": [[8, "Double-factorized-representation"]], "Double-factorized representation of the molecular Hamiltonian": [[8, null]], "Example of using FfsimSampler": [[20, "Example-of-using-FfsimSampler"]], "Explanations": [[10, null]], "Gates": [[14, "Gates"]], "General UCJ ansatz": [[18, "General-UCJ-ansatz"]], "Hamiltonians": [[9, null]], "Hartree-Fock and Slater determinant preparation": [[13, "Hartree-Fock-and-Slater-determinant-preparation"]], "How to build and transpile Qiskit quantum circuits": [[19, null]], "How to simulate entanglement forging": [[15, null]], "How to simulate the local unitary cluster Jastrow (LUCJ) ansatz": [[18, null]], "How to use ffsim\u2019s Qiskit Sampler primitive": [[20, null]], "How to use the FermionOperator class": [[16, null]], "How-to guides": [[17, null]], "Implement Trotter simulation": [[23, "Implement-Trotter-simulation"]], "Implementing Trotter simulation of the double-factorized Hamiltonian": [[23, null]], "Initialize ansatz operator": [[15, "Initialize-ansatz-operator"]], "Install from source": [[22, "install-from-source"]], "Installation": [[21, "installation"], [22, null]], "LUCJ ansatz": [[18, "LUCJ-ansatz"]], "Locality in the UCJ operator": [[13, "Locality-in-the-UCJ-operator"]], "Merging orbital rotations": [[13, "Merging-orbital-rotations"]], "More examples": [[20, "More-examples"]], "Number operator sum evolution": [[13, "Number-operator-sum-evolution"], [19, "Number-operator-sum-evolution"]], "Operator action via SciPy LinearOperators": [[9, "Operator-action-via-SciPy-LinearOperators"]], "Optimize energy": [[15, "Optimize-energy"]], "Optimize with the linear method": [[18, "Optimize-with-the-linear-method"]], "Orbital rotation": [[13, "Orbital-rotation"], [19, "Orbital-rotation"]], "Orbital rotations": [[12, "Orbital-rotations"]], "Orbital rotations and quadratic Hamiltonians": [[12, null]], "Overview of gates": [[19, "Overview-of-gates"]], "Pip install": [[22, "pip-install"]], "Prepare Hartree-Fock state": [[19, "Prepare-Hartree-Fock-state"]], "Prepare Slater determinant": [[19, "Prepare-Slater-determinant"]], "Qubit gate decompositions of fermionic gates": [[13, null]], "Sampling from an LUCJ circuit for a closed-shell molecule": [[20, "Sampling-from-an-LUCJ-circuit-for-a-closed-shell-molecule"]], "Sampling from an LUCJ circuit for an open-shell molecule": [[20, "Sampling-from-an-LUCJ-circuit-for-an-open-shell-molecule"]], "Spin-balanced and spin-unbalanced ansatzes": [[11, "Spin-balanced-and-spin-unbalanced-ansatzes"]], "Spin-balanced unitary cluster Jastrow (UCJ) operator": [[19, "Spin-balanced-unitary-cluster-Jastrow-(UCJ)-operator"]], "Spin-unbalanced unitary cluster Jastrow (UCJ) operator": [[19, "Spin-unbalanced-unitary-cluster-Jastrow-(UCJ)-operator"]], "State preparation gates": [[19, "State-preparation-gates"]], "State vectors": [[14, "State-vectors"]], "State vectors and gates": [[14, null]], "The general unitary cluster Jastrow (UCJ) ansatz": [[11, "The-general-unitary-cluster-Jastrow-(UCJ)-ansatz"]], "The local UCJ (LUCJ) ansatz": [[11, "The-local-UCJ-(LUCJ)-ansatz"]], "The local unitary cluster Jastrow (LUCJ) ansatz": [[11, null]], "Time evolution by a quadratic Hamiltonian": [[12, "Time-evolution-by-a-quadratic-Hamiltonian"]], "Treating spinless fermions": [[14, "Treating-spinless-fermions"]], "Trotter simulation of double-factorized Hamiltonian": [[13, "Trotter-simulation-of-double-factorized-Hamiltonian"], [19, "Trotter-simulation-of-double-factorized-Hamiltonian"]], "Tutorials": [[24, null]], "Unitary cluster Jastrow (UCJ) operator": [[13, "Unitary-cluster-Jastrow-(UCJ)-operator"]], "Unitary transformation gates": [[19, "Unitary-transformation-gates"]], "Use within Docker": [[22, "use-within-docker"]], "ffsim": [[0, null], [21, null]], "ffsim.contract": [[1, null]], "ffsim.linalg": [[2, null]], "ffsim.optimize": [[3, null]], "ffsim.qiskit": [[4, null]], "ffsim.random": [[5, null]], "ffsim.testing": [[6, null]]}, "docnames": ["api/ffsim", "api/ffsim.contract", "api/ffsim.linalg", "api/ffsim.optimize", "api/ffsim.qiskit", "api/ffsim.random", "api/ffsim.testing", "api/index", "explanations/double-factorized", "explanations/hamiltonians", "explanations/index", "explanations/lucj", "explanations/orbital-rotation", "explanations/qiskit-gate-decompositions", "explanations/state-vectors-and-gates", "how-to-guides/entanglement-forging", "how-to-guides/fermion-operator", "how-to-guides/index", "how-to-guides/lucj", "how-to-guides/qiskit-circuits", "how-to-guides/qiskit-sampler", "index", "install", "tutorials/double-factorized-trotter", "tutorials/index"], "envversion": {"nbsphinx": 4, "sphinx": 64, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["api/ffsim.rst", "api/ffsim.contract.rst", "api/ffsim.linalg.rst", "api/ffsim.optimize.rst", "api/ffsim.qiskit.rst", "api/ffsim.random.rst", "api/ffsim.testing.rst", "api/index.md", "explanations/double-factorized.ipynb", "explanations/hamiltonians.ipynb", "explanations/index.md", "explanations/lucj.ipynb", "explanations/orbital-rotation.ipynb", "explanations/qiskit-gate-decompositions.ipynb", "explanations/state-vectors-and-gates.ipynb", "how-to-guides/entanglement-forging.ipynb", "how-to-guides/fermion-operator.ipynb", "how-to-guides/index.md", "how-to-guides/lucj.ipynb", "how-to-guides/qiskit-circuits.ipynb", "how-to-guides/qiskit-sampler.ipynb", "index.md", "install.md", "tutorials/double-factorized-trotter.ipynb", "tutorials/index.md"], "indexentries": {"__init__() (ffsim.qiskit.diagcoulombevolutionjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW.__init__", false]], "__init__() (ffsim.qiskit.diagcoulombevolutionspinlessjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.dropnegligible method)": [[4, "ffsim.qiskit.DropNegligible.__init__", false]], "__init__() (ffsim.qiskit.ffsimsampler method)": [[4, "ffsim.qiskit.FfsimSampler.__init__", false]], "__init__() (ffsim.qiskit.givensansatzopjw method)": [[4, "ffsim.qiskit.GivensAnsatzOpJW.__init__", false]], "__init__() (ffsim.qiskit.givensansatzopspinlessjw method)": [[4, "ffsim.qiskit.GivensAnsatzOpSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.numnumansatzopspinbalancedjw method)": [[4, "ffsim.qiskit.NumNumAnsatzOpSpinBalancedJW.__init__", false]], "__init__() (ffsim.qiskit.numopsumevolutionjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionJW.__init__", false]], "__init__() (ffsim.qiskit.numopsumevolutionspinlessjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.orbitalrotationjw method)": [[4, "ffsim.qiskit.OrbitalRotationJW.__init__", false]], "__init__() (ffsim.qiskit.orbitalrotationspinlessjw method)": [[4, "ffsim.qiskit.OrbitalRotationSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.preparehartreefockjw method)": [[4, "ffsim.qiskit.PrepareHartreeFockJW.__init__", false]], "__init__() (ffsim.qiskit.preparehartreefockspinlessjw method)": [[4, "ffsim.qiskit.PrepareHartreeFockSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.prepareslaterdeterminantjw method)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantJW.__init__", false]], "__init__() (ffsim.qiskit.prepareslaterdeterminantspinlessjw method)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.simulatetrotterdiagcoulombsplitopjw method)": [[4, "ffsim.qiskit.SimulateTrotterDiagCoulombSplitOpJW.__init__", false]], "__init__() (ffsim.qiskit.simulatetrotterdoublefactorizedjw method)": [[4, "ffsim.qiskit.SimulateTrotterDoubleFactorizedJW.__init__", false]], "__init__() (ffsim.qiskit.ucjopspinbalancedjw method)": [[4, "ffsim.qiskit.UCJOpSpinBalancedJW.__init__", false]], "__init__() (ffsim.qiskit.ucjopspinlessjw method)": [[4, "ffsim.qiskit.UCJOpSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.ucjopspinunbalancedjw method)": [[4, "ffsim.qiskit.UCJOpSpinUnbalancedJW.__init__", false]], "action (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.action", false]], "active_space (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.active_space", false]], "addresses_to_strings() (in module ffsim)": [[0, "ffsim.addresses_to_strings", false]], "alpha (ffsim.spin attribute)": [[0, "ffsim.Spin.ALPHA", false]], "alpha_and_beta (ffsim.spin attribute)": [[0, "ffsim.Spin.ALPHA_AND_BETA", false]], "apply_diag_coulomb_evolution() (in module ffsim)": [[0, "ffsim.apply_diag_coulomb_evolution", false]], "apply_fsim_gate() (in module ffsim)": [[0, "ffsim.apply_fsim_gate", false]], "apply_fswap_gate() (in module ffsim)": [[0, "ffsim.apply_fswap_gate", false]], "apply_givens_rotation() (in module ffsim)": [[0, "ffsim.apply_givens_rotation", false]], "apply_hop_gate() (in module ffsim)": [[0, "ffsim.apply_hop_gate", false]], "apply_matrix_to_slices() (in module ffsim.linalg)": [[2, "ffsim.linalg.apply_matrix_to_slices", false]], "apply_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_interaction", false]], "apply_num_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_num_interaction", false]], "apply_num_op_prod_interaction() (in module ffsim)": [[0, "ffsim.apply_num_op_prod_interaction", false]], "apply_num_op_sum_evolution() (in module ffsim)": [[0, "ffsim.apply_num_op_sum_evolution", false]], "apply_on_site_interaction() (in module ffsim)": [[0, "ffsim.apply_on_site_interaction", false]], "apply_orbital_rotation() (in module ffsim)": [[0, "ffsim.apply_orbital_rotation", false]], "apply_tunneling_interaction() (in module ffsim)": [[0, "ffsim.apply_tunneling_interaction", false]], "apply_unitary() (in module ffsim)": [[0, "ffsim.apply_unitary", false]], "approx_eq() (in module ffsim)": [[0, "ffsim.approx_eq", false]], "assert_allclose_up_to_global_phase() (in module ffsim.testing)": [[6, "ffsim.testing.assert_allclose_up_to_global_phase", false]], "atom (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.atom", false]], "basis (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.basis", false]], "beta (ffsim.spin attribute)": [[0, "ffsim.Spin.BETA", false]], "bit_array (ffsim.bitstringtype attribute)": [[0, "ffsim.BitstringType.BIT_ARRAY", false]], "bitstringtype (class in ffsim)": [[0, "ffsim.BitstringType", false]], "c (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.c", false]], "ccsd_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_energy", false]], "ccsd_t1 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_t1", false]], "ccsd_t2 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_t2", false]], "cisd_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.cisd_energy", false]], "cisd_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.cisd_vec", false]], "coeffs (ffsim.productstatesum attribute)": [[0, "ffsim.ProductStateSum.coeffs", false]], "conserves_particle_number() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_particle_number", false]], "conserves_spin_z() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_spin_z", false]], "constant (ffsim.diagonalcoulombhamiltonian attribute)": [[0, "ffsim.DiagonalCoulombHamiltonian.constant", false]], "constant (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.constant", false]], "constant (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.constant", false]], "constant (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.constant", false]], "contract_diag_coulomb() (in module ffsim.contract)": [[1, "ffsim.contract.contract_diag_coulomb", false]], "contract_num_op_sum() (in module ffsim.contract)": [[1, "ffsim.contract.contract_num_op_sum", false]], "contract_one_body() (in module ffsim.contract)": [[1, "ffsim.contract.contract_one_body", false]], "core_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.core_energy", false]], "cre() (in module ffsim)": [[0, "ffsim.cre", false]], "cre_a() (in module ffsim)": [[0, "ffsim.cre_a", false]], "cre_b() (in module ffsim)": [[0, "ffsim.cre_b", false]], "des() (in module ffsim)": [[0, "ffsim.des", false]], "des_a() (in module ffsim)": [[0, "ffsim.des_a", false]], "des_b() (in module ffsim)": [[0, "ffsim.des_b", false]], "diag() (in module ffsim)": [[0, "ffsim.diag", false]], "diag_coulomb_linop() (in module ffsim.contract)": [[1, "ffsim.contract.diag_coulomb_linop", false]], "diag_coulomb_mats (ffsim.diagonalcoulombhamiltonian attribute)": [[0, "ffsim.DiagonalCoulombHamiltonian.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.ucjopspinbalanced attribute)": [[0, "ffsim.UCJOpSpinBalanced.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.ucjopspinless attribute)": [[0, "ffsim.UCJOpSpinless.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.ucjopspinunbalanced attribute)": [[0, "ffsim.UCJOpSpinUnbalanced.diag_coulomb_mats", false]], "diagcoulombevolutionjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW", false]], "diagcoulombevolutionspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW", false]], "diagonalcoulombhamiltonian (class in ffsim)": [[0, "ffsim.DiagonalCoulombHamiltonian", false]], "dim() (in module ffsim)": [[0, "ffsim.dim", false]], "dims() (in module ffsim)": [[0, "ffsim.dims", false]], "dipole_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.dipole_integrals", false]], "double_factorized() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized", false]], "double_factorized_t2() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized_t2", false]], "double_factorized_t2_alpha_beta() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized_t2_alpha_beta", false]], "doublefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.DoubleFactorizedHamiltonian", false]], "dropnegligible (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DropNegligible", false]], "expectation_one_body_power() (in module ffsim)": [[0, "ffsim.expectation_one_body_power", false]], "expectation_one_body_product() (in module ffsim)": [[0, "ffsim.expectation_one_body_product", false]], "expectation_product_state() (ffsim.singlefactorizedhamiltonian method)": [[0, "ffsim.SingleFactorizedHamiltonian.expectation_product_state", false]], "expm_multiply_taylor() (in module ffsim.linalg)": [[2, "ffsim.linalg.expm_multiply_taylor", false]], "fci_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.fci_energy", false]], "fci_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.fci_vec", false]], "fermi_hubbard_1d() (in module ffsim)": [[0, "ffsim.fermi_hubbard_1d", false]], "fermi_hubbard_2d() (in module ffsim)": [[0, "ffsim.fermi_hubbard_2d", false]], "fermion_operator() (in module ffsim)": [[0, "ffsim.fermion_operator", false]], "fermionaction (class in ffsim)": [[0, "ffsim.FermionAction", false]], "fermionoperator (class in ffsim)": [[0, "ffsim.FermionOperator", false]], "ffsim": [[0, "module-ffsim", false]], "ffsim.contract": [[1, "module-ffsim.contract", false]], "ffsim.linalg": [[2, "module-ffsim.linalg", false]], "ffsim.optimize": [[3, "module-ffsim.optimize", false]], "ffsim.qiskit": [[4, "module-ffsim.qiskit", false]], "ffsim.random": [[5, "module-ffsim.random", false]], "ffsim.testing": [[6, "module-ffsim.testing", false]], "ffsim_vec_to_qiskit_vec() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.ffsim_vec_to_qiskit_vec", false]], "ffsimsampler (class in ffsim.qiskit)": [[4, "ffsim.qiskit.FfsimSampler", false]], "final_orbital_rotation (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjopspinbalanced attribute)": [[0, "ffsim.UCJOpSpinBalanced.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjopspinless attribute)": [[0, "ffsim.UCJOpSpinless.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjopspinunbalanced attribute)": [[0, "ffsim.UCJOpSpinUnbalanced.final_orbital_rotation", false]], "final_state_vector() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.final_state_vector", false]], "from_diag_coulomb_mats() (ffsim.numnumansatzopspinbalanced static method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.from_diag_coulomb_mats", false]], "from_fcidump() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_fcidump", false]], "from_fcidump() (ffsim.molecularhamiltonian static method)": [[0, "ffsim.MolecularHamiltonian.from_fcidump", false]], "from_fermion_operator() (ffsim.diagonalcoulombhamiltonian static method)": [[0, "ffsim.DiagonalCoulombHamiltonian.from_fermion_operator", false]], "from_json() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_json", false]], "from_mole() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_mole", false]], "from_molecular_hamiltonian() (ffsim.doublefactorizedhamiltonian static method)": [[0, "ffsim.DoubleFactorizedHamiltonian.from_molecular_hamiltonian", false]], "from_molecular_hamiltonian() (ffsim.singlefactorizedhamiltonian static method)": [[0, "ffsim.SingleFactorizedHamiltonian.from_molecular_hamiltonian", false]], "from_orbital_rotation() (ffsim.givensansatzop static method)": [[0, "ffsim.GivensAnsatzOp.from_orbital_rotation", false]], "from_parameters() (ffsim.givensansatzop static method)": [[0, "ffsim.GivensAnsatzOp.from_parameters", false]], "from_parameters() (ffsim.hopgateansatzoperator static method)": [[0, "ffsim.HopGateAnsatzOperator.from_parameters", false]], "from_parameters() (ffsim.numnumansatzopspinbalanced static method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.from_parameters", false]], "from_parameters() (ffsim.uccsdoprestrictedreal static method)": [[0, "ffsim.UCCSDOpRestrictedReal.from_parameters", false]], "from_parameters() (ffsim.ucjopspinbalanced static method)": [[0, "ffsim.UCJOpSpinBalanced.from_parameters", false]], "from_parameters() (ffsim.ucjopspinless static method)": [[0, "ffsim.UCJOpSpinless.from_parameters", false]], "from_parameters() (ffsim.ucjopspinunbalanced static method)": [[0, "ffsim.UCJOpSpinUnbalanced.from_parameters", false]], "from_scf() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_scf", false]], "from_t_amplitudes() (ffsim.ucjopspinbalanced static method)": [[0, "ffsim.UCJOpSpinBalanced.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjopspinless static method)": [[0, "ffsim.UCJOpSpinless.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjopspinunbalanced static method)": [[0, "ffsim.UCJOpSpinUnbalanced.from_t_amplitudes", false]], "generate_norb_nelec() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nelec", false]], "generate_norb_nelec_spin() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nelec_spin", false]], "generate_norb_nocc() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nocc", false]], "generate_norb_spin() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_spin", false]], "givens_decomposition() (in module ffsim.linalg)": [[2, "ffsim.linalg.givens_decomposition", false]], "givensansatzop (class in ffsim)": [[0, "ffsim.GivensAnsatzOp", false]], "givensansatzopjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.GivensAnsatzOpJW", false]], "givensansatzopspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.GivensAnsatzOpSpinlessJW", false]], "givensrotation (class in ffsim.linalg)": [[2, "ffsim.linalg.GivensRotation", false]], "hamiltonian (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.hamiltonian", false]], "hartree_fock_state() (in module ffsim)": [[0, "ffsim.hartree_fock_state", false]], "hf_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_energy", false]], "hf_mo_coeff (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_mo_coeff", false]], "hf_mo_occ (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_mo_occ", false]], "hopgateansatzoperator (class in ffsim)": [[0, "ffsim.HopGateAnsatzOperator", false]], "i (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.i", false]], "indices_to_strings() (in module ffsim)": [[0, "ffsim.indices_to_strings", false]], "init_cache() (in module ffsim)": [[0, "ffsim.init_cache", false]], "int (ffsim.bitstringtype attribute)": [[0, "ffsim.BitstringType.INT", false]], "interaction_pairs (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.interaction_pairs", false]], "interaction_pairs (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.interaction_pairs", false]], "interaction_pairs (ffsim.numnumansatzopspinbalanced attribute)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.interaction_pairs", false]], "inverse() (ffsim.qiskit.diagcoulombevolutionjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW.inverse", false]], "inverse() (ffsim.qiskit.diagcoulombevolutionspinlessjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW.inverse", false]], "inverse() (ffsim.qiskit.numopsumevolutionjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionJW.inverse", false]], "inverse() (ffsim.qiskit.numopsumevolutionspinlessjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionSpinlessJW.inverse", false]], "inverse() (ffsim.qiskit.orbitalrotationjw method)": [[4, "ffsim.qiskit.OrbitalRotationJW.inverse", false]], "inverse() (ffsim.qiskit.orbitalrotationspinlessjw method)": [[4, "ffsim.qiskit.OrbitalRotationSpinlessJW.inverse", false]], "is_antihermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_antihermitian", false]], "is_hermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_hermitian", false]], "is_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_orthogonal", false]], "is_real_symmetric() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_real_symmetric", false]], "is_special_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_special_orthogonal", false]], "is_unitary() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_unitary", false]], "j (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.j", false]], "jordan_wigner() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.jordan_wigner", false]], "linear_operator() (in module ffsim)": [[0, "ffsim.linear_operator", false]], "lup() (in module ffsim.linalg)": [[2, "ffsim.linalg.lup", false]], "many_body_order() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.many_body_order", false]], "match_global_phase() (in module ffsim.linalg)": [[2, "ffsim.linalg.match_global_phase", false]], "mergeorbitalrotations (class in ffsim.qiskit)": [[4, "ffsim.qiskit.MergeOrbitalRotations", false]], "minimize_linear_method() (in module ffsim.optimize)": [[3, "ffsim.optimize.minimize_linear_method", false]], "mo_coeff (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mo_coeff", false]], "mo_occ (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mo_occ", false]], "modified_cholesky() (in module ffsim.linalg)": [[2, "ffsim.linalg.modified_cholesky", false]], "module": [[0, "module-ffsim", false], [1, "module-ffsim.contract", false], [2, "module-ffsim.linalg", false], [3, "module-ffsim.optimize", false], [4, "module-ffsim.qiskit", false], [5, "module-ffsim.random", false], [6, "module-ffsim.testing", false]], "mole (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.mole", false]], "moleculardata (class in ffsim)": [[0, "ffsim.MolecularData", false]], "molecularhamiltonian (class in ffsim)": [[0, "ffsim.MolecularHamiltonian", false]], "mp2_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mp2_energy", false]], "mp2_t2 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mp2_t2", false]], "multireference_state() (in module ffsim)": [[0, "ffsim.multireference_state", false]], "multireference_state_prod() (in module ffsim)": [[0, "ffsim.multireference_state_prod", false]], "n_params() (ffsim.givensansatzop static method)": [[0, "ffsim.GivensAnsatzOp.n_params", false]], "n_params() (ffsim.numnumansatzopspinbalanced static method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.n_params", false]], "n_params() (ffsim.uccsdoprestrictedreal static method)": [[0, "ffsim.UCCSDOpRestrictedReal.n_params", false]], "n_params() (ffsim.ucjopspinbalanced static method)": [[0, "ffsim.UCJOpSpinBalanced.n_params", false]], "n_params() (ffsim.ucjopspinless static method)": [[0, "ffsim.UCJOpSpinless.n_params", false]], "n_params() (ffsim.ucjopspinunbalanced static method)": [[0, "ffsim.UCJOpSpinUnbalanced.n_params", false]], "n_reps (ffsim.ucjopspinbalanced property)": [[0, "ffsim.UCJOpSpinBalanced.n_reps", false]], "n_reps (ffsim.ucjopspinless property)": [[0, "ffsim.UCJOpSpinless.n_reps", false]], "n_reps (ffsim.ucjopspinunbalanced property)": [[0, "ffsim.UCJOpSpinUnbalanced.n_reps", false]], "nelec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.nelec", false]], "nelec (ffsim.statevector attribute)": [[0, "ffsim.StateVector.nelec", false]], "norb (ffsim.diagonalcoulombhamiltonian property)": [[0, "ffsim.DiagonalCoulombHamiltonian.norb", false]], "norb (ffsim.doublefactorizedhamiltonian property)": [[0, "ffsim.DoubleFactorizedHamiltonian.norb", false]], "norb (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.norb", false]], "norb (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.norb", false]], "norb (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.norb", false]], "norb (ffsim.molecularhamiltonian property)": [[0, "ffsim.MolecularHamiltonian.norb", false]], "norb (ffsim.numnumansatzopspinbalanced attribute)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.norb", false]], "norb (ffsim.singlefactorizedhamiltonian property)": [[0, "ffsim.SingleFactorizedHamiltonian.norb", false]], "norb (ffsim.statevector attribute)": [[0, "ffsim.StateVector.norb", false]], "norb (ffsim.uccsdoprestrictedreal property)": [[0, "ffsim.UCCSDOpRestrictedReal.norb", false]], "norb (ffsim.ucjopspinbalanced property)": [[0, "ffsim.UCJOpSpinBalanced.norb", false]], "norb (ffsim.ucjopspinless property)": [[0, "ffsim.UCJOpSpinless.norb", false]], "norb (ffsim.ucjopspinunbalanced property)": [[0, "ffsim.UCJOpSpinUnbalanced.norb", false]], "normal_ordered() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.normal_ordered", false]], "num_op_sum_linop() (in module ffsim.contract)": [[1, "ffsim.contract.num_op_sum_linop", false]], "number_operator() (in module ffsim)": [[0, "ffsim.number_operator", false]], "numnumansatzopspinbalanced (class in ffsim)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced", false]], "numnumansatzopspinbalancedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.NumNumAnsatzOpSpinBalancedJW", false]], "numopsumevolutionjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.NumOpSumEvolutionJW", false]], "numopsumevolutionspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.NumOpSumEvolutionSpinlessJW", false]], "one_body_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.one_body_integrals", false]], "one_body_linop() (in module ffsim.contract)": [[1, "ffsim.contract.one_body_linop", false]], "one_body_squares (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.one_body_squares", false]], "one_body_tensor (ffsim.diagonalcoulombhamiltonian attribute)": [[0, "ffsim.DiagonalCoulombHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.one_body_tensor", false]], "one_hot() (in module ffsim)": [[0, "ffsim.one_hot", false]], "one_hot() (in module ffsim.linalg)": [[2, "ffsim.linalg.one_hot", false]], "orb (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.orb", false]], "orbital_rotations (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.orbital_rotations", false]], "orbital_rotations (ffsim.ucjopspinbalanced attribute)": [[0, "ffsim.UCJOpSpinBalanced.orbital_rotations", false]], "orbital_rotations (ffsim.ucjopspinless attribute)": [[0, "ffsim.UCJOpSpinless.orbital_rotations", false]], "orbital_rotations (ffsim.ucjopspinunbalanced attribute)": [[0, "ffsim.UCJOpSpinUnbalanced.orbital_rotations", false]], "orbital_symmetries (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.orbital_symmetries", false]], "orbitalrotationjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.OrbitalRotationJW", false]], "orbitalrotationspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.OrbitalRotationSpinlessJW", false]], "phase_angles (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.phase_angles", false]], "phis (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.phis", false]], "pre_init (in module ffsim.qiskit)": [[4, "ffsim.qiskit.PRE_INIT", false]], "pre_init_passes() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.pre_init_passes", false]], "preparehartreefockjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareHartreeFockJW", false]], "preparehartreefockspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareHartreeFockSpinlessJW", false]], "prepareslaterdeterminantjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantJW", false]], "prepareslaterdeterminantspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantSpinlessJW", false]], "productstatesum (class in ffsim)": [[0, "ffsim.ProductStateSum", false]], "qiskit_vec_to_ffsim_vec() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.qiskit_vec_to_ffsim_vec", false]], "random_antihermitian() (in module ffsim.random)": [[5, "ffsim.random.random_antihermitian", false]], "random_diagonal_coulomb_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_diagonal_coulomb_hamiltonian", false]], "random_double_factorized_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_double_factorized_hamiltonian", false]], "random_fermion_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_fermion_hamiltonian", false]], "random_fermion_operator() (in module ffsim.random)": [[5, "ffsim.random.random_fermion_operator", false]], "random_hermitian() (in module ffsim.random)": [[5, "ffsim.random.random_hermitian", false]], "random_molecular_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_molecular_hamiltonian", false]], "random_nelec() (in module ffsim.testing)": [[6, "ffsim.testing.random_nelec", false]], "random_occupied_orbitals() (in module ffsim.testing)": [[6, "ffsim.testing.random_occupied_orbitals", false]], "random_orthogonal() (in module ffsim.random)": [[5, "ffsim.random.random_orthogonal", false]], "random_real_symmetric_matrix() (in module ffsim.random)": [[5, "ffsim.random.random_real_symmetric_matrix", false]], "random_special_orthogonal() (in module ffsim.random)": [[5, "ffsim.random.random_special_orthogonal", false]], "random_state_vector() (in module ffsim.random)": [[5, "ffsim.random.random_state_vector", false]], "random_statevector() (in module ffsim.random)": [[5, "ffsim.random.random_statevector", false]], "random_t2_amplitudes() (in module ffsim.random)": [[5, "ffsim.random.random_t2_amplitudes", false]], "random_two_body_tensor() (in module ffsim.random)": [[5, "ffsim.random.random_two_body_tensor", false]], "random_uccsd_restricted() (in module ffsim.random)": [[5, "ffsim.random.random_uccsd_restricted", false]], "random_ucj_op_spin_balanced() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_op_spin_balanced", false]], "random_ucj_op_spin_unbalanced() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_op_spin_unbalanced", false]], "random_ucj_op_spinless() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_op_spinless", false]], "random_unitary() (in module ffsim.random)": [[5, "ffsim.random.random_unitary", false]], "rdm() (in module ffsim)": [[0, "ffsim.rdm", false]], "rdms() (in module ffsim)": [[0, "ffsim.rdms", false]], "reduced_matrix() (in module ffsim.linalg)": [[2, "ffsim.linalg.reduced_matrix", false]], "reduced_matrix_product_states() (ffsim.singlefactorizedhamiltonian method)": [[0, "ffsim.SingleFactorizedHamiltonian.reduced_matrix_product_states", false]], "rotated() (ffsim.molecularhamiltonian method)": [[0, "ffsim.MolecularHamiltonian.rotated", false]], "run() (ffsim.qiskit.dropnegligible method)": [[4, "ffsim.qiskit.DropNegligible.run", false]], "run() (ffsim.qiskit.ffsimsampler method)": [[4, "ffsim.qiskit.FfsimSampler.run", false]], "run() (ffsim.qiskit.mergeorbitalrotations method)": [[4, "ffsim.qiskit.MergeOrbitalRotations.run", false]], "run_ccsd() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_ccsd", false]], "run_cisd() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_cisd", false]], "run_fci() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_fci", false]], "run_mp2() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_mp2", false]], "run_sci() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_sci", false]], "s (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.s", false]], "sample_slater_determinant() (in module ffsim)": [[0, "ffsim.sample_slater_determinant", false]], "sample_state_vector() (in module ffsim)": [[0, "ffsim.sample_state_vector", false]], "scf (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.scf", false]], "sci_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.sci_energy", false]], "sci_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.sci_vec", false]], "simulate_qdrift_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_qdrift_double_factorized", false]], "simulate_trotter_diag_coulomb_split_op() (in module ffsim)": [[0, "ffsim.simulate_trotter_diag_coulomb_split_op", false]], "simulate_trotter_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_trotter_double_factorized", false]], "simulatetrotterdiagcoulombsplitopjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.SimulateTrotterDiagCoulombSplitOpJW", false]], "simulatetrotterdoublefactorizedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.SimulateTrotterDoubleFactorizedJW", false]], "singlefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.SingleFactorizedHamiltonian", false]], "slater_determinant() (in module ffsim)": [[0, "ffsim.slater_determinant", false]], "slater_determinant_amplitudes() (in module ffsim)": [[0, "ffsim.slater_determinant_amplitudes", false]], "slater_determinant_rdm() (in module ffsim)": [[0, "ffsim.slater_determinant_rdm", false]], "slater_determinant_rdms() (in module ffsim)": [[0, "ffsim.slater_determinant_rdms", false]], "spin (class in ffsim)": [[0, "ffsim.Spin", false]], "spin (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.spin", false]], "spin (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.spin", false]], "spin_square() (in module ffsim)": [[0, "ffsim.spin_square", false]], "states (ffsim.productstatesum attribute)": [[0, "ffsim.ProductStateSum.states", false]], "statevector (class in ffsim)": [[0, "ffsim.StateVector", false]], "string (ffsim.bitstringtype attribute)": [[0, "ffsim.BitstringType.STRING", false]], "strings_to_addresses() (in module ffsim)": [[0, "ffsim.strings_to_addresses", false]], "strings_to_indices() (in module ffsim)": [[0, "ffsim.strings_to_indices", false]], "supportsapplyunitary (class in ffsim)": [[0, "ffsim.SupportsApplyUnitary", false]], "supportsapproximateequality (class in ffsim)": [[0, "ffsim.SupportsApproximateEquality", false]], "supportsdiagonal (class in ffsim)": [[0, "ffsim.SupportsDiagonal", false]], "supportsfermionoperator (class in ffsim)": [[0, "ffsim.SupportsFermionOperator", false]], "supportslinearoperator (class in ffsim)": [[0, "ffsim.SupportsLinearOperator", false]], "supportstrace (class in ffsim)": [[0, "ffsim.SupportsTrace", false]], "symmetry (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.symmetry", false]], "thetas (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.thetas", false]], "thetas (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.thetas", false]], "thetas (ffsim.numnumansatzopspinbalanced attribute)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.thetas", false]], "to_diag_coulomb_mats() (ffsim.numnumansatzopspinbalanced method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.to_diag_coulomb_mats", false]], "to_fcidump() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.to_fcidump", false]], "to_json() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.to_json", false]], "to_molecular_hamiltonian() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_molecular_hamiltonian", false]], "to_number_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_number_representation", false]], "to_orbital_rotation() (ffsim.givensansatzop method)": [[0, "ffsim.GivensAnsatzOp.to_orbital_rotation", false]], "to_parameters() (ffsim.givensansatzop method)": [[0, "ffsim.GivensAnsatzOp.to_parameters", false]], "to_parameters() (ffsim.hopgateansatzoperator method)": [[0, "ffsim.HopGateAnsatzOperator.to_parameters", false]], "to_parameters() (ffsim.numnumansatzopspinbalanced method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.to_parameters", false]], "to_parameters() (ffsim.uccsdoprestrictedreal method)": [[0, "ffsim.UCCSDOpRestrictedReal.to_parameters", false]], "to_parameters() (ffsim.ucjopspinbalanced method)": [[0, "ffsim.UCJOpSpinBalanced.to_parameters", false]], "to_parameters() (ffsim.ucjopspinless method)": [[0, "ffsim.UCJOpSpinless.to_parameters", false]], "to_parameters() (ffsim.ucjopspinunbalanced method)": [[0, "ffsim.UCJOpSpinUnbalanced.to_parameters", false]], "to_z_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_z_representation", false]], "trace() (in module ffsim)": [[0, "ffsim.trace", false]], "two_body_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.two_body_integrals", false]], "two_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.two_body_tensor", false]], "uccsdoprestrictedreal (class in ffsim)": [[0, "ffsim.UCCSDOpRestrictedReal", false]], "ucjopspinbalanced (class in ffsim)": [[0, "ffsim.UCJOpSpinBalanced", false]], "ucjopspinbalancedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOpSpinBalancedJW", false]], "ucjopspinless (class in ffsim)": [[0, "ffsim.UCJOpSpinless", false]], "ucjopspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOpSpinlessJW", false]], "ucjopspinunbalanced (class in ffsim)": [[0, "ffsim.UCJOpSpinUnbalanced", false]], "ucjopspinunbalancedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOpSpinUnbalancedJW", false]], "vec (ffsim.statevector attribute)": [[0, "ffsim.StateVector.vec", false]], "z_representation (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.z_representation", false]]}, "objects": {"": [[0, 0, 0, "-", "ffsim"]], "ffsim": [[0, 1, 1, "", "BitstringType"], [0, 1, 1, "", "DiagonalCoulombHamiltonian"], [0, 1, 1, "", "DoubleFactorizedHamiltonian"], [0, 1, 1, "", "FermionAction"], [0, 1, 1, "", "FermionOperator"], [0, 1, 1, "", "GivensAnsatzOp"], [0, 1, 1, "", "HopGateAnsatzOperator"], [0, 1, 1, "", "MolecularData"], [0, 1, 1, "", "MolecularHamiltonian"], [0, 1, 1, "", "NumNumAnsatzOpSpinBalanced"], [0, 1, 1, "", "ProductStateSum"], [0, 1, 1, "", "SingleFactorizedHamiltonian"], [0, 1, 1, "", "Spin"], [0, 1, 1, "", "StateVector"], [0, 1, 1, "", "SupportsApplyUnitary"], [0, 1, 1, "", "SupportsApproximateEquality"], [0, 1, 1, "", "SupportsDiagonal"], [0, 1, 1, "", "SupportsFermionOperator"], [0, 1, 1, "", "SupportsLinearOperator"], [0, 1, 1, "", "SupportsTrace"], [0, 1, 1, "", "UCCSDOpRestrictedReal"], [0, 1, 1, "", "UCJOpSpinBalanced"], [0, 1, 1, "", "UCJOpSpinUnbalanced"], [0, 1, 1, "", "UCJOpSpinless"], [0, 5, 1, "", "addresses_to_strings"], [0, 5, 1, "", "apply_diag_coulomb_evolution"], [0, 5, 1, "", "apply_fsim_gate"], [0, 5, 1, "", "apply_fswap_gate"], [0, 5, 1, "", "apply_givens_rotation"], [0, 5, 1, "", "apply_hop_gate"], [0, 5, 1, "", "apply_num_interaction"], [0, 5, 1, "", "apply_num_num_interaction"], [0, 5, 1, "", "apply_num_op_prod_interaction"], [0, 5, 1, "", "apply_num_op_sum_evolution"], [0, 5, 1, "", "apply_on_site_interaction"], [0, 5, 1, "", "apply_orbital_rotation"], [0, 5, 1, "", "apply_tunneling_interaction"], [0, 5, 1, "", "apply_unitary"], [0, 5, 1, "", "approx_eq"], [1, 0, 0, "-", "contract"], [0, 5, 1, "", "cre"], [0, 5, 1, "", "cre_a"], [0, 5, 1, "", "cre_b"], [0, 5, 1, "", "des"], [0, 5, 1, "", "des_a"], [0, 5, 1, "", "des_b"], [0, 5, 1, "", "diag"], [0, 5, 1, "", "dim"], [0, 5, 1, "", "dims"], [0, 5, 1, "", "expectation_one_body_power"], [0, 5, 1, "", "expectation_one_body_product"], [0, 5, 1, "", "fermi_hubbard_1d"], [0, 5, 1, "", "fermi_hubbard_2d"], [0, 5, 1, "", "fermion_operator"], [0, 5, 1, "", "hartree_fock_state"], [0, 5, 1, "", "indices_to_strings"], [0, 5, 1, "", "init_cache"], [2, 0, 0, "-", "linalg"], [0, 5, 1, "", "linear_operator"], [0, 5, 1, "", "multireference_state"], [0, 5, 1, "", "multireference_state_prod"], [0, 5, 1, "", "number_operator"], [0, 5, 1, "", "one_hot"], [3, 0, 0, "-", "optimize"], [4, 0, 0, "-", "qiskit"], [5, 0, 0, "-", "random"], [0, 5, 1, "", "rdm"], [0, 5, 1, "", "rdms"], [0, 5, 1, "", "sample_slater_determinant"], [0, 5, 1, "", "sample_state_vector"], [0, 5, 1, "", "simulate_qdrift_double_factorized"], [0, 5, 1, "", "simulate_trotter_diag_coulomb_split_op"], [0, 5, 1, "", "simulate_trotter_double_factorized"], [0, 5, 1, "", "slater_determinant"], [0, 5, 1, "", "slater_determinant_amplitudes"], [0, 5, 1, "", "slater_determinant_rdm"], [0, 5, 1, "", "slater_determinant_rdms"], [0, 5, 1, "", "spin_square"], [0, 5, 1, "", "strings_to_addresses"], [0, 5, 1, "", "strings_to_indices"], [6, 0, 0, "-", "testing"], [0, 5, 1, "", "trace"]], "ffsim.BitstringType": [[0, 2, 1, "", "BIT_ARRAY"], [0, 2, 1, "", "INT"], [0, 2, 1, "", "STRING"]], "ffsim.DiagonalCoulombHamiltonian": [[0, 2, 1, "", "constant"], [0, 2, 1, "", "diag_coulomb_mats"], [0, 3, 1, "", "from_fermion_operator"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"]], "ffsim.DoubleFactorizedHamiltonian": [[0, 2, 1, "", "constant"], [0, 2, 1, "", "diag_coulomb_mats"], [0, 3, 1, "", "from_molecular_hamiltonian"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_molecular_hamiltonian"], [0, 3, 1, "", "to_number_representation"], [0, 3, 1, "", "to_z_representation"], [0, 2, 1, "", "z_representation"]], "ffsim.FermionAction": [[0, 2, 1, "", "action"], [0, 2, 1, "", "orb"], [0, 2, 1, "", "spin"]], "ffsim.FermionOperator": [[0, 3, 1, "", "conserves_particle_number"], [0, 3, 1, "", "conserves_spin_z"], [0, 3, 1, "", "many_body_order"], [0, 3, 1, "", "normal_ordered"]], "ffsim.GivensAnsatzOp": [[0, 3, 1, "", "from_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 3, 1, "", "n_params"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "phase_angles"], [0, 2, 1, "", "phis"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_orbital_rotation"], [0, 3, 1, "", "to_parameters"]], "ffsim.HopGateAnsatzOperator": [[0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_parameters"]], "ffsim.MolecularData": [[0, 2, 1, "", "active_space"], [0, 2, 1, "", "atom"], [0, 2, 1, "", "basis"], [0, 2, 1, "", "ccsd_energy"], [0, 2, 1, "", "ccsd_t1"], [0, 2, 1, "", "ccsd_t2"], [0, 2, 1, "", "cisd_energy"], [0, 2, 1, "", "cisd_vec"], [0, 2, 1, "", "core_energy"], [0, 2, 1, "", "dipole_integrals"], [0, 2, 1, "", "fci_energy"], [0, 2, 1, "", "fci_vec"], [0, 3, 1, "", "from_fcidump"], [0, 3, 1, "", "from_json"], [0, 3, 1, "", "from_mole"], [0, 3, 1, "", "from_scf"], [0, 4, 1, "", "hamiltonian"], [0, 2, 1, "", "hf_energy"], [0, 2, 1, "", "hf_mo_coeff"], [0, 2, 1, "", "hf_mo_occ"], [0, 2, 1, "", "mo_coeff"], [0, 2, 1, "", "mo_occ"], [0, 4, 1, "", "mole"], [0, 2, 1, "", "mp2_energy"], [0, 2, 1, "", "mp2_t2"], [0, 2, 1, "", "nelec"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "one_body_integrals"], [0, 2, 1, "", "orbital_symmetries"], [0, 3, 1, "", "run_ccsd"], [0, 3, 1, "", "run_cisd"], [0, 3, 1, "", "run_fci"], [0, 3, 1, "", "run_mp2"], [0, 3, 1, "", "run_sci"], [0, 4, 1, "", "scf"], [0, 2, 1, "", "sci_energy"], [0, 2, 1, "", "sci_vec"], [0, 2, 1, "", "spin"], [0, 2, 1, "", "symmetry"], [0, 3, 1, "", "to_fcidump"], [0, 3, 1, "", "to_json"], [0, 2, 1, "", "two_body_integrals"]], "ffsim.MolecularHamiltonian": [[0, 2, 1, "", "constant"], [0, 3, 1, "", "from_fcidump"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 3, 1, "", "rotated"], [0, 2, 1, "", "two_body_tensor"]], "ffsim.NumNumAnsatzOpSpinBalanced": [[0, 3, 1, "", "from_diag_coulomb_mats"], [0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 3, 1, "", "n_params"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_diag_coulomb_mats"], [0, 3, 1, "", "to_parameters"]], "ffsim.ProductStateSum": [[0, 2, 1, "", "coeffs"], [0, 2, 1, "", "states"]], "ffsim.SingleFactorizedHamiltonian": [[0, 2, 1, "", "constant"], [0, 3, 1, "", "expectation_product_state"], [0, 3, 1, "", "from_molecular_hamiltonian"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_squares"], [0, 2, 1, "", "one_body_tensor"], [0, 3, 1, "", "reduced_matrix_product_states"]], "ffsim.Spin": [[0, 2, 1, "", "ALPHA"], [0, 2, 1, "", "ALPHA_AND_BETA"], [0, 2, 1, "", "BETA"]], "ffsim.StateVector": [[0, 2, 1, "", "nelec"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "vec"]], "ffsim.UCCSDOpRestrictedReal": [[0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "norb"], [0, 3, 1, "", "to_parameters"]], "ffsim.UCJOpSpinBalanced": [[0, 2, 1, "", "diag_coulomb_mats"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"]], "ffsim.UCJOpSpinUnbalanced": [[0, 2, 1, "", "diag_coulomb_mats"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"]], "ffsim.UCJOpSpinless": [[0, 2, 1, "", "diag_coulomb_mats"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"]], "ffsim.contract": [[1, 5, 1, "", "contract_diag_coulomb"], [1, 5, 1, "", "contract_num_op_sum"], [1, 5, 1, "", "contract_one_body"], [1, 5, 1, "", "diag_coulomb_linop"], [1, 5, 1, "", "num_op_sum_linop"], [1, 5, 1, "", "one_body_linop"]], "ffsim.linalg": [[2, 1, 1, "", "GivensRotation"], [2, 5, 1, "", "apply_matrix_to_slices"], [2, 5, 1, "", "double_factorized"], [2, 5, 1, "", "double_factorized_t2"], [2, 5, 1, "", "double_factorized_t2_alpha_beta"], [2, 5, 1, "", "expm_multiply_taylor"], [2, 5, 1, "", "givens_decomposition"], [2, 5, 1, "", "is_antihermitian"], [2, 5, 1, "", "is_hermitian"], [2, 5, 1, "", "is_orthogonal"], [2, 5, 1, "", "is_real_symmetric"], [2, 5, 1, "", "is_special_orthogonal"], [2, 5, 1, "", "is_unitary"], [2, 5, 1, "", "lup"], [2, 5, 1, "", "match_global_phase"], [2, 5, 1, "", "modified_cholesky"], [2, 5, 1, "", "one_hot"], [2, 5, 1, "", "reduced_matrix"]], "ffsim.linalg.GivensRotation": [[2, 2, 1, "", "c"], [2, 2, 1, "", "i"], [2, 2, 1, "", "j"], [2, 2, 1, "", "s"]], "ffsim.optimize": [[3, 5, 1, "", "minimize_linear_method"]], "ffsim.qiskit": [[4, 1, 1, "", "DiagCoulombEvolutionJW"], [4, 1, 1, "", "DiagCoulombEvolutionSpinlessJW"], [4, 1, 1, "", "DropNegligible"], [4, 1, 1, "", "FfsimSampler"], [4, 1, 1, "", "GivensAnsatzOpJW"], [4, 1, 1, "", "GivensAnsatzOpSpinlessJW"], [4, 1, 1, "", "MergeOrbitalRotations"], [4, 1, 1, "", "NumNumAnsatzOpSpinBalancedJW"], [4, 1, 1, "", "NumOpSumEvolutionJW"], [4, 1, 1, "", "NumOpSumEvolutionSpinlessJW"], [4, 1, 1, "", "OrbitalRotationJW"], [4, 1, 1, "", "OrbitalRotationSpinlessJW"], [4, 6, 1, "", "PRE_INIT"], [4, 1, 1, "", "PrepareHartreeFockJW"], [4, 1, 1, "", "PrepareHartreeFockSpinlessJW"], [4, 1, 1, "", "PrepareSlaterDeterminantJW"], [4, 1, 1, "", "PrepareSlaterDeterminantSpinlessJW"], [4, 1, 1, "", "SimulateTrotterDiagCoulombSplitOpJW"], [4, 1, 1, "", "SimulateTrotterDoubleFactorizedJW"], [4, 1, 1, "", "UCJOpSpinBalancedJW"], [4, 1, 1, "", "UCJOpSpinUnbalancedJW"], [4, 1, 1, "", "UCJOpSpinlessJW"], [4, 5, 1, "", "ffsim_vec_to_qiskit_vec"], [4, 5, 1, "", "final_state_vector"], [4, 5, 1, "", "jordan_wigner"], [4, 5, 1, "", "pre_init_passes"], [4, 5, 1, "", "qiskit_vec_to_ffsim_vec"]], "ffsim.qiskit.DiagCoulombEvolutionJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.DropNegligible": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "run"]], "ffsim.qiskit.FfsimSampler": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "run"]], "ffsim.qiskit.GivensAnsatzOpJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.GivensAnsatzOpSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.MergeOrbitalRotations": [[4, 3, 1, "", "run"]], "ffsim.qiskit.NumNumAnsatzOpSpinBalancedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.NumOpSumEvolutionJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.NumOpSumEvolutionSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.OrbitalRotationJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.OrbitalRotationSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.PrepareHartreeFockJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.PrepareHartreeFockSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.PrepareSlaterDeterminantJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.PrepareSlaterDeterminantSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.SimulateTrotterDiagCoulombSplitOpJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.SimulateTrotterDoubleFactorizedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOpSpinBalancedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOpSpinUnbalancedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOpSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.random": [[5, 5, 1, "", "random_antihermitian"], [5, 5, 1, "", "random_diagonal_coulomb_hamiltonian"], [5, 5, 1, "", "random_double_factorized_hamiltonian"], [5, 5, 1, "", "random_fermion_hamiltonian"], [5, 5, 1, "", "random_fermion_operator"], [5, 5, 1, "", "random_hermitian"], [5, 5, 1, "", "random_molecular_hamiltonian"], [5, 5, 1, "", "random_orthogonal"], [5, 5, 1, "", "random_real_symmetric_matrix"], [5, 5, 1, "", "random_special_orthogonal"], [5, 5, 1, "", "random_state_vector"], [5, 5, 1, "", "random_statevector"], [5, 5, 1, "", "random_t2_amplitudes"], [5, 5, 1, "", "random_two_body_tensor"], [5, 5, 1, "", "random_uccsd_restricted"], [5, 5, 1, "", "random_ucj_op_spin_balanced"], [5, 5, 1, "", "random_ucj_op_spin_unbalanced"], [5, 5, 1, "", "random_ucj_op_spinless"], [5, 5, 1, "", "random_unitary"]], "ffsim.testing": [[6, 5, 1, "", "assert_allclose_up_to_global_phase"], [6, 5, 1, "", "generate_norb_nelec"], [6, 5, 1, "", "generate_norb_nelec_spin"], [6, 5, 1, "", "generate_norb_nocc"], [6, 5, 1, "", "generate_norb_spin"], [6, 5, 1, "", "random_nelec"], [6, 5, 1, "", "random_occupied_orbitals"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "method", "Python method"], "4": ["py", "property", "Python property"], "5": ["py", "function", "Python function"], "6": ["py", "data", "Python data"]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:property", "5": "py:function", "6": "py:data"}, "terms": {"": [0, 2, 4, 8, 9, 13, 14, 15, 16, 17, 18, 19, 21, 22, 23], "0": [0, 2, 3, 4, 6, 8, 9, 11, 13, 14, 15, 16, 18, 19, 20, 21, 23], "00": 18, "000": 20, "0000000": [15, 18], "0000000000011100000000000111": 20, "0000000000011100000000011100": 20, "0000000000110100000000001101": 20, "0000000001011000000000010110": 20, "0000000001011000100000000110": 20, "0000000001110000000000000111": 20, "0000000111100000011111": 20, "0000000111100110000111": 20, "0000010101100001011011": 20, "0000010110100001011011": 20, "0000100101100000111011": 20, "0000100110100000111011": 20, "0000111100001111": 20, "0000111100011011": 20, "0000111100011101": 20, "0000111100101011": 20, "0001": 3, "0001000000010100000000001101": 20, "0001000001010000000000000111": 20, "0001110100001111": 20, "0001508084642978354": 18, "00040023678229488967": 18, "0007585233428996984": 18, "0010000000011000000000010110": 20, "0010000000110000000000000111": 20, "0010011100101101": 20, "0010101100001111": 20, "0010101100101101": 20, "001011": [0, 14], "0010110100100111": 20, "0010110100101011": 20, "001101": [0, 14], "001110": [0, 14], "0029592887084727917": 18, "005e": 15, "01": [15, 18], "0100000110100100001111": 20, "010011": [0, 14], "0101": 0, "0101000001100000011111": 20, "010101": [0, 14], "010110": [0, 14], "0110": 0, "019897463779375846": 18, "019897526685627408": 18, "019897534413323977": 18, "02": [15, 18], "02122442107773": 18, "02242": 2, "0241729": 16, "02459434j": 14, "02625": 2, "02998708j": 14, "03": [15, 18], "03101213j": 14, "03525116j": 14, "036685417309836654": 23, "04": [15, 18], "04758323886584519": 18, "05": [0, 2, 3, 4, 15, 18], "05395": 4, "06": 18, "0609050": 5, "0625": [0, 16], "06273307": 14, "06551571": 14, "06677383j": 14, "066e": 18, "06844774j": 14, "07": [6, 18], "08": [0, 2, 3, 4], "08957": 2, "094e": 18, "09723851": 14, "0b001011": 0, "0b010101": 0, "0b010110": 0, "0b100101": 0, "0b100110": 0, "0j": 16, "0x7f3d0bf34460": 19, "0x7f3d1882dcc0": 19, "0x7f3d188a6c80": 19, "0x7f3d188f4c10": 19, "0x7f3d188f6770": 19, "0x7f3d188f6f20": 19, "0x7f3d18963ac0": 19, "0x7f3d18ac3a90": 19, "1": [0, 2, 3, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "10": [13, 18, 19, 20, 23], "100": 15, "1000": 3, "1000000101100000111011": 20, "100011": [0, 14], "100101": [0, 14], "100110": [0, 14], "101": 20, "1024": 4, "104": [15, 21], "1077416834051778": 20, "108": [20, 23], "10_000": 20, "11": [0, 13, 18, 19, 20, 23], "1102529j": 14, "11157654": 14, "112": 15, "12": [2, 13, 15, 16, 18, 20, 23], "1207": 0, "12204343": 14, "1234": [9, 13, 14, 15, 19, 21], "12345": 20, "125": [0, 16], "1278053627110057": 20, "1294": [15, 18], "12j": 16, "13": [0, 13, 20, 23], "13113848": 14, "133": 20, "13327423j": 14, "13957088j": 14, "14": [13, 20], "146e": 15, "15": [13, 15], "1561685j": 14, "15624569": 14, "15828306": 14, "15x15": 15, "16": 13, "17": 13, "1711": [2, 4], "17181289596": 21, "17276745j": 14, "17558331": 14, "17754545j": 16, "18": 13, "180": 15, "18007105": 14, "1808": 2, "18j": 16, "19": 0, "193707353569222e": 18, "1e": [0, 2, 3, 4, 6, 15, 23], "1j": [0, 9, 16, 23], "2": [0, 1, 2, 4, 5, 8, 9, 11, 13, 14, 15, 16, 18, 19, 20, 23], "20835741": 14, "20881506": 14, "21": 0, "210": 20, "2104": 2, "2190712273": 9, "21928194": 14, "21984743e": 16, "22392824": 14, "23": 15, "234e": 18, "23550198": 14, "23611476": 14, "239e": 18, "24": [13, 19], "25": [0, 16], "256e": 18, "25j": [0, 16], "26": 23, "26121865": 14, "265e": 18, "275e": 18, "276e": 18, "285e": 18, "29821173j": 14, "2d": 0, "2j": [0, 2, 16], "2n": 14, "3": [0, 2, 5, 9, 11, 13, 14, 15, 16, 18, 19, 20, 23], "30052742j": 14, "31980058j": 14, "31g": [20, 21], "32": [13, 19], "329": 18, "33731417j": 14, "339": 18, "3484557077368": 20, "35": [0, 23], "36730125j": 14, "3714141": 14, "374": 18, "383e": 15, "38435478j": 14, "39": [13, 14, 15, 16, 18, 19, 20], "39075171": 14, "3j": 16, "4": [0, 2, 8, 9, 13, 14, 15, 16, 18, 19, 20, 21, 23], "419e": 15, "421e": 18, "4390672": 14, "45619739114197": 20, "46": 18, "464957764795": 23, "46x46": 18, "47": 20, "474e": 18, "478": 15, "48": [13, 20], "49094286j": 14, "4j": 16, "5": [0, 3, 9, 13, 14, 15, 16, 18, 19, 20, 23], "51253171j": 14, "522e": 18, "527e": 18, "555e": 18, "55717072551532": 9, "56": [13, 19, 20], "561e": 18, "5626": 18, "57": 20, "577e": 18, "58888": 22, "5j": [0, 16], "6": [0, 9, 13, 14, 15, 16, 19, 20, 21, 23], "603e": 15, "604": 18, "6083": 0, "628e": 18, "6332495815006": 15, "64": 14, "65": 20, "66": 20, "663e": 15, "67794403659727": 15, "6787887956297": 15, "6787887956314": 15, "6838157319136": 15, "684e": 18, "6g": [0, 15, 18, 23], "6j": 16, "7": [0, 9, 13, 14, 15, 16, 18, 19, 23], "70": 20, "72": 18, "7288249991515": 15, "72x72": 18, "73105542j": 14, "748e": 15, "75": [15, 20], "752e": [15, 18], "77": 18, "8": [0, 13, 15, 16, 18, 19, 20, 23], "802e": 18, "803": 18, "8266321248744": 18, "835236570775": 20, "842e": 18, "847e": 18, "87160024816285": 18, "87362139128116": 18, "87363310790793": 18, "8736339780716": 18, "87363426263045": 18, "8736342667721": 18, "87387356072195": 18, "87421536374025": 18, "8742165643862": 18, "9": [13, 14, 15, 16, 18, 19, 20, 23], "9289": 18, "9402383980312086": 23, "958": 15, "9630419334855": 20, "9657827159506404": 18, "9657827349147471": 18, "9657827374627213": 18, "9663689557372899": 18, "99": 9, "9926": 20, "9985210982781565": 23, "9985210982782917": 23, "9991": 20, "9996731173188249": 23, "A": [0, 1, 2, 3, 4, 5, 6, 8, 12, 13, 14, 16, 22, 23], "AND": 15, "As": [11, 13, 14, 18, 19, 23], "By": 21, "For": [0, 3, 4, 5, 8, 9, 11, 14, 15, 16, 22, 23], "If": [0, 1, 2, 3, 4, 5, 6, 13, 16], "In": [0, 8, 9, 11, 13, 14, 15, 16, 18, 19, 20, 23], "It": [0, 2, 3, 4, 13, 14, 16, 18, 20, 22], "Its": [3, 4], "NO": 15, "No": 2, "Of": 11, "On": [14, 22], "One": [0, 23], "Such": 16, "That": [0, 3, 12, 16], "The": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "Their": 19, "Then": [0, 13], "There": 13, "These": [0, 5, 11, 16, 19], "To": [0, 8, 9, 11, 14, 18, 23], "With": [11, 14, 23], "_": [0, 1, 2, 4, 8, 11, 12, 15, 23], "_1": 12, "_2": 12, "__init__": 4, "_factr": 18, "_i": [0, 4], "_k": [0, 8, 11], "_nestedsequ": 4, "_supportsarrai": 4, "a_": [0, 4, 8, 9, 12, 16], "a_j": 1, "a_p": 0, "a_q": 0, "ab": [0, 23], "abil": 8, "abl": 22, "about": 21, "abov": [13, 16], "absenc": [0, 1, 4], "absolut": [0, 2, 4, 6], "acceler": 22, "accept": [12, 18], "access": [0, 9, 22], "accommod": 4, "accomod": 8, "accur": 8, "achiev": [2, 23], "across": 22, "act": [0, 2, 4, 9, 13, 15, 16], "action": [0, 1, 12, 16, 22, 23], "activ": [0, 15, 18, 20, 23], "active_spac": [0, 15, 18, 20, 21, 23], "actual": [6, 11], "ad": [0, 13, 18], "add": [13, 18], "addit": [0, 8, 16, 23], "addition": 2, "address": [0, 13], "addresses_to_str": [0, 7, 14], "adjac": 13, "advantag": 18, "after": [3, 18], "al": 2, "algebra": [2, 9, 16], "algorithm": [0, 2, 3, 18, 21], "alia": [0, 2], "align": [0, 11, 12], "all": [0, 1, 2, 3, 4, 6, 11, 13, 16, 20, 22], "alloc": 0, "allow": [0, 2, 5, 11, 13, 18, 22, 23], "along": 0, "alpha": [0, 1, 2, 4, 5, 6, 9, 11, 13, 14, 15, 16, 19, 20], "alpha_and_beta": 0, "alpha_i": 0, "alpha_j": 0, "alreadi": [0, 4, 12], "also": [0, 2, 3, 5, 9, 12, 14, 16, 18, 23], "altern": [0, 8], "alwai": [0, 2, 5, 12, 14, 23], "amen": 13, "amplitud": [0, 2, 5, 18, 20], "an": [0, 1, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 23], "angl": 0, "ani": [0, 3, 4, 5, 11, 12, 19, 20], "annihil": [0, 16], "anoth": [2, 6], "ansatz": [0, 3, 4, 5, 10, 13, 17, 19, 20, 21], "ansatz_oper": 0, "ansatz_st": 18, "anti": [2, 5], "anticommut": 12, "ao": 0, "ap": 2, "api": [14, 21], "appear": [0, 2, 13, 16, 20], "append": [0, 6, 13, 18, 19, 20], "appli": [0, 1, 2, 3, 4, 9, 11, 12, 13, 14, 18, 19, 20, 21, 23], "applic": 12, "apply_": 14, "apply_diag_coulomb_evolut": [0, 7, 8, 23], "apply_fsim_g": [0, 7], "apply_fswap_g": [0, 7], "apply_givens_rot": [0, 7], "apply_hop_g": [0, 7], "apply_matrix_to_slic": [2, 7], "apply_num_interact": [0, 7], "apply_num_num_interact": [0, 7], "apply_num_op_prod_interact": [0, 7], "apply_num_op_sum_evolut": [0, 7, 12, 23], "apply_on_site_interact": [0, 7, 14], "apply_orbital_rot": [0, 7, 12, 14, 21], "apply_quad_ham_evolut": 12, "apply_tunneling_interact": [0, 7, 14], "apply_unitari": [0, 7, 18], "appropri": [0, 11], "approx": 8, "approx_eq": [0, 7], "approxim": [0, 2, 3, 8, 18, 23], "apt": 22, "ar": [0, 1, 2, 4, 5, 6, 8, 9, 11, 12, 13, 14, 16, 19, 20, 22], "arbitrari": [4, 20], "arch": 22, "arg": [0, 4], "argument": [0, 2, 3, 8, 9, 12, 14, 23], "aris": 8, "arithmet": 16, "around": 23, "arrai": [0, 1, 2, 4, 6, 9, 11, 14, 16], "arxiv": [0, 2, 4, 5], "ascend": 20, "assembl": 2, "assert": 14, "assert_allclose_up_to_global_phas": [6, 7], "assertionerror": 6, "associ": [0, 3, 14, 16, 18], "assum": [0, 4, 14], "asterisk": 0, "asymmetr": 8, "atol": [0, 2, 4, 6], "atom": [0, 15, 18, 20, 21, 23], "attempt": 2, "attribut": [0, 3, 9, 15, 18, 20], "author": 21, "auto": 0, "avail": [9, 19, 22], "avoid": [0, 9, 16], "awar": 16, "ax": [0, 2], "axi": [0, 2], "b": [0, 2, 3, 6, 12, 15, 18], "back": 4, "backend": [13, 19], "backflow": 3, "background": 23, "balanc": [0, 4, 5, 18, 20], "barrier": 20, "base": [0, 2, 4], "basepass": 4, "basesamplerv2": 4, "basi": [0, 2, 4, 12, 15, 18, 20, 21, 23], "basic": [9, 13], "basis_g": [13, 19], "bear": 23, "becaus": [0, 2, 8, 9, 13, 15, 16, 18], "been": [0, 8], "befor": [0, 13, 16, 22, 23], "begin": [0, 2, 11, 12, 14, 20, 23], "behavior": [2, 4, 5, 19], "being": [2, 16, 18], "below": [0, 18, 23], "benchmark": 0, "beta": [0, 1, 2, 4, 5, 6, 9, 11, 13, 14, 15, 16, 19, 20], "beta_i": 0, "beta_j": 0, "better": 8, "between": [0, 1, 2, 3, 11, 13], "bfg": [0, 2, 3, 15, 18], "bibtex": 21, "bit": [0, 13, 14], "bit_arrai": 0, "bitstr": [0, 14, 20], "bitstring_typ": [0, 14], "bitstringtyp": [0, 7, 14], "bla": 22, "bloc": 20, "block": 2, "block_diag": [0, 2], "bmod": 0, "bodi": [0, 1, 2, 5, 8, 9, 18, 23], "bond": 15, "bond_angle_deg": 15, "bond_dist": 18, "bool": [0, 1, 2, 3, 4, 5, 6], "both": [0, 1, 2, 4, 11, 15], "bound": [0, 2], "boundari": 0, "box": 13, "bq": 2, "bracket": 0, "braket": 0, "branch": 21, "brickwork": 15, "browser": 22, "buffer": 4, "build": [13, 17, 18, 20, 21, 22], "built": [19, 20, 23], "byte": [0, 4], "bz2": 0, "c": [2, 18], "c2v": 15, "cach": 0, "calcul": [0, 14, 18], "call": [0, 3, 8, 9, 12, 14, 16, 18, 20, 23], "callabl": [3, 18], "callback": [0, 2, 3, 18], "can": [0, 1, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 22, 23], "cannot": 20, "canon": 0, "casci": [15, 18], "case": [0, 6, 13, 15], "categori": 21, "caus": 0, "cc": [18, 20], "ccsd": [0, 18, 20], "ccsd_energi": 0, "ccsd_t1": 0, "ccsd_t2": 0, "cd": 22, "cdot": 2, "cell": [9, 13, 14, 18, 19, 20, 23], "certain": [2, 13], "challeng": 11, "character": 0, "check": [2, 4, 6], "chemcor": 23, "chemic": 0, "chemical_potenti": 0, "chemistri": 21, "choic": [0, 6, 13, 14], "choleski": [0, 2], "choos": [2, 14], "chosen": 0, "ci": [15, 18], "circuit": [0, 4, 8, 13, 14, 17, 21], "circul": 0, "cisd": 0, "cisd_energi": 0, "cisd_vec": 0, "class": [0, 2, 4, 5, 9, 11, 15, 17, 18, 20, 21, 23], "clement": 2, "clone": 22, "close": [11, 18], "cluster": [0, 4, 5, 10, 17, 21], "co": [0, 15], "code": [4, 9, 13, 14, 16, 18, 19, 20, 23], "coeff": [0, 1, 4, 13, 19], "coeffici": [0, 1, 2, 4, 12, 16], "collect": [0, 2, 4, 18], "column": [0, 2, 12, 14], "com": [21, 22], "comb": 4, "combin": [0, 1, 4, 12, 13, 16], "command": 22, "commonli": [8, 20], "commun": [21, 22], "commut": 8, "compact": [8, 23], "compar": [0, 6, 23], "compil": 22, "complet": 0, "complex": [0, 1, 2, 4, 5, 9], "compon": [0, 16, 21], "compos": [4, 22], "compress": [0, 2], "compris": [0, 16], "comput": [0, 2, 4, 9, 12, 18, 21, 23], "concaten": [0, 14], "concret": 9, "condit": 0, "configur": [0, 4, 13, 14, 22], "conflict": 6, "conj": [2, 12, 20], "conjug": 2, "connect": [0, 11, 13], "consecut": [4, 20], "conserv": [0, 5, 16, 21], "conserves_particle_numb": [0, 16], "conserves_spin_z": [0, 16], "consid": [11, 12, 13], "consist": [0, 9, 13], "constant": [0, 5, 8, 9, 11, 13, 19], "constrain": 2, "constraint": [11, 18], "construct": [0, 1, 3, 4, 13, 14, 15, 16, 18, 19, 20, 23], "contain": [0, 2, 3, 5, 13, 16, 20, 21, 22], "contract": [2, 7, 21], "contract_diag_coulomb": [1, 7], "contract_num_op_sum": [1, 7], "contract_one_bodi": [1, 7], "contrast": 14, "control": [3, 13], "conveni": 14, "convent": 0, "converg": [3, 15, 18, 20, 23], "convers": [11, 18], "convert": [0, 1, 4, 14, 16, 18, 20, 21, 23], "coordin": 0, "coov": 20, "copi": [0, 16], "core": 0, "core_energi": 0, "correl": 3, "correspond": [0, 2, 3, 4, 8, 12, 13, 14, 18], "cost": 0, "coulomb": [0, 1, 2, 4, 5, 8, 11, 23], "count": [0, 13, 20], "count_op": [13, 19], "coupl": 0, "cours": 11, "cp": [13, 19], "cphaseg": 13, "cre": [0, 7], "cre_a": [0, 7, 16], "cre_b": [0, 7, 16], "creat": [0, 4, 13, 14, 16, 19, 20, 21, 23], "creation": [0, 4, 12, 16], "criteria": 16, "current": [0, 2, 18], "d": [2, 22], "d2h": 18, "dag": 4, "dagcircuit": 4, "dagger": [0, 1, 2, 8, 11, 12, 16], "dagger_": [0, 4, 8, 9, 12], "dagger_i": 1, "dagger_p": 0, "dagger_q": 0, "data": [0, 5, 13, 15, 16, 18, 20, 21, 23], "daunt": 8, "de": [0, 7], "decompos": [2, 4, 8, 13, 19], "decomposit": [0, 2, 4, 8, 10, 19, 21, 23], "decreas": [0, 18], "def": [2, 12, 15, 18, 23], "default": [0, 2, 3, 4, 5, 8, 9, 23], "default_rng": [0, 4, 5, 6, 9, 13, 15, 19, 20], "default_shot": [4, 20], "defaultdict": 18, "defin": [0, 2, 13, 15, 18, 20, 23], "definit": [0, 2, 3, 14], "demonstr": [14, 18, 20], "denot": [0, 1, 2, 4, 12], "dens": 15, "densiti": 0, "depend": [0, 2, 3, 22, 23], "depolar": 4, "deprec": [0, 5], "depth": 11, "deriv": 8, "des_a": [0, 7, 16], "des_b": [0, 7, 16], "descend": [0, 16], "describ": [0, 1, 2, 8, 11, 12, 13, 16, 23], "descript": [0, 4], "design": [0, 2, 12], "desir": [0, 2, 5, 6], "destroi": [0, 16], "detail": [13, 19], "determin": [0, 2, 4, 14], "determinant": 0, "dev": 22, "devel": 22, "develop": [4, 21], "devic": [13, 19], "df_hamiltonian": [13, 19, 23], "df_hamiltonian_alt": 23, "diag": [0, 7], "diag_coulomb_indic": [0, 2], "diag_coulomb_jw": 13, "diag_coulomb_linop": [1, 7], "diag_coulomb_mat": [0, 2, 13, 19, 20, 23], "diagcoulombevolutionjw": [4, 7, 13, 19, 20], "diagcoulombevolutionspinlessjw": [4, 7], "diagon": [0, 1, 2, 4, 5, 8, 11, 23], "diagonal_coulomb_mat": 2, "diagonalcoulombhamiltonian": [0, 4, 5, 7], "dict": [0, 2, 3, 15, 18], "dictionari": [0, 16], "did": 0, "differ": [0, 1, 2, 3, 9, 11, 13, 18, 22, 23], "dim": [0, 5, 7, 14, 16], "dim_a": [0, 14], "dim_b": [0, 14], "dimens": [0, 2, 5, 14], "dimension": [0, 2, 4, 14], "dipol": 0, "dipole_integr": 0, "direct": [0, 23], "directli": [0, 13, 18, 22, 23], "directori": 22, "discuss": [8, 12, 13], "disjoint": 2, "disk": 0, "displai": [13, 16, 20], "distinguish": 14, "distribut": [4, 5], "divid": 8, "divis": [0, 16], "dnf": 22, "do": [8, 13, 16], "doc": [15, 18, 21], "docker": 21, "dockerfil": 22, "document": [0, 2], "doe": [0, 4, 16, 18, 20], "don": 11, "dooh": [20, 21, 23], "dot": 0, "doubl": [0, 2, 4, 5, 10, 21, 24], "double_factor": [0, 2, 7], "double_factorized_t2": [2, 7], "double_factorized_t2_alpha_beta": [2, 7], "doublefactorizedhamiltonian": [0, 4, 5, 7, 23], "down": 14, "draw": [13, 19], "drop": [4, 15, 18], "dropneglig": [4, 7], "dtype": [0, 2, 4, 5, 9, 15, 18], "due": 20, "dump": [15, 18], "duplic": 0, "dure": 4, "e": [0, 2, 4, 8, 9, 11, 15, 16, 18, 20], "e_corr": [18, 20], "each": [0, 2, 3, 4, 5, 8, 11, 14, 16, 18, 22, 23], "edg": 0, "effect": [0, 4, 13], "effici": [8, 13, 16], "eig": [9, 16], "eigendecomposit": 12, "eigenvalu": [0, 2, 3, 9], "eigenvector": [0, 2], "eigh": [12, 23], "eigsh": 9, "einsum": 23, "either": [0, 1, 2, 4, 5, 6, 11], "electon": 4, "electron": [0, 1, 4, 5, 9, 13, 14, 15, 19, 20, 23], "element": [0, 1, 2, 4, 20, 23], "ell": 2, "els": [0, 5, 14], "elsewher": 0, "enabl": 2, "encount": 20, "end": [0, 2, 11, 12, 20, 23], "energi": [0, 3, 9, 12, 18, 20, 21, 23], "energy_nuc": [15, 18], "enough": 4, "ensur": 9, "entangl": [0, 17, 21], "entir": [2, 8], "entri": [0, 2, 4, 5, 11, 14, 23], "enum": 0, "enumer": [0, 18], "environ": 22, "epsilon": 3, "epsmch": 18, "equal": [0, 2, 6, 13], "equal_nan": 6, "equilibrium": 15, "equival": [0, 4], "err_msg": 6, "error": [0, 2, 4, 6, 23], "especi": 16, "estim": 9, "et": 2, "etc": 0, "ethen": 18, "evalu": [3, 15], "even": 13, "everi": 12, "everywher": 14, "evolut": [0, 4, 9, 23], "evolv": [0, 23], "evolved_vec": 9, "evolved_vec_2": 9, "exact": [2, 8, 9, 23], "exact_st": 23, "exampl": [0, 4, 9, 11, 13, 14, 15, 16, 18, 19, 22], "exce": [2, 15, 23], "except": [0, 2, 3], "excit": 13, "exist": [2, 4], "exp": [0, 2, 4, 6], "expand": 0, "expanded_diag_coulomb_mat": 2, "expanded_orbital_rot": 2, "expans": [2, 3], "expect": [0, 3], "expectation_one_body_pow": [0, 7], "expectation_one_body_product": [0, 7], "expectation_product_st": 0, "expens": [0, 2], "explain": [9, 11, 13, 14, 18, 23], "explan": [0, 19, 21], "explicit": 0, "explicitli": 0, "exploit": 21, "expm": 2, "expm_multipli": [9, 23], "expm_multiply_taylor": [2, 7], "exponenti": [8, 9, 23], "expos": [4, 13], "express": [11, 14, 23], "extra": 8, "extract": 20, "f": [3, 14, 15, 18, 20, 23], "facilit": 11, "fact": 15, "factor": [0, 2, 4, 5, 10, 21, 24], "failur": 6, "fake_provid": [13, 19], "fals": [0, 1, 2, 4, 5, 15, 16], "far": 16, "fast": 0, "faster": [18, 21], "fault": 11, "fci": [0, 14, 15, 18], "fci_energi": 0, "fci_vec": 0, "fcidump": 0, "fcivec": 0, "fedora": 22, "feenberg": 3, "fermi": 0, "fermi_hubbard_1d": [0, 7], "fermi_hubbard_2d": [0, 7], "fermion": [0, 4, 5, 6, 8, 10, 11, 12, 16, 19, 20, 21], "fermion_oper": [0, 7], "fermionact": [0, 7], "fermionoper": [0, 4, 5, 7, 17, 21], "few": [14, 22], "fewer": [13, 19, 23], "ffsim": [7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 22, 23], "ffsim_vec_to_qiskit_vec": [4, 7], "ffsimsampl": [4, 7], "fidel": 23, "field": [0, 2], "fifth": 13, "file": [0, 22], "filter": 0, "final": [0, 3, 4, 5, 13, 19, 23], "final_orbital_rot": 0, "final_st": [18, 23], "final_state_vector": [4, 7], "finish": 23, "finit": 3, "first": [0, 2, 4, 8, 13, 14, 18, 20, 23], "fix": 14, "flag": 0, "float": [0, 2, 3, 4, 5, 6, 9, 12, 23], "float64": [9, 15, 18], "fock": [0, 4, 11, 14, 18, 21, 23], "focu": 9, "follow": [0, 2, 3, 4, 9, 11, 12, 13, 14, 16, 18, 19, 20, 21, 22, 23], "foot": 0, "forg": [0, 17, 21], "form": [0, 1, 2, 4, 5, 8, 9, 11, 12, 16, 20, 23], "format": [0, 4], "formula": [0, 23], "fourth": [8, 13], "frac": [0, 2], "frac12": [0, 8, 9, 11], "frac18": 0, "framework": 22, "from": [0, 2, 4, 5, 6, 8, 11, 12, 13, 14, 15, 16, 18, 19, 21, 23], "from_diag_coulomb_mat": 0, "from_fcidump": 0, "from_fermion_oper": 0, "from_json": 0, "from_mol": 0, "from_molecular_hamiltonian": [0, 23], "from_orbital_rot": 0, "from_paramet": [0, 13, 18], "from_scf": [0, 15, 18, 20, 21, 23], "from_t_amplitud": [0, 18, 20], "frozen": [18, 20], "fsim": 0, "fswap": 0, "ftol": [3, 18], "full": [0, 2, 13, 14, 15], "fulli": 9, "fun": [3, 15, 18], "function": [0, 1, 2, 3, 5, 8, 9, 12, 14, 15, 16, 18, 19, 23], "fundament": 12, "further": [13, 14], "furthermor": [0, 2], "g": [0, 4, 15], "g_": 2, "g_1": 2, "g_i": 3, "g_k": 2, "g_l": 2, "gate": [0, 4, 10, 11, 15, 20, 21], "gener": [0, 3, 4, 5, 6, 8, 13, 14, 15, 19, 20, 21], "generate_norb_nelec": [6, 7], "generate_norb_nelec_spin": [6, 7], "generate_norb_nocc": [6, 7], "generate_norb_spin": [6, 7], "generate_preset_pass_manag": [13, 19], "genericbackendv2": [13, 19], "get": [0, 14, 15, 18, 20, 21, 23], "get_count": 20, "get_hcor": [15, 18], "get_ovlp": [15, 18], "git": 22, "github": [21, 22], "give": [0, 2, 8, 14, 19], "given": [0, 2, 4, 6, 8, 12], "givens_ansatz_op": 4, "givens_decomposit": [2, 7], "givensansatzop": [0, 4, 7], "givensansatzopjw": [4, 7], "givensansatzopspinlessjw": [4, 7], "givensrot": [2, 7], "global": [4, 6], "global_depolar": 4, "go": [0, 13, 16], "good": 16, "gradient": [2, 3, 18], "greater": 3, "ground": [9, 18], "gt": [15, 18, 19, 20], "gto": [15, 18, 20, 21, 23], "gtol": 3, "guarante": [4, 19], "guess": [3, 18], "guid": [11, 15, 18, 19, 20, 21], "gzip": 0, "h": [0, 8, 9, 15, 18, 20, 23], "h1_x": 15, "h2_x": 15, "h2_y": 15, "h_": [0, 2, 8, 9], "h_0": [8, 23], "h_k": [8, 23], "ha": [0, 1, 2, 4, 8, 11, 12, 13, 14, 18], "haar": 5, "ham": 14, "hamiltonian": [0, 3, 4, 5, 10, 15, 18, 20, 21, 24], "hand": 14, "handl": [20, 23], "happen": 13, "hardwar": 13, "hartre": [0, 4, 11, 14, 18, 21, 23], "hartree_fock": 0, "hartree_fock_jw": 13, "hartree_fock_st": [0, 7, 9, 14, 18, 21, 23], "hasattr": 18, "hash": 16, "have": [0, 2, 8, 9, 11, 12, 13, 14, 16, 18, 20, 22], "height": 5, "helper": 16, "here": [0, 2, 8, 12, 13, 15, 23], "hermitian": [0, 2, 5, 12], "hess_inv": [15, 18], "hf": [15, 18], "hf_energi": 0, "hf_mo_coeff": 0, "hf_mo_occ": 0, "high": 13, "higher": [0, 8, 23], "ho": 20, "hold": [0, 3], "home": [15, 18, 22], "hop": [0, 15], "hopgateansatzoper": [0, 7, 15], "hot": [0, 2], "how": [0, 8, 9, 11, 12, 13, 14, 21, 23], "howev": [8, 13, 21], "http": [0, 21, 22], "hubbard": 0, "hydroxyl": 20, "hyperparamet": [3, 18], "i": [0, 1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "idea": 11, "ident": 0, "ignor": [0, 2, 8], "ij": [0, 1, 2, 4, 8, 11, 12], "ijab": 2, "ik": 12, "imag": 22, "implement": [0, 1, 3, 4, 8, 9, 11, 12, 13, 15, 18, 20, 21, 22, 24], "import": [0, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "impos": [11, 18], "improv": [3, 23], "includ": [0, 2, 4, 5, 8, 9, 12, 13, 14, 15, 18, 19, 21, 22], "incorpor": 0, "increas": [0, 14, 23], "increment": 3, "incur": 3, "independ": [0, 1, 4, 15], "index": [0, 2, 11, 14, 16], "indic": [0, 1, 2, 4, 5, 11, 14, 16], "indices_to_str": [0, 7], "individu": [8, 14, 16], "info": 18, "inform": [0, 9, 16, 18, 21, 23], "init_cach": [0, 7], "initi": [0, 3, 4, 5, 6, 9, 11, 13, 18, 19, 20, 23], "initial_st": 23, "initiali": 15, "input": [0, 1, 3, 4, 5, 6, 18, 20], "insert": 13, "instanc": [5, 9, 23], "instead": [0, 2, 4, 5, 18, 23], "instruct": [21, 22], "instructionset": 19, "int": [0, 1, 2, 3, 4, 5, 6, 12, 15, 23], "int32": 0, "integ": [0, 2, 4, 5, 6, 14], "integr": [0, 4], "interact": [0, 1, 2, 4, 5, 11, 13, 18, 20], "interaction_pair": [0, 5, 13, 15, 18, 20], "interfac": [18, 22], "interferomet": 2, "intermedi": 18, "intermediate_result": [3, 18], "intern": 16, "interpret": [0, 5, 11], "intor_symmetr": [15, 18], "introduc": [11, 12, 23], "invers": 4, "involv": [12, 13], "ip": 2, "ipykernel_4162": 9, "is_antihermitian": [2, 7], "is_hermitian": [2, 7], "is_orthogon": [2, 7], "is_real_symmetr": [2, 7], "is_special_orthogon": [2, 7], "is_unitari": [2, 7], "isclos": 0, "isn": 4, "issu": [9, 13], "item": 20, "iter": [0, 3, 4, 6, 18], "itertool": 2, "its": [0, 2, 4, 9, 13, 14, 15, 16, 23], "itself": [0, 14, 16], "j": [0, 1, 2, 4, 5, 8, 11, 12, 14, 15, 16], "jac": [3, 15, 18], "jastrow": [0, 3, 4, 5, 10, 17, 21], "ji": [0, 4, 11, 12], "jk": 12, "job": [4, 20], "jordan": [0, 4], "jordan_wign": [4, 7], "jq": 2, "json": [0, 15, 18], "jupyt": 22, "just": [0, 14, 18, 22, 23], "jwt": 4, "k": [0, 2, 3, 8, 9, 11, 16, 20, 23], "kappa": 0, "kappa_": 0, "keep": [0, 2], "kei": 20, "kij": 23, "know": 15, "known": [0, 8], "kpi": 23, "kqi": 23, "krj": 23, "kron": 0, "ksj": 23, "kwarg": [0, 4], "l": [0, 2, 3, 8, 11, 15, 18, 23], "label": [4, 14], "ladder": [8, 11], "lambda": [0, 4, 20], "lambda_i": [0, 1, 4, 12], "lambda_k": 12, "langl": 0, "larger": [0, 2, 3, 16], "last": [0, 2, 3, 4], "later": [19, 23], "lattic": [0, 11, 13, 18, 20], "layer": [0, 2, 13, 20], "lbfgsinvhessproduct": [15, 18], "ldot": [0, 2, 8, 11, 23], "lead": 0, "least": 2, "left": [0, 4, 12, 14, 16], "len": [15, 18, 23], "length": [0, 4, 5, 14, 15], "leq": [0, 2, 5], "less": [2, 11], "let": [0, 13, 14, 16, 18, 19, 20, 23], "level": 23, "lexicograph": [0, 16], "lib": [15, 18], "libopenbla": 22, "librari": [0, 21], "like": [4, 11, 18, 22], "limit": [0, 2, 11, 13, 15], "linalg": [0, 7, 9, 12, 16, 18, 21, 23], "lindep": 3, "line": [0, 11, 13, 18], "linear": [0, 1, 2, 3, 4, 9, 12, 13, 16], "linear_oper": [0, 7, 9, 16, 18, 21, 23], "linearli": 8, "linearoper": [0, 1, 3, 16, 18, 21, 23], "linop": [9, 16, 21, 23], "linux": 22, "list": [0, 2, 4, 5, 6, 11, 14, 15, 18, 20, 23], "ll": [9, 12, 13, 15, 18, 20, 23], "lm": 16, "load": 0, "local": [10, 17, 21], "localhost": 22, "log": [0, 4], "logarithm": 11, "logic": [12, 15], "longer": 11, "longest": 0, "lookup": 0, "losslessli": 0, "low": [0, 8, 23], "lower": [0, 2], "lowest": [0, 13, 14], "lt": [15, 18, 19, 20], "lu": 2, "lucj": [10, 13, 17, 21], "lup": [2, 7], "lvert": [0, 4, 11, 14], "lzma": 0, "m": [0, 1, 2, 12], "m_": [0, 1, 2], "maco": 22, "made": 23, "magnitud": 0, "mai": [0, 2, 3, 4, 11, 22, 23], "main": [18, 22], "maintain": 8, "make": [11, 13], "manag": [4, 13, 19, 22], "mani": [0, 9, 12, 14, 21], "manual": 23, "many_body_ord": 0, "map": [0, 4, 12, 13, 16], "mapsto": [0, 4, 12], "mat": [0, 1, 2, 4, 12, 14], "mat_aa": 2, "mat_ab": 2, "mat_alpha_beta": 1, "mat_bb": 2, "match": [0, 2], "match_global_phas": [2, 7], "math": [5, 15], "mathbf": [0, 8, 11, 12], "mathcal": [0, 1, 4, 8, 11, 12], "matric": [0, 1, 2, 4, 11, 12, 23], "matrix": [0, 1, 2, 3, 4, 5, 8, 9, 11, 12, 14, 16], "max": [3, 23], "max_error": 23, "max_term_length": 5, "max_vec": [0, 2, 23], "maxfun": 15, "maximum": [0, 2, 3, 5, 23], "maxit": [3, 18], "mcscf": [15, 18], "mea": 20, "meant": [4, 19], "measur": [5, 8, 20], "measure_al": 20, "mention": 8, "merg": [4, 19], "mergeorbitalrot": [4, 7, 13], "messag": [6, 15, 18], "method": [0, 2, 3, 11, 15, 16, 20, 21], "mid": 20, "might": 2, "mind": 23, "minim": [0, 2, 3, 13, 15, 18], "minimize_linear_method": [3, 7, 18], "minimizz": 15, "minimum": 4, "mk": 2, "mkap": 2, "mkbq": 2, "mkip": 2, "mkjq": 2, "mkpq": 2, "mo_coeff": 0, "mo_occ": 0, "mode": 12, "model": 0, "modifi": [0, 2], "modified_choleski": [2, 7], "modul": [0, 14, 15, 19, 20], "mol": [15, 18, 20, 21, 23], "mol_data": [15, 18, 20, 21, 23], "mol_hamiltonian": [9, 15, 18, 20, 23], "mole": [0, 15, 18, 20, 21, 23], "molecul": [0, 18, 21, 23], "molecular": [0, 5, 9, 10, 14, 15, 18, 20, 21, 23], "moleculardata": [0, 7, 15, 18, 20, 21, 23], "molecularhamiltonian": [0, 5, 7, 9, 23], "more": [0, 2, 3, 4, 8, 9, 11, 13, 14, 19, 23], "most": [0, 2, 16, 20], "motiv": 13, "mp2": 0, "mp2_energi": 0, "mp2_t2": 0, "mpl": [13, 19], "msg": [15, 18], "mu": 0, "much": [0, 2, 8, 13, 21], "multipl": [0, 9, 16, 23], "multipli": [0, 16], "multiport": 2, "multirefer": 0, "multireference_st": [0, 7], "multireference_state_prod": [0, 7, 15], "must": [0, 2, 3, 4, 5, 16, 20], "n": [0, 2, 3, 8, 9, 11, 12, 14, 20, 21, 23], "n2": [20, 21, 23], "n_": [0, 1, 4, 8, 11, 12, 14], "n_alpha": [4, 6, 20], "n_beta": [4, 6, 20], "n_frozen": [20, 23], "n_i": 4, "n_j": 4, "n_layer": 15, "n_p": 0, "n_param": [0, 13], "n_qubit": 4, "n_rep": [0, 5, 13, 18, 19, 20], "n_sampl": 0, "n_step": [0, 4, 13, 19, 23], "n_term": 5, "n_vec": 2, "n_x": 0, "n_y": 0, "name": [0, 9, 13, 14, 19, 22], "namedtupl": [0, 2], "nan": 6, "nao_nr": [15, 18, 20, 21, 23], "nativ": 21, "navig": 22, "ndarrai": [0, 1, 2, 3, 4, 5, 6, 12, 18, 23], "nearest": 0, "nearest_neighbor_interact": 0, "need": [0, 4, 9, 11, 13, 20, 22, 23], "neg": [0, 4], "neglig": 4, "neighbor": [0, 13], "nelec": [0, 1, 4, 6, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "nelectron": 18, "neq": 0, "nest": 2, "network": 11, "new": [0, 4, 12, 16], "newli": 0, "next": [13, 15, 23], "nfev": [3, 15, 18], "nit": [15, 18], "nitrogen": [20, 23], "njev": [15, 18], "nlinop": [3, 18], "nn": 0, "nocc": [0, 5, 6], "nocc_a": 2, "nocc_b": 2, "noisi": [4, 11], "non": [4, 11], "none": [0, 1, 2, 3, 4, 5, 6], "nonzero": [0, 2, 5, 11], "norb": [0, 1, 2, 4, 5, 6, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "norb_i": 0, "norb_rang": 6, "norb_x": 0, "norm": [0, 18], "normal": [0, 15, 16], "normal_ord": [0, 16], "note": [0, 2, 3, 13, 14, 16, 19, 21], "notebook": 22, "notic": 18, "notimplementederror": 4, "now": [9, 13, 15, 18, 20, 23], "np": [0, 2, 4, 5, 6, 9, 12, 13, 15, 18, 19, 20, 21, 23], "num_num_ansatz_op": 4, "num_op_sum_linop": [1, 7], "number": [0, 1, 2, 3, 4, 5, 6, 8, 9, 12, 14, 15, 16, 18, 21, 23], "number_oper": [0, 7], "numer": [0, 2, 4, 16], "numnumansatzopspinbalanc": [0, 4, 7], "numnumansatzopspinbalancedjw": [4, 7], "numopsumevolutionjw": [4, 7, 13, 19], "numopsumevolutionspinlessjw": [4, 7], "numpi": [0, 1, 2, 4, 6, 9, 11, 12, 13, 14, 15, 18, 19, 20, 21, 23], "o": [0, 15, 20], "o_1": 0, "o_2": 0, "o_k": 0, "obj": 0, "object": [0, 2, 3, 4, 5, 9, 16, 18, 20], "obtain": [0, 8, 9, 12, 13, 18, 23], "occ_a": 6, "occ_b": 6, "occup": [0, 6, 8, 12, 14], "occupi": [0, 4, 5, 6, 13, 14], "occupied_orbit": [0, 4, 13, 19, 20], "often": [8, 11, 18], "onc": [12, 13, 22], "one": [0, 1, 2, 4, 5, 8, 9, 13, 14, 18, 20, 22, 23], "one_body_basis_chang": 23, "one_body_energi": 23, "one_body_integr": 0, "one_body_linop": [1, 7], "one_body_squar": 0, "one_body_tensor": [0, 9, 23], "one_hot": [0, 2, 7], "one_rdm": 0, "ones": 9, "onli": [0, 2, 4, 8, 11, 12, 13, 20, 22], "onsit": 0, "onto": [13, 16], "op": [0, 4, 16], "op1": [0, 16], "op2": [0, 16], "op3": 16, "op4": 16, "opaqu": 13, "open": [0, 11], "openbla": 22, "oper": [0, 1, 2, 3, 4, 5, 8, 11, 12, 16, 18, 22, 23], "oppos": 13, "opposit": [18, 20], "optim": [0, 2, 4, 7, 11, 13, 19, 21], "optimization_level": [13, 19], "optimize_kwarg": 3, "optimize_regular": 3, "optimize_vari": 3, "optimizeresult": [3, 18], "option": [0, 1, 2, 3, 4, 5, 9, 15, 18, 22], "orb": [0, 16], "orbit": [0, 1, 2, 4, 5, 6, 8, 9, 10, 11, 14, 15, 16, 18, 20, 21, 23], "orbital_rot": [0, 1, 2, 4, 12, 13, 14, 19, 20, 21, 23], "orbital_rotation_a": 2, "orbital_rotation_b": 2, "orbital_symmetri": 0, "orbitalrotationjw": [4, 7, 13, 19, 20], "orbitalrotationspinlessjw": [4, 7], "order": [0, 1, 2, 4, 5, 8, 9, 13, 14, 16, 19, 20, 23], "ordereddict": [13, 19], "org": 0, "origin": [0, 2, 11, 13, 23], "orthogon": [2, 5], "other": [0, 4, 11, 14, 18, 19, 20], "otherwis": 0, "our": [15, 18, 20, 23], "out": [2, 23], "output": [0, 3, 4, 13, 18, 20], "over": 0, "overrid": [0, 2], "overwritten": [0, 15, 18], "own": 4, "p": [0, 2, 8, 9, 11, 13, 18, 19, 20], "packag": [15, 18, 22], "pacman": 22, "pad": 0, "page": [8, 9, 11, 12, 13, 14], "pair": [0, 1, 2, 4, 5, 6, 11, 13, 14], "pairs_aa": [13, 18, 20], "pairs_ab": [13, 18, 20], "pairs_bb": 20, "paper": 11, "parallel": [2, 11, 13], "param": 0, "paramet": [0, 1, 2, 3, 4, 5, 6, 11, 15, 18], "parameter_valu": 4, "params_to_vec": [3, 18], "pars": [15, 18], "part": [0, 5, 8, 12, 14, 15], "particl": [0, 5, 6, 12, 16, 21], "pass": [0, 1, 2, 4, 9, 12, 13, 14, 15, 16, 18, 19], "pass_manag": [13, 19], "passmanag": [4, 13], "path": 0, "pathlik": 0, "pattern": [13, 15], "pauli": 0, "per": 23, "perform": [0, 2, 3, 8, 9, 12, 13, 20, 23], "period": 0, "periodic_i": 0, "periodic_x": 0, "permut": 2, "persist": 22, "ph": 5, "phase": [0, 2, 4, 6, 13], "phase_angl": 0, "phaseg": 13, "phi": [0, 2, 6], "phi_0": 11, "pi": [0, 15], "piec": [9, 16], "pip": 21, "pipelin": 13, "pivot": 2, "pk": 2, "place": [0, 2, 11, 13, 16, 22], "plain": 14, "pmatrix": [0, 2], "point": 0, "polar": 0, "posit": [2, 3, 14], "possibl": [0, 2, 6, 20, 21], "possibli": [0, 18], "potenti": 0, "power": 0, "pq": [0, 2, 8, 9], "pqr": [0, 2, 8, 9, 23], "practic": 8, "pre": [11, 19], "pre_init": [4, 7, 13, 19], "pre_init_pass": [4, 7, 19], "precis": 6, "prepar": [0, 4, 20], "preparehartreefockjw": [4, 7, 13, 19, 20], "preparehartreefockspinlessjw": [4, 7, 20], "prepareslaterdeterminantjw": [4, 7, 13, 19, 20], "prepareslaterdeterminantspinlessjw": [4, 7, 20], "present": 3, "preserv": [16, 20], "preset_passmanag": [13, 19], "previou": [18, 20], "previous": [8, 13, 14, 18], "primit": [4, 17, 21], "primitivejob": 4, "primitiveresult": 4, "print": [0, 6, 13, 14, 15, 16, 18, 20, 21, 23], "probabl": [0, 4], "problem": 3, "process": 0, "processor": 11, "prod": 15, "prod_": [0, 4, 11], "prod_k": 8, "prod_state_sum": 0, "produc": [0, 13], "product": [0, 2, 8, 14, 15, 16], "productstatesum": [0, 7], "programmat": 16, "properti": [0, 2, 12], "proport": [0, 8], "protocol": 0, "provid": [9, 13, 19, 22], "pseudorandom": [0, 4, 5, 6], "psi": [0, 11], "pub": [4, 20], "pub_result": 20, "put": 15, "py": [9, 15, 18], "pypi": 22, "pyscf": [0, 4, 14, 15, 18, 20, 21, 23], "python3": [15, 18], "q": [0, 8, 9, 13, 19], "qdrift": 0, "qi": 0, "qiskit": [7, 13, 17, 21, 22], "qiskit_vec_to_ffsim_vec": [4, 7], "qk": 2, "quadrat": [8, 10, 21, 23], "qualnam": 0, "quantifi": 2, "quantiti": 0, "quantum": [0, 4, 8, 11, 13, 14, 17, 20, 21], "quantumcircuit": [4, 13, 19, 20], "quantumregist": [13, 19, 20], "qubit": [0, 4, 10, 11, 15, 19, 20, 21], "r": [0, 2, 8, 9], "radic": 20, "radius_1": 15, "radius_2": 15, "rais": [0, 2, 4, 6], "random": [0, 4, 6, 7, 9, 13, 14, 15, 16, 19, 20, 21], "random_antihermitian": [5, 7], "random_diagonal_coulomb_hamiltonian": [5, 7], "random_double_factorized_hamiltonian": [5, 7, 13, 19], "random_fermion_hamiltonian": [5, 7], "random_fermion_oper": [5, 7], "random_hermitian": [5, 7], "random_molecular_hamiltonian": [5, 7], "random_nelec": [6, 7], "random_occupied_orbit": [6, 7], "random_orthogon": [5, 7], "random_real_symmetric_matrix": [5, 7, 9, 13, 19, 20], "random_special_orthogon": [5, 7], "random_state_vector": [5, 7, 16], "random_statevector": [5, 7], "random_t2_amplitud": [5, 7], "random_two_body_tensor": [5, 7, 9], "random_uccsd_restrict": [5, 7], "random_ucj_op_spin_balanc": [5, 7, 13, 19], "random_ucj_op_spin_unbalanc": [5, 7, 19], "random_ucj_op_spinless": [5, 7], "random_unitari": [5, 7, 13, 14, 19, 20, 21], "rang": [0, 2, 6, 13, 14, 15, 18, 20, 21, 23], "rangl": [0, 4, 11, 14], "rank": [0, 2, 5, 8, 13], "rather": [0, 5, 12, 14], "rccsd": 20, "rdm": [0, 7], "rdm1": 0, "rdm2": 0, "rdm3": 0, "rdm4": 0, "read": 0, "real": [0, 1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 18, 21], "reason": [4, 12], "recal": 13, "recommend": [4, 13, 16, 19, 21], "reconstruct": [0, 2, 23], "reconstruct_t2_alpha_beta": 2, "recover": 0, "reduc": [0, 2, 13], "reduced_matrix": [2, 7], "reduced_matrix_product_st": 0, "reduct": 18, "redund": 11, "refer": [0, 2, 3, 4, 5, 6, 11, 12, 14, 18, 21], "reference_occup": [0, 15], "reference_occupations_spati": 15, "reference_st": 18, "regress": 0, "regular": [3, 18], "rel": [0, 2, 4, 6, 18], "rel_reduction_of_f_": 18, "relat": 12, "releas": 21, "reorder": [0, 8], "rep": 13, "repeat": 15, "repeatedli": 12, "repetit": [0, 5, 11, 13, 18], "repositori": 22, "repr": 16, "repres": [0, 2, 3, 4, 5, 6, 9, 11, 14, 16, 18, 19], "represent": [0, 1, 2, 4, 5, 10, 14, 16, 21, 23], "reproduc": 23, "request": 0, "requir": [0, 9, 11, 13, 14, 22], "reshap": 14, "respect": [0, 2, 3, 23], "rest": [0, 13], "restrict": [0, 5, 13, 18], "result": [0, 1, 2, 3, 4, 5, 8, 9, 11, 13, 15, 18, 19, 20, 23], "retain": [0, 13], "retriev": 20, "return": [0, 1, 2, 3, 4, 5, 6, 12, 15, 16, 18, 23], "return_lower_rank": 0, "revers": 20, "rewrit": 0, "rewritten": 12, "rhf": [0, 15, 18, 20, 21, 23], "right": [0, 4, 12, 14, 16], "ring": 0, "rise": [2, 8], "rng": [9, 13, 15, 19, 20], "rohf": 20, "root": 0, "rotat": [0, 1, 2, 4, 5, 8, 10, 11, 14, 21, 23], "rotated_vec": 14, "routin": [2, 9, 16], "row": [0, 2, 14], "rtol": [0, 2, 4, 6], "rtype": [0, 2, 4], "run": [0, 4, 13, 15, 18, 19, 20, 21, 22, 23], "run_ccsd": 0, "run_cisd": 0, "run_fci": [0, 15, 18], "run_mp2": 0, "run_sci": 0, "rung": 11, "runner": [15, 18], "rust": 22, "rvert": 0, "s_": [0, 14], "s_a": 0, "s_b": 0, "sa": 9, "same": [0, 9, 11, 12, 13, 14, 15, 18, 20], "sampl": [0, 4, 5, 6, 9], "sample_slater_determin": [0, 7], "sample_state_vector": [0, 7], "sampler": [0, 4, 17, 21], "samplerpubresult": 4, "sandwich": 13, "satisfi": [0, 12, 16, 20, 22], "save": [0, 18, 22], "scalar": [0, 16], "scale": [8, 13, 15, 19], "scf": [0, 15, 18, 20, 21, 23], "scf_func": 0, "scheme": 8, "sci": 0, "sci_energi": 0, "sci_vec": 0, "scipi": [0, 2, 3, 15, 16, 18, 21, 23], "search": 14, "second": [0, 2, 4, 8], "section": [8, 19], "sector": [0, 1, 2, 4, 15], "see": [0, 2, 4, 11, 13, 14, 19, 22, 23], "seed": [0, 4, 5, 6, 9, 13, 14, 19, 20, 21], "seen": 20, "select": 3, "sens": [13, 23], "separ": [0, 11, 14], "sequenc": [0, 2, 4, 13], "seri": 2, "serial": 0, "serializ": [15, 18], "set": [0, 1, 2, 4, 5, 8, 11, 12, 13, 19, 23], "setup": 11, "sever": [9, 13], "shape": [0, 2, 5, 11, 23], "share": 11, "shell": [11, 18], "shot": [0, 4, 20], "should": [0, 1, 2, 4, 5, 6, 9, 12, 22], "show": [13, 15, 16, 18, 19, 20], "shown": 16, "side": 0, "sigma": [0, 1, 4, 8, 9, 11, 12], "sign": 0, "signatur": 3, "signific": 23, "significantli": 13, "similar": 18, "simpl": [20, 22], "simpler": 0, "simpli": [4, 13, 14], "simplist": 23, "simul": [0, 4, 8, 11, 12, 14, 17, 21, 24], "simulate_qdrift_double_factor": [0, 7], "simulate_trotter_diag_coulomb_split_op": [0, 7], "simulate_trotter_double_factor": [0, 7, 8, 23], "simulate_trotter_step_double_factor": 23, "simulatetrotterdiagcoulombsplitopjw": [4, 7], "simulatetrotterdoublefactorizedjw": [4, 7, 13, 19], "sin": [0, 15], "sinc": [0, 2, 11, 12, 15, 18], "singl": [0, 1, 4, 6, 8, 13, 23], "singlefactorizedhamiltonian": [0, 7], "singular": [0, 2], "site": [0, 15, 18], "size": [0, 3, 15], "slater": [0, 4], "slater_determin": [0, 7], "slater_determinant_amplitud": [0, 7], "slater_determinant_rdm": [0, 7], "slice": 2, "small": 2, "smaller": [0, 2, 8, 16, 23], "so": [0, 2, 6, 8, 11, 12, 13, 15, 16, 22, 23], "softwar": [0, 21], "solv": 3, "some": [0, 2, 6, 9, 13, 14, 16, 18, 20], "sometim": [0, 14], "sort": 20, "sourc": [0, 1, 2, 3, 4, 5, 6, 21], "space": [0, 9, 14, 15, 18, 20, 23], "span": [0, 2], "spars": [9, 16, 23], "sparsepauliop": 4, "sparsiti": 11, "spatial": [0, 1, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 23], "speci": [4, 6], "special": [2, 5, 11, 13, 21], "specif": 14, "specifi": [0, 1, 2, 3, 4, 5, 6, 9, 11, 13, 15, 23], "spectral": 0, "spin": [0, 1, 2, 4, 5, 6, 7, 12, 13, 14, 15, 16, 18, 20, 21], "spin_squar": [0, 7], "spin_sum": 0, "spinless": [0, 4, 5, 6], "split": [0, 4, 23], "squar": [0, 2, 11, 13, 18, 20], "stack": 0, "stage": [4, 13, 19], "standard": 18, "standard_norm": [9, 13, 19], "star": 2, "start": 0, "state": [0, 1, 3, 4, 5, 9, 10, 11, 12, 13, 18, 20, 21, 23], "statevector": [0, 4, 7], "static": 0, "statist": 20, "statu": [15, 18], "step": [0, 4, 8, 12, 15, 19, 23], "step_tim": 23, "still": [0, 8], "sto": [0, 15, 18, 23], "stop": [3, 15], "store": [0, 2, 4, 6, 9, 11, 13, 18, 19, 23], "store_cisd_vec": 0, "store_fci_vec": 0, "store_sci_vec": 0, "store_t1": 0, "store_t2": 0, "str": [0, 2, 4, 6], "straightforward": 2, "strategi": 0, "strength": 0, "strictli": 3, "string": [0, 14, 16], "strings_a": 0, "strings_b": 0, "strings_to_address": [0, 7], "strings_to_indic": [0, 7], "structur": [0, 8], "sub": 0, "subdirectori": 22, "submit": 20, "subroutin": 12, "subspac": [0, 2, 16], "substitut": [0, 5], "subsystem": [14, 22], "subtract": [0, 16], "success": [15, 18], "sudo": 22, "suffix": 15, "suggest": 19, "sum": [0, 4, 8, 23], "sum_": [0, 1, 2, 4, 8, 9, 11, 12, 23], "sum_j": 12, "sum_k": [8, 12], "sum_p": 0, "sum_t": 0, "summat": 0, "support": [0, 2, 9, 14, 16, 20, 22], "supportsapplyunitari": [0, 7], "supportsapproximateequ": [0, 7], "supportsdiagon": [0, 7], "supportsfermionoper": [0, 7], "supportslinearoper": [0, 7], "supportstrac": [0, 7], "suzuki": [0, 23], "swap": [0, 11, 13], "symmetr": [0, 2, 4, 5, 8, 11], "symmetri": [0, 12, 15, 18, 20, 21, 23], "system": [0, 4, 6, 12, 14, 22], "t": [0, 2, 4, 8, 11, 12, 20, 21], "t1": 0, "t1a": 0, "t1b": 0, "t2": [0, 2, 5, 18, 20], "t2_amplitud": 2, "t2aa": 0, "t2ab": 0, "t2bb": 0, "t_": 2, "tabl": [0, 16], "take": [0, 3, 18, 19], "taken": 11, "target": [2, 13], "target_orb": 0, "tau": [0, 1, 4, 8, 9, 11], "taylor": 2, "tensor": [0, 1, 2, 5, 8, 9, 18, 23], "term": [0, 2, 5, 8, 11, 16, 23], "test": [7, 21, 23], "text": [0, 8, 9], "th": [2, 12], "than": [0, 4, 5, 12, 13, 14, 18, 21], "thei": [0, 9, 11, 12, 16], "them": [11, 13, 14], "therefor": [0, 2, 11], "theta": [0, 15], "thi": [0, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 18, 19, 20, 21, 22, 23], "think": 2, "third": [0, 2], "those": [3, 18], "though": 13, "three": [0, 1, 4, 9, 16], "threshold": [0, 2, 3], "thu": 8, "time": [0, 2, 3, 4, 9, 13, 14, 19, 20, 23], "titl": 21, "tmp": [9, 15, 18], "tmpegdtop9g": 18, "tmpq681a8rd": 15, "to_diag_coulomb_mat": 0, "to_fcidump": 0, "to_json": 0, "to_molecular_hamiltonian": 0, "to_number_represent": 0, "to_orbital_rot": 0, "to_paramet": [0, 18], "to_z_represent": 0, "tol": [0, 2, 23], "toler": [0, 2, 4, 6, 11, 23], "too": 2, "top": 20, "topologi": [11, 13, 18], "toru": 0, "total": [4, 8, 15, 23], "tox": [15, 18], "trace": [0, 7, 9, 23], "tracea": [9, 23], "trajectori": 0, "transform": [0, 1, 4], "transformationpass": 4, "transpil": [4, 13, 17, 21], "transpiled_opt": 13, "treat": 0, "triangl": 11, "trianglular": [0, 2], "triangular": [0, 2, 4, 5], "triplet": 6, "trotter": [0, 4, 21, 24], "true": [0, 2, 3, 4, 6, 16, 18, 20], "truncat": 8, "try": 23, "tunnel": 0, "tupl": [0, 1, 2, 4, 5, 6, 12, 15, 16, 23], "tutori": [21, 23], "twice": [0, 15, 19], "two": [0, 2, 5, 8, 9, 11, 13, 14, 15, 18, 22, 23], "two_body_integr": 0, "two_body_tensor": [0, 2, 9, 23], "type": [0, 1, 2, 3, 4, 5, 6, 20, 22], "typeerror": 0, "typic": 0, "u": [0, 1, 2, 4, 8, 11, 12], "u_": 4, "u_k": 0, "ubuntu": 22, "uccsd": [0, 5, 20], "uccsdoprestrictedr": [0, 5, 7], "ucj": [0, 4, 5], "ucj_balanced_jw": 13, "ucj_op": [4, 13, 19, 20], "ucjoperatorjw": 4, "ucjopspinbalanc": [0, 4, 5, 7, 11, 13, 18, 20], "ucjopspinbalancedjw": [4, 7, 13, 19, 20], "ucjopspinless": [0, 4, 5, 7], "ucjopspinlessjw": [4, 7], "ucjopspinunbalanc": [0, 4, 5, 7, 11, 20], "ucjopspinunbalancedjw": [4, 7, 13, 19, 20], "uhf": 20, "unbalanc": [0, 4, 5, 20], "uncorrel": 0, "under": [0, 4], "underli": 4, "unifi": 20, "uniform": [0, 4, 5], "unimpl": 4, "union": [2, 4], "unit": 2, "unitari": [0, 1, 2, 4, 5, 8, 10, 12, 14, 17, 21], "univers": 2, "unlik": 0, "unord": 0, "untouch": 0, "up": [0, 2, 6, 8, 14, 22], "updat": [0, 8], "upon": 16, "upper": [0, 2, 4, 5, 11], "url": 21, "us": [0, 1, 2, 3, 4, 5, 8, 9, 11, 12, 13, 14, 15, 17, 18, 19, 21, 23], "usag": [0, 2, 16, 19], "user": 22, "userwarn": [9, 15, 18], "usual": 0, "util": [2, 5, 6, 8], "v": [0, 20], "v_": 0, "v_i": 2, "v_j": 2, "vacuum": 4, "valid": [0, 4, 5, 6], "valu": [0, 1, 2, 3, 4, 5, 6, 9, 11, 18, 19, 23], "valueerror": [0, 2, 4], "vari": [0, 4], "variabl": [14, 23], "variant": [11, 13, 18], "variat": [0, 3, 11, 18], "variation": 18, "varphi": 0, "vdot": [18, 21, 23], "ve": 23, "vec": [0, 1, 2, 4, 9, 12, 14, 16, 21, 23], "vec_a": 0, "vec_b": 0, "vector": [0, 1, 2, 3, 4, 5, 9, 10, 11, 12, 15, 16, 18, 21], "verbos": 6, "verifi": 2, "version": 4, "vertic": 0, "via": [0, 23], "view": [0, 16], "volum": 22, "w": 0, "wa": [0, 3, 4, 11], "wai": 11, "want": 13, "warn": [9, 15, 18, 20], "water": 15, "wavefunct": [3, 18], "we": [0, 2, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "web": 22, "weight": 14, "well": [3, 14, 21, 22, 23], "when": [0, 3, 4, 9, 11, 13, 14, 16, 19, 21], "whenev": 0, "where": [0, 1, 2, 3, 4, 5, 8, 11, 12, 14, 22, 23], "whether": [0, 1, 2, 3, 4, 5, 16], "which": [0, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 22, 23], "while": [8, 11], "whose": [0, 2, 14], "width": 5, "wigner": [0, 4], "william": 2, "window": [21, 22], "wise": 2, "with_final_orbital_rot": [0, 5], "with_phase_angl": 0, "with_phi": 0, "within": [0, 2, 13, 16, 18, 21], "without": [11, 13, 18], "won": 21, "word": [0, 11, 20], "work": [9, 13, 15, 18, 19, 21, 22], "workflow": 20, "would": [13, 14], "wrapper": 23, "write": 23, "written": 8, "wrote": 23, "wsl": 22, "x": [0, 3, 4, 13, 15, 18, 19, 20], "x0": [3, 15, 18], "xx_plus_yi": [13, 19], "xxplusyyg": [13, 19], "y": 0, "yaml": 22, "yet": [9, 18], "yield": [0, 2, 4, 8, 11, 15, 23], "you": [0, 1, 2, 4, 9, 14, 18, 21, 22, 23], "your": [19, 22], "z": [0, 1, 2, 4, 5, 12, 16, 21], "z_represent": [0, 1, 4, 5], "zero": [0, 2, 4, 9, 19], "zip": [0, 15, 18, 23], "\u03c8": 18}, "titles": ["ffsim", "ffsim.contract", "ffsim.linalg", "ffsim.optimize", "ffsim.qiskit", "ffsim.random", "ffsim.testing", "API reference", "Double-factorized representation of the molecular Hamiltonian", "Hamiltonians", "Explanations", "The local unitary cluster Jastrow (LUCJ) ansatz", "Orbital rotations and quadratic Hamiltonians", "Qubit gate decompositions of fermionic gates", "State vectors and gates", "How to simulate entanglement forging", "How to use the FermionOperator class", "How-to guides", "How to simulate the local unitary cluster Jastrow (LUCJ) ansatz", "How to build and transpile Qiskit quantum circuits", "How to use ffsim\u2019s Qiskit Sampler primitive", "ffsim", "Installation", "Implementing Trotter simulation of the double-factorized Hamiltonian", "Tutorials"], "titleterms": {"": 20, "The": 11, "action": 9, "an": 20, "ansatz": [11, 15, 18], "api": 7, "applic": 8, "background": 8, "balanc": [11, 19], "brief": 8, "build": [15, 19, 23], "can": 20, "choos": 15, "circuit": [19, 20], "cite": 21, "class": 16, "close": 20, "cluster": [11, 13, 18, 19], "code": 21, "comput": 15, "content": 21, "contract": 1, "coulomb": [13, 19], "criteria": 20, "data": 9, "decomposit": 13, "determin": [13, 19], "diagon": [13, 19], "docker": 22, "doubl": [8, 13, 19, 23], "energi": 15, "entangl": 15, "evolut": [8, 12, 13, 19], "exampl": [20, 21], "explan": 10, "factor": [8, 13, 19, 23], "fermion": [13, 14], "fermionoper": 16, "ffsim": [0, 1, 2, 3, 4, 5, 6, 20, 21], "ffsimsampl": 20, "fock": [13, 19], "forg": 15, "formula": 8, "from": [20, 22], "gate": [13, 14, 19], "gener": [11, 18], "guid": 17, "hamiltonian": [8, 9, 12, 13, 19, 23], "hartre": [13, 19], "how": [15, 16, 17, 18, 19, 20], "implement": 23, "initi": 15, "instal": [21, 22], "jastrow": [11, 13, 18, 19], "linalg": 2, "linear": 18, "linearoper": 9, "local": [11, 13, 18], "lucj": [11, 18, 20], "merg": 13, "method": 18, "molecul": [15, 20], "molecular": 8, "more": 20, "number": [13, 19], "occup": 15, "open": 20, "oper": [9, 13, 15, 19], "optim": [3, 15, 18], "orbit": [12, 13, 19], "overview": 19, "pip": 22, "prepar": [13, 19], "primit": 20, "qiskit": [4, 19, 20], "quadrat": 12, "quantum": 19, "qubit": 13, "random": 5, "refer": [7, 15], "represent": [8, 9], "rotat": [12, 13, 19], "sampl": 20, "sampler": 20, "scipi": 9, "shell": 20, "simul": [13, 15, 18, 19, 23], "slater": [13, 19], "sourc": 22, "spin": [11, 19], "spinless": 14, "state": [14, 19], "sum": [13, 19], "suzuki": 8, "test": 6, "time": [8, 12], "transform": 19, "transpil": 19, "treat": 14, "trotter": [8, 13, 19, 23], "tutori": 24, "ucj": [11, 13, 18, 19], "unbalanc": [11, 19], "unitari": [11, 13, 18, 19], "us": [16, 20, 22], "vector": 14, "via": [8, 9], "within": 22}}) \ No newline at end of file +Search.setIndex({"alltitles": {"API reference": [[7, null]], "Application to the double-factorized Hamiltonian": [[8, "Application-to-the-double-factorized-Hamiltonian"]], "Application to time evolution via Trotter-Suzuki formulas": [[8, "Application-to-time-evolution-via-Trotter-Suzuki-formulas"]], "Brief background on Trotter-Suzuki formulas": [[8, "Brief-background-on-Trotter-Suzuki-formulas"]], "Build a molecule": [[15, "Build-a-molecule"]], "Build the Hamiltonian": [[23, "Build-the-Hamiltonian"]], "Choose reference occupations": [[15, "Choose-reference-occupations"]], "Circuit transpilation": [[19, "Circuit-transpilation"]], "Citing ffsim": [[21, "citing-ffsim"]], "Code example": [[21, "code-example"]], "Compute energy": [[15, "Compute-energy"]], "Contents": [[21, "contents"]], "Criteria for circuits that FfsimSampler can sample": [[20, "Criteria-for-circuits-that-FfsimSampler-can-sample"]], "Data representation": [[9, "Data-representation"]], "Diagonal Coulomb evolution": [[13, "Diagonal-Coulomb-evolution"], [19, "Diagonal-Coulomb-evolution"]], "Double-factorized representation": [[8, "Double-factorized-representation"]], "Double-factorized representation of the molecular Hamiltonian": [[8, null]], "Example of using FfsimSampler": [[20, "Example-of-using-FfsimSampler"]], "Explanations": [[10, null]], "Gates": [[14, "Gates"]], "General UCJ ansatz": [[18, "General-UCJ-ansatz"]], "Hamiltonians": [[9, null]], "Hartree-Fock and Slater determinant preparation": [[13, "Hartree-Fock-and-Slater-determinant-preparation"]], "How to build and transpile Qiskit quantum circuits": [[19, null]], "How to simulate entanglement forging": [[15, null]], "How to simulate the local unitary cluster Jastrow (LUCJ) ansatz": [[18, null]], "How to use ffsim\u2019s Qiskit Sampler primitive": [[20, null]], "How to use the FermionOperator class": [[16, null]], "How-to guides": [[17, null]], "Implement Trotter simulation": [[23, "Implement-Trotter-simulation"]], "Implementing Trotter simulation of the double-factorized Hamiltonian": [[23, null]], "Initialize ansatz operator": [[15, "Initialize-ansatz-operator"]], "Install from source": [[22, "install-from-source"]], "Installation": [[21, "installation"], [22, null]], "LUCJ ansatz": [[18, "LUCJ-ansatz"]], "Locality in the UCJ operator": [[13, "Locality-in-the-UCJ-operator"]], "Merging orbital rotations": [[13, "Merging-orbital-rotations"]], "More examples": [[20, "More-examples"]], "Number operator sum evolution": [[13, "Number-operator-sum-evolution"], [19, "Number-operator-sum-evolution"]], "Operator action via SciPy LinearOperators": [[9, "Operator-action-via-SciPy-LinearOperators"]], "Optimize energy": [[15, "Optimize-energy"]], "Optimize with the linear method": [[18, "Optimize-with-the-linear-method"]], "Orbital rotation": [[13, "Orbital-rotation"], [19, "Orbital-rotation"]], "Orbital rotations": [[12, "Orbital-rotations"]], "Orbital rotations and quadratic Hamiltonians": [[12, null]], "Overview of gates": [[19, "Overview-of-gates"]], "Pip install": [[22, "pip-install"]], "Prepare Hartree-Fock state": [[19, "Prepare-Hartree-Fock-state"]], "Prepare Slater determinant": [[19, "Prepare-Slater-determinant"]], "Qubit gate decompositions of fermionic gates": [[13, null]], "Sampling from an LUCJ circuit for a closed-shell molecule": [[20, "Sampling-from-an-LUCJ-circuit-for-a-closed-shell-molecule"]], "Sampling from an LUCJ circuit for an open-shell molecule": [[20, "Sampling-from-an-LUCJ-circuit-for-an-open-shell-molecule"]], "Spin-balanced and spin-unbalanced ansatzes": [[11, "Spin-balanced-and-spin-unbalanced-ansatzes"]], "Spin-balanced unitary cluster Jastrow (UCJ) operator": [[19, "Spin-balanced-unitary-cluster-Jastrow-(UCJ)-operator"]], "Spin-unbalanced unitary cluster Jastrow (UCJ) operator": [[19, "Spin-unbalanced-unitary-cluster-Jastrow-(UCJ)-operator"]], "State preparation gates": [[19, "State-preparation-gates"]], "State vectors": [[14, "State-vectors"]], "State vectors and gates": [[14, null]], "The general unitary cluster Jastrow (UCJ) ansatz": [[11, "The-general-unitary-cluster-Jastrow-(UCJ)-ansatz"]], "The local UCJ (LUCJ) ansatz": [[11, "The-local-UCJ-(LUCJ)-ansatz"]], "The local unitary cluster Jastrow (LUCJ) ansatz": [[11, null]], "Time evolution by a quadratic Hamiltonian": [[12, "Time-evolution-by-a-quadratic-Hamiltonian"]], "Treating spinless fermions": [[14, "Treating-spinless-fermions"]], "Trotter simulation of double-factorized Hamiltonian": [[13, "Trotter-simulation-of-double-factorized-Hamiltonian"], [19, "Trotter-simulation-of-double-factorized-Hamiltonian"]], "Tutorials": [[24, null]], "Unitary cluster Jastrow (UCJ) operator": [[13, "Unitary-cluster-Jastrow-(UCJ)-operator"]], "Unitary transformation gates": [[19, "Unitary-transformation-gates"]], "Use within Docker": [[22, "use-within-docker"]], "ffsim": [[0, null], [21, null]], "ffsim.contract": [[1, null]], "ffsim.linalg": [[2, null]], "ffsim.optimize": [[3, null]], "ffsim.qiskit": [[4, null]], "ffsim.random": [[5, null]], "ffsim.testing": [[6, null]]}, "docnames": ["api/ffsim", "api/ffsim.contract", "api/ffsim.linalg", "api/ffsim.optimize", "api/ffsim.qiskit", "api/ffsim.random", "api/ffsim.testing", "api/index", "explanations/double-factorized", "explanations/hamiltonians", "explanations/index", "explanations/lucj", "explanations/orbital-rotation", "explanations/qiskit-gate-decompositions", "explanations/state-vectors-and-gates", "how-to-guides/entanglement-forging", "how-to-guides/fermion-operator", "how-to-guides/index", "how-to-guides/lucj", "how-to-guides/qiskit-circuits", "how-to-guides/qiskit-sampler", "index", "install", "tutorials/double-factorized-trotter", "tutorials/index"], "envversion": {"nbsphinx": 4, "sphinx": 64, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["api/ffsim.rst", "api/ffsim.contract.rst", "api/ffsim.linalg.rst", "api/ffsim.optimize.rst", "api/ffsim.qiskit.rst", "api/ffsim.random.rst", "api/ffsim.testing.rst", "api/index.md", "explanations/double-factorized.ipynb", "explanations/hamiltonians.ipynb", "explanations/index.md", "explanations/lucj.ipynb", "explanations/orbital-rotation.ipynb", "explanations/qiskit-gate-decompositions.ipynb", "explanations/state-vectors-and-gates.ipynb", "how-to-guides/entanglement-forging.ipynb", "how-to-guides/fermion-operator.ipynb", "how-to-guides/index.md", "how-to-guides/lucj.ipynb", "how-to-guides/qiskit-circuits.ipynb", "how-to-guides/qiskit-sampler.ipynb", "index.md", "install.md", "tutorials/double-factorized-trotter.ipynb", "tutorials/index.md"], "indexentries": {"__init__() (ffsim.qiskit.diagcoulombevolutionjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW.__init__", false]], "__init__() (ffsim.qiskit.diagcoulombevolutionspinlessjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.dropnegligible method)": [[4, "ffsim.qiskit.DropNegligible.__init__", false]], "__init__() (ffsim.qiskit.ffsimsampler method)": [[4, "ffsim.qiskit.FfsimSampler.__init__", false]], "__init__() (ffsim.qiskit.givensansatzopjw method)": [[4, "ffsim.qiskit.GivensAnsatzOpJW.__init__", false]], "__init__() (ffsim.qiskit.givensansatzopspinlessjw method)": [[4, "ffsim.qiskit.GivensAnsatzOpSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.numnumansatzopspinbalancedjw method)": [[4, "ffsim.qiskit.NumNumAnsatzOpSpinBalancedJW.__init__", false]], "__init__() (ffsim.qiskit.numopsumevolutionjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionJW.__init__", false]], "__init__() (ffsim.qiskit.numopsumevolutionspinlessjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.orbitalrotationjw method)": [[4, "ffsim.qiskit.OrbitalRotationJW.__init__", false]], "__init__() (ffsim.qiskit.orbitalrotationspinlessjw method)": [[4, "ffsim.qiskit.OrbitalRotationSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.preparehartreefockjw method)": [[4, "ffsim.qiskit.PrepareHartreeFockJW.__init__", false]], "__init__() (ffsim.qiskit.preparehartreefockspinlessjw method)": [[4, "ffsim.qiskit.PrepareHartreeFockSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.prepareslaterdeterminantjw method)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantJW.__init__", false]], "__init__() (ffsim.qiskit.prepareslaterdeterminantspinlessjw method)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.simulatetrotterdiagcoulombsplitopjw method)": [[4, "ffsim.qiskit.SimulateTrotterDiagCoulombSplitOpJW.__init__", false]], "__init__() (ffsim.qiskit.simulatetrotterdoublefactorizedjw method)": [[4, "ffsim.qiskit.SimulateTrotterDoubleFactorizedJW.__init__", false]], "__init__() (ffsim.qiskit.ucjopspinbalancedjw method)": [[4, "ffsim.qiskit.UCJOpSpinBalancedJW.__init__", false]], "__init__() (ffsim.qiskit.ucjopspinlessjw method)": [[4, "ffsim.qiskit.UCJOpSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.ucjopspinunbalancedjw method)": [[4, "ffsim.qiskit.UCJOpSpinUnbalancedJW.__init__", false]], "action (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.action", false]], "active_space (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.active_space", false]], "addresses_to_strings() (in module ffsim)": [[0, "ffsim.addresses_to_strings", false]], "alpha (ffsim.spin attribute)": [[0, "ffsim.Spin.ALPHA", false]], "alpha_and_beta (ffsim.spin attribute)": [[0, "ffsim.Spin.ALPHA_AND_BETA", false]], "apply_diag_coulomb_evolution() (in module ffsim)": [[0, "ffsim.apply_diag_coulomb_evolution", false]], "apply_fsim_gate() (in module ffsim)": [[0, "ffsim.apply_fsim_gate", false]], "apply_fswap_gate() (in module ffsim)": [[0, "ffsim.apply_fswap_gate", false]], "apply_givens_rotation() (in module ffsim)": [[0, "ffsim.apply_givens_rotation", false]], "apply_hop_gate() (in module ffsim)": [[0, "ffsim.apply_hop_gate", false]], "apply_matrix_to_slices() (in module ffsim.linalg)": [[2, "ffsim.linalg.apply_matrix_to_slices", false]], "apply_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_interaction", false]], "apply_num_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_num_interaction", false]], "apply_num_op_prod_interaction() (in module ffsim)": [[0, "ffsim.apply_num_op_prod_interaction", false]], "apply_num_op_sum_evolution() (in module ffsim)": [[0, "ffsim.apply_num_op_sum_evolution", false]], "apply_on_site_interaction() (in module ffsim)": [[0, "ffsim.apply_on_site_interaction", false]], "apply_orbital_rotation() (in module ffsim)": [[0, "ffsim.apply_orbital_rotation", false]], "apply_tunneling_interaction() (in module ffsim)": [[0, "ffsim.apply_tunneling_interaction", false]], "apply_unitary() (in module ffsim)": [[0, "ffsim.apply_unitary", false]], "approx_eq() (in module ffsim)": [[0, "ffsim.approx_eq", false]], "assert_allclose_up_to_global_phase() (in module ffsim.testing)": [[6, "ffsim.testing.assert_allclose_up_to_global_phase", false]], "atom (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.atom", false]], "basis (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.basis", false]], "beta (ffsim.spin attribute)": [[0, "ffsim.Spin.BETA", false]], "bit_array (ffsim.bitstringtype attribute)": [[0, "ffsim.BitstringType.BIT_ARRAY", false]], "bitstringtype (class in ffsim)": [[0, "ffsim.BitstringType", false]], "c (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.c", false]], "ccsd_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_energy", false]], "ccsd_t1 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_t1", false]], "ccsd_t2 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_t2", false]], "cisd_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.cisd_energy", false]], "cisd_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.cisd_vec", false]], "coeffs (ffsim.productstatesum attribute)": [[0, "ffsim.ProductStateSum.coeffs", false]], "conserves_particle_number() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_particle_number", false]], "conserves_spin_z() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_spin_z", false]], "constant (ffsim.diagonalcoulombhamiltonian attribute)": [[0, "ffsim.DiagonalCoulombHamiltonian.constant", false]], "constant (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.constant", false]], "constant (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.constant", false]], "constant (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.constant", false]], "contract_diag_coulomb() (in module ffsim.contract)": [[1, "ffsim.contract.contract_diag_coulomb", false]], "contract_num_op_sum() (in module ffsim.contract)": [[1, "ffsim.contract.contract_num_op_sum", false]], "contract_one_body() (in module ffsim.contract)": [[1, "ffsim.contract.contract_one_body", false]], "core_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.core_energy", false]], "cre() (in module ffsim)": [[0, "ffsim.cre", false]], "cre_a() (in module ffsim)": [[0, "ffsim.cre_a", false]], "cre_b() (in module ffsim)": [[0, "ffsim.cre_b", false]], "des() (in module ffsim)": [[0, "ffsim.des", false]], "des_a() (in module ffsim)": [[0, "ffsim.des_a", false]], "des_b() (in module ffsim)": [[0, "ffsim.des_b", false]], "diag() (in module ffsim)": [[0, "ffsim.diag", false]], "diag_coulomb_linop() (in module ffsim.contract)": [[1, "ffsim.contract.diag_coulomb_linop", false]], "diag_coulomb_mats (ffsim.diagonalcoulombhamiltonian attribute)": [[0, "ffsim.DiagonalCoulombHamiltonian.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.ucjopspinbalanced attribute)": [[0, "ffsim.UCJOpSpinBalanced.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.ucjopspinless attribute)": [[0, "ffsim.UCJOpSpinless.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.ucjopspinunbalanced attribute)": [[0, "ffsim.UCJOpSpinUnbalanced.diag_coulomb_mats", false]], "diagcoulombevolutionjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW", false]], "diagcoulombevolutionspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW", false]], "diagonalcoulombhamiltonian (class in ffsim)": [[0, "ffsim.DiagonalCoulombHamiltonian", false]], "dim() (in module ffsim)": [[0, "ffsim.dim", false]], "dims() (in module ffsim)": [[0, "ffsim.dims", false]], "dipole_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.dipole_integrals", false]], "double_factorized() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized", false]], "double_factorized_t2() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized_t2", false]], "double_factorized_t2_alpha_beta() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized_t2_alpha_beta", false]], "doublefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.DoubleFactorizedHamiltonian", false]], "dropnegligible (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DropNegligible", false]], "expectation_one_body_power() (in module ffsim)": [[0, "ffsim.expectation_one_body_power", false]], "expectation_one_body_product() (in module ffsim)": [[0, "ffsim.expectation_one_body_product", false]], "expectation_product_state() (ffsim.singlefactorizedhamiltonian method)": [[0, "ffsim.SingleFactorizedHamiltonian.expectation_product_state", false]], "expm_multiply_taylor() (in module ffsim.linalg)": [[2, "ffsim.linalg.expm_multiply_taylor", false]], "fci_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.fci_energy", false]], "fci_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.fci_vec", false]], "fermi_hubbard_1d() (in module ffsim)": [[0, "ffsim.fermi_hubbard_1d", false]], "fermi_hubbard_2d() (in module ffsim)": [[0, "ffsim.fermi_hubbard_2d", false]], "fermion_operator() (in module ffsim)": [[0, "ffsim.fermion_operator", false]], "fermionaction (class in ffsim)": [[0, "ffsim.FermionAction", false]], "fermionoperator (class in ffsim)": [[0, "ffsim.FermionOperator", false]], "ffsim": [[0, "module-ffsim", false]], "ffsim.contract": [[1, "module-ffsim.contract", false]], "ffsim.linalg": [[2, "module-ffsim.linalg", false]], "ffsim.optimize": [[3, "module-ffsim.optimize", false]], "ffsim.qiskit": [[4, "module-ffsim.qiskit", false]], "ffsim.random": [[5, "module-ffsim.random", false]], "ffsim.testing": [[6, "module-ffsim.testing", false]], "ffsim_vec_to_qiskit_vec() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.ffsim_vec_to_qiskit_vec", false]], "ffsimsampler (class in ffsim.qiskit)": [[4, "ffsim.qiskit.FfsimSampler", false]], "final_orbital_rotation (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjopspinbalanced attribute)": [[0, "ffsim.UCJOpSpinBalanced.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjopspinless attribute)": [[0, "ffsim.UCJOpSpinless.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjopspinunbalanced attribute)": [[0, "ffsim.UCJOpSpinUnbalanced.final_orbital_rotation", false]], "final_state_vector() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.final_state_vector", false]], "from_diag_coulomb_mats() (ffsim.numnumansatzopspinbalanced static method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.from_diag_coulomb_mats", false]], "from_fcidump() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_fcidump", false]], "from_fcidump() (ffsim.molecularhamiltonian static method)": [[0, "ffsim.MolecularHamiltonian.from_fcidump", false]], "from_fermion_operator() (ffsim.diagonalcoulombhamiltonian static method)": [[0, "ffsim.DiagonalCoulombHamiltonian.from_fermion_operator", false]], "from_json() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_json", false]], "from_mole() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_mole", false]], "from_molecular_hamiltonian() (ffsim.doublefactorizedhamiltonian static method)": [[0, "ffsim.DoubleFactorizedHamiltonian.from_molecular_hamiltonian", false]], "from_molecular_hamiltonian() (ffsim.singlefactorizedhamiltonian static method)": [[0, "ffsim.SingleFactorizedHamiltonian.from_molecular_hamiltonian", false]], "from_orbital_rotation() (ffsim.givensansatzop static method)": [[0, "ffsim.GivensAnsatzOp.from_orbital_rotation", false]], "from_parameters() (ffsim.givensansatzop static method)": [[0, "ffsim.GivensAnsatzOp.from_parameters", false]], "from_parameters() (ffsim.hopgateansatzoperator static method)": [[0, "ffsim.HopGateAnsatzOperator.from_parameters", false]], "from_parameters() (ffsim.numnumansatzopspinbalanced static method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.from_parameters", false]], "from_parameters() (ffsim.uccsdoprestrictedreal static method)": [[0, "ffsim.UCCSDOpRestrictedReal.from_parameters", false]], "from_parameters() (ffsim.ucjopspinbalanced static method)": [[0, "ffsim.UCJOpSpinBalanced.from_parameters", false]], "from_parameters() (ffsim.ucjopspinless static method)": [[0, "ffsim.UCJOpSpinless.from_parameters", false]], "from_parameters() (ffsim.ucjopspinunbalanced static method)": [[0, "ffsim.UCJOpSpinUnbalanced.from_parameters", false]], "from_scf() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_scf", false]], "from_t_amplitudes() (ffsim.ucjopspinbalanced static method)": [[0, "ffsim.UCJOpSpinBalanced.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjopspinless static method)": [[0, "ffsim.UCJOpSpinless.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjopspinunbalanced static method)": [[0, "ffsim.UCJOpSpinUnbalanced.from_t_amplitudes", false]], "generate_norb_nelec() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nelec", false]], "generate_norb_nelec_spin() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nelec_spin", false]], "generate_norb_nocc() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nocc", false]], "generate_norb_spin() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_spin", false]], "givens_decomposition() (in module ffsim.linalg)": [[2, "ffsim.linalg.givens_decomposition", false]], "givensansatzop (class in ffsim)": [[0, "ffsim.GivensAnsatzOp", false]], "givensansatzopjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.GivensAnsatzOpJW", false]], "givensansatzopspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.GivensAnsatzOpSpinlessJW", false]], "givensrotation (class in ffsim.linalg)": [[2, "ffsim.linalg.GivensRotation", false]], "hamiltonian (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.hamiltonian", false]], "hartree_fock_state() (in module ffsim)": [[0, "ffsim.hartree_fock_state", false]], "hf_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_energy", false]], "hf_mo_coeff (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_mo_coeff", false]], "hf_mo_occ (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_mo_occ", false]], "hopgateansatzoperator (class in ffsim)": [[0, "ffsim.HopGateAnsatzOperator", false]], "i (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.i", false]], "indices_to_strings() (in module ffsim)": [[0, "ffsim.indices_to_strings", false]], "init_cache() (in module ffsim)": [[0, "ffsim.init_cache", false]], "int (ffsim.bitstringtype attribute)": [[0, "ffsim.BitstringType.INT", false]], "interaction_pairs (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.interaction_pairs", false]], "interaction_pairs (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.interaction_pairs", false]], "interaction_pairs (ffsim.numnumansatzopspinbalanced attribute)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.interaction_pairs", false]], "inverse() (ffsim.qiskit.diagcoulombevolutionjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW.inverse", false]], "inverse() (ffsim.qiskit.diagcoulombevolutionspinlessjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW.inverse", false]], "inverse() (ffsim.qiskit.numopsumevolutionjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionJW.inverse", false]], "inverse() (ffsim.qiskit.numopsumevolutionspinlessjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionSpinlessJW.inverse", false]], "inverse() (ffsim.qiskit.orbitalrotationjw method)": [[4, "ffsim.qiskit.OrbitalRotationJW.inverse", false]], "inverse() (ffsim.qiskit.orbitalrotationspinlessjw method)": [[4, "ffsim.qiskit.OrbitalRotationSpinlessJW.inverse", false]], "is_antihermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_antihermitian", false]], "is_hermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_hermitian", false]], "is_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_orthogonal", false]], "is_real_symmetric() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_real_symmetric", false]], "is_special_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_special_orthogonal", false]], "is_unitary() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_unitary", false]], "j (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.j", false]], "jordan_wigner() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.jordan_wigner", false]], "linear_operator() (in module ffsim)": [[0, "ffsim.linear_operator", false]], "lup() (in module ffsim.linalg)": [[2, "ffsim.linalg.lup", false]], "many_body_order() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.many_body_order", false]], "match_global_phase() (in module ffsim.linalg)": [[2, "ffsim.linalg.match_global_phase", false]], "mergeorbitalrotations (class in ffsim.qiskit)": [[4, "ffsim.qiskit.MergeOrbitalRotations", false]], "minimize_linear_method() (in module ffsim.optimize)": [[3, "ffsim.optimize.minimize_linear_method", false]], "mo_coeff (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mo_coeff", false]], "mo_occ (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mo_occ", false]], "modified_cholesky() (in module ffsim.linalg)": [[2, "ffsim.linalg.modified_cholesky", false]], "module": [[0, "module-ffsim", false], [1, "module-ffsim.contract", false], [2, "module-ffsim.linalg", false], [3, "module-ffsim.optimize", false], [4, "module-ffsim.qiskit", false], [5, "module-ffsim.random", false], [6, "module-ffsim.testing", false]], "mole (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.mole", false]], "moleculardata (class in ffsim)": [[0, "ffsim.MolecularData", false]], "molecularhamiltonian (class in ffsim)": [[0, "ffsim.MolecularHamiltonian", false]], "mp2_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mp2_energy", false]], "mp2_t2 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mp2_t2", false]], "multireference_state() (in module ffsim)": [[0, "ffsim.multireference_state", false]], "multireference_state_prod() (in module ffsim)": [[0, "ffsim.multireference_state_prod", false]], "n_params() (ffsim.givensansatzop static method)": [[0, "ffsim.GivensAnsatzOp.n_params", false]], "n_params() (ffsim.numnumansatzopspinbalanced static method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.n_params", false]], "n_params() (ffsim.uccsdoprestrictedreal static method)": [[0, "ffsim.UCCSDOpRestrictedReal.n_params", false]], "n_params() (ffsim.ucjopspinbalanced static method)": [[0, "ffsim.UCJOpSpinBalanced.n_params", false]], "n_params() (ffsim.ucjopspinless static method)": [[0, "ffsim.UCJOpSpinless.n_params", false]], "n_params() (ffsim.ucjopspinunbalanced static method)": [[0, "ffsim.UCJOpSpinUnbalanced.n_params", false]], "n_reps (ffsim.ucjopspinbalanced property)": [[0, "ffsim.UCJOpSpinBalanced.n_reps", false]], "n_reps (ffsim.ucjopspinless property)": [[0, "ffsim.UCJOpSpinless.n_reps", false]], "n_reps (ffsim.ucjopspinunbalanced property)": [[0, "ffsim.UCJOpSpinUnbalanced.n_reps", false]], "nelec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.nelec", false]], "nelec (ffsim.statevector attribute)": [[0, "ffsim.StateVector.nelec", false]], "norb (ffsim.diagonalcoulombhamiltonian property)": [[0, "ffsim.DiagonalCoulombHamiltonian.norb", false]], "norb (ffsim.doublefactorizedhamiltonian property)": [[0, "ffsim.DoubleFactorizedHamiltonian.norb", false]], "norb (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.norb", false]], "norb (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.norb", false]], "norb (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.norb", false]], "norb (ffsim.molecularhamiltonian property)": [[0, "ffsim.MolecularHamiltonian.norb", false]], "norb (ffsim.numnumansatzopspinbalanced attribute)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.norb", false]], "norb (ffsim.singlefactorizedhamiltonian property)": [[0, "ffsim.SingleFactorizedHamiltonian.norb", false]], "norb (ffsim.statevector attribute)": [[0, "ffsim.StateVector.norb", false]], "norb (ffsim.uccsdoprestrictedreal property)": [[0, "ffsim.UCCSDOpRestrictedReal.norb", false]], "norb (ffsim.ucjopspinbalanced property)": [[0, "ffsim.UCJOpSpinBalanced.norb", false]], "norb (ffsim.ucjopspinless property)": [[0, "ffsim.UCJOpSpinless.norb", false]], "norb (ffsim.ucjopspinunbalanced property)": [[0, "ffsim.UCJOpSpinUnbalanced.norb", false]], "normal_ordered() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.normal_ordered", false]], "num_op_sum_linop() (in module ffsim.contract)": [[1, "ffsim.contract.num_op_sum_linop", false]], "number_operator() (in module ffsim)": [[0, "ffsim.number_operator", false]], "numnumansatzopspinbalanced (class in ffsim)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced", false]], "numnumansatzopspinbalancedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.NumNumAnsatzOpSpinBalancedJW", false]], "numopsumevolutionjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.NumOpSumEvolutionJW", false]], "numopsumevolutionspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.NumOpSumEvolutionSpinlessJW", false]], "one_body_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.one_body_integrals", false]], "one_body_linop() (in module ffsim.contract)": [[1, "ffsim.contract.one_body_linop", false]], "one_body_squares (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.one_body_squares", false]], "one_body_tensor (ffsim.diagonalcoulombhamiltonian attribute)": [[0, "ffsim.DiagonalCoulombHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.one_body_tensor", false]], "one_hot() (in module ffsim)": [[0, "ffsim.one_hot", false]], "one_hot() (in module ffsim.linalg)": [[2, "ffsim.linalg.one_hot", false]], "orb (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.orb", false]], "orbital_rotations (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.orbital_rotations", false]], "orbital_rotations (ffsim.ucjopspinbalanced attribute)": [[0, "ffsim.UCJOpSpinBalanced.orbital_rotations", false]], "orbital_rotations (ffsim.ucjopspinless attribute)": [[0, "ffsim.UCJOpSpinless.orbital_rotations", false]], "orbital_rotations (ffsim.ucjopspinunbalanced attribute)": [[0, "ffsim.UCJOpSpinUnbalanced.orbital_rotations", false]], "orbital_symmetries (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.orbital_symmetries", false]], "orbitalrotationjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.OrbitalRotationJW", false]], "orbitalrotationspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.OrbitalRotationSpinlessJW", false]], "phase_angles (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.phase_angles", false]], "phis (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.phis", false]], "pre_init (in module ffsim.qiskit)": [[4, "ffsim.qiskit.PRE_INIT", false]], "pre_init_passes() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.pre_init_passes", false]], "preparehartreefockjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareHartreeFockJW", false]], "preparehartreefockspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareHartreeFockSpinlessJW", false]], "prepareslaterdeterminantjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantJW", false]], "prepareslaterdeterminantspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantSpinlessJW", false]], "productstatesum (class in ffsim)": [[0, "ffsim.ProductStateSum", false]], "qiskit_vec_to_ffsim_vec() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.qiskit_vec_to_ffsim_vec", false]], "random_antihermitian() (in module ffsim.random)": [[5, "ffsim.random.random_antihermitian", false]], "random_diagonal_coulomb_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_diagonal_coulomb_hamiltonian", false]], "random_double_factorized_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_double_factorized_hamiltonian", false]], "random_fermion_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_fermion_hamiltonian", false]], "random_fermion_operator() (in module ffsim.random)": [[5, "ffsim.random.random_fermion_operator", false]], "random_hermitian() (in module ffsim.random)": [[5, "ffsim.random.random_hermitian", false]], "random_molecular_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_molecular_hamiltonian", false]], "random_nelec() (in module ffsim.testing)": [[6, "ffsim.testing.random_nelec", false]], "random_occupied_orbitals() (in module ffsim.testing)": [[6, "ffsim.testing.random_occupied_orbitals", false]], "random_orthogonal() (in module ffsim.random)": [[5, "ffsim.random.random_orthogonal", false]], "random_real_symmetric_matrix() (in module ffsim.random)": [[5, "ffsim.random.random_real_symmetric_matrix", false]], "random_special_orthogonal() (in module ffsim.random)": [[5, "ffsim.random.random_special_orthogonal", false]], "random_state_vector() (in module ffsim.random)": [[5, "ffsim.random.random_state_vector", false]], "random_statevector() (in module ffsim.random)": [[5, "ffsim.random.random_statevector", false]], "random_t2_amplitudes() (in module ffsim.random)": [[5, "ffsim.random.random_t2_amplitudes", false]], "random_two_body_tensor() (in module ffsim.random)": [[5, "ffsim.random.random_two_body_tensor", false]], "random_uccsd_restricted() (in module ffsim.random)": [[5, "ffsim.random.random_uccsd_restricted", false]], "random_ucj_op_spin_balanced() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_op_spin_balanced", false]], "random_ucj_op_spin_unbalanced() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_op_spin_unbalanced", false]], "random_ucj_op_spinless() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_op_spinless", false]], "random_unitary() (in module ffsim.random)": [[5, "ffsim.random.random_unitary", false]], "rdm() (in module ffsim)": [[0, "ffsim.rdm", false]], "rdms() (in module ffsim)": [[0, "ffsim.rdms", false]], "reduced_matrix() (in module ffsim.linalg)": [[2, "ffsim.linalg.reduced_matrix", false]], "reduced_matrix_product_states() (ffsim.singlefactorizedhamiltonian method)": [[0, "ffsim.SingleFactorizedHamiltonian.reduced_matrix_product_states", false]], "rotated() (ffsim.molecularhamiltonian method)": [[0, "ffsim.MolecularHamiltonian.rotated", false]], "run() (ffsim.qiskit.dropnegligible method)": [[4, "ffsim.qiskit.DropNegligible.run", false]], "run() (ffsim.qiskit.ffsimsampler method)": [[4, "ffsim.qiskit.FfsimSampler.run", false]], "run() (ffsim.qiskit.mergeorbitalrotations method)": [[4, "ffsim.qiskit.MergeOrbitalRotations.run", false]], "run_ccsd() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_ccsd", false]], "run_cisd() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_cisd", false]], "run_fci() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_fci", false]], "run_mp2() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_mp2", false]], "run_sci() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_sci", false]], "s (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.s", false]], "sample_slater_determinant() (in module ffsim)": [[0, "ffsim.sample_slater_determinant", false]], "sample_state_vector() (in module ffsim)": [[0, "ffsim.sample_state_vector", false]], "scf (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.scf", false]], "sci_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.sci_energy", false]], "sci_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.sci_vec", false]], "simulate_qdrift_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_qdrift_double_factorized", false]], "simulate_trotter_diag_coulomb_split_op() (in module ffsim)": [[0, "ffsim.simulate_trotter_diag_coulomb_split_op", false]], "simulate_trotter_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_trotter_double_factorized", false]], "simulatetrotterdiagcoulombsplitopjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.SimulateTrotterDiagCoulombSplitOpJW", false]], "simulatetrotterdoublefactorizedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.SimulateTrotterDoubleFactorizedJW", false]], "singlefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.SingleFactorizedHamiltonian", false]], "slater_determinant() (in module ffsim)": [[0, "ffsim.slater_determinant", false]], "slater_determinant_amplitudes() (in module ffsim)": [[0, "ffsim.slater_determinant_amplitudes", false]], "slater_determinant_rdm() (in module ffsim)": [[0, "ffsim.slater_determinant_rdm", false]], "slater_determinant_rdms() (in module ffsim)": [[0, "ffsim.slater_determinant_rdms", false]], "spin (class in ffsim)": [[0, "ffsim.Spin", false]], "spin (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.spin", false]], "spin (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.spin", false]], "spin_square() (in module ffsim)": [[0, "ffsim.spin_square", false]], "states (ffsim.productstatesum attribute)": [[0, "ffsim.ProductStateSum.states", false]], "statevector (class in ffsim)": [[0, "ffsim.StateVector", false]], "string (ffsim.bitstringtype attribute)": [[0, "ffsim.BitstringType.STRING", false]], "strings_to_addresses() (in module ffsim)": [[0, "ffsim.strings_to_addresses", false]], "strings_to_indices() (in module ffsim)": [[0, "ffsim.strings_to_indices", false]], "supportsapplyunitary (class in ffsim)": [[0, "ffsim.SupportsApplyUnitary", false]], "supportsapproximateequality (class in ffsim)": [[0, "ffsim.SupportsApproximateEquality", false]], "supportsdiagonal (class in ffsim)": [[0, "ffsim.SupportsDiagonal", false]], "supportsfermionoperator (class in ffsim)": [[0, "ffsim.SupportsFermionOperator", false]], "supportslinearoperator (class in ffsim)": [[0, "ffsim.SupportsLinearOperator", false]], "supportstrace (class in ffsim)": [[0, "ffsim.SupportsTrace", false]], "symmetry (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.symmetry", false]], "thetas (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.thetas", false]], "thetas (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.thetas", false]], "thetas (ffsim.numnumansatzopspinbalanced attribute)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.thetas", false]], "to_diag_coulomb_mats() (ffsim.numnumansatzopspinbalanced method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.to_diag_coulomb_mats", false]], "to_fcidump() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.to_fcidump", false]], "to_json() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.to_json", false]], "to_molecular_hamiltonian() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_molecular_hamiltonian", false]], "to_number_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_number_representation", false]], "to_orbital_rotation() (ffsim.givensansatzop method)": [[0, "ffsim.GivensAnsatzOp.to_orbital_rotation", false]], "to_parameters() (ffsim.givensansatzop method)": [[0, "ffsim.GivensAnsatzOp.to_parameters", false]], "to_parameters() (ffsim.hopgateansatzoperator method)": [[0, "ffsim.HopGateAnsatzOperator.to_parameters", false]], "to_parameters() (ffsim.numnumansatzopspinbalanced method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.to_parameters", false]], "to_parameters() (ffsim.uccsdoprestrictedreal method)": [[0, "ffsim.UCCSDOpRestrictedReal.to_parameters", false]], "to_parameters() (ffsim.ucjopspinbalanced method)": [[0, "ffsim.UCJOpSpinBalanced.to_parameters", false]], "to_parameters() (ffsim.ucjopspinless method)": [[0, "ffsim.UCJOpSpinless.to_parameters", false]], "to_parameters() (ffsim.ucjopspinunbalanced method)": [[0, "ffsim.UCJOpSpinUnbalanced.to_parameters", false]], "to_z_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_z_representation", false]], "trace() (in module ffsim)": [[0, "ffsim.trace", false]], "two_body_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.two_body_integrals", false]], "two_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.two_body_tensor", false]], "uccsdoprestrictedreal (class in ffsim)": [[0, "ffsim.UCCSDOpRestrictedReal", false]], "ucjopspinbalanced (class in ffsim)": [[0, "ffsim.UCJOpSpinBalanced", false]], "ucjopspinbalancedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOpSpinBalancedJW", false]], "ucjopspinless (class in ffsim)": [[0, "ffsim.UCJOpSpinless", false]], "ucjopspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOpSpinlessJW", false]], "ucjopspinunbalanced (class in ffsim)": [[0, "ffsim.UCJOpSpinUnbalanced", false]], "ucjopspinunbalancedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOpSpinUnbalancedJW", false]], "vec (ffsim.statevector attribute)": [[0, "ffsim.StateVector.vec", false]], "z_representation (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.z_representation", false]]}, "objects": {"": [[0, 0, 0, "-", "ffsim"]], "ffsim": [[0, 1, 1, "", "BitstringType"], [0, 1, 1, "", "DiagonalCoulombHamiltonian"], [0, 1, 1, "", "DoubleFactorizedHamiltonian"], [0, 1, 1, "", "FermionAction"], [0, 1, 1, "", "FermionOperator"], [0, 1, 1, "", "GivensAnsatzOp"], [0, 1, 1, "", "HopGateAnsatzOperator"], [0, 1, 1, "", "MolecularData"], [0, 1, 1, "", "MolecularHamiltonian"], [0, 1, 1, "", "NumNumAnsatzOpSpinBalanced"], [0, 1, 1, "", "ProductStateSum"], [0, 1, 1, "", "SingleFactorizedHamiltonian"], [0, 1, 1, "", "Spin"], [0, 1, 1, "", "StateVector"], [0, 1, 1, "", "SupportsApplyUnitary"], [0, 1, 1, "", "SupportsApproximateEquality"], [0, 1, 1, "", "SupportsDiagonal"], [0, 1, 1, "", "SupportsFermionOperator"], [0, 1, 1, "", "SupportsLinearOperator"], [0, 1, 1, "", "SupportsTrace"], [0, 1, 1, "", "UCCSDOpRestrictedReal"], [0, 1, 1, "", "UCJOpSpinBalanced"], [0, 1, 1, "", "UCJOpSpinUnbalanced"], [0, 1, 1, "", "UCJOpSpinless"], [0, 5, 1, "", "addresses_to_strings"], [0, 5, 1, "", "apply_diag_coulomb_evolution"], [0, 5, 1, "", "apply_fsim_gate"], [0, 5, 1, "", "apply_fswap_gate"], [0, 5, 1, "", "apply_givens_rotation"], [0, 5, 1, "", "apply_hop_gate"], [0, 5, 1, "", "apply_num_interaction"], [0, 5, 1, "", "apply_num_num_interaction"], [0, 5, 1, "", "apply_num_op_prod_interaction"], [0, 5, 1, "", "apply_num_op_sum_evolution"], [0, 5, 1, "", "apply_on_site_interaction"], [0, 5, 1, "", "apply_orbital_rotation"], [0, 5, 1, "", "apply_tunneling_interaction"], [0, 5, 1, "", "apply_unitary"], [0, 5, 1, "", "approx_eq"], [1, 0, 0, "-", "contract"], [0, 5, 1, "", "cre"], [0, 5, 1, "", "cre_a"], [0, 5, 1, "", "cre_b"], [0, 5, 1, "", "des"], [0, 5, 1, "", "des_a"], [0, 5, 1, "", "des_b"], [0, 5, 1, "", "diag"], [0, 5, 1, "", "dim"], [0, 5, 1, "", "dims"], [0, 5, 1, "", "expectation_one_body_power"], [0, 5, 1, "", "expectation_one_body_product"], [0, 5, 1, "", "fermi_hubbard_1d"], [0, 5, 1, "", "fermi_hubbard_2d"], [0, 5, 1, "", "fermion_operator"], [0, 5, 1, "", "hartree_fock_state"], [0, 5, 1, "", "indices_to_strings"], [0, 5, 1, "", "init_cache"], [2, 0, 0, "-", "linalg"], [0, 5, 1, "", "linear_operator"], [0, 5, 1, "", "multireference_state"], [0, 5, 1, "", "multireference_state_prod"], [0, 5, 1, "", "number_operator"], [0, 5, 1, "", "one_hot"], [3, 0, 0, "-", "optimize"], [4, 0, 0, "-", "qiskit"], [5, 0, 0, "-", "random"], [0, 5, 1, "", "rdm"], [0, 5, 1, "", "rdms"], [0, 5, 1, "", "sample_slater_determinant"], [0, 5, 1, "", "sample_state_vector"], [0, 5, 1, "", "simulate_qdrift_double_factorized"], [0, 5, 1, "", "simulate_trotter_diag_coulomb_split_op"], [0, 5, 1, "", "simulate_trotter_double_factorized"], [0, 5, 1, "", "slater_determinant"], [0, 5, 1, "", "slater_determinant_amplitudes"], [0, 5, 1, "", "slater_determinant_rdm"], [0, 5, 1, "", "slater_determinant_rdms"], [0, 5, 1, "", "spin_square"], [0, 5, 1, "", "strings_to_addresses"], [0, 5, 1, "", "strings_to_indices"], [6, 0, 0, "-", "testing"], [0, 5, 1, "", "trace"]], "ffsim.BitstringType": [[0, 2, 1, "", "BIT_ARRAY"], [0, 2, 1, "", "INT"], [0, 2, 1, "", "STRING"]], "ffsim.DiagonalCoulombHamiltonian": [[0, 2, 1, "", "constant"], [0, 2, 1, "", "diag_coulomb_mats"], [0, 3, 1, "", "from_fermion_operator"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"]], "ffsim.DoubleFactorizedHamiltonian": [[0, 2, 1, "", "constant"], [0, 2, 1, "", "diag_coulomb_mats"], [0, 3, 1, "", "from_molecular_hamiltonian"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_molecular_hamiltonian"], [0, 3, 1, "", "to_number_representation"], [0, 3, 1, "", "to_z_representation"], [0, 2, 1, "", "z_representation"]], "ffsim.FermionAction": [[0, 2, 1, "", "action"], [0, 2, 1, "", "orb"], [0, 2, 1, "", "spin"]], "ffsim.FermionOperator": [[0, 3, 1, "", "conserves_particle_number"], [0, 3, 1, "", "conserves_spin_z"], [0, 3, 1, "", "many_body_order"], [0, 3, 1, "", "normal_ordered"]], "ffsim.GivensAnsatzOp": [[0, 3, 1, "", "from_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 3, 1, "", "n_params"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "phase_angles"], [0, 2, 1, "", "phis"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_orbital_rotation"], [0, 3, 1, "", "to_parameters"]], "ffsim.HopGateAnsatzOperator": [[0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_parameters"]], "ffsim.MolecularData": [[0, 2, 1, "", "active_space"], [0, 2, 1, "", "atom"], [0, 2, 1, "", "basis"], [0, 2, 1, "", "ccsd_energy"], [0, 2, 1, "", "ccsd_t1"], [0, 2, 1, "", "ccsd_t2"], [0, 2, 1, "", "cisd_energy"], [0, 2, 1, "", "cisd_vec"], [0, 2, 1, "", "core_energy"], [0, 2, 1, "", "dipole_integrals"], [0, 2, 1, "", "fci_energy"], [0, 2, 1, "", "fci_vec"], [0, 3, 1, "", "from_fcidump"], [0, 3, 1, "", "from_json"], [0, 3, 1, "", "from_mole"], [0, 3, 1, "", "from_scf"], [0, 4, 1, "", "hamiltonian"], [0, 2, 1, "", "hf_energy"], [0, 2, 1, "", "hf_mo_coeff"], [0, 2, 1, "", "hf_mo_occ"], [0, 2, 1, "", "mo_coeff"], [0, 2, 1, "", "mo_occ"], [0, 4, 1, "", "mole"], [0, 2, 1, "", "mp2_energy"], [0, 2, 1, "", "mp2_t2"], [0, 2, 1, "", "nelec"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "one_body_integrals"], [0, 2, 1, "", "orbital_symmetries"], [0, 3, 1, "", "run_ccsd"], [0, 3, 1, "", "run_cisd"], [0, 3, 1, "", "run_fci"], [0, 3, 1, "", "run_mp2"], [0, 3, 1, "", "run_sci"], [0, 4, 1, "", "scf"], [0, 2, 1, "", "sci_energy"], [0, 2, 1, "", "sci_vec"], [0, 2, 1, "", "spin"], [0, 2, 1, "", "symmetry"], [0, 3, 1, "", "to_fcidump"], [0, 3, 1, "", "to_json"], [0, 2, 1, "", "two_body_integrals"]], "ffsim.MolecularHamiltonian": [[0, 2, 1, "", "constant"], [0, 3, 1, "", "from_fcidump"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 3, 1, "", "rotated"], [0, 2, 1, "", "two_body_tensor"]], "ffsim.NumNumAnsatzOpSpinBalanced": [[0, 3, 1, "", "from_diag_coulomb_mats"], [0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 3, 1, "", "n_params"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_diag_coulomb_mats"], [0, 3, 1, "", "to_parameters"]], "ffsim.ProductStateSum": [[0, 2, 1, "", "coeffs"], [0, 2, 1, "", "states"]], "ffsim.SingleFactorizedHamiltonian": [[0, 2, 1, "", "constant"], [0, 3, 1, "", "expectation_product_state"], [0, 3, 1, "", "from_molecular_hamiltonian"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_squares"], [0, 2, 1, "", "one_body_tensor"], [0, 3, 1, "", "reduced_matrix_product_states"]], "ffsim.Spin": [[0, 2, 1, "", "ALPHA"], [0, 2, 1, "", "ALPHA_AND_BETA"], [0, 2, 1, "", "BETA"]], "ffsim.StateVector": [[0, 2, 1, "", "nelec"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "vec"]], "ffsim.UCCSDOpRestrictedReal": [[0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "norb"], [0, 3, 1, "", "to_parameters"]], "ffsim.UCJOpSpinBalanced": [[0, 2, 1, "", "diag_coulomb_mats"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"]], "ffsim.UCJOpSpinUnbalanced": [[0, 2, 1, "", "diag_coulomb_mats"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"]], "ffsim.UCJOpSpinless": [[0, 2, 1, "", "diag_coulomb_mats"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"]], "ffsim.contract": [[1, 5, 1, "", "contract_diag_coulomb"], [1, 5, 1, "", "contract_num_op_sum"], [1, 5, 1, "", "contract_one_body"], [1, 5, 1, "", "diag_coulomb_linop"], [1, 5, 1, "", "num_op_sum_linop"], [1, 5, 1, "", "one_body_linop"]], "ffsim.linalg": [[2, 1, 1, "", "GivensRotation"], [2, 5, 1, "", "apply_matrix_to_slices"], [2, 5, 1, "", "double_factorized"], [2, 5, 1, "", "double_factorized_t2"], [2, 5, 1, "", "double_factorized_t2_alpha_beta"], [2, 5, 1, "", "expm_multiply_taylor"], [2, 5, 1, "", "givens_decomposition"], [2, 5, 1, "", "is_antihermitian"], [2, 5, 1, "", "is_hermitian"], [2, 5, 1, "", "is_orthogonal"], [2, 5, 1, "", "is_real_symmetric"], [2, 5, 1, "", "is_special_orthogonal"], [2, 5, 1, "", "is_unitary"], [2, 5, 1, "", "lup"], [2, 5, 1, "", "match_global_phase"], [2, 5, 1, "", "modified_cholesky"], [2, 5, 1, "", "one_hot"], [2, 5, 1, "", "reduced_matrix"]], "ffsim.linalg.GivensRotation": [[2, 2, 1, "", "c"], [2, 2, 1, "", "i"], [2, 2, 1, "", "j"], [2, 2, 1, "", "s"]], "ffsim.optimize": [[3, 5, 1, "", "minimize_linear_method"]], "ffsim.qiskit": [[4, 1, 1, "", "DiagCoulombEvolutionJW"], [4, 1, 1, "", "DiagCoulombEvolutionSpinlessJW"], [4, 1, 1, "", "DropNegligible"], [4, 1, 1, "", "FfsimSampler"], [4, 1, 1, "", "GivensAnsatzOpJW"], [4, 1, 1, "", "GivensAnsatzOpSpinlessJW"], [4, 1, 1, "", "MergeOrbitalRotations"], [4, 1, 1, "", "NumNumAnsatzOpSpinBalancedJW"], [4, 1, 1, "", "NumOpSumEvolutionJW"], [4, 1, 1, "", "NumOpSumEvolutionSpinlessJW"], [4, 1, 1, "", "OrbitalRotationJW"], [4, 1, 1, "", "OrbitalRotationSpinlessJW"], [4, 6, 1, "", "PRE_INIT"], [4, 1, 1, "", "PrepareHartreeFockJW"], [4, 1, 1, "", "PrepareHartreeFockSpinlessJW"], [4, 1, 1, "", "PrepareSlaterDeterminantJW"], [4, 1, 1, "", "PrepareSlaterDeterminantSpinlessJW"], [4, 1, 1, "", "SimulateTrotterDiagCoulombSplitOpJW"], [4, 1, 1, "", "SimulateTrotterDoubleFactorizedJW"], [4, 1, 1, "", "UCJOpSpinBalancedJW"], [4, 1, 1, "", "UCJOpSpinUnbalancedJW"], [4, 1, 1, "", "UCJOpSpinlessJW"], [4, 5, 1, "", "ffsim_vec_to_qiskit_vec"], [4, 5, 1, "", "final_state_vector"], [4, 5, 1, "", "jordan_wigner"], [4, 5, 1, "", "pre_init_passes"], [4, 5, 1, "", "qiskit_vec_to_ffsim_vec"]], "ffsim.qiskit.DiagCoulombEvolutionJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.DropNegligible": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "run"]], "ffsim.qiskit.FfsimSampler": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "run"]], "ffsim.qiskit.GivensAnsatzOpJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.GivensAnsatzOpSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.MergeOrbitalRotations": [[4, 3, 1, "", "run"]], "ffsim.qiskit.NumNumAnsatzOpSpinBalancedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.NumOpSumEvolutionJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.NumOpSumEvolutionSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.OrbitalRotationJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.OrbitalRotationSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.PrepareHartreeFockJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.PrepareHartreeFockSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.PrepareSlaterDeterminantJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.PrepareSlaterDeterminantSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.SimulateTrotterDiagCoulombSplitOpJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.SimulateTrotterDoubleFactorizedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOpSpinBalancedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOpSpinUnbalancedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOpSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.random": [[5, 5, 1, "", "random_antihermitian"], [5, 5, 1, "", "random_diagonal_coulomb_hamiltonian"], [5, 5, 1, "", "random_double_factorized_hamiltonian"], [5, 5, 1, "", "random_fermion_hamiltonian"], [5, 5, 1, "", "random_fermion_operator"], [5, 5, 1, "", "random_hermitian"], [5, 5, 1, "", "random_molecular_hamiltonian"], [5, 5, 1, "", "random_orthogonal"], [5, 5, 1, "", "random_real_symmetric_matrix"], [5, 5, 1, "", "random_special_orthogonal"], [5, 5, 1, "", "random_state_vector"], [5, 5, 1, "", "random_statevector"], [5, 5, 1, "", "random_t2_amplitudes"], [5, 5, 1, "", "random_two_body_tensor"], [5, 5, 1, "", "random_uccsd_restricted"], [5, 5, 1, "", "random_ucj_op_spin_balanced"], [5, 5, 1, "", "random_ucj_op_spin_unbalanced"], [5, 5, 1, "", "random_ucj_op_spinless"], [5, 5, 1, "", "random_unitary"]], "ffsim.testing": [[6, 5, 1, "", "assert_allclose_up_to_global_phase"], [6, 5, 1, "", "generate_norb_nelec"], [6, 5, 1, "", "generate_norb_nelec_spin"], [6, 5, 1, "", "generate_norb_nocc"], [6, 5, 1, "", "generate_norb_spin"], [6, 5, 1, "", "random_nelec"], [6, 5, 1, "", "random_occupied_orbitals"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "method", "Python method"], "4": ["py", "property", "Python property"], "5": ["py", "function", "Python function"], "6": ["py", "data", "Python data"]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:property", "5": "py:function", "6": "py:data"}, "terms": {"": [0, 2, 4, 8, 9, 13, 14, 15, 16, 17, 18, 19, 21, 22, 23], "0": [0, 2, 3, 4, 6, 8, 9, 11, 13, 14, 15, 16, 18, 19, 20, 21, 23], "00": 18, "000": 20, "0000000": [15, 18], "0000000000011100000000000111": 20, "0000000000011100000000011100": 20, "0000000000011100100000001100": 20, "0000000000110100000000001101": 20, "0000000001011000000000010110": 20, "0000000001011000100000000110": 20, "0000000001110000000000000111": 20, "0000000111100000011111": 20, "0000000111100110000111": 20, "0000010101100001011011": 20, "0000010110100001011011": 20, "0000100101100000111011": 20, "0000100110100000111011": 20, "0000111100001111": 20, "0000111100011011": 20, "0000111100011101": 20, "0000111100101011": 20, "0001": 3, "0001000001010000000000000111": 20, "0001110100001111": 20, "000e": 18, "0010000000011000000000010110": 20, "0010011100101101": 20, "0010101100001111": 20, "0010101100101101": 20, "001011": [0, 14], "0010110100100111": 20, "0010110100101011": 20, "001101": [0, 14], "001110": [0, 14], "001111506023146444": 18, "0016794907520957037": 18, "003429956535936252": 18, "005e": 15, "01": [15, 18], "0100000001001000000000000111": 20, "0100000110100100001111": 20, "010011": [0, 14], "0101": 0, "0101000001100000011111": 20, "010101": [0, 14], "010110": [0, 14], "0110": 0, "02": [15, 18], "02018867": 16, "02122442107773": 18, "02242": 2, "02459434j": 14, "02625": 2, "027e": 18, "02998708j": 14, "03": 15, "03101213j": 14, "03525116j": 14, "03668541730983588": 23, "04": [15, 18], "04758323886585046": 18, "05": [0, 2, 3, 4, 18], "05395": 4, "06": 18, "0609050": 5, "0625": [0, 16], "06273307": 14, "06374738j": 16, "06551571": 14, "06677383j": 14, "066e": 18, "06844774j": 14, "07": [6, 18], "077e": 18, "08": [0, 2, 3, 4, 18], "080e": 15, "08957": 2, "09723851": 14, "0b001011": 0, "0b010101": 0, "0b010110": 0, "0b100101": 0, "0b100110": 0, "0j": 16, "0x7f1f28421b10": 19, "0x7f1f28421cf0": 19, "0x7f1f28421f90": 19, "0x7f1f28422e30": 19, "0x7f1f284231f0": 19, "0x7f1f284233d0": 19, "0x7f1f28423460": 19, "0x7f1f28d923b0": 19, "1": [0, 2, 3, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "10": [13, 18, 19, 20, 23], "100": 15, "1000": 3, "1000000101100000111011": 20, "100011": [0, 14], "100101": [0, 14], "100110": [0, 14], "101": 20, "1024": 4, "104": [15, 21], "1077416825936833": 20, "108": [20, 23], "10_000": 20, "11": [0, 13, 19, 20, 23], "1102529j": 14, "11157654": 14, "112": 15, "12": [2, 13, 15, 16, 18, 23], "1207": 0, "12204343": 14, "1234": [9, 13, 14, 15, 19, 21], "12345": 20, "125": [0, 16], "1278053627110063": 20, "1294": [15, 18], "12j": 16, "13": [0, 13, 23], "13113848": 14, "133": 20, "13327423j": 14, "13957088j": 14, "14": [13, 20], "146e": 15, "15": [13, 15], "1534535000519323e": 18, "1561685j": 14, "15624569": 14, "15828306": 14, "15x15": 15, "16": 13, "17": 13, "1711": [2, 4], "17181289596": 21, "17276745j": 14, "17558331": 14, "18": 13, "180": 15, "18007105": 14, "1808": 2, "18j": 16, "19": 0, "1e": [0, 2, 3, 4, 6, 15, 23], "1j": [0, 9, 16, 23], "2": [0, 1, 2, 4, 5, 8, 9, 11, 13, 14, 15, 16, 18, 19, 20, 23], "20835741": 14, "20881506": 14, "21": 0, "210": 20, "2104": 2, "217569337446581e": 18, "2190712273": 9, "21928194": 14, "21984743e": 16, "22392824": 14, "23": 15, "23550198": 14, "23611476": 14, "24": [13, 19], "25": [0, 16], "25j": [0, 16], "26": 23, "26121865": 14, "263e": 18, "279e": 18, "287e": 18, "29821173j": 14, "2d": 0, "2j": [0, 2, 16], "2n": 14, "3": [0, 2, 5, 9, 11, 13, 14, 15, 16, 18, 19, 20, 23], "30052742j": 14, "31980058j": 14, "31g": [20, 21], "32": [13, 19], "329": 18, "33731417j": 14, "339": 18, "3484557084194": 20, "35": [0, 23], "36730125j": 14, "3714141": 14, "375e": 18, "38435478j": 14, "39": [13, 14, 15, 16, 18, 19, 20], "390": 18, "39075171": 14, "3j": 16, "4": [0, 2, 8, 9, 13, 14, 15, 16, 18, 19, 20, 21, 23], "416e": 18, "418e": 15, "4390672": 14, "452e": 15, "45619739101305": 20, "46": 18, "464957764796": 23, "46x46": 18, "47": 20, "478": 15, "48": [13, 20], "489e": 18, "49094286j": 14, "4j": 16, "5": [0, 3, 9, 13, 14, 15, 16, 18, 19, 20, 23], "51253171j": 14, "520e": 18, "55717072551579": 9, "558e": 18, "56": [13, 19, 20], "561e": 18, "5626": 18, "57": 20, "574": 18, "58888": 22, "5j": [0, 16], "6": [0, 9, 13, 14, 15, 16, 19, 20, 21, 23], "603e": 15, "6083": 0, "6332495815006": 15, "64": 14, "65": 20, "66": 20, "67794403659725": 15, "6787887956297": 15, "6787887956314": 15, "68381553436124": 15, "684e": 18, "6g": [0, 15, 18, 23], "6j": 16, "7": [0, 9, 13, 14, 15, 16, 18, 19, 23], "70": 20, "72": 18, "7288249991515": 15, "72x72": 18, "73105542j": 14, "748e": 15, "75": [15, 20], "751e": 15, "759e": 18, "77": 18, "773e": 18, "774e": 18, "781e": 18, "8": [0, 13, 15, 16, 19, 20, 23], "825e": 18, "8266321248744": 18, "835236570775": 20, "842e": 18, "87160024816271": 18, "87363172968752": 18, "87363426550762": 18, "87363431007884": 18, "87363432790247": 18, "87387391770547": 18, "87421536374029": 18, "8742165643862": 18, "876": 18, "9": [13, 14, 16, 18, 19, 20, 23], "9289": 18, "940243538699916": 23, "950e": 18, "952e": 18, "958": 15, "9630419334855": 20, "99": 9, "990e": 18, "9924": 20, "9972372604839628": 18, "9974692033826795": 18, "9985212861519472": 23, "9985212861520422": 23, "9991": 20, "9996731164191563": 23, "A": [0, 1, 2, 3, 4, 5, 6, 8, 12, 13, 14, 16, 22, 23], "AND": 15, "As": [11, 13, 14, 18, 19, 23], "By": 21, "For": [0, 3, 4, 5, 8, 9, 11, 14, 15, 16, 22, 23], "If": [0, 1, 2, 3, 4, 5, 6, 13, 16], "In": [0, 8, 9, 11, 13, 14, 15, 16, 18, 19, 20, 23], "It": [0, 2, 3, 4, 13, 14, 16, 18, 20, 22], "Its": [3, 4], "NO": [15, 18], "No": 2, "Of": 11, "On": [14, 22], "One": [0, 23], "Such": 16, "That": [0, 3, 12, 16], "The": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "Their": 19, "Then": [0, 13], "There": 13, "These": [0, 5, 11, 16, 19], "To": [0, 8, 9, 11, 14, 18, 23], "With": [11, 14, 23], "_": [0, 1, 2, 4, 8, 11, 12, 15, 23], "_1": 12, "_2": 12, "__init__": 4, "_factr": 18, "_i": [0, 4], "_k": [0, 8, 11], "_nestedsequ": 4, "_supportsarrai": 4, "a_": [0, 4, 8, 9, 12, 16], "a_j": 1, "a_p": 0, "a_q": 0, "ab": [0, 23], "abil": 8, "abl": 22, "about": 21, "abov": [13, 16], "absenc": [0, 1, 4], "absolut": [0, 2, 4, 6], "acceler": 22, "accept": [12, 18], "access": [0, 9, 22], "accommod": 4, "accomod": 8, "accur": 8, "achiev": [2, 23], "across": 22, "act": [0, 2, 4, 9, 13, 15, 16], "action": [0, 1, 12, 16, 22, 23], "activ": [0, 15, 18, 20, 23], "active_spac": [0, 15, 18, 20, 21, 23], "actual": [6, 11], "ad": [0, 13, 18], "add": [13, 18], "addit": [0, 8, 16, 23], "addition": 2, "address": [0, 13], "addresses_to_str": [0, 7, 14], "adjac": 13, "advantag": 18, "after": [3, 18], "al": 2, "algebra": [2, 9, 16], "algorithm": [0, 2, 3, 18, 21], "alia": [0, 2], "align": [0, 11, 12], "all": [0, 1, 2, 3, 4, 6, 11, 13, 16, 20, 22], "alloc": 0, "allow": [0, 2, 5, 11, 13, 18, 22, 23], "along": 0, "alpha": [0, 1, 2, 4, 5, 6, 9, 11, 13, 14, 15, 16, 19, 20], "alpha_and_beta": 0, "alpha_i": 0, "alpha_j": 0, "alreadi": [0, 4, 12], "also": [0, 2, 3, 5, 9, 12, 14, 16, 18, 23], "altern": [0, 8], "alwai": [0, 2, 5, 12, 14, 23], "amen": 13, "amplitud": [0, 2, 5, 18, 20], "an": [0, 1, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 23], "angl": 0, "ani": [0, 3, 4, 5, 11, 12, 19, 20], "annihil": [0, 16], "anoth": [2, 6], "ansatz": [0, 3, 4, 5, 10, 13, 17, 19, 20, 21], "ansatz_oper": 0, "ansatz_st": 18, "anti": [2, 5], "anticommut": 12, "ao": 0, "ap": 2, "api": [14, 21], "appear": [0, 2, 13, 16, 20], "append": [0, 6, 13, 18, 19, 20], "appli": [0, 1, 2, 3, 4, 9, 11, 12, 13, 14, 18, 19, 20, 21, 23], "applic": 12, "apply_": 14, "apply_diag_coulomb_evolut": [0, 7, 8, 23], "apply_fsim_g": [0, 7], "apply_fswap_g": [0, 7], "apply_givens_rot": [0, 7], "apply_hop_g": [0, 7], "apply_matrix_to_slic": [2, 7], "apply_num_interact": [0, 7], "apply_num_num_interact": [0, 7], "apply_num_op_prod_interact": [0, 7], "apply_num_op_sum_evolut": [0, 7, 12, 23], "apply_on_site_interact": [0, 7, 14], "apply_orbital_rot": [0, 7, 12, 14, 21], "apply_quad_ham_evolut": 12, "apply_tunneling_interact": [0, 7, 14], "apply_unitari": [0, 7, 18], "appropri": [0, 11], "approx": 8, "approx_eq": [0, 7], "approxim": [0, 2, 3, 8, 18, 23], "apt": 22, "ar": [0, 1, 2, 4, 5, 6, 8, 9, 11, 12, 13, 14, 16, 19, 20, 22], "arbitrari": [4, 20], "arch": 22, "arg": [0, 4], "argument": [0, 2, 3, 8, 9, 12, 14, 23], "aris": 8, "arithmet": 16, "around": 23, "arrai": [0, 1, 2, 4, 6, 9, 11, 14, 16], "arxiv": [0, 2, 4, 5], "ascend": 20, "assembl": 2, "assert": 14, "assert_allclose_up_to_global_phas": [6, 7], "assertionerror": 6, "associ": [0, 3, 14, 16, 18], "assum": [0, 4, 14], "asterisk": 0, "asymmetr": 8, "atol": [0, 2, 4, 6], "atom": [0, 15, 18, 20, 21, 23], "attempt": 2, "attribut": [0, 3, 9, 15, 18, 20], "author": 21, "auto": 0, "avail": [9, 19, 22], "avoid": [0, 9, 16], "awar": 16, "ax": [0, 2], "axi": [0, 2], "b": [0, 2, 3, 6, 12, 15, 18], "back": 4, "backend": [13, 19], "backflow": 3, "background": 23, "balanc": [0, 4, 5, 18, 20], "barrier": 20, "base": [0, 2, 4], "basepass": 4, "basesamplerv2": 4, "basi": [0, 2, 4, 12, 15, 18, 20, 21, 23], "basic": [9, 13], "basis_g": [13, 19], "bear": 23, "becaus": [0, 2, 8, 9, 13, 15, 16, 18], "been": [0, 8], "befor": [0, 13, 16, 22, 23], "begin": [0, 2, 11, 12, 14, 20, 23], "behavior": [2, 4, 5, 19], "being": [2, 16, 18], "below": [0, 18, 23], "benchmark": 0, "beta": [0, 1, 2, 4, 5, 6, 9, 11, 13, 14, 15, 16, 19, 20], "beta_i": 0, "beta_j": 0, "better": 8, "between": [0, 1, 2, 3, 11, 13], "bfg": [0, 2, 3, 15, 18], "bibtex": 21, "bit": [0, 13, 14], "bit_arrai": 0, "bitstr": [0, 14, 20], "bitstring_typ": [0, 14], "bitstringtyp": [0, 7, 14], "bla": 22, "bloc": 20, "block": 2, "block_diag": [0, 2], "bmod": 0, "bodi": [0, 1, 2, 5, 8, 9, 18, 23], "bond": 15, "bond_angle_deg": 15, "bond_dist": 18, "bool": [0, 1, 2, 3, 4, 5, 6], "both": [0, 1, 2, 4, 11, 15], "bound": [0, 2], "boundari": 0, "box": 13, "bq": 2, "bracket": 0, "braket": 0, "branch": 21, "brickwork": 15, "browser": 22, "buffer": 4, "build": [13, 17, 18, 20, 21, 22], "built": [19, 20, 23], "byte": [0, 4], "bz2": 0, "c": [2, 18], "c2v": 15, "cach": 0, "calcul": [0, 14, 18], "call": [0, 3, 8, 9, 12, 14, 16, 18, 20, 23], "callabl": [3, 18], "callback": [0, 2, 3, 18], "can": [0, 1, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 22, 23], "cannot": 20, "canon": 0, "casci": [15, 18], "case": [0, 6, 13, 15], "categori": 21, "caus": 0, "cc": [18, 20], "ccsd": [0, 18, 20], "ccsd_energi": 0, "ccsd_t1": 0, "ccsd_t2": 0, "cd": 22, "cdot": 2, "cell": [9, 13, 14, 18, 19, 20, 23], "certain": [2, 13], "challeng": 11, "character": 0, "check": [2, 4, 6], "chemcor": 23, "chemic": 0, "chemical_potenti": 0, "chemistri": 21, "choic": [0, 6, 13, 14], "choleski": [0, 2], "choos": [2, 14], "chosen": 0, "ci": [15, 18], "circuit": [0, 4, 8, 13, 14, 17, 21], "circul": 0, "cisd": 0, "cisd_energi": 0, "cisd_vec": 0, "class": [0, 2, 4, 5, 9, 11, 15, 17, 18, 20, 21, 23], "clement": 2, "clone": 22, "close": [11, 18], "cluster": [0, 4, 5, 10, 17, 21], "co": [0, 15], "code": [4, 9, 13, 14, 16, 18, 19, 20, 23], "coeff": [0, 1, 4, 13, 19], "coeffici": [0, 1, 2, 4, 12, 16], "collect": [0, 2, 4, 18], "column": [0, 2, 12, 14], "com": [21, 22], "comb": 4, "combin": [0, 1, 4, 12, 13, 16], "command": 22, "commonli": [8, 20], "commun": [21, 22], "commut": 8, "compact": [8, 23], "compar": [0, 6, 23], "compil": 22, "complet": 0, "complex": [0, 1, 2, 4, 5, 9], "compon": [0, 16, 21], "compos": [4, 22], "compress": [0, 2], "compris": [0, 16], "comput": [0, 2, 4, 9, 12, 18, 21, 23], "concaten": [0, 14], "concret": 9, "condit": 0, "configur": [0, 4, 13, 14, 22], "conflict": 6, "conj": [2, 12, 20], "conjug": 2, "connect": [0, 11, 13], "consecut": [4, 20], "conserv": [0, 5, 16, 21], "conserves_particle_numb": [0, 16], "conserves_spin_z": [0, 16], "consid": [11, 12, 13], "consist": [0, 9, 13], "constant": [0, 5, 8, 9, 11, 13, 19], "constrain": 2, "constraint": [11, 18], "construct": [0, 1, 3, 4, 13, 14, 15, 16, 18, 19, 20, 23], "contain": [0, 2, 3, 5, 13, 16, 20, 21, 22], "contract": [2, 7, 21], "contract_diag_coulomb": [1, 7], "contract_num_op_sum": [1, 7], "contract_one_bodi": [1, 7], "contrast": 14, "control": [3, 13], "conveni": 14, "convent": 0, "converg": [3, 15, 18, 20, 23], "convers": [11, 18], "convert": [0, 1, 4, 14, 16, 18, 20, 21, 23], "coordin": 0, "coov": 20, "copi": [0, 16], "core": 0, "core_energi": 0, "correl": 3, "correspond": [0, 2, 3, 4, 8, 12, 13, 14, 18], "cost": 0, "coulomb": [0, 1, 2, 4, 5, 8, 11, 23], "count": [0, 13, 20], "count_op": [13, 19], "coupl": 0, "cours": 11, "cp": [13, 19], "cphaseg": 13, "cre": [0, 7], "cre_a": [0, 7, 16], "cre_b": [0, 7, 16], "creat": [0, 4, 13, 14, 16, 19, 20, 21, 23], "creation": [0, 4, 12, 16], "criteria": 16, "current": [0, 2, 18], "d": [2, 22], "d2h": 18, "dag": 4, "dagcircuit": 4, "dagger": [0, 1, 2, 8, 11, 12, 16], "dagger_": [0, 4, 8, 9, 12], "dagger_i": 1, "dagger_p": 0, "dagger_q": 0, "data": [0, 5, 13, 15, 16, 18, 20, 21, 23], "daunt": 8, "de": [0, 7], "decompos": [2, 4, 8, 13, 19], "decomposit": [0, 2, 4, 8, 10, 19, 21, 23], "decreas": [0, 18], "def": [2, 12, 15, 18, 23], "default": [0, 2, 3, 4, 5, 8, 9, 23], "default_rng": [0, 4, 5, 6, 9, 13, 15, 19, 20], "default_shot": [4, 20], "defaultdict": 18, "defin": [0, 2, 13, 15, 18, 20, 23], "definit": [0, 2, 3, 14], "demonstr": [14, 18, 20], "denot": [0, 1, 2, 4, 12], "dens": 15, "densiti": 0, "depend": [0, 2, 3, 22, 23], "depolar": 4, "deprec": [0, 5], "depth": 11, "deriv": 8, "des_a": [0, 7, 16], "des_b": [0, 7, 16], "descend": [0, 16], "describ": [0, 1, 2, 8, 11, 12, 13, 16, 23], "descript": [0, 4], "design": [0, 2, 12], "desir": [0, 2, 5, 6], "destroi": [0, 16], "detail": [13, 19], "determin": [0, 2, 4, 14], "determinant": 0, "dev": 22, "devel": 22, "develop": [4, 21], "devic": [13, 19], "df_hamiltonian": [13, 19, 23], "df_hamiltonian_alt": 23, "diag": [0, 7], "diag_coulomb_indic": [0, 2], "diag_coulomb_jw": 13, "diag_coulomb_linop": [1, 7], "diag_coulomb_mat": [0, 2, 13, 19, 20, 23], "diagcoulombevolutionjw": [4, 7, 13, 19, 20], "diagcoulombevolutionspinlessjw": [4, 7], "diagon": [0, 1, 2, 4, 5, 8, 11, 23], "diagonal_coulomb_mat": 2, "diagonalcoulombhamiltonian": [0, 4, 5, 7], "dict": [0, 2, 3, 15, 18], "dictionari": [0, 16], "did": 0, "differ": [0, 1, 2, 3, 9, 11, 13, 18, 22, 23], "dim": [0, 5, 7, 14, 16], "dim_a": [0, 14], "dim_b": [0, 14], "dimens": [0, 2, 5, 14], "dimension": [0, 2, 4, 14], "dipol": 0, "dipole_integr": 0, "direct": [0, 23], "directli": [0, 13, 18, 22, 23], "directori": 22, "discuss": [8, 12, 13], "disjoint": 2, "disk": 0, "displai": [13, 16, 20], "distinguish": 14, "distribut": [4, 5], "divid": 8, "divis": [0, 16], "dnf": 22, "do": [8, 13, 16], "doc": [15, 18, 21], "docker": 21, "dockerfil": 22, "document": [0, 2], "doe": [0, 4, 16, 18, 20], "don": 11, "dooh": [20, 21, 23], "dot": 0, "doubl": [0, 2, 4, 5, 10, 21, 24], "double_factor": [0, 2, 7], "double_factorized_t2": [2, 7], "double_factorized_t2_alpha_beta": [2, 7], "doublefactorizedhamiltonian": [0, 4, 5, 7, 23], "down": 14, "draw": [13, 19], "drop": [4, 15, 18], "dropneglig": [4, 7], "dtype": [0, 2, 4, 5, 9, 15, 18], "due": 20, "dump": [15, 18], "duplic": 0, "dure": 4, "e": [0, 2, 4, 8, 9, 11, 15, 16, 18, 20], "e_corr": [18, 20], "each": [0, 2, 3, 4, 5, 8, 11, 14, 16, 18, 22, 23], "edg": 0, "effect": [0, 4, 13], "effici": [8, 13, 16], "eig": [9, 16], "eigendecomposit": 12, "eigenvalu": [0, 2, 3, 9], "eigenvector": [0, 2], "eigh": [12, 23], "eigsh": 9, "einsum": 23, "either": [0, 1, 2, 4, 5, 6, 11], "electon": 4, "electron": [0, 1, 4, 5, 9, 13, 14, 15, 19, 20, 23], "element": [0, 1, 2, 4, 20, 23], "ell": 2, "els": [0, 5, 14], "elsewher": 0, "enabl": 2, "encount": 20, "end": [0, 2, 11, 12, 20, 23], "energi": [0, 3, 9, 12, 18, 20, 21, 23], "energy_nuc": [15, 18], "enough": 4, "ensur": 9, "entangl": [0, 17, 21], "entir": [2, 8], "entri": [0, 2, 4, 5, 11, 14, 23], "enum": 0, "enumer": [0, 18], "environ": 22, "epsilon": 3, "epsmch": 18, "equal": [0, 2, 6, 13], "equal_nan": 6, "equilibrium": 15, "equival": [0, 4], "err_msg": 6, "error": [0, 2, 4, 6, 23], "especi": 16, "estim": 9, "et": 2, "etc": 0, "ethen": 18, "evalu": [3, 15], "even": 13, "everi": 12, "everywher": 14, "evolut": [0, 4, 9, 23], "evolv": [0, 23], "evolved_vec": 9, "evolved_vec_2": 9, "exact": [2, 8, 9, 23], "exact_st": 23, "exampl": [0, 4, 9, 11, 13, 14, 15, 16, 18, 19, 22], "exce": [2, 15, 23], "except": [0, 2, 3], "excit": 13, "exist": [2, 4], "exp": [0, 2, 4, 6], "expand": 0, "expanded_diag_coulomb_mat": 2, "expanded_orbital_rot": 2, "expans": [2, 3], "expect": [0, 3], "expectation_one_body_pow": [0, 7], "expectation_one_body_product": [0, 7], "expectation_product_st": 0, "expens": [0, 2], "explain": [9, 11, 13, 14, 18, 23], "explan": [0, 19, 21], "explicit": 0, "explicitli": 0, "exploit": 21, "expm": 2, "expm_multipli": [9, 23], "expm_multiply_taylor": [2, 7], "exponenti": [8, 9, 23], "expos": [4, 13], "express": [11, 14, 23], "extra": 8, "extract": 20, "f": [3, 14, 15, 18, 20, 23], "facilit": 11, "fact": 15, "factor": [0, 2, 4, 5, 10, 21, 24], "failur": 6, "fake_provid": [13, 19], "fals": [0, 1, 2, 4, 5, 15, 16, 18], "far": 16, "fast": 0, "faster": [18, 21], "fault": 11, "fci": [0, 14, 15, 18], "fci_energi": 0, "fci_vec": 0, "fcidump": 0, "fcivec": 0, "fedora": 22, "feenberg": 3, "fermi": 0, "fermi_hubbard_1d": [0, 7], "fermi_hubbard_2d": [0, 7], "fermion": [0, 4, 5, 6, 8, 10, 11, 12, 16, 19, 20, 21], "fermion_oper": [0, 7], "fermionact": [0, 7], "fermionoper": [0, 4, 5, 7, 17, 21], "few": [14, 22], "fewer": [13, 19, 23], "ffsim": [7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 22, 23], "ffsim_vec_to_qiskit_vec": [4, 7], "ffsimsampl": [4, 7], "fidel": 23, "field": [0, 2], "fifth": 13, "file": [0, 22], "filter": 0, "final": [0, 3, 4, 5, 13, 19, 23], "final_orbital_rot": 0, "final_st": [18, 23], "final_state_vector": [4, 7], "finish": 23, "finit": 3, "first": [0, 2, 4, 8, 13, 14, 18, 20, 23], "fix": 14, "flag": 0, "float": [0, 2, 3, 4, 5, 6, 9, 12, 23], "float64": [9, 15, 18], "fock": [0, 4, 11, 14, 18, 21, 23], "focu": 9, "follow": [0, 2, 3, 4, 9, 11, 12, 13, 14, 16, 18, 19, 20, 21, 22, 23], "foot": 0, "forg": [0, 17, 21], "form": [0, 1, 2, 4, 5, 8, 9, 11, 12, 16, 20, 23], "format": [0, 4], "formula": [0, 23], "fourth": [8, 13], "frac": [0, 2], "frac12": [0, 8, 9, 11], "frac18": 0, "framework": 22, "from": [0, 2, 4, 5, 6, 8, 11, 12, 13, 14, 15, 16, 18, 19, 21, 23], "from_diag_coulomb_mat": 0, "from_fcidump": 0, "from_fermion_oper": 0, "from_json": 0, "from_mol": 0, "from_molecular_hamiltonian": [0, 23], "from_orbital_rot": 0, "from_paramet": [0, 13, 18], "from_scf": [0, 15, 18, 20, 21, 23], "from_t_amplitud": [0, 18, 20], "frozen": [18, 20], "fsim": 0, "fswap": 0, "ftol": [3, 18], "full": [0, 2, 13, 14, 15], "fulli": 9, "fun": [3, 15, 18], "function": [0, 1, 2, 3, 5, 8, 9, 12, 14, 15, 16, 18, 19, 23], "fundament": 12, "further": [13, 14], "furthermor": [0, 2], "g": [0, 4, 15], "g_": 2, "g_1": 2, "g_i": 3, "g_k": 2, "g_l": 2, "gate": [0, 4, 10, 11, 15, 20, 21], "gener": [0, 3, 4, 5, 6, 8, 13, 14, 15, 19, 20, 21], "generate_norb_nelec": [6, 7], "generate_norb_nelec_spin": [6, 7], "generate_norb_nocc": [6, 7], "generate_norb_spin": [6, 7], "generate_preset_pass_manag": [13, 19], "genericbackendv2": [13, 19], "get": [0, 14, 15, 18, 20, 21, 23], "get_count": 20, "get_hcor": [15, 18], "get_ovlp": [15, 18], "git": 22, "github": [21, 22], "give": [0, 2, 8, 14, 19], "given": [0, 2, 4, 6, 8, 12], "givens_ansatz_op": 4, "givens_decomposit": [2, 7], "givensansatzop": [0, 4, 7], "givensansatzopjw": [4, 7], "givensansatzopspinlessjw": [4, 7], "givensrot": [2, 7], "global": [4, 6], "global_depolar": 4, "go": [0, 13, 16], "good": 16, "gradient": [2, 3, 18], "greater": 3, "ground": [9, 18], "gt": [15, 18, 19, 20], "gto": [15, 18, 20, 21, 23], "gtol": 3, "guarante": [4, 19], "guess": [3, 18], "guid": [11, 15, 18, 19, 20, 21], "gzip": 0, "h": [0, 8, 9, 15, 18, 20, 23], "h1_x": 15, "h2_x": 15, "h2_y": 15, "h_": [0, 2, 8, 9], "h_0": [8, 23], "h_k": [8, 23], "ha": [0, 1, 2, 4, 8, 11, 12, 13, 14, 18], "haar": 5, "ham": 14, "hamiltonian": [0, 3, 4, 5, 10, 15, 18, 20, 21, 24], "hand": 14, "handl": [20, 23], "happen": 13, "hardwar": 13, "hartre": [0, 4, 11, 14, 18, 21, 23], "hartree_fock": 0, "hartree_fock_jw": 13, "hartree_fock_st": [0, 7, 9, 14, 18, 21, 23], "hasattr": 18, "hash": 16, "have": [0, 2, 8, 9, 11, 12, 13, 14, 16, 18, 20, 22], "height": 5, "helper": 16, "here": [0, 2, 8, 12, 13, 15, 23], "hermitian": [0, 2, 5, 12], "hess_inv": [15, 18], "hf": [15, 18], "hf_energi": 0, "hf_mo_coeff": 0, "hf_mo_occ": 0, "high": 13, "higher": [0, 8, 23], "ho": 20, "hold": [0, 3], "home": [15, 18, 22], "hop": [0, 15], "hopgateansatzoper": [0, 7, 15], "hot": [0, 2], "how": [0, 8, 9, 11, 12, 13, 14, 21, 23], "howev": [8, 13, 21], "http": [0, 21, 22], "hubbard": 0, "hydroxyl": 20, "hyperparamet": [3, 18], "i": [0, 1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "idea": 11, "ident": 0, "ignor": [0, 2, 8], "ij": [0, 1, 2, 4, 8, 11, 12], "ijab": 2, "ik": 12, "imag": 22, "implement": [0, 1, 3, 4, 8, 9, 11, 12, 13, 15, 18, 20, 21, 22, 24], "import": [0, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "impos": [11, 18], "improv": [3, 23], "includ": [0, 2, 4, 5, 8, 9, 12, 13, 14, 15, 18, 19, 21, 22], "incorpor": 0, "increas": [0, 14, 23], "increment": 3, "incur": 3, "independ": [0, 1, 4, 15], "index": [0, 2, 11, 14, 16], "indic": [0, 1, 2, 4, 5, 11, 14, 16], "indices_to_str": [0, 7], "individu": [8, 14, 16], "info": 18, "inform": [0, 9, 16, 18, 21, 23], "init_cach": [0, 7], "initi": [0, 3, 4, 5, 6, 9, 11, 13, 18, 19, 20, 23], "initial_st": 23, "initiali": 15, "input": [0, 1, 3, 4, 5, 6, 18, 20], "insert": 13, "instanc": [5, 9, 23], "instead": [0, 2, 4, 5, 18, 23], "instruct": [21, 22], "instructionset": 19, "int": [0, 1, 2, 3, 4, 5, 6, 12, 15, 23], "int32": 0, "integ": [0, 2, 4, 5, 6, 14], "integr": [0, 4], "interact": [0, 1, 2, 4, 5, 11, 13, 18, 20], "interaction_pair": [0, 5, 13, 15, 18, 20], "interfac": [18, 22], "interferomet": 2, "intermedi": 18, "intermediate_result": [3, 18], "intern": 16, "interpret": [0, 5, 11], "intor_symmetr": [15, 18], "introduc": [11, 12, 23], "invers": 4, "involv": [12, 13], "ip": 2, "ipykernel_4140": 9, "is_antihermitian": [2, 7], "is_hermitian": [2, 7], "is_orthogon": [2, 7], "is_real_symmetr": [2, 7], "is_special_orthogon": [2, 7], "is_unitari": [2, 7], "isclos": 0, "isn": 4, "issu": [9, 13], "item": 20, "iter": [0, 3, 4, 6, 18], "itertool": 2, "its": [0, 2, 4, 9, 13, 14, 15, 16, 23], "itself": [0, 14, 16], "j": [0, 1, 2, 4, 5, 8, 11, 12, 14, 15, 16], "jac": [3, 15, 18], "jastrow": [0, 3, 4, 5, 10, 17, 21], "ji": [0, 4, 11, 12], "jk": 12, "job": [4, 20], "jordan": [0, 4], "jordan_wign": [4, 7], "jq": 2, "json": [0, 15, 18], "jupyt": 22, "just": [0, 14, 18, 22, 23], "jwt": 4, "k": [0, 2, 3, 8, 9, 11, 16, 20, 23], "kappa": 0, "kappa_": 0, "keep": [0, 2], "kei": 20, "kij": 23, "know": 15, "known": [0, 8], "kpi": 23, "kqi": 23, "krj": 23, "kron": 0, "ksj": 23, "kwarg": [0, 4], "l": [0, 2, 3, 8, 11, 15, 18, 23], "label": [4, 14], "ladder": [8, 11], "lambda": [0, 4, 20], "lambda_i": [0, 1, 4, 12], "lambda_k": 12, "langl": 0, "larger": [0, 2, 3, 16], "last": [0, 2, 3, 4], "later": [19, 23], "lattic": [0, 11, 13, 18, 20], "layer": [0, 2, 13, 20], "lbfgsinvhessproduct": [15, 18], "ldot": [0, 2, 8, 11, 23], "lead": 0, "least": 2, "left": [0, 4, 12, 14, 16], "len": [15, 18, 23], "length": [0, 4, 5, 14, 15], "leq": [0, 2, 5], "less": [2, 11], "let": [0, 13, 14, 16, 18, 19, 20, 23], "level": 23, "lexicograph": [0, 16], "lib": [15, 18], "libopenbla": 22, "librari": [0, 21], "like": [4, 11, 18, 22], "limit": [0, 2, 11, 13, 15, 18], "linalg": [0, 7, 9, 12, 16, 18, 21, 23], "lindep": 3, "line": [0, 11, 13, 18], "linear": [0, 1, 2, 3, 4, 9, 12, 13, 16], "linear_oper": [0, 7, 9, 16, 18, 21, 23], "linearli": 8, "linearoper": [0, 1, 3, 16, 18, 21, 23], "linop": [9, 16, 21, 23], "linux": 22, "list": [0, 2, 4, 5, 6, 11, 14, 15, 18, 20, 23], "ll": [9, 12, 13, 15, 18, 20, 23], "lm": 16, "load": 0, "local": [10, 17, 21], "localhost": 22, "log": [0, 4], "logarithm": 11, "logic": [12, 15], "longer": 11, "longest": 0, "lookup": 0, "losslessli": 0, "low": [0, 8, 23], "lower": [0, 2], "lowest": [0, 13, 14], "lt": [15, 18, 19, 20], "lu": 2, "lucj": [10, 13, 17, 21], "lup": [2, 7], "lvert": [0, 4, 11, 14], "lzma": 0, "m": [0, 1, 2, 12], "m_": [0, 1, 2], "maco": 22, "made": 23, "magnitud": 0, "mai": [0, 2, 3, 4, 11, 22, 23], "main": [18, 22], "maintain": 8, "make": [11, 13], "manag": [4, 13, 19, 22], "mani": [0, 9, 12, 14, 21], "manual": 23, "many_body_ord": 0, "map": [0, 4, 12, 13, 16], "mapsto": [0, 4, 12], "mat": [0, 1, 2, 4, 12, 14], "mat_aa": 2, "mat_ab": 2, "mat_alpha_beta": 1, "mat_bb": 2, "match": [0, 2], "match_global_phas": [2, 7], "math": [5, 15], "mathbf": [0, 8, 11, 12], "mathcal": [0, 1, 4, 8, 11, 12], "matric": [0, 1, 2, 4, 11, 12, 23], "matrix": [0, 1, 2, 3, 4, 5, 8, 9, 11, 12, 14, 16], "max": [3, 23], "max_error": 23, "max_term_length": 5, "max_vec": [0, 2, 23], "maxfun": 15, "maximum": [0, 2, 3, 5, 23], "maxit": [3, 18], "mcscf": [15, 18], "mea": 20, "meant": [4, 19], "measur": [5, 8, 20], "measure_al": 20, "mention": 8, "merg": [4, 19], "mergeorbitalrot": [4, 7, 13], "messag": [6, 15, 18], "method": [0, 2, 3, 11, 15, 16, 20, 21], "mid": 20, "might": 2, "mind": 23, "minim": [0, 2, 3, 13, 15, 18], "minimize_linear_method": [3, 7, 18], "minimizz": 15, "minimum": 4, "mk": 2, "mkap": 2, "mkbq": 2, "mkip": 2, "mkjq": 2, "mkpq": 2, "mo_coeff": 0, "mo_occ": 0, "mode": 12, "model": 0, "modifi": [0, 2], "modified_choleski": [2, 7], "modul": [0, 14, 15, 19, 20], "mol": [15, 18, 20, 21, 23], "mol_data": [15, 18, 20, 21, 23], "mol_hamiltonian": [9, 15, 18, 20, 23], "mole": [0, 15, 18, 20, 21, 23], "molecul": [0, 18, 21, 23], "molecular": [0, 5, 9, 10, 14, 15, 18, 20, 21, 23], "moleculardata": [0, 7, 15, 18, 20, 21, 23], "molecularhamiltonian": [0, 5, 7, 9, 23], "more": [0, 2, 3, 4, 8, 9, 11, 13, 14, 19, 23], "most": [0, 2, 16, 20], "motiv": 13, "mp2": 0, "mp2_energi": 0, "mp2_t2": 0, "mpl": [13, 19], "msg": [15, 18], "mu": 0, "much": [0, 2, 8, 13, 21], "multipl": [0, 9, 16, 23], "multipli": [0, 16], "multiport": 2, "multirefer": 0, "multireference_st": [0, 7], "multireference_state_prod": [0, 7, 15], "must": [0, 2, 3, 4, 5, 16, 20], "n": [0, 2, 3, 8, 9, 11, 12, 14, 20, 21, 23], "n2": [20, 21, 23], "n_": [0, 1, 4, 8, 11, 12, 14], "n_alpha": [4, 6, 20], "n_beta": [4, 6, 20], "n_frozen": [20, 23], "n_i": 4, "n_j": 4, "n_layer": 15, "n_p": 0, "n_param": [0, 13], "n_qubit": 4, "n_rep": [0, 5, 13, 18, 19, 20], "n_sampl": 0, "n_step": [0, 4, 13, 19, 23], "n_term": 5, "n_vec": 2, "n_x": 0, "n_y": 0, "name": [0, 9, 13, 14, 19, 22], "namedtupl": [0, 2], "nan": 6, "nao_nr": [15, 18, 20, 21, 23], "nativ": 21, "navig": 22, "ndarrai": [0, 1, 2, 3, 4, 5, 6, 12, 18, 23], "nearest": 0, "nearest_neighbor_interact": 0, "need": [0, 4, 9, 11, 13, 20, 22, 23], "neg": [0, 4], "neglig": 4, "neighbor": [0, 13], "nelec": [0, 1, 4, 6, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "nelectron": 18, "neq": 0, "nest": 2, "network": 11, "new": [0, 4, 12, 16], "newli": 0, "next": [13, 15, 23], "nfev": [3, 15, 18], "nit": [15, 18], "nitrogen": [20, 23], "njev": [15, 18], "nlinop": [3, 18], "nn": 0, "nocc": [0, 5, 6], "nocc_a": 2, "nocc_b": 2, "noisi": [4, 11], "non": [4, 11], "none": [0, 1, 2, 3, 4, 5, 6], "nonzero": [0, 2, 5, 11], "norb": [0, 1, 2, 4, 5, 6, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "norb_i": 0, "norb_rang": 6, "norb_x": 0, "norm": [0, 18], "normal": [0, 15, 16], "normal_ord": [0, 16], "note": [0, 2, 3, 13, 14, 16, 19, 21], "notebook": 22, "notic": 18, "notimplementederror": 4, "now": [9, 13, 15, 18, 20, 23], "np": [0, 2, 4, 5, 6, 9, 12, 13, 15, 18, 19, 20, 21, 23], "num_num_ansatz_op": 4, "num_op_sum_linop": [1, 7], "number": [0, 1, 2, 3, 4, 5, 6, 8, 9, 12, 14, 15, 16, 18, 21, 23], "number_oper": [0, 7], "numer": [0, 2, 4, 16], "numnumansatzopspinbalanc": [0, 4, 7], "numnumansatzopspinbalancedjw": [4, 7], "numopsumevolutionjw": [4, 7, 13, 19], "numopsumevolutionspinlessjw": [4, 7], "numpi": [0, 1, 2, 4, 6, 9, 11, 12, 13, 14, 15, 18, 19, 20, 21, 23], "o": [0, 15, 20], "o_1": 0, "o_2": 0, "o_k": 0, "obj": 0, "object": [0, 2, 3, 4, 5, 9, 16, 18, 20], "obtain": [0, 8, 9, 12, 13, 18, 23], "occ_a": 6, "occ_b": 6, "occup": [0, 6, 8, 12, 14], "occupi": [0, 4, 5, 6, 13, 14], "occupied_orbit": [0, 4, 13, 19, 20], "often": [8, 11, 18], "onc": [12, 13, 22], "one": [0, 1, 2, 4, 5, 8, 9, 13, 14, 18, 20, 22, 23], "one_body_basis_chang": 23, "one_body_energi": 23, "one_body_integr": 0, "one_body_linop": [1, 7], "one_body_squar": 0, "one_body_tensor": [0, 9, 23], "one_hot": [0, 2, 7], "one_rdm": 0, "ones": 9, "onli": [0, 2, 4, 8, 11, 12, 13, 20, 22], "onsit": 0, "onto": [13, 16], "op": [0, 4, 16], "op1": [0, 16], "op2": [0, 16], "op3": 16, "op4": 16, "opaqu": 13, "open": [0, 11], "openbla": 22, "oper": [0, 1, 2, 3, 4, 5, 8, 11, 12, 16, 18, 22, 23], "oppos": 13, "opposit": [18, 20], "optim": [0, 2, 4, 7, 11, 13, 19, 21], "optimization_level": [13, 19], "optimize_kwarg": 3, "optimize_regular": 3, "optimize_vari": 3, "optimizeresult": [3, 18], "option": [0, 1, 2, 3, 4, 5, 9, 15, 18, 22], "orb": [0, 16], "orbit": [0, 1, 2, 4, 5, 6, 8, 9, 10, 11, 14, 15, 16, 18, 20, 21, 23], "orbital_rot": [0, 1, 2, 4, 12, 13, 14, 19, 20, 21, 23], "orbital_rotation_a": 2, "orbital_rotation_b": 2, "orbital_symmetri": 0, "orbitalrotationjw": [4, 7, 13, 19, 20], "orbitalrotationspinlessjw": [4, 7], "order": [0, 1, 2, 4, 5, 8, 9, 13, 14, 16, 19, 20, 23], "ordereddict": [13, 19], "org": 0, "origin": [0, 2, 11, 13, 23], "orthogon": [2, 5], "other": [0, 4, 11, 14, 18, 19, 20], "otherwis": 0, "our": [15, 18, 20, 23], "out": [2, 23], "output": [0, 3, 4, 13, 18, 20], "over": 0, "overrid": [0, 2], "overwritten": [0, 15, 18], "own": 4, "p": [0, 2, 8, 9, 11, 13, 18, 19, 20], "packag": [15, 18, 22], "pacman": 22, "pad": 0, "page": [8, 9, 11, 12, 13, 14], "pair": [0, 1, 2, 4, 5, 6, 11, 13, 14], "pairs_aa": [13, 18, 20], "pairs_ab": [13, 18, 20], "pairs_bb": 20, "paper": 11, "parallel": [2, 11, 13], "param": 0, "paramet": [0, 1, 2, 3, 4, 5, 6, 11, 15, 18], "parameter_valu": 4, "params_to_vec": [3, 18], "pars": [15, 18], "part": [0, 5, 8, 12, 14, 15], "particl": [0, 5, 6, 12, 16, 21], "pass": [0, 1, 2, 4, 9, 12, 13, 14, 15, 16, 18, 19], "pass_manag": [13, 19], "passmanag": [4, 13], "path": 0, "pathlik": 0, "pattern": [13, 15], "pauli": 0, "per": 23, "perform": [0, 2, 3, 8, 9, 12, 13, 20, 23], "period": 0, "periodic_i": 0, "periodic_x": 0, "permut": 2, "persist": 22, "ph": 5, "phase": [0, 2, 4, 6, 13], "phase_angl": 0, "phaseg": 13, "phi": [0, 2, 6], "phi_0": 11, "pi": [0, 15], "piec": [9, 16], "pip": 21, "pipelin": 13, "pivot": 2, "pk": 2, "place": [0, 2, 11, 13, 16, 22], "plain": 14, "pmatrix": [0, 2], "point": 0, "polar": 0, "posit": [2, 3, 14], "possibl": [0, 2, 6, 20, 21], "possibli": [0, 18], "potenti": 0, "power": 0, "pq": [0, 2, 8, 9], "pqr": [0, 2, 8, 9, 23], "practic": 8, "pre": [11, 19], "pre_init": [4, 7, 13, 19], "pre_init_pass": [4, 7, 19], "precis": 6, "prepar": [0, 4, 20], "preparehartreefockjw": [4, 7, 13, 19, 20], "preparehartreefockspinlessjw": [4, 7, 20], "prepareslaterdeterminantjw": [4, 7, 13, 19, 20], "prepareslaterdeterminantspinlessjw": [4, 7, 20], "present": 3, "preserv": [16, 20], "preset_passmanag": [13, 19], "previou": [18, 20], "previous": [8, 13, 14, 18], "primit": [4, 17, 21], "primitivejob": 4, "primitiveresult": 4, "print": [0, 6, 13, 14, 15, 16, 18, 20, 21, 23], "probabl": [0, 4], "problem": 3, "process": 0, "processor": 11, "prod": 15, "prod_": [0, 4, 11], "prod_k": 8, "prod_state_sum": 0, "produc": [0, 13], "product": [0, 2, 8, 14, 15, 16], "productstatesum": [0, 7], "programmat": 16, "properti": [0, 2, 12], "proport": [0, 8], "protocol": 0, "provid": [9, 13, 19, 22], "pseudorandom": [0, 4, 5, 6], "psi": [0, 11], "pub": [4, 20], "pub_result": 20, "put": 15, "py": [9, 15, 18], "pypi": 22, "pyscf": [0, 4, 14, 15, 18, 20, 21, 23], "python3": [15, 18], "q": [0, 8, 9, 13, 19], "qdrift": 0, "qi": 0, "qiskit": [7, 13, 17, 21, 22], "qiskit_vec_to_ffsim_vec": [4, 7], "qk": 2, "quadrat": [8, 10, 21, 23], "qualnam": 0, "quantifi": 2, "quantiti": 0, "quantum": [0, 4, 8, 11, 13, 14, 17, 20, 21], "quantumcircuit": [4, 13, 19, 20], "quantumregist": [13, 19, 20], "qubit": [0, 4, 10, 11, 15, 19, 20, 21], "r": [0, 2, 8, 9], "radic": 20, "radius_1": 15, "radius_2": 15, "rais": [0, 2, 4, 6], "random": [0, 4, 6, 7, 9, 13, 14, 15, 16, 19, 20, 21], "random_antihermitian": [5, 7], "random_diagonal_coulomb_hamiltonian": [5, 7], "random_double_factorized_hamiltonian": [5, 7, 13, 19], "random_fermion_hamiltonian": [5, 7], "random_fermion_oper": [5, 7], "random_hermitian": [5, 7], "random_molecular_hamiltonian": [5, 7], "random_nelec": [6, 7], "random_occupied_orbit": [6, 7], "random_orthogon": [5, 7], "random_real_symmetric_matrix": [5, 7, 9, 13, 19, 20], "random_special_orthogon": [5, 7], "random_state_vector": [5, 7, 16], "random_statevector": [5, 7], "random_t2_amplitud": [5, 7], "random_two_body_tensor": [5, 7, 9], "random_uccsd_restrict": [5, 7], "random_ucj_op_spin_balanc": [5, 7, 13, 19], "random_ucj_op_spin_unbalanc": [5, 7, 19], "random_ucj_op_spinless": [5, 7], "random_unitari": [5, 7, 13, 14, 19, 20, 21], "rang": [0, 2, 6, 13, 14, 15, 18, 20, 21, 23], "rangl": [0, 4, 11, 14], "rank": [0, 2, 5, 8, 13], "rather": [0, 5, 12, 14], "rccsd": 20, "rdm": [0, 7], "rdm1": 0, "rdm2": 0, "rdm3": 0, "rdm4": 0, "reach": 18, "read": 0, "real": [0, 1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 18, 21], "reason": [4, 12], "recal": 13, "recommend": [4, 13, 16, 19, 21], "reconstruct": [0, 2, 23], "reconstruct_t2_alpha_beta": 2, "recover": 0, "reduc": [0, 2, 13], "reduced_matrix": [2, 7], "reduced_matrix_product_st": 0, "reduct": 18, "redund": 11, "refer": [0, 2, 3, 4, 5, 6, 11, 12, 14, 18, 21], "reference_occup": [0, 15], "reference_occupations_spati": 15, "reference_st": 18, "regress": 0, "regular": [3, 18], "rel": [0, 2, 4, 6, 18], "rel_reduction_of_f_": 18, "relat": 12, "releas": 21, "reorder": [0, 8], "rep": 13, "repeat": 15, "repeatedli": 12, "repetit": [0, 5, 11, 13, 18], "repositori": 22, "repr": 16, "repres": [0, 2, 3, 4, 5, 6, 9, 11, 14, 16, 18, 19], "represent": [0, 1, 2, 4, 5, 10, 14, 16, 21, 23], "reproduc": 23, "request": 0, "requir": [0, 9, 11, 13, 14, 22], "reshap": 14, "respect": [0, 2, 3, 23], "rest": [0, 13], "restrict": [0, 5, 13, 18], "result": [0, 1, 2, 3, 4, 5, 8, 9, 11, 13, 15, 18, 19, 20, 23], "retain": [0, 13], "retriev": 20, "return": [0, 1, 2, 3, 4, 5, 6, 12, 15, 16, 18, 23], "return_lower_rank": 0, "revers": 20, "rewrit": 0, "rewritten": 12, "rhf": [0, 15, 18, 20, 21, 23], "right": [0, 4, 12, 14, 16], "ring": 0, "rise": [2, 8], "rng": [9, 13, 15, 19, 20], "rohf": 20, "root": 0, "rotat": [0, 1, 2, 4, 5, 8, 10, 11, 14, 21, 23], "rotated_vec": 14, "routin": [2, 9, 16], "row": [0, 2, 14], "rtol": [0, 2, 4, 6], "rtype": [0, 2, 4], "run": [0, 4, 13, 15, 18, 19, 20, 21, 22, 23], "run_ccsd": 0, "run_cisd": 0, "run_fci": [0, 15, 18], "run_mp2": 0, "run_sci": 0, "rung": 11, "runner": [15, 18], "rust": 22, "rvert": 0, "s_": [0, 14], "s_a": 0, "s_b": 0, "sa": 9, "same": [0, 9, 11, 12, 13, 14, 15, 18, 20], "sampl": [0, 4, 5, 6, 9], "sample_slater_determin": [0, 7], "sample_state_vector": [0, 7], "sampler": [0, 4, 17, 21], "samplerpubresult": 4, "sandwich": 13, "satisfi": [0, 12, 16, 20, 22], "save": [0, 18, 22], "scalar": [0, 16], "scale": [8, 13, 15, 19], "scf": [0, 15, 18, 20, 21, 23], "scf_func": 0, "scheme": 8, "sci": 0, "sci_energi": 0, "sci_vec": 0, "scipi": [0, 2, 3, 15, 16, 18, 21, 23], "search": 14, "second": [0, 2, 4, 8], "section": [8, 19], "sector": [0, 1, 2, 4, 15], "see": [0, 2, 4, 11, 13, 14, 19, 22, 23], "seed": [0, 4, 5, 6, 9, 13, 14, 19, 20, 21], "seen": 20, "select": 3, "sens": [13, 23], "separ": [0, 11, 14], "sequenc": [0, 2, 4, 13], "seri": 2, "serial": 0, "serializ": [15, 18], "set": [0, 1, 2, 4, 5, 8, 11, 12, 13, 19, 23], "setup": 11, "sever": [9, 13], "shape": [0, 2, 5, 11, 23], "share": 11, "shell": [11, 18], "shot": [0, 4, 20], "should": [0, 1, 2, 4, 5, 6, 9, 12, 22], "show": [13, 15, 16, 18, 19, 20], "shown": 16, "side": 0, "sigma": [0, 1, 4, 8, 9, 11, 12], "sign": 0, "signatur": 3, "signific": 23, "significantli": 13, "similar": 18, "simpl": [20, 22], "simpler": 0, "simpli": [4, 13, 14], "simplist": 23, "simul": [0, 4, 8, 11, 12, 14, 17, 21, 24], "simulate_qdrift_double_factor": [0, 7], "simulate_trotter_diag_coulomb_split_op": [0, 7], "simulate_trotter_double_factor": [0, 7, 8, 23], "simulate_trotter_step_double_factor": 23, "simulatetrotterdiagcoulombsplitopjw": [4, 7], "simulatetrotterdoublefactorizedjw": [4, 7, 13, 19], "sin": [0, 15], "sinc": [0, 2, 11, 12, 15, 18], "singl": [0, 1, 4, 6, 8, 13, 23], "singlefactorizedhamiltonian": [0, 7], "singular": [0, 2], "site": [0, 15, 18], "size": [0, 3, 15], "slater": [0, 4], "slater_determin": [0, 7], "slater_determinant_amplitud": [0, 7], "slater_determinant_rdm": [0, 7], "slice": 2, "small": 2, "smaller": [0, 2, 8, 16, 23], "so": [0, 2, 6, 8, 11, 12, 13, 15, 16, 22, 23], "softwar": [0, 21], "solv": 3, "some": [0, 2, 6, 9, 13, 14, 16, 18, 20], "sometim": [0, 14], "sort": 20, "sourc": [0, 1, 2, 3, 4, 5, 6, 21], "space": [0, 9, 14, 15, 18, 20, 23], "span": [0, 2], "spars": [9, 16, 23], "sparsepauliop": 4, "sparsiti": 11, "spatial": [0, 1, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 23], "speci": [4, 6], "special": [2, 5, 11, 13, 21], "specif": 14, "specifi": [0, 1, 2, 3, 4, 5, 6, 9, 11, 13, 15, 23], "spectral": 0, "spin": [0, 1, 2, 4, 5, 6, 7, 12, 13, 14, 15, 16, 18, 20, 21], "spin_squar": [0, 7], "spin_sum": 0, "spinless": [0, 4, 5, 6], "split": [0, 4, 23], "squar": [0, 2, 11, 13, 18, 20], "stack": 0, "stage": [4, 13, 19], "standard": 18, "standard_norm": [9, 13, 19], "star": 2, "start": 0, "state": [0, 1, 3, 4, 5, 9, 10, 11, 12, 13, 18, 20, 21, 23], "statevector": [0, 4, 7], "static": 0, "statist": 20, "statu": [15, 18], "step": [0, 4, 8, 12, 15, 19, 23], "step_tim": 23, "still": [0, 8], "sto": [0, 15, 18, 23], "stop": [3, 15, 18], "store": [0, 2, 4, 6, 9, 11, 13, 18, 19, 23], "store_cisd_vec": 0, "store_fci_vec": 0, "store_sci_vec": 0, "store_t1": 0, "store_t2": 0, "str": [0, 2, 4, 6], "straightforward": 2, "strategi": 0, "strength": 0, "strictli": 3, "string": [0, 14, 16], "strings_a": 0, "strings_b": 0, "strings_to_address": [0, 7], "strings_to_indic": [0, 7], "structur": [0, 8], "sub": 0, "subdirectori": 22, "submit": 20, "subroutin": 12, "subspac": [0, 2, 16], "substitut": [0, 5], "subsystem": [14, 22], "subtract": [0, 16], "success": [15, 18], "sudo": 22, "suffix": 15, "suggest": 19, "sum": [0, 4, 8, 23], "sum_": [0, 1, 2, 4, 8, 9, 11, 12, 23], "sum_j": 12, "sum_k": [8, 12], "sum_p": 0, "sum_t": 0, "summat": 0, "support": [0, 2, 9, 14, 16, 20, 22], "supportsapplyunitari": [0, 7], "supportsapproximateequ": [0, 7], "supportsdiagon": [0, 7], "supportsfermionoper": [0, 7], "supportslinearoper": [0, 7], "supportstrac": [0, 7], "suzuki": [0, 23], "swap": [0, 11, 13], "symmetr": [0, 2, 4, 5, 8, 11], "symmetri": [0, 12, 15, 18, 20, 21, 23], "system": [0, 4, 6, 12, 14, 22], "t": [0, 2, 4, 8, 11, 12, 20, 21], "t1": 0, "t1a": 0, "t1b": 0, "t2": [0, 2, 5, 18, 20], "t2_amplitud": 2, "t2aa": 0, "t2ab": 0, "t2bb": 0, "t_": 2, "tabl": [0, 16], "take": [0, 3, 18, 19], "taken": 11, "target": [2, 13], "target_orb": 0, "tau": [0, 1, 4, 8, 9, 11], "taylor": 2, "tensor": [0, 1, 2, 5, 8, 9, 18, 23], "term": [0, 2, 5, 8, 11, 16, 23], "test": [7, 21, 23], "text": [0, 8, 9], "th": [2, 12], "than": [0, 4, 5, 12, 13, 14, 18, 21], "thei": [0, 9, 11, 12, 16], "them": [11, 13, 14], "therefor": [0, 2, 11], "theta": [0, 15], "thi": [0, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 18, 19, 20, 21, 22, 23], "think": 2, "third": [0, 2], "those": [3, 18], "though": 13, "three": [0, 1, 4, 9, 16], "threshold": [0, 2, 3], "thu": 8, "time": [0, 2, 3, 4, 9, 13, 14, 19, 20, 23], "titl": 21, "tmp": [9, 15, 18], "tmpkl79nbln": 15, "tmpsd2yb9dw": 18, "to_diag_coulomb_mat": 0, "to_fcidump": 0, "to_json": 0, "to_molecular_hamiltonian": 0, "to_number_represent": 0, "to_orbital_rot": 0, "to_paramet": [0, 18], "to_z_represent": 0, "tol": [0, 2, 23], "toler": [0, 2, 4, 6, 11, 23], "too": 2, "top": 20, "topologi": [11, 13, 18], "toru": 0, "total": [4, 8, 15, 18, 23], "tox": [15, 18], "trace": [0, 7, 9, 23], "tracea": [9, 23], "trajectori": 0, "transform": [0, 1, 4], "transformationpass": 4, "transpil": [4, 13, 17, 21], "transpiled_opt": 13, "treat": 0, "triangl": 11, "trianglular": [0, 2], "triangular": [0, 2, 4, 5], "triplet": 6, "trotter": [0, 4, 21, 24], "true": [0, 2, 3, 4, 6, 16, 18, 20], "truncat": 8, "try": 23, "tunnel": 0, "tupl": [0, 1, 2, 4, 5, 6, 12, 15, 16, 23], "tutori": [21, 23], "twice": [0, 15, 19], "two": [0, 2, 5, 8, 9, 11, 13, 14, 15, 18, 22, 23], "two_body_integr": 0, "two_body_tensor": [0, 2, 9, 23], "type": [0, 1, 2, 3, 4, 5, 6, 20, 22], "typeerror": 0, "typic": 0, "u": [0, 1, 2, 4, 8, 11, 12], "u_": 4, "u_k": 0, "ubuntu": 22, "uccsd": [0, 5, 20], "uccsdoprestrictedr": [0, 5, 7], "ucj": [0, 4, 5], "ucj_balanced_jw": 13, "ucj_op": [4, 13, 19, 20], "ucjoperatorjw": 4, "ucjopspinbalanc": [0, 4, 5, 7, 11, 13, 18, 20], "ucjopspinbalancedjw": [4, 7, 13, 19, 20], "ucjopspinless": [0, 4, 5, 7], "ucjopspinlessjw": [4, 7], "ucjopspinunbalanc": [0, 4, 5, 7, 11, 20], "ucjopspinunbalancedjw": [4, 7, 13, 19, 20], "uhf": 20, "unbalanc": [0, 4, 5, 20], "uncorrel": 0, "under": [0, 4], "underli": 4, "unifi": 20, "uniform": [0, 4, 5], "unimpl": 4, "union": [2, 4], "unit": 2, "unitari": [0, 1, 2, 4, 5, 8, 10, 12, 14, 17, 21], "univers": 2, "unlik": 0, "unord": 0, "untouch": 0, "up": [0, 2, 6, 8, 14, 22], "updat": [0, 8], "upon": 16, "upper": [0, 2, 4, 5, 11], "url": 21, "us": [0, 1, 2, 3, 4, 5, 8, 9, 11, 12, 13, 14, 15, 17, 18, 19, 21, 23], "usag": [0, 2, 16, 19], "user": 22, "userwarn": [9, 15, 18], "usual": 0, "util": [2, 5, 6, 8], "v": [0, 20], "v_": 0, "v_i": 2, "v_j": 2, "vacuum": 4, "valid": [0, 4, 5, 6], "valu": [0, 1, 2, 3, 4, 5, 6, 9, 11, 18, 19, 23], "valueerror": [0, 2, 4], "vari": [0, 4], "variabl": [14, 23], "variant": [11, 13, 18], "variat": [0, 3, 11, 18], "variation": 18, "varphi": 0, "vdot": [18, 21, 23], "ve": 23, "vec": [0, 1, 2, 4, 9, 12, 14, 16, 21, 23], "vec_a": 0, "vec_b": 0, "vector": [0, 1, 2, 3, 4, 5, 9, 10, 11, 12, 15, 16, 18, 21], "verbos": 6, "verifi": 2, "version": 4, "vertic": 0, "via": [0, 23], "view": [0, 16], "volum": 22, "w": 0, "wa": [0, 3, 4, 11], "wai": 11, "want": 13, "warn": [9, 15, 18, 20], "water": 15, "wavefunct": [3, 18], "we": [0, 2, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "web": 22, "weight": 14, "well": [3, 14, 21, 22, 23], "when": [0, 3, 4, 9, 11, 13, 14, 16, 19, 21], "whenev": 0, "where": [0, 1, 2, 3, 4, 5, 8, 11, 12, 14, 22, 23], "whether": [0, 1, 2, 3, 4, 5, 16], "which": [0, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 22, 23], "while": [8, 11], "whose": [0, 2, 14], "width": 5, "wigner": [0, 4], "william": 2, "window": [21, 22], "wise": 2, "with_final_orbital_rot": [0, 5], "with_phase_angl": 0, "with_phi": 0, "within": [0, 2, 13, 16, 18, 21], "without": [11, 13, 18], "won": 21, "word": [0, 11, 20], "work": [9, 13, 15, 18, 19, 21, 22], "workflow": 20, "would": [13, 14], "wrapper": 23, "write": 23, "written": 8, "wrote": 23, "wsl": 22, "x": [0, 3, 4, 13, 15, 18, 19, 20], "x0": [3, 15, 18], "xx_plus_yi": [13, 19], "xxplusyyg": [13, 19], "y": 0, "yaml": 22, "yet": [9, 18], "yield": [0, 2, 4, 8, 11, 15, 23], "you": [0, 1, 2, 4, 9, 14, 18, 21, 22, 23], "your": [19, 22], "z": [0, 1, 2, 4, 5, 12, 16, 21], "z_represent": [0, 1, 4, 5], "zero": [0, 2, 4, 9, 19], "zip": [0, 15, 18, 23], "\u03c8": 18}, "titles": ["ffsim", "ffsim.contract", "ffsim.linalg", "ffsim.optimize", "ffsim.qiskit", "ffsim.random", "ffsim.testing", "API reference", "Double-factorized representation of the molecular Hamiltonian", "Hamiltonians", "Explanations", "The local unitary cluster Jastrow (LUCJ) ansatz", "Orbital rotations and quadratic Hamiltonians", "Qubit gate decompositions of fermionic gates", "State vectors and gates", "How to simulate entanglement forging", "How to use the FermionOperator class", "How-to guides", "How to simulate the local unitary cluster Jastrow (LUCJ) ansatz", "How to build and transpile Qiskit quantum circuits", "How to use ffsim\u2019s Qiskit Sampler primitive", "ffsim", "Installation", "Implementing Trotter simulation of the double-factorized Hamiltonian", "Tutorials"], "titleterms": {"": 20, "The": 11, "action": 9, "an": 20, "ansatz": [11, 15, 18], "api": 7, "applic": 8, "background": 8, "balanc": [11, 19], "brief": 8, "build": [15, 19, 23], "can": 20, "choos": 15, "circuit": [19, 20], "cite": 21, "class": 16, "close": 20, "cluster": [11, 13, 18, 19], "code": 21, "comput": 15, "content": 21, "contract": 1, "coulomb": [13, 19], "criteria": 20, "data": 9, "decomposit": 13, "determin": [13, 19], "diagon": [13, 19], "docker": 22, "doubl": [8, 13, 19, 23], "energi": 15, "entangl": 15, "evolut": [8, 12, 13, 19], "exampl": [20, 21], "explan": 10, "factor": [8, 13, 19, 23], "fermion": [13, 14], "fermionoper": 16, "ffsim": [0, 1, 2, 3, 4, 5, 6, 20, 21], "ffsimsampl": 20, "fock": [13, 19], "forg": 15, "formula": 8, "from": [20, 22], "gate": [13, 14, 19], "gener": [11, 18], "guid": 17, "hamiltonian": [8, 9, 12, 13, 19, 23], "hartre": [13, 19], "how": [15, 16, 17, 18, 19, 20], "implement": 23, "initi": 15, "instal": [21, 22], "jastrow": [11, 13, 18, 19], "linalg": 2, "linear": 18, "linearoper": 9, "local": [11, 13, 18], "lucj": [11, 18, 20], "merg": 13, "method": 18, "molecul": [15, 20], "molecular": 8, "more": 20, "number": [13, 19], "occup": 15, "open": 20, "oper": [9, 13, 15, 19], "optim": [3, 15, 18], "orbit": [12, 13, 19], "overview": 19, "pip": 22, "prepar": [13, 19], "primit": 20, "qiskit": [4, 19, 20], "quadrat": 12, "quantum": 19, "qubit": 13, "random": 5, "refer": [7, 15], "represent": [8, 9], "rotat": [12, 13, 19], "sampl": 20, "sampler": 20, "scipi": 9, "shell": 20, "simul": [13, 15, 18, 19, 23], "slater": [13, 19], "sourc": 22, "spin": [11, 19], "spinless": 14, "state": [14, 19], "sum": [13, 19], "suzuki": 8, "test": 6, "time": [8, 12], "transform": 19, "transpil": 19, "treat": 14, "trotter": [8, 13, 19, 23], "tutori": 24, "ucj": [11, 13, 18, 19], "unbalanc": [11, 19], "unitari": [11, 13, 18, 19], "us": [16, 20, 22], "vector": 14, "via": [8, 9], "within": 22}}) \ No newline at end of file diff --git a/dev/tutorials/double-factorized-trotter.html b/dev/tutorials/double-factorized-trotter.html index 20cadaeff..90df56eaa 100644 --- a/dev/tutorials/double-factorized-trotter.html +++ b/dev/tutorials/double-factorized-trotter.html @@ -6,7 +6,7 @@ - Implementing Trotter simulation of the double-factorized Hamiltonian - ffsim 0.0.48.dev0 + Implementing Trotter simulation of the double-factorized Hamiltonian - ffsim 0.0.48 @@ -160,7 +160,7 @@

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

@@ -623,7 +623,7 @@

Implement Trotter simulation
-Fidelity of Trotter-evolved state with exact state: 0.9985210982782917
+Fidelity of Trotter-evolved state with exact state: 0.9985212861520422
 

In the code cell below, we reproduce the results of our manually implemented function using ffsim’s built-in implementation.

@@ -651,7 +651,7 @@

Implement Trotter simulation
-Fidelity of Trotter-evolved state with exact state: 0.9985210982781565
+Fidelity of Trotter-evolved state with exact state: 0.9985212861519472
 

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

@@ -679,7 +679,7 @@

Implement Trotter simulation
-Fidelity of Trotter-evolved state with exact state: 0.9996731173188249
+Fidelity of Trotter-evolved state with exact state: 0.9996731164191563
 

You’ve made it to the end of this tutorial!

@@ -755,7 +755,7 @@

Implement Trotter simulation + diff --git a/dev/tutorials/double-factorized-trotter.ipynb b/dev/tutorials/double-factorized-trotter.ipynb index bcc14d8d6..e058e01b5 100644 --- a/dev/tutorials/double-factorized-trotter.ipynb +++ b/dev/tutorials/double-factorized-trotter.ipynb @@ -18,10 +18,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:53.427921Z", - "iopub.status.busy": "2024-10-30T11:04:53.427469Z", - "iopub.status.idle": "2024-10-30T11:04:54.199474Z", - "shell.execute_reply": "2024-10-30T11:04:54.198896Z" + "iopub.execute_input": "2024-10-30T17:24:31.375719Z", + "iopub.status.busy": "2024-10-30T17:24:31.375291Z", + "iopub.status.idle": "2024-10-30T17:24:32.122148Z", + "shell.execute_reply": "2024-10-30T17:24:32.121566Z" } }, "outputs": [ @@ -29,7 +29,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "converged SCF energy = -108.464957764795\n" + "converged SCF energy = -108.464957764796\n" ] }, { @@ -80,10 +80,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.203151Z", - "iopub.status.busy": "2024-10-30T11:04:54.202076Z", - "iopub.status.idle": "2024-10-30T11:04:54.206796Z", - "shell.execute_reply": "2024-10-30T11:04:54.206336Z" + "iopub.execute_input": "2024-10-30T17:24:32.124940Z", + "iopub.status.busy": "2024-10-30T17:24:32.124320Z", + "iopub.status.idle": "2024-10-30T17:24:32.128523Z", + "shell.execute_reply": "2024-10-30T17:24:32.128099Z" } }, "outputs": [], @@ -106,10 +106,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.208835Z", - "iopub.status.busy": "2024-10-30T11:04:54.208366Z", - "iopub.status.idle": "2024-10-30T11:04:54.213278Z", - "shell.execute_reply": "2024-10-30T11:04:54.212796Z" + "iopub.execute_input": "2024-10-30T17:24:32.130523Z", + "iopub.status.busy": "2024-10-30T17:24:32.130043Z", + "iopub.status.idle": "2024-10-30T17:24:32.134942Z", + "shell.execute_reply": "2024-10-30T17:24:32.134447Z" } }, "outputs": [ @@ -172,10 +172,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.215080Z", - "iopub.status.busy": "2024-10-30T11:04:54.214896Z", - "iopub.status.idle": "2024-10-30T11:04:54.219051Z", - "shell.execute_reply": "2024-10-30T11:04:54.218568Z" + "iopub.execute_input": "2024-10-30T17:24:32.136686Z", + "iopub.status.busy": "2024-10-30T17:24:32.136496Z", + "iopub.status.idle": "2024-10-30T17:24:32.140408Z", + "shell.execute_reply": "2024-10-30T17:24:32.139948Z" } }, "outputs": [ @@ -208,10 +208,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.220804Z", - "iopub.status.busy": "2024-10-30T11:04:54.220616Z", - "iopub.status.idle": "2024-10-30T11:04:54.224629Z", - "shell.execute_reply": "2024-10-30T11:04:54.224127Z" + "iopub.execute_input": "2024-10-30T17:24:32.142562Z", + "iopub.status.busy": "2024-10-30T17:24:32.142044Z", + "iopub.status.idle": "2024-10-30T17:24:32.145932Z", + "shell.execute_reply": "2024-10-30T17:24:32.145372Z" } }, "outputs": [ @@ -242,10 +242,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.226489Z", - "iopub.status.busy": "2024-10-30T11:04:54.226146Z", - "iopub.status.idle": "2024-10-30T11:04:54.244121Z", - "shell.execute_reply": "2024-10-30T11:04:54.243650Z" + "iopub.execute_input": "2024-10-30T17:24:32.147920Z", + "iopub.status.busy": "2024-10-30T17:24:32.147547Z", + "iopub.status.idle": "2024-10-30T17:24:32.165114Z", + "shell.execute_reply": "2024-10-30T17:24:32.164615Z" } }, "outputs": [ @@ -253,7 +253,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Maximum error in a tensor entry: 0.036685417309836654\n" + "Maximum error in a tensor entry: 0.03668541730983588\n" ] } ], @@ -302,10 +302,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.246004Z", - "iopub.status.busy": "2024-10-30T11:04:54.245671Z", - "iopub.status.idle": "2024-10-30T11:04:54.249925Z", - "shell.execute_reply": "2024-10-30T11:04:54.249337Z" + "iopub.execute_input": "2024-10-30T17:24:32.167130Z", + "iopub.status.busy": "2024-10-30T17:24:32.166772Z", + "iopub.status.idle": "2024-10-30T17:24:32.170695Z", + "shell.execute_reply": "2024-10-30T17:24:32.170229Z" } }, "outputs": [], @@ -360,10 +360,10 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.251864Z", - "iopub.status.busy": "2024-10-30T11:04:54.251533Z", - "iopub.status.idle": "2024-10-30T11:04:54.255136Z", - "shell.execute_reply": "2024-10-30T11:04:54.254534Z" + "iopub.execute_input": "2024-10-30T17:24:32.172346Z", + "iopub.status.busy": "2024-10-30T17:24:32.172159Z", + "iopub.status.idle": "2024-10-30T17:24:32.175561Z", + "shell.execute_reply": "2024-10-30T17:24:32.175109Z" } }, "outputs": [], @@ -400,10 +400,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.257374Z", - "iopub.status.busy": "2024-10-30T11:04:54.256885Z", - "iopub.status.idle": "2024-10-30T11:04:54.355438Z", - "shell.execute_reply": "2024-10-30T11:04:54.354893Z" + "iopub.execute_input": "2024-10-30T17:24:32.177279Z", + "iopub.status.busy": "2024-10-30T17:24:32.177090Z", + "iopub.status.idle": "2024-10-30T17:24:32.275489Z", + "shell.execute_reply": "2024-10-30T17:24:32.274949Z" } }, "outputs": [], @@ -439,10 +439,10 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.357698Z", - "iopub.status.busy": "2024-10-30T11:04:54.357151Z", - "iopub.status.idle": "2024-10-30T11:04:54.409278Z", - "shell.execute_reply": "2024-10-30T11:04:54.408785Z" + "iopub.execute_input": "2024-10-30T17:24:32.278330Z", + "iopub.status.busy": "2024-10-30T17:24:32.277539Z", + "iopub.status.idle": "2024-10-30T17:24:32.327255Z", + "shell.execute_reply": "2024-10-30T17:24:32.326762Z" } }, "outputs": [ @@ -450,14 +450,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9402383980312086" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\n" + "Fidelity of Trotter-evolved state with exact state: 0.940243538699916\n" ] } ], @@ -487,10 +480,10 @@ "execution_count": 11, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.411308Z", - "iopub.status.busy": "2024-10-30T11:04:54.410955Z", - "iopub.status.idle": "2024-10-30T11:04:54.624077Z", - "shell.execute_reply": "2024-10-30T11:04:54.623590Z" + "iopub.execute_input": "2024-10-30T17:24:32.329038Z", + "iopub.status.busy": "2024-10-30T17:24:32.328678Z", + "iopub.status.idle": "2024-10-30T17:24:32.540707Z", + "shell.execute_reply": "2024-10-30T17:24:32.540213Z" } }, "outputs": [ @@ -498,7 +491,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9985210982782917\n" + "Fidelity of Trotter-evolved state with exact state: 0.9985212861520422\n" ] } ], @@ -528,10 +521,10 @@ "execution_count": 12, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.625771Z", - "iopub.status.busy": "2024-10-30T11:04:54.625588Z", - "iopub.status.idle": "2024-10-30T11:04:54.757697Z", - "shell.execute_reply": "2024-10-30T11:04:54.757242Z" + "iopub.execute_input": "2024-10-30T17:24:32.542745Z", + "iopub.status.busy": "2024-10-30T17:24:32.542392Z", + "iopub.status.idle": "2024-10-30T17:24:32.669581Z", + "shell.execute_reply": "2024-10-30T17:24:32.668937Z" } }, "outputs": [ @@ -539,7 +532,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9985210982781565\n" + "Fidelity of Trotter-evolved state with exact state: 0.9985212861519472\n" ] } ], @@ -570,10 +563,10 @@ "execution_count": 13, "metadata": { "execution": { - "iopub.execute_input": "2024-10-30T11:04:54.759459Z", - "iopub.status.busy": "2024-10-30T11:04:54.759278Z", - "iopub.status.idle": "2024-10-30T11:04:54.865454Z", - "shell.execute_reply": "2024-10-30T11:04:54.864934Z" + "iopub.execute_input": "2024-10-30T17:24:32.671552Z", + "iopub.status.busy": "2024-10-30T17:24:32.671190Z", + "iopub.status.idle": "2024-10-30T17:24:32.772668Z", + "shell.execute_reply": "2024-10-30T17:24:32.772195Z" } }, "outputs": [ @@ -581,7 +574,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9996731173188249\n" + "Fidelity of Trotter-evolved state with exact state: 0.9996731164191563\n" ] } ], diff --git a/dev/tutorials/index.html b/dev/tutorials/index.html index 68d6a0ba9..2e6530704 100644 --- a/dev/tutorials/index.html +++ b/dev/tutorials/index.html @@ -6,7 +6,7 @@ - Tutorials - ffsim 0.0.48.dev0 + Tutorials - ffsim 0.0.48 @@ -159,7 +159,7 @@
@@ -183,7 +183,7 @@