From 6322174291e11de0da344c617b43f58773e4ebe3 Mon Sep 17 00:00:00 2001 From: gabrielasd Date: Thu, 20 Nov 2025 12:27:18 -0500 Subject: [PATCH] Turn on capture in demos --- .../demonstration_assets/barren_gadgets/barren_gadgets.py | 1 + .../demonstration_assets/barren_gadgets/layered_ansatz.py | 1 + demonstrations_v2/adjoint_diff_benchmarking/demo.py | 1 + demonstrations_v2/ahs_aquila/demo.py | 1 + demonstrations_v2/braket-parallel-gradients/demo.py | 1 + demonstrations_v2/covalent_cloud_gpu/demo.py | 2 ++ demonstrations_v2/ensemble_multi_qpu/demo.py | 1 + demonstrations_v2/function_fitting_qsp/demo.py | 1 + demonstrations_v2/gbs/demo.py | 1 + demonstrations_v2/getting_started_with_hybrid_jobs/demo.py | 1 + demonstrations_v2/gqe_training/demo.py | 1 + demonstrations_v2/how_to_catalyst_lightning_gpu/demo.py | 1 + .../how_to_use_qiskit1_with_pennylane/demo.py | 1 + demonstrations_v2/ibm_pennylane/demo.py | 2 ++ demonstrations_v2/learning2learn/demo.py | 1 + demonstrations_v2/ml_classical_shadows/demo.py | 1 + demonstrations_v2/oqc_pulse/demo.py | 1 + demonstrations_v2/plugins_hybrid/demo.py | 1 + demonstrations_v2/pytorch_noise/demo.py | 2 ++ demonstrations_v2/qnn_module_tf/demo.py | 1 + demonstrations_v2/qnspsa/demo.py | 2 ++ demonstrations_v2/qonn/demo.py | 1 + demonstrations_v2/qrack/demo.py | 1 + demonstrations_v2/qsim_beyond_classical/demo.py | 1 + demonstrations_v2/quantum_neural_net/demo.py | 1 + demonstrations_v2/quantum_volume/demo.py | 1 + .../demo.py | 1 + .../demo.py | 1 + .../demo.py | 1 + .../demo.py | 2 ++ demonstrations_v2/tutorial_QGAN/demo.py | 1 + demonstrations_v2/tutorial_QUBO/demo.py | 1 + demonstrations_v2/tutorial_adaptive_circuits/demo.py | 1 + demonstrations_v2/tutorial_adjoint_diff/demo.py | 1 + demonstrations_v2/tutorial_adversarial_attacks_QML/demo.py | 1 + demonstrations_v2/tutorial_annni/demo.py | 1 + demonstrations_v2/tutorial_apply_qsvt/demo.py | 1 + demonstrations_v2/tutorial_backprop/demo.py | 1 + .../barren_gadgets/barren_gadgets.py | 1 + .../barren_gadgets/layered_ansatz.py | 1 + demonstrations_v2/tutorial_barren_gadgets/demo.py | 1 + demonstrations_v2/tutorial_barren_plateaus/demo.py | 1 + demonstrations_v2/tutorial_block_encoding/demo.py | 1 + demonstrations_v2/tutorial_bluequbit/demo.py | 1 + demonstrations_v2/tutorial_bp_catalyst/demo.py | 2 ++ demonstrations_v2/tutorial_chemical_reactions/demo.py | 1 + demonstrations_v2/tutorial_circuit_compilation/demo.py | 1 + .../tutorial_classical_expval_estimation/demo.py | 1 + demonstrations_v2/tutorial_classical_kernels/demo.py | 1 + demonstrations_v2/tutorial_classical_shadows/demo.py | 1 + demonstrations_v2/tutorial_classically_boosted_vqe/demo.py | 1 + .../tutorial_clifford_circuit_simulations/demo.py | 1 + demonstrations_v2/tutorial_coherent_vqls/demo.py | 1 + demonstrations_v2/tutorial_constant_depth_mps_prep/demo.py | 1 + demonstrations_v2/tutorial_contextuality/demo.py | 1 + .../tutorial_data_reuploading_classifier/demo.py | 1 + demonstrations_v2/tutorial_diffable-mitigation/demo.py | 1 + demonstrations_v2/tutorial_diffable_shadows/demo.py | 1 + demonstrations_v2/tutorial_differentiable_HF/demo.py | 1 + demonstrations_v2/tutorial_doubly_stochastic/demo.py | 1 + demonstrations_v2/tutorial_dqi/demo.py | 1 + demonstrations_v2/tutorial_eqnn_force_field/demo.py | 1 + .../tutorial_equivariant_graph_embedding/demo.py | 1 + demonstrations_v2/tutorial_error_mitigation/demo.py | 1 + demonstrations_v2/tutorial_error_prop/demo.py | 1 + .../tutorial_expressivity_fourier_series/demo.py | 1 + demonstrations_v2/tutorial_falqon/demo.py | 1 + demonstrations_v2/tutorial_fermionic_operators/demo.py | 1 + .../demo.py | 1 + demonstrations_v2/tutorial_gaussian_transformation/demo.py | 1 + demonstrations_v2/tutorial_general_parshift/demo.py | 1 + demonstrations_v2/tutorial_geometric_qml/demo.py | 1 + demonstrations_v2/tutorial_givens_rotations/demo.py | 1 + demonstrations_v2/tutorial_grovers_algorithm/demo.py | 1 + .../tutorial_guide_to_pennylane_knowing_qiskit/demo.py | 1 + demonstrations_v2/tutorial_haar_measure/demo.py | 1 + demonstrations_v2/tutorial_here_comes_the_sun/demo.py | 1 + demonstrations_v2/tutorial_hidden_cut/demo.py | 1 + .../demo.py | 1 + .../tutorial_how_to_build_spin_hamiltonians/demo.py | 1 + .../tutorial_how_to_collect_mcm_stats/demo.py | 1 + .../tutorial_how_to_create_dynamic_mcm_circuits/demo.py | 1 + .../tutorial_how_to_import_qiskit_noise_models/demo.py | 1 + .../demo.py | 1 + demonstrations_v2/tutorial_how_to_use_noise_models/demo.py | 1 + .../tutorial_how_to_use_qualtran_with_pennylane/demo.py | 1 + .../demo.py | 1 + demonstrations_v2/tutorial_how_to_use_registers/demo.py | 1 + .../tutorial_implicit_diff_susceptibility/demo.py | 1 + .../tutorial_initial_state_preparation/demo.py | 1 + .../tutorial_intro_amplitude_amplification/demo.py | 1 + demonstrations_v2/tutorial_intro_qrom/demo.py | 1 + demonstrations_v2/tutorial_intro_qsvt/demo.py | 1 + .../tutorial_iqp_circuit_optimization_jax/demo.py | 1 + demonstrations_v2/tutorial_isingmodel_PyTorch/demo.py | 1 + demonstrations_v2/tutorial_jax_transformations/demo.py | 1 + demonstrations_v2/tutorial_kak_decomposition/demo.py | 1 + demonstrations_v2/tutorial_kernel_based_training/demo.py | 1 + demonstrations_v2/tutorial_kernels_module/demo.py | 1 + demonstrations_v2/tutorial_lcu_blockencoding/demo.py | 1 + .../tutorial_learning_dynamics_incoherently/demo.py | 1 + demonstrations_v2/tutorial_learning_few_data/demo.py | 1 + .../tutorial_learning_from_experiments/demo.py | 1 + demonstrations_v2/tutorial_learningshallow/demo.py | 1 + demonstrations_v2/tutorial_liealgebra/demo.py | 1 + demonstrations_v2/tutorial_liesim/demo.py | 1 + demonstrations_v2/tutorial_liesim_extension/demo.py | 1 + demonstrations_v2/tutorial_local_cost_functions/demo.py | 1 + demonstrations_v2/tutorial_loom_catalyst/demo.py | 1 + .../tutorial_magic_state_distillation/demo.py | 1 + demonstrations_v2/tutorial_mapping/demo.py | 1 + demonstrations_v2/tutorial_mbqc/demo.py | 2 ++ demonstrations_v2/tutorial_mcm_introduction/demo.py | 1 + demonstrations_v2/tutorial_measurement_optimize/demo.py | 1 + demonstrations_v2/tutorial_mitigation_advantage/demo.py | 1 + demonstrations_v2/tutorial_mol_geo_opt/demo.py | 1 + demonstrations_v2/tutorial_mps/demo.py | 1 + .../tutorial_multiclass_classification/demo.py | 1 + demonstrations_v2/tutorial_neutral_atoms/demo.py | 1 + .../tutorial_noisy_circuit_optimization/demo.py | 1 + demonstrations_v2/tutorial_noisy_circuits/demo.py | 1 + demonstrations_v2/tutorial_odegen/demo.py | 1 + demonstrations_v2/tutorial_optimal_control/demo.py | 1 + demonstrations_v2/tutorial_pasqal/demo.py | 1 + demonstrations_v2/tutorial_period_finding/demo.py | 1 + demonstrations_v2/tutorial_phase_kickback/demo.py | 1 + demonstrations_v2/tutorial_photonics/demo.py | 1 + .../demo.py | 1 + demonstrations_v2/tutorial_pulse_programming101/demo.py | 1 + demonstrations_v2/tutorial_qaoa_intro/demo.py | 1 + demonstrations_v2/tutorial_qaoa_maxcut/demo.py | 1 + demonstrations_v2/tutorial_qcbm/demo.py | 1 + demonstrations_v2/tutorial_qchem_external/demo.py | 1 + demonstrations_v2/tutorial_qft/demo.py | 2 ++ demonstrations_v2/tutorial_qft_and_groups/demo.py | 1 + demonstrations_v2/tutorial_qft_arithmetics/demo.py | 2 ++ demonstrations_v2/tutorial_qgrnn/demo.py | 1 + .../demo.py | 7 +++++-- demonstrations_v2/tutorial_qksd_qsp_qualtran/demo.py | 1 + demonstrations_v2/tutorial_qnn_module_torch/demo.py | 1 + .../tutorial_qnn_multivariate_regression/demo.py | 1 + demonstrations_v2/tutorial_qpe/demo.py | 1 + demonstrations_v2/tutorial_qsvt_hardware/demo.py | 2 ++ .../tutorial_quantum_analytic_descent/demo.py | 1 + .../tutorial_quantum_chebyshev_transform/demo.py | 1 + demonstrations_v2/tutorial_quantum_circuit_cutting/demo.py | 1 + demonstrations_v2/tutorial_quantum_dropout/demo.py | 1 + demonstrations_v2/tutorial_quantum_gans/demo.py | 1 + demonstrations_v2/tutorial_quantum_metrology/demo.py | 1 + .../tutorial_quantum_natural_gradient/demo.py | 1 + .../tutorial_quantum_phase_transitions/demo.py | 1 + .../tutorial_quantum_transfer_learning/demo.py | 1 + demonstrations_v2/tutorial_quanvolution/demo.py | 1 + demonstrations_v2/tutorial_qubit_rotation/demo.py | 1 + demonstrations_v2/tutorial_qubit_tapering/demo.py | 1 + demonstrations_v2/tutorial_qubitization/demo.py | 1 + .../tutorial_qutrits_bernstein_vazirani/demo.py | 1 + demonstrations_v2/tutorial_resource_estimation/demo.py | 1 + demonstrations_v2/tutorial_resourcefulness/demo.py | 1 + demonstrations_v2/tutorial_rl_pulse/demo.py | 1 + demonstrations_v2/tutorial_rosalin/demo.py | 1 + demonstrations_v2/tutorial_rotoselect/demo.py | 1 + demonstrations_v2/tutorial_sc_qubits/demo.py | 1 + .../tutorial_shadow_hamiltonian_simulation/demo.py | 1 + .../tutorial_shors_algorithm_catalyst/demo.py | 2 ++ demonstrations_v2/tutorial_spsa/demo.py | 1 + demonstrations_v2/tutorial_stabilizer_codes/demo.py | 1 + demonstrations_v2/tutorial_state_preparation/demo.py | 1 + .../tutorial_stochastic_parameter_shift/demo.py | 1 + demonstrations_v2/tutorial_teleportation/demo.py | 1 + demonstrations_v2/tutorial_tensor_network_basics/demo.py | 1 + demonstrations_v2/tutorial_testing_symmetry/demo.py | 1 + demonstrations_v2/tutorial_tn_circuits/demo.py | 1 + demonstrations_v2/tutorial_toric_code/demo.py | 1 + demonstrations_v2/tutorial_trapped_ions/demo.py | 1 + demonstrations_v2/tutorial_unitary_designs/demo.py | 1 + demonstrations_v2/tutorial_unitary_synthesis_kak/demo.py | 1 + demonstrations_v2/tutorial_univariate_qvr/demo.py | 1 + demonstrations_v2/tutorial_variational_classifier/demo.py | 1 + demonstrations_v2/tutorial_vqe/demo.py | 1 + demonstrations_v2/tutorial_vqe_qng/demo.py | 1 + demonstrations_v2/tutorial_vqe_spin_sectors/demo.py | 1 + demonstrations_v2/tutorial_vqe_vqd/demo.py | 1 + demonstrations_v2/tutorial_vqls/demo.py | 1 + demonstrations_v2/tutorial_vqt/demo.py | 1 + demonstrations_v2/tutorial_xas/demo.py | 1 + demonstrations_v2/tutorial_zx_calculus/demo.py | 1 + demonstrations_v2/vqe_parallel/demo.py | 1 + demonstrations_v2/zne_catalyst/demo.py | 1 + documentation/reference_demo/demo.py | 1 + 190 files changed, 205 insertions(+), 2 deletions(-) diff --git a/_static/demonstration_assets/barren_gadgets/barren_gadgets.py b/_static/demonstration_assets/barren_gadgets/barren_gadgets.py index 0e2929dc41..829860ef66 100644 --- a/_static/demonstration_assets/barren_gadgets/barren_gadgets.py +++ b/_static/demonstration_assets/barren_gadgets/barren_gadgets.py @@ -1,4 +1,5 @@ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np def non_identity_obs(obs): diff --git a/_static/demonstration_assets/barren_gadgets/layered_ansatz.py b/_static/demonstration_assets/barren_gadgets/layered_ansatz.py index 7a26d9e059..064c1e438a 100644 --- a/_static/demonstration_assets/barren_gadgets/layered_ansatz.py +++ b/_static/demonstration_assets/barren_gadgets/layered_ansatz.py @@ -1,4 +1,5 @@ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np """ Based on the SimplifiedTwoDesign template from pennylane diff --git a/demonstrations_v2/adjoint_diff_benchmarking/demo.py b/demonstrations_v2/adjoint_diff_benchmarking/demo.py index 9b0ccff232..1a8013c92f 100644 --- a/demonstrations_v2/adjoint_diff_benchmarking/demo.py +++ b/demonstrations_v2/adjoint_diff_benchmarking/demo.py @@ -19,6 +19,7 @@ import timeit import matplotlib.pyplot as plt import pennylane as qml +qml.capture.enable() import pennylane.numpy as pnp plt.style.use("bmh") diff --git a/demonstrations_v2/ahs_aquila/demo.py b/demonstrations_v2/ahs_aquila/demo.py index 896ae61cfa..370e4df6bb 100644 --- a/demonstrations_v2/ahs_aquila/demo.py +++ b/demonstrations_v2/ahs_aquila/demo.py @@ -212,6 +212,7 @@ """ import pennylane as qml +qml.capture.enable() aquila = qml.device( "braket.aws.ahs", diff --git a/demonstrations_v2/braket-parallel-gradients/demo.py b/demonstrations_v2/braket-parallel-gradients/demo.py index 98dff6b077..72855174b8 100644 --- a/demonstrations_v2/braket-parallel-gradients/demo.py +++ b/demonstrations_v2/braket-parallel-gradients/demo.py @@ -100,6 +100,7 @@ # SV1 can now be loaded with the standard PennyLane :func:`~.pennylane.device`: import pennylane as qml +qml.capture.enable() from pennylane import numpy as np n_wires = 25 diff --git a/demonstrations_v2/covalent_cloud_gpu/demo.py b/demonstrations_v2/covalent_cloud_gpu/demo.py index ca709039b2..3f906630af 100644 --- a/demonstrations_v2/covalent_cloud_gpu/demo.py +++ b/demonstrations_v2/covalent_cloud_gpu/demo.py @@ -33,6 +33,7 @@ import covalent_cloud as cc import matplotlib.pyplot as plt import pennylane as qml +qml.capture.enable() from matplotlib.colors import ListedColormap from pennylane import numpy as np from sklearn.datasets import make_blobs @@ -266,6 +267,7 @@ def run_qsvm(n_samples, test_size): # import covalent_cloud as cc # import matplotlib.pyplot as plt # import pennylane as qml +qml.capture.enable() # from matplotlib.colors import ListedColormap # from pennylane import numpy as np # from sklearn.datasets import make_blobs diff --git a/demonstrations_v2/ensemble_multi_qpu/demo.py b/demonstrations_v2/ensemble_multi_qpu/demo.py index 74bcfc65f9..a59ab07342 100644 --- a/demonstrations_v2/ensemble_multi_qpu/demo.py +++ b/demonstrations_v2/ensemble_multi_qpu/demo.py @@ -38,6 +38,7 @@ import matplotlib.pyplot as plt import numpy as np import pennylane as qml +qml.capture.enable() import sklearn.datasets import sklearn.decomposition import torch diff --git a/demonstrations_v2/function_fitting_qsp/demo.py b/demonstrations_v2/function_fitting_qsp/demo.py index f9256af8d3..15d119a664 100644 --- a/demonstrations_v2/function_fitting_qsp/demo.py +++ b/demonstrations_v2/function_fitting_qsp/demo.py @@ -183,6 +183,7 @@ def generate_many_sro(a_vals): import pennylane as qml +qml.capture.enable() def QSP_circ(phi, W): diff --git a/demonstrations_v2/gbs/demo.py b/demonstrations_v2/gbs/demo.py index a9192f3cdc..85a2f1d5c0 100644 --- a/demonstrations_v2/gbs/demo.py +++ b/demonstrations_v2/gbs/demo.py @@ -137,6 +137,7 @@ # import PennyLane import pennylane as qml +qml.capture.enable() ############################################################################## # We must define the unitary matrix we would like to embed in the circuit. diff --git a/demonstrations_v2/getting_started_with_hybrid_jobs/demo.py b/demonstrations_v2/getting_started_with_hybrid_jobs/demo.py index 2c23e4571b..b9ea79a01f 100644 --- a/demonstrations_v2/getting_started_with_hybrid_jobs/demo.py +++ b/demonstrations_v2/getting_started_with_hybrid_jobs/demo.py @@ -62,6 +62,7 @@ # import pennylane as qml +qml.capture.enable() from pennylane import numpy as np diff --git a/demonstrations_v2/gqe_training/demo.py b/demonstrations_v2/gqe_training/demo.py index 05d795a9cc..02e8dd3fb9 100644 --- a/demonstrations_v2/gqe_training/demo.py +++ b/demonstrations_v2/gqe_training/demo.py @@ -124,6 +124,7 @@ import numpy as np import pennylane as qml +qml.capture.enable() def generate_molecule_data(molecules="H2"): datasets = qml.data.load("qchem", molname=molecules) diff --git a/demonstrations_v2/how_to_catalyst_lightning_gpu/demo.py b/demonstrations_v2/how_to_catalyst_lightning_gpu/demo.py index a805edf38d..67d5b6eaa5 100644 --- a/demonstrations_v2/how_to_catalyst_lightning_gpu/demo.py +++ b/demonstrations_v2/how_to_catalyst_lightning_gpu/demo.py @@ -73,6 +73,7 @@ # .. code-block:: python # # import pennylane as qml +qml.capture.enable() # import jax.numpy as jnp # # import jax diff --git a/demonstrations_v2/how_to_use_qiskit1_with_pennylane/demo.py b/demonstrations_v2/how_to_use_qiskit1_with_pennylane/demo.py index 38d7355ed0..cf547b77d6 100644 --- a/demonstrations_v2/how_to_use_qiskit1_with_pennylane/demo.py +++ b/demonstrations_v2/how_to_use_qiskit1_with_pennylane/demo.py @@ -97,6 +97,7 @@ # import pennylane as qml +qml.capture.enable() dev = qml.device("qiskit.basicsim", wires=2) diff --git a/demonstrations_v2/ibm_pennylane/demo.py b/demonstrations_v2/ibm_pennylane/demo.py index 1452518ecb..08fa4d4f8a 100644 --- a/demonstrations_v2/ibm_pennylane/demo.py +++ b/demonstrations_v2/ibm_pennylane/demo.py @@ -42,6 +42,7 @@ # Currently, there are three devices available — ``Aer``, ``BasicSim`` and ``Remote`` — that can be initialized # as follows: import pennylane as qml +qml.capture.enable() from qiskit_aer import AerSimulator qubits = 4 @@ -138,6 +139,7 @@ from qiskit_ibm_runtime import QiskitRuntimeService import pennylane as qml +qml.capture.enable() # Obtaining the Hamiltonian for H2 from PennyLane QChem dataset [dataset] = qml.data.load("qchem", molname="H2", bondlength=0.742, basis="STO-3G") diff --git a/demonstrations_v2/learning2learn/demo.py b/demonstrations_v2/learning2learn/demo.py index 5c14d5ad68..e8504536fd 100644 --- a/demonstrations_v2/learning2learn/demo.py +++ b/demonstrations_v2/learning2learn/demo.py @@ -140,6 +140,7 @@ # Quantum Machine Learning import pennylane as qml +qml.capture.enable() from pennylane import qaoa # Classical Machine Learning diff --git a/demonstrations_v2/ml_classical_shadows/demo.py b/demonstrations_v2/ml_classical_shadows/demo.py index bbff01acec..6c3405b8d8 100644 --- a/demonstrations_v2/ml_classical_shadows/demo.py +++ b/demonstrations_v2/ml_classical_shadows/demo.py @@ -117,6 +117,7 @@ def build_coupling_mats(num_mats, num_rows, num_cols): # import pennylane as qml +qml.capture.enable() def Hamiltonian(J_mat): coeffs, ops = [], [] diff --git a/demonstrations_v2/oqc_pulse/demo.py b/demonstrations_v2/oqc_pulse/demo.py index e2289bd640..ba02e4fa90 100644 --- a/demonstrations_v2/oqc_pulse/demo.py +++ b/demonstrations_v2/oqc_pulse/demo.py @@ -80,6 +80,7 @@ """ import pennylane as qml +qml.capture.enable() import numpy as np import jax.numpy as jnp import jax diff --git a/demonstrations_v2/plugins_hybrid/demo.py b/demonstrations_v2/plugins_hybrid/demo.py index 600fbca71a..aa5f8e1d11 100644 --- a/demonstrations_v2/plugins_hybrid/demo.py +++ b/demonstrations_v2/plugins_hybrid/demo.py @@ -133,6 +133,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np ############################################################################## diff --git a/demonstrations_v2/pytorch_noise/demo.py b/demonstrations_v2/pytorch_noise/demo.py index 4250ea9dfa..0a51bc5fe9 100644 --- a/demonstrations_v2/pytorch_noise/demo.py +++ b/demonstrations_v2/pytorch_noise/demo.py @@ -68,6 +68,7 @@ """ import pennylane as qml +qml.capture.enable() import torch from torch.autograd import Variable @@ -200,6 +201,7 @@ def cost(phi, theta, step): # :doc:`Computing gradients in parallel with Amazon Braket `. import pennylane as qml +qml.capture.enable() import torch from torch.autograd import Variable diff --git a/demonstrations_v2/qnn_module_tf/demo.py b/demonstrations_v2/qnn_module_tf/demo.py index e04993f90e..6a118fd58b 100644 --- a/demonstrations_v2/qnn_module_tf/demo.py +++ b/demonstrations_v2/qnn_module_tf/demo.py @@ -95,6 +95,7 @@ # operations from the :doc:`templates ` module. import pennylane as qml +qml.capture.enable() n_qubits = 2 dev = qml.device("default.qubit", wires=n_qubits) diff --git a/demonstrations_v2/qnspsa/demo.py b/demonstrations_v2/qnspsa/demo.py index 87b42dd07e..1e857978b3 100644 --- a/demonstrations_v2/qnspsa/demo.py +++ b/demonstrations_v2/qnspsa/demo.py @@ -187,6 +187,7 @@ # initialize a graph for the max cut problem import networkx as nx import pennylane as qml +qml.capture.enable() from pennylane import qaoa nodes = n_qubits = 4 @@ -636,6 +637,7 @@ def get_next_params(params, gradient): import random import pennylane as qml +qml.capture.enable() from pennylane import numpy as np from scipy.linalg import sqrtm import warnings diff --git a/demonstrations_v2/qonn/demo.py b/demonstrations_v2/qonn/demo.py index e3fc5fb572..c9299d1606 100644 --- a/demonstrations_v2/qonn/demo.py +++ b/demonstrations_v2/qonn/demo.py @@ -77,6 +77,7 @@ # import pennylane as qml +qml.capture.enable() from pennylane import numpy as np import nlopt diff --git a/demonstrations_v2/qrack/demo.py b/demonstrations_v2/qrack/demo.py index ec6588347f..2f7222ee9f 100644 --- a/demonstrations_v2/qrack/demo.py +++ b/demonstrations_v2/qrack/demo.py @@ -95,6 +95,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np from catalyst import qjit diff --git a/demonstrations_v2/qsim_beyond_classical/demo.py b/demonstrations_v2/qsim_beyond_classical/demo.py index 64dc876b5d..20f95cbcc3 100644 --- a/demonstrations_v2/qsim_beyond_classical/demo.py +++ b/demonstrations_v2/qsim_beyond_classical/demo.py @@ -69,6 +69,7 @@ # import pennylane as qml +qml.capture.enable() from pennylane_cirq import ops import cirq diff --git a/demonstrations_v2/quantum_neural_net/demo.py b/demonstrations_v2/quantum_neural_net/demo.py index b90f66d2b6..271f18edab 100644 --- a/demonstrations_v2/quantum_neural_net/demo.py +++ b/demonstrations_v2/quantum_neural_net/demo.py @@ -36,6 +36,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np from pennylane.optimize import AdamOptimizer diff --git a/demonstrations_v2/quantum_volume/demo.py b/demonstrations_v2/quantum_volume/demo.py index ac3d72f9aa..21e8aa3979 100644 --- a/demonstrations_v2/quantum_volume/demo.py +++ b/demonstrations_v2/quantum_volume/demo.py @@ -330,6 +330,7 @@ # :func:`~.pennylane.Permute` subroutine. import pennylane as qml +qml.capture.enable() # Object for random number generation from numpy rng = np.random.default_rng() diff --git a/demonstrations_v2/tutorial_How_to_optimize_QML_model_using_JAX_and_JAXopt/demo.py b/demonstrations_v2/tutorial_How_to_optimize_QML_model_using_JAX_and_JAXopt/demo.py index 975e5dd03a..9022bcc4eb 100644 --- a/demonstrations_v2/tutorial_How_to_optimize_QML_model_using_JAX_and_JAXopt/demo.py +++ b/demonstrations_v2/tutorial_How_to_optimize_QML_model_using_JAX_and_JAXopt/demo.py @@ -31,6 +31,7 @@ # import pennylane as qml +qml.capture.enable() import jax from jax import numpy as jnp import jaxopt diff --git a/demonstrations_v2/tutorial_How_to_optimize_QML_model_using_JAX_and_Optax/demo.py b/demonstrations_v2/tutorial_How_to_optimize_QML_model_using_JAX_and_Optax/demo.py index 19c1b684cd..bbd4aa997e 100644 --- a/demonstrations_v2/tutorial_How_to_optimize_QML_model_using_JAX_and_Optax/demo.py +++ b/demonstrations_v2/tutorial_How_to_optimize_QML_model_using_JAX_and_Optax/demo.py @@ -32,6 +32,7 @@ # import pennylane as qml +qml.capture.enable() import jax from jax import numpy as jnp import optax diff --git a/demonstrations_v2/tutorial_How_to_optimize_QML_model_using_JAX_catalyst_and_Optax/demo.py b/demonstrations_v2/tutorial_How_to_optimize_QML_model_using_JAX_catalyst_and_Optax/demo.py index e5e984cdb4..c70477eb3f 100644 --- a/demonstrations_v2/tutorial_How_to_optimize_QML_model_using_JAX_catalyst_and_Optax/demo.py +++ b/demonstrations_v2/tutorial_How_to_optimize_QML_model_using_JAX_catalyst_and_Optax/demo.py @@ -31,6 +31,7 @@ """ import pennylane as qml +qml.capture.enable() from jax import numpy as jnp import optax import catalyst diff --git a/demonstrations_v2/tutorial_How_to_simulate_quantum_circuits_with_tensor_networks/demo.py b/demonstrations_v2/tutorial_How_to_simulate_quantum_circuits_with_tensor_networks/demo.py index 9d485e3b4e..da7120b9d9 100644 --- a/demonstrations_v2/tutorial_How_to_simulate_quantum_circuits_with_tensor_networks/demo.py +++ b/demonstrations_v2/tutorial_How_to_simulate_quantum_circuits_with_tensor_networks/demo.py @@ -52,6 +52,7 @@ # import pennylane as qml +qml.capture.enable() import numpy as np # Define the keyword arguments for the MPS method @@ -137,6 +138,7 @@ def circuit(theta, phi, num_qubits): # import pennylane as qml +qml.capture.enable() import numpy as np # Define the keyword arguments for the TN method diff --git a/demonstrations_v2/tutorial_QGAN/demo.py b/demonstrations_v2/tutorial_QGAN/demo.py index d854441bbc..ea8035970b 100644 --- a/demonstrations_v2/tutorial_QGAN/demo.py +++ b/demonstrations_v2/tutorial_QGAN/demo.py @@ -51,6 +51,7 @@ import numpy as np import pennylane as qml +qml.capture.enable() import tensorflow as tf ############################################################################## diff --git a/demonstrations_v2/tutorial_QUBO/demo.py b/demonstrations_v2/tutorial_QUBO/demo.py index f6e8bcb563..f1241d69d6 100644 --- a/demonstrations_v2/tutorial_QUBO/demo.py +++ b/demonstrations_v2/tutorial_QUBO/demo.py @@ -350,6 +350,7 @@ def time_to_solution(n, time_single_case): # ----------------------------- QAOA circuit ------------------------------------ from collections import defaultdict import pennylane as qml +qml.capture.enable() shots = 5000 # Number of samples used dev = qml.device("default.qubit") diff --git a/demonstrations_v2/tutorial_adaptive_circuits/demo.py b/demonstrations_v2/tutorial_adaptive_circuits/demo.py index 743aa2d4b3..c346900320 100644 --- a/demonstrations_v2/tutorial_adaptive_circuits/demo.py +++ b/demonstrations_v2/tutorial_adaptive_circuits/demo.py @@ -59,6 +59,7 @@ """ import pennylane as qml +qml.capture.enable() import jax import numpy as np import time diff --git a/demonstrations_v2/tutorial_adjoint_diff/demo.py b/demonstrations_v2/tutorial_adjoint_diff/demo.py index a95a269490..5d3dcdc8ed 100644 --- a/demonstrations_v2/tutorial_adjoint_diff/demo.py +++ b/demonstrations_v2/tutorial_adjoint_diff/demo.py @@ -70,6 +70,7 @@ # To start, we import PennyLane and Jax's numpy: import pennylane as qml +qml.capture.enable() import pennylane.numpy as pnp diff --git a/demonstrations_v2/tutorial_adversarial_attacks_QML/demo.py b/demonstrations_v2/tutorial_adversarial_attacks_QML/demo.py index d7856f1e89..9d1123fbbd 100644 --- a/demonstrations_v2/tutorial_adversarial_attacks_QML/demo.py +++ b/demonstrations_v2/tutorial_adversarial_attacks_QML/demo.py @@ -78,6 +78,7 @@ # import pennylane as qml +qml.capture.enable() from pennylane import numpy as np import torch from matplotlib import pyplot as plt diff --git a/demonstrations_v2/tutorial_annni/demo.py b/demonstrations_v2/tutorial_annni/demo.py index b052261ee1..02692cb024 100644 --- a/demonstrations_v2/tutorial_annni/demo.py +++ b/demonstrations_v2/tutorial_annni/demo.py @@ -43,6 +43,7 @@ as well as setting some important constants: """ import pennylane as qml +qml.capture.enable() import numpy as np from jax import jit, vmap, value_and_grad, random, config from jax import numpy as jnp diff --git a/demonstrations_v2/tutorial_apply_qsvt/demo.py b/demonstrations_v2/tutorial_apply_qsvt/demo.py index ad59ee52d0..dae7c47673 100644 --- a/demonstrations_v2/tutorial_apply_qsvt/demo.py +++ b/demonstrations_v2/tutorial_apply_qsvt/demo.py @@ -36,6 +36,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np dev = qml.device("lightning.qubit", wires=[0, 1]) diff --git a/demonstrations_v2/tutorial_backprop/demo.py b/demonstrations_v2/tutorial_backprop/demo.py index 566e25f67a..e9999b70ef 100644 --- a/demonstrations_v2/tutorial_backprop/demo.py +++ b/demonstrations_v2/tutorial_backprop/demo.py @@ -53,6 +53,7 @@ Let's have a go implementing the parameter-shift rule manually in PennyLane. """ import pennylane as qml +qml.capture.enable() from jax import numpy as jnp from matplotlib import pyplot as plt import jax diff --git a/demonstrations_v2/tutorial_barren_gadgets/barren_gadgets/barren_gadgets.py b/demonstrations_v2/tutorial_barren_gadgets/barren_gadgets/barren_gadgets.py index 0e2929dc41..829860ef66 100644 --- a/demonstrations_v2/tutorial_barren_gadgets/barren_gadgets/barren_gadgets.py +++ b/demonstrations_v2/tutorial_barren_gadgets/barren_gadgets/barren_gadgets.py @@ -1,4 +1,5 @@ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np def non_identity_obs(obs): diff --git a/demonstrations_v2/tutorial_barren_gadgets/barren_gadgets/layered_ansatz.py b/demonstrations_v2/tutorial_barren_gadgets/barren_gadgets/layered_ansatz.py index 7a26d9e059..064c1e438a 100644 --- a/demonstrations_v2/tutorial_barren_gadgets/barren_gadgets/layered_ansatz.py +++ b/demonstrations_v2/tutorial_barren_gadgets/barren_gadgets/layered_ansatz.py @@ -1,4 +1,5 @@ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np """ Based on the SimplifiedTwoDesign template from pennylane diff --git a/demonstrations_v2/tutorial_barren_gadgets/demo.py b/demonstrations_v2/tutorial_barren_gadgets/demo.py index 5041d40da3..5c9a06ff8f 100644 --- a/demonstrations_v2/tutorial_barren_gadgets/demo.py +++ b/demonstrations_v2/tutorial_barren_gadgets/demo.py @@ -156,6 +156,7 @@ # Finally, ``build_ansatz`` puts the pieces together. import pennylane as qml +qml.capture.enable() from pennylane import numpy as np from barren_gadgets.barren_gadgets import PerturbativeGadgets from barren_gadgets.layered_ansatz import ( diff --git a/demonstrations_v2/tutorial_barren_plateaus/demo.py b/demonstrations_v2/tutorial_barren_plateaus/demo.py index 52ead15cc0..8fabe06a6d 100644 --- a/demonstrations_v2/tutorial_barren_plateaus/demo.py +++ b/demonstrations_v2/tutorial_barren_plateaus/demo.py @@ -76,6 +76,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_block_encoding/demo.py b/demonstrations_v2/tutorial_block_encoding/demo.py index 4745ae0a52..2625d15eed 100644 --- a/demonstrations_v2/tutorial_block_encoding/demo.py +++ b/demonstrations_v2/tutorial_block_encoding/demo.py @@ -85,6 +85,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane.templates.state_preparations.mottonen import compute_theta, gray_code import numpy as np import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_bluequbit/demo.py b/demonstrations_v2/tutorial_bluequbit/demo.py index ad661d72a1..db245dd790 100644 --- a/demonstrations_v2/tutorial_bluequbit/demo.py +++ b/demonstrations_v2/tutorial_bluequbit/demo.py @@ -38,6 +38,7 @@ """ import pennylane as qml +qml.capture.enable() import matplotlib.pyplot as plt import numpy as np diff --git a/demonstrations_v2/tutorial_bp_catalyst/demo.py b/demonstrations_v2/tutorial_bp_catalyst/demo.py index 54d8d09509..18c24cdade 100644 --- a/demonstrations_v2/tutorial_bp_catalyst/demo.py +++ b/demonstrations_v2/tutorial_bp_catalyst/demo.py @@ -103,6 +103,7 @@ from typing import Callable, Optional, Dict, Union, Sequence import pennylane as qml +qml.capture.enable() syndromes = ["XXZIZIX", "XXIIZZI"] dev = qml.device("lightning.qubit", wires := max(map(len, syndromes)) + 1) @@ -740,6 +741,7 @@ def ml_rep_decoder(syndrome: ArrayLike) -> ArrayLike: # import pennylane as qml +qml.capture.enable() from jax import random import catalyst diff --git a/demonstrations_v2/tutorial_chemical_reactions/demo.py b/demonstrations_v2/tutorial_chemical_reactions/demo.py index 3765293856..31da7e8601 100644 --- a/demonstrations_v2/tutorial_chemical_reactions/demo.py +++ b/demonstrations_v2/tutorial_chemical_reactions/demo.py @@ -84,6 +84,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import qchem # Hartree-Fock state diff --git a/demonstrations_v2/tutorial_circuit_compilation/demo.py b/demonstrations_v2/tutorial_circuit_compilation/demo.py index 20efc5e028..fc1c7885c3 100644 --- a/demonstrations_v2/tutorial_circuit_compilation/demo.py +++ b/demonstrations_v2/tutorial_circuit_compilation/demo.py @@ -45,6 +45,7 @@ from functools import partial import pennylane as qml +qml.capture.enable() import matplotlib.pyplot as plt dev = qml.device("default.qubit", wires=3) diff --git a/demonstrations_v2/tutorial_classical_expval_estimation/demo.py b/demonstrations_v2/tutorial_classical_expval_estimation/demo.py index 1e70d7a964..e3a76f8074 100644 --- a/demonstrations_v2/tutorial_classical_expval_estimation/demo.py +++ b/demonstrations_v2/tutorial_classical_expval_estimation/demo.py @@ -88,6 +88,7 @@ """ import pennylane as qml +qml.capture.enable() import numpy as np from itertools import combinations, product diff --git a/demonstrations_v2/tutorial_classical_kernels/demo.py b/demonstrations_v2/tutorial_classical_kernels/demo.py index 920c630002..0fd1650124 100644 --- a/demonstrations_v2/tutorial_classical_kernels/demo.py +++ b/demonstrations_v2/tutorial_classical_kernels/demo.py @@ -121,6 +121,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np import matplotlib.pyplot as plt import math diff --git a/demonstrations_v2/tutorial_classical_shadows/demo.py b/demonstrations_v2/tutorial_classical_shadows/demo.py index 040b1ebd33..2bc73eb23e 100644 --- a/demonstrations_v2/tutorial_classical_shadows/demo.py +++ b/demonstrations_v2/tutorial_classical_shadows/demo.py @@ -130,6 +130,7 @@ # We will now demonstrate how to obtain classical shadows using PennyLane. import pennylane as qml +qml.capture.enable() import pennylane.numpy as np import matplotlib.pyplot as plt import time diff --git a/demonstrations_v2/tutorial_classically_boosted_vqe/demo.py b/demonstrations_v2/tutorial_classically_boosted_vqe/demo.py index 74f7f57ce9..64e78f1deb 100644 --- a/demonstrations_v2/tutorial_classically_boosted_vqe/demo.py +++ b/demonstrations_v2/tutorial_classically_boosted_vqe/demo.py @@ -101,6 +101,7 @@ # import pennylane as qml +qml.capture.enable() from pennylane import qchem import numpy as np from jax import numpy as jnp diff --git a/demonstrations_v2/tutorial_clifford_circuit_simulations/demo.py b/demonstrations_v2/tutorial_clifford_circuit_simulations/demo.py index c1985f3387..3d5eb8923c 100644 --- a/demonstrations_v2/tutorial_clifford_circuit_simulations/demo.py +++ b/demonstrations_v2/tutorial_clifford_circuit_simulations/demo.py @@ -132,6 +132,7 @@ """ import pennylane as qml +qml.capture.enable() dev = qml.device("default.clifford", wires=2, tableau=True) diff --git a/demonstrations_v2/tutorial_coherent_vqls/demo.py b/demonstrations_v2/tutorial_coherent_vqls/demo.py index 5852af3bdc..e86d5741f2 100644 --- a/demonstrations_v2/tutorial_coherent_vqls/demo.py +++ b/demonstrations_v2/tutorial_coherent_vqls/demo.py @@ -201,6 +201,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_constant_depth_mps_prep/demo.py b/demonstrations_v2/tutorial_constant_depth_mps_prep/demo.py index 7fb9eb8944..6c06a5ee6a 100644 --- a/demonstrations_v2/tutorial_constant_depth_mps_prep/demo.py +++ b/demonstrations_v2/tutorial_constant_depth_mps_prep/demo.py @@ -154,6 +154,7 @@ from matplotlib.patches import FancyBboxPatch import pennylane as qml +qml.capture.enable() def A(g): diff --git a/demonstrations_v2/tutorial_contextuality/demo.py b/demonstrations_v2/tutorial_contextuality/demo.py index 4771bf6e24..9dcd00b1ed 100644 --- a/demonstrations_v2/tutorial_contextuality/demo.py +++ b/demonstrations_v2/tutorial_contextuality/demo.py @@ -175,6 +175,7 @@ import jax import jax.numpy as jnp import pennylane as qml +qml.capture.enable() import numpy as np jax.config.update("jax_platform_name", "cpu") np.random.seed(666) # seed used for random functions diff --git a/demonstrations_v2/tutorial_data_reuploading_classifier/demo.py b/demonstrations_v2/tutorial_data_reuploading_classifier/demo.py index ef1c11b69c..31031135f2 100644 --- a/demonstrations_v2/tutorial_data_reuploading_classifier/demo.py +++ b/demonstrations_v2/tutorial_data_reuploading_classifier/demo.py @@ -175,6 +175,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np from pennylane.optimize import AdamOptimizer, GradientDescentOptimizer diff --git a/demonstrations_v2/tutorial_diffable-mitigation/demo.py b/demonstrations_v2/tutorial_diffable-mitigation/demo.py index bc7b6d67e4..1c2bf1be42 100644 --- a/demonstrations_v2/tutorial_diffable-mitigation/demo.py +++ b/demonstrations_v2/tutorial_diffable-mitigation/demo.py @@ -44,6 +44,7 @@ """ import pennylane as qml +qml.capture.enable() import pennylane.numpy as np from pennylane.noise import mitigate_with_zne diff --git a/demonstrations_v2/tutorial_diffable_shadows/demo.py b/demonstrations_v2/tutorial_diffable_shadows/demo.py index 94a7aacef4..45e71dfd75 100644 --- a/demonstrations_v2/tutorial_diffable_shadows/demo.py +++ b/demonstrations_v2/tutorial_diffable_shadows/demo.py @@ -94,6 +94,7 @@ """ import pennylane as qml +qml.capture.enable() import pennylane.numpy as np from matplotlib import pyplot as plt from pennylane import classical_shadow, shadow_expval, ClassicalShadow diff --git a/demonstrations_v2/tutorial_differentiable_HF/demo.py b/demonstrations_v2/tutorial_differentiable_HF/demo.py index 0d89ef58b5..25ed37c6aa 100644 --- a/demonstrations_v2/tutorial_differentiable_HF/demo.py +++ b/demonstrations_v2/tutorial_differentiable_HF/demo.py @@ -100,6 +100,7 @@ """ import pennylane as qml +qml.capture.enable() import numpy as np import jax import jax.numpy as jnp diff --git a/demonstrations_v2/tutorial_doubly_stochastic/demo.py b/demonstrations_v2/tutorial_doubly_stochastic/demo.py index 10707aa772..706095c7bf 100644 --- a/demonstrations_v2/tutorial_doubly_stochastic/demo.py +++ b/demonstrations_v2/tutorial_doubly_stochastic/demo.py @@ -118,6 +118,7 @@ # as well as the estimated gradient using number of shots :math:`N\in\{1, 100\}.` import pennylane as qml +qml.capture.enable() import numpy as np from pennylane import numpy as pnp diff --git a/demonstrations_v2/tutorial_dqi/demo.py b/demonstrations_v2/tutorial_dqi/demo.py index a05e62f8cd..c1adaf69fa 100644 --- a/demonstrations_v2/tutorial_dqi/demo.py +++ b/demonstrations_v2/tutorial_dqi/demo.py @@ -47,6 +47,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as pnp import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_eqnn_force_field/demo.py b/demonstrations_v2/tutorial_eqnn_force_field/demo.py index 2185f2f9be..4ad795dbcb 100644 --- a/demonstrations_v2/tutorial_eqnn_force_field/demo.py +++ b/demonstrations_v2/tutorial_eqnn_force_field/demo.py @@ -130,6 +130,7 @@ # We start by importing the libraries that we will need. import pennylane as qml +qml.capture.enable() import numpy as np import jax diff --git a/demonstrations_v2/tutorial_equivariant_graph_embedding/demo.py b/demonstrations_v2/tutorial_equivariant_graph_embedding/demo.py index b013b83540..830c97c399 100644 --- a/demonstrations_v2/tutorial_equivariant_graph_embedding/demo.py +++ b/demonstrations_v2/tutorial_equivariant_graph_embedding/demo.py @@ -210,6 +210,7 @@ def permute(A, permutation): import pennylane as qml +qml.capture.enable() def perm_equivariant_embedding(A, betas, gammas): """ diff --git a/demonstrations_v2/tutorial_error_mitigation/demo.py b/demonstrations_v2/tutorial_error_mitigation/demo.py index 0c0b04cead..7a60bc3c50 100644 --- a/demonstrations_v2/tutorial_error_mitigation/demo.py +++ b/demonstrations_v2/tutorial_error_mitigation/demo.py @@ -59,6 +59,7 @@ """ import pennylane as qml +qml.capture.enable() n_wires = 4 diff --git a/demonstrations_v2/tutorial_error_prop/demo.py b/demonstrations_v2/tutorial_error_prop/demo.py index 7a431fdf0f..1dc964f7f5 100644 --- a/demonstrations_v2/tutorial_error_prop/demo.py +++ b/demonstrations_v2/tutorial_error_prop/demo.py @@ -35,6 +35,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane.resource import SpectralNormError exact_op = qml.RX(1.234, wires=0) diff --git a/demonstrations_v2/tutorial_expressivity_fourier_series/demo.py b/demonstrations_v2/tutorial_expressivity_fourier_series/demo.py index 3a6c16c711..b48ce753f8 100644 --- a/demonstrations_v2/tutorial_expressivity_fourier_series/demo.py +++ b/demonstrations_v2/tutorial_expressivity_fourier_series/demo.py @@ -139,6 +139,7 @@ import matplotlib.pyplot as plt import pennylane as qml +qml.capture.enable() from pennylane import numpy as np np.random.seed(42) diff --git a/demonstrations_v2/tutorial_falqon/demo.py b/demonstrations_v2/tutorial_falqon/demo.py index 0fa9993723..7bebc2382e 100644 --- a/demonstrations_v2/tutorial_falqon/demo.py +++ b/demonstrations_v2/tutorial_falqon/demo.py @@ -109,6 +109,7 @@ # import pennylane as qml +qml.capture.enable() from pennylane import numpy as np from matplotlib import pyplot as plt from pennylane import qaoa as qaoa diff --git a/demonstrations_v2/tutorial_fermionic_operators/demo.py b/demonstrations_v2/tutorial_fermionic_operators/demo.py index 17fbb5ae7f..f9a7a25fff 100644 --- a/demonstrations_v2/tutorial_fermionic_operators/demo.py +++ b/demonstrations_v2/tutorial_fermionic_operators/demo.py @@ -134,6 +134,7 @@ # the hydrogen molecule as an example. We first define the atom types and the atomic coordinates. import pennylane as qml +qml.capture.enable() from jax import numpy as jnp symbols = ["H", "H"] diff --git a/demonstrations_v2/tutorial_fixed_depth_hamiltonian_simulation_via_cartan_decomposition/demo.py b/demonstrations_v2/tutorial_fixed_depth_hamiltonian_simulation_via_cartan_decomposition/demo.py index 7031c06a95..dc13aeb6e5 100644 --- a/demonstrations_v2/tutorial_fixed_depth_hamiltonian_simulation_via_cartan_decomposition/demo.py +++ b/demonstrations_v2/tutorial_fixed_depth_hamiltonian_simulation_via_cartan_decomposition/demo.py @@ -73,6 +73,7 @@ import numpy as np import pennylane as qml +qml.capture.enable() from pennylane import X, Y, Z from pennylane.liealg import even_odd_involution, cartan_decomp, horizontal_cartan_subalgebra diff --git a/demonstrations_v2/tutorial_gaussian_transformation/demo.py b/demonstrations_v2/tutorial_gaussian_transformation/demo.py index 81ea2dff19..2e9001593d 100644 --- a/demonstrations_v2/tutorial_gaussian_transformation/demo.py +++ b/demonstrations_v2/tutorial_gaussian_transformation/demo.py @@ -66,6 +66,7 @@ # by JAX: import pennylane as qml +qml.capture.enable() from jax import numpy as np ############################################################################### diff --git a/demonstrations_v2/tutorial_general_parshift/demo.py b/demonstrations_v2/tutorial_general_parshift/demo.py index 533a6d085f..e4bfb8b497 100644 --- a/demonstrations_v2/tutorial_general_parshift/demo.py +++ b/demonstrations_v2/tutorial_general_parshift/demo.py @@ -128,6 +128,7 @@ def random_observable(N, seed): import jax from jax import numpy as np import pennylane as qml +qml.capture.enable() jax.config.update("jax_enable_x64", True) diff --git a/demonstrations_v2/tutorial_geometric_qml/demo.py b/demonstrations_v2/tutorial_geometric_qml/demo.py index 845476eb21..d257114a3b 100644 --- a/demonstrations_v2/tutorial_geometric_qml/demo.py +++ b/demonstrations_v2/tutorial_geometric_qml/demo.py @@ -494,6 +494,7 @@ def create_dataset(size_for_each_winner): import pennylane as qml +qml.capture.enable() import matplotlib.pyplot as plt # Set up a nine-qubit system diff --git a/demonstrations_v2/tutorial_givens_rotations/demo.py b/demonstrations_v2/tutorial_givens_rotations/demo.py index 0bd1ae478c..99f5354656 100644 --- a/demonstrations_v2/tutorial_givens_rotations/demo.py +++ b/demonstrations_v2/tutorial_givens_rotations/demo.py @@ -183,6 +183,7 @@ """ import pennylane as qml +qml.capture.enable() from jax import numpy as jnp import jax diff --git a/demonstrations_v2/tutorial_grovers_algorithm/demo.py b/demonstrations_v2/tutorial_grovers_algorithm/demo.py index c3a0fa0431..41523c32e9 100644 --- a/demonstrations_v2/tutorial_grovers_algorithm/demo.py +++ b/demonstrations_v2/tutorial_grovers_algorithm/demo.py @@ -46,6 +46,7 @@ import matplotlib.pyplot as plt import pennylane as qml +qml.capture.enable() import numpy as np ###################################################################### diff --git a/demonstrations_v2/tutorial_guide_to_pennylane_knowing_qiskit/demo.py b/demonstrations_v2/tutorial_guide_to_pennylane_knowing_qiskit/demo.py index a73c64857c..bdcb0eb73e 100644 --- a/demonstrations_v2/tutorial_guide_to_pennylane_knowing_qiskit/demo.py +++ b/demonstrations_v2/tutorial_guide_to_pennylane_knowing_qiskit/demo.py @@ -83,6 +83,7 @@ def qiskit_circuit(): # import pennylane as qml +qml.capture.enable() import matplotlib.pyplot as plt pl_func = qml.from_qiskit(qc) diff --git a/demonstrations_v2/tutorial_haar_measure/demo.py b/demonstrations_v2/tutorial_haar_measure/demo.py index 971ed0e610..b5af8848ae 100644 --- a/demonstrations_v2/tutorial_haar_measure/demo.py +++ b/demonstrations_v2/tutorial_haar_measure/demo.py @@ -173,6 +173,7 @@ """ import pennylane as qml +qml.capture.enable() import numpy as np import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_here_comes_the_sun/demo.py b/demonstrations_v2/tutorial_here_comes_the_sun/demo.py index 63cbe697c1..286866e2d8 100644 --- a/demonstrations_v2/tutorial_here_comes_the_sun/demo.py +++ b/demonstrations_v2/tutorial_here_comes_the_sun/demo.py @@ -215,6 +215,7 @@ """ import pennylane as qml +qml.capture.enable() import numpy as np import jax diff --git a/demonstrations_v2/tutorial_hidden_cut/demo.py b/demonstrations_v2/tutorial_hidden_cut/demo.py index e42629ac46..bd9e3f46cc 100644 --- a/demonstrations_v2/tutorial_hidden_cut/demo.py +++ b/demonstrations_v2/tutorial_hidden_cut/demo.py @@ -73,6 +73,7 @@ import matplotlib.pyplot as plt import numpy as np import pennylane as qml +qml.capture.enable() from scipy.stats import unitary_group # set random seed diff --git a/demonstrations_v2/tutorial_how_to_build_compressed_double_factorized_hamiltonians/demo.py b/demonstrations_v2/tutorial_how_to_build_compressed_double_factorized_hamiltonians/demo.py index 5adcc44881..e33edc8bcf 100644 --- a/demonstrations_v2/tutorial_how_to_build_compressed_double_factorized_hamiltonians/demo.py +++ b/demonstrations_v2/tutorial_how_to_build_compressed_double_factorized_hamiltonians/demo.py @@ -31,6 +31,7 @@ """ import pennylane as qml +qml.capture.enable() symbols = ["H", "H", "H", "H"] geometry = qml.math.array([[0., 0., -0.2], [0., 0., -0.1], [0., 0., 0.1], [0., 0., 0.2]]) diff --git a/demonstrations_v2/tutorial_how_to_build_spin_hamiltonians/demo.py b/demonstrations_v2/tutorial_how_to_build_spin_hamiltonians/demo.py index 668029bc10..ab938cd60a 100644 --- a/demonstrations_v2/tutorial_how_to_build_spin_hamiltonians/demo.py +++ b/demonstrations_v2/tutorial_how_to_build_spin_hamiltonians/demo.py @@ -59,6 +59,7 @@ # the following sections. import pennylane as qml +qml.capture.enable() n_cells = [2, 2] hopping = 0.2 diff --git a/demonstrations_v2/tutorial_how_to_collect_mcm_stats/demo.py b/demonstrations_v2/tutorial_how_to_collect_mcm_stats/demo.py index 31982228b0..d54d20a7da 100644 --- a/demonstrations_v2/tutorial_how_to_collect_mcm_stats/demo.py +++ b/demonstrations_v2/tutorial_how_to_collect_mcm_stats/demo.py @@ -32,6 +32,7 @@ # import pennylane as qml +qml.capture.enable() import numpy as np np.random.seed(511) diff --git a/demonstrations_v2/tutorial_how_to_create_dynamic_mcm_circuits/demo.py b/demonstrations_v2/tutorial_how_to_create_dynamic_mcm_circuits/demo.py index a4d5b84ad7..0169879d75 100644 --- a/demonstrations_v2/tutorial_how_to_create_dynamic_mcm_circuits/demo.py +++ b/demonstrations_v2/tutorial_how_to_create_dynamic_mcm_circuits/demo.py @@ -42,6 +42,7 @@ # import pennylane as qml +qml.capture.enable() import numpy as np dev = qml.device("lightning.qubit", wires=2) diff --git a/demonstrations_v2/tutorial_how_to_import_qiskit_noise_models/demo.py b/demonstrations_v2/tutorial_how_to_import_qiskit_noise_models/demo.py index 57febcb285..c2cd0ff00f 100644 --- a/demonstrations_v2/tutorial_how_to_import_qiskit_noise_models/demo.py +++ b/demonstrations_v2/tutorial_how_to_import_qiskit_noise_models/demo.py @@ -76,6 +76,7 @@ # import pennylane as qml +qml.capture.enable() # Depolarization error for single-qubit gates gate1_fcond = qml.noise.op_in(["U1", "U2", "U3"]) & qml.noise.wires_in(range(n_qubits)) diff --git a/demonstrations_v2/tutorial_how_to_quantum_just_in_time_compile_vqe_catalyst/demo.py b/demonstrations_v2/tutorial_how_to_quantum_just_in_time_compile_vqe_catalyst/demo.py index 51cf6c6c54..096588c257 100644 --- a/demonstrations_v2/tutorial_how_to_quantum_just_in_time_compile_vqe_catalyst/demo.py +++ b/demonstrations_v2/tutorial_how_to_quantum_just_in_time_compile_vqe_catalyst/demo.py @@ -44,6 +44,7 @@ # import pennylane as qml +qml.capture.enable() from pennylane import numpy as np dataset = qml.data.load('qchem', molname="H3+")[0] diff --git a/demonstrations_v2/tutorial_how_to_use_noise_models/demo.py b/demonstrations_v2/tutorial_how_to_use_noise_models/demo.py index b192f5076e..ae8759fd07 100644 --- a/demonstrations_v2/tutorial_how_to_use_noise_models/demo.py +++ b/demonstrations_v2/tutorial_how_to_use_noise_models/demo.py @@ -59,6 +59,7 @@ # import pennylane as qml +qml.capture.enable() import numpy as np @qml.BooleanFn diff --git a/demonstrations_v2/tutorial_how_to_use_qualtran_with_pennylane/demo.py b/demonstrations_v2/tutorial_how_to_use_qualtran_with_pennylane/demo.py index 4017710498..31eb531beb 100644 --- a/demonstrations_v2/tutorial_how_to_use_qualtran_with_pennylane/demo.py +++ b/demonstrations_v2/tutorial_how_to_use_qualtran_with_pennylane/demo.py @@ -47,6 +47,7 @@ # provide qubit information to :class:`~pennylane.FromBloq` via the ``wires`` argument. import pennylane as qml +qml.capture.enable() from qualtran.bloqs.basic_gates import XGate bloq_as_op = qml.FromBloq(XGate(), wires=0) diff --git a/demonstrations_v2/tutorial_how_to_use_quantum_arithmetic_operators/demo.py b/demonstrations_v2/tutorial_how_to_use_quantum_arithmetic_operators/demo.py index 306e203429..30f53c2136 100644 --- a/demonstrations_v2/tutorial_how_to_use_quantum_arithmetic_operators/demo.py +++ b/demonstrations_v2/tutorial_how_to_use_quantum_arithmetic_operators/demo.py @@ -67,6 +67,7 @@ """ import pennylane as qml +qml.capture.enable() # we indicate the name of the registers and their number of qubits. wires = qml.registers({"x": 4, "y":4, "output":6,"work_wires": 4}) diff --git a/demonstrations_v2/tutorial_how_to_use_registers/demo.py b/demonstrations_v2/tutorial_how_to_use_registers/demo.py index b200ee934a..4a35fd88fc 100644 --- a/demonstrations_v2/tutorial_how_to_use_registers/demo.py +++ b/demonstrations_v2/tutorial_how_to_use_registers/demo.py @@ -15,6 +15,7 @@ # import pennylane as qml +qml.capture.enable() register = qml.registers({"alice": 1, "bob": 2, "charlie": 3}) print(register) diff --git a/demonstrations_v2/tutorial_implicit_diff_susceptibility/demo.py b/demonstrations_v2/tutorial_implicit_diff_susceptibility/demo.py index 70d76b60e9..4b705c8cec 100644 --- a/demonstrations_v2/tutorial_implicit_diff_susceptibility/demo.py +++ b/demonstrations_v2/tutorial_implicit_diff_susceptibility/demo.py @@ -264,6 +264,7 @@ import jax.numpy as jnp import pennylane as qml +qml.capture.enable() import numpy as np import jaxopt diff --git a/demonstrations_v2/tutorial_initial_state_preparation/demo.py b/demonstrations_v2/tutorial_initial_state_preparation/demo.py index 0797a07a5b..9c3d9287e0 100644 --- a/demonstrations_v2/tutorial_initial_state_preparation/demo.py +++ b/demonstrations_v2/tutorial_initial_state_preparation/demo.py @@ -219,6 +219,7 @@ # linear :math:`\text{H}_3^+` molecule, a device, and a simple VQE circuit with single and double excitations: import pennylane as qml +qml.capture.enable() from pennylane import qchem from jax import numpy as jnp diff --git a/demonstrations_v2/tutorial_intro_amplitude_amplification/demo.py b/demonstrations_v2/tutorial_intro_amplitude_amplification/demo.py index 86d50f0ca1..db45587a51 100644 --- a/demonstrations_v2/tutorial_intro_amplitude_amplification/demo.py +++ b/demonstrations_v2/tutorial_intro_amplitude_amplification/demo.py @@ -139,6 +139,7 @@ # in :math:`|\Psi\rangle.` Let's generate the state and visualize it. import pennylane as qml +qml.capture.enable() import matplotlib.pyplot as plt plt.style.use('pennylane.drawer.plot') diff --git a/demonstrations_v2/tutorial_intro_qrom/demo.py b/demonstrations_v2/tutorial_intro_qrom/demo.py index bbf3087ecf..73103533cd 100644 --- a/demonstrations_v2/tutorial_intro_qrom/demo.py +++ b/demonstrations_v2/tutorial_intro_qrom/demo.py @@ -59,6 +59,7 @@ """ import pennylane as qml +qml.capture.enable() import numpy as np from functools import partial import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_intro_qsvt/demo.py b/demonstrations_v2/tutorial_intro_qsvt/demo.py index 74db43a1a3..e13dfadc12 100644 --- a/demonstrations_v2/tutorial_intro_qsvt/demo.py +++ b/demonstrations_v2/tutorial_intro_qsvt/demo.py @@ -96,6 +96,7 @@ """ import pennylane as qml +qml.capture.enable() import numpy as np import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_iqp_circuit_optimization_jax/demo.py b/demonstrations_v2/tutorial_iqp_circuit_optimization_jax/demo.py index 07c5d88c7e..e3f79d65b5 100644 --- a/demonstrations_v2/tutorial_iqp_circuit_optimization_jax/demo.py +++ b/demonstrations_v2/tutorial_iqp_circuit_optimization_jax/demo.py @@ -113,6 +113,7 @@ # :math:`\vert 0 \rangle`) is therefore the following. # import pennylane as qml +qml.capture.enable() import numpy as np # Suppress the warning caused by iqpopt diff --git a/demonstrations_v2/tutorial_isingmodel_PyTorch/demo.py b/demonstrations_v2/tutorial_isingmodel_PyTorch/demo.py index f113eed7aa..e191982dab 100644 --- a/demonstrations_v2/tutorial_isingmodel_PyTorch/demo.py +++ b/demonstrations_v2/tutorial_isingmodel_PyTorch/demo.py @@ -44,6 +44,7 @@ import torch from torch.autograd import Variable import pennylane as qml +qml.capture.enable() from pennylane import numpy as np ############################################################################### diff --git a/demonstrations_v2/tutorial_jax_transformations/demo.py b/demonstrations_v2/tutorial_jax_transformations/demo.py index ec10ecbee2..ddddf3daa5 100644 --- a/demonstrations_v2/tutorial_jax_transformations/demo.py +++ b/demonstrations_v2/tutorial_jax_transformations/demo.py @@ -44,6 +44,7 @@ import jax import jax.numpy as jnp import pennylane as qml +qml.capture.enable() # Added to silence some warnings. jax.config.update("jax_enable_x64", True) diff --git a/demonstrations_v2/tutorial_kak_decomposition/demo.py b/demonstrations_v2/tutorial_kak_decomposition/demo.py index f484298c66..3d5d9545dc 100644 --- a/demonstrations_v2/tutorial_kak_decomposition/demo.py +++ b/demonstrations_v2/tutorial_kak_decomposition/demo.py @@ -100,6 +100,7 @@ from itertools import product, combinations import pennylane as qml +qml.capture.enable() from pennylane import X, Y, Z import numpy as np diff --git a/demonstrations_v2/tutorial_kernel_based_training/demo.py b/demonstrations_v2/tutorial_kernel_based_training/demo.py index 6a472f2a8b..ce4a273248 100644 --- a/demonstrations_v2/tutorial_kernel_based_training/demo.py +++ b/demonstrations_v2/tutorial_kernel_based_training/demo.py @@ -169,6 +169,7 @@ from sklearn.metrics import accuracy_score import pennylane as qml +qml.capture.enable() from pennylane.templates import AngleEmbedding, StronglyEntanglingLayers import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_kernels_module/demo.py b/demonstrations_v2/tutorial_kernels_module/demo.py index bdf8798a67..1d670f6ba3 100644 --- a/demonstrations_v2/tutorial_kernels_module/demo.py +++ b/demonstrations_v2/tutorial_kernels_module/demo.py @@ -237,6 +237,7 @@ def plot_double_cake_data(X, Y, ax, num_sectors=None): # layer as building block. Let's start by defining this layer: import pennylane as qml +qml.capture.enable() def layer(x, params, wires, i0=0, inc=1): diff --git a/demonstrations_v2/tutorial_lcu_blockencoding/demo.py b/demonstrations_v2/tutorial_lcu_blockencoding/demo.py index 49cee9c194..269f67d250 100644 --- a/demonstrations_v2/tutorial_lcu_blockencoding/demo.py +++ b/demonstrations_v2/tutorial_lcu_blockencoding/demo.py @@ -46,6 +46,7 @@ """ import numpy as np import pennylane as qml +qml.capture.enable() a = 0.25 b = 0.75 diff --git a/demonstrations_v2/tutorial_learning_dynamics_incoherently/demo.py b/demonstrations_v2/tutorial_learning_dynamics_incoherently/demo.py index b21cea07ca..639533341c 100644 --- a/demonstrations_v2/tutorial_learning_dynamics_incoherently/demo.py +++ b/demonstrations_v2/tutorial_learning_dynamics_incoherently/demo.py @@ -53,6 +53,7 @@ # import pennylane as qml +qml.capture.enable() from pennylane import numpy as pnp import numpy as np import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_learning_few_data/demo.py b/demonstrations_v2/tutorial_learning_few_data/demo.py index 4a4f9a51ce..830cd8bfcd 100644 --- a/demonstrations_v2/tutorial_learning_few_data/demo.py +++ b/demonstrations_v2/tutorial_learning_few_data/demo.py @@ -141,6 +141,7 @@ import optax # optimization using jax import pennylane as qml +qml.capture.enable() import pennylane.numpy as pnp sns.set() diff --git a/demonstrations_v2/tutorial_learning_from_experiments/demo.py b/demonstrations_v2/tutorial_learning_from_experiments/demo.py index 7003534eff..1cd922393a 100644 --- a/demonstrations_v2/tutorial_learning_from_experiments/demo.py +++ b/demonstrations_v2/tutorial_learning_from_experiments/demo.py @@ -160,6 +160,7 @@ # import pennylane as qml +qml.capture.enable() from pennylane.templates.layers import RandomLayers import numpy as np diff --git a/demonstrations_v2/tutorial_learningshallow/demo.py b/demonstrations_v2/tutorial_learningshallow/demo.py index 664c50f6e5..51147a5713 100644 --- a/demonstrations_v2/tutorial_learningshallow/demo.py +++ b/demonstrations_v2/tutorial_learningshallow/demo.py @@ -33,6 +33,7 @@ :math:`U^\text{test} = \text{CNOT}_{(0, 1)}\text{CNOT}_{(2, 3)}\text{CNOT}_{(1, 2)} H^{\otimes n}.` """ import pennylane as qml +qml.capture.enable() import numpy as np import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_liealgebra/demo.py b/demonstrations_v2/tutorial_liealgebra/demo.py index 3ce44b2a42..f900386604 100644 --- a/demonstrations_v2/tutorial_liealgebra/demo.py +++ b/demonstrations_v2/tutorial_liealgebra/demo.py @@ -99,6 +99,7 @@ """ import numpy as np import pennylane as qml +qml.capture.enable() from pennylane import X, Y, Z su2 = [1j * X(0), 1j * Y(0), 1j * Z(0)] diff --git a/demonstrations_v2/tutorial_liesim/demo.py b/demonstrations_v2/tutorial_liesim/demo.py index 1a04dbac6c..4c619a1c17 100644 --- a/demonstrations_v2/tutorial_liesim/demo.py +++ b/demonstrations_v2/tutorial_liesim/demo.py @@ -157,6 +157,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import X, Z, I import numpy as np diff --git a/demonstrations_v2/tutorial_liesim_extension/demo.py b/demonstrations_v2/tutorial_liesim_extension/demo.py index 177f0cd807..0d61280161 100644 --- a/demonstrations_v2/tutorial_liesim_extension/demo.py +++ b/demonstrations_v2/tutorial_liesim_extension/demo.py @@ -85,6 +85,7 @@ """ import pennylane as qml +qml.capture.enable() import numpy as np from pennylane import X, Y, Z, I diff --git a/demonstrations_v2/tutorial_local_cost_functions/demo.py b/demonstrations_v2/tutorial_local_cost_functions/demo.py index 96f1400645..54fd2d473e 100644 --- a/demonstrations_v2/tutorial_local_cost_functions/demo.py +++ b/demonstrations_v2/tutorial_local_cost_functions/demo.py @@ -57,6 +57,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np import matplotlib.pyplot as plt from matplotlib.ticker import LinearLocator, FormatStrFormatter diff --git a/demonstrations_v2/tutorial_loom_catalyst/demo.py b/demonstrations_v2/tutorial_loom_catalyst/demo.py index af1a96fbc2..5843a45fe7 100644 --- a/demonstrations_v2/tutorial_loom_catalyst/demo.py +++ b/demonstrations_v2/tutorial_loom_catalyst/demo.py @@ -188,6 +188,7 @@ from catalyst import qjit, cond, measure, debug from jax import random, numpy as jnp import pennylane as qml +qml.capture.enable() distance = 3 diff --git a/demonstrations_v2/tutorial_magic_state_distillation/demo.py b/demonstrations_v2/tutorial_magic_state_distillation/demo.py index 0138e99d8c..55c4c079ac 100644 --- a/demonstrations_v2/tutorial_magic_state_distillation/demo.py +++ b/demonstrations_v2/tutorial_magic_state_distillation/demo.py @@ -62,6 +62,7 @@ """ import pennylane as qml +qml.capture.enable() import jax; jax.config.update('jax_platform_name', 'cpu') from jax import numpy as jnp diff --git a/demonstrations_v2/tutorial_mapping/demo.py b/demonstrations_v2/tutorial_mapping/demo.py index 7e7795f331..d237340812 100644 --- a/demonstrations_v2/tutorial_mapping/demo.py +++ b/demonstrations_v2/tutorial_mapping/demo.py @@ -85,6 +85,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane.fermi import from_string, jordan_wigner qubits = 10 diff --git a/demonstrations_v2/tutorial_mbqc/demo.py b/demonstrations_v2/tutorial_mbqc/demo.py index 06c3e71d2c..10ad934ae5 100644 --- a/demonstrations_v2/tutorial_mbqc/demo.py +++ b/demonstrations_v2/tutorial_mbqc/demo.py @@ -90,6 +90,7 @@ # import pennylane as qml +qml.capture.enable() qubits = [str(node) for node in G.nodes] dev = qml.device("lightning.qubit", wires=qubits) @@ -152,6 +153,7 @@ def cluster_state(): # Let's implement one-qubit teleportation in PennyLane. import pennylane as qml +qml.capture.enable() import pennylane.numpy as np dev = qml.device("lightning.qubit", wires=2) diff --git a/demonstrations_v2/tutorial_mcm_introduction/demo.py b/demonstrations_v2/tutorial_mcm_introduction/demo.py index b9ad2b3101..f2a391bd46 100644 --- a/demonstrations_v2/tutorial_mcm_introduction/demo.py +++ b/demonstrations_v2/tutorial_mcm_introduction/demo.py @@ -123,6 +123,7 @@ # import pennylane as qml +qml.capture.enable() dev = qml.device("default.qubit") diff --git a/demonstrations_v2/tutorial_measurement_optimize/demo.py b/demonstrations_v2/tutorial_measurement_optimize/demo.py index 83d218cc4f..468626dca2 100644 --- a/demonstrations_v2/tutorial_measurement_optimize/demo.py +++ b/demonstrations_v2/tutorial_measurement_optimize/demo.py @@ -111,6 +111,7 @@ import jax from jax import numpy as jnp import pennylane as qml +qml.capture.enable() jax.config.update("jax_enable_x64", True) diff --git a/demonstrations_v2/tutorial_mitigation_advantage/demo.py b/demonstrations_v2/tutorial_mitigation_advantage/demo.py index 037d4fa863..2bf9126146 100644 --- a/demonstrations_v2/tutorial_mitigation_advantage/demo.py +++ b/demonstrations_v2/tutorial_mitigation_advantage/demo.py @@ -80,6 +80,7 @@ For more information see e.g. our :doc:`demo on simulating noisy circuits `. """ import pennylane as qml +qml.capture.enable() import jax import jax.numpy as jnp import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_mol_geo_opt/demo.py b/demonstrations_v2/tutorial_mol_geo_opt/demo.py index 91d6315eef..ec32e84924 100644 --- a/demonstrations_v2/tutorial_mol_geo_opt/demo.py +++ b/demonstrations_v2/tutorial_mol_geo_opt/demo.py @@ -124,6 +124,7 @@ # :func:`~.pennylane.qchem.molecular_hamiltonian` function. import pennylane as qml +qml.capture.enable() def H(x): diff --git a/demonstrations_v2/tutorial_mps/demo.py b/demonstrations_v2/tutorial_mps/demo.py index 444eb70734..36d54c00e5 100644 --- a/demonstrations_v2/tutorial_mps/demo.py +++ b/demonstrations_v2/tutorial_mps/demo.py @@ -572,6 +572,7 @@ def dense_to_mps(psi, bond_dim): # see our :doc:`demo on how to use default.tensor ` for more details. import pennylane as qml +qml.capture.enable() [dataset] = qml.data.load("qchem", molname="H6", bondlength=1.3, basis="STO-3G") diff --git a/demonstrations_v2/tutorial_multiclass_classification/demo.py b/demonstrations_v2/tutorial_multiclass_classification/demo.py index 1acf359534..60a6e5c242 100644 --- a/demonstrations_v2/tutorial_multiclass_classification/demo.py +++ b/demonstrations_v2/tutorial_multiclass_classification/demo.py @@ -50,6 +50,7 @@ """ import pennylane as qml +qml.capture.enable() import torch import numpy as np from torch.autograd import Variable diff --git a/demonstrations_v2/tutorial_neutral_atoms/demo.py b/demonstrations_v2/tutorial_neutral_atoms/demo.py index b299941063..b271babf9c 100644 --- a/demonstrations_v2/tutorial_neutral_atoms/demo.py +++ b/demonstrations_v2/tutorial_neutral_atoms/demo.py @@ -306,6 +306,7 @@ # Let's plot this function to get an idea of what the pulse looks like. First, let's import all the relevant libraries. import pennylane as qml +qml.capture.enable() from pennylane import numpy as np import matplotlib.pyplot as plt import jax diff --git a/demonstrations_v2/tutorial_noisy_circuit_optimization/demo.py b/demonstrations_v2/tutorial_noisy_circuit_optimization/demo.py index 434e3537ad..90f2c515fe 100644 --- a/demonstrations_v2/tutorial_noisy_circuit_optimization/demo.py +++ b/demonstrations_v2/tutorial_noisy_circuit_optimization/demo.py @@ -80,6 +80,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_noisy_circuits/demo.py b/demonstrations_v2/tutorial_noisy_circuits/demo.py index 2009b347a6..3f52692a0a 100644 --- a/demonstrations_v2/tutorial_noisy_circuits/demo.py +++ b/demonstrations_v2/tutorial_noisy_circuits/demo.py @@ -58,6 +58,7 @@ # return the expectation value of :math:`Z_0\otimes Z_1:` # import pennylane as qml +qml.capture.enable() from jax import numpy as np import jax import jaxopt diff --git a/demonstrations_v2/tutorial_odegen/demo.py b/demonstrations_v2/tutorial_odegen/demo.py index c7b4cc1e21..f9459c76ae 100644 --- a/demonstrations_v2/tutorial_odegen/demo.py +++ b/demonstrations_v2/tutorial_odegen/demo.py @@ -165,6 +165,7 @@ """ import pennylane as qml +qml.capture.enable() import numpy as np import jax.numpy as jnp import jax diff --git a/demonstrations_v2/tutorial_optimal_control/demo.py b/demonstrations_v2/tutorial_optimal_control/demo.py index 635b8dfa90..10679416db 100644 --- a/demonstrations_v2/tutorial_optimal_control/demo.py +++ b/demonstrations_v2/tutorial_optimal_control/demo.py @@ -445,6 +445,7 @@ def smooth_rectangles(params, t, k=2.0, max_amp=1.0, eps=0.0, T=1.0): # functions, this almost always pays off. import pennylane as qml +qml.capture.enable() X, Y, Z = qml.PauliX, qml.PauliY, qml.PauliZ diff --git a/demonstrations_v2/tutorial_pasqal/demo.py b/demonstrations_v2/tutorial_pasqal/demo.py index 7b54a74789..37806a6844 100644 --- a/demonstrations_v2/tutorial_pasqal/demo.py +++ b/demonstrations_v2/tutorial_pasqal/demo.py @@ -153,6 +153,7 @@ # above. We also need to instantiate the device with a fixed control radius. import pennylane as qml +qml.capture.enable() num_wires = len(qubits) control_radius = 32.4 diff --git a/demonstrations_v2/tutorial_period_finding/demo.py b/demonstrations_v2/tutorial_period_finding/demo.py index a8cedd5348..0c8cf2c7bb 100644 --- a/demonstrations_v2/tutorial_period_finding/demo.py +++ b/demonstrations_v2/tutorial_period_finding/demo.py @@ -99,6 +99,7 @@ # ---------------- import pennylane as qml +qml.capture.enable() import numpy as np import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_phase_kickback/demo.py b/demonstrations_v2/tutorial_phase_kickback/demo.py index bf3d0c56c8..c5692e9067 100644 --- a/demonstrations_v2/tutorial_phase_kickback/demo.py +++ b/demonstrations_v2/tutorial_phase_kickback/demo.py @@ -46,6 +46,7 @@ # import pennylane as qml +qml.capture.enable() import numpy as np num_wires = 5 diff --git a/demonstrations_v2/tutorial_photonics/demo.py b/demonstrations_v2/tutorial_photonics/demo.py index 3888aa7d2c..f9d031a913 100644 --- a/demonstrations_v2/tutorial_photonics/demo.py +++ b/demonstrations_v2/tutorial_photonics/demo.py @@ -130,6 +130,7 @@ # import pennylane as qml +qml.capture.enable() from pennylane import numpy as np import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_post-variational_quantum_neural_networks/demo.py b/demonstrations_v2/tutorial_post-variational_quantum_neural_networks/demo.py index 77e5e2500b..bd19d13853 100644 --- a/demonstrations_v2/tutorial_post-variational_quantum_neural_networks/demo.py +++ b/demonstrations_v2/tutorial_post-variational_quantum_neural_networks/demo.py @@ -84,6 +84,7 @@ # import pennylane as qml +qml.capture.enable() from pennylane import numpy as np import jax from jax import numpy as jnp diff --git a/demonstrations_v2/tutorial_pulse_programming101/demo.py b/demonstrations_v2/tutorial_pulse_programming101/demo.py index cd3deac081..14b59e8feb 100644 --- a/demonstrations_v2/tutorial_pulse_programming101/demo.py +++ b/demonstrations_v2/tutorial_pulse_programming101/demo.py @@ -60,6 +60,7 @@ """ import pennylane as qml +qml.capture.enable() import numpy as np import jax.numpy as jnp import jax diff --git a/demonstrations_v2/tutorial_qaoa_intro/demo.py b/demonstrations_v2/tutorial_qaoa_intro/demo.py index 8c86f00dae..7f2517aa35 100644 --- a/demonstrations_v2/tutorial_qaoa_intro/demo.py +++ b/demonstrations_v2/tutorial_qaoa_intro/demo.py @@ -80,6 +80,7 @@ # template. For example, let's say we have the following Hamiltonian: import pennylane as qml +qml.capture.enable() H = qml.Hamiltonian([1, 1, 0.5], [qml.PauliX(0), qml.PauliZ(1), qml.PauliX(0) @ qml.PauliX(1)]) print(H) diff --git a/demonstrations_v2/tutorial_qaoa_maxcut/demo.py b/demonstrations_v2/tutorial_qaoa_maxcut/demo.py index c9bcc2b671..b90d267668 100644 --- a/demonstrations_v2/tutorial_qaoa_maxcut/demo.py +++ b/demonstrations_v2/tutorial_qaoa_maxcut/demo.py @@ -131,6 +131,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np np.random.seed(42) diff --git a/demonstrations_v2/tutorial_qcbm/demo.py b/demonstrations_v2/tutorial_qcbm/demo.py index 375c2dc519..8622252868 100644 --- a/demonstrations_v2/tutorial_qcbm/demo.py +++ b/demonstrations_v2/tutorial_qcbm/demo.py @@ -234,6 +234,7 @@ def get_bars_and_stripes(n): # import pennylane as qml +qml.capture.enable() np.random.seed(42) diff --git a/demonstrations_v2/tutorial_qchem_external/demo.py b/demonstrations_v2/tutorial_qchem_external/demo.py index 0e37c0aef2..9cae915999 100644 --- a/demonstrations_v2/tutorial_qchem_external/demo.py +++ b/demonstrations_v2/tutorial_qchem_external/demo.py @@ -47,6 +47,7 @@ """ import pennylane as qml +qml.capture.enable() import numpy as np symbols = ["H", "O", "H"] diff --git a/demonstrations_v2/tutorial_qft/demo.py b/demonstrations_v2/tutorial_qft/demo.py index 550a5fd14c..609ea7902b 100644 --- a/demonstrations_v2/tutorial_qft/demo.py +++ b/demonstrations_v2/tutorial_qft/demo.py @@ -34,6 +34,7 @@ from scipy.linalg import dft import pennylane as qml +qml.capture.enable() import numpy as np n = 2 @@ -91,6 +92,7 @@ # apply SWAP gates at the end. Let's see how the decomposition looks like using the drawer: import pennylane as qml +qml.capture.enable() from functools import partial import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_qft_and_groups/demo.py b/demonstrations_v2/tutorial_qft_and_groups/demo.py index 939a835451..9adfd028d2 100644 --- a/demonstrations_v2/tutorial_qft_and_groups/demo.py +++ b/demonstrations_v2/tutorial_qft_and_groups/demo.py @@ -250,6 +250,7 @@ def h_hat(k): # import pennylane as qml +qml.capture.enable() dev = qml.device("default.qubit", wires=4, shots=None) diff --git a/demonstrations_v2/tutorial_qft_arithmetics/demo.py b/demonstrations_v2/tutorial_qft_arithmetics/demo.py index 4bf57edc8e..eb82fdb5b8 100644 --- a/demonstrations_v2/tutorial_qft_arithmetics/demo.py +++ b/demonstrations_v2/tutorial_qft_arithmetics/demo.py @@ -100,6 +100,7 @@ """ import pennylane as qml +qml.capture.enable() import matplotlib.pyplot as plt dev = qml.device("default.qubit", wires=3) @@ -169,6 +170,7 @@ def basis_embedding_circuit(m): # import pennylane as qml +qml.capture.enable() import numpy as np n_wires = 4 diff --git a/demonstrations_v2/tutorial_qgrnn/demo.py b/demonstrations_v2/tutorial_qgrnn/demo.py index db0de46c7e..2bb0269f35 100644 --- a/demonstrations_v2/tutorial_qgrnn/demo.py +++ b/demonstrations_v2/tutorial_qgrnn/demo.py @@ -193,6 +193,7 @@ import pennylane as qml +qml.capture.enable() from matplotlib import pyplot as plt from pennylane import numpy as np import scipy diff --git a/demonstrations_v2/tutorial_qjit_compile_grovers_algorithm_with_catalyst/demo.py b/demonstrations_v2/tutorial_qjit_compile_grovers_algorithm_with_catalyst/demo.py index fbb1de821e..cf095b7e47 100644 --- a/demonstrations_v2/tutorial_qjit_compile_grovers_algorithm_with_catalyst/demo.py +++ b/demonstrations_v2/tutorial_qjit_compile_grovers_algorithm_with_catalyst/demo.py @@ -66,6 +66,7 @@ import matplotlib.pyplot as plt import numpy as np import pennylane as qml +qml.capture.enable() def equal_superposition(wires): @@ -265,14 +266,16 @@ def circuit_lightning(): ) runtimes_compilation = timeit.repeat( "qml.qjit(circuit_lightning)", - setup="import pennylane as qml", + setup="import pennylane as qml +qml.capture.enable()", globals={"circuit_lightning": circuit_lightning}, number=1, repeat=1, ) runtimes_qjit_call = timeit.repeat( "_circuit_qjit()", - setup="import pennylane as qml; _circuit_qjit = qml.qjit(circuit_lightning);", + setup="import pennylane as qml +qml.capture.enable(); _circuit_qjit = qml.qjit(circuit_lightning);", globals={"circuit_lightning": circuit_lightning}, number=1, repeat=NUM_REPS, diff --git a/demonstrations_v2/tutorial_qksd_qsp_qualtran/demo.py b/demonstrations_v2/tutorial_qksd_qsp_qualtran/demo.py index 6826cbf66e..201a7dbce8 100644 --- a/demonstrations_v2/tutorial_qksd_qsp_qualtran/demo.py +++ b/demonstrations_v2/tutorial_qksd_qsp_qualtran/demo.py @@ -64,6 +64,7 @@ # module. We use the pre-calculated results below to create a :class:`~pennylane.ops.Hamiltonian` object. import pennylane as qml +qml.capture.enable() import numpy as np coeffs = [-2.6055398817649027, 0.4725512342017669, 0.06908378485045799, 0.06908378485045799, 0.42465877221739423, 0.040785962774025165, 0.02016371425557293, 0.33650704944175736, 0.059002396986463035, 0.059002396986463035, 0.2401948108687125, 0.2696430914655511, 0.04971997220167805, 0.04971997220167805, 0.2751875205710399, 0.30033122257656397, 0.22551650339251875] diff --git a/demonstrations_v2/tutorial_qnn_module_torch/demo.py b/demonstrations_v2/tutorial_qnn_module_torch/demo.py index bd7e4fb028..238d2aba94 100644 --- a/demonstrations_v2/tutorial_qnn_module_torch/demo.py +++ b/demonstrations_v2/tutorial_qnn_module_torch/demo.py @@ -77,6 +77,7 @@ # operations from the :doc:`templates ` module. import pennylane as qml +qml.capture.enable() n_qubits = 2 dev = qml.device("default.qubit", wires=n_qubits) diff --git a/demonstrations_v2/tutorial_qnn_multivariate_regression/demo.py b/demonstrations_v2/tutorial_qnn_multivariate_regression/demo.py index 61b0ea9006..9359932baf 100644 --- a/demonstrations_v2/tutorial_qnn_multivariate_regression/demo.py +++ b/demonstrations_v2/tutorial_qnn_multivariate_regression/demo.py @@ -68,6 +68,7 @@ import matplotlib.pyplot as plt import pennylane as qml +qml.capture.enable() from pennylane import numpy as pnp import jax from jax import numpy as jnp diff --git a/demonstrations_v2/tutorial_qpe/demo.py b/demonstrations_v2/tutorial_qpe/demo.py index a72acb027d..b5fb0de763 100644 --- a/demonstrations_v2/tutorial_qpe/demo.py +++ b/demonstrations_v2/tutorial_qpe/demo.py @@ -208,6 +208,7 @@ """ import pennylane as qml +qml.capture.enable() import numpy as np def U(wires): diff --git a/demonstrations_v2/tutorial_qsvt_hardware/demo.py b/demonstrations_v2/tutorial_qsvt_hardware/demo.py index 2130f6538e..b75bca0dd7 100644 --- a/demonstrations_v2/tutorial_qsvt_hardware/demo.py +++ b/demonstrations_v2/tutorial_qsvt_hardware/demo.py @@ -36,6 +36,7 @@ which the angles are computed, which is ``'QSVT'`` here. """ import pennylane as qml +qml.capture.enable() poly = [0, -1.0, 0, 1/2, 0, 1/2] angles_pl = qml.poly_to_angles(poly, "QSVT") print(angles_pl) @@ -84,6 +85,7 @@ # a Hamiltonian and manually apply the polynomial of interest: import pennylane as qml +qml.capture.enable() import numpy as np from numpy.linalg import matrix_power as mpow diff --git a/demonstrations_v2/tutorial_quantum_analytic_descent/demo.py b/demonstrations_v2/tutorial_quantum_analytic_descent/demo.py index a950327342..a35f4b28b3 100644 --- a/demonstrations_v2/tutorial_quantum_analytic_descent/demo.py +++ b/demonstrations_v2/tutorial_quantum_analytic_descent/demo.py @@ -89,6 +89,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np import matplotlib.pyplot as plt import warnings diff --git a/demonstrations_v2/tutorial_quantum_chebyshev_transform/demo.py b/demonstrations_v2/tutorial_quantum_chebyshev_transform/demo.py index ba6131bd52..fb85bf844f 100644 --- a/demonstrations_v2/tutorial_quantum_chebyshev_transform/demo.py +++ b/demonstrations_v2/tutorial_quantum_chebyshev_transform/demo.py @@ -160,6 +160,7 @@ """ import pennylane as qml +qml.capture.enable() # Number of qubits (non-auxiliary qubit). N = 4 diff --git a/demonstrations_v2/tutorial_quantum_circuit_cutting/demo.py b/demonstrations_v2/tutorial_quantum_circuit_cutting/demo.py index bdcfb59cb2..691945c5a9 100644 --- a/demonstrations_v2/tutorial_quantum_circuit_cutting/demo.py +++ b/demonstrations_v2/tutorial_quantum_circuit_cutting/demo.py @@ -130,6 +130,7 @@ from functools import partial import pennylane as qml +qml.capture.enable() from pennylane import numpy as np dev = qml.device("default.qubit", wires=3) diff --git a/demonstrations_v2/tutorial_quantum_dropout/demo.py b/demonstrations_v2/tutorial_quantum_dropout/demo.py index 4469c56943..1478a43742 100644 --- a/demonstrations_v2/tutorial_quantum_dropout/demo.py +++ b/demonstrations_v2/tutorial_quantum_dropout/demo.py @@ -56,6 +56,7 @@ import numpy as np import pennylane as qml +qml.capture.enable() seed = 12345 np.random.seed(seed=seed) diff --git a/demonstrations_v2/tutorial_quantum_gans/demo.py b/demonstrations_v2/tutorial_quantum_gans/demo.py index 9883817a9c..f3b1f526db 100644 --- a/demonstrations_v2/tutorial_quantum_gans/demo.py +++ b/demonstrations_v2/tutorial_quantum_gans/demo.py @@ -133,6 +133,7 @@ import matplotlib.pyplot as plt import matplotlib.gridspec as gridspec import pennylane as qml +qml.capture.enable() # Pytorch imports import torch diff --git a/demonstrations_v2/tutorial_quantum_metrology/demo.py b/demonstrations_v2/tutorial_quantum_metrology/demo.py index 6340f0c1b3..f55c34fce3 100644 --- a/demonstrations_v2/tutorial_quantum_metrology/demo.py +++ b/demonstrations_v2/tutorial_quantum_metrology/demo.py @@ -120,6 +120,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np diff --git a/demonstrations_v2/tutorial_quantum_natural_gradient/demo.py b/demonstrations_v2/tutorial_quantum_natural_gradient/demo.py index 44f59b57e6..e0f2429392 100644 --- a/demonstrations_v2/tutorial_quantum_natural_gradient/demo.py +++ b/demonstrations_v2/tutorial_quantum_natural_gradient/demo.py @@ -186,6 +186,7 @@ import numpy as np import pennylane as qml +qml.capture.enable() from pennylane import numpy as pnp dev = qml.device("lightning.qubit", wires=3) diff --git a/demonstrations_v2/tutorial_quantum_phase_transitions/demo.py b/demonstrations_v2/tutorial_quantum_phase_transitions/demo.py index 6510ef32ce..e8e840543c 100644 --- a/demonstrations_v2/tutorial_quantum_phase_transitions/demo.py +++ b/demonstrations_v2/tutorial_quantum_phase_transitions/demo.py @@ -79,6 +79,7 @@ # The code below creates this Hamiltonian for three qubits: # import pennylane as qml +qml.capture.enable() from pennylane import numpy as np diff --git a/demonstrations_v2/tutorial_quantum_transfer_learning/demo.py b/demonstrations_v2/tutorial_quantum_transfer_learning/demo.py index 1cf90b6c24..8b19f1dc87 100644 --- a/demonstrations_v2/tutorial_quantum_transfer_learning/demo.py +++ b/demonstrations_v2/tutorial_quantum_transfer_learning/demo.py @@ -134,6 +134,7 @@ # Pennylane import pennylane as qml +qml.capture.enable() from pennylane import numpy as np torch.manual_seed(42) diff --git a/demonstrations_v2/tutorial_quanvolution/demo.py b/demonstrations_v2/tutorial_quanvolution/demo.py index 7ada3a800c..e7c06f8e4f 100644 --- a/demonstrations_v2/tutorial_quanvolution/demo.py +++ b/demonstrations_v2/tutorial_quanvolution/demo.py @@ -84,6 +84,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np from pennylane.templates import RandomLayers import tensorflow as tf diff --git a/demonstrations_v2/tutorial_qubit_rotation/demo.py b/demonstrations_v2/tutorial_qubit_rotation/demo.py index 13e3600a47..31c722b08b 100644 --- a/demonstrations_v2/tutorial_qubit_rotation/demo.py +++ b/demonstrations_v2/tutorial_qubit_rotation/demo.py @@ -87,6 +87,7 @@ # of NumPy provided by Jax. import pennylane as qml +qml.capture.enable() from jax import numpy as np import jax diff --git a/demonstrations_v2/tutorial_qubit_tapering/demo.py b/demonstrations_v2/tutorial_qubit_tapering/demo.py index 5f338e68f3..420da26283 100644 --- a/demonstrations_v2/tutorial_qubit_tapering/demo.py +++ b/demonstrations_v2/tutorial_qubit_tapering/demo.py @@ -120,6 +120,7 @@ coordinates. """ import pennylane as qml +qml.capture.enable() from jax import numpy as jnp import jax diff --git a/demonstrations_v2/tutorial_qubitization/demo.py b/demonstrations_v2/tutorial_qubitization/demo.py index f4382e3460..3859322a89 100644 --- a/demonstrations_v2/tutorial_qubitization/demo.py +++ b/demonstrations_v2/tutorial_qubitization/demo.py @@ -93,6 +93,7 @@ """ import pennylane as qml +qml.capture.enable() H = -0.4 * qml.Z(0) + 0.3 * qml.Z(1) + 0.4 * qml.Z(0) @ qml.Z(1) diff --git a/demonstrations_v2/tutorial_qutrits_bernstein_vazirani/demo.py b/demonstrations_v2/tutorial_qutrits_bernstein_vazirani/demo.py index be3dfde8c2..419331001a 100644 --- a/demonstrations_v2/tutorial_qutrits_bernstein_vazirani/demo.py +++ b/demonstrations_v2/tutorial_qutrits_bernstein_vazirani/demo.py @@ -127,6 +127,7 @@ import pennylane as qml +qml.capture.enable() dev = qml.device("default.qubit", wires = 4) diff --git a/demonstrations_v2/tutorial_resource_estimation/demo.py b/demonstrations_v2/tutorial_resource_estimation/demo.py index 81648ed18a..83d31d8700 100644 --- a/demonstrations_v2/tutorial_resource_estimation/demo.py +++ b/demonstrations_v2/tutorial_resource_estimation/demo.py @@ -63,6 +63,7 @@ `6-31g basis set `_ as an example. """ import pennylane as qml +qml.capture.enable() import numpy as np import jax diff --git a/demonstrations_v2/tutorial_resourcefulness/demo.py b/demonstrations_v2/tutorial_resourcefulness/demo.py index d169f10232..d04de15b45 100644 --- a/demonstrations_v2/tutorial_resourcefulness/demo.py +++ b/demonstrations_v2/tutorial_resourcefulness/demo.py @@ -360,6 +360,7 @@ def g(x): import pennylane as qml +qml.capture.enable() from scipy.stats import unitary_group diff --git a/demonstrations_v2/tutorial_rl_pulse/demo.py b/demonstrations_v2/tutorial_rl_pulse/demo.py index 0b40f614e2..b545658196 100644 --- a/demonstrations_v2/tutorial_rl_pulse/demo.py +++ b/demonstrations_v2/tutorial_rl_pulse/demo.py @@ -178,6 +178,7 @@ """ import pennylane as qml +qml.capture.enable() # Quantum computer qubit_freqs = [4.81] # GHz diff --git a/demonstrations_v2/tutorial_rosalin/demo.py b/demonstrations_v2/tutorial_rosalin/demo.py index b179d3eebc..60362511e5 100644 --- a/demonstrations_v2/tutorial_rosalin/demo.py +++ b/demonstrations_v2/tutorial_rosalin/demo.py @@ -112,6 +112,7 @@ First, let's import NumPy and PennyLane, and define our Hamiltonian. """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np # set the random seed diff --git a/demonstrations_v2/tutorial_rotoselect/demo.py b/demonstrations_v2/tutorial_rotoselect/demo.py index 981ea26c62..89173c53fd 100644 --- a/demonstrations_v2/tutorial_rotoselect/demo.py +++ b/demonstrations_v2/tutorial_rotoselect/demo.py @@ -123,6 +123,7 @@ # devices, simulators have the capability of doing these calculations without sampling. import pennylane as qml +qml.capture.enable() from pennylane import numpy as np np.random.seed(9432092) diff --git a/demonstrations_v2/tutorial_sc_qubits/demo.py b/demonstrations_v2/tutorial_sc_qubits/demo.py index 9fdea4b1cf..259f1b0932 100644 --- a/demonstrations_v2/tutorial_sc_qubits/demo.py +++ b/demonstrations_v2/tutorial_sc_qubits/demo.py @@ -402,6 +402,7 @@ # angle :math:`\phi` actually means a rotation by :math:`\omega_r+\phi.` In PennyLane, the operations read: import pennylane as qml +qml.capture.enable() import numpy as np import matplotlib.pyplot as plt diff --git a/demonstrations_v2/tutorial_shadow_hamiltonian_simulation/demo.py b/demonstrations_v2/tutorial_shadow_hamiltonian_simulation/demo.py index e03d4ab9dc..5552876c30 100644 --- a/demonstrations_v2/tutorial_shadow_hamiltonian_simulation/demo.py +++ b/demonstrations_v2/tutorial_shadow_hamiltonian_simulation/demo.py @@ -135,6 +135,7 @@ """ import pennylane as qml +qml.capture.enable() import numpy as np from pennylane import X, Y, Z, I diff --git a/demonstrations_v2/tutorial_shors_algorithm_catalyst/demo.py b/demonstrations_v2/tutorial_shors_algorithm_catalyst/demo.py index a29b8bd9df..ce00665806 100644 --- a/demonstrations_v2/tutorial_shors_algorithm_catalyst/demo.py +++ b/demonstrations_v2/tutorial_shors_algorithm_catalyst/demo.py @@ -174,6 +174,7 @@ def shors_algorithm(N): # looks to be as simple as the following: import pennylane as qml +qml.capture.enable() @qml.qjit @@ -668,6 +669,7 @@ def phase_to_order(phase, max_denominator): # previous section. import pennylane as qml +qml.capture.enable() import catalyst from catalyst import measure diff --git a/demonstrations_v2/tutorial_spsa/demo.py b/demonstrations_v2/tutorial_spsa/demo.py index 2d45d0a089..af26ffed44 100644 --- a/demonstrations_v2/tutorial_spsa/demo.py +++ b/demonstrations_v2/tutorial_spsa/demo.py @@ -164,6 +164,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np num_wires = 4 diff --git a/demonstrations_v2/tutorial_stabilizer_codes/demo.py b/demonstrations_v2/tutorial_stabilizer_codes/demo.py index 2a95f47430..238a58421b 100644 --- a/demonstrations_v2/tutorial_stabilizer_codes/demo.py +++ b/demonstrations_v2/tutorial_stabilizer_codes/demo.py @@ -68,6 +68,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np diff --git a/demonstrations_v2/tutorial_state_preparation/demo.py b/demonstrations_v2/tutorial_state_preparation/demo.py index f91faefdb0..3f11f57bbf 100644 --- a/demonstrations_v2/tutorial_state_preparation/demo.py +++ b/demonstrations_v2/tutorial_state_preparation/demo.py @@ -48,6 +48,7 @@ # To start, we import PennyLane, NumPy, and PyTorch for the optimization: import pennylane as qml +qml.capture.enable() import numpy as np import torch from torch.autograd import Variable diff --git a/demonstrations_v2/tutorial_stochastic_parameter_shift/demo.py b/demonstrations_v2/tutorial_stochastic_parameter_shift/demo.py index 9447e2203b..7d6b6f973b 100644 --- a/demonstrations_v2/tutorial_stochastic_parameter_shift/demo.py +++ b/demonstrations_v2/tutorial_stochastic_parameter_shift/demo.py @@ -115,6 +115,7 @@ """ import pennylane as qml +qml.capture.enable() import matplotlib.pyplot as plt from pennylane import numpy as np from scipy.linalg import expm diff --git a/demonstrations_v2/tutorial_teleportation/demo.py b/demonstrations_v2/tutorial_teleportation/demo.py index 37ed6f2605..3a89f5dac1 100644 --- a/demonstrations_v2/tutorial_teleportation/demo.py +++ b/demonstrations_v2/tutorial_teleportation/demo.py @@ -125,6 +125,7 @@ # to do the state preparation step: import pennylane as qml +qml.capture.enable() import numpy as np diff --git a/demonstrations_v2/tutorial_tensor_network_basics/demo.py b/demonstrations_v2/tutorial_tensor_network_basics/demo.py index f459bc2e96..7956f26aa3 100644 --- a/demonstrations_v2/tutorial_tensor_network_basics/demo.py +++ b/demonstrations_v2/tutorial_tensor_network_basics/demo.py @@ -380,6 +380,7 @@ # As we will explore in the next section, we can use tensor networks to simulate quantum circuits. In particular, the calculation of an expectation value corresponds to the contraction of the tensor network into a single tensor (scalar). In ``Pennylane``, this simulation can be performed using the :class:`~pennylane.devices.default_tensor.DefaultTensor` device, and the method used to find the contraction path can be chosen via the ``contraction_optimizer`` keyword argument. import pennylane as qml +qml.capture.enable() dev = qml.device("default.tensor", method="tn", contraction_optimizer="auto-hq") diff --git a/demonstrations_v2/tutorial_testing_symmetry/demo.py b/demonstrations_v2/tutorial_testing_symmetry/demo.py index bc8963d699..03e3068b99 100644 --- a/demonstrations_v2/tutorial_testing_symmetry/demo.py +++ b/demonstrations_v2/tutorial_testing_symmetry/demo.py @@ -116,6 +116,7 @@ """ import pennylane as qml +qml.capture.enable() from pennylane import numpy as np # Create wires for the system diff --git a/demonstrations_v2/tutorial_tn_circuits/demo.py b/demonstrations_v2/tutorial_tn_circuits/demo.py index 77bad8c5f1..083a0b050a 100644 --- a/demonstrations_v2/tutorial_tn_circuits/demo.py +++ b/demonstrations_v2/tutorial_tn_circuits/demo.py @@ -116,6 +116,7 @@ import numpy as onp import pennylane as qml +qml.capture.enable() from pennylane import numpy as np diff --git a/demonstrations_v2/tutorial_toric_code/demo.py b/demonstrations_v2/tutorial_toric_code/demo.py index d338c4d8d2..ada2ea7429 100644 --- a/demonstrations_v2/tutorial_toric_code/demo.py +++ b/demonstrations_v2/tutorial_toric_code/demo.py @@ -113,6 +113,7 @@ """ import pennylane as qml +qml.capture.enable() import matplotlib.pyplot as plt from matplotlib.patches import Polygon, Patch from itertools import product diff --git a/demonstrations_v2/tutorial_trapped_ions/demo.py b/demonstrations_v2/tutorial_trapped_ions/demo.py index f6eff7e30d..c19820410f 100644 --- a/demonstrations_v2/tutorial_trapped_ions/demo.py +++ b/demonstrations_v2/tutorial_trapped_ions/demo.py @@ -401,6 +401,7 @@ # duration :math:`t` of the pulse, with :math:`\Omega` set to 100 kHz. import pennylane as qml +qml.capture.enable() import numpy as np from scipy.linalg import expm diff --git a/demonstrations_v2/tutorial_unitary_designs/demo.py b/demonstrations_v2/tutorial_unitary_designs/demo.py index 83180842e4..8c7caa2317 100644 --- a/demonstrations_v2/tutorial_unitary_designs/demo.py +++ b/demonstrations_v2/tutorial_unitary_designs/demo.py @@ -432,6 +432,7 @@ def f(x, y, z): # unitaries, and then again with only the Clifford group. import pennylane as qml +qml.capture.enable() # Scipy allows us to sample Haar-random unitaries directly from scipy.stats import unitary_group diff --git a/demonstrations_v2/tutorial_unitary_synthesis_kak/demo.py b/demonstrations_v2/tutorial_unitary_synthesis_kak/demo.py index 2b7feefec6..ea91ce2561 100644 --- a/demonstrations_v2/tutorial_unitary_synthesis_kak/demo.py +++ b/demonstrations_v2/tutorial_unitary_synthesis_kak/demo.py @@ -197,6 +197,7 @@ yield the input ``U`` again. """ import pennylane as qml +qml.capture.enable() import numpy as np import matplotlib.pyplot as plt from scipy.linalg import cossin, eig, qr diff --git a/demonstrations_v2/tutorial_univariate_qvr/demo.py b/demonstrations_v2/tutorial_univariate_qvr/demo.py index cb4a682061..799da9f1c4 100644 --- a/demonstrations_v2/tutorial_univariate_qvr/demo.py +++ b/demonstrations_v2/tutorial_univariate_qvr/demo.py @@ -435,6 +435,7 @@ def get_training_cycler(Xtr: torch.Tensor, batch_size: int, seed: int = GLOBAL_S # import pennylane as qml +qml.capture.enable() from itertools import combinations diff --git a/demonstrations_v2/tutorial_variational_classifier/demo.py b/demonstrations_v2/tutorial_variational_classifier/demo.py index 4e1198574f..b02708400e 100644 --- a/demonstrations_v2/tutorial_variational_classifier/demo.py +++ b/demonstrations_v2/tutorial_variational_classifier/demo.py @@ -54,6 +54,7 @@ # and an optimizer. import pennylane as qml +qml.capture.enable() from pennylane import numpy as np from pennylane.optimize import NesterovMomentumOptimizer diff --git a/demonstrations_v2/tutorial_vqe/demo.py b/demonstrations_v2/tutorial_vqe/demo.py index 97ffdfaf8e..87cc3d7f52 100644 --- a/demonstrations_v2/tutorial_vqe/demo.py +++ b/demonstrations_v2/tutorial_vqe/demo.py @@ -53,6 +53,7 @@ jax.config.update('jax_enable_x64', True) import pennylane as qml +qml.capture.enable() dataset = qml.data.load('qchem', molname="H2")[0] H, qubits = dataset.hamiltonian, len(dataset.hamiltonian.wires) diff --git a/demonstrations_v2/tutorial_vqe_qng/demo.py b/demonstrations_v2/tutorial_vqe_qng/demo.py index d235c5fbc9..6fd3185f0a 100644 --- a/demonstrations_v2/tutorial_vqe_qng/demo.py +++ b/demonstrations_v2/tutorial_vqe_qng/demo.py @@ -33,6 +33,7 @@ import matplotlib.pyplot as plt from pennylane import numpy as np import pennylane as qml +qml.capture.enable() ############################################################################## # For this simple example, we consider the following single-qubit Hamiltonian: :math:`\sigma_x + \sigma_z.` diff --git a/demonstrations_v2/tutorial_vqe_spin_sectors/demo.py b/demonstrations_v2/tutorial_vqe_spin_sectors/demo.py index 0e24022bb4..95a15805c4 100644 --- a/demonstrations_v2/tutorial_vqe_spin_sectors/demo.py +++ b/demonstrations_v2/tutorial_vqe_spin_sectors/demo.py @@ -63,6 +63,7 @@ # :func:`~.pennylane.qchem.molecular_hamiltonian` function. import pennylane as qml +qml.capture.enable() H, qubits = qml.qchem.molecular_hamiltonian(symbols, coordinates) diff --git a/demonstrations_v2/tutorial_vqe_vqd/demo.py b/demonstrations_v2/tutorial_vqe_vqd/demo.py index a899af0c90..7612a3a265 100644 --- a/demonstrations_v2/tutorial_vqe_vqd/demo.py +++ b/demonstrations_v2/tutorial_vqe_vqd/demo.py @@ -52,6 +52,7 @@ # import pennylane as qml +qml.capture.enable() import numpy as np import warnings diff --git a/demonstrations_v2/tutorial_vqls/demo.py b/demonstrations_v2/tutorial_vqls/demo.py index 28cceff0e1..dfb7a2941d 100644 --- a/demonstrations_v2/tutorial_vqls/demo.py +++ b/demonstrations_v2/tutorial_vqls/demo.py @@ -184,6 +184,7 @@ # Pennylane import pennylane as qml +qml.capture.enable() from pennylane import numpy as np # Plotting diff --git a/demonstrations_v2/tutorial_vqt/demo.py b/demonstrations_v2/tutorial_vqt/demo.py index 69dd331ac6..166cbf737e 100644 --- a/demonstrations_v2/tutorial_vqt/demo.py +++ b/demonstrations_v2/tutorial_vqt/demo.py @@ -108,6 +108,7 @@ import pennylane as qml +qml.capture.enable() from matplotlib import pyplot as plt import numpy as np import scipy diff --git a/demonstrations_v2/tutorial_xas/demo.py b/demonstrations_v2/tutorial_xas/demo.py index abb6336cb8..4fa333f00a 100644 --- a/demonstrations_v2/tutorial_xas/demo.py +++ b/demonstrations_v2/tutorial_xas/demo.py @@ -168,6 +168,7 @@ # To do this, we can obtain the molecular orbital coefficients from PennyLane using :func:`~.pennylane.qchem.scf`, and change the coefficients in the ``hf`` instance to match. import pennylane as qml +qml.capture.enable() mole = qml.qchem.Molecule(symbols, geometry, basis_name="sto-3g", unit="angstrom") diff --git a/demonstrations_v2/tutorial_zx_calculus/demo.py b/demonstrations_v2/tutorial_zx_calculus/demo.py index 6f04aa2b7b..53937ef3ef 100644 --- a/demonstrations_v2/tutorial_zx_calculus/demo.py +++ b/demonstrations_v2/tutorial_zx_calculus/demo.py @@ -514,6 +514,7 @@ import matplotlib.pyplot as plt import pennylane as qml +qml.capture.enable() import pyzx dev = qml.device("default.qubit", wires=2) diff --git a/demonstrations_v2/vqe_parallel/demo.py b/demonstrations_v2/vqe_parallel/demo.py index 1223044da9..5a489f6c81 100644 --- a/demonstrations_v2/vqe_parallel/demo.py +++ b/demonstrations_v2/vqe_parallel/demo.py @@ -36,6 +36,7 @@ import matplotlib.pyplot as plt from pennylane import numpy as np import pennylane as qml +qml.capture.enable() from pennylane import qchem ############################################################################## diff --git a/demonstrations_v2/zne_catalyst/demo.py b/demonstrations_v2/zne_catalyst/demo.py index 1db090fed4..afd406ee08 100644 --- a/demonstrations_v2/zne_catalyst/demo.py +++ b/demonstrations_v2/zne_catalyst/demo.py @@ -97,6 +97,7 @@ import numpy as np import pennylane as qml +qml.capture.enable() from catalyst import mitigate_with_zne import warnings diff --git a/documentation/reference_demo/demo.py b/documentation/reference_demo/demo.py index 80defeef0f..5a1b5e988d 100644 --- a/documentation/reference_demo/demo.py +++ b/documentation/reference_demo/demo.py @@ -655,6 +655,7 @@ # We need to make sure code is not affected by the filters. import pennylane as qml +qml.capture.enable() dev = qml.device("default.qubit", wires=2)