FermionicPassManager
class FermionicPassManager(tasks=(), max_iteration=1000)
베이스: BasePassManager[DAGCircuit]
하나를 다른 FermionicCircuit 것으로 변환하는 트랜스파일러 패스 관리자.
이 패스 매니저의 내부 표현(IR)은 이지만 FermionicDAGCircuit, 입력 및 출력 유형은 입니다 FermionicCircuit.
빈 패스 관리자 객체를 초기화합니다.
매개변수
- tasks (Task[IR, IR] | list[Task[IR, IR]]) – 패스 매니저 일정에 추가될 예정인 패스입니다.
- max_iteration (int) – 조건이 충족되지 않을 경우 일정이 반복되는 최대 반복 횟수입니다.
상속된 메소드
append
append(tasks)
통과 일정에 작업을 추가합니다.
매개변수
tasks (Task[IR, IR] | list[Task[IR, IR]]) – 일정에 추가할 일련의 패스 관리자 작업들.
인상
TypeError – 작업의 어떤 요소라도 passmanager Task의 하위 클래스가 아닐 때.
리턴 유형
없음
remove
remove(index)
스케줄러에서 특정 패스를 제거합니다.
매개변수
index (int) –. 내의 위치를 기준으로 제거할 인덱스를 전달합니다 passes().
인상
PassManagerError – 인덱스를 찾을 수 없는 경우.
리턴 유형
없음
replace
replace(index, tasks)
스케줄러에서 특정 패스를 교체합니다.
매개변수
- index (int) – 다음의 위치에 따라 대체할 작업 색인:
tasks() - tasks (Task[IR, IR] | list[Task[IR, IR]]) – 일정에 추가할 일련의 패스 관리자 작업들.
인상
- TypeError – 작업의 어떤 요소라도 passmanager Task의 하위 클래스가 아닐 때.
- PassManagerError – 인덱스를 찾을 수 없는 경우.
리턴 유형
없음
run
run(in_programs, callback=None, num_processes=None, *, property_set=None, **kwargs)
지정된 파일에서 모든 패스를 실행합니다 in_programs.
매개변수
-
in_programs (Any |list[Any]) – 등록된 모든 패스를 거쳐 변환할 입력 프로그램을 입력하십시오. 단일 입력 객체는
Python내장 리스트 객체일 수 없습니다. 목록 객체는 최적화 대상인 여러 입력 객체로 간주됩니다. -
callback (Callable[[Task, IR, PropertySet, float, int], None] | None) –
각 패스 실행 후 호출될 콜백 함수. 이 함수는 5개의 키워드 인수를 받아 호출됩니다:
task (GenericPass): the pass being run passmanager_ir (Any): depending on pass manager subclass property_set (PropertySet): the property set running_time (float): the time to execute the pass count (int): the index for the pass execution전달된 정확한 인수는 패스 관리자의 내부 구조를 드러내며, 패스 관리자의 내부 구조가 변경됨에 따라 변경될 수 있습니다. 여러 버전에 걸쳐 콜백 함수를 재사용하려는 경우, 전달되는 인수가 동일한지 반드시 확인해야 합니다.
콜백 기능을 사용하려면 kwargs 딕셔너리를 인수로 받아 변수에 접근할 수 있는 함수를 정의하면 됩니다. 예를 들어,
def callback_func(**kwargs): task = kwargs['task'] passmanager_ir = kwargs['passmanager_ir'] property_set = kwargs['property_set'] running_time = kwargs['running_time'] count = kwargs['count'] ... -
num_processes (int | None) – 병렬 실행이 활성화된 경우 시작할 병렬 프로세스의 최대 개수입니다. 이 설정은 사용자 설정 파일과 환경
QISKIT_NUM_PROCS변수의num_processes설정을 재정의합니다. 이 옵션이 설정된 경우 시스템None기본값 또는 로컬 사용자 설정이 사용됩니다. -
property_set (dict[str, object] | None) – 지정된 경우, 패스 매니저 파이프라인의
PropertySet초기값으로 사용할 값입니다. 분석 결과를 안전하게 공유할 수 있다고 판단되는 경우, 이를 통해 한 실행에서 다음 실행으로 분석 결과를 유지할 수 있습니다. 일부 분석은 입력 회로와 특정 조건에 따라 달라질 수 있으므로Target, 이 논증을 사용할 때는 각별히 주의해야 합니다. -
kwargs – 컴파일러 프론트엔드 및 백엔드에 전달되는 임의의 인자.
리턴
변환된 프로그램(들).
리턴 유형
to_flow_controller
to_flow_controller()
이 매니저를 단일 매니저로 선형화하여 FlowControllerLinear, 다른 패스 매니저 내에 중첩될 수 있도록 하십시오.
리턴
선형화된 패스 관리자.
리턴 유형
FlowControllerLinear [IR, IR]