---
title: EvenDepthVanillaPaths (latest version)
description: API reference for qiskit_noise_learning.experiment_builder.EvenDepthVanillaPaths in the latest version of qiskit-noise-learning
source: https://quantum.cloud.ibm.com/docs/en/api/qiskit-noise-learning/generated/experiment-builder-even-depth-vanilla-paths
---

# qiskit\_noise\_learning.experiment\_builder.EvenDepthVanillaPaths

*class* `qiskit_noise_learning.experiment_builder.EvenDepthVanillaPaths(*, prep_gate: ModelGate | None = None, meas_gate: ModelGate | None = None, gates: list[ModelGate] | None = None, input_paulis: dict[str, QubitSparsePauliList] | None = None)`

[GitHub](https://github.com/Qiskit/qiskit-noise-learning/tree/stable/0.1/qiskit_noise_learning/experiment_builder/stages/path_generators/even_depth_vanilla_paths.py)

Bases: [`AddPaths`](/docs/api/qiskit-noise-learning/generated/experiment-builder-add-paths "qiskit_noise_learning.experiment_builder.stages.path_generators.add_paths.AddPaths")

Generate unbound vanilla paths with repetitions of two gate applications.

For each target gate, generates paths where the repeatable fragment consists of two applications of the gate.

**Parameters**

- **prep\_gate** – The preparation gate. If `None`, defaults to the gate named `"P"`.
- **meas\_gate** – The measurement gate. If `None`, defaults to the gate named `"M"`.
- **gates** – Gates to generate paths for; these must be unitary (no preparation or measurement component). If `None`, defaults to all unitary gates in the gate set.
- **input\_paulis** – Optional mapping from gate name to the Paulis to use. If not specified, defaults to the gate generators if the fidelity model contains a [`PauliLindbladModel`](/docs/api/qiskit-noise-learning/generated/models-pauli-lindblad-model "qiskit_noise_learning.models.PauliLindbladModel"), otherwise a `ValueError` is raised.

### \_\_init\_\_

`__init__(*, prep_gate: ModelGate | None = None, meas_gate: ModelGate | None = None, gates: list[ModelGate] | None = None, input_paulis: dict[str, QubitSparsePauliList] | None = None)`

## Methods

|                                                                                                                                                                                                             |                                                  |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------ |
| [`__init__`](#qiskit_noise_learning.experiment_builder.EvenDepthVanillaPaths.__init__ "qiskit_noise_learning.experiment_builder.EvenDepthVanillaPaths.__init__")(\*\[, prep\_gate, meas\_gate, gates, ...]) |                                                  |
| `run`(experiment)                                                                                                                                                                                           | Validate required fields, then apply this stage. |

## Attributes

|                                                                                                                                                                                       |                              |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------- |
| `populates_fields`                                                                                                                                                                    |                              |
| [`required_fields`](#qiskit_noise_learning.experiment_builder.EvenDepthVanillaPaths.required_fields "qiskit_noise_learning.experiment_builder.EvenDepthVanillaPaths.required_fields") | Built-in immutable sequence. |

### required\_fields

Type: [`tuple`](https://docs.python.org/3/library/stdtypes.html#tuple)\[[`str`](https://docs.python.org/3/library/stdtypes.html#str), ...]

Built-in immutable sequence.

If no argument is given, the constructor returns an empty tuple. If iterable is specified the tuple is initialized from iterable’s items.

If the argument is a tuple, the return value is the same object.
