scaling.jl
Public functions
QuantumACES.DepolarisingPlanarScaling
— TypeDepolarisingPlanarScaling
Scaling data for an experimental design for the syndrome extraction circuit of a surface code with depolarising Pauli noise.
Fields
dist_range::Vector{Int}
: Code distances.merit_scaling::Vector{Merit}
: Merit of the design for a range of code distances.G_fit::Function
: Gate number fit.G_params::Vector{Int}
: Gate number fit parameters; $a + bd + cd^2$.N_fit::Function
: Gate eigenvalue number fit.N_params::Vector{Int}
: Gate eigenvalue number fit parameters; $a + bd + cd^2$.trace_fit::Function
: Trace of the gate eigenvalue estimator covariance matrix fit.trace_params::Vector{Float64}
: Trace of the gate eigenvalue estimator covariance matrix fit parameters; $a + bd + cd^2$.trace_sq_fit::Function
: Trace of the gate eigenvalue estimator covariance matrix squared fit.trace_sq_params::Vector{Float64}
: Trace of the gate eigenvalue estimator covariance matrix squared fit parameters; $a + bd + cd^2$.expectation_fit::Function
: Normalised RMS error expectation fit.variance_fit::Function
: Normalised RMS error variance fit.circuit_param::AbstractCircuitParameters
: Code parameters.noise_param::DepolarisingParameters
: Depolarising noise parameters.tuple_set::Vector{Vector{Int}}
: Set of tuples which arrange the circuit layers.tuple_set_data::TupleSetData
:TupleSetData
object that generates the tuple set.shot_weights::Vector{Float64}
: Shot weights for each tuple in the set, which add to 1.ls_type::Symbol
: Type of least squares estimator for which the merits were calculated.calculation_times::Matrix{Float64}
: Time taken to generate the design and calculate the merit, respectively, for each distance.overall_time::Float64
: The overall time taken to calculate the merit scaling data for depolarising noise.
QuantumACES.LognormalPlanarScaling
— TypeLognormalPlanarScaling
Scaling data for an experimental design for the syndrome extraction circuit of a surface code with log-normal random Pauli noise.
Fields
dist_range::Vector{Int}
: Code distances.N_fit::Function
: Gate eigenvalue number fit.N_params::Vector{Int}
: Gate eigenvalue number fit parameters; $a + bd + cd^2$.expectation_scaling::Vector{Vector{Float64}}
: Expected normalised RMS error for a range of code distances.expectation_fit::Function
: Mean expected normalised RMS error fit.variance_scaling::Vector{Vector{Float64}}
: Normalised RMS error variance for a range of code distances.variance_fit::Function
: Mean normalised RMS error variance fit.eigenvalues_scaling::Vector{Vector{Vector{Float64}}}
: Eigenvalues of the gate log-eigenvalue estimator covariance matrix for a range of code distances.circuit_param::AbstractCircuitParameters
: Code parameters.noise_param::LognormalParameters
: Log-normal random noise parameters.seeds::Vector{UInt64}
: Seeds for the log-normal noise parameters.tuple_set::Vector{Vector{Int}}
: Set of tuples which arrange the circuit layers.tuple_set_data::TupleSetData
:TupleSetData
object that generates the tuple set.shot_weights::Vector{Float64}
: Shot weights for each tuple in the set, which add to 1.ls_type::Symbol
: Type of least squares estimator for which the merits were calculated.calculation_times::Matrix{Float64}
: The time taken to generate the design and calculate the figures of merit for random instances of log-normal Pauli noise, and for depolarising Pauli noise, respectively.overall_time::Float64
: The overall time taken to calculate the merit scaling for log-normal random noise.
QuantumACES.calc_depolarising_planar_scaling
— Methodcalc_depolarising_planar_scaling(d::Design, dist_max::Int; kwargs...)
calc_depolarising_planar_scaling(d::Design, dist_range::Vector{Int}; kwargs...)
Returns the scaling data as a DepolarisingPlanarScaling
object for the figure of merit of the design d
for the syndrome extraction circuit of a surface code with depolarising Pauli noise, as a function of the distance of the code.
Arguments
d::Design
: Design for which the merit scaling is calculated.dist_max::Int
: Maximum code distance for which the merit scaling is calculated.dist_range::Vector{Int}
: Vode distances for which the merit scaling is calculated.
Keyword arguments
ls_type::Symbol = :none
: Type of least squares estimator used to calculate the merit scaling, which defaults to the least squares estimator type of the design, or if that is not specified,:wls
.diagnostics::Bool = true
: Whether to print diagnostic information.save_data::Bool = false
: Whether to save the merit scaling data.
QuantumACES.calc_lognormal_planar_scaling
— Methodcalc_lognormal_planar_scaling(d::Design, dist_max::Int; kwargs...)
calc_lognormal_planar_scaling(d::Design, dist_range::Vector{Int}; kwargs...)
Returns the scaling data as a LognormalPlanarScaling
object for the figure of merit of the design d
for the syndrome extraction circuit of a surface code with log-normal random Pauli noise, as a function of the distance of the code.
Arguments
d::Design
: Design for which the merit scaling is calculated.dist_max::Int
: Maximum code distance for which the merit scaling is calculated.dist_range::Vector{Int}
: Code distances for which the merit scaling is calculated.
Keyword arguments
ls_type::Symbol = :none
: Type of least squares estimator used to calculate the merit scaling, which defaults to the least squares estimator type of the design, or if that is not specified,:wls
.precision::Float64 = 1e-3
: Precision to which the figure of merit is estimated, corresponding to the target standard error of the mean.max_repetitions::Int = 10000
: Maximum number of random instances of log-normal Pauli noise over which the figure of merit is calculated.min_repetitions::Int = 100
: Minimum number of random instances of log-normal Pauli noise over which the figure of merit is calculated.print_repetitions::Int = 100
: Number of random instances of log-normal Pauli noise between printing diagnostics.seed::Union{UInt64, Nothing} = nothing
: Seeds used to generate instances of log-normal Pauli noise.diagnostics::Bool = true
: Whether to print diagnostic information.save_data::Bool = false
: Whether to save the merit scaling data.