DynamicCircuitInstructionDurations
class DynamicCircuitInstructionDurations(instruction_durations=None, dt=None, enable_patching=True)
베이스: InstructionDurations
동적 회로 명령어 실행 시간.
동적 회로의 경우, 현재 IBM 의 Qiskit 백엔드는 기존 Qobj 기반 경로에서 필요한 명령어 실행 시간과 다른 값을 보고합니다. 현재로서는 이 클래스를 사용하여 업데이트된 InstructionDurations 를 보고합니다.
TODO: 동적 회로 백엔드를 위한 전용 백엔드/타겟을 도입하면 이 문제를 완화할 수 있을 것입니다.
속성
매개변수
- instruction_durations (InstructionDurationsType | None)
- dt (float | None)
- enable_patching (bool)
측정_패치_사이클
기본값: 160
측정_패치_홀수_오프셋
기본값: 64
메소드
from_backend
classmethod from_backend(backend)
백엔드에서 객체를 DynamicInstructionDurations 생성합니다.
매개변수
backend (Backend) – 지속 시간(게이트 길이)과 dt가 추출되는 백엔드.
리턴
백엔드에서 구성된 InstructionDurations.
리턴 유형
from_target
classmethod from_target(target)
대상에서 객체를 DynamicInstructionDurations 생성합니다.
매개변수
target (Target) – 지속 시간(게이트 길이)과 dt가 추출되는 대상.
리턴
백엔드에서 구성된 InstructionDurations.
리턴 유형
get
get(inst, qubits, unit='dt', parameters=None)
이름, 큐비트, 매개변수로 인스트럭션의 지속 시간을 가져옵니다.
일부 지침에는 매개변수에 따라 지속 시간이 달라질 수 있습니다.
매개변수
- inst (str | Instruction) – 질의 대상이 되는 명령어 또는 그 이름.
- qubits (int | list[int]) – 명령어가 작동하는 큐비트 인덱스입니다.
- unit (str) – 반환할 기간의 단위입니다. 's' 또는 'dt'여야 합니다.
- parameters (list[float] | None) – 원하는 인스트럭션의 매개변수 값입니다.
리턴
큐비트에 대한 인스트럭션의 지속 시간입니다.
리턴 유형
float|int
레이즈
TranspilerError - 인스트럭션에 대한 기간이 정의되어 있지 않습니다.
units_used
units_used()
이 교육 기간에 사용된 모든 단위의 집합을 가져옵니다.
리턴
이 교육 기간에 사용되는 단위의 집합입니다.
리턴 유형
[setstr]
update
update(inst_durations, dt=None)
self를 inst_durations로 업데이트합니다(inst_durations는 self를 덮어씁니다).
특정 고정된 명령어의 기본 지속 시간을 재정의합니다.
매개변수
- inst_durations (InstructionDurationsType | None) – self에 병합될 명령어 실행 시간(self를 덮어쓰기).
- dt (float | None) – 대상 백엔드의 샘플링 기간(초)입니다.
리턴
업데이트된 InstructionDurations.
레이즈
TranspilerError - 인스트럭션_durations의 형식이 유효하지 않은 경우.
리턴 유형