DOI: 10.7910/dvn/oyunj1
title: Replication Data for: Rydberg-atom-based system for benchmarking millimeter-wave automotive radar chips

description: &lt;h1&gt;Simulation Data&lt;/h1&gt;

The &lt;code&gt;waveplate.hdf5&lt;/code&gt; file stores the results of the FDTD simulation that are visualized in Fig. 3 b)-d). The simulation was performed using the Tidy 3D Python library and also utilizes its methods for data visualization. The following snippet can be used to visualize the data:

&lt;code&gt;&lt;pre&gt;
import tidy3d as td
import matplotlib.pyplot as plt
sim_data: td.SimulationData = td.SimulationData.from_file(f"waveplate.hdf5")
fig, axs = plt.subplots(1, 2, tight_layout=True, figsize=(12, 5))
for fn, ax in zip(("Ex", "Ey"), axs):
 sim_data.plot_field("field_xz", field_name=fn, val="abs^2", ax=ax).set_aspect(1 / 10)
 ax.set_xlabel("x [$\mu$m]")
 ax.set_ylabel("z [$\mu$m]")
fig.show()
&lt;/code&gt;&lt;/pre&gt;

&lt;h1&gt;Measurement Data&lt;/h1&gt;

Signal data used for plotting Fig. 4-6. The data is stored in NetCDF providing self describing data format that is easy to manipulate using the Xarray Python library, specifically by calling &lt;code&gt;xarray.open_dataset()&lt;/code&gt;
&lt;br&gt;
Three datasets are provided and structured as follows:
&lt;ol&gt;
&lt;li&gt;The &lt;code&gt;electric_fields.nc&lt;/code&gt; dataset contains data displayed in Fig. 4. It has 3 data variables, corresponding to the signals themselves, as well as estimated Rabi frequencies and electric fields. The &lt;code&gt;freq&lt;/code&gt; dimension is the x-axis and contains coordinates for the Probe field detuning in MHz. The &lt;code&gt;n&lt;/code&gt; dimension labels different configurations of applied electric field, with the 0th one having no EHF field.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;detune.nc&lt;/code&gt; dataset contains data displayed in Fig. 6. It has 2 data variables, corresponding to the signals themselves, as well as estimated peak separations, multiplied by the coupling factor. The &lt;code&gt;freq&lt;/code&gt; dimension is the same, while the &lt;code&gt;detune&lt;/code&gt; dimension labels different EHF field detunings, from -100 to 100 MHz with a step of 10.&lt;/li&gt;
&lt;li&gt; The &lt;code&gt;waveplates.nc&lt;/code&gt; dataset contains data displayed in Fig. 5. It contains estimated Rabi frequencies calculated for different waveplate positions. The angles are stored in radians. There is the quarter- and half-waveplate to choose from. &lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;h2&gt;Usage examples&lt;/h2&gt;
&lt;h3&gt;Opening the dataset&lt;/h3&gt;
&lt;code&gt;&lt;pre&gt;
import matplotlib.pyplot as plt
import xarray as xr

electric_fields_ds = xr.open_dataset("data/electric_fields.nc")
detuned_ds = xr.open_dataset("data/detune.nc")
waveplates_ds = xr.open_dataset("data/waveplates.nc")
sigmas_da = xr.open_dataarray("data/sigmas.nc")
peak_heights_da = xr.open_dataarray("data/peak_heights.nc")
&lt;/pre&gt;&lt;/code&gt;
&lt;h3&gt;Plotting the Fig. 4 signals and printing params&lt;/h3&gt;
&lt;code&gt;&lt;pre&gt;
fig, ax = plt.subplots()
electric_fields_ds["signals"].plot.line(x="freq", hue="n", ax=ax)
print(f"Rabi frequencies [Hz]: {electric_fields_ds['rabi_freqs'].values}")
print(f"Electric fields [V/m]: {electric_fields_ds['electric_fields'].values}")
fig.show()
&lt;/pre&gt;&lt;/code&gt;
&lt;h3&gt;Plotting the Fig. 5 data&lt;/h3&gt;
&lt;code&gt;&lt;pre&gt;
(waveplates_ds["rabi_freqs"] ** 2).plot.scatter(x="angle", col="waveplate")
&lt;/pre&gt;&lt;/code&gt;

&lt;h3&gt;Plotting the Fig. 6 signals for chosen detunes&lt;/h3&gt;

&lt;code&gt;&lt;pre&gt;
fig, ax = plt.subplots()
detuned_ds["signals"].sel(
 detune=[
 -100,
 -70,
 -40,
 40,
 70,
 100,
 ]
).plot.line(x="freq", hue="detune", ax=ax)
fig.show()
&lt;/pre&gt;&lt;/code&gt;
&lt;h3&gt;Plotting the Fig. 6 inset plot&lt;/h3&gt;
&lt;code&gt;&lt;pre&gt;
fig, ax = plt.subplots()
detuned_ds["separations"].plot.scatter(x="detune", ax=ax)
ax.plot(
 detuned_ds.detune,
 np.sqrt(detuned_ds.detune**2 + detuned_ds["separations"].sel(detune=0) ** 2),
)
fig.show()
&lt;/pre&gt;&lt;/code&gt;

&lt;h3&gt;Plotting the Fig. 7 calculated peak widths&lt;/h3&gt;
&lt;code&gt;&lt;pre&gt;
sigmas_da.plot.scatter()
&lt;/pre&gt;&lt;/code&gt;

&lt;h3&gt;Plotting the Fig. 8 calculated detuned smaller peak heights&lt;/h3&gt;
&lt;code&gt;&lt;pre&gt;
peak_heights_da.plot.scatter()
&lt;/pre&gt;&lt;/code&gt;

&lt;p&gt;This research was funded in whole or in part by National Science Centre, Poland grant No. 2021/43/D/ST2/03114.&lt;/p&gt;