Skip to main content
IBM Quantum Platform

MPOState

class MPOState(*args, **kwargs)

GitHub

Bases: MatrixProductOperator, State

비달 게이지를 시행하는 MPO.

킴의 이러한 전문화는 quimb.tensor.MatrixProductOperator 은 비달 게이지가 존재하는 내내 적용됩니다. 이렇게 하면 알고리즘의 안정적인 동작을 보장합니다 DynamicMPF 알고리즘의 안정적인 동작을 보장합니다 TEBDEvolver.

인스턴스를 초기화합니다 MPOState 인스턴스를 초기화합니다.

힌트

모든 인자(위치 및 키워드)는 간단하게 quimb.tensor.MatrixProductOperator 생성자로 전달됩니다. 또한 vidal_singular_values 속성은 이 MPO의 사이트 수와 동일한 길이의 빈 목록 목록으로 초기화됩니다.

매개변수


속성

vidal_singular_values

유형: list[list[float]]

단수 값의 중첩된 목록입니다. 외부 목록은 이 MPO 자체와 동일한 길이(quimb.tensor.TensorNetwork1D.L). 모든 항목은 해당 사이트의 비달 게이지를 결정하기 위한 모든 단수 값의 또 다른 목록입니다.


메소드

gate_split

gate_split(gate, where, inplace=False, conj=False, **split_opts)

GitHub

두 개의 사이트 게이트를 적용하고 MPO에 다시 계약합니다.

이 방법의 기본 원리는 quimb.tensor.MatrixProductState.gate_split(). 그러나 이 구현은 비달 게이지가 보존되도록 합니다.

매개변수

  • gate (ndarray) – mPO에 적용될 게이트입니다. 물리적 치수가 d 인 경우 (d**2, d**2) 또는 그 모양을 변형한 버전이어야 합니다.

  • where (tuple[int, int]) – 게이트가 적용되어야 하는 사이트의 인덱스입니다.

  • inplace (bool) – 게이트 적용을 제자리에서 수행할지 아니면 게이트가 적용된 새 MPOState 를 반환할지 여부를 결정합니다.

  • conj (bool) –

    게이트를 하위(conj=False, 기본값, lower_ind()) 또는 상위(conj=True, upper_ind()) 인덱스에 적용할지 여부를 결정합니다.

    참고

    이것은 본질적으로 LHS와 RHS가 DynamicMPF 의 LHS와 RHS는 이 인자에 Evolver.conjugate 속성을 이 인수에 전달합니다.

  • split_opts - 함수에 전달할 추가 키워드 인자로 quimb.tensor.tensor_split() 함수에 전달할 추가 키워드 인수입니다. 이는 텐서가 MPO로 다시 계약되기 전에 텐서의 절단에 영향을 미치는 데 사용할 수 있습니다.

리턴

The MPOStategate 을 적용하고 계약했습니다.

리턴 유형

MPOState

gate_split_

gate_split_(gate, where, *, inplace=True, conj=False, **split_opts)

매개변수

리턴 유형

MPOState

overlap

overlap(initial_state)

GitHub

이 상태와 제공된 초기 상태의 중첩을 계산합니다.

경고

이 구현은 다음과 같은 인스턴스만 지원합니다 quimb.tensor.MatrixProductStateinitial_state 의 인스턴스만 지원합니다.

매개변수

initial_state (Any) – 중첩을 계산할 초기 상태입니다.

레이즈

TypeError - 제공된 초기 상태가 호환되지 않는 유형인 경우.

리턴

이 상태와 제공된 상태가 겹칩니다.

리턴 유형

복합체

이 페이지가 도움이 되었습니까?
GitHub에서 버그, 오타를 보고하거나 컨텐츠를 요청하십시오.