qiskit
qiskit copied to clipboard
Symbolic pulse raise `TypeError`
Environment
- Qiskit Terra version: 0.21.1
- Python version: 3.9.12
- Operating system: macOS Monterey 12.4
What is happening?
When trying to instantiate a SymbolicPulse
as follows:
GaussianSquare(
duration=280,
amp=0.1,
sigma=12,
width=100)
I get the following error:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
/Users/mirko/Desktop/symbolic_pulse.ipynb Cell 6 in <cell line: 1>()
----> [1](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=0) GaussianSquare(
[2](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=1) duration=280,
[3](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=2) amp=0.1,
[4](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=3) sigma=12,
[5](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=4) width=100)
/Users/mirko/Desktop/symbolic_pulse.ipynb Cell 6 in GaussianSquare.__init__(self, duration, amp, sigma, width, risefall_sigma_ratio, name, limit_amplitude)
[641](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=640) valid_amp_conditions_expr = sym.Abs(_amp) <= 1.0
[643](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=642) super().__init__(
[644](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=643) pulse_type=self.__class__.__name__,
[645](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=644) duration=duration,
(...)
[651](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=650) valid_amp_conditions=valid_amp_conditions_expr,
[652](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=651) )
--> [653](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=652) self.validate_parameters()
/Users/mirko/Desktop/symbolic_pulse.ipynb Cell 6 in SymbolicPulse.validate_parameters(self)
[441](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=440) if self._constraints is not None:
[442](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=441) fargs = _get_expression_args(self._constraints, self.parameters)
--> [443](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=442) if not bool(self._constraints_lam(*fargs)):
[444](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=443) param_repr = ", ".join(f"{p}={v}" for p, v in self.parameters.items())
[445](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=444) const_repr = str(self._constraints)
/Users/mirko/Desktop/symbolic_pulse.ipynb Cell 6 in LambdifiedExpression.__get__(self, instance, owner)
[145](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=144) key = hash(expr)
[146](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=145) if key not in self.lambda_funcs:
--> [147](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=146) self.__set__(instance, expr)
[149](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=148) return self.lambda_funcs[key]
/Users/mirko/Desktop/symbolic_pulse.ipynb Cell 6 in LambdifiedExpression.__set__(self, instance, value)
[162](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=161) if _optional.HAS_SYMENGINE:
[163](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=162) try:
--> [164](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=163) lamb = sym.lambdify(params, [value], real=False)
[166](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=165) def _wrapped_lamb(*args):
[167](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=166) if isinstance(args[0], np.ndarray):
[168](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=167) # When the args[0] is a vector ("t"), tile other arguments args[1:]
[169](vscode-notebook-cell:/Users/mirko/Desktop/symbolic_pulse.ipynb#ch0000016?line=168) # to prevent evaluation from looping over each element in t.
TypeError: lambdify() got an unexpected keyword argument 'real'
How can we reproduce the issue?
GaussianSquare(
duration=280,
amp=0.1,
sigma=12,
width=100)
What should happen?
A GaussianSquare pulse object should be instantiated
Any suggestions?
No response