[go: up one dir, main page]

0% found this document useful (0 votes)
18 views48 pages

SpinEDU Lab Manual

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 48

ODMR

Lab Manual
2
Contents

1 Theoretical background 5
1.1 The NV center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Principles of electron spin resonance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3 Spin qubits: basic principles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4 Experimental methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2 The experimental setup 22


2.1 The optical setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2 The microwaves setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3 The control unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.4 The ESRM software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3 Experiments 32
3.1 Lab 1 - Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.2 Lab 2 - ODMR measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.3 Lab 3 - ODMR Rabi oscillations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.4 Lab 4 - Relaxation times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.5 Lab 5 - Dynamical decoupling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.6 Lab 6 - Single qubit operations and QST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

3
Abbreviations

ADC Analog to digital converter

AWG Arbitrary waveform generator

DD Dynamical Decoupling

ESR Electron spin resonance

FCC Face centered cubic

MW Microwave

NV Nitrogen-vacancy

ODMR Optically detected magnetic resonance

PL Photoluminescence

QST Quantum state tomography

SSG Synthesized signal generator

TLS Two level system

4
Chapter 1

Theoretical background

Given below is the theoretical background required in order to understand the physical system used in this lab (NV
center defects in diamond), and the principles of magnetic resonance required in order to comprehend optically detected
magnetic resonance (ODMR) measurements. Any reader who feels the information here is lacking can refer to the various
sources cited throughout this lab manual, or to other sources of literature.

1.1 The NV center


Diamond is a material made of carbon atoms, arranged in a “diamond cubic” crystal structure, and it has the highest
thermal conductivity and is the hardest natural material known to man. Various defects can form in diamond, one of
which is the negatively charged nitrogen-vacancy center (NV− , to which we will refer here simply as: NV), which is the
subject of this lab. The diamond lattice is a face-centered-cubic (FCC) structure with a basis of two carbon atoms at the

coordinates (0, 0, 0) , 14 , 14 , 14 , and a lattice constant of 3.57 [A]. As a result of this structure, each carbon atom in the
 
◦ ◦
diamond lattice has four neighboring carbon atoms at an angle of 109.5 , and a distance of 1.54 [A] from each other [1].
The NV center is a defect in diamond made of a substitutional nitrogen atom and an adjacent lattice vacancy site. Since it
consists of two building blocks (the nitrogen and vacancy), it can appear in the diamond lattice in four orientations (fig.
1.1), along each of the four crystallographic axes: [111] , 1̄1̄1 , 11̄1̄ , 1̄11̄ [1]. The NV− has two unpaired electrons,
      

which make it a paramagnetic defect with a spin singlet/triplet (i.e. the total spin quantum number is either s = 0 or s = 1).
Owing to its energy levels structure (fig. 1.2), it exhibits a spin-dependent photoluminescence (PL)1 , making it suitable
for optically detected magnetic resonance (ODMR) [2]. Furthermore, its energy levels are situated close to the center of
the 5.47 eV diamond energy band-gap. This makes the NV a stable physical system even at room-temperature, as the
thermal energy at that temperature is too small to excite the NV’s electrons to the diamond’s conduction band.
The NV energy levels can be described by a simple model [2] consisting of two orbital states: the ground and excited
states; each possessing a spin that can either be an s = 0 or s = 1 (as depicted in fig. 1.2). In its ground state the NV has
s = 1, and so it can be in any of the triplet spin states: mgs = {−1, 0, 1}. Due to a zero-field splitting (see section 1.2.3.1)
the state mgs = 0 becomes the lowest energy state, and it is separated from the mgs = ±1 states by approximately 2.87 GHz
(i.e. ∆E = hν, with ν corresponding to this frequency). The highest energy states (in this model) are the excited state with
spin s = 1, which have a structure similar to the ground states, but with a difference of approximately 1.42 GHz between
the mes = 0 and the mes = ±1 states. In between these energy levels lie the intermediate levels: ground and excited states
with s = 0. If an external magnetic field is introduced in the system, it will change the energy levels structure according
to the Zeeman effect (see section 1.2.3.2, and also fig. 1.2 for a schematic representation), but for simplicity - we shall
keep the discussion to the case where there is no external magnetic field. The NV can be efficiently excited from the
triplet ground state to the triplet excited state with a laser light of energy higher than the difference between these states
(typically, a laser of wavelength: λ ≈ 532 nm). This laser excitation is spin conserving, so if an NV was initially in the
1 Photoluminescence is the emission of light from a material that absorbed photons.

5
(a) (b)

Figure 1.1: (a) A schematic representation of the diamond lattice (made out of carbon atoms; green and black), with an
NV center, made out of a vacancy (transparent), and a neighboring substitutional nitrogen atom (brown). The nitrogen
may substitute any of the nearest neighbor carbon sites (green), and so the NV’s symmetry axis may be in any of four
crystallographic directions. (from ref. [2]). (b) The principal axes of an NV are defined with ẑ parallel to the N-V axis,
and x̂ in a plane that consists of the N, V and one of the nearest carbons. (adapted from ref. [1]).

mgs = 0 state, it will end up in the mes = 0 state (and vice versa: mgs = ±1 will end up in mes = ±1 ).

Figure 1.2: A schematic representation of the NV− electron spin energy levels, with light-gray axes and broken lines
schematically showing their behavior in an applied external magnetic field (B0 ). In this system triplet ground states can
be excited to triplet excited states (green arrows) while conserving their spin. Electrons in the excited triplet states may
either decay radiatively (red arrows) while conserving their spin, or non-radiatively through the singlet states (light-blue
arrows). The non-radiative decay mes = 0 → mgs = ±1 commences at a lower rate than the mes = ±1 → mgs = 0 decay,
which enables optical pumping. Also, as a result of these non-radiative decay rates, radiative decay from mes = ±1 is
weaker than from mes = 0, which allows for ODMR measurements. (Adapted from ref. [2])

After being excited from the triplet ground state, the NV electron can decay either radiatively while conserving its spin
state, or non-radiatively through the intermediate singlet energy levels without conserving its spin state. Coincidentally,
the non-radiative decay rate of the mes = ±1 electrons to the mgs = 0 state is higher than the mes = 0 → mgs = ±1 decay
rate. Owing to these decay rates, the NVs can be polarized into the mgs = 0 state simply by continuously exciting them
with laser radiation of appropriate wavelength. This optical pumping process yields a population difference of up to 13%
between these states (i.e. N(mgs = 0) − N(mgs = ±1) /N = 0.13) at room temperature [3], much better than the “natural”
 

∼ 0.015% difference at thermal equilibrium and at earth’s magnetic field.


The same decay mechanisms that enable optical pumping allow to detect the NV electron spin state optically. Due to the
higher non-radiative decay rate mes = ±1 → mgs = 0, radiative decay of the mes = ±1 electrons is weaker than radiative
decay of the mes = 0 electrons. Therefore, after excitation, PL from a sample with most NV electrons initially in the
mgs = ±1 state is weaker than PL from a sample with most NV electrons initially in the mgs = 0 state. This means that one
can distinguish between the two cases, and determine optically the NV spin state.

6
Thus, a typical ODMR experiment with NV centers in diamond begins with a laser pulse (λ = 518 [nm] in our setup) to
polarize them to the mgs = 0 state, followed by some microwave (MW) pulses to manipulate the NV electron spin states
(e.g. setting mgs = 0 → mgs = −1). Finally, the spins are excited by another laser pulse (of the same wavelength), and the
PL from the diamond is measured (λ ≈ 630 − 800 [nm]) and compared to the PL in an experiment without MW pulses.
The difference (or: contrast) between these PL signals is the ODMR signal (fig. 1.3), and it depends on the NV spins state
after manipulation by MW pulses (see section 1.4.1 for more details).

Figure 1.3: A schematic representation of the ODMR contrast. Upon illumination of the NVs by a laser pulse, the radiative
decay of the excited states (PL) can be observed. If the NVs are in their mgs = 0 state, initially the PL (red graph) will be
higher than the PL when in the mgs = ±1 state (blue graph); but after some time the PL will reach a constant value due to
optically pumping the NVs to the mgs = 0 state. By comparing the two cases (inset) the ODMR contrast can be extracted.
(adapted from ref. [1])

1.2 Principles of electron spin resonance


Electron spin resonance (ESR) is a widespread physical method of observing resonance absorption of microwave power
by unpaired electron spins in a magnetic field. It is considered mostly as a spectroscopic tool for determining the structure,
dynamics, and spatial distribution of paramagnetic species, but more generally, it is a scientific tool, used to manipulate
and detect the state of electron spins. In this lab these principles will be used to control and manipulate the spin of the NV
center.

1.2.1 Electron Spins

The electron spin is an intrinsic property of the electron [4] which has units of angular momentum and gives rise to a
magnetic moment, described by the vector operator [4, 5]:

~µˆ = h̄γe~Sˆ (1.1)

where ~Sˆ is the unitless electron spin-half operator (defined as ~Sˆ = 21 ~σˆ , with ~σˆ a vector of Pauli matrices), γe is the electron
gyromagnetic ratio, and h̄ is Planck’s constant divided by 2π. Its eigenstates are commonly defined as |s, ms i, and satisfy
the eigenvalue equations:
~Sˆ2 |s, ms i = s(s + 1) |s, ms i (1.2)

Sˆz |s, ms i = ms |s, ms i (1.3)


1
and ms = − 21 , 21 . In systems of more than one unpaired electron, one may get a total spin with other

with s = 2
quantum numbers. For example, in the NV center there are two unpaired electrons which give rise to a singlet spin energy
level (with quantum numbers: s = 0 and ms = 0), and a triplet of spin energy levels (with quantum numbers: s = 1 and
ms = {−1, 0, 1}).

7
Apart from using the eigenstate representation, a quantum mechanical system may be described by a density operator
(sometimes referred to as a density matrix), which is defined by [6]:

ρ̂ ≡ ∑ pi |ψi i hψi |
i

where the index i sums over pure states |ψi i of the system at hand, and pi are respective probabilities for the system to
be in those states. By this definition, it follows immediately that for all i: 0 ≤ pi ≤ 1, Tr (ρ̂) = 1 and that ρ̂ is a positive
operator [6]. Furthermore, it follows that the operation of a unitary operator U on a system described by a density operator
ρ̂ is given by [4, 6]:
ρ̂ 0 = Û ρ̂ Û † (1.4)

and that the expectation value of an observable  is given by [4, 6]:



 = Tr ρ̂  (1.5)

This description is especially useful in cases where the state of the system is not precisely known, or in cases concerned
with ensembles of spins, where describing the system by a density operator is more convenient. As an example, following
is the derivation of an expression for a spin-half density operator.
An isolated spin may be described by the wave function:
 
1 1 1 1
ψ j = c0j , + c1j ,− ≡ c0j |0i + c1j |1i (1.6)
2 2 2 2

2 2
where for all j, the wavefunction satisfies the normalization condition: c0j + c1j = 1, and we defined 1 1
2, 2 ≡ |0i and
1 1
2,−2 ≡ |1i for brevity. Note: in order not to confuse this notation with the projections of a spin 1 system; throughout
this document we will refer to systems with other spin quantum numbers by their full description (e.g. |s = 1, ms = 0i,
and not |0i). An ensemble of N spins, on the other hand, may consist of n sub ensembles (n ≤ N), in which all spins have
the same wavefunction and a respective probability p j to belong to it. In such a case, the state of the whole system can be
described by the density operator:
n n  
j 2 j j∗ j j∗ j 2
ρ̂ = ∑ pj ψj ψj = ∑ pj c0 |0i h0| + c0 c1 |0i h1| + c1 c0 |1i h0| + c1 |1i h1|
j=1 j=1

By summing over j we get ensemble averages, which we denote with a bar, and the density operator becomes (in matrix
form): !
|c0 |2 c0 c∗1
ρ̂ = (1.7)
c∗0 c1 |c1 |2
This is a mixed state, describing a spin-half ensemble. It is found that any such state can be written mathematically in the
form [6]:
1 
ρ̂ = Î +~r · ~σˆ (1.8)
2
where Î is a unit operator, ~σˆ is a vector of Pauli matrices and ~r is a real vector that satisfies the condition |~r| ≤ 1. This
means that the state of such a system can be described by a vector that is bounded inside a unit sphere, also known as
the Bloch sphere. Using the Bloch sphere we can give a graphical description of the state of any ensemble of two level
systems, where a pure state is found to be described by a unit vector with |~r| = 1, and a mixed state is described by a
vector with |~r| < 1, as shown in figure 1.4. This Bloch sphere description is also useful for systems with s > 12 , where only
two of the spin energy levels are experimentally accessible. For example, in the NV center under a static magnetic field,
the degeneracy of the ms = {−1, 1} energy levels is lifted, and one can stimulate transitions only between the ms = 0 and
ms = 1 states (or between ms = 0 and ms = −1). In this case the two energy levels can be considered a pseudo two level
system, and the Bloch sphere description of their state is valid.

The density matrix in eq. (1.7) is a statistical description of the state of an ensemble of spins. We can use it to calculate

8
Figure 1.4: A diagram of the Bloch sphere. The blue arrow is a unit vector pointing to the south pole, representing the
pure state |1i. Similarly, the red arrow represents the pure state |−iy = √12 (|0i − i |1i). The yellow arrow is a vector with
a norm |~r| < 1, which represents a general mixed state. The green dot at the origin represents the maximally mixed state,
max = 1 Î.
which is defined by ρ̂mixed 2

values of the net magnetization components (such as Mz which we measure), which are defined by:

N N
Mi = hµ̂i i = h̄γe Ŝi
V V

where i = {x, y, z}, N is the number of spins in the ensemble, V is the volume in which these spins reside, and hµ̂i i is the
expectation value of the respective magnetic moment component. The actual net magnetization components as a function
of time can be calculated (using eq. (1.5)) from a known density matrix according to its time evolution (e.g., see section
1.2.4). For this, however, the density matrix representing the system’s initial state has to be known. In most cases in ESR
it is given by the thermal equilibrium state [4]:
1 − KĤ0T
ρ̂0 = e B (1.9)
Z
where (usually) Ĥ0 = h̄ωs Ŝz is the static Hamiltonian of the system (see section 1.2.2 for a full definition), T is the
temperature, KB is Boltzmann’s constant, and  

− K 0T
Z = Tr e B (1.10)

is the partition function. For the NV center, however, since it can be optically pumped to the state ms = 0, we can describe
this system by the initial density matrix ρ0 = |s = 1, ms = 0i hs = 1, ms = 0|.

1.2.2 Spin Hamiltonian

In ESR we are usually interested in a Hamiltonian that consists of terms that are only due to the spin degrees of freedom
of the physical system at hand. Such a Hamiltonian is usually referred to as a Spin Hamiltonian, and is sometimes
split into a Static Hamiltonian (referring to the time-independent part) and an Oscillatory Hamiltonian (referring to the
time-dependent part).

1.2.2.1 Static Hamiltonian

~0 is given by [4]:
The static spin Hamiltonian of an isolated electron in a static external magnetic field B

~0 · ~Sˆ
Ĥ0 = h̄γe B (1.11)

In many cases, the electron spin may be subjected to additional contributions to the local magnetic field in its environment
which may lead to a more complicated Hamiltonian, but to explain the basic principles of ESR it is enough to consider the
above expression alone. Such contributions may arise from the magnetic field of nearby magnetic moments (i.e. nuclear

9
spins, or other electron spins), or from motion of nearby charged particles. The Hamiltonian in eq. (1.11) is also known
as the electron Zeeman Hamiltonian, which describes the interaction of the electron spin with a static magnetic field. It is
useful to define the external magnetic field as:
~B0 ≡ B0 ẑ (1.12)

where ẑ is a unit vector defining the z-axis, and then the Zeeman Hamiltonian becomes:

Ĥ0 = h̄γe B0 Ŝz ≡ h̄ωs Ŝz (1.13)

This Hamiltonian is diagonal in the spin eigenbasis presented in section 1.2.1, and from units considerations we define
here the angular frequency ωs ≡ γe B0 .

1.2.2.2 Oscillatory Hamiltonian

To manipulate electron spins, an additional oscillating magnetic field perpendicular to ~B0 is required. Such an oscillating
magnetic field may be written in the form:
~1 = 2B1 cos (ωt + φ ) x̂
B

where φ is some phase (which we may control), ω is its angular frequency, and x̂ is the field’s direction. This field gives
rise to the additional Hamiltonian term:
h i
Ĥ1 = h̄γe B1 ei(ωt+φ ) + e−i(ωt+φ ) Ŝx

The well known rotating frame transformation (which is explained in many textbooks, e.g. in [7]), and further approx-
imations lead to a time-independent Hamiltonian. Briefly, this is a transformation to a rotating framework in which the
oscillating magnetic field appears to be static, and which removes the time-dependency from the Hamiltonian. In this
framework, the Hamiltonian Ĥ = Ĥ0 + Ĥ1 becomes:

Ĥ = h̄Ωs Ŝz + h̄ω1 Ŝx (1.14)

where Ωs = ωs − ω, and ω1 ≡ γe B1 .

1.2.3 NV spin Hamiltonian

The static spin Hamiltonian that describes the NV center is a bit more complicated than the Zeeman Hamiltonian described
above. The NV center ground state2 can be described by a Hamiltonian that consists of three parts:

Ĥ = ĤZFS + ĤZ + ĤHF

where ĤZFS is a contribution due to dipole-dipole interactions between the two unpaired electrons of the NV, and is also
referred to as the zero-field splitting Hamiltonian; ĤZ is the Zeeman Hamiltonian; and ĤHF is the hyperfine interaction
Hamiltonian. While the effects of ĤHF are small compared to the other terms (and they are not observed in these labs),
they are still explained below - to give a better understanding of the physical system at hand (but you may skip this
explanation if you like).

1.2.3.1 Zero-field splitting Hamiltonian

The zero-field splitting (ZFS) Hamiltonian can be written as [1, 4]:

ĤZFS = h~ST D~S


2 The excited state can be described by a spin Hamiltonian of the same form, but with different constant values in ĤZFS .

10
where h is Planck’s constant, ~S = (Sx , Sy , Sz ) is the unitless spin operator vector, and D is the ZFS interaction tensor, which
by this definition has units of frequency. In many cases (and also in the conditions of this lab), this term in the NV spin
Hamiltonian is the dominant term, so it defines the quantization axes of the system. In this case ẑ is defined to be parallel
to the N-V axis, and x̂ is in a plane that consists of the N, V and one of the nearest carbons, as shown in fig. 1.1. In this
axes system D is diagonal, and the ZFS Hamiltonian can be simplified to the form:
 
1
2
ĤZFS = hD Ŝz − Ŝ(Ŝ + 1) + hE Ŝx2 − Ŝy2

3

In most cases all terms but the first one can be neglected, so we can write:

ĤZFS = hDŜz2

with D = 2.87 GHz - the NV ground state splitting3 . From this Hamiltonian, and from eq. (1.3), we can see that this term
creates an energy difference between the NV spin ms = 0 and the ms = ±1 ground states (as depicted in fig. 1.5).

1.2.3.2 Zeeman Hamiltonian

Since the NV axes are already defined by the ZFS, when introducing a static magnetic field in the system, the full Zeeman
interaction Hamiltonian has to be considered (eq. (1.11)). We can describe the magnetic field vector with the angles θ
and φ , where θ is the angle between the field vector and the NV ẑ axis, and φ is the angle between the NV x̂ axis and the
magnetic field vector’s projection on the xy plane. With this definition we get that:

ĤZ = h̄γB · sin θ cos φ · Ŝx + sin θ sin φ · Ŝy + cos θ · Ŝz

This means that, including the ZFS Hamiltonian, we get the non-diagonal spin Hamiltonian:

Ĥ = ĤZFS + ĤZ = hDŜz2 + h̄γB cos θ · Ŝz + h̄γB · sin θ cos φ · Ŝx + sin θ sin φ · Ŝy


In the case where θ = 0 (meaning the magnetic field is parallel to the NV ẑ axis), we get the regular Zeeman Hamiltonian,
in which case the degeneracy of the ms = ±1 is lifted giving the two energy splittings: ∆E±10 = E±1 − E0 = hD ± h̄γB.
When θ 6= 0, the non-diagonal terms need to be taken into consideration, but they may be treated as small perturbations
if we assume that h̄γB  hD. In that case the two energy splittings become (approximately): ∆E±10 = E±1 − E0 =
hD ± h̄γB cos θ . Here we have kept only terms that are linear in B; however the terms we neglected - of higher order in B
- should not be neglected for θ ≈ π2 .
What this shows us is that the amount by which the energy differences (∆E±10 ) change as a function of B, depends on
the orientation of the magnetic field relative to the NV axis. Since the NV center can form in diamond in any one of four
different orientations (as shown in fig. 1.1), this means that for a given magnetic field orientation the NVs will have up
to four different slope values in their dependence between ∆E±10 and B. As a result, if we measure the energy splittings
(∆E±10 ) in a diamond consisting of many NVs, instead of finding only two such values, we may see up to four different
values of energy splittings. This phenomenon may also be used to detect the unknown orientation of a magnetic field [8].

1.2.3.3 Hyperfine Hamiltonian

In addition to the above interactions, the NV’s electron spins also interact with paramagnetic nuclear spins in their envi-
ronment (meaning: nuclear spins with a spin quantum number larger than zero). This interaction, known as the hyperfine
(HF) interaction, has a Hamiltonian of the form [1, 4]:

ĤHF = h~ST A~I


3 The excited state splitting is: D = 1.42 GHz.

11
where h is Planck’s constant, ~S = (Sx , Sy , Sz ) is the unitless electron spin operator vector, ~I = (Ix , Iy , Iz ) is the unitless
nuclear spin operator vector, and A is the HF interaction tensor. While there may be all kinds of paramagnetic nuclear
spins in the vicinity of an NV, first and foremost its electron spins interact with its own nitrogen, which is a paramagnetic
nucleus with spin I = 1 [1]. The HF interaction affects the electron spin energies - further splitting them - by creating
a dependence between their energy and the nuclear spin state (as depicted in fig. 1.5); however, in many cases, and
particularly when dealing with an ensemble of NVs (such as in this lab), this interaction is too small to observe. This
means that if we measure the energy splittings (∆E±10 ) in a diamond consisting of many NVs, we may not see six energy
splittings instead of just two, but the two values of energy splittings we will see will appear to be broader.

Figure 1.5: The NV center energy splittings due to various spin interactions. The ZFS interaction (left) splits the ms = 0
and ms = ±1 states; the Zeeman interaction (middle) splits the ms = ±1 states; and the HF interaction (right) further splits
the electron spin states by creating a dependence between their energy and the nuclear spin state. (adapted from ref. [1]).

1.2.4 Spin Dynamics

To explain spin dynamics, we consider the time evolution of N isolated spins in a static, and an oscillatory magnetic fields.

1.2.4.1 Larmor precession

In a static magnetic field alone (i.e. no time dependent fields), the time evolution operator will be a function of the
Hamiltonian of eq. (1.13), and after evolving it in time, the density matrix will read:
!
|c0 |2 c0 c∗1 e−iωs t
ρ̂(t) =
c∗0 c1 eiωs t |c1 |2

This time dependence describes a precession of the magnetization projection on the xy plane at an angular frequency
ωs [4], which is known as the Larmor precession (ωs is often referred to as the Larmor frequency), and may be better
visualized by the following examples.
When at t = 0 all spins are in the pure state: |+ix = √1 (|0i + |1i), the net magnetization components at time t will be:
2

h̄γe N h̄γe N
Mx = 2V cos (ωst) My = 2V sin (ωst) Mz = 0

describing a precession around the ẑ axis. However, when at t = 0 the system is in its thermal equilibrium state, the net
magnetization components at time t will be:

Mx = 0 My = 0 Mz = − h̄γ4Ve N Kh̄ω
BT
s (1.15)

12
which means it will be static.

1.2.4.2 Rabi oscillations

When both a static, and a perpendicular oscillating magnetic fields operate, the time evolution operator will consist of the
rotating frame Hamiltonian of eq. (1.14). In this case, exactly on resonance (i.e. Ωs = ωs − ω = 0) the time evolution
operator is a rotation around the x̂ axis. This can be better visualized by the following example. When at t = 0 all spins
are in the pure state |1i, the density matrix at time t will be:
!
sin2 ω1 
t −i sin ω1  ω1 
2 t cos 2 t
ρ̂(t) =  2
i sin ω1
2 t cos ω1 
2 t cos2 ω21 t

and the net magnetization components will then be:

h̄γe N
Mx = 0 My = 2V sin (ω1t) Mz = − h̄γ2Ve N cos (ω1t)

corresponding to a rotation around the x̂ axis. The above density matrix is described in the Bloch sphere picture as a unit
vector, initially pointing to the south pole, precessing around the x̂ axis at a frequency ω1 (figure 1.6).
A thorough treatment of the pure state |1i time evolution when off resonance (i.e. when Ωs = ωs − ω 6= 0) yields Rabi’s
formula [7]:
ω2
 
1
p1→0 (t) = 12 sin2 ΩRt (1.16)
ΩR 2

which is the system’s probability to be in the |0i state, when it was initially in |1i, and we defined Ω2R = Ω2s + ω12 . These
spin dynamics are known as Rabi Oscillations (and ΩR is often referred to as the Rabi frequency).
One may note that eq. (1.16) gives a maximal probability for a spin “flip” (i.e. |1i → |0i) when t = π/ΩR , and “half a
flip” (|1i → |+ix = √12 (|0i + |1i)) when t = π/2ΩR . Therefore, an oscillating magnetic field pulse operating from t = 0
to t = t p will give a maximal probability to flip the initial state (e.g. |1i → |0i) when:

π
tp = (1.17)
ΩR

and a maximal probability to bring the initial state to a superposition (e.g. |1i → |+ix ) when:

π
tp = (1.18)
2ΩR

These two pulses are known as pi pulse and pi-half pulse respectively, and are widely used in ESR.

1.2.4.3 Relaxation processes - the Bloch equations

The dynamics described above are coherent, meaning that once the spins are put in a static or an oscillating magnetic field,
they will follow these dynamics forever. However, in reality the spins interact with an environment which makes them lose
the coherent nature of their dynamics, and eventually “relax” to the thermal equilibrium state. Those relaxation processes
can be easily incorporated in the spin dynamics phenomenologically, by considering the net magnetization equations of
motion when only a static magnetic field is applied. Those equations are known as the Bloch equations [9]:

dMx Mx
= −γe B0 My −
dt T2

dMy My
= γe B0 Mx −
dt T2
dMz Mz − M0
=−
dt T1

13
Figure 1.6: An illustration of the precession of the pure state |1i around the x̂ axis in the rotating frame in the Bloch
sphere representation. This precession is caused by an oscillating magnetic field, on resonance and in perpendicular to
the external static magnetic field. The colored arrows represent the pure state at different times, with the blue arrow
representing the initial state and the black-curved arrow indicating the direction of precession.

Here M0 = − h̄γ2Ve N Kh̄ωs


BT
is the magnitude of the net magnetization vector at thermal equilibrium, T1 is a time constant
corresponding to the net magnetization z component relaxation, and T2 is a time constant corresponding to the net mag-
netization x and y components relaxation. These two relaxation processes are the so-called longitudinal relaxation, and
transverse relaxation. The solutions to the above equations are:
 −t
Mx (t) = Mx0 cos (ωst) + My0 sin (ωst) e T2

(1.19)

 −t
My (t) = My0 cos (ωst) − Mx0 sin (ωst) e T2

(1.20)
− t − t
 
Mz (t) = M0 1 − e T1 + Mz0 e T1 (1.21)

where Mx0 , My0 and Mz0 are the x, y and z components of the initial net magnetization vector, respectively. These solutions
describe the Larmor precession, with exponential relaxation processes incorporated.

1.3 Spin qubits: basic principles


A qubit (the basic building block of a circuit quantum computer) is a quantum two level system (TLS) [6]. This makes
the spin-half (which is also a TLS) a good candidate for a qubit. In many cases systems with spin: s ≥ 1 can also be used
as qubits, if they can be treated as quasi TLS. For a TLS to be considered a useful qubit, among other things one has to
be able to perform arbitrary unitary operations on it, and to measure its final state. In this section we will discuss briefly
these two requirements.

1.3.1 Single qubit unitary gates

An arbitrary unitary operation on a single qubit can be constructed from combinations of the Hadamard gate, and a π/4 Z-
phase gate [6]. However, in many cases one can apply other gates directly, and more efficiently, without constructing them
from these gates. The simplest gate one can operate with is the NOT gate, which is simply the Pauli σx unitary operator,
and is often denoted as X. To achieve such an operation physically, one can activate a magnetic field perpendicular to the
quantization axis of the TLS, which oscillates in its resonance frequency. During the time this field is on, the system is
described by the rotating frame Hamiltonian of eq. (1.14) (with Ωs = 0), and its time evolution will be Ux (t) = e−iω1 t·Sx =
cos ω21 t · I − i · sin ω21 t · σx . When the field is kept on for an amount of time satisfying ω1t = π, we get that the time
 

14
evolution of the system is the NOT gate (up to an unimportant global phase):

π
X = Ux (t = ) = −i · σx
ω1

So, under such conditions we can operate on a TLS with a NOT gate. For example, you may verify that the operation of
this gate on a TLS initially set in its ground state (|0i) is to flip it to the excited state (|1i), as expected of a NOT gate.
Similarly, if we operate with the time propagator Uy (t) = e−iω1 t·Sy = cos ω21 t · I − i · sin ω21 t · σy for an amount of time
 

satisfying ω1t = π2 , we will get a π


2 rotation around the y axis of the Bloch sphere:
!
π  π 1 1 1 −1
Ry = Uy (t = ) = √ (I − iσy ) = √
2 2ω1 2 2 1 1

This operation has no classical equivalent (!), as it puts the TLS eigenstates into an equal superposition!
You may verify that Ry π2 |0i = √12 (|0i + |1i) = |+ix , and Ry π2 |1i = − √12 (|0i − |1i) = − |−ix , so (up to an unim-
 
π
portant global phase) this operates on the TLS eigenstates as a Hadamard gate. However, this 2 rotation doesn’t have the
same matrix form as the Hadamard gate, hence it not the Hadamard gate; but it is often referred to as the quasi-Hadamard
gate.
π

To achieve the Hadamard gate (up to an unimportant global phase) we can operate with an Ry 2 followed immediately
by an Rx (π). This gives: !
π  i 1 1
Rx (π) Ry = −√ = −iH
2 2 1 −1
with H being the common notation for the Hadamard gate (not to be confused with the notation used for Hamiltonians!).

1.3.2 Single qubit quantum state tomography

To fully measure the state of a single qubit one has to perform a quantum state tomography [6]. As shown previously in
eq. (1.8), the density matrix can be written as a sum of Pauli matrices. Eq. (1.8) can be shown to be equivalent to:

1
ρ= (Tr(ρ) · I + Tr(σx ρ) · σx + Tr(σy ρ) · σy + Tr(σz ρ) · σz )
2

and using the definition of eq. (1.5), one can rewrite this relation as:

1 
ρ= Tr(ρ) · I + hσx i · σx + σy · σy + hσz i · σz
2

which shows that by measuring the expectation values hσx i , σy , hσz i one can fully construct the density matrix of a
single qubit.
But how can this be done in our setup? In principle, the observable measured in this lab is hσz i; wheras hσx i and σy can
not be directly measured in this system. Let us assume the experimental conditions in our setup are such that the system
can be considered a quasi-TLS, and let us denote these two levels as |0i, and |1i. In this case a general single qubit density
matrix is given by eq. (1.7), and according to eq. (1.5):

hσz i = Tr (ρσz ) = |c0 |2 − |c1 |2

This observable can be any real number in the range: −1 ≤ hσz i ≤ 1. The contrast, which is what we measure in this
lab, can be mapped to these values as follows: If we measure the contrast as explained in sec. 1.4.1 while our system is
prepared in the ms = 0 spin projection, we will get the maximal contrast (that is: a function decaying in time with the
maximal positive amplitude). On the other hand, if the system is prepared in one of the ms = ±1 spin projections we will
measure the minimal contrast (that is: a function decaying in time with the most negative amplitude). Let us refer to the
integral of the contrast in time as our measured value (as it is a number and not a function of time, so it is easier to work
with), and let us normalize it according to the value of the integral of maximal contrast. Let us also denote this measured

15
value as c, so according to our definition: −1 ≤ c ≤ 1. Hence, this value maps directly to hσz i, and we can write:

hσz i = c

To measure the observable hσx i, we need to first operate on our qubit with an Ry π2 rotation, and then measure hσz iρy
of the rotated system. One can verify that hσz iρy of the rotated system indeed gives the observable hσx i of the original
density matrix (see exercise at the end of this lab manual). Explicitly, let us denote the rotated density matrix with
 †
ρy = Ry π2 ρRy π2 , then it can be shown that:

hσz iρy = Tr (ρy σz ) = − hσx i


Similarly, to measure the observable σy , we need to first operate on our qubit with an Rx π2 rotation, and then measure
 †
hσz iρx of the rotated system. In this case, let us denote the rotated density matrix ρx = Rx π2 ρRx π2 , then it can be
shown that:
hσz iρx = Tr (ρx σz ) = σy

1.3.3 Quantum state fidelity

As shown above, we can perform unitary operations on our TLS, and measure its state afterwards; but how can we quantify
how well these operations performed? One way to do so is to compare between the measured density matrix of the TLS
and the theoretic density matrix. While this comparison is between matrices, it can be quantified into a number with the
“fidelity”.
The fidelity of two quantum states (density matrices) is defined as [10]:
 q 2
1 1
F(ρ, σ ) = Tr ρ σ ρ
2 2

This value is symmetric (F(ρ, σ ) = F(σ , ρ)), and it satisfies: 0 ≤ F ≤ 1, where F(ρ, σ ) = 1 if ρ = σ .

To give, in addition, a visual comparison between a measured (reconstructed) density matrix to a theoretic density matrix,
it is useful to plot the complex amplitudes of all matrix elements in some kind of a 3D bar plot, as shown for example in
fig. 1.7.

Figure 1.7: An example of a QST visualization. As can be seen, there is some mismatch between measured and theoretical
values, and so the fidelity is only 69%.

16
1.4 Experimental methods
In pulsed ESR, and in the experiments in this lab, electron spins are excited by short bursts of microwave (MW) radiation.
By combining such pulses, a high level of control over the spins state can be achieved, and much information can be
extracted about electron spins in a sample. There are many pulse sequences that are commonly employed in magnetic
resonance measurements, but only a selected few, which are relevant for the experiments in this lab are described here.

1.4.1 ODMR contrast measurement

The ODMR contrast measurement pulse sequence is, in fact, two pulse sequences. In both pulse sequences first a pump
laser pulse initializes the spins to their ground state (ms = 0 for NVs), and a short while after that the readout laser pulse
fires. During the readout pulse the PL from the sample is detected. The difference between the two pulse sequences is
that in the second pulse sequence a MW pi pulse is transmitted in the time between the laser pulses, while in the first
sequence no MWs are used. The contrast, which is the subtraction of the PL in the second sequence from the PL in the
first sequence, can be obtained from the PL measurements in these two sequences (see fig. 1.8).

Figure 1.8: A diagram of an ODMR contrast measurement pulse sequence. The sequence runs twice: (1) once without a
MW pulse; (2) and once with a MW pulse. The contrast is the subtraction of the latter PL measurement from the former.

1.4.2 ODMR Frequency sweep

To find the resonance frequency of a system, it is often useful to perform a frequency sweep. In this case the ODMR
contrast measurement sequence of section 1.4.1 is repeated many times, each time with the MW pulse being at a different
frequency. When the sequence is run with a MW pulse at a frequency that is far from the system’s resonance frequency
(Ωs  ω1 ), as we can see from eq. (1.16), the probability to perform a pi pulse goes to zero, so the MWs will not influence
the spins and it will be as if we did not transmit any MWs at all. In that case the contrast will be zero. On the other hand,
when the sequence is run with a MW pulse at the same frequency as system’s resonance frequency (Ωs = 0), eq. (1.16)
shows that the probability to perform a pi pulse goes to one. In that case the spins will flip from ms = 0 to ms = ±1, and
the intensity of the PL after the MW pulse will be lower - so the contrast will be larger than zero. This method can also
be repeated many times with different values of a static magnetic field - to observe the Zeeman splitting effect.

1.4.3 ODMR Rabi Oscillations measurement

When the system’s resonance frequency is known, it is often useful to perform Rabi oscillations measurements, to find the
conditions that will give a pi pulse. In this case the ODMR contrast measurement sequence of section 1.4.1 is repeated
many times, each time with a MW pulse of an increasing length (or alternatively, with a constant length and varying
amplitude). In this case, as we can see from eq. (1.16), the probability to perform a pi pulse will oscillate between zero
and one depending on the pulse length (or on the pulse amplitude, which is proportional to ω1 ).

17
1.4.4 ODMR T1 measurement

There are various ways to measure T1 in an ODMR experiment. One way (depicted in fig. 1.9) is by initializing the spins
with a pump laser pulse, then transmitting a MW pi pulse, and then waiting some time T before detecting the PL (during
the readout laser pulse). By repeating these measurements with increasing T values, one may observe the return of the PL
intensity to its value when the system is in thermal equilibrium. T1 , which is the time constant for the return to thermal
equilibrium, can be extracted from these measurements, using the following relation, derived from eq. (1.21):

PL(T ) = a + b · (1 − e−T /T1 )

where a, b, and T1 are fitting parameters. Here PL(T ) represents the integral in time of the measured PL, for each T .
Alternatively, one can measure the contrast as a function of T , and then the above expression simplifies to:

C(T ) = a · e−T /T1

with C(T ) representing the contrast, and a & T1 the fitting parameters.

Figure 1.9: A diagram of an ODMR T1 measurement pulse sequence. The sequence is run with increasing T , and the
return of the PL to its thermal equilibrium value is observed.

1.4.5 The primary echo pulse sequence

The phenomenon of the spin echo is based on the behavior of an ensemble of spins with different Larmor frequencies
[4]. The most common pulse sequence in which an echo can be observed is the primary echo, which consists of two MW
pulses: a pi-half pulse and a pi pulse, separated by a free evolution time τ, as illustrated in figure 1.10. The state of the
density matrix after such a pulse sequence can be easily evaluated when considering the initial state of the system and
evolving it in time, using the Hamiltonian of eq. (1.14) in the rotating frame (see section 1.2.2.2). Under such conditions,
the reduced density operator at time t = τ + t 0 becomes [4]:

ρ̂(τ + t 0 ) = − cos Ωs t 0 − τ Ŝy + sin Ωs t 0 − τ


 
Ŝx (1.22)

This description applies separately to different spin packets (i.e. sub-ensembles), each possessing a different off-resonant
frequency Ωs . In the above result it was further assumed that the MW pulses operate in a negligible time t pulse  τ and are
much stronger than the off-resonant precession of all spin packets (i.e. ω1  Ωs in eq. (1.14)). Also, relaxation processes
were ignored, assuming that T2  τ + t 0 . One can see that at time t 0 = τ, eq. (1.22) becomes:

ρ̂(2τ) = −Ŝy (1.23)

for all spin packets. This relation describes a constructive interference of all the spin packets in the system, giving rise
to a magnetization along the ŷ direction. And so, this reappearance of the magnetization at time t = 2τ is appropriately
called an echo.
To help visualize the spin dynamics that lead to the formation of an echo, let us consider an example. If initially all spins
are in the |0i state, then after a pi-half pulse they will be in the −y direction of the Bloch sphere. Next, spins with different

18
Larmor frequencies will rotate in the xy plane at different frequencies. In the rotating frame of reference it will seem
as if the spins with large frequencies rotate in the positive direction (towards the +x direction), and the spins with low
frequencies rotate in the negative direction (towards the −x direction). So, after a time τ the spins will dephase (meaning:
they will point in all directions in the xy plane, and the magnetization, which is their vector sum, will vanish). Next, a pi
pulse rotates the dephased spins, and puts those that previously rotated in the positive direction (away from the −y axis)
- in the negative direction away from the +y axis (and vice-versa: those that previously rotated in the negative direction
will end up in the positive direction relative to the +y axis). Next, the spins will continue to rotate in the same direction
as before - the spins that rotate in the positive direction will advance towards the +y axis, and the spins that rotate in the
negative direction will also advance in the direction of the +y axis. So, after another time τ all spins will point in the +y
direction, and an echo will form.

Figure 1.10: A diagram of a primary echo pulse sequence. The pi-half pulse rotates the spins to the xy plane, and they
dephase during a time interval: τ. Next, a pi pulse rotates all spins, so they start to converge back, and at a time t = 2τ all
spins rotated by the first pulse co-align.

1.4.6 ODMR T2 measurement

The transverse decay time of the spins, T2 , is extracted from measurements of the primary echo; but to measure T2 in
an ODMR experiment, one has to employ a slightly more complicated pulse sequence than the primary echo sequence
mentioned in section 1.4.5 (see fig. 1.11). To observe the echo, the pulse sequence is run twice, each time with slightly
different MW pulses. First, as usual, the spins are initialized to the ms = 0 state with a pump laser pulse. Then, a MW

pi-half pulse rotates the spins to the y axis of the Bloch sphere. In the first pulse sequence a + π2 x pulse is used, so the

spins are rotated to the −y direction, and in the second pulse sequence a − π2 x pulse is used, so the spins are rotated to
the +y direction. Apart from this, the rest of the pulse sequence is identical in both cases. After some free evolution time:
τ, the spins dephase, and then a MW pi pulse rotates them so they start to converge back. After another free evolution

time: τ, the echo is formed, at which point the spins are projected back to the z axis with a + π2 x pulse. The spins

that were initially rotated by the + π2 x pulse will end up in the ms = 0 state, and the spins that were initially rotated by

the − π2 x pulse will end up in the ms = ±1 state. Next the PL is detected during a readout laser pulse, and the echo
contrast results from the subtraction of the PL in the second sequence from the PL in the first sequence. These sequences
are repeated many times, with increasing values of τ, and so the decay of the ODMR echo contrast can be observed.
T2 , which is the time constant for the decay of the echo, can be extracted from these measurements, using the following
relation:
EC(τ) = a · e−2τ/T2 + b

where a, b, and T2 are fitting parameters, and EC(τ) represents the integral in time of the measured echo contrast, for each
τ.

19
Figure 1.11: A diagram of an ODMR T2 measurement pulse sequence. The sequence is run with increasing τ, and the
decay of the echo contrast is observed.

1.4.7 ODMR T2∗ measurement

T2∗ is the time constant for the dephasing of the spins, and it can be measured in various ways. One way to measure it is by
simply observing how the echo envelope decays; meaning: how long does it take the spins to dephase again immediately
after an echo has formed. To measure this decay, a pulse sequence similar to the one used in section 1.4.6 is used, only that
in this pulse sequence there are two evolution times: τ1 and τ2 . Here τ1 is held at a constant value, while τ2 is increased
from its initial value: τ20 = τ1 in each measurement. The decay of the echo envelope is expected to be of a Gaussian form,
and T2∗ can be extracted from such measurements, using the following relation:

∗ 2
EC(τ2 ) = a · e−(τ2 /T2 ) + b

where a, b, and T2∗ are fitting parameters, and EC(τ2 ) represents the integral in time of the measured echo contrast, for
each τ2 .

1.4.8 Dynamical Decoupling

In general, the main cause for decoherence of the NV spin, which leads to its transverse relaxation time: T2 , is interactions
of this spin with other spins in its environment. Such interactions cause an initial NV spin pure state to evolve into a
mixed (and even entangled) state of the global system: the NV and its environment. From the point of view of the NV
spin sub-system (i.e. when we take the partial trace of the environment), it simply “decoheres”, and the information
that was encoded in it is lost. In many cases the lifetime of the information encoded in a system can be prolonged by
decoupling that system from its environment. One can achieve this decoupling by employing Dynamical Decoupling
(DD) pulse sequences (for a brief review on this subject, see [11]). The simplest DD sequence is the spin echo, which
is designed to reverse the decohering effects due to static inhomogeneities (as explained in sec. 1.4.5), but it is less
effective under time-dependent perturbations. A well known DD sequence that is designed to cope with time dependent
perturbations is the Carr-Purcell-Meiboom-Gill (CPMG) pulse sequence. Essentially, it is a spin echo where instead of
just a single pi-pulse, a train of pi-pulses is employed to “refocus” the spins again and again (as in fig. 1.12). A CPMG
sequence that has N pi-pulses in it is usually referred to as “CPMG-N”, and in its simplest form (CPMG-1) it is simply the
echo sequence. The CPMG sequence is useful in prolonging the lifetime of a pure state set initially along the pi-pulses
rotation axis, but not to sustain an arbitrary initial state. It is also somewhat sensitive to pulse imperfections, so MW

20
pulses deviating from the nominal pi-half and pi pulses required in the sequence will result in decoherence of the initial
state. For these reasons other DD pulse sequences (that are more robust to imperfections and are independent of the initial
state) have been proposed, such as XY-4, KDD, and more (see [11]). The dynamically decoupled T2 can be measured the
same way an echo decay is measured: by increasing the values of τ while keeping the number of pulses in the sequence
constant. This procedure measures the dependence of the echo amplitude at the end of a CPMG-N sequence in τ. Another
measurement one can perform is to keep a constant value of τ, and increase the number of pulses (N).

Figure 1.12: A diagram of an ODMR CPMG DD pulse sequence. Given here is an example for a 5 pi-pulses CPMG
sequence (CPMG-5), but in general a CPMG-N pulse sequence can contain any number of pi-pulses. The sequence is
run twice, each time with a different phase in the first pulse, and the results are subtracted from each other to give the
dynamically decoupled echo contrast.

21
Chapter 2

The experimental setup

The experimental setup consists of three basic systems: the optical setup, the MW setup, and the control unit (computer),
which includes the ESRM software graphical user interface (described below). While not all technical details about the
various components of the setup are presented here, their catalog id is given, so you may find out more details about them.

2.1 The optical setup


The optical setup includes the exciting laser (λ = 518 nm; L520P50 from Thorlabs), PL detector (APD410A; Thorlabs),
and optical elements to guide the laser to the sample and the PL to the detector, as shown in fig. 2.1. Briefly, the laser
is driven by a current pulse (generated by a computer-controlled home-made current driver), it passes through a lens
(C671TME-A; Thorlabs) and it is reflected from a dichroic mirror (DMLP567; Thorlabs) into a microscope objective
(UPLANSAPO-20X; Olympus) which focuses it onto the diamond. The PL emitted from the diamond is collected by the
same objective, and passes through the dichroic mirror (which is transparent at the PL wavelengths range) towards the
detector. Before arriving to the detector it passes through a long-pass filter (FELH0600; Thorlabs), and then through a
short-pass filter (FESH0800; Thorlabs), to limit the light that reaches the detector to the wavelength range: 600-800 nm.
After passing the filters the PL goes through a plano-convex lens (LA5370; Thorlabs) to focus it onto the detector, and
through a neutral-density filter (Optional. Check the setup to see if installed) to reduce the PL power that arrives to the
detector. (Note: if too much power arrives to the detector, it can be destroyed! A good indication that this doesn’t happen
is that the detector’s output voltage is lower that 2V when its gain is minimal). Both the diamond, and the detector are
mounted on movable stages. The detector is mounted on a stage that enables moving it laterally, to bring it to the focal
point of the plano-convex lens, so that a maximal amount of the PL could reach it. The diamond is mounted on 3-axis
stages that allow moving it in any direction, so that it could be placed in the focal point of the microscope objective. This
way a maximal amount of the laser power can reach the diamond, and a maximal amount of PL can be collected from
it. In addition to the optical setup, an electromagnetic coil can be attached to the unit holding the diamond, and using
it, a static magnetic field can be induced on the diamond. The diamond is placed (in this setup) so that the normal to its
face is the crystalographic [111] direction, and the magnetic field generated by the electromagnetic coil is parallel to this
direction. The magnitude of this magnetic field can be varied by controlling the voltage on the electromagnetic coil.
T1 measurements

2.2 The microwaves setup


The microwaves setup includes components to generate arbitrary waveform pulses and transmit them into the antenna,
which generates the oscillating magnetic field required to drive the NV spin transitions. To explain why the MW setup is
built the way it is, we have to explain first the concept of wave-mixing.
In order for the oscillating magnetic field to affect the NV spins and induce Rabi oscillations (see sec. 1.2.4.2), it has to

22
Figure 2.1: The optical setup, with components described in the text. (1) Laser diode; (2) Lens (C671TME-A); (3)
Dichroic mirror; (4) Microscope objective; (5) Diamond; (6) 3-axis mount; (7) Long-pass filter; (8) Short-pass filter; (9)
Lens (LA5370); (10) PL detector; (11) 1-axis stage;

oscillate in resonance with the NV spins Larmor frequency (see sec. 1.2.4.1), which is approximately 2.87 GHz (or close
to this value, depending on the magnitude of the static magnetic field applied). To generate arbitrary waveform pulses
in these frequencies one has to employ the technique of wave-mixing. In this technique, an arbitrary waveform pulse is
generated with a lower carrier frequency of 500 MHz (... in this lab. In general any other frequency can be used), and
it is mixed with a constant MW tone at the required frequency minus 500 MHz. As can be verified from trigonometric
identities, when two sine functions mix together (meaning, they multiply each other), one gets a sum of cosines - one
with the sum of sine frequencies, and one with the difference of sine frequencies. So, by mixing the 500MHz arbitrary
waveform pulse with a MW tone at 2.37 GHz (for example), we get two arbitrary waveform pulses - one at a carrier
frequency of 1.87 GHz, and one at a carrier frequency of 2.87 GHz. By filtering out the lower frequency pulse, we are left
with a pulse of the desired frequency.
As a result of the above, the MW setup consists of (see fig. 2.2): (1) a synthesized signal generator (SSG) (8672A
from Keysight Agilent HP) - to generate the MW tone (this component is also referred to as local-oscillator; LO); (2)
an arbitrary waveform generator (AWG) (Wavepond DAx22000-8M from Hunter Micro) - to generate 500 MHz pulses
(PCI card, installed inside the control computer); (3) a MW mixer (ZFM-4212B+ from Mini-Circuits) - to mix these two
together (installed inside the MWs box along with all the following components); (4) a high-pass filter (VHF-2700+;
Mini-Cuircuits) - to filter out the unwanted lower frequency pulse; (5) a MW switch (ZFSWA2-63DRB+; Mini-Cuircuits)
- to make sure the MW pulse is transmitted only when ordered to by the computer; (6) a pre-amplifier (ZX60-6013E-
S+; Mini-Cuircuits) - to amplify slightly the arbitrary MW pulse, so as to compensate for some losses in the previous
components; (7) a variable attenuator (ZX73-2500M-S+; Mini-Cuircuits) - to allow us to control the level of output MW
power (with a manual knob); (8) a power amplifier (ZHL-16W-43-S+; Mini-Cuircuits) that can amplify MWs up to a
power of 16W - to allow us to drive the spins more efficiently (at the highest available power).

Figure 2.2: The MW setup schematics. All components are described in the text.

23
2.3 The control unit
The control unit includes hardware to generate arbitrary waveforms (the AWG that was mentioned earlier), hardware to
control the SSG, hardware to control the timings of the various laser and MW pulses, hardware to acquire (and digitize)
the output voltage from the PL detector, and the software to use all of these (described below).
As was mentioned before, the AWG (Wavepond DAx22000-8M from Hunter Micro) is used to generate the 500 MHz
pulses for mixing with the MW tone from the SSG. It has a time resolution of 0.5 ns, and 58 “memory segments” that
share a total memory of 8 MB. This time resolution allows us to generate any function we would like, as long as it
may be discretized by a 0.5 ns time step. An example for such an arbitrary function is a sine of a 500 MHz frequency,
multiplied by a Gaussian envelope function with a standard deviation of 200 ns. The “memory segments” are used in
experiments where an experimental parameter has to be changed between runs. It is important to remember that there are
only 58 segments available, because it is a limiting factor. For example, we may run an ODMR experiment where in each
measurement the time between the end of the pump laser pulse and the beginning of the readout laser pulse is increased
automatically by 1000 ns, but due to this limitation, we will only be able to increase this time duration by 57,000 ns in a
single experiment. A solution to this limitation has been incorporated in the ESRM software, and it is explained in sec.
2.4.7.
The timings of pulses are set via a “High-Speed Pulse/Pattern Generator” (PulseBlasterESR-PRO, model PBESR-
PRO-500, from SpinCore), which can output voltage pulses at a time resolution of 20 ns to various devices, and make
sure that all timings are synchronized to the same clock. Here it is used to time the output of MW pulses by outputting
voltage pulses of the desired time lengths (at the desired times) into the MW switch (#5 in fig. 2.2), which then opens for
the duration of the voltage pulse and enables the transmission of the MW pulses. It is also used to time the output of the
arbitrary MW pulses, generated by the AWG (#2 in fig. 2.2), and also used to time the output of laser pulses by outputting
voltage pulses into the home-made current driver, which then outputs a current pulse of the same duration into the laser
diode, which produces the laser pulse.
Finally, the output voltage of the PL detector is read out and recorded with an analog to digital converter (ADC) signal
acquisition card (Acqiris, from Agilent), which has a time resolution of 1 ns, and is capable of digitizing voltages of up to
5V in magnitude (in the range: -2.5V to 2.5V).

24
2.4 The ESRM software
The ESRM software is a software package built to control and operate even more sophisticated magnetic-resonance
experimental setups, which has been adapted and simplified to operate in this lab. Therefore, it has many fields that
are disabled, as they have no use in this lab. A short manual of the software is presented below, in which the various
parameters that will be used in this lab are explained.

2.4.1 Launching the software

To start the ESRM software, launch “Labview”, and in the window that opens double click on the “ESRM” project (see
fig. 2.3, #1). This will load the ESRM software, which would take a while to initialize. When finished, a window will
appear (see fig. 2.3, #2), in which you have to locate the item: “main.vi”, and double click on it. This will open the ESRM
software in editing mode. To run it, locate the white arrow icon (see fig. 2.3, #3), and click on it. Now the software is
running, but its parameters are not set properly. To initialize the software parameters, load a previously saved file (fig.
2.3, #4) with parameters from a previously run experiment, or load a template file - prepared by the lab staff - for the
experiment you are about to run. Note that when the program is started, it also opens a Matlab console window. Do not
close this Matlab console window at any point, because this will cause a software crash.

Figure 2.3: The ESRM start procedure: open LabView and load the ESRM project (#1), then open main.vi (#2), then run
the project (#3), and then load a previous file (#4).

2.4.2 The pulse sequence parameters tab

The first tab in the ESRM software is the “Pulse sequence parameters” tab (see fig. 2.4). In this tab the timings of the
various laser and MW pulses are set, as well as the timing for the ADC acquisition window, and the experiment’s repetition
rate. In general, the pulse sequence is configured as a sequence with three MW pulses, separated by two time intervals,
two laser pulses, and one acquisition window. This configuration allows us to perform all the experiments in this lab. To
set the parameters of a pulse, one has to double-click on the red icon of the chosen pulse. This opens the “pulse selection
wizard” (see sec. 2.4.3) which is explained below. Apart from configuring the pulses (#1-3 in fig. 2.4), one can set the
time delays between the pulses (#4-5 in fig. 2.4), the timing of the pump laser (#6 in fig. 2.4), the timing of the readout
laser (#7 in fig. 2.4), and the timing of the acquisition window (#8 in fig. 2.4). Note that all times are in ns, and are
relative to the beginning of the first MW pulse. Also, due to the 20 ns time resolution of the “PulseBlasterESR-PRO”, all
times and pulse lengths should be a multiplicity of 20.
Fig. 2.4 shows an example for a good parameters setting. In this example the pump laser is set to start 2,000,000 ns (2
ms) before the beginning of the first MW pulse (t0 ), and end 300 ns before t0 . Then, a MW pulse of 400 ns in duration
is configured, followed by a 100 ns delay, then a 250 ns MW pulse, then another 100 ns delay, and then another 250 ns
MW pulse (which ends 1,100 ns after t0 ). Then, after a short delay the readout laser starts (1,200 ns after t0 ), and it ends

25
approximately 1 ms later (1,063,000 ns after t0 ). The acquisition window is set to start 100 ns after the readout laser start
time (at 1,300 ns after t0 ), so as to take into account the laser’s response time.
The repetition rate of the experiment is also set in this tab (#10 in fig. 2.4). This field tells the computer how many
measurements should be performed per second. When defining this value one has to take into account the total time one
measurement takes.
For example, in fig. 2.4 the measurement is set to start 2,000,000 ns before t0 , and end 1,063,000 ns after t0 , so it has a
total duration of 3,063,000 ns. This means that the fastest rate in which we could operate would be approximately 484 Hz
(1/duration). It is a good idea to work at a lower rate than the maximal rate, so the repetition rate was set to 400 Hz.
Finally, the type of phase cycling (#9 in fig. 2.4) is also set in this tab; but we will not explain the purpose of phase
cycling here. It should just be considered as a useful tool that will allow us to obtain the ODMR contrast (which requires
subtracting one measurement from another) in real-time. Out of the types of phase cycles available, we will only use here
either “No Phase Cycling”, or “+/- Phase Cycle”. The first option means: the experiment is run exactly as defined. The
second option means: the experiment is run once with the first MW pulse in its 180 degrees phase, and once with the first
MW pulse in its 0 degrees phase, and then the data acquired in the second run is subtracted from the data acquired in the
first run. By utilizing the capabilities of the AWG in an ingenious way, we can employ this phase cycle to measure the
ODMR contrast directly (see sec. 2.4.3 for more details).

1 First MW pulse. Double click on red icon to define.


2 Second MW pulse. Double click on red icon to define.
3 Third MW pulse. Double click on red icon to define.
4 First pulse spacing (between 1st & 2nd MW pulses).
5 Second pulse spacing (between 2nd & 3rd MW pulses).
6 Laser pump start & stop times (in ns).
7 Laser readout start & stop times (in ns).
8 Acquisition window start & stop times (in ns).
Phase cycling options (explained in the text). In this lab
9
only the first two options are used.
10 Repetition rate: number of measurements per second.

Figure 2.4: The ESRM pulse sequence parameters tab. The various configurable fields in this tab are explained in the
table to the right. All timings are relative to the beginning of the first MW pulse.

2.4.3 The pulse selection wizard

The pulse selection wizard allows us to configure the various MW pulses in our sequence. It allows us to choose from a
few pulse types (#1 in fig. 2.5), but here we will only use the types: “sine”, and “arbitrary”.
“Sine” is a regular rectangular pulse that can be defined according to the parameters in fig. 2.5-left. Here, “Amplitude”
(#2) represents the pulse normalized amplitude (set it to 0 if you want to have no pulse at all); “BaseBand Frequency”
(#3) is the carrier frequency, which we typically set to 500 MHz; “Pulse length” (#4) is the desired pulse length, including
delays; and “Pulse delay” (#5) and “End delay” (#6) are, respectively, delays set before and after the pulse. The purpose
of the pulse delays is to make sure we get the desired pulse length. As explained in sections 2.2 & 2.3, to transmit a
MW pulse the computer sends a voltage pulse to the MW switch (#5 in fig. 2.2), which then opens and allows MW
transmission. However, this switch has a response time; it does not open immediately. The pulse, however, is transmitted
from the AWG exactly at the requested time; so in order not to get a partial pulse, we define a delay time at the beginning
of the pulse - when the switch opens, and also at the end of the pulse - when it closes. Typical delay values are 70 ns, and
30 ns, as shown in fig. 2.5-left.

26
In the “arbitrary mode” the only configurable parameters are the pulse amplitude (#1 in fig. 2.5-left), and the arbitrary
pulse path (#8 in fig. 2.5-right). After generating an arbitrary pulse in Matlab, it can be loaded Provby browsing for it
here (in #8). Scripts that will help you generate such pulses are available, and will be referred to when required.
The screenshot in fig. 2.5-right shows an example to what can be done with an arbitrary pulse. Here the pulse was defined
to have no MWs in its 180 degrees phase, while for its 0 degrees phase a 200 ns sine pulse was defined. If we run a pulse
sequence with this pulse as the first MW pulse, and with the “+/- phase cycle”, we will get a real-time measurement of
the ODMR contrast (as explained in sec. 1.4.1 & 2.4.2).
Finally to close this window, always use the “select” button (#7), which also confirms the pulse configurations.

Figure 2.5: The pulse selection wizard window (Left): in the standard “sine” mode, and (Right): in the special “arbitrary”
mode. Various fields and functionality are explained in the text.

2.4.4 The live scope tab


The live scope tab is where the measurement results are shown in real-time. Here, one can set the SSG MW tone (#1 in
fig. 2.6; in units of GHz), set the number of averages (#2-4 in fig. 2.6), and run/stop an experiment (#5 in fig. 2.6). Both
the raw data of the measurement (#7 in fig. 2.6), and the final measurement result (#6 in fig. 2.6; either the time domain,
or the frequency domain) are shown here. There are a few different fields here to define the number of averages, because
they refer to different stages of a measurement. Averages (#2 in fig. 2.6) refers to the earliest stage of the measurement -
immediately after the system has finished running the parameters in the pulse sequence parameters tab (sec. 2.4.2). Each
measurement will repeat and average as many times as set in this field. Round robbins (#3 in fig. 2.6) refers to a later
stage of the measurement - when the system finished running over all of the steps in a pulse sequence with more than
one step. For example: the steps of a phase-cycle (see sec. 2.4.2), or the rows of a script (see sec. 2.4.7). Each of these
sequences will be repeated and averaged upon as many times as set in this field. Continuous averaging (#4 in fig. 2.6)
enables performing even more averages. The logic behind this option is that we can only perform as many averaging in
one second as our repetition rate allows (see sec. 2.4.2). In case we need to perform more averages than that, but also
want the measurement to “refresh” every short while, so we can look on the results in real-time (as they average), then we
can use this option.
For example: let us say we are working at a repetition rate of 240 Hz, and run a pulse sequence with the “+/- phase cycle”.
Let us also assume that we set averaging to 4, and round robbins to 30. In this case, first the sequence will run 4 times
with the first MW pulse in its 180 degrees phase, then it will run again 4 times with the first MW pulse in its 0 degrees
phase. The averaged results of these two steps will be subtracted from each other, and then the process will be repeated 30
times and the results averaged upon. This whole process will take 1 second, since all in all it involves 240 measurements
(N = 4 avg. × 2 steps × 30 round robbins = 240). If we want additional averaging, we will enable continuous averages
and let the system average for as long as needed.

27
Note: especially when measuring a sequence with many steps, it is advisable not to perform too many averages per step,
so the different steps will be close in time to each other, and therefore the experimental conditions in all steps will be
similar.
Note: whenever you require to change various settings in the software (such as pulse sequence timings, or number of
averages), you must stop the live-scope (and wait for it to stop) before doing so. You have to be patient, because there
are running processes that take time to stop! You should understand that the system has a certain response time. When
pressing the run button (#5 in fig. 2.6) the system has to write many instructions both in the PulseBlasterESR-PRO, and
in the AWG memories, which takes time; so the measurement doesn’t start immediately. Failing to allow processes to end
before running other processes can cause a software crash.

1 SSG frequency (in GHz).


2 Number of averaging to perform.
Number of “round robbins” to perform
3
(explained in the text).
Set this checkbox to continuously average on
a measurement. “Averaging index” (below)
4
shows the number of times the measurement
was averaged again.
5 Button to start/stop the measurement.
The live scope time domain measurement
6 results. The tab “Signal - Frequency domain”
shows its Fourier transform.
The live scope time domain measurement raw
7 data. In some cases this is different than the
data shown in #6, and it is useful to have.

Figure 2.6: The ESRM live scope tab. The various configurable fields in this tab are explained in the table to the right.

2.4.5 The system parameters tab

The system parameters tab includes configurations that determine how the system operates (in the “hardware” tab). All
parameters in this tab should always be set as shown in fig. 2.7, except for the “sampling interval” (#1 in fig. 2.7), which
you may change if required. The “sampling interval” field gives a drop-down menu with various values, from 1 ns to 5
µs. The value chosen determines what would be the time interval between subsequent voltage acquisitions by the ADC.
Together with the number of samples per measurement (set in the “imaging” tab; see sec. 2.4.6), these fields determine
what would be the time length of the acquisition window in the “pulse sequence” tab (sec. 2.4.2), and this acquisition
window should be set appropriately.
For example, if we set the number of samples per measurement to 1,000, and set the sampling interval to 1 µs, then our
acquisition window would be 1,000 µs (or: 1,000,000 ns) in length. So, if we started our acquisition window at time:
1,300 ns, we will have to make sure to end it at time: 1,001,300 ns, or later (but not earlier; anyway the acquisition will
finish when sample number 1,000 has been recorded).

2.4.6 The imaging parameters tab

The imaging parameters tab contains only two fields that may interest us (the rest are disabled): #1: “Num. of samples
per one record”, and #2: “Interlaced script” (as shown in fig. 2.8). “Num. of samples per one record” sets how many
acquisition samples there would be per measurement, and it can be any number smaller than the 1024 “Acquiris” samples
that are set in the hardware tab (see fig. 2.7). This field determines the time length of the acquisition window, as was
explained in sec. 2.4.5. The field “Interlaced script” is a button. When it is pressed (and it is green), the system is set to
operate in the “script mode” (see sec. 2.4.7); otherwise it disregards the settings in the scripts tab.

28
Figure 2.7: The ESRM system parameters tab. The values of all fields should be set as in the image. The only field that
you may change is #1: “sampling interval” (explained in the text).

Figure 2.8: The ESRM imaging parameters tab. Only two fields can be controlled here: #1: “Num. of samples per one
record”, and #2: “Interlaced script”; both are explained in the text.

2.4.7 The scripts tab

The scripts tab (fig. 2.9) can be used when required to run measurements where in each measurement some of the param-
eters values change. In such a case, we can let the system change the parameters values automatically for us, instead of
doing it manually.
In general, out of the fields shown in fig. 2.9 (#1), the scripts tab allows us to change - from one measurement (row) to
another - the values of the fields: “Tau”, “Echo start”, “T”, “x pulse mat file”, and “x pulse amplitude” (where x stands for:
“First”, “Second”, and “Third”). Other fields should be the same in all rows, but can be defined by the users according to
their needs. While it is possible to fill the script table manually, one can also populate it using a Matlab file that contains
all the information needed to fill the table. To create such Matlab files, a useful tool, which you may use, has been created
using Matlab, and is explained in sec. 2.4.8.
The fields mentioned above, “Tau”, “Echo start”, and “T” are exactly what they appear to be, as explained in the pulse
sequence parameters tab (sec. 2.4.2); but note that changes to the value of “Echo start” also change the fields “Echo win-
dow stop”, “opdetect_start”, and “opdetect_stop” accordingly. This makes sense, because for example, if we move “Echo
start” by 500 ns we would also want the end of the acquisition window to move by 500 ns, and we would want the readout

29
laser pulse to also move accordingly. The script table also allows us to run experiments where the MW pulses change in
each measurement. This allows us, for example, to run Rabi oscillation measurements (where the pulse length/amplitude
changes), or simply to measure the ODMR contrast as a function of MW pulse frequency. For this purpose we have the
fields “x pulse mat file”, and “x pulse amplitude” (where x stands for: “First”, “Second”, and “Third”). We can prepare
arbitrary waveform pulse files for each line, and put in the field “x pulse mat file” the full path file names of these files,
which the system will then use in each measurement. Similarly, we can set various normalized pulse amplitudes (value of
0 to 1) in the field “x pulse amplitude”, and the system will use these values in the measurements.
The scripts tab has two modes of operation, one of which we will not use, but you should be aware of. In the first mode of
operation, one has to enable script mode (#2 in fig. 2.8), and then run the live scope (#5 in fig. 2.6). In this case the system
runs over as many rows as defined in “N script lines” (#6 in fig. 2.9), and shows the concatenated result in the live scope
as one long measurement. This mode can be problematic, because as written previously, the AWG has a limited number
of memory segments (58 in total); so if we require to run more script lines than possible due to this limitation, we will not
be able to do so. Therefore we do not use this method (and you should be careful not to run the live scope when script
mode is enabled); and instead we use the second mode of operation. In the second mode of operation, one has to enable
script mode (#2 in fig. 2.8), and then run the script with the “Start script” button (#8 in fig. 2.9). In this case the system
will only run on the number of rows defined in field #5 (in fig. 2.9), and when finished show the concatenated result in the
live scope as one long measurement. Next, the system will run over these rows again and perform “continuous averaging”
for as many times as defined in the column “Total averages”. When finished, the system will save the results, and move
on to the next “block” of lines (as defined in #5 in fig. 2.9), and keep on doing so until it has run over the total number
of lines (defined in #4 in fig. 2.9). This way we can perform measurements without being limited by the 58 memory
segments of the AWG.
Regarding fields #6 and #7 (in fig. 2.9), #6 has to always be enabled (green) - it is not used in this lab, and #7 en-
ables/disables an “overlap” work mode. When #7 is disabled (the button is not lit in green), the system is set to its default
work mode: the “overlap” work mode. In this mode, on each block (except the first one) the system also measures the
last line of the previous block as the first line of the current block. This creates an overlap between block measurements
and allows to compare data in neighboring blocks - to correct the results against “drifts” in the experimental conditions.
In this lab, in some measurements we will not use this option (we will enable #7), and in some measurements we will use
this option (so we will disable #7).

1 The script table, with field values for each measurement.


Button to populate the table automatically with data
2
saved in a Matlab file.
The number of rows with data in the table (updates when
3
loading data from Matlab).
4 Total number of script lines to run.
5 Number of script lines to run in a single measurement.
6 Disable T2 script. This has to always be enabled (green).
Enable/disable the “Don’t overlap” option (explained in
7
the text).
Start the script and run it in “blocks” mode (explained in
8
the text).

Figure 2.9: The ESRM scripts tab. The various configurable fields in this tab are explained in the table to the right.

2.4.8 Table generator

The table generator is a tool that helps us generate script tables. To launch it, start Matlab (if it is not running already),
then open the file “main.m” in D:\matlab_scripts\TableGen\ (if it is not opened already), and run it (F5, or with the “play”

30
icon). When asked if Matlab should change the folder to the location of “main.m”, confirm this change. Note: while
working with this tool, do not run other scripts in Matlab until you have closed the tool, or it will disrupt its operation.
Most of the various fields in this tool are explained in fig. 2.10. One part of this tool that requires more explanations
is the “Table pulse parameters” configuration (#16-18 in fig. 2.10), which is used to generate a table with custom made
MW pulses. To use this part of the tool, first choose the pulse you wish to customize from the drop-down menu in #16.
Reminder: in our pulse sequence there are three MW pulses that we can customize; the fourth pulse is not used in this
setup, so you may ignore it. For each pulse you may choose to do no customization by setting it to the “none” option,
in which case the field “x pulse mat file” (x referring to the selected pulse) in the script table will be left blank for all
rows. In this situation, when running the script table, the system will use the MW pulse that was defined manually in the
pulse sequence parameters tab. Otherwise, you may choose for each pulse the “function” option. In this case you need to
either write, or use a previously-made Matlab function that generates the required pulses (as many as the number of table
rows), and returns a list of file names, and a list of pulse amplitudes. In this lab there are various functions already made
to do this job for you. You may find these functions under the folder: D:\matlab_scripts\TableGen\pulse_gen_scripts\,
and choose the function of your needs by pressing the browse button (#17). Each of these previously-made functions
supports additional user defined parameters that may be set in the field “custom parameters” (#18), and allow the users to
control the properties of their pulses. The format of these custom parameters is a standard matlab comma separated list of
variable-name followed by its value.
For example: a function that is supposed to generate pulses with a different amplitude for each pulse may support the
custom parameters: ’initialAmp’,0.02,’ampStep’,0.07 .
More information about the available functions and their parameters will be given in later parts of the lab-manual.

1 Load previously saved parameters.


2 Save the current parameters.
3 Path to the Matlab file save location.
4 Name of the Matlab file that will be loaded in the scripts tab.
5 Number of rows to populate in the script table.
6 Number of averages (constant for all rows).
7 Number of round robbins (constant for all rows).
8 Number of total averages (constant for all rows).
9 Repetition rate (constant for all rows).
10 Initial Tau value (may change between rows).
11 Initial T value (may change between rows).
12 Initial Echo window start value (may change between rows).
13 Tau step (amount of change between rows).
14 T step (amount of change between rows).
15 Echo window step (amount of change between rows).
16 Pulse configurations drop-down menu: choose pulse to configure.
17 Define the pulse with a function (explained in the text).
18 Additional parameters for the pulse function (explained in the text).
19 Generate the table file.

Figure 2.10: The “Table Generator” program, which is run from Matlab as explained in the text. The various configurable
fields in this tab are explained in the table to the right. Fields with no explanation should always be set with the same
value as in the figure.

31
Chapter 3

Experiments

This chapter details the course of the various experiments in this lab. Initially it gives very detailed explanations - to help
you get in business; but as you will progress, the lab manual will be less detailed and more to the point - assuming you
should understand how to operate the experimental setup and software.

3.1 Lab 1 - Introduction


3.1.1 Objectives

• Familiarize yourself with the physical system (NVs in diamond), the experimental setup, and the the ESRM soft-
ware.

• Observe the PL emitted from the sample (with your own eyes).

• Measure the PL as a function of laser pump pulse length, and find the optimal pump time.

• Measure the ODMR signal at zero magnetic field.

3.1.2 Experimental Procedures

1. Prepare your lab folders from the template.

(a) Create your lab folder in the format: D:\SavedFiles\<year[s|w]>\<student_names>\, with the name of the
current semester, and with your names. For example: if Alice and Bob were to take this lab at the winter
semester of 2042, they would create the folder “D:\SavedFiles\2042w\Alice_and_Bob\”.
(b) Copy the contents of D:\student_templates\ into your folder.

2. Setup initialization.

(a) Start the ESRM software according to the instructions in sec. 2.4.1. Also, make sure the SSG is turned on
(see sec. 2.2).
(b) In the ESRM software, load the file: “.\Lab1\Initial_PL_meas.par” from your lab folder.
(c) Make sure you understand the meaning of the various software parameters (you may ignore the MW pulses
parameters for now, as they will not be used at this time). Answer the following questions:
i. What is the optical pumping laser pulse length?
ii. What is the length of the detection window? How many acquisition points is it comprised of, and what is
the time interval between adjacent acquisition points?

32
iii. What is the readout laser pulse length? What is the time difference between its start time and the detection
window start time? Can you think of a reason why they do not start at the same time?
iv. What is the repetition rate? Make sure that it is not too fast for the experimental timings currently set in
the software. Explain your calculations.
v. How many averages (including all forms of averages) is the software configured to perform in each
measurement?
(d) Follow instructions to turn on and operate the optical setup. Adjust the experimental setup, and find the
maximal PL signal according to the optical setup operation instructions.

3. Pump pulse calibration.


To find the optimal pump laser pulse length, you will measure the PL as a function of pump laser pulse length.

(a) Check qualitatively what is the level of the PL for pump pulses of various lengths, and try to determine the
range of pulse lengths for which you will want to perform the calibration measurement. Note that for long
enough pump pulses you should expect to get a constant level of PL (why?). Also, note that for long pump
pulses you may need to lower the measurement repetition rate.
(b) Now perform the quantitative measurement. For each pump pulse length, record the PL as a function of time
by starting the ESRM live-scope, and then stopping it. After stopping the livescope, save the data (File->save
image and parameters) as a file of the form: “.\Lab1\pump_calibration\PL_with_<T>_us_pump_laser.par”,
where “<T>” is the pump pulse length in micro-seconds. Make sure that all your measurements are performed
in the same conditions (apart for the pump pulse length). Note: when starting the live-scope it continuously
performs the measurement requested, so by stopping it one time on the first measurement, and another time on
the fifth measurement, you in fact record the experimental setup response at different conditions. Therefore,
for these measurements it is recommended to set the number of round-robbins to be high enough that a single
measurement will take a few seconds, which will make it easy to stop the live-scope every time on the first
measurement.
(c) Data analysis: start Matlab (the latest version installed on the computer), and load the script:
“\matlab_scripts\process_multiple_LS_data.m” in your root lab folder. Use this script to extract the data
you recorded with the live-scope from the “.mat” files created by the ESRM software when you saved your
measurements. Read the comments in the matlab script, and make sure you configure it appropriately.
(d) From the data analysis, decide what pump pulse length you should use in all experiments from now on.

4. PL measurements as a function of the MW pulse frequency.

(a) Change the parameters in the software so that now the acquisition card will record only 512 data points, with
a time interval of 200 ns between points. Configure the software so that out of these only 500 points will be
used, so that you will get an acquisition window of 100 µs. Change accordingly the readout laser pulse length,
and the detection window length.
(b) Set the pump laser pulse to the length found in the previous measurement, and run the live-scope once, to
make sure the parameters you entered are valid.
(c) Setup the parameters of the first MW pulse (see sec. 2.4.3). Configure it to have a maximal normalized
amplitude (of 1), a frequency of 500 MHz, a length of 300 ns, and pulse delays of 70 ns, and 30 ns.
Considering the center frequency (in the live-scope tab) what will be the actual frequency of this MW pulse?
(d) Turn on the MW setup according to instructions, and afterwards make sure the MW attenuation is minimal.
(e) Perform a qualitative measurement. Run the live-scope, and while it is running try to change the center
frequency by a few MHz and see if you can observe the expected effect of the MW pulse on the level of the
PL. In what MW frequency do you expect to see this effect? How do you expect the PL to be affected by the
MW pulse?

33
(f) Now, perform a quantitative measurement. Set the center frequency to be lower by at least 20 MHz from the
frequency where the ODMR phenomenon is expected (and observed). As before, set the number of round-
robbins so that each measurement will take a few seconds, so you can easily start the live-scope, and stop it
on the first measurement.
(g) Perform the measurement by recording the live-scope, and each time increasing the center frequency by 1
MHz. Each time after stopping the live-scope, save the results as:
“.\Lab1\PL_vs_MW_freq\PL_with_MW_at_<freq>_MHz.par”, where “<freq>” is the actual MW frequency
used in that measurement. Continue with the measurements until covered a frequency range of 40 MHz.
(h) Data analysis. Use the same script as before to extract the live-scope data (configure it accordingly). Consid-
ering your results, you may perform additional measurements at additional MW frequencies, if you think it is
required.

34
3.2 Lab 2 - ODMR measurements
3.2.1 Objectives

• Measure the ODMR contrast directly.

• Perform MW frequency swept ODMR measurements at zero magnetic field, and find the NV’s resonance frequency.

• Perform MW frequency swept ODMR measurements at various magnetic fields, and observe the Zeeman effect.

3.2.2 Experimental Procedures

1. Setup initialization.

(a) Start the ESRM software according to the instructions in sec. 2.4.1. Also, make sure the SSG is turned on
(see sec. 2.2).
(b) In the ESRM software, load the file: “.\Lab1\Initial_PL_meas.par” from your lab folder.
(c) Follow instructions to turn on and operate the optical setup. Adjust the experimental setup, and find the
maximal PL signal according to the optical setup operation instructions.

2. Direct contrast measurement.


To measure the contrast directly, we will follow the method explained in sections 1.4.1, 2.4.2 & 2.4.3.

(a) Load in the ESRM software a “par” file from: “.\Lab1\PL_vs_MW_freq\PL_with_MW_at_<freq>_MHz.par”


(which you saved previously), with a “<freq>” where the PL is minimal. Consult your previous lab results to
decide which file to load.
(b) In these loaded conditions you should be able to observe the ODMR contrast directly. To do so, first you will
need to create an arbitrary MW pulse, defined as a regular 500 MHz sine pulse in the 0 deg phase, and as
“zero” (no pulse) in the 180 deg phase.
i. start Matlab (the latest version installed on the computer), and load the script:
“\matlab_scripts\generate_arb_pulse_for_odmr_contrast.m” (in your root lab folder).
ii. Setup the script configurations according to your needs. Configure the save path to be in the folder:
“.\Lab2\Arb_pulse\”.
iii. Run the script, and then verify that an arbitrary pulse file (mat file) has been generated in the above folder.
iv. In the ESRM software, open the “pulse selection wizard” of the first pulse, and load your arbitrary pulse
(see sec. 2.4.3). Does the pulse look as you expected? What is its frequency? For a given center
frequency, what actual MW frequency will you get with this pulse?
v. Set the phase cycling type to “+/- Phase Cycle”, and run the live-scope. If you haven’t started the MW
setup yet, now is the time to do so.
Do you observe the ODMR contrast? Do the results match your expectations?
vi. Stop the live-scope, and save the ODMR contrast result in the “Lab2” folder (“Save image and parame-
ters”; name the file however you wish).

3. Prepare the setup for measurements with various constant magnetic fields.

(a) Attach the electromagnet (coil) to the base of the sample holder, and secure it in place with two screws from
both sides of the sample holder (ask the instructor for help if you are not sure how to do this).
(b) Measure the coil resistance (ask the lab staff for a multimeter, or ohm-meter), and then calculate what would
be the maximal voltage you should put in the coil, in order not to exceed a power of 1W.
(c) Attach the electromagnet to a voltage source.

35
(d) You may want to repeat the procedures to align the setup and find the maximal PL after attaching the electro-
magnet in place, as this may have caused the setup to move slightly.
(e) Perform a qualitative measurement to find the frequency range for the following measurements. You would
want to be able to observe the full ODMR spectrum even at the maximal value of coil voltage (which you
calculated). So, start the live-scope in the conditions where you observe the ODMR contrast (at zero magnetic
field), and note the center frequency. Next, start to increase the voltage on the electromagnet in small steps,
and each time increase the center frequency until you find the maximal contrast. When you reach the maximal
voltage (which you calculated), note what is the center frequency in which you get the maximal contrast. The
frequency range you will sweep in the following measurements should be a bit larger than twice the center
frequency delta (ODMR contrast frequency at maximal magnetic field minus at zero magnetic field).
(f) Go back to zero magnetic field, set the center frequency to the value that gives maximal contrast at this field,
and stop the live-scope.

4. Frequency swept contrast measurement at zero magnetic field.


Unlike the manual measurement you performed in Lab 1, this time we will let the computer perform the measure-
ment automatically for us. We will create arbitrary pulses of different frequencies for contrast measurement, and
the computer will perform the measurements - each time with a different pulse. To read more on how this is done,
refer to sections 2.4.7 & 2.4.8.

(a) Start the “Table-generator” Matlab application according to the instructions in sec. 2.4.8, then do the follow-
ing:
i. For the Save path, choose: “.\Lab2\Script_tables\Freq_sweep\” (using the Browse button)
ii. Set all parameters (except: Num. of rows, Avg., Round robbins, and Tot. avg.) to equal their defini-
tion in the ESRM software. Note that we do not need to change any of the pulse sequence parameters
dynamically in this experiment, so leave the Dynamic table parameters set to zeros.
iii. Set up Pulse 1 with the function:
“D:\matlab_scripts\TableGen\pulse_gen_scripts\generate_odmr_contrast_MW_freq_sweep.m”.
Also, open this function in Matlab to read and find out which parameters it accepts. The parameters you
will have to define (on “how to” see sec. 2.4.8) are: ’pLen’ (recommended value: 200), ’pStartFreq’
(set to the lowest frequency of the sweep, in MHz), and ’pFreqStep’ (set to the frequency step you want
to perform, in MHz. Recommended value: 1, or less). For example, if in the qualitative measurements
performed earlier you found you’ll need to cover a frequency range of 20 MHz, then set ’pStartFreq’ to
490, and assuming you have set ’pFreqStep’ to 1, then also set the Num. of rows to 21 - to cover the
required frequency range.
iv. Calculate the number of rows required to get the wanted frequency range, considering the values set in
’pStartFreq’, and ’pFreqStep’; and set this value in the field Num. of rows.
v. Set Avg. to 1, and set Round robbins and Tot. avg. according to your needs as follows:
First, understand what is the maximal number of rows that can run in one measurement, considering
the AWG segments limitation, and considering that each row takes two segments due to the use of the
+/- phase cycle. Let us denote this number: nmax . Considering the repetition rate defined in the Table-
generator, calculate how many round robbins could be performed while still getting a measurement of
nmax rows in a second - a few seconds time. Set this value in the Round robbins field. Finally, if you want
to perform additional averaging, set the Tot. avg. field accordingly (for example, to perform ten times
more averaging, set this field to 10).
vi. Save these parameters (button, on the top), so they will be available to you in the future, if you’ll need
them. It is recommended to save them as: “.\Lab2\Script_tables\TGEN_params_Freq_sweep.mat”.
vii. Finally, click on: “Generate Table”, and then verify that the required files have generated in your Save
path. If all seems in order, you may close the Table-generator now.

36
(b) Return to the ESRM software and perform the following:
i. Define the first MW pulse as an arbitrary pulse, and load any-one of the pulses you created with the Table-
generator (these should be in a sub-directory, under the Save path you have set in the Table-generator).
ii. In the “Scripts” tab, load the table file you created. If you followed the above instructions to the word, it
should be in: “.\Lab2\Script_tables\Freq_sweep\table_parameters.mat”.
iii. Set “N Script lines” as the number in “Total Script Rows”. Set “# of lines per acquisition” as the maximal
number of rows that can run in one measurement (nmax ).
iv. Enable the “Interlaced script” in the “Imaging parameters” tab.
v. Run the script with the “Start script” button (in the “Scripts” tab).
Now, as the process starts, the results of measurements from all nmax rows in the current measurement
block will be shown in the live-scope as a single-long measurement. When a measurement block finishes
all its required averaging, the results from that block will be saved automatically in
“C:\Script Output\ScriptRuns\” - in a sub-directory with today’s date.
vi. When the script has finished running over all rows, move (cut & paste) the measurement files to:
“.\Lab2\Script_results\Freq_sweep_Field_<X>V\”, where <X> is the voltage set in the electromagnet (so
it should be <X>=0 in this measurement).

5. Repeat the above measurement (4(b)v & 4(b)vi) for additional magnetic field values. In each measurement increase
the voltage on the electromagnet by 0.1 V, until you reach the maximal allowed voltage that you calculated earlier.

6. Data analysis.

(a) Assist in the Matlab script: “\matlab_scripts\freq_sweep_script_data_analysis.m” in your root lab folder. Con-
figure the script in accordance to the parameters of your experiments, and then run it. You may leave configu-
rations you do not understand as they are, or read the comments in the script to try and understand them better
(or ask the lab instructor for help).
(b) Perform data analysis for each measurement (with different magnetic field values). Each time you run the
script, a dialog pops up where you should select the directory that contains the experiment results you want to
analyze.
(c) For each electromagnetic voltage, calculate the magnitude of the magnetic field where the diamond is placed.
Use the following details. The electromagnet is made out of 400 windings (in total) of a copper wire - 0.53
mm in thickness. These are made out of 10 layers of 40 windings each (so the coil height turns out to be close
to 20 mm), where the innermost layer is winded on a cylinder of an outer diameter of 31 mm. The diamond
in this setup is placed on the cylindrical symmetry axis (z), and is offset from the coil center by X mm (in the
z direction). In the experimental setup in the Physics department X = 1 mm. In the experimental setup in the
Chemistry department X = 3 mm.
(d) Now you can write the magnetic field value at the diamond in the title of each of your measurements.
Can you think of a way to find what was the magnetic field magnitude in each measurement, based on the
measurement data? If so, compare these values to the calculated values (and consider sources of errors).
(e) Another figure that is recommended to include in the lab report is an “image” of all the frequency sweeps as
a function of the magnetic field. In such a figure the y axis should represent the frequency, the x axis should
represent the magnetic field value, and the color coding should represent the ODMR contrast.
Add your measurement results into a single matrix, and plot them as an “image” according to the above
guidelines.
Do the results fit your expectations? How are they related to the Zeeman effect? Explain the image and the
sources of the various ODMR contrasts in it. Identify experimental conditions where the NV center can be
considered a pseudo two level system, and therefore can be used as a qubit.
(f) In the MW frequency swept measurement at zero magnetic field, identify the NV resonance frequency, and
compare it to the value reported in literature.

37
3.3 Lab 3 - ODMR Rabi oscillations
3.3.1 Objectives

• Observe Rabi oscillations of the ODMR contrast.

• Measure Rabi oscillations both as a function of MW pulse length, and as a function of MW pulse amplitude.

• Identify experimental conditions where a pi pulse, and where a pi-half pulse are achieved.

3.3.2 Experimental Procedures

1. Setup initialization.

(a) Start the experimental setup (and software) as usual. Follow the usual procedures to verify the PL intensity
from the setup is optimal.
(b) Load parameters (in the ESRM software) for contrast measurement in “zero” magnetic field, and measure the
contrast, to verify the setup operates as expected.

2. Rabi Oscillations measurements.

(a) Choose a field value (larger than 0), where the system can be considered a quasi two-level system. Next,
set the center frequency to be in resonance with one of the <111> oriented NV center transition frequencies
(remember you are working with a 500 MHz AWG pulse). Consult your previous measurement results to
decide on this field value and on the corresponding center frequency, and set them in the experimental setup.
After setting these values, measure the ODMR contrast in these conditions to verify that the setup operates as
expected.
(b) Start the “Table-generator” according to the instructions in sec. 2.4.8, then do the following:
i. Set up Pulse 1 with the function:
“generate_odmr_contrast_amp_and_length_rabi_oscillations.m”
(in “D:\matlab_scripts\TableGen\pulse_gen_scripts\”).
Also, open this function in Matlab to read and find out which parameters it accepts in the custom param-
eters field.
ii. Decide on the pulse length vector (for example: 10:50:800), and amplitude vector (for example: 0:0.05:1)
that you would like to cover in the following measurements.
The function will generate pulses of the requested lengths for contrast measurement, and per each pulse
length it will fill the table rows with that pulse, but with different amplitudes (as requested). For instance,
in the above example (where: ’ampVec’,0:0.05:1,’pLenVec’,10:50:800), the first 21 table rows will have
a 10 ns pulse with different amplitudes, the next 21 rows will have a 60 ns pulse with different amplitudes,
and so on.
iii. Check how many amplitudes are there in the ’ampVec’ you chose. Let us denote this number as “Namp”.
Make sure that Namp is not larger than the maximal number of rows that can be run in a single block
(due to the segments limitation).
iv. Now, set Num. of rows in accordance with the product of Namp and the number of elements in ’pLenVec’.
v. For the Save path, choose: “.\Lab3\Script_tables\<Sub Folder>\” (using the Browse button), where <Sub
Folder> is a folder name of your choosing.
vi. Run: “Generate Table” to check that the AWG pulses are created appropriately.
vii. In the ESRM software, load as the first pulse the longest AWG pulse you created. If after loading it you
need to change some of the parameters in the pulse sequence, do so, and then verify in the live scope that
the sequence runs well.

38
viii. Now, set all parameters in the table generator to equal their definition in the ESRM software. Set the
number of round robbins, considering the run time of Namp rows, and the total averages according to the
amount of averages you would like to perform.
ix. Save these parameters (button, on the top), so they will be available to you in the future, if you’ll need
them. It is recommended to save them as: “.\Lab3\Script_tables\TGEN_params_rabi_osc.mat” (or a
similar file name).
x. Finally, click on: “Generate Table”, and then verify that the required files have generated in your Save
path. If all seems in order, you may close the Table-generator now.
(c) In ESRM, load the table, and set it to run in blocks of Namp rows. Make sure the total number of rows
(N Script lines) equals to the actual number of rows in the table. Also, make sure that “Don’t Overlap?” is
enabled. Finally, run the table with the “Start script” button.
(d) Data sorting:
The measurement results are saved in “C:\Script Output\ScriptRuns\” - in a sub-folder with today’s date. The
data file names contain the time in which they were saved, so they are chronologically sorted. Data processing
will be done per each script block (or: each file) separately, so you should sort these files according to the
measurements performed.
Move these result files to: “.\Lab3\Script_results\<Sub Folder>”, where <Sub Folder> is a folder name that in-
forms of the measurement conditions. For example, if you worked with a voltage of 0V in the electromagnetic
coil, and a MW frequency of 2,870 MHz, a good name for this folder will be “Coil_0V_Freq_2870MHz”.
In this sub-folder, create additional sub-folders - one for each of the result files, with names that refer to the
pulse lengths used in the measurements, and move each of the result files to its corresponding sub-folder. For
instance, in the example given earlier the pulse lengths vector that was chosen was: 10:50:800, so accordingly
we shall create sub-folders of the form: “pulse_10_ns”, “pulse_60_ns”, etc. (or a similar name). The first
result file should be moved into the first sub-folder, the second file to the second sub-folder, and so on.

3. Repeat these measurements in various experimental conditions (items 2c & 2d in the above list). For example,
choose a different magnetic field value, try to measure Rabi oscillations when in resonance with other NV transi-
tions, or when slightly off-resonance (by a few MHz) with one of the transitions.

4. Data analysis.
Assist in the Matlab script: “\matlab_scripts\rabi_osc_amp_sweep_script_data_analysis.m” in your root lab folder.
Decide which of the experimental results you want to include in your lab-report. It is recommended to include
several results in one graph (such as the contrasts vs. pulse amplitude for various pulse lengths), as long as the
graph is not to crowded (so it is still readable).
In your data analysis consider the following questions: Do the results fit theory? What Rabi frequencies do you get
at various conditions? Which of the experimental conditions you worked in will be optimal for a qubit?
Identify some experimental conditions you would want to use in the following labs, and extract from your data the
pi and pi-half pulse lengths in these conditions.

39
3.4 Lab 4 - Relaxation times
3.4.1 Objectives

• Measure the relaxation times of the NV centers in the diamond sample used in this setup.

3.4.2 Experimental Procedures

1. Setup initialization - as usual.

2. Working conditions.
Choose a field value (larger than zero) to work in, and based on your previous measurements, prepare a pulse
sequence with a pi pulse (of the correct pulse length), to measure the contrast. Then, measure the contrast in the
chosen conditions to verify that the setup is configured correctly.

3. T1 measurement:
There are several ways to measure T1 . Here, we will measure the contrast (with a MW pi pulse) as a function of
time between the end of the optical pump pulse and the beginning of the optical readout pulse (see sec. 1.4.4).

(a) Qualitative measurement.


Measure the contrast for various T values, until you reach a value where the contrast goes down to zero.
For each such measurement, save your ESRM results in “.\Lab4\Qualitative_T1_meas\” as a file with an
appropriate name. Note the following remarks:
• Remember that when increasing T by some value, you have to also increase the timings of the optical
readout pulse, and the acquisition window by the same value.
• It is recommended to change T on a logarithmic scale (and even multiply it by 10 each time).
• Remember that for large T you may need to reduce the Rep. rate.
(b) Prepare the script table.
Now that you found the longest T value you should measure, create your script table for the quantitative
measurements.
i. For the Save path, choose: “.\Lab4\Script_tables\T1_meas\”.
ii. In ESRM, load from “.\Lab4\Qualitative_T1_meas\” the file with the shortest T value you will want to
measure. Next, in the “Table-generator”, fill in all parameters based on the parameters in the ESRM
software, except for the Rep. rate, which should be taken from the sequence with largest T .
iii. Choose the time step (in T ) that you would like to use in your measurement, and enter it in the “T step”
field. Remember to enter the same value also in the “Win. step” field.
iv. Make sure all pulses are defined as “none”. This means the setup will use the pulses as they were defined
in the ESRM pulse sequence.
v. Set the number of rows so that - considering your “T step” - you will reach the intended largest T value
in your script table.
vi. Finally, save the “Table-generator” parameters, and generate the table. When finished, close the “Table-
generator”.
(c) Quantitative measurement.
i. Load the table in the ESRM software, and set it to run in blocks with as many rows as possible (consid-
ering the segments limitation). Make sure the total number of rows (N Script lines) equals to the actual
number of rows in the table. Also, make sure in this case that “Don’t Overlap?” is disabled. Finally, run
the table with the “Start script” button.
ii. When the measurement has finished move the results from “C:\Script Output\ScriptRuns\” to
“.\Lab4\Script_results\T1_meas\”.

40
(d) Data processing.
Assist in the Matlab script: “\matlab_scripts\general_script_data_analysis.m” in your root lab folder. Make
sure you configure it correctly. Remember you ran the script in the “overlap” mode (see sec. 2.4.7). This has
to be taken into consideration in the configurations of the script.
From your measurement results extract T1 .

4. T2 measurement:
To measure T2 we will work with an echo sequence, made of three regular (not arbitrary) pulses ( π2 , π, π
2 ), and
measured with a “+/- Phase cycle” (as explained in sec. 1.4.6).

(a) Qualitative measurement.


i. In the ESRM software: set-up rectangular (sine) pulses of lengths fitting to an ODMR echo sequence.
Remember to include some delays in the beginning and end of each pulse (recommended values: 70 and
30 ns), but note the pulse length includes these delays. So, to get an actual pulse of X ns when the delays
sum up to Y ns, you will have to define a pulse of length: X+Y ns.
ii. Set “T”, and “Tau” to the shortest value possible in our setup: 100 ns (both).
After setting these parameters, verify all other parameters in the sequence are in order, and if not - correct
them.
iii. Run the sequence in the live-scope. Check how many averages you should perform to get a good echo
signal, by enabling the “Continuous averaging” option. Note that the echo signal may be lower than the
contrast you have measured before. Save the result in “.\Lab4\Qualitative_T2_meas\” as a file with an
appropriate name.
iv. Continue with additional qualitative measurements to find the “T” and “Tau” values for which no echo
signal can be observed. Do so by repeating the measurement, each time with a slightly larger value for
“T” and “Tau” (and with “T”=”Tau”). Remember that when you increase “T” by X ns, you have to
also move the readout laser pulse and the acquisition window by 2X ns. For each of these qualitative
measurements, save the results in: “.\Lab4\Qualitative_T2_meas\” with an appropriate file-name.
(b) Prepare the script table.
Now that you found the longest “T” value you should measure, create your script table for the quantitative
measurements.
i. For the Save path, choose: “.\Lab4\Script_tables\T2_meas\”.
ii. In ESRM, load from “.\Lab4\Qualitative_T2_meas\” the file saved initially - with the shortest “T” value.
Next, in the “Table-generator”, fill in all parameters based on the parameters in the ESRM software.
iii. Choose the time step that you would like to use in your measurement (note: 20 ns is the minimal time
step possible in this setup). Enter it in the “T step”, and in the “Tau step” fields. Remember to also enter
in the “Win. step” field twice the step value.
iv. Make sure all pulses are defined as “none”.
v. Set the number of rows so that - considering your “T step” - you will reach the intended largest T value
in your script table.
vi. Finally, save the “Table-generator” parameters, and generate the table. When finished, close the “Table-
generator”.
(c) Quantitative measurement.
i. Load the table in the ESRM software, and set it to run in blocks with as many rows as possible (consid-
ering the segments limitation). Make sure the total number of rows (N Script lines) equals to the actual
number of rows in the table. Also, make sure that “Don’t Overlap?” is disabled. Finally, run the table
with the “Start script” button.
ii. When the measurement has finished move the results from “C:\Script Output\ScriptRuns\” to
“.\Lab4\Script_results\T2_meas\”.

41
(d) Data processing.
Assist in the Matlab script: “\matlab_scripts\general_script_data_analysis.m” in your root lab folder. Make
sure you configure it correctly. Remember you ran the script in the “overlap” mode (see sec. 2.4.7). This has
to be taken into consideration in the configurations of the script.
From your measurement results extract T2 .

5. T2∗ measurement:
To measure T2∗ we will work with an echo sequence, made of three regular (not arbitrary) pulses ( π2 , π, π
2 ), and
measured with a “+/- Phase cycle”; and we will observe the echo envelope (as explained in sec. 1.4.7).

(a) Qualitative measurement.

i. In ESRM, load from “.\Lab4\Qualitative_T2_meas\” the file saved previously - with the shortest “T”
value.
ii. Run the sequence in the live-scope to verify the system is set correctly, and perform as many averages as
you want. Save the result in “.\Lab4\Qualitative_T2star_meas\” as a file with an appropriate name.
iii. Continue with additional qualitative measurements to find the “Tau” values for which no echo signal
can be observed. Do so by repeating the measurement, each time with a slightly larger value for “Tau”
(and with a constant “T”). Remember that when you increase “Tau” by X ns, you have to also move the
readout laser pulse and the acquisition window by X ns. For each of these qualitative measurements, save
the results in: “.\Lab4\Qualitative_T2star_meas\” with an appropriate file-name.

(b) Prepare the script table.


Now that you found the longest “Tau” value you should measure, create your script table for the quantitative
measurements.

i. For the Save path, choose: “.\Lab4\Script_tables\T2star_meas\”.


ii. In ESRM, load from “.\Lab4\Qualitative_T2star_meas\” the file saved initially - with the shortest “Tau”
value. Next, in the “Table-generator”, fill in all parameters based on the parameters in the ESRM software.
iii. Choose the time step that you would like to use in your measurement (note: 20 ns is the minimal time
step possible in this setup). Enter it in the “Tau step” field. Remember to also enter in the “Win. step”
field the same step value.
iv. Make sure all pulses are defined as “none”.
v. Set the number of rows so that - considering your “Tau step” - you will reach the intended largest “Tau”
value in your script table.
vi. Finally, save the “Table-generator” parameters, and generate the table. When finished, close the “Table-
generator”.

(c) Quantitative measurement.

i. Load the table in the ESRM software, and set it to run in blocks with as many rows as possible (consid-
ering the segments limitation). Make sure the total number of rows (N Script lines) equals to the actual
number of rows in the table. Also, make sure that “Don’t Overlap?” is disabled. Finally, run the table
with the “Start script” button.
ii. When the measurement has finished move the results from “C:\Script Output\ScriptRuns\” to
“.\Lab4\Script_results\T2star_meas\”.

(d) Data processing.


Assist in the Matlab script: “\matlab_scripts\general_script_data_analysis.m” in your root lab folder. Make
sure you configure it correctly. Remember you ran the script in the “overlap” mode (see sec. 2.4.7). This has
to be taken into consideration in the configurations of the script.
From your measurement results extract T2∗ .

42
3.5 Lab 5 - Dynamical decoupling
3.5.1 Objectives

• Experiment with DD sequences.

• Observe and quantify the increase in transverse relaxation time due to DD sequences in this experimental setup.

3.5.2 Experimental Procedures

1. Setup initialization - as usual.

2. Working conditions.
Choose a field value (larger than zero) to work in, and based on your previous measurements, prepare a pulse se-
quence with a pi pulse (of the correct pulse length), to measure the contrast. You can use a pulse previously created,
such as those created for Rabi oscillations measurements. Then, measure the contrast in the chosen conditions to
verify that the setup is configured correctly.
It is recommended to choose experimental conditions where the fastest Rabi oscillations were observed, so you
could employ a pi-pulse of the shortest time length possible in the DD sequences to follow.
In the conditions chosen, what is the length of a pi-half pulse?

3. Prepare the script table for DD sequences.

(a) Prepare whole DD sequences in a single pulse (Pulse 1). Use the function:
“generate_odmr_contrast_DD_sequences_const_N_var_Tau.m”
(in “D:\matlab_scripts\TableGen\pulse_gen_scripts\”).
Open this function in Matlab to read and find out what parameters it accepts in the custom parameters field.
The most important parameters to define here are: ’pLenPiHalf’, ’NCycles’, ’tauStart’, ’tauStep’.
Initially, use the above function to generate CPMG-N sequences with a constant N and varying “Tau” (time
interval between pulses). Start with measurements with N=1, and later repeat the following procedures to
perform measurements of sequences with N=2, and so on (up to an N value of your choosing).
Note: the measurement will be performed by running a full sequence in “Pulse 1” with the “+/- Phase Cycle”,
while the other pulses will be defined as short, zero-amplitude pulses. The varying “Tau” means that “Pulse
1” will have varying lengths in this case, while all other experimental parameters stay constant. In this case
we will not use the “T”, and “Tau” parameters of the sequence. They will stay constant.
The above function has additional capabilities. Apart from creating CPMG sequences, it can also create other
DD sequences. You may inspect the script to learn what other sequences it supports, and later (if time permits)
you may run experiments with other DD sequences.
(b) For the Save path, choose: “.\Lab5\Script_tables\CPMG_<N>\”, with <N> the number of pi pulses in the
sequence to be generated (if the folder does not exist, create it!).
(c) Set the number of rows in the table as desired, taking into consideration the values of ’tauStart’ and ’tauStep’
you have set, and the “final tau” value you would like to achieve.
(d) Click on “Generate Table”, to generate the sequence pulses.
(e) In ESRM, load the longest pulse you generated into “Pulse 1”, and change all of the sequence timings to
comply with this pulse. Run the sequence in the live-scope to verify that the sequence parameters are set
properly.
(f) Next, set all parameters in the table generator to equal their definition in the ESRM software. Note that here
we are not using any of the “Dynamic table parameters”, so these should be set to zero.
(g) Finally, save the “Table-generator” parameters, and generate the table. When finished, close the “Table-
generator”.

43
4. Run the DD sequence, and perform data analysis.

(a) Load the table in the ESRM software, and set it to run in blocks with as many rows as possible (considering
the segments limitation). Make sure the total number of rows (N Script lines) equals to the actual number of
rows in the table. Also, make sure that “Don’t Overlap?” is disabled. Finally, run the table with the “Start
script” button.

(b) When the measurement has finished move the results from “C:\Script Output\ScriptRuns\” to
“.\Lab5\Script_results\CPMG_<N>\”, with <N> the number of pi pulses in the sequence.

(c) Data processing.


Assist in the Matlab script: “\matlab_scripts\general_script_data_analysis_cpmg.m” in your root lab folder.
Make sure you configure it correctly. Remember you ran the script in the “overlap” mode (see sec. 2.4.7).
This has to be taken into consideration in the configurations of the script.
From your measurement results extract T2 .
Try to extract T2 for each CPMG-N measurement you perform (with various N values), and show an increase
in T2 with the increase in N (relative to T2 of a regular echo sequence).  
It may be easier to extract T2 from your data by using the fitting function: y = a · exp − x−x
T2
0
+ c, where x0 is
the x value (time from first pi-half pulse to last pi-half pulse) of the first data point, and a, c, T2 are the fitting
parameters.
Plot your results (T2 vs. N), with error-bars corresponding to the fit’s confidence bounds. Can fit these results
to some function? If so, include the fit in your plot, along with the fit formula and parameter values.
Find in literature examples for DD measurements with NVs in diamonds, and check if the factor of improve-
ment in T2 as a function of N is similar to what you measured. Discuss the reasons for discrepancies (if any)
between your results and what is shown in literature. You may assist in ref. [11] for more information on DD.

5. Repeat the above procedures (3 & 4) with various N (number of pi pulses).

6. Additional measurements.
Perform some, or all of the following measurements (as time permits), in order of appearance. In each case perform
the relevant data analysis and try to reach some conclusions regarding your results.

(a) CPMG-N sequences with constant “Tau” and varying N.


Use the function: “generate_odmr_contrast_cpmg_sequences_const_Tau_var_N.m”
(in “D:\matlab_scripts\TableGen\pulse_gen_scripts\”) to generate these pulse sequences.
Open this function in Matlab to read and find out what parameters it accepts in the custom parameters field.
The most important parameters to define here are: ’pLenPiHalf’, ’N_vec’, ’tauVal’.
Create a script table and perform measurements according to the procedures of the previous measurements (3
& 4, with relevant adjustments). Assist in “\matlab_scripts\general_script_data_analysis.m” for data analysis.

(b) XY-4 measurements (see [11] for more information on this DD sequence).
Create a script table and perform measurements according to the procedures of the previous measurements (3
& 4, with relevant adjustments). Assist in “\matlab_scripts\general_script_data_analysis.m” for data analysis.

(c) KDD measurements (see [11] for more information on this DD sequence). Same procedures as above.

(d) CPMG-echo measurements.


Another interesting measurement you may perform is a CPMG-N measurement where the first N-1 pi pulses
are separated by a constant time interval (that doesn’t change from one measurement to another), while the
time interval between the N-1 to the Nth pi pulse does vary. This measurement is equivalent to performing a
DD sequence for some time (CPMG in this case), and immediately after it - measuring an echo decay. It may
be interesting to compare such a measurement (with N pulses) to a “regular” CPMG-N decay measurement
(with the same constant N, and varying “Tau”). Follow the same procedures as above.

44
3.6 Lab 6 - Single qubit operations and QST
3.6.1 Objectives

• Perform single qubit operations with combinations of properly chosen MW pulses.

• Perform QST of the qubit after various single qubit operations.

• Estimate the fidelity of various single qubit operations in this setup.

3.6.2 Experimental Procedures

Here you will measure the state of the density matrix after performing the operations: I, X, QH, and H, where I is the
identity operation, X is the NOT gate, QH is the Quasi-Hadamard gate, and H is the full Hadamard gate. You will perform
these operations on the initialized state, and then measure the expectation values hσx i , σy , hσz i to reconstruct the density
matrix after these operations. For each of these operations you will use the script-table to perform four measurements
one after the other: a measurement of the contrast - to use for normalization, and three other measurements - to find
hσx i , σy , hσz i. In this lab you will not get a ready Matlab script that generates the pulse sequences for you; rather you
will have to create the pulse sequences on your own.

1. Setup initialization - as usual.

2. Working conditions.
Choose a field value (larger than zero) to work in, and based on your previous measurements, prepare a pulse se-
quence with a pi pulse (of the correct pulse length), to measure the contrast. You can use a pulse previously created,
such as those created for Rabi oscillations measurements. Then, measure the contrast in the chosen conditions to
verify that the setup is configured correctly.
It is recommended to choose experimental conditions where the fastest Rabi oscillations were observed, so you
could employ a pi-pulse of the shortest time length possible in the pulse sequences to follow.
In the conditions chosen, what is the length of a pi-half pulse?

3. Prepare the script table for QST measurements.

(a) Prepare whole QST sequences in a single pulse (Pulse 1). Use the function:
“.\Lab6\Pulse_gen_scripts\generate_odmr_tomography_sequences.m”
Open this function in Matlab to read and find out what parameters it accepts in the custom parameters field.
The most important parameters to define here are: ’pLenPiHalf’, and ’gateType.
The function is not complete, and you will have to edit it before you can run it. The script section you will
have to edit is between lines 105 to 328, with lines that need editing marked with: “% <- - - - Define the pulse
sequence”. As an example, part of the pulse sequences needed in order to perform QST after the X gate are
programmed in the script. These lines are marked with: “% <- - - - example”. Make sure you understand from
the examples how to properly program the pulse sequences you will need, and then edit the appropriate lines.
You will have to define correctly the pulse sequences needed to perform QST after each of the four quantum
gates: I, X, QH, and H.
(b) For the Save path, choose the appropriate sub folder from: “.\Lab6\Script_tables\”.
(c) Set the number of rows in the table to four.
(d) Click on “Generate Table”, to generate the sequence pulses.
(e) In ESRM, load the longest pulse you generated into “Pulse 1”, and change all of the sequence timings to
comply with this pulse. Run the sequence in the live-scope to verify that the sequence parameters are set
properly.

45
(f) Next, set all parameters in the table generator to equal their definition in the ESRM software.
(g) Finally, save the “Table-generator” parameters, and generate the table. When finished, close the “Table-
generator”.

4. For each quantum gate, run the QST measurement, and perform data analysis.

(a) Load the relevant table in the ESRM software, and set “N script lines”, and “# of lines per acquisition” to 4;
then run the table with the “Start script” button.
(b) When the measurement has finished move the results from “C:\Script Output\ScriptRuns\” to the appropriate
sub folder in “.\Lab6\Script_results\”.
(c) Data processing.
You will have to perform data processing on your own, but you may assist in the Matlab script:
“\matlab_scripts\general_script_data_analysis_tomography.m” (in your root lab folder) to extract the mea-
surements results from their mat files.
For each of your measurement results, use the measured hσx i , σy , hσz i to reconstruct the density matrix
of the system’s state after the applied quantum gate. Compare it to the theoretical density matrix after that
operation, and calculate the fidelity. Make sure to present both the measured, and theoretic density matrix
elements in a way that allows for a visual comparison between these elements (such as in the example in fig.
1.7), and also write down the fidelity.
Is there a good match between theoretic and measured results? If not, what do you suggest is the reason for
that?

46
Questions

1. Consider the NV spin Hamiltonian, and assume it consists of only the ZFS and the Zeeman terms. Assuming the
magnetic field in the Zeeman Hamiltonian is parallel to the NV z-axis, write the expressions for E(ms , B) - the
energy of the spin projection ms as a function of magnetic field B (for all spin projections). Write also expressions
for the resonance frequencies of the ms = 0 −→ ms = ±1 transitions ans a function of magnetic field.

2. Prove that U j (t) ≡ e−iω1 t·S j = cos ω21 t · I − i · sin ω21 t · σ j , where j ∈ {x, y, z}, S j = 12 σ j , and σ j is a Pauli matrix.
 

3. a) Find an expression for the expectation value hσx i of a general TLS (as given in eq. (1.7)).
 † 
b) Find an expression for the rotated density matrix ρy = Ry π2 ρRy π2 , where Ry π2 is a π
2 rotation around the
y axis, and ρ is the density matrix of the general TLS.
c) Show that the expectation value hσz iρy of the rotated density matrix (ρy ) is equal (up to some global phase) to
hσx i of the general TLS.
 †
4. Let ρx = Rx π2 ρRx π2 be a rotated density matrix of the general TLS (rotated by π2 around the x axis). Repeat
the above reasoning to show that the expectation value hσz iρx of the rotated density matrix (ρx ) is equal to σy of
the general TLS.

5. What is the working distance (WD) of the microscope objective? Based on this, where should the diamond be
placed, relative to the objective, so that a maximal amount of laser power can reach it?

6. The PL detector is an Avalanche Photo Diode (APD). Explain what is an APD, and how does it work.

7. What is the maximal power of light that can enter the PL detector (in our setup) without harming it? How will you
be able to identify in the experiment that this maximal power of light has been reached, and make sure you don’t
exceed it?

8. Let us assume that we want to perform a script measurement of 300 lines, with a 1160 Hz repetition rate, and with
4 averages per row. Let us also assume that we want to run a pulse sequence with the “+/- phase cycle”, and that
we want to do overall 4000 averages per measurement, but we want the script to take just 1 second to average over
all of the lines in one “block”. Answer the following:

(a) What is the maximal number of lines you may define per “block” (field #5 in fig. 2.9)?
(b) Assuming we set the number of lines per block according to the previous answer, to what values should we
set “round robbins”, and “total averages” in the table, so we get just 1 second of run time per block iteration,
but eventually have 4000 averages per block (after continuously averaging)?

47
Bibliography

[1] C. Müller, Sensing single spins with colour centres in diamond. PhD thesis, Ulm University, 2016.

[2] M. W. Doherty, N. B. Manson, P. Delaney, F. Jelezko, J. Wrachtrup, and L. C. L. Hollenberg, “The nitrogen-vacancy
colour centre in diamond,” Physics Reports, vol. 528, pp. 1–45, jul 2013.

[3] M. Drake, E. Scott, and J. A. Reimer, “Influence of magnetic field alignment and defect concentration on nitrogen-
vacancy polarization in diamond,” New Journal of Physics, vol. 18, no. 1, 2016.

[4] A. Schweiger and G. Jeschke, Principles of Pulse Electron Paramagnetic Resonance. Oxford University Press,
2001.

[5] C. Slichter, Principles of Magnetic Resonance. Springer Series in Solid-State Sciences, Springer Berlin Heidelberg,
2013.

[6] M. Nielsen and I. Chuang, Quantum Computation and Quantum Information. Cambridge Series on Information and
the Natural Sciences, Cambridge University Press, 2000.

[7] C. Cohen-Tannoudji, B. Diu, and F. Laloe, Quantum mechanics. Wiley, 1977.

[8] S. Steinert, F. Dolde, P. Neumann, A. Aird, B. Naydenov, G. Balasubramanian, F. Jelezko, and J. Wrachtrup, “High
sensitivity magnetic imaging using an array of spins in diamond,” Review of Scientific Instruments, vol. 81, no. 4,
pp. 1–6, 2010.

[9] J. Weil and J. Bolton, Electron Paramagnetic Resonance: Elementary Theory and Practical Applications. Wiley,
2007.

[10] R. Jozsa, “Fidelity for mixed quantum states,” Journal of Modern Optics, vol. 41, no. 12, pp. 2315–2323, 1994.

[11] A. M. Souza, G. A. Álvarez, and D. Suter, “Robust dynamical decoupling,” Philosophical Transactions of the Royal
Society A: Mathematical, Physical and Engineering Sciences, vol. 370, pp. 4748–4769, oct 2012.

48

You might also like