simulator

package
v0.0.0-...-69cc41d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 14, 2026 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type NoiseModel

type NoiseModel struct {
	Enabled          bool               `json:"enabled"`
	Type             string             `json:"type"` // "ideal", "depolarizing", "amplitude_damping"
	SingleQubitError float64            `json:"single_qubit_error"`
	TwoQubitError    float64            `json:"two_qubit_error"`
	MeasurementError float64            `json:"measurement_error"`
	T1               float64            `json:"t1"` // Relaxation time (μs)
	T2               float64            `json:"t2"` // Dephasing time (μs)
	CustomErrors     map[string]float64 `json:"custom_errors,omitempty"`
}

NoiseModel represents quantum noise

type QuantumSimulator

type QuantumSimulator struct {
	// contains filtered or unexported fields
}

QuantumSimulator simulates quantum circuits

func NewQuantumSimulator

func NewQuantumSimulator(simType SimulatorType, maxQubits int, useGPU bool) *QuantumSimulator

NewQuantumSimulator creates a new quantum simulator

func (*QuantumSimulator) GetMetrics

func (qs *QuantumSimulator) GetMetrics() *SimulatorMetrics

GetMetrics returns simulator metrics

func (*QuantumSimulator) SetNoiseModel

func (qs *QuantumSimulator) SetNoiseModel(model *NoiseModel)

SetNoiseModel sets the noise model

func (*QuantumSimulator) Simulate

func (qs *QuantumSimulator) Simulate(ctx context.Context, circuit *compiler.Circuit, shots int) (*SimulationResult, error)

Simulate simulates a quantum circuit

type QuantumState

type QuantumState struct {
	Amplitudes    []complex128           `json:"-"` // State vector
	DensityMatrix [][]complex128         `json:"-"` // Density matrix
	NumQubits     int                    `json:"num_qubits"`
	Type          SimulatorType          `json:"type"`
	Metadata      map[string]interface{} `json:"metadata"`
}

QuantumState represents a quantum state

type SimulationResult

type SimulationResult struct {
	Counts           map[string]int         `json:"counts"`
	Probabilities    map[string]float64     `json:"probabilities"`
	StateVector      []complex128           `json:"-"`
	ExpectationValue float64                `json:"expectation_value,omitempty"`
	Fidelity         float64                `json:"fidelity"`
	CircuitDepth     int                    `json:"circuit_depth"`
	Shots            int                    `json:"shots"`
	Metadata         map[string]interface{} `json:"metadata"`
}

SimulationResult represents simulation output

type SimulatorMetrics

type SimulatorMetrics struct {
	TotalSimulations   int64   `json:"total_simulations"`
	SuccessfulSims     int64   `json:"successful_sims"`
	FailedSims         int64   `json:"failed_sims"`
	AverageSimTime     float64 `json:"average_sim_time_ms"`
	MaxQubitsSimulated int     `json:"max_qubits_simulated"`
	GPUAccelerated     bool    `json:"gpu_accelerated"`
	CacheHitRate       float64 `json:"cache_hit_rate"`
}

SimulatorMetrics tracks simulator performance

type SimulatorType

type SimulatorType string

SimulatorType defines the simulation method

const (
	SimTypeStateVector   SimulatorType = "state_vector"   // Full state vector
	SimTypeDensityMatrix SimulatorType = "density_matrix" // Density matrix (noisy)
	SimTypeMPS           SimulatorType = "mps"            // Matrix Product State
	SimTypeCliffordT     SimulatorType = "clifford_t"     // Clifford+T simulation
)

type StateCache

type StateCache struct {
	// contains filtered or unexported fields
}

StateCache caches quantum states

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL