Skip to content
Pasqal Documentation

Results are limited to the current section : Qoolqit

qoolqit.embedding.algorithms

package
qoolqit.embedding.algorithms

Classes

Functions

Modules

dataclass
BladeConfig (max_min_dist_ratio: float | None = None, dimensions: tuple[int, ...] = (5, 4, 3, 2, 2, 2), starting_positions: np.ndarray | None = None, pca: bool = False, steps_per_round: int = 200, compute_weight_relative_threshold: Callable[[float], float] = lambda _: 0.1, compute_max_distance_to_walk: Callable[[float, float | None], float | tuple[float, float, float]] = lambda x, max_radial_dist: np.inf, starting_ratio_factor: int = 2, draw_steps: bool | list[int] = False, device: InitVar[Device | None] = None)

Bases : EmbeddingConfig

Configuration parameters to embed with BLaDE.

module
blade

dataclass
InteractionEmbeddingConfig (method: str = 'Nelder-Mead', maxiter: int = 200000, tol: float = 1e-08)

Bases : EmbeddingConfig

Configuration parameters for the interaction embedding.

interaction_embedding (matrix: np.ndarray, method: str, maxiter: int, tol: float) → np.ndarray

Matrix embedding into the interaction term of the Rydberg Analog Model.

Uses scipy.minimize to find the optimal set of node coordinates such that the matrix of values 1/(r_ij)^6 approximate the off-diagonal terms of the input matrix.

Check the documentation for scipy.minimize for more information about each parameter

Parameters

  • matrix : np.ndarray the matrix to embed.

  • method : str the method used by scipy.minimize.

  • maxiter : int maximum number of iterations.

  • tol : float tolerance for termination.

dataclass
SpringLayoutConfig (k: float | None = None, iterations: int = 50, threshold: float = 0.0001, seed: int | None = None)

Bases : EmbeddingConfig

Configuration parameters for the spring-layout embedding.

spring_layout_embedding (graph: DataGraph, k: float | None, iterations: int, threshold: float, seed: int | None) → DataGraph

Force-directed embedding, wrapping nx.spring_layout.

Generates a graph with the same nodes and edges as the original graph, but with node coordinates set to be the positions given by nx.spring_layout.

Check the documentation for nx.spring_layout for more information about each parameter

Parameters

  • graph : DataGraph the graph to embed.

  • k : float | None optimal distance between nodes.

  • iterations : int maximum number of iterations to take.

  • threshold : float threshold value for relative error in node position changes.

  • seed : int | None random seed.