Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 11 additions & 16 deletions src/openfermion/hamiltonians/plane_wave_hamiltonian.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,6 @@
# limitations under the License.
"""Construct Hamiltonians in plan wave basis and its dual in 3D."""

from typing import List, Tuple, Optional, Union

import numpy as np

from openfermion.hamiltonians.jellium import jellium_model, jordan_wigner_dual_basis_jellium
Expand All @@ -26,10 +24,10 @@

def dual_basis_external_potential(
grid: Grid,
geometry: List[Tuple[str, Tuple[Union[int, float], Union[int, float], Union[int, float]]]],
geometry: list[tuple[str, tuple[int | float, int | float, int | float]]],
spinless: bool,
non_periodic: bool = False,
period_cutoff: Optional[float] = None,
period_cutoff: float | None = None,
) -> FermionOperator:
"""Return the external potential in the dual basis of arXiv:1706.00023.

Expand All @@ -55,7 +53,8 @@ def dual_basis_external_potential(
"""
if non_periodic and period_cutoff is None:
period_cutoff = grid.volume_scale() ** (1.0 / grid.dimensions)
operator = None
operator: FermionOperator | None = None
spins: list[int | None]
if spinless:
spins = [None]
else:
Expand Down Expand Up @@ -115,11 +114,11 @@ def filter_plane_wave_operator(

def plane_wave_external_potential(
grid: Grid,
geometry: List[Tuple[str, Tuple[Union[int, float], Union[int, float], Union[int, float]]]],
geometry: list[tuple[str, tuple[int | float, int | float, int | float]]],
spinless: bool,
e_cutoff: Optional[float] = None,
e_cutoff: float | None = None,
non_periodic: bool = False,
period_cutoff: Optional[float] = None,
period_cutoff: float | None = None,
) -> FermionOperator:
"""Return the external potential operator in plane wave basis.

Expand Down Expand Up @@ -156,15 +155,13 @@ def plane_wave_external_potential(

def plane_wave_hamiltonian(
grid: Grid,
geometry: Optional[
List[Tuple[str, Tuple[Union[int, float], Union[int, float], Union[int, float]]]]
] = None,
geometry: list[tuple[str, tuple[int | float, int | float, int | float]]] | None = None,
spinless: bool = False,
plane_wave: bool = True,
include_constant: bool = False,
e_cutoff: Optional[float] = None,
e_cutoff: float | None = None,
non_periodic: bool = False,
period_cutoff: Optional[float] = None,
period_cutoff: float | None = None,
) -> FermionOperator:
"""Returns Hamiltonian as FermionOperator class.

Expand Down Expand Up @@ -215,9 +212,7 @@ def plane_wave_hamiltonian(

def jordan_wigner_dual_basis_hamiltonian(
grid: Grid,
geometry: Optional[
List[Tuple[str, Tuple[Union[int, float], Union[int, float], Union[int, float]]]]
] = None,
geometry: list[tuple[str, tuple[int | float, int | float, int | float]]] | None = None,
spinless: bool = False,
include_constant: bool = False,
) -> QubitOperator:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
class MagicStateFactory:
details: str
physical_qubit_footprint: int
rounds: int
failure_rate: int
rounds: float
failure_rate: float


@dataclasses.dataclass(frozen=True, unsafe_hash=True)
Expand Down
Loading