protected override void OnInitialized(EventArgs e) { if (Reg.Size == 1) { Qubits.Content = "Qubits: " + FirstQubitIndex.ToString(); } else { Qubits.Content = "Qubits: " + FirstQubitIndex.ToString() + "-" + (FirstQubitIndex + Reg.Size - 1).ToString(); } int matrixRows, matrixCols; if (Reg.Size % 2 == 0) { matrixRows = matrixCols = (int)Math.Pow(2, Reg.Size / 2); } else { matrixRows = (int)Math.Pow(2, (Reg.Size - 1) / 2); matrixCols = (int)Math.Pow(2, (Reg.Size + 1) / 2); } StateMatrix.ResizeGrid(matrixRows, matrixCols); for (int i = 0; i < matrixRows; i++) { for (int j = 0; j < matrixCols; j++) { StateMatrix[i, j] = ComplexParser.ToString(Reg.Amplitude(i * matrixCols + j), 4).ToString(); } } if (Reg.Size == 1) { Examine.IsEnabled = false; } base.OnInitialized(e); }