Skip to main content

Automated HFSS workflows for quantum circuit design and analysis

Project description

quansys

Automated HFSS workflows for quantum circuit design and analysis

Documentation Python License

quansys is a Python package that automates HFSS electromagnetic simulations for quantum circuit analysis. It provides structured workflows for parameter sweeps, quantum parameter extraction via Energy Participation Ratio (EPR) analysis, and cluster-based execution.

Features

  • Structured Workflows: Automated prepare → build → simulate → aggregate pipeline
  • Parameter Sweeps: Grid and custom parameter sweeps with caching and resumption
  • Quantum Analysis: EPR-based quantum parameter extraction (χ matrix, dressed frequencies)
  • CLI Interface: Command-line tools for simulation management and cluster execution
  • Result Processing: Automatic JSON/CSV output generation for downstream analysis
  • Extensible: Modular design supporting custom simulation types and builders

Documentation

Complete documentation is available at: hutorihunzu.github.io/quansys

Quick Start

Installation

Install from PyPI:

pip install quansys

Or install from source:

git clone https://github.com/hutorihunzu/quansys.git
cd quansys
pip install -e .

Basic Usage

  1. Create a simulation configuration (config.yaml):
pyaedt_file_parameters:
  file_path: "my_design.aedt"
  non_graphical: true

builder:
  type: 'design_variable_builder'
  design_name: "HfssDesign1"

builder_sweep:
  - type: 'DictSweep'
    parameters:
      resonator_length: ["10mm", "12mm", "14mm"]

simulations:
  eigenmode:
    type: 'eigenmode'
    design_name: "HfssDesign1"
    setup_name: "Setup1"
  1. Run the simulation:
quansys run config.yaml
  1. Or use Python directly:
from quansys.workflow import WorkflowConfig, execute_workflow

config = WorkflowConfig.from_yaml("config.yaml")
execute_workflow(config)

Simulation Types

Eigenmode Analysis

Extract resonant frequencies and quality factors from electromagnetic eigenmodes:

from quansys.simulation import EigenmodeAnalysis

simulation = EigenmodeAnalysis(
    design_name="HfssDesign1",
    setup_name="Setup1",
    cores=8
)

Quantum EPR Analysis

Compute quantum circuit parameters using Energy Participation Ratio analysis:

from quansys.simulation import QuantumEPR, ConfigJunction

simulation = QuantumEPR(
    design_name="HfssDesign1",
    setup_name="Setup1",
    modes_to_labels={0: "resonator", 1: "transmon"},
    junctions_infos=[ConfigJunction(line_name='my_jj_line', inductance_variable_name='lj')]
)

Note: Quantum EPR analysis is based on the energy-participation-ratio method from: "Energy-participation quantization of Josephson circuits"

Cluster Support

quansys is designed for high-performance computing environments and is currently optimized for IBM LSF cluster systems. The CLI provides tools for:

  • Job preparation and submission
  • Resource allocation management
  • Distributed execution across cluster nodes
  • Result aggregation from multiple jobs

Cluster Requirement: This package is specifically tailored for IBM LSF clusters. Support for other cluster systems (SLURM, PBS, etc.) may be added in future releases.

Development

Dependencies

  • HFSS/PyAEDT: Electromagnetic simulation engine
  • QutIP: Quantum parameter calculations
  • Typer: CLI interface
  • Pydantic: Configuration validation
  • Pandas/NumPy: Data processing

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes with appropriate tests
  4. Submit a pull request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

quansys-4.0.0.tar.gz (33.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

quansys-4.0.0-py3-none-any.whl (200.8 kB view details)

Uploaded Python 3

File details

Details for the file quansys-4.0.0.tar.gz.

File metadata

  • Download URL: quansys-4.0.0.tar.gz
  • Upload date:
  • Size: 33.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.3

File hashes

Hashes for quansys-4.0.0.tar.gz
Algorithm Hash digest
SHA256 77f212298fa35fc15f7122d1e7f6b36a0abb4755d00b07943d200c573ed8c6c2
MD5 b0c766249ead64b8aab74127815c326e
BLAKE2b-256 eacdac3bec901f041679aa70e55cc455fde64287ceee108618c3baf6942f8a12

See more details on using hashes here.

File details

Details for the file quansys-4.0.0-py3-none-any.whl.

File metadata

  • Download URL: quansys-4.0.0-py3-none-any.whl
  • Upload date:
  • Size: 200.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.3

File hashes

Hashes for quansys-4.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3e029fdf0e93ff5b368c04eabb80ff9904e308312a016232650ad96439acc4bd
MD5 000525734f22608e8f7ff3297c6ed87b
BLAKE2b-256 103aaab1b2e4efb586b125aae139cf859f39d817a6cb6f0de5fd52a2d6071998

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page