Tutorials
Step-by-step guides to master integrated squeezed light generation and quantum noise analysis
Recommended Learning Path
Beginner Getting Started
Understanding Squeezed Light
Introduction to quantum noise, the Heisenberg uncertainty principle, and how squeezed states reduce noise below the shot noise limit.
Quadrature operators X and P
Vacuum fluctuations
Squeezing parameter and dB scale
Wigner function visualization
Your First Squeezing Simulation
Set up the simulation environment and calculate squeezing for both SiN and TFLN platforms.
from cv_squeezer import SqueezerSimulator
# SiN Kerr squeezer
sin_sim = SqueezerSimulator(
platform="sin",
wavelength=1550e-9
)
result = sin_sim.calculate_squeezing(
pump_power=50e-3,
escape_efficiency=0.85
)
print(f"Squeezing: {result['squeezing_dB']:.1f} dB")
Environment setup
Platform selection
Basic calculations
Visualizing Quantum States
Create Wigner function plots and noise ellipse visualizations to understand squeezed state geometry.
from cv_squeezer.quantum import CovarianceMatrix
from cv_squeezer.plotting import plot_wigner
# 6 dB squeezed state
sigma = CovarianceMatrix.squeezed_vacuum(
r=0.69, theta=0
)
# Plot Wigner function
plot_wigner(sigma, range=4)
Covariance matrices
Wigner function plots
Interactive 3D visualization
Intermediate Device Design
SiN Microring Design
Design a silicon nitride microring resonator optimized for Kerr squeezing via four-wave mixing.
from cv_squeezer.platforms import RingResonator
ring = RingResonator(
radius=50e-6,
width=1.2e-6,
height=800e-9,
gap=200e-9
)
# Optimize for escape efficiency
opt_gap = ring.optimize_coupling(
target_escape_eff=0.90
)
Q-factor engineering
Coupling optimization
FWM phase matching
Dispersion management
TFLN OPA Waveguide Design
Design a thin-film lithium niobate waveguide for high-level squeezing via optical parametric amplification.
from cv_squeezer.platforms import OPAWaveguide
opa = OPAWaveguide(
length=10e-3,
width=1.5e-6,
film_thickness=600e-9,
poling_period=4.5e-6
)
# Temperature tuning curve
temps = np.linspace(20, 80, 100)
wavelengths = opa.temperature_tuning_curve(temps)
Quasi-phase matching
Poling period selection
Temperature tuning
Waveguide mode design
Loss Budget Analysis
Track all loss sources and understand their cumulative impact on detected squeezing levels.
from cv_squeezer.analysis import LossBudget
budget = LossBudget()
budget.add_loss("Escape efficiency", 0.88)
budget.add_loss("Waveguide loss", 0.95)
budget.add_loss("Fiber coupling", 0.85)
budget.add_loss("Filter", 0.92)
budget.add_loss("Detector QE", 0.95)
# Impact analysis
budget.sensitivity_analysis()
Identifying loss sources
Sensitivity analysis
Optimization strategies
Spectral Analysis
Analyze frequency-dependent squeezing and understand the squeezing spectrum for different cavity parameters.
from cv_squeezer.analysis import SpectralAnalyzer
analyzer = SpectralAnalyzer(
linewidth=50e6,
gain=5.0,
escape_efficiency=0.90
)
# Calculate 3dB bandwidth
bw_3dB = analyzer.bandwidth_3dB()
print(f"3dB BW: {bw_3dB/1e6:.1f} MHz")
Squeezing spectrum S(Ω)
Bandwidth calculations
Sideband correlations
Advanced Applications & Integration
Squeezed Light for CV-QKD
Integrate squeezed states into continuous-variable quantum key distribution systems for enhanced secret key rates.
from cv_squeezer import SqueezerSimulator
from cvqkd import KeyRateCalculator
# Generate squeezed state
squeezer = SqueezerSimulator("tfln", 1550e-9)
sigma = squeezer.get_covariance_matrix(r=1.0)
# Calculate QKD improvement
qkd = KeyRateCalculator(distance=25)
rate_coherent = qkd.key_rate(V_mod=4)
rate_squeezed = qkd.key_rate_squeezed(sigma)
Squeezing in GMCS protocol
Key rate enhancement
Optimal squeezing levels
Gravitational Wave Detection
Design squeezed vacuum sources for interferometric gravitational wave detectors like LIGO.
from cv_squeezer.applications import GWDetector
detector = GWDetector(
arm_length=4e3, # 4 km arms
laser_power=200, # 200 W
squeezing_dB=10 # 10 dB injection
)
# Strain sensitivity improvement
improvement = detector.sensitivity_gain()
print(f"Factor: {improvement:.1f}x")
Shot noise limited regime
Frequency-dependent squeezing
Filter cavity requirements
Multi-Mode Entanglement
Generate and characterize entangled Gaussian states using integrated squeezers and linear optics.
from cv_squeezer.quantum import CovarianceMatrix
# Create two-mode squeezed state (EPR)
epr = CovarianceMatrix.two_mode_squeezed(r=1.0)
# Verify entanglement
duan_value = epr.duan_criterion()
log_neg = epr.logarithmic_negativity()
print(f"Log negativity: {log_neg:.3f}")
EPR state generation
Entanglement witnesses
Cluster state preparation
Quick Reference
Common Conversions
3 dB → r ≈ 0.35
6 dB → r ≈ 0.69
10 dB → r ≈ 1.15
15 dB → r ≈ 1.73
Key Formulas
V_sq = e^(-2r)
V_anti = e^(+2r)
V_det = η×V + (1-η)
dB = 10×log₁₀(V)
Typical Values
SiN: 3-10 dB squeezing
TFLN: 10-15+ dB squeezing
η_escape: 80-95%
η_det: 90-98%