# sGate

S gate

Since R2023a

Installation Required: This functionality requires MATLAB Support Package for Quantum Computing.

## Syntax

``g = sGate(targetQubit)``

## Description

example

````g = sGate(targetQubit)` applies an S gate to a single target qubit and returns a `quantum.gate.SimpleGate` object.If `targetQubit` is a vector of qubit indices, `sGate` returns a column vector of gates, where `g(i)` represents an S gate applied to a qubit with index `targetQubit(i)`. Applying this gate is equivalent to applying an R1 gate with a rotation angle of π/2, meaning that `sGate(targetQubit)` is equivalent to `r1Gate(targetQubit,pi/2)`.```

## Examples

collapse all

Create an S gate that acts on a single qubit.

`g = sGate(1)`
```g = SimpleGate with properties: Type: "s" ControlQubits: [1×0 double] TargetQubits: 1 Angles: [1×0 double]```

Get the matrix representation of the gate.

`M = getMatrix(g)`
```M = 1.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 1.0000i```

Create an array of S gates that act on qubits with indices 1 to 4.

`g = sGate(1:4)`
```g = 4×1 SimpleGate array with gates: Id Gate Control Target 1 s 1 2 s 2 3 s 3 4 s 4 ```

## Input Arguments

collapse all

Target qubit of the gate, specified as a positive integer scalar index or vector of qubit indices.

Example: `1`

Example: `3:5`

collapse all

### Matrix Representation of S Gate

The matrix representation of an S gate applied to a single qubit is

`$\left[\begin{array}{cc}1& 0\\ 0& \mathrm{exp}\left(i\text{\hspace{0.17em}}\frac{\pi }{2}\right)\end{array}\right]=\left[\begin{array}{cc}1& 0\\ 0& i\end{array}\right].$`

Applying this gate is equivalent to applying an R1 gate with a rotation angle of π/2. This gate is also known as the square root of Pauli Z gate because applying the S gate twice is equivalent to applying the Pauli Z gate.

## Version History

Introduced in R2023a