Skip to main content
Ctrl+K

qlinks

  • GitHub
  • qlinks

User guide

  • Overview
  • Installation
  • Typical workflow
  • Thermodynamic ETH diagnostics
  • Tensor-network cage ansatzes
  • Minimal examples
  • Current development status
  • Repository refactor status
  • Architecture diagnostics

API reference

  • qlinks package
    • qlinks.backends package
    • qlinks.basis package
      • qlinks.basis.solvers package
    • qlinks.builders package
    • qlinks.caging package
    • qlinks.constraints package
    • qlinks.conventions package
    • qlinks.encoded package
    • qlinks.exceptions package
    • qlinks.io package
    • qlinks.lattice package
    • qlinks.local_structure package
    • qlinks.models package
    • qlinks.open_system package
    • qlinks.operators package
    • qlinks.variables package
    • qlinks.visualizer package

Project

  • Contributing
  • Repository
  • Suggest edit
  • Open issue

qlinks package

Contents

  • Subpackages
  • Submodules
    • qlinks.distributed module
      • DistributedConfig
        • DistributedConfig.backend
        • DistributedConfig.preserve_order
        • DistributedConfig.show_progress
        • DistributedConfig.progress_description
        • DistributedConfig.failure_mode
        • DistributedConfig.ray_init_kwargs
        • DistributedConfig.ray_shutdown
        • DistributedConfig.num_cpus_per_task
        • DistributedConfig.num_gpus_per_task
        • DistributedConfig.__init__()
      • TaskFailure
        • TaskFailure.task_index
        • TaskFailure.task_input
        • TaskFailure.exception_type
        • TaskFailure.message
        • TaskFailure.__init__()
      • map_tasks()
      • map_tasks_serial()
      • map_tasks_ray()
      • ray_task_wrapper()
      • map_on_ray()
  • Module contents

qlinks package#

The top-level package exposes package metadata and logging helpers. Most public APIs live in the subpackages listed below.

Subpackages#

  • qlinks.backends package
    • Submodules
    • qlinks.backends.sparse module
    • Module contents
  • qlinks.basis package
    • Subpackages
    • Submodules
    • Module contents
  • qlinks.builders package
    • Submodules
    • qlinks.builders.optimized_sparse module
    • qlinks.builders.sparse module
    • Module contents
  • qlinks.caging package
    • Submodules
    • Module contents
  • qlinks.constraints package
    • Submodules
    • qlinks.constraints.base module
    • qlinks.constraints.blockade module
    • qlinks.constraints.collection module
    • qlinks.constraints.dimer module
    • qlinks.constraints.gauss_law module
    • qlinks.constraints.local module
    • qlinks.constraints.sectors module
    • qlinks.constraints.winding module
    • qlinks.constraints.z2_winding module
    • Module contents
  • qlinks.conventions package
    • Submodules
    • qlinks.conventions.qlm module
    • Module contents
  • qlinks.encoded package
    • Submodules
    • qlinks.encoded.binary_basis module
    • qlinks.encoded.bitmask_builder module
    • qlinks.encoded.bitmask_operators module
    • qlinks.encoded.flux module
    • Module contents
  • qlinks.exceptions package
    • Module contents
  • qlinks.io package
    • Submodules
    • Module contents
  • qlinks.lattice package
    • Submodules
    • qlinks.lattice.chain module
    • qlinks.lattice.graph module
    • qlinks.lattice.honeycomb module
    • qlinks.lattice.square module
    • qlinks.lattice.triangular module
    • qlinks.lattice.types module
    • Module contents
  • qlinks.local_structure package
    • Submodules
    • Module contents
  • qlinks.models package
    • Submodules
    • Module contents
  • qlinks.open_system package
    • Submodules
    • Module contents
  • qlinks.operators package
    • Submodules
    • Module contents
  • qlinks.variables package
    • Submodules
    • qlinks.variables.config module
    • qlinks.variables.encoding module
    • qlinks.variables.layout module
    • qlinks.variables.local_space module
    • Module contents
  • qlinks.visualizer package
    • Submodules
    • Module contents

Submodules#

qlinks.distributed module#

Generic distributed task execution utilities.

This module intentionally does not depend on model, eigensolver, or caging objects. It provides a small map-style abstraction that can be reused by caging searches, parameter sweeps, and future workflows.

class qlinks.distributed.DistributedConfig(backend='serial', preserve_order=True, show_progress=True, progress_description='Completed jobs', failure_mode='raise', ray_init_kwargs=None, ray_shutdown=False, num_cpus_per_task=None, num_gpus_per_task=None)[source]#

Bases: object

Configuration for generic distributed task execution.

backend: Literal['serial', 'ray']#
preserve_order: bool#
show_progress: bool#
progress_description: str#
failure_mode: Literal['raise', 'return']#
ray_init_kwargs: dict | None#
ray_shutdown: bool#
num_cpus_per_task: float | None#
num_gpus_per_task: float | None#
__init__(backend='serial', preserve_order=True, show_progress=True, progress_description='Completed jobs', failure_mode='raise', ray_init_kwargs=None, ray_shutdown=False, num_cpus_per_task=None, num_gpus_per_task=None)#
class qlinks.distributed.TaskFailure(task_index, task_input, exception_type, message)[source]#

Bases: object

Container returned when a task fails and failure_mode=’return’.

task_index: int#
task_input: object#
exception_type: str#
message: str#
__init__(task_index, task_input, exception_type, message)#
qlinks.distributed.map_tasks(function, inputs, *, config=None)[source]#

Map a function over inputs using the configured execution backend.

qlinks.distributed.map_tasks_serial(function, inputs, *, preserve_order=True, show_progress=True, progress_description='Completed jobs', failure_mode='raise')[source]#

Map tasks serially.

preserve_order is accepted for API compatibility. Serial execution naturally preserves input order.

qlinks.distributed.map_tasks_ray(function, inputs, *, preserve_order=True, show_progress=True, progress_description='Completed jobs', failure_mode='raise', ray_init_kwargs=None, ray_shutdown=False, num_cpus_per_task=None, num_gpus_per_task=None)[source]#

Map tasks with Ray.

qlinks.distributed.ray_task_wrapper(task_index, task_input, function, failure_mode)[source]#

Run one task and return its index together with the result.

qlinks.distributed.map_on_ray(func, params)[source]#

Backward-compatible Ray map.

Results preserve the historical behavior and are returned in completion order, not input order.

Module contents#

previous

Architecture diagnostics

next

qlinks.backends package

Contents
  • Subpackages
  • Submodules
    • qlinks.distributed module
      • DistributedConfig
        • DistributedConfig.backend
        • DistributedConfig.preserve_order
        • DistributedConfig.show_progress
        • DistributedConfig.progress_description
        • DistributedConfig.failure_mode
        • DistributedConfig.ray_init_kwargs
        • DistributedConfig.ray_shutdown
        • DistributedConfig.num_cpus_per_task
        • DistributedConfig.num_gpus_per_task
        • DistributedConfig.__init__()
      • TaskFailure
        • TaskFailure.task_index
        • TaskFailure.task_input
        • TaskFailure.exception_type
        • TaskFailure.message
        • TaskFailure.__init__()
      • map_tasks()
      • map_tasks_serial()
      • map_tasks_ray()
      • ray_task_wrapper()
      • map_on_ray()
  • Module contents

By Tan Tao-Lin

© Copyright 2023, Tan Tao-Lin.