mirror of
https://gitlab.science.ru.nl/mthesis-edeboone/m.internship-documentation.git
synced 2024-12-22 21:13:32 +01:00
Merge branch 'final-presentation'
This commit is contained in:
commit
8aba2339dc
64 changed files with 1650 additions and 221 deletions
|
@ -10,56 +10,68 @@
|
|||
\begin{document}
|
||||
\chapter{Disciplining with a Beacon}
|
||||
\label{sec:disciplining}
|
||||
Time synchronisation for autonomous stations is typically performed with a \gls{GNSS} clock in each station.
|
||||
The time accuracy supplied by the \gls{GNSS} clock ($\sim 10 \ns$) is not enough to do effective interferometry.\Todo{citation?}
|
||||
To cross the $1 \ns$ accuracy threshold an additional timing mechanism is required.
|
||||
The detection of extensive air showers uses detectors distributed over large areas.%<<<
|
||||
Solutions for precise timing over large distances exist for wire setups, i.e.~White Rabbit.
|
||||
However, the combination of large distances and the number of detectors make it prohibitively expensive to realise such a setup.
|
||||
For this reason, the time synchronisation of these autonomous stations is typically performed with a \gls{GNSS} clock in each station.
|
||||
\\
|
||||
|
||||
While obtaining a competitive resolution of the atmospheric shower depth \Xmax with radio interferometry requires an inter-detector synchronisation of better than a few nanoseconds (see Figure~\ref{fig:xmax_synchronise}),
|
||||
the synchronisation defect in \gls{AERA} was found to range between a few nanoseconds upto multiple tens of nanoseconds over the course of a single day (see~\cite[Figure~3]{PierreAuger:2015aqe}).\Todo{copy figure?}
|
||||
Therefore, an extra timing mechanism must be provided to employ radio measurements for \Xmax~determination in these experiments.
|
||||
\\
|
||||
|
||||
|
||||
% High sample rate -> additional clock
|
||||
For radio antennas, an in-band solution can be created using the antennas themselves together with a transmitter.
|
||||
This is directly dependent on the sampling rate of the detectors.
|
||||
With the position of a transmitter known, time delays can be inferred and thus the arrival times at each station individually.
|
||||
Such a mechanism has been previously employed in \gls{AERA} reaching an accuracy better than $2 \ns$ \cite{PierreAuger:2015aqe}.
|
||||
For radio antennas, an in-band solution can be created using the antennas themselves by emitting a radio signal from a transmitter.
|
||||
With the position of the transmitter known, the time delays can be inferred and thus the arrival times at each station individually.
|
||||
Such a mechanism has been succesfully employed in \gls{AERA} reaching an accuracy better than $2 \ns$ \cite{PierreAuger:2015aqe}.
|
||||
\\
|
||||
Apart from introducing (and controlling) the transmitter ourselves, other sources could introduce similar usable signals.
|
||||
However, for such signals to work, they must have a well-determined and stable origin.
|
||||
\\
|
||||
|
||||
% Discrete vs Continuous
|
||||
The nature of the transmitted radio signal, hereafter beacon, affects both the mechanism of reconstructing the timing information and the measurement of the radio signal for which the antennas have been designed..
|
||||
The nature of the transmitted radio signal, hereafter beacon, affects both the mechanism of reconstructing the timing information and the measurement of the radio signal for which the antennas have been designed.
|
||||
Depending on the stability of the station clock, one can choose for employing a continous beacon (sine) or one that is emitted at some interval (pulse).
|
||||
This influences the tradeoff between methods.
|
||||
\\
|
||||
|
||||
% outline of chapter
|
||||
In the following, the synchronisation scheme for both the continuous and intermittent beacon are elaborated upon.
|
||||
\Todo{further outline}
|
||||
In the following, the synchronisation scheme for both the continuous and the recurrent beacon are elaborated upon.
|
||||
Before going in-depth on the synchronisation using either of such beacons, the timing problem\Todo{rephrase} common to both scenarios is worked out.%>>>
|
||||
|
||||
\section{Timing Problem} %<<<
|
||||
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=0.6\textwidth,height=0.7\textheight,keepaspectratio]{beacon/antenna_setup_two.pdf}
|
||||
\caption{
|
||||
An example setup of two antennas ($A_i$) at different distances from a transmitter ($T$).
|
||||
}
|
||||
\label{fig:beacon_spatial_setup}
|
||||
\end{figure}
|
||||
|
||||
The setup of an additional in-band synchronisation mechanism using a transmitter reverses the method of interferometry.\todo{Requires part in intro about IF}
|
||||
\\
|
||||
\section{The Timing Problem} %<<<
|
||||
|
||||
% time delay
|
||||
The distance between the transmitter $T$ and the antenna $A_i$ incur a time delay $(\tProp)_i$ caused by the finite propagation speed of the radio signal over these distances.
|
||||
An in-band solution for synchronising the detectors is effectively a reversal of the method of interferometry in Section~\ref{sec:interferometry}.
|
||||
The distance between the transmitter $T$ and the antenna $A_i$ incur a time delay $(\tProp)_i$ caused by the finite propagation speed of the radio signal (see Figure~\ref{fig:beacon_spatial_setup}).
|
||||
\\
|
||||
|
||||
Since the signal is an electromagnetic wave, its instantanuous velocity $v$ depends solely on the refractive index~$n$ of the medium as $v = \frac{c}{n}$.
|
||||
In general, the refractive index of air is dependent on factors such as the pressure and temperature of the air the signal is passing through and the frequencies of the signal.
|
||||
However, in many cases, the refractive index can be taken constant over the trajectory to simplify models.
|
||||
|
||||
As such, the time delay due to propagation can be written as
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=0.6\textwidth,height=0.4\textheight,keepaspectratio]{beacon/antenna_setup_two.pdf}
|
||||
\caption{
|
||||
Schematic of two antennas ($A_i$) at different distances from a transmitter ($T$).
|
||||
Each distance incurs a specific time delay $(\tProp)_i$.
|
||||
The maximum time delay difference for these antennas is proportional to the baseline distance (green line).
|
||||
\Todo{use `real' transmitter and radio for schematic}
|
||||
}
|
||||
\label{fig:beacon_spatial_setup}
|
||||
\end{figure}
|
||||
|
||||
As such, the time delay due to the propagation from the transmitter to an antenna can be written as
|
||||
\begin{equation}
|
||||
\label{eq:propagation_delay}
|
||||
\phantom{,}
|
||||
(\tProp)_i = \frac{ \left|{ \vec{\small T} - \vec{ \small A_i} }\right| }{c} n_{eff}
|
||||
(\tProp)_i = \frac{ \left|{ \vec{x}_{T} - \vec{x}_{A_i} }\right| }{c} n_\mathrm{eff}
|
||||
,
|
||||
\end{equation}
|
||||
where $n_{eff}$ is the effective refractive index over the trajectory of the signal.
|
||||
where $n_\mathrm{eff}$ is the effective refractive index over the trajectory of the signal.
|
||||
\\
|
||||
|
||||
If the time of emitting the signal at the transmitter $\tTrueEmit$ is known, this allows to directly synchronise the transmitter and an antenna since
|
||||
|
@ -122,34 +134,32 @@ Thus, measuring $(\tMeasArriv)_i$ and determining $(\tProp)_i$ for two antennas
|
|||
As the mismatch is the difference between the antenna clock deviations, this scheme does not allow to uniquely attribute the mismatch to one of the clock deviations $(\tClock)_i$.
|
||||
Instead, it only gives a relative synchronisation between the antennas.
|
||||
\\
|
||||
This can be resolved by knowledge on the $\tTrueEmit$ of the transmitter.
|
||||
This can be resolved by knowledge on the $\tTrueEmit$ of the transmitter and exploiting \eqref{eq:transmitter2antenna_t0}.
|
||||
However, for our purposes relative synchronisation is enough.
|
||||
|
||||
|
||||
\bigskip
|
||||
|
||||
|
||||
% extending to array
|
||||
In general, we are interested in synchronising an array of antennas.
|
||||
As \eqref{eq:synchro_mismatch_clocks} applies for any two antennas in the array, all the antennas that record the signal can determine the synchronisation mismatches simultaneously.
|
||||
\\
|
||||
The mismatch terms for any two pairs of antennas sharing a single antenna $\{ (i,j), (j,k) \}$ allows to find the closing mismatch term for $(i,k)$ since
|
||||
The mismatch terms for any two pairs of antennas sharing one antenna $\{ (i,j), (j,k) \}$ allows to find the closing mismatch term for $(i,k)$ since
|
||||
\begin{equation*}
|
||||
\label{eq:synchro_closing}
|
||||
(\Delta \tClock)_{ij} + (\Delta \tClock)_{jk} + (\Delta \tClock)_{ki} = 0
|
||||
\end{equation*}
|
||||
Taking one antenna as the reference antenna with $(\tClock)_r = 0$, the mismatches across the array can be determined by applying \eqref{eq:synchro_mismatch_clocks} over consecutive pairs of antennas and thus all clock deviations $(\tClock)_i$.
|
||||
\\
|
||||
|
||||
% floating offset, minimising total
|
||||
\Todo{floating offset, matrix minimisation?}
|
||||
%\Todo{floating offset, matrix minimisation?}
|
||||
|
||||
|
||||
|
||||
% signals to send, and measure, (\tTrueArriv)_i.
|
||||
In the former, the mechanism of measuring $(\tMeasArriv)_i$ from the signal has been deliberately left out.
|
||||
The nature of the beacon allows for different methods to determine $(\tMeasArriv)_i$.
|
||||
In the following, two approaches for measuring $(\tMeasArriv)_i$ are examined.
|
||||
\Todo{reword towards next sections?}
|
||||
In the following sections, two approaches for measuring $(\tMeasArriv)_i$ are examined.
|
||||
|
||||
%%%% >>>
|
||||
%%%% Pulse
|
||||
|
@ -160,20 +170,20 @@ If the stability of the clock allows for it, the synchronisation can be performe
|
|||
The tradeoff between the gained accuracy and the timescale between synchronisation periods allows for a dead time of the detectors during synchronisation.
|
||||
The dead time in turn, allows to emit and receive strong signals such as a single pulse.
|
||||
\\
|
||||
|
||||
Schemes using such a ``ping'' can be employed between the antennas themselves.
|
||||
Appointing the transmitter role to differing antennas additionally opens the way to calibrating the antennas in the array.
|
||||
\\
|
||||
Note the following method works fully within the time-domain.
|
||||
|
||||
% conceptually simple + filterchain response
|
||||
The detection of a pulse is conceptually simple.
|
||||
The detection of a pulse is conceptually simple, and can be accomplished while working fully in the time-domain.
|
||||
Before recording a signal at a detector, it is typically put through a filterchain which acts as a bandpass filter.
|
||||
This causes the sampled pulse to be stretched in time (see Figure~\ref{fig:pulse:filter_response}).
|
||||
\\
|
||||
|
||||
The response of a filter is characterised by the response to an impulse.
|
||||
In Figure~\ref{fig:pulse:filter_response}, an impulsive signal is filtered using a Butterworth filter which bandpasses the signal between $30\MHz$ and $80\MHz$.
|
||||
The resulting signal can be used as a template to match against a measured waveform.
|
||||
We can characterise the response of a filter as the response to an impulse.
|
||||
This impulse response can then be used as template to match against a measured waveform.
|
||||
In Figure~\ref{fig:pulse:filter_response}, the impulse and the filter's response are shown, where the Butterworth filter bandpasses the signal between $30\MHz$ and $80\MHz$.
|
||||
\\
|
||||
|
||||
A measured waveform will consist of the filtered signal in combination with noise.
|
||||
|
@ -182,84 +192,119 @@ Figure~\ref{fig:pulse:simulated_waveform} shows an example of the waveform obtai
|
|||
\\
|
||||
|
||||
\begin{figure}
|
||||
\begin{subfigure}{0.45\textwidth}
|
||||
\centering
|
||||
\begin{subfigure}{0.48\textwidth}
|
||||
\includegraphics[width=\textwidth]{pulse/filter_response.pdf}
|
||||
\caption{
|
||||
The filter response.
|
||||
The amplitudes are not to scale.
|
||||
The impulse response of the used filter.
|
||||
Amplitudes are not to scale.
|
||||
}
|
||||
\label{fig:pulse:filter_response}
|
||||
\end{subfigure}
|
||||
\hfill
|
||||
\begin{subfigure}{0.45\textwidth}
|
||||
\includegraphics[width=\textwidth]{pulse/antenna_signal_to_noise_6.pdf}
|
||||
\begin{subfigure}{0.48\textwidth}
|
||||
\includegraphics[width=\textwidth]{pulse/antenna_signals_tdt0.2.pdf}
|
||||
\caption{
|
||||
A simulated waveform with noise.
|
||||
Dashed lines indicate signal and noise level.
|
||||
}
|
||||
\label{fig:pulse:simulated_waveform}
|
||||
\end{subfigure}
|
||||
\\
|
||||
\begin{subfigure}{\textwidth}
|
||||
\includegraphics[width=\textwidth]{pulse/filter_signal_correlation.pdf}
|
||||
\caption{
|
||||
}
|
||||
\label{fig:pulse_correlation}
|
||||
\end{subfigure}
|
||||
\caption{
|
||||
Left: A single impulse and the Butterworth filtered signal available to the digitiser in a detector.
|
||||
Left: A single impulse and a simulated filtered signal, using a Butterworth filter, available to the digitiser in a detector.
|
||||
Right: A noisy sampling of the filtered signal. It is derived from the filtered signal by adding filtered gaussian noise.
|
||||
}
|
||||
\label{fig:pulse:waveforms}
|
||||
\end{figure}
|
||||
|
||||
% pulse finding: signal to noise definition
|
||||
The impulse response spreads the power of the signal over time.
|
||||
The peak amplitude gives a measure of this power without needing to integrate the signal.
|
||||
\\
|
||||
Since the noise is gaussian distributed in the time domain, it is natural to use the root mean square of its amplitude.
|
||||
\\
|
||||
Therefore, in the following, the signal-to-noise ratio will be defined as the maximum amplitude of the filtered signal versus the root-mean-square of the noise amplitudes.
|
||||
|
||||
\bigskip
|
||||
% pulse finding: template correlation: correlation
|
||||
Detecting the modeled signal from Figure~\ref{fig:pulse:filter_response} in a waveform can be achieved by finding the correlation (see Section~\ref{sec:correlation}) between the two signals.
|
||||
Detecting the modeled signal from Figure~\ref{fig:pulse:filter_response} in a waveform can be achieved by finding the correlation (see Section~\ref{sec:correlation}) between the two signals (see Figure~\ref{fig:pulse_correlation}).
|
||||
This is a measure of how similar two signals $u(t)$ and $v(t)$ are as a function of the time delay $\tau$.
|
||||
The maximum is attained when $u(t)$ and $v(t)$ are most similar to each other.
|
||||
Therefore, this gives a measure of the best time delay $\tau$ between the two signals.
|
||||
\\
|
||||
|
||||
% pulse finding: template correlation: template and sampling frequency/sqrt(12)
|
||||
When the digitiser samples the filtered signal, time offsets smaller than the sampling period cannot be resolved.
|
||||
Since the filtered signal is sampled discretely, this means the start of the
|
||||
When the digitiser samples the filtered signal, time offsets $\tau$ smaller than the sampling period $\Delta t = 1/f_s$ cannot be resolved.
|
||||
Still, for many measurements under ideal conditions, one can show that the resolution of the timing asymptotically approaches $\Delta t/\sqrt{12}$.
|
||||
\\
|
||||
This is an effect of the quantisation of the sampling period, where the time offsets $\tau$ are modeled as a uniform distribution in time bins the size of $\Delta t$.
|
||||
In that case, the variance of a uniform distribution applies, obtaining this limit.
|
||||
\\
|
||||
|
||||
% pulse finding: time accuracies
|
||||
|
||||
\begin{figure}
|
||||
\begin{subfigure}{0.45\textwidth}
|
||||
\centering
|
||||
\includegraphics[width=\textwidth]{pulse/correlation_tdt0.2_zoom.pdf}
|
||||
\caption{
|
||||
Top: The measured waveform and templated filter response from Figure~\ref{fig:pulse:filter_response}.
|
||||
Bottom: The (normalised) correlation between the waveform and template as a function of time delay $\tau$.
|
||||
The template is shifted by the time delay found at the maximum correlation (green dashed line), aligning the template and waveform in the top figure.
|
||||
}
|
||||
\label{fig:pulse_correlation}
|
||||
\end{figure}
|
||||
|
||||
% pulse finding: signal to noise definition
|
||||
As can be seen in Figure~\ref{fig:pulse:filter_response}, the impulse response spreads the power of the signal over time.
|
||||
The peak amplitude gives a measure of this power without needing to integrate the signal.
|
||||
\\
|
||||
Expecting the noise to be gaussian distributed in the time domain, it is natural to use the root mean square of its amplitude as a quantity representing the strength of the noise.
|
||||
\\
|
||||
Therefore, the \gls{SNR} will be defined as the maximum amplitude of the filtered signal versus the \gls{RMS} of the noise amplitudes.
|
||||
\\
|
||||
|
||||
|
||||
\subsubsection{Simulation}
|
||||
\Todo{remove heading?}
|
||||
% simulation
|
||||
From the above, it is clear that both the \gls{SNR} aswell as the sampling rate of the template have an effect on the ability to resolve small time offsets.
|
||||
To further investigate this, we set up a simulation\footnote{\Todo{Url to repository}} where templates with different sampling rates are matched to simulated waveforms for multiple \glspl{SNR}.
|
||||
|
||||
First, an ``analog'' template is rendered at $\Delta t = 10\mathrm{fs}$ to be able to simulate small time-offsets.
|
||||
Each simulated waveform samples this ``analog'' template with $\Delta t = 2\mathrm{ns}$ and a randomised time-offset $t_\mathrm{true}$.
|
||||
\\
|
||||
Second, the matching template is created by sampling the ``analog'' template at the specified sampling rate.
|
||||
\\
|
||||
% pulse finding: time accuracies
|
||||
Afterwards, simulated waveforms are correlated against the matching template obtaining a best time delay $\tau$ per waveform.
|
||||
Comparing the best time delay $\tau$ with the randomised time-offset $t_\mathrm{true}$, we get a time residual $t_\mathrm{res} = t_\mathrm{true} - \tau$ per waveform.
|
||||
\\
|
||||
Figure~\ref{fig:pulse:snr_histograms} shows two histograms ($N=500$) of the time residuals for two \glspl{SNR}.
|
||||
Expecting the time residual to be affected by the quantisation and the noise, we fit a gaussian to the histograms.
|
||||
The width of each gaussian gives us an accuracy on how well the time offset is determined from the correlation method.
|
||||
\\
|
||||
|
||||
\begin{figure}%<<<
|
||||
\centering
|
||||
\begin{subfigure}{0.47\textwidth}
|
||||
\includegraphics[width=\textwidth]{pulse/time_residuals/time_residual_hist_tdt1.0e-02_n5.0e+00.pdf}
|
||||
\caption{}
|
||||
\caption{\gls{SNR} = 5}
|
||||
\label{}
|
||||
\end{subfigure}
|
||||
\hfill
|
||||
\begin{subfigure}{0.45\textwidth}
|
||||
\begin{subfigure}{0.47\textwidth}
|
||||
\includegraphics[width=\textwidth]{pulse/time_residuals/time_residual_hist_tdt1.0e-02_n5.0e+01.pdf}
|
||||
\caption{}
|
||||
\caption{\gls{SNR} = 50}
|
||||
\label{}
|
||||
\end{subfigure}
|
||||
\caption{
|
||||
Time residuals histogram
|
||||
Time residuals histograms ($N=500$) for $\mathrm{\gls{SNR}} = (5, 50)$ at a template sampling rate of $10 \mathrm{ps}$.
|
||||
}
|
||||
\label{fig:pulse_snr_histograms}
|
||||
\end{figure}
|
||||
\label{fig:pulse:snr_histograms}
|
||||
\end{figure}%>>>
|
||||
|
||||
By evaluating the time residuals for some combinations of \glspl{SNR} and template sampling rates, Figure~\ref{fig:pulse:snr_time_resolution} is produced.
|
||||
It shows that, as long as the pulse is (much) stronger than the noise ($\mathrm{\gls{SNR}} \gtrsim 5$), template matching could achieve a sub-nanosecond timing accuracy even if the measured waveform is sampled at a lower rate (here $\Delta t = 2\ns$).
|
||||
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=\textwidth]{pulse/time_res_vs_snr_multiple_dt.pdf}
|
||||
\caption{
|
||||
Pulse timing accuracy obtained by correlating a template pulse for multiple template sampling rates.
|
||||
Dashed lines indicate the asymptotic best time accuracy ($\tfrac{1}{f\sqrt{12}}$) per template sampling rate.
|
||||
Pulse timing accuracy obtained by matching a templated pulse for multiple template sampling rates to $N=500$ waveforms sampled at $2\ns$.
|
||||
Dashed lines indicate the asymptotic best time accuracy ($\Delta t/\sqrt{12}$) per template sampling rate.
|
||||
\Todo{fit curves?, remove dashed line at 1ns}
|
||||
}
|
||||
\label{fig:pulse_snr_time_resolution}
|
||||
\label{fig:pulse:snr_time_resolution}
|
||||
\end{figure}
|
||||
|
||||
% dead time
|
||||
|
@ -365,7 +410,7 @@ This relies on the ability of counting how many beacon periods have passed since
|
|||
\includegraphics[width=0.5\textwidth]{beacon/auger/1512.02216.figure2.beacon_beat.png}
|
||||
\caption{
|
||||
From Ref~\cite{PierreAuger:2015aqe}.
|
||||
The beacon signal that the \acrlong*{PAObs} has employed in \gls{AERA}.
|
||||
The beacon signal that the \gls{Auger} has employed in \gls{AERA}.
|
||||
The beating between 4 frequencies gives a total period of $1.1\us$ (indicated by the arrows).
|
||||
}
|
||||
\label{fig:beacon:pa}
|
||||
|
@ -375,7 +420,7 @@ This relies on the ability of counting how many beacon periods have passed since
|
|||
\bigskip
|
||||
|
||||
% Yay for the sine wave
|
||||
In the following section, the latter scenario of a (single) sine wave as a beacon is worked out.
|
||||
In the following section, the latter scenario of sine wave beacons is worked out.
|
||||
It involves the tuning of the signal strength to attain the required accuracy.
|
||||
Later, a mechanism to lift the period degeneracy using an airshower as discrete signal is presented.
|
||||
|
||||
|
@ -393,43 +438,10 @@ The digital measurement of the beacon phase is dependent on at least two factors
|
|||
Additionally, the \gls{FT} can be performed in a number of ways.
|
||||
|
||||
These aspects are examined in the following section.
|
||||
|
||||
\begin{figure}[h]
|
||||
\begin{subfigure}{0.45\textwidth}
|
||||
\includegraphics[width=\textwidth]{beacon/sine_beacon.pdf}
|
||||
\caption{
|
||||
A waveform of a strong sine wave with gaussian noise.\Todo{Add noise}
|
||||
}
|
||||
\label{fig:beacon:sine}
|
||||
\end{subfigure}
|
||||
\hfill
|
||||
\begin{subfigure}{0.45\textwidth}
|
||||
\includegraphics[width=\textwidth]{fourier/noisy_sine.pdf}
|
||||
\caption{
|
||||
Fourier Spectrum of the signals.
|
||||
\Todo{Add fourier spectra?}
|
||||
}
|
||||
\label{fig:beacon:spectrum}
|
||||
\end{subfigure}
|
||||
\\
|
||||
\begin{subfigure}{0.45\textwidth}
|
||||
\includegraphics[width=\textwidth]{beacon/ttl_beacon.pdf}
|
||||
\caption{
|
||||
TTL
|
||||
}
|
||||
\label{fig:beacon:ttl}
|
||||
\end{subfigure}
|
||||
|
||||
\caption{
|
||||
Both show two samplings with a small offset in time.
|
||||
Reconstructing the signal is easier to do for the sine wave with the same samplelength and number of samples.
|
||||
}
|
||||
\label{fig:beacon:ttl_sine_beacon}
|
||||
\end{figure}
|
||||
% >>>
|
||||
%
|
||||
% DTFT
|
||||
\subsubsection{Discrete Time Fourier Transform}% <<<
|
||||
%\subsubsection{Discrete Time Fourier Transform}% <<<
|
||||
% FFT common knowledge ..
|
||||
The typical method to obtain spectral information from periodic data is the \gls{FFT} (a fast implementation of the \gls{DFT} \eqref{eq:fourier:dft}).
|
||||
Such an algorithm efficiently finds the amplitudes and phases within a trace $x$ at specific frequencies $f_k = f_s \tfrac{k}{N}$ determined solely by the number of samples $N$ ($0 \leq k < N$) and the sampling frequency $f_s$.
|
||||
|
@ -437,19 +449,12 @@ Such an algorithm efficiently finds the amplitudes and phases within a trace $x$
|
|||
|
||||
% .. but we require a DTFT
|
||||
Depending on the frequency of the beacon, the sampling frequency and the number of samples, one can resort to use such a \gls{DFT}.
|
||||
However, if the frequency of interest is not covered in the specific frequencies, the approach must be modified (e.g. zero-padding or interpolation).\Todo{extend?}
|
||||
However, if the frequency of interest is not covered in the specific frequencies $k f_s$, the approach must be modified (e.g. zero-padding or interpolation).\Todo{extend?}
|
||||
|
||||
Especially when a single frequency is of interest, a shorter route can be taken by evaluating the \acrlong{DTFT} for this frequency directly.
|
||||
\\
|
||||
|
||||
\bigskip
|
||||
% Static sin/cos terms if f_s, f and N static ..
|
||||
When calculating the \gls{DTFT} for multiple inputs which share both an equal number of samples $N$ and equal sampling frequencies $f_s$, the $\sin$ and $\cos$ terms in \eqref{eq:fourier:dtft_decomposed} are the same for a single frequency $f$.
|
||||
Therefore, these can be precomputed ahead of time, reducing the number of calculations to $2N$ multiplications.
|
||||
|
||||
% .. relevance to hardware if static frequency
|
||||
Thus, for static frequencies in a continuous beacon, the coefficients for evaluating the \gls{DTFT} can be put into the hardware of the detectors,
|
||||
opening the way to efficiently measuring the phases in realtime.\Todo{figure?}
|
||||
|
||||
|
||||
|
||||
|
@ -467,7 +472,7 @@ opening the way to efficiently measuring the phases in realtime.\Todo{figure?}
|
|||
\subsubsection{Signal to Noise}% <<<
|
||||
|
||||
% Gaussian noise
|
||||
The phase measurement by employing \eqref{eq:fourier:dtft} is influenced by noise in the detector traces.
|
||||
The phase measurement employing \eqref{eq:fourier:dtft} is influenced by noise in the detector traces.
|
||||
It can come from various sources, both internal (e.g.~LNA~noise) and external (e.g.~radio~communications) to the detector.
|
||||
A simple noise model is given by gaussian noise in the time-domain, associated to many independent random noise sources.
|
||||
Especially important is that this simple noise model will affect the phase measurement depending on the strength of the beacon with respect to the noise level.
|
||||
|
|
|
@ -10,132 +10,150 @@
|
|||
\begin{document}
|
||||
\chapter{Measuring with Radio Antennas}
|
||||
\label{sec:waveform}
|
||||
Electric fields,
|
||||
Antenna Polarizations,
|
||||
Frequency Bandwidth,
|
||||
\\
|
||||
|
||||
Time Domain,
|
||||
Sampling,
|
||||
Waveform + Time vector,
|
||||
\\
|
||||
|
||||
Analysis:
|
||||
Fourier Transforms,
|
||||
Correlation
|
||||
|
||||
\hrule
|
||||
%Electric fields,
|
||||
%Antenna Polarizations,
|
||||
%Frequency Bandwidth,
|
||||
|
||||
Radio antennas are sensitive to changes in their surrounding electric fields.
|
||||
Depending on the antenna geometry, multiple polarisations of the electric field can be recorded simultaneously.
|
||||
The polarisations of the electric field that a single antenna can record is dependent on the geometry of this antenna.
|
||||
Therefore, in experiments such as \gls{Auger} or \gls{GRAND}, multiple antennas (called channels) are incorporated into a single unit to obtain complementary polarisation recordings.
|
||||
Additionally, the shape and size of antennas affect how well the antenna responds to certain frequency ranges, resulting in different designs meeting different criteria.
|
||||
\\
|
||||
|
||||
Recording
|
||||
%Waveform time series data
|
||||
%Sampling,
|
||||
%Waveform + Time vector,
|
||||
In each radio detector, the antenna presents its signals to an \gls{ADC} as fluctuating voltages.
|
||||
In turn, the \gls{ADC} records the analog signals with a specified samplerate $f_s$ resulting in a sequence of digitised voltages or waveform.
|
||||
The $n$-th sample in this waveform is then associated with a fixed timestamp $t[n] = t[0] + n/f_s = t[0] + n*\Delta t$ after the initial sample at $t[0]$.
|
||||
In reality, the sampling rate will vary by very small amounts resulting in timestamp inaccuracies called jitter.
|
||||
\\
|
||||
|
||||
% Filtering before ADC
|
||||
The finite sampling rate of the waveform means that very high frequencies are not observed by the \gls{ADC}.
|
||||
However, frequencies just at or above half of sampling rate will affect the sampling itself and appear in the waveform at lower frequencies as aliases.
|
||||
This frequency at half the sampling rate is known as the Nyquist frequency.
|
||||
To prevent such aliases, these frequencies must be removed by a filter before sampling.
|
||||
\\
|
||||
For air shower radio detection, very low frequencies are also not of interest.
|
||||
Therefore, this filter is generally a bandpass filter.
|
||||
For example, in \gls{Auger} the filter removes all of the signal except for the frequency interval between $30 \text{--} 80\MHz$.\Todo{citation?}
|
||||
\\
|
||||
In addition to a bandpass filter, more complex filter setups are used to remove unwanted components or introduce attenuation at specific frequencies.
|
||||
For example, in \gls{GRAND} notch filters are introduced to suppress radio signals in the FM-radio band which lies in its $20 \text{--} 200\MHz$ band.\Todo{citation?}
|
||||
\\
|
||||
|
||||
% Filter and Antenna response
|
||||
From the above it is clear that the digitised waveform is a measurement of the electric field that is sequentially convoluted by the antenna's and filter's response.
|
||||
Thus to reconstruct properties of the electric field signal from the waveform, both responses must be known.
|
||||
|
||||
|
||||
% Analysis, properties, frequencies, pulse detection, shape matching,
|
||||
\bigskip
|
||||
Different methods are available for the analysis of the waveform, and the antenna and filter responses.
|
||||
A key aspect is determining the frequency-dependent amplitudes (and phases) in the measurements to characterise the responses and, more importantly, select signals from background.
|
||||
With \acrlong{FT}s these frequency spectra can be produced.
|
||||
This technique is especially important for the sinewave beacon of Section~\ref{sec:beacon:sine}, as it forms the basis of the phase measurement.
|
||||
\\
|
||||
The detection and identification of more complex time-domain signals can be achieved using the cross correlation\Todo{rephrase},
|
||||
which is the basis for the pulsed beacon method of Section~\ref{sec:beacon:pulse}.
|
||||
|
||||
\section{Analysis Methods}% <<<
|
||||
\label{sec:waveform:analysis}
|
||||
%\section{Analysis Methods}% <<<
|
||||
%\label{sec:waveform:analysis}
|
||||
|
||||
\subsection{Correlation}% <<<<
|
||||
\label{sec:correlation}
|
||||
\Todo{intro}
|
||||
The correlation is a measure of how similar two signals $u(t)$ and $v(t)$ are as a function of a time delay $\tau$.
|
||||
|
||||
It is defined as
|
||||
\begin{equation}
|
||||
\label{eq:correlation_cont}
|
||||
\phantom{,}
|
||||
\Corr(\tau; u,v) = \int_{-\infty}^{\infty} \dif t \, u(t)\, v^*(t-\tau)
|
||||
,
|
||||
\end{equation}
|
||||
where the integral reduces to a sum for a finite amount of samples in either $u(t)$ or $v(t)$.
|
||||
Still, $\tau$ remains a continuous variable.
|
||||
|
||||
\begin{figure}
|
||||
\begin{subfigure}{\textwidth}
|
||||
\includegraphics[width=\textwidth]{pulse/waveform_12_correlation.pdf}
|
||||
\caption{
|
||||
Correlation
|
||||
}%
|
||||
\label{subfig:correlation}
|
||||
\end{subfigure}%
|
||||
\\
|
||||
\begin{subfigure}{0.45\textwidth}
|
||||
\includegraphics[width=\textwidth]{pulse/waveform_1.pdf}
|
||||
\caption{
|
||||
Waveform 1
|
||||
}
|
||||
\label{}
|
||||
\end{subfigure}
|
||||
\hfill
|
||||
\begin{subfigure}{0.45\textwidth}
|
||||
\includegraphics[width=\textwidth]{pulse/waveform_2.pdf}
|
||||
\caption{
|
||||
Waveform 2
|
||||
}
|
||||
\label{}
|
||||
\end{subfigure}
|
||||
\caption{
|
||||
Top: Correlation of Waveform 1 and Waveform 2
|
||||
}
|
||||
\label{fig:correlation}
|
||||
\end{figure}
|
||||
|
||||
% >>>
|
||||
\subsection{Fourier Transform}% <<<<
|
||||
\section{Fourier Transform}% <<<<
|
||||
\label{sec:fourier}
|
||||
\Todo{intro}
|
||||
The \gls{FT} allows for a frequency-domain representation of a time-domain signal.
|
||||
In the case of radio antennas, it converts a time-ordered sequence of voltages into a set of complex amplitudes that depend on frequency.
|
||||
By evaluating the \gls{FT} at appropriate frequencies, the frequency spectrum of a waveform is calculated.
|
||||
This method then allows to modify a signal by operating on its frequency components, i.e.~removing a narrow frequency band contamination within the signal.
|
||||
\\
|
||||
|
||||
% DTFT from CTFT
|
||||
The continuous formulation of the \acrlong{FT} takes the following form,
|
||||
The continuous \acrlong{FT} takes the form
|
||||
\begin{equation}
|
||||
\label{eq:fourier}
|
||||
\phantom{.}
|
||||
X(f) = \int_\infty^\infty \dif{t}\, x(t)\, e^{-i 2 \pi f t}
|
||||
.
|
||||
\end{equation}
|
||||
It decomposes the signal $x(t)$ into complex-valued plane waves $X(f)$ of frequency $f$.
|
||||
It decomposes the signal $x(t) \in \mathcal{R}$ into plane waves with complex-valued amplitude $X(f)$ at frequency $f$.
|
||||
\\
|
||||
From the complex amplitude $X(f)$, the phase $\pTrue(f)$ and amplitude $A(f)$ are calculated as
|
||||
\begin{equation*}
|
||||
\begin{aligned}
|
||||
\phantom{.}
|
||||
\pTrue(f) = \arg\left( X(f) \right), && \text{and} && A(f) = 2 \left| X(f) \right|
|
||||
.
|
||||
\end{aligned}
|
||||
\end{equation*}
|
||||
Note the factor $2$ in this definition of the amplitude.
|
||||
It is introduced to compensate for expecting a real valued input signal $x(t) \in \mathcal{R}$ and mapping negative frequencies to their positive equivalents.
|
||||
\\
|
||||
|
||||
When $x(t)$ is sampled at discrete times, the integral of \eqref{eq:fourier} is discretized in time to result in the \acrlong{DTFT}:
|
||||
\bigskip
|
||||
|
||||
When $x(t)$ is sampled at discrete times, the integral of \eqref{eq:fourier} is discretized in time to result in the \gls{DTFT}:
|
||||
\begin{equation}
|
||||
%\tag{DTFT}
|
||||
\label{eq:fourier:dtft}
|
||||
X(f) = \sum_{n=0}^{N-1} x(t[n])\, e^{ -i 2 \pi f t[n]}
|
||||
\end{equation}
|
||||
where $x(t) \in \mathcal{R} $ is sampled at times $t[n]$.
|
||||
Considering a finite sampling size $N$ and periodicity of the signal, the bounds of the integral in \eqref{eq:fourier} collapse to $t[0]$ up to $t[N]$.
|
||||
where $x(t)$ is sampled a finite number of times $N$ at some timestamps $t[n]$.
|
||||
Note that the amplitude $A(f)$ will now scale with the number of samples~$N$, and thus should be normalised to $A(f) = 2 \left| X(f) \right| / N$.
|
||||
\\
|
||||
From this it follows that the lowest resolvable frequency is $f_\mathrm{lower} = \tfrac{1}{T} = \tfrac{1}{t[N] - t[0]}$.
|
||||
|
||||
Considering a finite sampling size $N$ and periodicity of the signal, the bounds of the integral in \eqref{eq:fourier} have collapsed to $t[0]$ up to $t_{N-1}$.
|
||||
It follows that the lowest resolvable frequency is $f_\mathrm{lower} = 1/T = 1/(t_{N-1} - t[0])$.
|
||||
\\
|
||||
Additionally, when the sampling of $x(t)$ is equally spaced, the $t[n]$ terms can be written as a sequence, $t[n] - t[0] = n \Delta t = \tfrac{n}{f_s}$, with $f_s$ the sampling frequency.
|
||||
The highest resolvable frequency, known as the Nyquist frequency, is limited by this sampling frequency as $f_\mathrm{nyquist} = \tfrac{f_s}{2}$.
|
||||
Additionally, when the sampling of $x(t)$ is equally spaced, the $t[n]$ terms can be written as a sequence, $t[n] - t[0] = n \Delta t = n/f_s$, with $f_s$ the sampling frequency.
|
||||
Here the highest resolvable frequency is limited by the Nyquist~frequency at $f_\mathrm{nyquist} = f_s/2$.
|
||||
\\
|
||||
|
||||
% DFT sampling of DTFT / efficient multifrequency FFT
|
||||
Implementing the above decomposition of $t[n]$, \eqref{eq:fourier:dtft} can be rewritten in terms of multiples $k$ of the sampling frequency, becoming the \acrlong{DFT}
|
||||
Implementing the above decomposition of $t[n]$, \eqref{eq:fourier:dtft} can be rewritten in terms of multiples of the sampling frequency $f = k f_s/N$, becoming the \gls{DFT}
|
||||
\begin{equation*}
|
||||
\label{eq:fourier:dft}
|
||||
\phantom{,}
|
||||
X(k) = \sum_{n=0}^{N-1} x[n]\, \cdot e^{ -i 2 \pi {\frac{k n}N} }
|
||||
,
|
||||
\phantom{.}
|
||||
X(k)
|
||||
% = \sum_{n=0}^{N-1} x(t[n])\, e^{ -i 2 \pi f (t[0] + n/f_s)}
|
||||
% = \sum_{n=0}^{N-1} x(t[n])\, e^{ -i 2 \pi f t[0]}\, e^{ -i 2 \pi f n/f_s}
|
||||
% = e^{ -i 2 \pi f t[0]}\, \sum_{n=0}^{N-1} x(t[n])\, e^{ -i 2 \pi k n}
|
||||
= e^{ -i 2 \pi f t[0]} \sum_{n=0}^{N-1} x(t[n])\, \cdot e^{ -i 2 \pi \frac{k n}{N} }
|
||||
.
|
||||
\end{equation*}
|
||||
with $k = \tfrac{f}{f_s}$.
|
||||
For integer $0 \leq k < N $, efficient algorithms exist that derive all $X( 0 \leq k < N )$ in $\mathcal{O}( N \log N )$ calculations, a~\acrlong{FFT}, sampling a subset of the frequencies.\Todo{citation?}
|
||||
|
||||
The direct computation of this transform takes $2N$ complex multiplications and $2(N-1)$ complex additions for a single frequency $k$.
|
||||
When computing this transform for all integer $0 \leq k < N$, this amounts to $\mathcal{O}(N^2)$ complex computations.
|
||||
\acrlong{FFT}s (\acrshort{FFT}s) are efficient algorithms that derive all $X( 0 \leq k < N)$ in $\mathcal{O}( N \log N)$ calculations.
|
||||
\Todo{citation?}
|
||||
%For integer $0 \leq k < N $, efficient algorithms exist that derive all $X( 0 \leq k < N )$ in $\mathcal{O}( N \log N )$ calculations instead of $\mathcal{O}(kcalled \acrlong{FFT}s, sampling a subset of the frequencies.\Todo{citation?}
|
||||
|
||||
\begin{figure}
|
||||
\includegraphics[width=\textwidth]{fourier/dtft_dft_comparison.pdf}
|
||||
\begin{subfigure}{0.45\textwidth}
|
||||
\includegraphics[width=\textwidth]{methods/fourier/waveform.pdf}%
|
||||
%\caption{}
|
||||
\end{subfigure}
|
||||
\hfill
|
||||
\begin{subfigure}{0.45\textwidth}
|
||||
\includegraphics[width=\textwidth]{methods/fourier/noisy_spectrum.pdf}%
|
||||
\label{fig:fourier:dtft_dft}
|
||||
%\caption{}
|
||||
\end{subfigure}
|
||||
\caption{
|
||||
Comparison of the \gls{DTFT} and \gls{DFT} of the same waveform.
|
||||
The \gls{DFT} can be interpreted as sampling the \gls{DTFT}
|
||||
Left: A waveform sampling a sine wave with white noise.
|
||||
Right:
|
||||
The frequency spectrum of the waveform.
|
||||
Comparison of the \gls{DTFT} and \gls{DFT} of the same waveform.
|
||||
The \gls{DFT} can be interpreted as sampling the \gls{DTFT} at integer multiple of the waveform's sampling rate $f_s$.
|
||||
\Todo{Larger labels, fix spectrum plot}
|
||||
}
|
||||
\label{fig:fourier:dtft_dft}
|
||||
\end{figure}
|
||||
\bigskip
|
||||
|
||||
\bigskip
|
||||
% Linearity fourier for real/imag
|
||||
In the previous equations, the resultant quantity $X(f)$ is a complex value.
|
||||
In the previous equations, the resultant quantity $X(f)$ is a complex amplitude.
|
||||
Since a complex plane wave can be linearly decomposed as
|
||||
\begin{equation*}
|
||||
\phantom{,}
|
||||
|
@ -161,8 +179,8 @@ i.e.,~\eqref{eq:fourier:dtft} becomes
|
|||
%\\ &
|
||||
\equiv \Re(X(f)) + i \Im(X(f))
|
||||
\\ &
|
||||
= \sum_{n=0}^{N-1} \, x[n] \, \cos( 2\pi f t[n] )
|
||||
- i \sum_{n=0}^{N-1} \, x[n] \, \sin( 2\pi f t[n] )
|
||||
= \sum_{n=0}^{N-1} \, x(t[n]) \, \cos( 2\pi f t[n] )
|
||||
- i \sum_{n=0}^{N-1} \, x(t[n]) \, \sin( 2\pi f t[n] )
|
||||
.
|
||||
\end{aligned}
|
||||
\end{equation}
|
||||
|
@ -172,28 +190,129 @@ The normalised amplitude at a given frequency $A(f)$ is calculated from \eqref{e
|
|||
\begin{equation}
|
||||
\label{eq:complex_magnitude}
|
||||
\phantom{.}
|
||||
A(f) \equiv \frac{ 2 \sqrt{ X_R(f)^2 + X_I(f)^2 } }{N}
|
||||
A(f)
|
||||
\equiv \frac{2 \left| X(f) \right| }{N}
|
||||
= \frac{ 2 \sqrt{ X_R(f)^2 + X_I(f)^2 } }{N}
|
||||
.
|
||||
\end{equation}
|
||||
Likewise, the complex phase at a given frequency $\pTrue(f)$ is obtained by
|
||||
\begin{equation}
|
||||
\label{eq:complex_phase}
|
||||
\phantom{.}
|
||||
\pTrue(f) \equiv \arctantwo\left( X_I(f), X_R(f) \right)
|
||||
\pTrue(f)
|
||||
\equiv \arg( X(f) )
|
||||
= \arctantwo\left( X_I(f), X_R(f) \right)
|
||||
.
|
||||
\end{equation}
|
||||
Note the factor $2$ in the definition of the amplitude in \eqref{eq:complex_magnitude}.
|
||||
It is introduced to compensate for expecting a real input signal $x(t)$ and mapping negative frequencies to their positive equivalents.
|
||||
\\
|
||||
|
||||
% Recover A\cos(2\pi t[n] f + \phi) using above definitions
|
||||
Applying \eqref{eq:fourier:dtft_decomposed} to a signal $x(t) = A\cos(2\pi t[n] f + \pTrue)$ with the above definitions obtains
|
||||
Applying \eqref{eq:fourier:dtft_decomposed} to a signal $x(t) = A\cos(2\pi t f + \pTrue)$ with the above definitions obtains
|
||||
an amplitude $A$ and phase $\pTrue$ at frequency $f$.
|
||||
When the minus sign in the exponent of \eqref{eq:fourier} is not taken into account, the calculated phase in \eqref{eq:complex_phase} will have an extra minus sign.
|
||||
|
||||
\bigskip
|
||||
% % Static sin/cos terms if f_s, f and N static ..
|
||||
When calculating the \gls{DTFT} for multiple inputs which share both an equal number of samples $N$ and equal sampling frequencies $f_s$, the $\sin$ and $\cos$ terms in \eqref{eq:fourier:dtft_decomposed} are the same for a single frequency $f$ upto an overall phase which is dependent on $t[0]$.
|
||||
Therefore, at the cost of an increased memory allocation, these terms can be precomputed, reducing the number of real multiplications to $2N+1$, with the additional.
|
||||
|
||||
% .. relevance to hardware if static frequency
|
||||
Thus, for static frequencies in a continuous beacon, the coefficients for evaluating the \gls{DTFT} can be put into the hardware of the detectors,
|
||||
opening the way to efficiently measuring the phases in realtime.\Todo{figure?}
|
||||
|
||||
|
||||
% >>>>
|
||||
\subsubsection{Hilbert Transform (optional)}% <<<<
|
||||
%\section{Pulse Detection}
|
||||
|
||||
\section{Cross-Correlation}% <<<<
|
||||
\label{sec:correlation}
|
||||
The cross-correlation is a measure of how similar two waveforms $u(t)$ and $v(t)$ are.
|
||||
By introducing a time delay $\tau$ in one of the waveforms it turns into a function of this time delay.
|
||||
|
||||
It is defined as
|
||||
\begin{equation}
|
||||
\label{eq:correlation_cont}
|
||||
\phantom{,}
|
||||
\Corr(\tau; u, v) = \int_{-\infty}^{\infty} \dif t \, u(t)\, v^*(t-\tau)
|
||||
,
|
||||
\end{equation}
|
||||
where the integral reduces to a sum for a finite amount of samples in either $u(t)$ or $v(t)$.
|
||||
Still, $\tau$ remains a continuous variable.
|
||||
\\
|
||||
|
||||
\bigskip
|
||||
|
||||
% Discrete \tau because of sampling
|
||||
In reality, both waveforms have a finite size, also reducing the time delay $\tau$ resolution to the highest sampling rate of the two waveforms.
|
||||
When the sampling rates are equal, the time delay variable is effectively shifting one waveform by a number of samples.
|
||||
\\
|
||||
% Upsampling? No
|
||||
Techniques such as upsampling or interpolation can be used to effectively change the sampling rate of a waveform up to a certain degree.
|
||||
However, for the purpose in this document, these methods are not used.
|
||||
\\
|
||||
|
||||
% Approaching analog \tau; or zero-stuffing
|
||||
Since zero-valued samples do not contribute to the integral of \eqref{eq:correlation_cont}, they can be freely added (or ignored) to a waveform when performing the calculations.
|
||||
This means two waveforms of different sampling rates can be correlated when the sampling rates are integer multiples of each other, simply by zero-stuffing the slowly sampled waveform.
|
||||
This allows for approximating an analog time delay between two waveforms when one waveform is sampled at a very high rate as compared to the other.
|
||||
|
||||
\Todo{resolution 1/sqrt(12)?}
|
||||
|
||||
|
||||
\begin{figure}
|
||||
\centering
|
||||
\begin{subfigure}{0.45\textwidth}
|
||||
\includegraphics[width=\textwidth]{methods/correlation/waveforms.pdf}
|
||||
%\caption{
|
||||
% Two waveforms.
|
||||
%}%
|
||||
\label{subfig:correlation:waveforms}
|
||||
\end{subfigure}
|
||||
\hfill
|
||||
\begin{subfigure}{0.45\textwidth}
|
||||
\includegraphics[width=\textwidth]{methods/correlation/correlation.pdf}
|
||||
%\caption{
|
||||
% The correlation of two Waveforms as a function of time.
|
||||
%}%
|
||||
\label{subfig:correlation}
|
||||
\end{subfigure}%
|
||||
\caption{
|
||||
Left: Two waveforms to be correlated.
|
||||
Right: The correlation of both waveforms as a function of the time delay $\tau$.
|
||||
Here the best time delay (red dashed line) is found at $5$, which would align the maximum amplitudes of both waveforms in the left pane.
|
||||
}
|
||||
\label{fig:correlation}
|
||||
\end{figure}
|
||||
|
||||
% >>>
|
||||
\section{Hilbert Transform}% <<<<
|
||||
|
||||
A variation of the Fourier Transform of Section~\ref{sec:fourier} is the Hilbert Transform.
|
||||
With it, the analytic signal $s_a(t)$ of a waveform $x(t)$ can be obtained through
|
||||
\begin{equation}
|
||||
\label{eq:analytic_signal}
|
||||
\phantom{,}
|
||||
s_a(t) = x(t) + \hat{x}(t)
|
||||
,
|
||||
\end{equation}
|
||||
where $\hat{x}(t)$ is the Hilbert Transformed waveform.
|
||||
|
||||
The Hilbert Transform corresponds to a \gls{FT} where positive frequencies $f > 0$ are phase-shifted by $-\pi/2$ and negative frequencies are phase-shifted by $+\pi/2$.
|
||||
|
||||
|
||||
\bigskip
|
||||
The envelope of a waveform $x(t)$ is determined by taking the absolute value of its analytic signal $s_a(t)$.
|
||||
Figure~\ref{fig:hilbert_transform} shows an envelope with its original waveform.
|
||||
|
||||
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=0.5\textwidth]{pulse/hilbert_timing_interpolation_template.pdf}
|
||||
\caption{
|
||||
Timing information from the maximum amplitude of the envelope.
|
||||
}
|
||||
\label{fig:hilbert_transform}
|
||||
\end{figure}
|
||||
% >>>>
|
||||
% >>>
|
||||
\end{document}
|
||||
|
|
|
@ -21,23 +21,34 @@
|
|||
\HRule \\[.5cm]
|
||||
\textsc{\large Master's thesis Physics and Astronomy}\\[.5cm]
|
||||
|
||||
\begin{minipage}{0.4\textwidth}
|
||||
\begin{minipage}[t]{0.4\textwidth}
|
||||
\begin{flushleft} \large
|
||||
\emph{Author:}\\
|
||||
\thesisauthorfirst\space \textsc{\thesisauthorsecond}
|
||||
\end{flushleft}
|
||||
\end{minipage}
|
||||
~
|
||||
\begin{minipage}{0.4\textwidth}
|
||||
\begin{minipage}[t]{0.4\textwidth}
|
||||
\begin{flushright} \large
|
||||
\emph{Supervisor:} \\
|
||||
\thesissupervisorfirst\space \textsc{\thesissupervisorsecond} \\[1em]
|
||||
\emph{Second Reader:} \\
|
||||
\thesissecondreaderfirst\space \textsc{\thesissecondreadersecond}
|
||||
\end{flushright}
|
||||
\end{minipage}\\[4cm]
|
||||
\end{minipage}\\[1cm]
|
||||
%\hrule
|
||||
{
|
||||
\vfill
|
||||
%\hrule%
|
||||
\includegraphics[keepaspectratio, height=65mm, width=\textwidth]{beacon/array_setup_gps_transmitter_cows.png}%
|
||||
%\hrule%
|
||||
\vfill
|
||||
}
|
||||
\vfill
|
||||
{\large \thesisdate}
|
||||
\vspace*{1cm}
|
||||
%\hrule
|
||||
{\large \color[gray]{0.3} \thesisdate}
|
||||
%\hrule
|
||||
\clearpage
|
||||
\end{titlepage}
|
||||
\end{document}
|
||||
|
|
|
@ -67,7 +67,7 @@
|
|||
|
||||
%% <<<< Thesis titling
|
||||
%%
|
||||
\def\thesistitle{Enhancing Timing Accuracy \\[0.3cm] in Air Shower Radio Detectors}
|
||||
\def\thesistitle{Enhancing Timing Accuracy\texorpdfstring{\\[0.3cm]}{ }in Air Shower Radio Detectors}
|
||||
\def\thesissubtitle{}
|
||||
\def\thesisauthorfirst{E.T.}
|
||||
\def\thesisauthorsecond{de Boone}
|
||||
|
@ -75,7 +75,7 @@
|
|||
\def\thesissupervisorsecond{Schoorlemmer}
|
||||
\def\thesissecondreaderfirst{dr. Katherine}
|
||||
\def\thesissecondreadersecond{Mulrey}
|
||||
\def\thesisdate{}
|
||||
\def\thesisdate{July 2023}
|
||||
\definecolor{radboud}{RGB}{227, 0, 11}
|
||||
|
||||
%% >>>>
|
||||
|
@ -120,6 +120,8 @@
|
|||
|
||||
\newcommand{\beaconfreq}{\ensuremath{f_\mathrm{beacon}}}
|
||||
|
||||
\newcommand{\Xmax}{\ensuremath{X_\mathrm{max}}}
|
||||
|
||||
%% time variables
|
||||
\newcommand{\tTrue}{t}
|
||||
\newcommand{\tMeas}{\tau}
|
||||
|
@ -154,8 +156,10 @@
|
|||
\newacronym{LOFAR}{LOFAR}{Low-Frequency Array}
|
||||
\newacronym{PA}{PA}{Pierre~Auger}
|
||||
\newacronym{PAObs}{PAO}{Pierre~Auger Observatory}
|
||||
\newacronym{Auger}{Auger}{\acrlong{PAObs}}
|
||||
\newacronym{AERA}{AERA}{Auger Engineering Radio~Array}
|
||||
|
||||
\newacronym{ADC}{ADC}{Analog-to-Digital~Converter}
|
||||
%% >>>>
|
||||
%% <<<< Math
|
||||
\newacronym{DTFT}{DTFT}{Discrete Time Fourier Transform}
|
||||
|
@ -163,5 +167,8 @@
|
|||
\newacronym{FFT}{FFT}{Fast Fourier Transform}
|
||||
\newacronym{FT}{FT}{Fourier Transform}
|
||||
|
||||
\newacronym{RMS}{RMS}{root-mean-square}
|
||||
\newacronym{SNR}{SNR}{signal-to-noise ratio}
|
||||
|
||||
%% >>>>
|
||||
%% >>>
|
||||
|
|
|
@ -1,9 +1,14 @@
|
|||
%%%%%%%%%%%%%%%%%%%%%%%%%%% Document %%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\documentclass[notitlepage,oneside]{book}
|
||||
\documentclass[notitlepage,a4paper,oneside]{book}
|
||||
|
||||
\input{preamble.tex}
|
||||
|
||||
\hypersetup{
|
||||
pdftitle={\begingroup \def\\{\space}{\thesistitle}\endgroup},
|
||||
pdfauthor={\begingroup \def\\{\space}{\thesisauthorfirst\space\thesisauthorsecond}\endgroup}
|
||||
}
|
||||
|
||||
%%
|
||||
%% Attach resources
|
||||
%%
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,3 +1,8 @@
|
|||
Also found at https://icecube.wisc.edu/news/research/2016/10/neutrinos-and-gamma-rays-partnership-to-explore-extreme-universe/
|
||||
|
||||
Image: Juan Antonio Aguilar and Jamie Yang. IceCube/WIPAC
|
||||
|
||||
|
||||
Figure 1.2 from
|
||||
@incollection{Filipovi2021,
|
||||
doi = {10.1088/2514-3433/ac2256ch1},
|
||||
|
|
BIN
figures/astroparticle/cr_flux_PDG_2023.pdf
Normal file
BIN
figures/astroparticle/cr_flux_PDG_2023.pdf
Normal file
Binary file not shown.
19
figures/astroparticle/cr_flux_PDG_2023.pdf.txt
Normal file
19
figures/astroparticle/cr_flux_PDG_2023.pdf.txt
Normal file
|
@ -0,0 +1,19 @@
|
|||
Figure 30.9: The all-particle spectrum as a function of E (energy-per-nucleus) from air shower [200~measurements [106–119]
|
||||
|
||||
Downloaded from: https://pdg.lbl.gov/2023/web/viewer.html?file=../figures/cosmicray/figures/cr_fig8_AllParticle_21.pdf
|
||||
|
||||
@article{PDG2022,
|
||||
author = {Particle Data Group and Workman, R L and Burkert, V D and Crede, V and Klempt, E and Thoma, U and Tiator, L and Agashe, K and Aielli, G and Allanach, B C and Amsler, C and Antonelli, M and Aschenauer, E C and Asner, D M and Baer, H and Banerjee, Sw and Barnett, R M and Baudis, L and Bauer, C W and Beatty\, J J and Belousov, V I and Beringer, J and Bettini, A and Biebel, O and Black, K M and Blucher, E and Bonventre, R and Bryzgalov, V V and Buchmuller, O and Bychkov, M A and Cahn, R N and Carena, M and Ceccucci, A and Cerri, A and Chivukula, R Sekhar and Cowan, G and Cranmer, K and Cremonesi, O and D'Ambrosio, G and \Damour, T and de Florian, D and de Gouvêa, A and DeGrand, T and de Jong, P and Demers, S and Dobrescu, B A and D'Onofrio, M and Doser, M and Dreiner, H K and Eerola, P and Egede, U and Eidelman, S and El-Khadra, A X and Ellis, J and Eno, S C and Erler, J and Ezhela, V V and Fetscher, W and Fields, B D and Freitas, A \and Gallagher, H and Gershtein, Y and Gherghetta, T and Gonzalez-Garcia, M C and Goodman, M and Grab, C and Gritsan, A V and Grojean, C and Groom, D E and Grünewald, M and Gurtu, A and Gutsche, T and Haber, H E and Hamel, Matthieu and Hanhart, C and Hashimoto, S and Hayato, Y and Hebecker, A and Heinemeyer, S and Her\nández-Rey, J J and Hikasa, K and Hisano, J and Höcker, A and Holder, J and Hsu, L and Huston, J and Hyodo, T and Ianni, Al and Kado, M and Karliner, M and Katz, U F and Kenzie, M and Khoze, V A and Klein, S R and Krauss, F and Kreps, M and Križan, P and Krusche, B and Kwon, Y and Lahav, O and Laiho, J and Lellouch, \L P and Lesgourgues, J and Liddle, A R and Ligeti, Z and Lin, C-J and Lippmann, C and Liss, T M and Littenberg, L and Lourenço, C and Lugovsky, K S and Lugovsky, S B and Lusiani, A and Makida, Y and Maltoni, F and Mannel, T and Manohar, A V and Marciano, W J and Masoni, A and Matthews, J and Meißner, U-G and Melzer-P\ellmann, I-A and Mikhasenko, M and Miller, D J and Milstead, D and Mitchell, R E and Mönig, K and Molaro, P and Moortgat, F and Moskovic, M and Nakamura, K and Narain, M and Nason, P and Navas, S and Nelles, A and Neubert, M and Nevski, P and Nir, Y and Olive, K A and Patrignani, C and Peacock, J A and Petrov, V A an\d Pianori, E and Pich, A and Piepke, A and Pietropaolo, F and Pomarol, A and Pordes, S and Profumo, S and Quadt, A and Rabbertz, K and Rademacker, J and Raffelt, G and Ramsey-Musolf, M and Ratcliff, B N and Richardson, P and Ringwald, A and Robinson, D J and Roesler, S and Rolli, S and Romaniouk, A and Rosenberg, L J\ and Rosner, J L and Rybka, G and Ryskin, M G and Ryutin, R A and Sakai, Y and Sarkar, S and Sauli, F and Schneider, O and Schönert, S and Scholberg, K and Schwartz, A J and Schwiening, J and Scott, D and Sefkow, F and Seljak, U and Sharma, V and Sharpe, S R and Shiltsev, V and Signorelli, G and Silari, M and Simon, \F and Sjöstrand, T and Skands, P and Skwarnicki, T and Smoot, G F and Soffer, A and Sozzi, M S and Spanier, S and Spiering, C and Stahl, A and Stone, S L and Sumino, Y and Syphers, M J and Takahashi, F and Tanabashi, M and Tanaka, J and Taševský, M and Terao, K and Terashi, K and Terning, J and Thorne, R S and Titov,\ M and Tkachenko, N P and Tovey, D R and Trabelsi, K and Urquijo, P and Valencia, G and Van de Water, R and Varelas, N and Venanzoni, G and Verde, L and Vivarelli, I and Vogel, P and Vogelsang, W and Vorobyev, V and Wakely, S P and Walkowiak, W and Walter, C W and Wands, D and Weinberg, D H and Weinberg, E J and Werm\es, N and White, M and Wiencke, L R and Willocq, S and Wohl, C G and Woody, C L and Yao, W-M and Yokoyama, M and Yoshida, R and Zanderighi, G and Zeller, G P and Zenin, O V and Zhu, R-Y and Zhu, Shi-Lin and Zimmermann, F and Zyla, P A},
|
||||
title = "{Review of Particle Physics}",
|
||||
journal = {Progress of Theoretical and Experimental Physics},
|
||||
volume = {2022},
|
||||
number = {8},
|
||||
year = {2022},
|
||||
month = {08},
|
||||
abstract = "{The Review summarizes much of particle physics and cosmology. Using data from previous editions, plus 2,143 new measurements from 709 papers, we list, evaluate, and average measured properties of gauge bosons and the recently discovered Higgs boson, leptons, quarks, mesons, and baryons. We summarize s\earches for hypothetical particles such as supersymmetric particles, heavy bosons, axions, dark photons, etc. Particle properties and search limits are listed in Summary Tables. We give numerous tables, figures, formulae, and reviews of topics such as Higgs Boson Physics, Supersymmetry, Grand Unified Theories, Neutri\no Mixing, Dark Energy, Dark Matter, Cosmology, Particle Detectors, Colliders, Probability and Statistics. Among the 120 reviews are many that are new or heavily revised, including a new review on Machine Learning, and one on Spectroscopy of Light Meson Resonances.The Review is divided into two volumes. Volume 1 incl\udes the Summary Tables and 97 review articles. Volume 2 consists of the Particle Listings and contains also 23 reviews that address specific aspects of the data presented in the Listings.The complete Review (both volumes) is published online on the website of the Particle Data Group (pdg.lbl.gov) and in a journal. V\olume 1 is available in print as the PDG Book. A Particle Physics Booklet with the Summary Tables and essential tables, figures, and equations from selected review articles is available in print, as a web version optimized for use on phones, and as an Android app.}",
|
||||
issn = {2050-3911},
|
||||
doi = {10.1093/ptep/ptac097},
|
||||
url = {https://doi.org/10.1093/ptep/ptac097},
|
||||
note = {083C01},
|
||||
eprint = {https://academic.oup.com/ptep/article-pdf/2022/8/083C01/49175539/ptac097.pdf},
|
||||
}
|
BIN
figures/beacon/time_res_vs_snr_large.pdf
Normal file
BIN
figures/beacon/time_res_vs_snr_large.pdf
Normal file
Binary file not shown.
BIN
figures/beacon/time_res_vs_snr_small.pdf
Normal file
BIN
figures/beacon/time_res_vs_snr_small.pdf
Normal file
Binary file not shown.
Binary file not shown.
After Width: | Height: | Size: 213 KiB |
|
@ -0,0 +1,3 @@
|
|||
https://www.researchgate.net/figure/A-schematic-of-the-Pierre-Auger-Observatory-where-each-black-dot-is-a-water-Cherenkov_fig1_319524774
|
||||
|
||||
Hans O. Klages
|
BIN
figures/images/IMG_20220712_164904_checking_gnss.jpg
Executable file
BIN
figures/images/IMG_20220712_164904_checking_gnss.jpg
Executable file
Binary file not shown.
After Width: | Height: | Size: 2.4 MiB |
Before Width: | Height: | Size: 3.8 MiB After Width: | Height: | Size: 3.8 MiB |
BIN
figures/images/flir_20220812T114019.jpg
Executable file
BIN
figures/images/flir_20220812T114019.jpg
Executable file
Binary file not shown.
After Width: | Height: | Size: 431 KiB |
11
figures/methods/Makefile
Normal file
11
figures/methods/Makefile
Normal file
|
@ -0,0 +1,11 @@
|
|||
SUBDIRS := $(subst Makefile,,$(wildcard */Makefile))
|
||||
|
||||
.PHONY: all dist dist-clean $(SUBDIRS)
|
||||
|
||||
all: dist $(SUBDIRS)
|
||||
|
||||
dist: \
|
||||
#
|
||||
|
||||
$(SUBDIRS):
|
||||
@$(MAKE) -C $@
|
12
figures/methods/correlation/Makefile
Normal file
12
figures/methods/correlation/Makefile
Normal file
|
@ -0,0 +1,12 @@
|
|||
.PHONY: all
|
||||
|
||||
all: pdf png
|
||||
|
||||
pdf png : src/correlation_figure.py
|
||||
$< waveforms.$@ correlation.$@
|
||||
|
||||
waveforms.pdf correlation.pdf : src/correlation_figure.py
|
||||
pdf
|
||||
|
||||
waveforms.png correlation.png : src/correlation_figure.py
|
||||
png
|
233
figures/methods/correlation/src/correlation_figure.py
Executable file
233
figures/methods/correlation/src/correlation_figure.py
Executable file
|
@ -0,0 +1,233 @@
|
|||
#!/usr/bin/env python3
|
||||
# vim: fdm=marker fmr=<<<,>>>
|
||||
|
||||
__doc__ = \
|
||||
"""
|
||||
Create one/two figures exemplifiying the correlation between waveforms.
|
||||
"""
|
||||
|
||||
|
||||
import numpy as np
|
||||
import matplotlib.pyplot as plt
|
||||
|
||||
## Correlating function
|
||||
def my_correlation(in1, template, lags=None, normalise=True):
|
||||
""" From 11_pulsed_timing """
|
||||
template_length = len(template)
|
||||
in1_length = len(in1)
|
||||
|
||||
if lags is None:
|
||||
lags = np.arange(-template_length+1, in1_length + 1)
|
||||
|
||||
# do the correlation jig
|
||||
corrs = np.zeros_like(lags, dtype=float)
|
||||
for i, l in enumerate(lags):
|
||||
if l <= 0: # shorten template at the front
|
||||
in1_start = 0
|
||||
template_end = template_length
|
||||
|
||||
template_start = -template_length - l
|
||||
in1_end = max(0, min(in1_length, -template_start)) # 0 =< l + template_length =< in1_lengt
|
||||
|
||||
elif l > in1_length - template_length:
|
||||
# shorten template from the back
|
||||
in1_end = in1_length
|
||||
template_start = 0
|
||||
|
||||
in1_start = min(l, in1_length)
|
||||
template_end = max(0, in1_length - l)
|
||||
|
||||
else:
|
||||
in1_start = min(l, in1_length)
|
||||
in1_end = min(in1_start + template_length, in1_length)
|
||||
|
||||
# full template
|
||||
template_start = 0
|
||||
template_end = template_length
|
||||
|
||||
# Slice in1 and template
|
||||
in1_slice = in1[in1_start:in1_end]
|
||||
template_slice = template[template_start:template_end]
|
||||
|
||||
corrs[i] = np.dot(in1_slice, template_slice)
|
||||
|
||||
if normalise:
|
||||
corrs /= np.amax(corrs)
|
||||
|
||||
return corrs, (in1, template, lags)
|
||||
|
||||
## Some Functions
|
||||
def boxcar(x, x_low, x_high, x2=1):
|
||||
return np.heaviside(x-x_low, x2) * (1-np.heaviside(x-x_high, x2))
|
||||
|
||||
def f1(x, x0=0, x1=1, x2=2, x3=3, h=1):
|
||||
""" triangle with boxcar inbetween """
|
||||
if x0 == x1:
|
||||
slant_up = 0
|
||||
else:
|
||||
norm = (x1-x0)
|
||||
slant_up = (x-x0)/norm*boxcar(x, x0, x1)
|
||||
|
||||
if x2 == x3:
|
||||
slant_down = 0
|
||||
else:
|
||||
norm = (x3-x2)
|
||||
slant_down = (x3-x)/norm * boxcar(x, x2, x3)
|
||||
|
||||
y = h*(slant_up + slant_down + boxcar(x, x1, x2))
|
||||
|
||||
return y
|
||||
|
||||
def triangle(x, x0=0, w=1, h=1):
|
||||
x2 = x1 = x0
|
||||
x0 = x1 - w
|
||||
x3 = x1 + 2
|
||||
return f1(x, x0, x1, x2, x3, h)
|
||||
|
||||
def slanted_boxcar(x, x0=0, slant_width = 1, box_width=1, h=1):
|
||||
x1 = x0 - box_width/2
|
||||
x2 = x0 + box_width/2
|
||||
x0 = x1 - slant_width/2
|
||||
x3 = x2 + slant_width/2
|
||||
|
||||
return f1(x, x0, x1, x2, x3, h)
|
||||
|
||||
def sine(x, x0=0, x1=1, n_periods=0.5, phase=0):
|
||||
L = x1-x0
|
||||
|
||||
return np.sin(2*np.pi* x * n_periods/L + phase)*boxcar(x, x0, x1)
|
||||
|
||||
def f2(x, x0=0, x1=2, h=1):
|
||||
""" logarithm """
|
||||
return h*np.log(1+x-x0)*boxcar(x, x0, x1)
|
||||
|
||||
## Figures
|
||||
def plot_waveform(y, x=None, ax=None, fig_kwargs={}, **line_kwargs):
|
||||
if ax is None:
|
||||
fig, ax = plt.subplots(**fig_kwargs)
|
||||
if x is not None:
|
||||
ax.set_xlabel("Time")
|
||||
else:
|
||||
ax.set_xlabel("Sample no.")
|
||||
ax.set_ylabel("Amplitude")
|
||||
|
||||
if x is not None:
|
||||
y, x = x, y
|
||||
else:
|
||||
x = np.arange(0, len(y))
|
||||
|
||||
ax.plot(x, y, **line_kwargs)
|
||||
|
||||
return ax
|
||||
|
||||
def correlation_figure(y1, y2, lags=None, lag_dt=1, ax=None, fig_kwargs={}, **line_kwargs):
|
||||
""" figure """
|
||||
if ax is None:
|
||||
fig, ax = plt.subplots(**fig_kwargs)
|
||||
|
||||
ax.set_xlabel("Delay [samples]")
|
||||
ax.set_ylabel("Normalised Correlation")
|
||||
|
||||
corrs, (_, __, lags) = my_correlation(y1, y2, lags=lags, normalise=True)
|
||||
|
||||
ax.plot(lag_dt * lags, corrs, **line_kwargs)
|
||||
|
||||
return ax, (corrs, lags)
|
||||
|
||||
|
||||
def main(N_x = 1e4, x_delay=5, separate_figures=True, fig_kwargs={}):
|
||||
|
||||
x = np.linspace(-2, 8, int(N_x))
|
||||
|
||||
y1 = slanted_boxcar(x, x0=0, slant_width=0, box_width=3) + 1/4*sine(x, x0=-3/2, x1=3/2, phase=np.pi/2)
|
||||
y2 = slanted_boxcar(x, x0=0+x_delay, slant_width=1, box_width=0)
|
||||
|
||||
|
||||
if not separate_figures:
|
||||
fig, axs = plt.subplots(2,1, **fig_kwargs)
|
||||
else:
|
||||
axs = (None, None)
|
||||
figs = []
|
||||
|
||||
if True:
|
||||
line_kwargs = dict(alpha=0.7)
|
||||
ax = plot_waveform(x, y1, ax=axs[0], label="Waveform 1", fig_kwargs=fig_kwargs)
|
||||
plot_waveform(x, y2, ax=ax, label="Waveform 2")
|
||||
|
||||
ax.set_xlabel("Time")
|
||||
ax.set_ylabel("Amplitude")
|
||||
|
||||
ax.grid()
|
||||
|
||||
ax.get_figure().tight_layout()
|
||||
|
||||
figs.append(ax.get_figure())
|
||||
|
||||
|
||||
if True:
|
||||
lag_dt = x[1] - x[0]
|
||||
|
||||
ax2, (corrs, lags) = correlation_figure(y2, y1, ax=axs[1], lag_dt=lag_dt, fig_kwargs=fig_kwargs)
|
||||
ax2.grid()
|
||||
|
||||
ax2.set_xlabel("Delay")
|
||||
ax2.set_ylabel("Normalised Correlation")
|
||||
|
||||
best_lag_idx = np.argmax(corrs)
|
||||
best_lag_x = lags[best_lag_idx] * lag_dt
|
||||
|
||||
if True:
|
||||
wx = 4
|
||||
ax2.set_xlim(x_delay - wx, x_delay + wx)
|
||||
|
||||
ax2.axvline(best_lag_x, ls='dashed', alpha=0.7, color='r')
|
||||
ax2.get_figure().tight_layout()
|
||||
figs.append(ax2.get_figure())
|
||||
|
||||
if not separate_figures:
|
||||
return fig
|
||||
else:
|
||||
return figs
|
||||
|
||||
if __name__ == "__main__":
|
||||
from argparse import ArgumentParser
|
||||
import os.path as path
|
||||
|
||||
import os
|
||||
import sys
|
||||
# Append parent directory to import path so pyfiglib can be found
|
||||
sys.path.append(os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))))
|
||||
import pyfiglib as pfl
|
||||
|
||||
|
||||
parser = ArgumentParser(description=__doc__)
|
||||
parser.add_argument("fname", metavar="path/to/figure[/]", nargs="*", help="Location for generated figure, will append __file__ if a directory. If not supplied, figure is shown.", default=os.getcwd())
|
||||
|
||||
args = parser.parse_args()
|
||||
default_extensions = ['.pdf', '.png']
|
||||
default_names = ['waveforms', 'correlation']
|
||||
|
||||
if args.fname == 'none':
|
||||
args.fname = None
|
||||
|
||||
pfl.rcParams['font.size'] *= 1.5
|
||||
|
||||
###
|
||||
figs = main(separate_figures=True, fig_kwargs=dict(figsize=(6,4)))
|
||||
|
||||
### Save or show figures
|
||||
if not args.fname:
|
||||
# empty list, False, None
|
||||
plt.show()
|
||||
else:
|
||||
|
||||
for i, f in enumerate(figs):
|
||||
f.tight_layout()
|
||||
|
||||
if len(args.fname) == 1 and len(figs) != 1:
|
||||
for ext in default_extensions:
|
||||
f.savefig(path.join(args.fname[0], default_names[i]) + "." + ext, transparent=True)
|
||||
else:
|
||||
f.savefig(args.fname[i], transparent=True)
|
||||
|
||||
|
Binary file not shown.
Binary file not shown.
BIN
figures/pulse/antenna_signals_tdt0.2.pdf
Normal file
BIN
figures/pulse/antenna_signals_tdt0.2.pdf
Normal file
Binary file not shown.
BIN
figures/pulse/antenna_signals_tdt0.2_zoom.pdf
Normal file
BIN
figures/pulse/antenna_signals_tdt0.2_zoom.pdf
Normal file
Binary file not shown.
BIN
figures/pulse/correlation_tdt0.2.pdf
Normal file
BIN
figures/pulse/correlation_tdt0.2.pdf
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
figures/pulse/hilbert_timing.pdf
Normal file
BIN
figures/pulse/hilbert_timing.pdf
Normal file
Binary file not shown.
BIN
figures/pulse/hilbert_timing_interpolation_template.pdf
Normal file
BIN
figures/pulse/hilbert_timing_interpolation_template.pdf
Normal file
Binary file not shown.
BIN
figures/pulse/hilbert_timing_zoom.pdf
Normal file
BIN
figures/pulse/hilbert_timing_zoom.pdf
Normal file
Binary file not shown.
BIN
figures/pulse/interpolation_deltapeak+antenna.pdf
Normal file
BIN
figures/pulse/interpolation_deltapeak+antenna.pdf
Normal file
Binary file not shown.
Binary file not shown.
BIN
figures/pulse/time_res_vs_snr_multiple_dt_large.pdf
Normal file
BIN
figures/pulse/time_res_vs_snr_multiple_dt_large.pdf
Normal file
Binary file not shown.
BIN
figures/pulse/time_res_vs_snr_multiple_dt_smaller.pdf
Normal file
BIN
figures/pulse/time_res_vs_snr_multiple_dt_smaller.pdf
Normal file
Binary file not shown.
BIN
figures/pulse/upsampled_tdt0.2.pdf
Normal file
BIN
figures/pulse/upsampled_tdt0.2.pdf
Normal file
Binary file not shown.
BIN
figures/pulse/upsampled_tdt0.2_zoom.pdf
Normal file
BIN
figures/pulse/upsampled_tdt0.2_zoom.pdf
Normal file
Binary file not shown.
12
figures/pyfiglib.py
Normal file
12
figures/pyfiglib.py
Normal file
|
@ -0,0 +1,12 @@
|
|||
"""
|
||||
Various functions usable by multiple scripts
|
||||
"""
|
||||
from matplotlib import rcParams
|
||||
import matplotlib.pyplot as plt
|
||||
import os.path as path
|
||||
import numpy as np
|
||||
|
||||
rcParams["text.usetex"] = True
|
||||
rcParams["font.family"] = "serif"
|
||||
rcParams["font.size"] = "12"
|
||||
rcParams["grid.linestyle"] = 'dotted'
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
dc_grid_power_time_fixes.py.X400.repair_full.scale4d.pdf
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
presentations/2023-07-06_final_masters/2023-Masters.pdf
Normal file
BIN
presentations/2023-07-06_final_masters/2023-Masters.pdf
Normal file
Binary file not shown.
934
presentations/2023-07-06_final_masters/2023-Masters.tex
Normal file
934
presentations/2023-07-06_final_masters/2023-Masters.tex
Normal file
|
@ -0,0 +1,934 @@
|
|||
% vim: fdm=marker fmr=<<<,>>>
|
||||
%\documentclass[notes]{beamer}
|
||||
\documentclass[]{beamer}
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%
|
||||
% Preamble <<<
|
||||
%%%%%%%%%%%%%%%
|
||||
|
||||
\usepackage[british]{babel}
|
||||
\usepackage{csquotes}
|
||||
\usepackage{amsmath}
|
||||
\usepackage{hyperref}
|
||||
\usepackage[backend=bibtex,style=numeric,maxnames=1]{biblatex}
|
||||
\usepackage{appendixnumberbeamer}
|
||||
\usepackage{graphicx}
|
||||
\usepackage{tikz}
|
||||
\usepackage{xurl}
|
||||
\usepackage{physics}
|
||||
\usepackage{cancel}
|
||||
\usepackage{multicol}
|
||||
\graphicspath{{.}{./figures/}{../../figures/}}
|
||||
\usepackage{todo}
|
||||
|
||||
\addbibresource{../../bibliotheca/bibliography.bib}
|
||||
|
||||
% Use arXiv identifier if available
|
||||
\DeclareCiteCommand{\arxivcite}
|
||||
{\usebibmacro{prenote}}
|
||||
{\usebibmacro{citeindex}%
|
||||
[\usebibmacro{cite}]
|
||||
\newunit
|
||||
\clearfield{eprintclass}
|
||||
\usebibmacro{eprint}}
|
||||
{\multicitedelim}
|
||||
{\usebibmacro{postnote}}
|
||||
|
||||
\newcommand{\imagesource}[1]{~\\[0pt]\vspace*{-7pt}\hspace*{10pt}{\tiny#1}}
|
||||
\newcommand{\imagecredit}[1]{\imagesource{Credit:\thinspace#1}}
|
||||
%\newcommand{\imagecite}[1]{\imagesource{\arxivcite{#1}}}
|
||||
|
||||
% Disable Captions
|
||||
\setbeamertemplate{caption}{\raggedright\small\insertcaption\par}
|
||||
|
||||
% no to navigation, yes to frame numbering
|
||||
\beamertemplatenavigationsymbolsempty
|
||||
\setbeamerfont{page number in head/foot}{size=\normalsize}
|
||||
\setbeamertemplate{page number in head/foot}{\insertframenumber/\inserttotalframenumber}
|
||||
%\setbeamercolor{page number in head/foot}{fg=red}
|
||||
\setbeamerfont{section in head/foot}{size=\small}
|
||||
\setbeamercolor{section in head/foot}{fg=gray}
|
||||
\setbeamertemplate{section in head/foot}{\textit{\insertsectionhead}}
|
||||
%\setbeamertemplate{footline}[frame number]
|
||||
\setbeamertemplate{footline}
|
||||
{%
|
||||
\leavevmode%
|
||||
\hbox{%
|
||||
\begin{beamercolorbox}[wd=.7\paperwidth,ht=2.55ex,dp=1ex,leftskip=1em,rightskip=1em,sep=0pt]{title in head/foot}%
|
||||
\usebeamertemplate*{section in head/foot}%
|
||||
\hfill%
|
||||
\end{beamercolorbox}
|
||||
\begin{beamercolorbox}[wd=.1\paperwidth,ht=2.55ex,dp=1ex,sep=0pt]{my empty section}
|
||||
\hfill%
|
||||
\end{beamercolorbox}
|
||||
\begin{beamercolorbox}[wd=.2\paperwidth,ht=2.55ex,dp=1ex,leftskip=1em,rightskip=1em,sep=0pt]{page number in head/foot}%
|
||||
\hfill%
|
||||
\usebeamertemplate*{page number in head/foot}%
|
||||
\end{beamercolorbox}}%
|
||||
}
|
||||
|
||||
%% From https://tex.stackexchange.com/a/55849
|
||||
% Keys to support piece-wise uncovering of elements in TikZ pictures:
|
||||
% \node[visible on=<2->](foo){Foo}
|
||||
% \node[visible on=<{2,4}>](bar){Bar} % put braces around comma expressions
|
||||
%
|
||||
% Internally works by setting opacity=0 when invisible, which has the
|
||||
% adavantage (compared to \node<2->(foo){Foo} that the node is always there, hence
|
||||
% always consumes space plus that coordinate (foo) is always available.
|
||||
%
|
||||
% The actual command that implements the invisibility can be overriden
|
||||
% by altering the style invisible. For instance \tikzsset{invisible/.style={opacity=0.2}}
|
||||
% would dim the "invisible" parts. Alternatively, the color might be set to white, if the
|
||||
% output driver does not support transparencies (e.g., PS)
|
||||
%
|
||||
\tikzset{
|
||||
invisible/.style={opacity=0},
|
||||
visible on/.style={alt={#1{}{invisible}}},
|
||||
alt/.code args={<#1>#2#3}{%
|
||||
\alt<#1>{\pgfkeysalso{#2}}{\pgfkeysalso{#3}} % \pgfkeysalso doesn't change the path
|
||||
},
|
||||
}
|
||||
|
||||
\hypersetup{pdfpagemode=UseNone} % don't show bookmarks on initial view
|
||||
|
||||
% >>> Preamble
|
||||
%%%%%%%%%%%%%%%
|
||||
% Meta data <<<
|
||||
%%%%%%%%%%%%%%%
|
||||
\def\thesistitle{Enhancing Timing Accuracy\texorpdfstring{\\[0.3cm]}{ }in Air Shower Radio Detectors}
|
||||
\def\thesissubtitle{}
|
||||
\def\thesisauthorfirst{E.T.}
|
||||
\def\thesisauthorsecond{de Boone}
|
||||
\def\thesisauthoremailraw{ericteunis@deboone.nl}
|
||||
\def\thesisauthoremail{\href{mailto:\thesisauthoremailraw}{\thesisauthoremailraw}}
|
||||
\def\thesissupervisorfirst{dr. Harm}
|
||||
\def\thesissupervisorsecond{Schoorlemmer}
|
||||
\def\thesissupervisoremailraw{}
|
||||
\def\thesissupervisoremail{\href{mailto:\thesissupervisoremailraw}{\thesissupervisoremailraw}}
|
||||
|
||||
\title[\thesistitle]{\thesistitle}
|
||||
|
||||
\date{July, 2023}
|
||||
|
||||
\author[\thesisauthorfirst\space\thesisauthorsecond]{%
|
||||
\texorpdfstring{\thesisauthorfirst\space\thesisauthorsecond\thanks{e-mail: \thesisauthoremail}\\
|
||||
\vspace*{0.5em}
|
||||
{Supervisor: \thesissupervisorfirst\space\thesissupervisorsecond }
|
||||
}{\thesisauthorfirst\space\thesisauthorsecond<\thesisauthoremailraw>}
|
||||
}
|
||||
|
||||
% >>> Meta data
|
||||
|
||||
\newcommand{\tclock}{\ensuremath{t_\mathrm{clock}}}
|
||||
\newcommand{\tClock}{\tclock}
|
||||
\newcommand{\ns}{\ensuremath{\mathrm{ns}}}
|
||||
|
||||
\newcommand{\pTrue}{\phi}
|
||||
\newcommand{\PTrue}{\Phi}
|
||||
\newcommand{\pMeas}{\varphi}
|
||||
|
||||
\newcommand{\pTrueEmit}{\pTrue_0}
|
||||
\newcommand{\pTrueArriv}{\pTrueArriv'}
|
||||
\newcommand{\pMeasArriv}{\pMeas_0}
|
||||
\newcommand{\pProp}{\pTrue_d}
|
||||
\newcommand{\pClock}{\pTrue_c}
|
||||
|
||||
\begin{document}
|
||||
{ % Titlepage <<<
|
||||
\setbeamertemplate{background}
|
||||
{%
|
||||
\parbox[c][\paperheight][c]{\paperwidth}{%
|
||||
\centering%
|
||||
\vfill%
|
||||
\includegraphics[width=\textwidth]{beacon/array_setup_gps_transmitter_cows.png}%
|
||||
\vspace*{2em}
|
||||
}%
|
||||
}
|
||||
\setbeamertemplate{footline}{} % no page number here
|
||||
\frame{ \titlepage }
|
||||
} % >>>
|
||||
|
||||
%%%%%%%%%%%%%%%
|
||||
% Start of slides <<<
|
||||
%%%%%%%%%%%%%%%
|
||||
\section{Cosmic Particles Detection}% <<<<
|
||||
% Sources, Types, Propagation, Observables
|
||||
% Flux -> Large instrumentation area
|
||||
% Detection methods of Auger
|
||||
% - FD, SD
|
||||
% AERA / AugerPrime RD or GRAND
|
||||
\begin{frame}{Ultra High Energy particles}
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=0.9\textwidth]{astroparticle/bk978-0-7503-2344-4ch1f2_hr.jpg}%
|
||||
\imagecredit{Juan Antonio Aguilar and Jamie Yang. IceCube/WIPAC}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Ultra High Energy particle flux}
|
||||
\begin{columns}
|
||||
\begin{column}{0.6\textwidth}
|
||||
\begin{figure}
|
||||
\centering
|
||||
%\includegraphics[width=0.7\textwidth]{astroparticle/cr_flux_PDG_2023.pdf}%
|
||||
\includegraphics[width=\textwidth]{astroparticle/spectrum.png}%
|
||||
\imagecredit{\nocite{PDG2022}Particle Data Group}
|
||||
\end{figure}
|
||||
\end{column}
|
||||
\begin{column}{0.5\textwidth}
|
||||
Large Area Experiments:\\
|
||||
%\begin{multicols}{2}
|
||||
\begin{itemize}
|
||||
\item Pierre Auger Observatory
|
||||
\item Giant Radio Array for Neutrino Detection
|
||||
\end{itemize}
|
||||
\vfill
|
||||
\begin{figure}
|
||||
\includegraphics[width=\textwidth]{images/A-schematic-of-the-Pierre-Auger-Observatory-where-each-black-dot-is-a-water-Cherenkov.png}
|
||||
\imagecredit{\href{https://www.researchgate.net/figure/A-schematic-of-the-Pierre-Auger-Observatory-where-each-black-dot-is-a-water-Cherenkov_fig1_319524774}{Hans O. Klages}}
|
||||
\end{figure}
|
||||
%\end{multicols}
|
||||
\end{column}
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
|
||||
\begin{frame}{Air Showers}
|
||||
% Observables
|
||||
% \begin{columns}
|
||||
% \begin{column}{0.45\textwidth}
|
||||
% \begin{figure}
|
||||
% \includegraphics[width=\textwidth]{airshower/shower_development_depth_iron_proton_photon_with_muons.pdf}
|
||||
% \imagecredit{H. Schoorlemmer}
|
||||
% \end{figure}
|
||||
% \end{column}
|
||||
% \hfill
|
||||
% \begin{column}{0.45\textwidth}
|
||||
% \end{column}
|
||||
% \end{columns}
|
||||
\begin{figure}
|
||||
\hspace*{-2em}
|
||||
\centering
|
||||
\includegraphics[width=1.13\textwidth]{airshower/Auger_ScreenShot_GoldenHybrid1_shower_SD_FD.png}
|
||||
\imagesource{From:~\url{https://opendata.auger.org/display.php?evid=172657447200}}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Air Shower Radio Emission}
|
||||
\begin{columns}
|
||||
\begin{column}{0.45\textwidth}
|
||||
\begin{figure}
|
||||
\includegraphics[width=\textwidth]{airshower/shower_development_depth_iron_proton_photon.pdf}
|
||||
\imagecredit{H. Schoorlemmer}
|
||||
\end{figure}
|
||||
\end{column}
|
||||
\hfill
|
||||
\begin{column}{0.545\textwidth}
|
||||
\begin{figure}
|
||||
\centering
|
||||
Charge excess
|
||||
\includegraphics[width=\textwidth]{airshower/airshower_radio_polarisation_askaryan.png}\\%
|
||||
\vspace*{2em}
|
||||
Geomagnetic
|
||||
\includegraphics[width=\textwidth]{airshower/airshower_radio_polarisation_geomagnetic.png}%
|
||||
\imagesource{\arxivcite{Huege:2017bqv}}
|
||||
\end{figure}
|
||||
\end{column}
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
|
||||
% >>>>
|
||||
\section{Radio Interferometry}% <<<<
|
||||
\begin{frame}{Radio Interferometry: Concept}
|
||||
Interferometry: Amplitude + Timing information of the $\vec{E}$-field\\
|
||||
\vspace*{ 0.8em }
|
||||
\begin{columns}
|
||||
\begin{column}{0.4\textwidth}
|
||||
\begin{figure}
|
||||
\includegraphics<1>[width=\textwidth]{radio_interferometry/rit_schematic_base.pdf}%
|
||||
\includegraphics<2>[width=\textwidth]{radio_interferometry/rit_schematic_far.pdf}%
|
||||
\includegraphics<3>[width=\textwidth]{radio_interferometry/rit_schematic_close.pdf}%
|
||||
\includegraphics<4>[width=\textwidth]{radio_interferometry/rit_schematic_true.pdf}%
|
||||
\end{figure}
|
||||
\end{column}
|
||||
\begin{column}{0.6\textwidth}
|
||||
\vspace*{\fill}
|
||||
\begin{itemize}
|
||||
\item<1-> Measure signal $S_i(t)$ at antenna $\vec{a_i}$
|
||||
|
||||
\item<2-> Calculate light travel time \\[5pt]
|
||||
\quad $\Delta_i(\vec{x}) = \frac{ \left| \vec{x} - \vec{a_i} \right| }{c} n_{eff}$
|
||||
|
||||
\item<2-> Sum waveforms accounting \\
|
||||
for time delay \\[5pt]
|
||||
\quad $S(\vec{x}, t) = \sum S_i( t + \Delta_i(\vec{x}) )$
|
||||
\end{itemize}
|
||||
\vspace*{\fill}
|
||||
\begin{figure}% Spatially
|
||||
\includegraphics<1>[width=0.8\textwidth]{radio_interferometry/single_trace.png}%
|
||||
\includegraphics<2>[width=0.8\textwidth]{radio_interferometry/trace_overlap_bad.png}%
|
||||
\includegraphics<3>[width=0.8\textwidth]{radio_interferometry/trace_overlap_medium.png}%
|
||||
\includegraphics<4>[width=0.8\textwidth]{radio_interferometry/trace_overlap_best.png}%
|
||||
\end{figure}
|
||||
\end{column}
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Radio Interferometry: Image}
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=0.7\textwidth]{2006.10348/fig01.png}%
|
||||
\imagesource{\arxivcite{Schoorlemmer:2020low}}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
% >>>>
|
||||
\section{Timing in Air Shower Radio Detectors}% <<<<
|
||||
% GNSS
|
||||
% reference system: White Rabbit, AERA beacon, (ADS-B?)
|
||||
% GRAND setup and measurements
|
||||
\begin{frame}{Timing in Air Shower Radio Detectors}
|
||||
% Geometry
|
||||
Relative timing is important for Radio Interferometry. {\small ($ 1\ns\, @ c \sim 30\mathrm{cm}$)}\\
|
||||
\vspace*{1em}
|
||||
Large inter-detector spacing ($\sim 1\mathrm{km}$)\\
|
||||
$\mapsto$ Default timing mechanism: Global Navigation Satellite Systems\\
|
||||
\vspace*{1em}
|
||||
What is the accuracy of such systems?\\
|
||||
\visible<2>{
|
||||
\quad @Auger: $\sigma_t \gtrsim 10\ns$
|
||||
}
|
||||
\vfill
|
||||
\begin{columns}
|
||||
\begin{column}{0.45\textwidth}
|
||||
\begin{figure}
|
||||
\visible<2>{
|
||||
\centering
|
||||
\includegraphics[width=\textwidth]{gnss/auger/1512.02216.figure3.gnss-time-differences.png}
|
||||
\vspace*{-1em}
|
||||
\imagesource{\arxivcite{PierreAuger:2015aqe}}
|
||||
}
|
||||
\end{figure}
|
||||
\end{column}
|
||||
\hfill
|
||||
\begin{column}{0.5\textwidth}%<<<
|
||||
\vfill
|
||||
\begin{figure}
|
||||
\begin{tikzpicture}[scale=1]
|
||||
\clip (2.5 , 0) rectangle ( 6, 2.5);
|
||||
\node[anchor=south west, inner sep=0] (image) at (0,0) {\includegraphics[width=\textwidth]{beacon/array_setup_gps_transmitter_cows.png}};
|
||||
%\draw[help lines,xstep=1,ystep=1] (0,0) grid (11,5);
|
||||
\end{tikzpicture}
|
||||
\imagecredit{H. Schoorlemmer}
|
||||
\end{figure}
|
||||
\end{column}%>>>
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
% Geometry
|
||||
% Pulse method + SNR
|
||||
% Sine method + SNR
|
||||
\begin{frame}[t]{Timing in Radio Detectors: Beacon Synchronisation}
|
||||
% Geometry
|
||||
Relative timing is important for Radio Interferometry.\\
|
||||
\vspace*{1em}
|
||||
Default Timing mechanism: {\color<1>{red} Global Navigation Satellite Systems}\\
|
||||
\visible<1->{
|
||||
+Extra Timing mechanism: {\color<1>{blue} Beacon} (Pulse, Sine)%, {\color{green} ADS-B}
|
||||
}
|
||||
\vfill
|
||||
\begin{figure}
|
||||
\hspace*{-2em}
|
||||
\begin{tikzpicture}
|
||||
\node[anchor=south west, inner sep=0] (image) at (0,0) {\includegraphics[width=0.8\textwidth]{beacon/array_setup_gps_transmitter_cows.png}};
|
||||
\begin{scope}[x={(image.south east)}, y={(image.north west)}]
|
||||
%\draw[help lines,xstep=.1,ystep=.1] (0,0) grid (1,1);
|
||||
%\foreach \x in {0,1,...,9} { \node [anchor=north] at (\x/10,0) {0.\x}; }
|
||||
%\foreach \y in {0,1,...,9} { \node [anchor=east] at (0,\y/10) {0.\y}; }
|
||||
\node (transmitter) at (0.23, 0.32) {};
|
||||
\node (gnss) at (0.85, 0.87) {};
|
||||
%% Aeroplane
|
||||
%\node[ visible on=<{2-}>] (aeroplane) at (0.5, 0.67) {\scalebox{-1}[1]{\includegraphics[width=1.5cm]{templates/aeroplane.png}}};
|
||||
%\draw[green, ultra thick, visible on=<{2-}>] (aeroplane.center) circle[radius=8mm];
|
||||
%% Circles
|
||||
\draw[red, ultra thick, visible on=<{1-}>] (gnss.center) circle[radius=8mm];
|
||||
\draw[blue, ultra thick, visible on=<{1-}>] (transmitter.center) circle[radius=8mm];
|
||||
%% Mask Transmitter
|
||||
\fill[white, visible on=<0>] (0,0) rectangle (0.45,1) ;
|
||||
\end{scope}
|
||||
\end{tikzpicture}
|
||||
\imagecredit{H. Schoorlemmer}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
\section{Beacon Synchronisation}
|
||||
\begin{frame}[t]{Beacon Synchronisation: Geometry}
|
||||
Local antenna time $t'_i$ due to time~delay~$t_{\mathrm{d}i}$, clock~skew~$\sigma_i$\\
|
||||
and transmitter~time~$t_\mathrm{tx}$
|
||||
\begin{equation*}
|
||||
t'_i = t_{tx} + t_{\mathrm{d}i} + \sigma_i
|
||||
\end{equation*}
|
||||
\vfill
|
||||
\begin{figure}
|
||||
\begin{tikzpicture}
|
||||
[inner sep=2mm,
|
||||
place/.style={circle,draw=black!50,fill=white,thick}
|
||||
]
|
||||
\clip (0 , 0) rectangle (9, 2.5);
|
||||
\node[anchor=south west, inner sep=0] (image) at (0,0) {\includegraphics[width=0.8\textwidth]{beacon/array_setup_gps_transmitter_cows.png}};
|
||||
\begin{scope}[x={(image.south east)}, y={(image.north west)}]
|
||||
%\draw[help lines,xstep=.1,ystep=.1] (0,0) grid (1,1);
|
||||
%\foreach \x in {0,1,...,9} { \node [anchor=north] at (\x/10,0) {0.\x}; }
|
||||
%\foreach \y in {0,1,...,9} { \node [anchor=east] at (0,\y/10) {0.\y}; }
|
||||
%\fill[white] (0.4,0) rectangle (0.6,0.4);
|
||||
\node (transmitter) at (0.23, 0.32) {};
|
||||
\node (ant1) at (0.51, 0.32) [place] {1};
|
||||
%\node (ant1) at (0.72, 0.25) [place] {1};
|
||||
\node (ant2) at (0.65, 0.50) [place] {2};
|
||||
%
|
||||
\draw (transmitter.center) to node [below] {$t_{\mathrm{d}1}$} (ant1) ;
|
||||
\draw (transmitter.center) to node [above] {$t_{\mathrm{d}2}$} (ant2) ;
|
||||
\end{scope}
|
||||
\end{tikzpicture}
|
||||
\imagecredit{H. Schoorlemmer}
|
||||
\end{figure}
|
||||
\vfill
|
||||
|
||||
Measured time difference:\\
|
||||
\vspace{-0.5em}
|
||||
\begin{equation*}
|
||||
\Delta t'_{12} = t'_1 - t'_2 = \Delta t_{\mathrm{d}12} + \sigma_{12} + (t_\mathrm{tx} - t_\mathrm{tx})
|
||||
\end{equation*}
|
||||
\end{frame}
|
||||
|
||||
|
||||
\subsection{Pulse Beacon}
|
||||
\begin{frame}{Pulse Beacon}
|
||||
\begin{figure}
|
||||
\includegraphics[width=\textwidth]{pulse/antenna_signals_tdt0.2_zoom.pdf}
|
||||
\end{figure}
|
||||
\vfill
|
||||
\end{frame}
|
||||
\begin{frame}{Pulse Beacon}
|
||||
Correlation: similarity between two signals.\\
|
||||
\begin{figure}
|
||||
\includegraphics[width=\textwidth]{pulse/correlation_tdt0.2_zoom.pdf}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
\begin{frame}{Pulse Beacon Timing}
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=0.8\textwidth]{pulse/time_res_vs_snr_multiple_dt.pdf}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
\subsection{Sine Beacon}
|
||||
\begin{frame}{(Multi)Sine Beacon}
|
||||
Phase measurement $\varphi'_i$ using Fourier Transform, $k$~unknown:
|
||||
\begin{equation*}
|
||||
t'_i = \left[ \frac{\varphi'_i}{2\pi} \; + \; k \right] T
|
||||
\end{equation*}
|
||||
\begin{figure}
|
||||
\includegraphics[width=.45\textwidth]{methods/fourier/waveform.pdf}
|
||||
\hfill
|
||||
\includegraphics<1>[width=.45\textwidth]{methods/fourier/noisy_spectrum.pdf}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
\begin{frame}{(Multi)Sine Beacon Timing}
|
||||
\vspace*{1em}
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=0.8\textwidth]{beacon/time_res_vs_snr_large.pdf}
|
||||
\end{figure}
|
||||
\vspace*{-1em}
|
||||
\begin{columns}
|
||||
\begin{column}[b]{0.4\textwidth}
|
||||
\centering
|
||||
\tiny
|
||||
Random~Phasor~Sum:
|
||||
\autocite{goodman1985:2.9}~
|
||||
``Statistical~Optics'',
|
||||
J.~Goodman
|
||||
\end{column}
|
||||
\begin{column}[b]{0.7\textwidth}
|
||||
\tiny\begin{equation*}
|
||||
p_\PTrue(\pTrue; s, \sigma) =
|
||||
\frac{ e^{-\left(\frac{s^2}{2\sigma^2}\right)} }{ 2 \pi }
|
||||
+
|
||||
\sqrt{\frac{1}{2\pi}}
|
||||
\frac{s}{\sigma}
|
||||
e^{-\left( \frac{s^2}{2\sigma^2}\sin^2{\pTrue} \right)}
|
||||
\frac{\left(
|
||||
1 + \erf{ \frac{s \cos{\pTrue}}{\sqrt{2} \sigma }}
|
||||
\right)}{2}
|
||||
\cos{\pTrue}
|
||||
\end{equation*}
|
||||
\end{column}
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Beacon Synchronisation: Conclusion}
|
||||
\vspace*{2em}
|
||||
\begin{columns}[T]
|
||||
\begin{column}{0.49\textwidth}
|
||||
\begin{center}\bfseries Pulse \end{center}
|
||||
\vspace*{-1em}
|
||||
\begin{itemize}
|
||||
\item discrete
|
||||
\item requires template
|
||||
\end{itemize}
|
||||
\end{column}
|
||||
\hfill
|
||||
\begin{column}{0.49\textwidth}
|
||||
\begin{center}\bfseries Sine \end{center}
|
||||
\vspace*{-1em}
|
||||
\begin{itemize}
|
||||
\item continuous
|
||||
\item longer trace\\ $\mapsto$ better SNR
|
||||
\item $k$ period unknown
|
||||
\end{itemize}
|
||||
\end{column}
|
||||
\end{columns}
|
||||
\vfill
|
||||
\begin{columns}
|
||||
\begin{column}{0.49\textwidth}
|
||||
\includegraphics[width=1\textwidth]{pulse/time_res_vs_snr_multiple_dt_small.pdf}
|
||||
\end{column}
|
||||
\hfill
|
||||
\begin{column}{0.49\textwidth}
|
||||
\includegraphics[width=1\textwidth]{beacon/time_res_vs_snr_small.pdf}
|
||||
\end{column}
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
% >>>>
|
||||
\section{Single Sine Synchronisation}% <<<<
|
||||
% Sine method + Radio Interferometry
|
||||
\begin{frame}{Single Sine Synchronisation}
|
||||
$k$ is discrete, lift the period degeneracy using the air~shower radiosignal
|
||||
\begin{equation*}
|
||||
t'_i = (\frac{\varphi'_i}{2\pi} + n_i)T = A_i + B_i
|
||||
\end{equation*}
|
||||
\vspace*{-2em}
|
||||
\begin{figure}
|
||||
%\centering
|
||||
\hspace*{-5em}
|
||||
\includegraphics<1>[width=1.3\textwidth]{beacon/08_beacon_sync_timing_outline.pdf}%
|
||||
\includegraphics<2>[width=1.3\textwidth]{beacon/08_beacon_sync_synchronised_outline.pdf}%
|
||||
\includegraphics<3>[width=1.3\textwidth]{beacon/08_beacon_sync_synchronised_period_alignment.pdf}%
|
||||
\end{figure}
|
||||
\begin{align*}
|
||||
\Delta t'_{ij} &= (A_j + B_j) - (A_i + B_i) + \Delta t'_\varphi \\
|
||||
&= \Delta A_{ij} + \only<1>{\Delta t'_\varphi}\only<2->{\cancel{\Delta t'_\varphi}} + k_{ij}T\\
|
||||
\end{align*}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Single Sine Synchronisation Simulation}
|
||||
Air Shower simulation on a grid of 100x100 antennas.
|
||||
\\
|
||||
\begin{columns}
|
||||
\begin{column}{0.45\textwidth}
|
||||
\begin{itemize}
|
||||
\item<2-> Add beacon ($T\sim20\ns$) to antenna
|
||||
\item<2-> Randomise clocks ($\sigma=30\ns$)
|
||||
\item<3-> Measure phase with DTFT
|
||||
\item<3-> Repair clocks for small offsets
|
||||
\item<3-> Iteratively find best $k_{ij}$
|
||||
\end{itemize}
|
||||
\end{column}
|
||||
\hfill
|
||||
\begin{column}{0.5\textwidth}
|
||||
\begin{figure}
|
||||
\hspace*{-2em}
|
||||
\includegraphics<1>[width=1.2\textwidth]{ZH_simulation/array_geometry_shower_amplitude.png}
|
||||
\includegraphics<2>[width=1.2\textwidth]{ZH_simulation/ba_measure_beacon_phase.py.A74.no_mask.pdf}%
|
||||
\includegraphics<3>[width=1.2\textwidth]{ZH_simulation/ba_measure_beacon_phase.py.A74.masked.pdf}%
|
||||
\end{figure}
|
||||
\end{column}
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Single Sine Synchronisation: Iterative $k_{0i}$-finding}
|
||||
\small{
|
||||
``Interferometry'' while allowing to shift by $T = 1/f_\mathrm{beacon}$
|
||||
\\[5pt]
|
||||
Iterative process optimizing signal power: \\
|
||||
\; Scan positions finding the best $\{k_{0i}\}$ set,\\
|
||||
\; then evaluate on a grid near shower axis and zoom in.
|
||||
}
|
||||
|
||||
\only<1-3>{\begin{figure}
|
||||
\includegraphics<1>[width=0.8\textwidth]{ZH_simulation/findks/ca_period_from_shower.py.run0.i1.zoomed.beacon.pdf}
|
||||
\includegraphics<2>[width=0.8\textwidth]{ZH_simulation/findks/ca_period_from_shower.py.maxima.run0.pdf}
|
||||
\includegraphics<3>[width=0.8\textwidth]{ZH_simulation/findks/ca_period_from_shower.py.reconstruction.run0.power.pdf}
|
||||
\end{figure}}
|
||||
\only<4>{\begin{figure}
|
||||
\includegraphics[width=0.4\textwidth]{ZH_simulation/findks/ca_period_from_shower.py.maxima.run1.pdf}
|
||||
\hfill
|
||||
\includegraphics[width=0.4\textwidth]{ZH_simulation/findks/ca_period_from_shower.py.reconstruction.run1.power.pdf}
|
||||
\vspace{0.5cm}
|
||||
\includegraphics[width=0.4\textwidth]{ZH_simulation/findks/ca_period_from_shower.py.maxima.run2.pdf}
|
||||
\hfill
|
||||
\includegraphics[width=0.4\textwidth]{ZH_simulation/findks/ca_period_from_shower.py.reconstruction.run2.power.pdf}
|
||||
\end{figure}}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Single Sine Synchronisation: Timing Reparation}
|
||||
\begin{columns}
|
||||
\begin{column}{0.45\textwidth}
|
||||
{ Phase reparation }
|
||||
\includegraphics[width=\textwidth]{radio_interferometry/trace_overlap/on-axis/dc_grid_power_time_fixes.py.repair_phases.axis.trace_overlap.repair_phases.pdf}%
|
||||
\vfill
|
||||
\includegraphics[width=\textwidth]{radio_interferometry/dc_grid_power_time_fixes.py.X400.repair_phases.scale4d.pdf}%
|
||||
\label{fig:sine:repairments}
|
||||
\end{column}
|
||||
\hfill
|
||||
\begin{column}{0.45\textwidth}
|
||||
{ Phase + Period reparation }
|
||||
\includegraphics[width=\textwidth]{radio_interferometry/trace_overlap/on-axis/dc_grid_power_time_fixes.py.repair_full.axis.trace_overlap.repair_full.pdf}%
|
||||
\vfill
|
||||
\includegraphics[width=\textwidth]{radio_interferometry/dc_grid_power_time_fixes.py.X400.repair_full.scale4d.pdf}%
|
||||
\end{column}
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Single Sine Synchronisation: Comparison}
|
||||
\begin{columns}
|
||||
\begin{column}{0.45\textwidth}
|
||||
{ True clock }
|
||||
\includegraphics[width=\textwidth]{radio_interferometry/trace_overlap/on-axis/dc_grid_power_time_fixes.py.no_offset.axis.trace_overlap.no_offset.pdf}%
|
||||
\vfill
|
||||
\includegraphics[width=\textwidth]{radio_interferometry/dc_grid_power_time_fixes.py.X400.no_offset.scale4d.pdf}%
|
||||
\end{column}
|
||||
\hfill
|
||||
\begin{column}{0.45\textwidth}
|
||||
{ Phase + Period reparation }
|
||||
\includegraphics[width=\textwidth]{radio_interferometry/trace_overlap/on-axis/dc_grid_power_time_fixes.py.repair_full.axis.trace_overlap.repair_full.pdf}%
|
||||
\vfill
|
||||
\includegraphics[width=\textwidth]{radio_interferometry/dc_grid_power_time_fixes.py.X400.repair_full.scale4d.pdf}%
|
||||
\end{column}
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
% >>>>
|
||||
\section{Conclusion}% <<<<
|
||||
% Single Sine + Air Shower
|
||||
% Outlook: Parasitic/Active vs Pulse/Sine table
|
||||
% Parasitic Single Sine: 67MHz Auger
|
||||
% Implementation for GRAND?
|
||||
\begin{frame}{Conclusion and Outlook}
|
||||
\begin{itemize}
|
||||
\item Cosmic Particles induce Extensive Air Showers\\[10pt]
|
||||
\item Relative Timing is crucial to Radio Interferometry\\[10pt]
|
||||
\item Pulse and Sine beacons can synchronise effectively\\[10pt]
|
||||
\item Single Sine + Air Shower works
|
||||
\end{itemize}
|
||||
\vspace*{2em}
|
||||
|
||||
\visible<2>{
|
||||
Outlook:
|
||||
\begin{itemize}
|
||||
\item Parasitic setups, i.e.~the $67\mathrm{MHz}$ in Auger,\\[10pt]
|
||||
\item Self-calibration using pulsed beacon
|
||||
\end{itemize}
|
||||
}
|
||||
\vfill
|
||||
\end{frame}
|
||||
|
||||
% >>>>
|
||||
% >>> End of Slides
|
||||
%%%%%%%%%%%%%%%
|
||||
% Backup slides <<<
|
||||
%%%%%%%%%%%%%%%
|
||||
\appendix
|
||||
\begin{frame}[c]
|
||||
\centering
|
||||
\Large {
|
||||
\textcolor{blue} {
|
||||
Supplemental material
|
||||
}
|
||||
}
|
||||
\end{frame}
|
||||
|
||||
\section*{Table of Contents}
|
||||
\begin{frame}{Table of Contents}
|
||||
\tableofcontents
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Single Sine Timing Result}
|
||||
\centering
|
||||
\includegraphics<1>[width=\textwidth]{ZH_simulation/cb_report_measured_antenna_time_offsets.py.time-amplitudes.comparison.pdf}
|
||||
\includegraphics<2>[width=\textwidth]{ZH_simulation/cb_report_measured_antenna_time_offsets.py.time-amplitudes.residuals.pdf}
|
||||
\end{frame}
|
||||
|
||||
\section{Airshower}
|
||||
\begin{frame}{Airshower development}
|
||||
\begin{figure}
|
||||
\includegraphics[width=\textwidth]{1607.08781/fig02a_airshower+detectors.png}
|
||||
\imagesource{\arxivcite{Schroder:2016hrv}}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Radio footprint; GRAND}
|
||||
\begin{figure}
|
||||
\includegraphics[width=0.9\textwidth]{grand/GRAND-detection-principle-1.png}
|
||||
\imagecredit{\arxivcite{GRAND:2018iaj}}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
|
||||
\section{Radio Interferometry}
|
||||
\begin{frame}{Radio Interferometry: Xmax Resolution vs Timing Resolution}
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=0.7\textwidth]{2006.10348/fig03_b.png}%
|
||||
\imagecredit{\arxivcite{Schoorlemmer:2020low}}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
\section{Beacon contamination}
|
||||
\begin{frame}{Sine: Air Shower - Beacon}
|
||||
\centering
|
||||
\includegraphics[width=\textwidth]{ZH_simulation/da_reconstruction.py.traces.A74.zoomed.peak.Ex.pdf}
|
||||
\end{frame}
|
||||
|
||||
\section{Beacon Pulse}
|
||||
\begin{frame}{Filter Response and Sampling}
|
||||
\centering
|
||||
\includegraphics[width=\textwidth]{pulse/interpolation_deltapeak+antenna.pdf}
|
||||
\end{frame}
|
||||
%\begin{frame}{Hilbert Timing}
|
||||
% \centering
|
||||
% \includegraphics[width=\textwidth]{pulse/hilbert_timing_zoom.pdf}
|
||||
%\end{frame}
|
||||
|
||||
\section{Beacon without TX}
|
||||
\subsection{Pulse}
|
||||
\begin{frame}{Beacon: Pulse (single baseline)}
|
||||
\begin{figure}
|
||||
\includegraphics<1>[width=\textwidth]{beacon/field/field_single_center_time.pdf}
|
||||
\includegraphics<2>[width=\textwidth]{beacon/field/field_single_left_time.pdf}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
\begin{frame}{Beacon: Pulse (3 baselines)}
|
||||
\begin{figure}
|
||||
\includegraphics<1>[width=\textwidth]{beacon/field/field_three_center_time.pdf}
|
||||
\includegraphics<2>[width=\textwidth]{beacon/field/field_three_left_time.pdf}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Beacon: Pulse (multi baseline)}
|
||||
\begin{figure}
|
||||
\includegraphics<1>[width=\textwidth]{beacon/field/field_square_ref0_time.pdf}
|
||||
\includegraphics<2>[width=\textwidth]{beacon/field/field_square_all_time.pdf}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
\subsection{Sine}
|
||||
\begin{frame}{Beacon: Sine (single baseline)}
|
||||
\begin{figure}
|
||||
\includegraphics<1>[width=\textwidth]{beacon/field/field_single_center_phase.pdf}
|
||||
\includegraphics<2>[width=\textwidth]{beacon/field/field_single_left_phase.pdf}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
\begin{frame}{Beacon: Sine (3 baseline)}
|
||||
\begin{figure}
|
||||
\includegraphics<1>[width=\textwidth]{beacon/field/field_three_center_phase.pdf}
|
||||
\includegraphics<2>[width=\textwidth]{beacon/field/field_three_left_phase.pdf}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Beacon: Sine (multi baseline reference antenna)}
|
||||
\begin{figure}
|
||||
\includegraphics<1>[width=\textwidth]{beacon/field/field_square_ref0_phase.pdf}
|
||||
%\includegraphics<2>[width=\textwidth]{beacon/field/field_square_ref0_phase_zoomtx.pdf}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
|
||||
\begin{frame}{Beacon: Sine (all baselines)}
|
||||
\begin{figure}
|
||||
\includegraphics<1>[width=\textwidth]{beacon/field/field_square_all_phase.pdf}
|
||||
%\includegraphics<2>[width=\textwidth]{beacon/field/field_square_all_phase_zoomtx.pdf}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
|
||||
\section{Fourier}
|
||||
\begin{frame}{DTFT vs DFT}
|
||||
\centering
|
||||
\includegraphics[width=\textwidth]{methods/fourier/noisy_spectrum.pdf}
|
||||
\end{frame}
|
||||
\begin{frame}{(Discrete) Fourier and Phase}
|
||||
\begin{equation*}
|
||||
\hspace{-2em}
|
||||
u(t) = \exp(i2\pi ft + \phi_t) \xrightarrow{\mathrm{Fourier\; Transform}} f', \phi_f
|
||||
\end{equation*}
|
||||
\includegraphics[width=\textwidth]{fourier/02-fourier_phase-f_max_showcase.pdf}
|
||||
\end{frame}
|
||||
\begin{frame}{Phase reconstruction?}
|
||||
\begin{figure}
|
||||
\makebox[\textwidth][c]{\includegraphics[width=1.4\textwidth]{fourier/02-fourier_phase-phi_f_vs_phi_t.pdf}}%
|
||||
\end{figure}
|
||||
\begin{block}{}
|
||||
Phase reconstruction is easy if sample rate ``correct''
|
||||
\end{block}
|
||||
\end{frame}
|
||||
|
||||
%%%%%%%%%%%%%
|
||||
\begin{frame}{Phase reconstruction?}
|
||||
\begin{block}{}
|
||||
What if sample rate ``incorrect''? \\
|
||||
\end{block}
|
||||
\begin{block}<2->{}
|
||||
$\rightarrow$ Linear interpolation ({\small $f_\mathrm{signal}$, $f_\mathrm{max}$, $f_\mathrm{submax}$, $\phi_\mathrm{max}$ and $\phi_\mathrm{submax}$})
|
||||
\end{block}
|
||||
\vspace{2em}
|
||||
\begin{figure}
|
||||
\makebox[\textwidth][c]{
|
||||
\includegraphics<1-2>[width=1.4\textwidth]{fourier/02-fourier_phase-phi_f_vs_f_max_increasing_N_samples.pdf}
|
||||
\includegraphics<3>[width=1.3\textwidth]{fourier/02-fourier_phase-phase_reconstruction-unfolded.pdf}
|
||||
\includegraphics<4>[width=1.3\textwidth]{fourier/02-fourier_phase-phase_reconstruction-unfolded-zoomed.pdf}
|
||||
}%
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
|
||||
|
||||
|
||||
%%%%%%%%%%
|
||||
\section{GNSS clock stability}
|
||||
\begin{frame}{GNSS clock stability I}
|
||||
\begin{columns}
|
||||
\begin{column}{0.4\textwidth}
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=0.8\textwidth]{grand/setup/antenna-to-adc.pdf}
|
||||
\caption{
|
||||
GRAND Digitizer Unit's ADC to antennae
|
||||
}
|
||||
\end{figure}
|
||||
\end{column}
|
||||
\hfill
|
||||
\begin{column}{0.5\textwidth}
|
||||
\begin{figure}
|
||||
\includegraphics[width=\textwidth]{grand/setup/channel-delay-setup.pdf}%
|
||||
\caption{
|
||||
Channel filterchain delay experiment
|
||||
}
|
||||
\end{figure}
|
||||
\end{column}
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{GNSS filterchain delay experiment}
|
||||
\begin{columns}
|
||||
\begin{column}{0.5\textwidth}
|
||||
\centering
|
||||
Pulse
|
||||
\includegraphics[width=\textwidth]{grand/split-cable/split-cable-delays-ch1ch4.pdf}
|
||||
\end{column}
|
||||
\begin{column}{0.5\textwidth}
|
||||
\centering
|
||||
50MHz Sinewave delay(ch1, ch2) = $46\mathrm{ps} \pm 10$
|
||||
\includegraphics[width=\textwidth]{grand/split-cable/split-cable-delay-ch1ch2-50mhz-200mVpp.pdf}
|
||||
%\includegraphics[width=\textwidth]{fourier/04_signal_to_noise_fig04.png}
|
||||
\end{column}
|
||||
\end{columns}
|
||||
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{GNSS clock stability II}
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=0.7\textwidth]{grand/setup/grand-gps-setup.pdf}
|
||||
\caption{
|
||||
GNSS stability experiment
|
||||
}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
\subsection{In the field}
|
||||
\begin{frame}{}
|
||||
\centering
|
||||
\includegraphics[width=0.5\textwidth]{images/IMG_20220712_164912_grand_DU.jpg}%
|
||||
\includegraphics[width=0.5\textwidth]{images/IMG_20220712_164904_checking_gnss.jpg}%
|
||||
\vfill
|
||||
\includegraphics[width=0.5\textwidth]{images/IMG_20220819_152900.jpg}% Outside box Inside Cabling
|
||||
\includegraphics[width=0.5\textwidth]{images/flir_20220812T114019.jpg}% Heat Inside
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{GNSS clock stability III}
|
||||
\begin{columns}
|
||||
\begin{column}{0.5\textwidth}
|
||||
\includegraphics[width=\textwidth]{images/IMG_20220819_154801.jpg}% Closed box outside
|
||||
\end{column}
|
||||
\begin{column}{0.5\textwidth}
|
||||
\includegraphics[width=\textwidth]{images/IMG_20220815_161244.jpg}% Open box outside
|
||||
\end{column}
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
\section{White Rabbit}%<<<
|
||||
\begin{frame}{Precision Time Protocol}
|
||||
\begin{itemize}
|
||||
\item Time synchronisation over (long) distance between (multiple) nodes
|
||||
\end{itemize}
|
||||
\begin{figure}
|
||||
\includegraphics[width=0.4\textwidth]{white-rabbit/protocol/ptpMSGs-color.pdf}
|
||||
\caption{
|
||||
\cite{WRPTP}
|
||||
Precision Time Protocol messages.
|
||||
}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
\begin{frame}{White Rabbit}
|
||||
\begin{columns}
|
||||
\begin{column}{.5\textwidth}
|
||||
White Rabbit:
|
||||
\begin{itemize}
|
||||
\item SyncE (common oscillator)
|
||||
\item PTP (synchronisation)
|
||||
\end{itemize}
|
||||
|
||||
\vspace{2em}
|
||||
|
||||
Factors:
|
||||
\begin{itemize}
|
||||
\item device ($\Delta_{txm}$, $\Delta_{rxs}$, ...)
|
||||
\item link ($\delta_{ms}$, ...)
|
||||
\end{itemize}
|
||||
\begin{figure}
|
||||
\makebox[\textwidth][c]{\includegraphics[width=1.1\textwidth]{white-rabbit/protocol/delaymodel.pdf}}
|
||||
\imagecredit{\autocite{WRPTP}}
|
||||
\end{figure}
|
||||
\end{column}
|
||||
\begin{column}{.5\textwidth}
|
||||
\begin{figure}
|
||||
\makebox[\textwidth][c]{\includegraphics[width=1.1\textwidth]{white-rabbit/protocol/wrptpMSGs_1.pdf}}
|
||||
\imagecredit{\autocite{WRPTP}}
|
||||
\end{figure}
|
||||
\end{column}
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{White Rabbit Clock Reference}
|
||||
\begin{figure}
|
||||
\centering
|
||||
\hspace*{-5em}
|
||||
\includegraphics[width=1.35\textwidth]{clocks/wr-clocks.pdf}
|
||||
\end{figure}
|
||||
\end{frame}%>>>
|
||||
% >>> End of Backup Slides
|
||||
%%%%%%%%%%%%%%
|
||||
% Bibliography <<<
|
||||
%%%%%%%%%%%%%%
|
||||
\section*{References}
|
||||
\begin{frame}[allowframebreaks]
|
||||
\frametitle{References}
|
||||
\printbibliography
|
||||
\end{frame}
|
||||
% >>> Bibliography
|
||||
\end{document}
|
||||
|
24
presentations/2023-07-06_final_masters/Makefile
Normal file
24
presentations/2023-07-06_final_masters/Makefile
Normal file
|
@ -0,0 +1,24 @@
|
|||
# vim:ft=make
|
||||
-include config.mk
|
||||
|
||||
.PHONY: all clean dist-clean
|
||||
|
||||
### Variables
|
||||
MAIN_SRC ?= main.tex
|
||||
TEXENGINE ?= latexmk --pdf
|
||||
|
||||
MAIN_TARGET = $(patsubst %.tex,%.pdf,$(MAIN_SRC))
|
||||
|
||||
### Targets
|
||||
all: $(MAIN_TARGET)
|
||||
|
||||
dist: all clean
|
||||
|
||||
$(MAIN_TARGET): $(MAIN_SRC)
|
||||
$(TEXENGINE) $^
|
||||
|
||||
dist-clean: clean
|
||||
@rm -vf *.pdf *.eps *.dvi *.ps
|
||||
|
||||
clean:
|
||||
@rm -vf *.dat *.log *.out *.aux *.nav *.snm *.toc *.vrb *~ *.fls *.fdb_latexmk *-blx.bib *.bbl *.blg *.run.xml
|
28
presentations/2023-07-06_final_masters/README.md
Normal file
28
presentations/2023-07-06_final_masters/README.md
Normal file
|
@ -0,0 +1,28 @@
|
|||
# Master's Final Presentation
|
||||
|
||||
[source](2023-Masters.tex)
|
||||
|
||||
## Outline
|
||||
|
||||
1. Cosmic Particles from outerspace
|
||||
1. Flux to Detectors
|
||||
2. Radio Detectors (AugerPrime RD, GRAND)
|
||||
3. Radio Interferometry
|
||||
|
||||
3. GPS Timing mechanism and reference timing
|
||||
1. (White Rabbit)
|
||||
2. GRAND setup
|
||||
|
||||
4. Reference Beacon
|
||||
1. Common problem
|
||||
2. Pulse and SNR
|
||||
3. (Multi)Sine and SNR
|
||||
|
||||
5. Single Sine Synchronisation
|
||||
|
||||
6. Conclusion
|
||||
- Single Sine works: mix of radio interferometry
|
||||
- Outlook:
|
||||
1. 67MHz Auger
|
||||
2. GRAND
|
||||
|
1
presentations/2023-07-06_final_masters/config.mk
Normal file
1
presentations/2023-07-06_final_masters/config.mk
Normal file
|
@ -0,0 +1 @@
|
|||
MAIN_SRC=2023-Masters.tex
|
Loading…
Reference in a new issue