From a7c5c7baae11d22a5be0844237fc5ffdea765738 Mon Sep 17 00:00:00 2001 From: Anton Dekusar <62334182+adekusar-drl@users.noreply.github.com> Date: Thu, 8 Jun 2023 15:44:43 +0100 Subject: [PATCH] Fix RawFeatureVector (#654) * fix rawfeaturevector * fix rawfeaturevector * Update qiskit_machine_learning/circuit/library/raw_feature_vector.py Co-authored-by: Julien Gacon * fix imports * add reno * add reno --------- Co-authored-by: Julien Gacon --- .../circuit/library/raw_feature_vector.py | 12 +++++++++--- .../notes/fix-rawfeaturevector-742a68224ddb1b9d.yaml | 6 ++++++ 2 files changed, 15 insertions(+), 3 deletions(-) create mode 100644 releasenotes/notes/fix-rawfeaturevector-742a68224ddb1b9d.yaml diff --git a/qiskit_machine_learning/circuit/library/raw_feature_vector.py b/qiskit_machine_learning/circuit/library/raw_feature_vector.py index edbe099a6..b627e5912 100644 --- a/qiskit_machine_learning/circuit/library/raw_feature_vector.py +++ b/qiskit_machine_learning/circuit/library/raw_feature_vector.py @@ -1,6 +1,6 @@ # This code is part of Qiskit. # -# (C) Copyright IBM 2020, 2022. +# (C) Copyright IBM 2020, 2023. # # This code is licensed under the Apache License, Version 2.0. You may # obtain a copy of this license in the LICENSE.txt file in the root directory @@ -15,7 +15,13 @@ from typing import Optional, List import numpy as np from qiskit.exceptions import QiskitError -from qiskit.circuit import QuantumRegister, QuantumCircuit, ParameterVector, Instruction +from qiskit.circuit import ( + QuantumRegister, + QuantumCircuit, + ParameterVector, + Instruction, + ParameterExpression, +) from qiskit.circuit.library import BlueprintCircuit @@ -164,7 +170,7 @@ def _define(self): # cast ParameterExpressions that are fully bound to numbers cleaned_params = [] for param in self.params: - if len(param.parameters) == 0: + if not isinstance(param, ParameterExpression) or len(param.parameters) == 0: cleaned_params.append(complex(param)) else: raise QiskitError("Cannot define a ParameterizedInitialize with unbound parameters") diff --git a/releasenotes/notes/fix-rawfeaturevector-742a68224ddb1b9d.yaml b/releasenotes/notes/fix-rawfeaturevector-742a68224ddb1b9d.yaml new file mode 100644 index 000000000..af9fca9be --- /dev/null +++ b/releasenotes/notes/fix-rawfeaturevector-742a68224ddb1b9d.yaml @@ -0,0 +1,6 @@ +--- +fixes: + - | + Updated :class:`~qiskit_machine_learning.circuit.library.RawFeatureVector` to support + `changes `__ in the parameter assignment + introduced in Qiskit.