Skip to content

xleonplayz/QOCTS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QOCTS Banner

Version MIT License Powered by QUSIM


QOCTS - Quantum Optimal Control and Tracking Server

QOCTS is a comprehensive framework for designing, simulating, and executing pulse sequences on NV center quantum systems. It provides a modern web interface for pulse sequence editing, real-time simulation via QUSIM, and future integration with quantum hardware.

Vision

QOCTS aims to be a complete workflow solution for quantum control experiments:

  1. Design - Visual pulse sequence editor with drag-and-drop interface
  2. Simulate - Real-time quantum dynamics via QUSIM backend
  3. Optimize - Optimal control algorithms (GRAPE, CRAB, Krotov) [planned]
  4. Execute - Send sequences to real quantum hardware [planned]
  5. Analyze - Photon counting statistics and data visualization

Features

Current (v0.1.0)

  • Web-based Pulse Editor: Visual timeline for laser/MW/readout pulses
  • Preset Sequences: Ramsey, Hahn Echo, CPMG, XY4, XY8, T1 measurement
  • Time-dependent Simulation: Full Lindblad dynamics with QUSIM
  • Photon Counting: Realistic detection with efficiency, dark counts, dead time
  • Job Queue System: Background processing with history tracking
  • Data Analysis: Range selection, statistics, export capabilities

Planned

  • Optimal control integration (GRAPE, CRAB)
  • Hardware backends (Qudi, custom AWG)
  • Multi-qubit sequences
  • Pulse calibration workflows
  • Cloud deployment

Architecture

QOCTS/
├── server/                 # FastAPI backend
│   ├── models.py           # Pydantic models
│   ├── routes.py           # API endpoints
│   ├── queue.py            # Job queue management
│   └── worker.py           # Simulation worker (QUSIM integration)
├── web/                    # Next.js frontend
│   ├── src/
│   │   ├── app/            # Pages
│   │   ├── components/     # React components
│   │   │   ├── pulse-sequence-editor.tsx
│   │   │   ├── results-display.tsx
│   │   │   ├── job-history.tsx
│   │   │   └── system-settings.tsx
│   │   └── lib/            # API client
│   └── package.json
├── qocts_sim/              # QUSIM adapter
│   ├── interfaces/         # Simulator interface
│   └── adapters/           # Backend adapters
└── docs/                   # Documentation

Quick Start

Prerequisites

  • Python 3.9+
  • Node.js 18+
  • QUSIM (for simulation backend)

Installation

# Clone repository
git clone https://github.com/xleonplayz/QOCTS.git
cd QOCTS

# Install server dependencies
pip install -e .

# Install frontend dependencies
cd web
npm install

Running

# Terminal 1: Start backend server
cd QOCTS/server
python -m server

# Terminal 2: Start frontend
cd QOCTS/web
npm run dev

Open http://localhost:3000 in your browser.

API Overview

Endpoint Method Description
/status GET Server status and queue info
/jobs POST Create new simulation job
/jobs/{id} GET Get job status
/jobs/{id}/result GET Get job result
/history GET List job history
/history/export GET Export history (JSON/CSV)

Pulse Sequence Format

{
    "laser_pulses": [
        {"start": 0, "duration": 300e-9, "power": 1.0}
    ],
    "mw_pulses": [
        {"start": 400e-9, "duration": 25e-9, "omega": 10, "phase": 0, "detuning": 0}
    ],
    "readout_start": 500e-9,
    "readout_duration": 300e-9
}

Integration with QUSIM

QOCTS uses QUSIM as its simulation backend. The qocts_sim module provides an adapter that:

  • Translates pulse sequences to QUSIM Hamiltonians
  • Creates time-dependent envelopes for MW and laser pulses
  • Handles photon counting with realistic noise models
  • Manages the Lindblad master equation solver
from qocts_sim import create_simulator

sim = create_simulator()
H = sim.create_hamiltonian()
H.add_term(sim.zfs_term(D=2.87))
H.add_term(sim.mw_drive_term(omega=envelope_function))
# ... execute simulation

Contributing

Contributions are welcome! Please feel free to submit issues and pull requests.

Related Projects

  • QUSIM - Quantum Simulator for NV Centers

Developed at Modular Supercomputing and Quantum Computing (MSQC)
Faculty 12, Computer Science and Mathematics
Goethe University Frankfurt, Campus Bockenheim

Author: Leon Kaiser
l.kaiser@em.uni-frankfurt.de


Licensed under the MIT License - free to use, modify, and distribute with attribution.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors