mindquantum.core.circuit.as_ansatz

查看源文件
mindquantum.core.circuit.as_ansatz(circuit_fn)[源代码]

将线路转化为ansatz线路的装饰器。

参数:
  • circuit_fn (Union[Circuit, FunctionType, MethodType]) - 量子线路,或可以生成量子线路的函数。

返回:
  • Function, 如果 circuit_fn 是一个返回值为 Circuit 的函数。

  • Circuit,如果 circuit_fn 本身就是 Circuit

样例:

>>> from mindquantum.core.circuit import as_ansatz, Circuit
>>> from mindquantum.core.gates import RX
>>> @as_ansatz
... def create_circuit():
...     circ = Circuit()
...     circ += RX('a').on(0)
...     return circ
>>> circ = create_circuit()
>>> circ.ansatz_params_name
['a']
>>> circ.as_encoder()
>>> circ.ansatz_params_name
[]
>>> circ = as_ansatz(circ)
>>> circ.ansatz_params_name
['a']