Open eggerdj opened 3 years ago
Which qiskit version are you using, the above code ran fine on my build, with 0.9 and 0.95
I am using
'0.18.0.dev0+25df5ba'
, which I recently built from source.
See the commit specified above.
This seems to be an issue of data structure of circuit calibration field, i.e. this is a dictionary with the assigned parameter value as a part of key Dict[gate name: str][Tuple[Tuple[qubit: int, ...], Tuple[parameter value: float, ...]], Schedule]
.
Perhaps this line? https://github.com/Qiskit/qiskit-terra/blob/5fad07e9c537e7f254cbd099e129a1eb427176cd/qiskit/dagcircuit/dagcircuit.py#L231-L232
Any bump on this?
Information
What is the current behavior?
When adding calibrations to a circuit we can have situations where the numerical precision of the parameters cause transpiler issues.
Steps to reproduce the problem
The following code works for the end amplitude of
0.9
but fails for0.95
with the errorqiskit.exceptions.QiskitError: "Cannot unroll the circuit to the given basis, ['id', 'rz', 'sx', 'x']. Instruction MyGate not found in equivalence library and no rule found to expand."
What is the expected behavior?
The code above should not fail.
Suggested solutions
Perhaps rounding the parameters in the calibrations to 8 decimals would solve the issue.