Skip to main content

analysis-scripts

Write and run Python scripts to analyze quantum experiment data stored in HDF5 files. Use when the user asks to analyze experiment results, fit peaks or curves, extract features from measurement arrays, or when reusable analysis logic should be saved alongside an experiment for future reuse.

Source facts

Repository
NVIDIA/Quantum-Calibration-Agent-Blueprint
Last source activity
April 20, 2026 at 05:20
Detected SKILL.md language
English
Stars
73
Forks
27

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
analysis-scripts
description
Write and run Python scripts to analyze quantum experiment data stored in HDF5 files. Use when the user asks to analyze experiment results, fit peaks or curves, extract features from measurement arrays, or when reusable analysis logic should be saved alongside an experiment for future reuse.
# Analysis Scripts Write Python scripts to analyze experiment data. Scripts are saved alongside the experiment for reuse. ## Storage Location Scripts go in a subfolder next to the experiment's HDF5 file: ``` data/experiments/ ├── YYYYMMDD_HHMMSS_type.h5 # Experiment data └── YYYYMMDD_HHMMSS_type_scripts/ # Scripts for this experiment └── analysis_name.py ``` To find the scripts folder: 1. Get experiment: `lab(action="history_show", experiment_id="...")` 2. Response includes `file_path` (e.g., `.../20240315_143022_qubit_spectroscopy.h5`) 3. Scripts folder: replace `.h5` with `_scripts/` ## Script Template ```python #!/usr/bin/env python """Description of what this script does.""" import sys import json from pathlib import Path # Import core storage from core import storage DATA_DIR = Path(__file__).parent.parent.parent # data/experiments/ # Get experiment ID from command line experiment_id = sys.argv[1] # Load experiment data exp = storage.load_experiment(experiment_id, DATA_DIR) if exp is None: print(json.dumps({"error": f"Experiment {experiment_id} not found"})) sys.exit(1) data = exp.to_dict() # ============================================================================= # Your analysis code here # ============================================================================= import numpy as np # Available data: # data['params'] - input parameters dict # data['results'] - scalar results dict # data['arrays'] - numerical arrays dict (e.g., frequencies, amplitudes) # data['plots'] - plot data list # Example: # frequencies = np.array(data['arrays']['frequencies']) # amplitudes = np.array(data['arrays']['amplitudes']) result = { "status": "success", # your results here } print(json.dumps(result)) ``` ## Running a Script ```bash python /path/to/script.py <experiment_id> ``` Example: ```bash python data/experiments/20240315_143022_qubit_spectroscopy_scripts/fit_peak.py 20240315_143022_qubit_spectroscopy ``` ## Workflow 1. User asks to analyze an experiment 2. Get experiment info: `lab(action="history_show", experiment_id="...")` 3. Check for existing scripts: `ls {file_path.replace('.h5', '_scripts/')}` 4. If script exists: run it 5. If not: write new script using template, then run it ## Finding Scripts from Similar Experiments ```bash # Find experiments of same type lab(action="history_list", filter_type="qubit_spectroscopy") # Check each for scripts ls data/experiments/20240315_143022_qubit_spectroscopy_scripts/ # Read a script to copy/adapt cat data/experiments/.../fit_peak.py ```
View on GitHub