quchip.devices.spaces

Backend-neutral local Hilbert spaces and their named operators.

Classes

ChargeSpace(num_basis)

Finite integer-charge basis centered on zero charge.

CustomSpace(dimension, operators)

Named local operators supplied as matrices or zero-argument JAX callables.

FockSpace(levels)

Finite Fock ladder with the standard bosonic and qubit operators.

LocalSpace()

Numerical realization of the operators used by one device model.

PhaseGridSpace(points, extent)

Uniform endpoint-excluded phase grid with nonperiodic finite differences.

class quchip.devices.spaces.LocalSpace[source]

Bases: ABC

Numerical realization of the operators used by one device model.

abstract property dimension: int

Return the authored local-space dimension.

abstractmethod matrix(name)[source]

Return one named operator as a JAX-compatible dense array.

Parameters:

name (str)

Return type:

Any

operator(name, backend)[source]

Lower one named local operator through backend.

Parameters:
Return type:

Any

class quchip.devices.spaces.FockSpace(levels)[source]

Bases: LocalSpace

Finite Fock ladder with the standard bosonic and qubit operators.

Parameters:

levels (int)

levels: int
property dimension: int

Return the authored local-space dimension.

matrix(name)[source]

Return one named operator as a JAX-compatible dense array.

Parameters:

name (str)

Return type:

Any

operator(name, backend)[source]

Lower one named local operator through backend.

Parameters:
Return type:

Any

class quchip.devices.spaces.ChargeSpace(num_basis)[source]

Bases: LocalSpace

Finite integer-charge basis centered on zero charge.

Parameters:

num_basis (int)

num_basis: int
property dimension: int

Return the authored local-space dimension.

matrix(name)[source]

Return one named operator as a JAX-compatible dense array.

Parameters:

name (str)

Return type:

Any

class quchip.devices.spaces.PhaseGridSpace(points, extent)[source]

Bases: LocalSpace

Uniform endpoint-excluded phase grid with nonperiodic finite differences.

The centered-difference stencil does not wrap across the grid boundary; values beyond either endpoint are treated as zero.

Parameters:
points: int
extent: float
property dimension: int

Return the authored local-space dimension.

matrix(name)[source]

Return one named operator as a JAX-compatible dense array.

Parameters:

name (str)

Return type:

Any

class quchip.devices.spaces.CustomSpace(dimension, operators)[source]

Bases: LocalSpace

Named local operators supplied as matrices or zero-argument JAX callables.

Parameters:
  • dimension (int)

  • operators (Mapping[str, Any])

property dimension: int

Return the authored local-space dimension.

matrix(name)[source]

Return one named operator as a JAX-compatible dense array.

Parameters:

name (str)

Return type:

Any