유틸리티
qiskit_addon_slc.utils
다양한 유틸리티.
이 모듈은 여러 가지 유틸리티 함수를 제공합니다. 이 중 일부는 Qiskit SDK 의 미해결 문제를 우회하기 위해 일시적으로만 존재합니다. 이러한 경우, 해당 항목은 해당 사항으로 표시되며, 사용 중단 안내나 별도의 공지 없이 제거될 수 있습니다.
find_indices
find_indices(circuit, bits_or_instruction, /)
주어진 비트 인덱스 또는 회로 명령어의 큐비트 인덱스를 찾아보세요.
이 함수는 안정된 API의 일부로 간주되지 않습니다! Qiskit SDK 에서 동일한 기능이 기본적으로 지원되게 되면, 별도의 경고나 사용 중단 예고 없이 해당 기능이 제거될 것입니다. 자세한 내용은 이번 호를 참조하십시오.
매개변수
- circuit (QuantumCircuit) – 찾아야 할 큐비트 인덱스를 가진 양자 회로.
- bits_or_instruction (Bit |CircuitInstruction |Sequence[Bit]) – 찾을 인덱스가 지정된 비트들. 이것이 인 경우
CircuitInstruction, 이 명령어가 작용하는 큐비트가 사용됩니다.
리턴
회로 레지스터 내에서 쿼리된 비트의 인덱스. 단일 비트 객체가 전달된 경우, 해당 인덱스에 해당하는 단일 값이 반환됩니다 int . 그렇지 않으면 반환 유형은 제공된 비트 수와 길이가 list[int] 동일한 가 됩니다.
인상
TypeError – 예상치 못한 유형의 가 제공될 bits_or_instruction 때.
리턴 유형
generate_noise_model_paulis
generate_noise_model_paulis(instructions, coupling_map=None, circuit=None)
주어진 고유한 2q 레이어 박스 각각에 대해 1-가중치 및 2-가중치 파울리 항을 생성하십시오.
매개변수
- instructions (list[CircuitInstruction]) –.의 출력
find_unique_box_instructions(). 제공된 명령어 중 어느 것이든, 측정 게이트만으로 구성되거나 2-큐비트 게이트 명령어 레이어에 해당한다고 가정합니다. 전자의 경우, 생성된 노이즈 모델에는 단일 큐비트X오류만 포함되며, 후자의 경우 축소된 결합 맵상의 모든 1-가중 및 2-가중 파울리 오류가 포함됩니다. - coupling_map (CouplingMap | None) – 명령어가 배치된 백엔드의 커플링 맵. 이 경우
None, 1d 에 따라 큐비트 배열이 가정됩니다. - circuit (QuantumCircuit | None) – 제공된 커플링 맵에 배치된 트랜스파일된 회로. 이는 오직 일
coupling_mapNone때만 성립할 수 있습니다None.
리턴
각 고유한 Box의 InjectNoise 어노테이션 ref 속성을, 해당 Box에 대해 오차가 학습된 1-가중치 및 2-가중치 파울리 항에 매핑하는 사전입니다.
리턴 유형
dict [ str, QubitSparsePauliList ]
get_extremal_eigenvalue
get_extremal_eigenvalue(spo, **kwargs)
주어진 연산자의 극값 고유값을 구합니다.
이 함수는 주어진 연산자를 최소 고유값이 필요한 희소 행렬로 변환합니다.
현재 구현 방식은 성능 면에서 확실히 최적화되어 있지 않습니다.
매개변수
-
spo (SparsePauliOp) – 찾아야 할 최소 고유값을 갖는 연산자.
-
kwargs –
.에 대한 추가 키워드 인자
davidson1(). 별도로 명시되지 않은 경우, 다음의 기본값이 적용됩니다:- tol: 1e-6
- max_cycle: 500
- max_space: 12
- lindep: 1e-11
- max_memory: 2000
그 외의 값은 PySCF’s 의 기본값으로 설정됩니다.
리턴
데이비슨 알고리즘이 수렴했는지 여부와 구해진 최소 고유값을 나타내는 2원조.
리턴 유형
iter_circuit
iter_circuit(circuit, *, reverse=False, log_process=True)
회로 내의 명령어를 순차적으로 처리합니다.
이 함수는 BoxOp 명령어들을 재귀적으로 처리합니다.
회로 내의 장애물은 무시되고 있습니다.
매개변수
- circuit (QuantumCircuit) – 반복 처리할 회로.
- reverse (bool) – 회로를 역순으로 반복할지 여부.
- log_process (bool) – 프로세스를 기록할지 여부.
산출량
길이가 4인 튜플로, 발견된 회로 명령어, 표준 큐비트 인덱스 (즉, 입력의 맥락에서 연산이 적용된 큐비트의 정수 인덱스 circuit), 그리고 속성 InjectNoise : modifier_ref 및 로 구성된다 ref. 마지막 두 항목은 언롤링된 코드의 일부가 아니었던 회로 명령을 None 나타내는 것일 수 있습니다 BoxOp.
리턴 유형
Generator [ tuple [ CircuitInstruction, list [ int ], str | None, str | None]]
map_modifier_ref_to_ref
map_modifier_ref_to_ref(circuit)
회로를 반복 처리하고 주석 InjectNoise 참조를 매핑합니다.
매개변수
circuit (QuantumCircuit) – 반복 처리할 회로.
리턴
각 을 그에 해당하는 InjectNoise.modifier_ref 으로 대응시키는 사전 InjectNoise.ref.
리턴 유형
remove_measure
remove_measure(circuit)
주어진 회로에서 모든 Measure 연산 항을 제거하십시오.
이 함수는 BoxOp 명령어들을 재귀적으로 처리합니다.
매개변수
circuit (QuantumCircuit) – 측정값을 제거할 회로.
리턴
Measure 연산이 전혀 포함되지 않은 회로.
리턴 유형