Skip to content

NIkhilgKrish/QHardwareSim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QHardwareSimulator

Electromagnetic finite-element simulation of superconducting quantum hardware using Palace — the open-source EM solver developed AWS for quantum device design.

This project simulates a coplanar waveguide (CPW) quarter-wave resonator on a silicon substrate and extracts its resonant frequency, comparing Palace eigenmode results to the analytic transmission-line formula. A transmon qubit capacitor pad simulation is in progress (Phase 2).

Companion project: CavityVQE — VQE solution of the Jaynes-Cummings model that describes the same cavity-qubit system this resonator physically realises.


Physics

A CPW quarter-wave resonator shorted to ground at one end (PEC) and open at the other (PMC) supports standing-wave resonances at odd multiples of the fundamental:

$$f_n = (2n-1),\frac{c}{4L\sqrt{\varepsilon_\text{eff}}}, \quad n = 1, 2, 3, \ldots$$

The effective permittivity $\varepsilon_\text{eff} \approx (\varepsilon_r + 1)/2 \approx 6.34$ for silicon ($\varepsilon_r = 11.68$), since the CPW fields are split between the substrate below and air above. The exact value from conformal mapping is given in Goppl et al. (2008).

CPW cross-section (looking along the resonator length):

 ─────────┬──────┬──────────────────┬──────┬─────────
  GND     │ gap  │  CENTER STRIP    │ gap  │  GND
  (PEC)   │      │    (PEC)         │      │  (PEC)
 ─────────┴──────┴──────────────────┴──────┴─────────
              SILICON SUBSTRATE  (εᵣ = 11.68)

Geometry

Parameter Value Notes
Resonator length L 3.0 mm Quarter-wave at ~9.8 GHz
Center strip width w 10 μm 50 Ω impedance on silicon
Gap s 6 μm w/(w+2s) = 0.455 → Z₀ ≈ 50 Ω
Ground plane width 50 μm Each side
Substrate thickness 500 μm Standard silicon wafer
Air domain above 300 μm ≈ 30× strip width; fields decay before PEC wall

Simulation Results

Palace eigenmode simulation (order-2 Nédélec elements, 55,034 unknowns, SLEPc/GMRES):

Mode f (GHz) Harmonic E_elec / E_mag
1 28.568 3×f₀ 1.000000000
2 47.732 5×f₀ 1.000000000

Inferred fundamental:

$$f_0 = \frac{28.568}{3} = 9.523 \text{ GHz} \quad \left(\frac{47.732}{5} = 9.546 \text{ GHz}\right)$$

Analytic prediction: $f_0 = c/(4L\sqrt{\varepsilon_\text{eff}}) = 9.92$ GHz

Agreement: 96.0% (4.0% error)

The 4% discrepancy reflects the difference between the open CPW analytic formula (fields extending to infinity) and the shielded geometry simulated here (PEC domain walls). The Palace result gives an inferred $\varepsilon_\text{eff} = 6.88$, slightly higher than the open-structure estimate of 6.34 — consistent with the PEC walls increasing field confinement in the silicon.

Sanity check: $E_\text{elec}/E_\text{mag} = 1.000000000$ for all modes, confirming exact equipartition of energy — the hallmark of a genuine resonant eigenmode.

The coarse mesh (9,521 elements, minimum element size ~20 μm) resolved the 3rd and 5th harmonics; the fundamental requires finer resolution in the 6 μm gap. Mesh refinement using Palace's adaptive mesh refinement (AMR) is in progress.


Workflow

geometry/cpw_resonator.py   ← GMSH: 3-D CPW mesh with PEC/PMC surface groups
         ↓
geometry/cpw_resonator.msh  ← MSH2 format, 9,521 tetrahedra
         ↓
simulation/eigenmode.json   ← Palace config: materials, BCs, SLEPc target
         ↓
Palace (mpirun)             ← Assembles curl-curl system, solves eigenvalue problem
         ↓
simulation/output/eig.csv   ← Eigenfrequencies, Q-factors, error estimates
         ↓
analysis/postprocess.py     ← Infers f₀, compares to analytic, prints results

Quick Start (Google Colab, T4 GPU)

See notebooks/CqeSimulation.ipynb for the complete end-to-end walkthrough including Palace installation, mesh generation, simulation, and post-processing.

Requirements: GMSH 4.15+, Palace v0.16+ (built from source), MPI, Python 3.10+

# Build Palace (~20 min, one time)
git clone https://github.com/awslabs/palace.git
cd palace && cmake -B build -DCMAKE_BUILD_TYPE=Release && cmake --build build -j$(nproc)

# Generate mesh
pip install gmsh
python geometry/cpw_resonator.py

# Run simulation
export OMPI_ALLOW_RUN_AS_ROOT=1 && export OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
mpirun -n 1 palace/build/bin/palace-x86_64.bin simulation/eigenmode.json

# Post-process
python analysis/postprocess.py

What Palace Is Doing

Palace solves the curl-curl eigenvalue problem for Maxwell's equations using the finite element method:

$$\nabla \times \mu_r^{-1} \nabla \times \mathbf{E} = \left(\frac{\omega}{c}\right)^2 \varepsilon_r, \mathbf{E}$$

Key implementation choices:

  • Nédélec edge elements (order 2): Vector-valued basis functions with degrees of freedom on mesh edges rather than nodes. Enforce tangential continuity of E across dielectric interfaces without enforcing normal continuity — the physically correct boundary condition. Eliminate spurious DC modes that afflict nodal elements.
  • SLEPc Krylov-Schur: Finds eigenvalues near a target frequency σ using shift-and-invert. Solves (K − σM)x = b at each iteration via GMRES with algebraic multigrid preconditioning (HYPRE).
  • Divergence-free projection: Removes the null space of the curl operator (gradient modes) from the Krylov space before eigenvalue extraction.

Repository Structure

palace-cqed/
├── geometry/
│   ├── cpw_resonator.py      # GMSH geometry: 5 substrate slabs + air, BooleanFragments
│   └── cpw_resonator.msh     # Generated mesh (MSH2, 9521 tetrahedra)
├── simulation/
│   ├── eigenmode.json        # Palace eigenmode config
│   └── output/
│       ├── eig.csv           # Eigenfrequencies and Q-factors
│       └── domain-E.csv      # Energy partition per domain per mode
├── analysis/
│   └── postprocess.py        # Parse eig.csv, infer f₀, compare to analytic
├── transmon/                 # Phase 2: transmon capacitor pad (in progress)
├── notebooks/
│   └── CqeSimulation.ipynb   # End-to-end Colab walkthrough
├── config.py                 # All physical parameters in one place
└── README.md

References

  1. Goppl et al., Coplanar waveguide resonators for circuit quantum electrodynamics, J. Appl. Phys. 104, 113904 (2008). arXiv:0807.4094
  2. Blais et al., Cavity quantum electrodynamics for superconducting electrical circuits, Phys. Rev. A 69, 062320 (2004). arXiv:cond-mat/0402216
  3. Krantz et al., A quantum engineer's guide to superconducting qubits, Appl. Phys. Rev. 6, 021318 (2019). arXiv:1904.06560
  4. Palace documentation: awslabs.github.io/palace

GitHub Topics

palace electromagnetic-simulation superconducting-qubits quantum-hardware fem coplanar-waveguide resonator mfem circuit-qed nvidia-quantum

About

FEM simulation of superconducting quantum hardware (CPW resonator + transmon qubit) using Palace

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors