1) Small changes of the musrSimAna documentation 2) A new type of condition added to musrSimAna 3) A few more examples of macro files added
795 lines
48 KiB
TeX
795 lines
48 KiB
TeX
\documentclass[twoside]{dis04}
|
|
\usepackage{epsfig}
|
|
\def\runauthor{PSI}
|
|
\def\shorttitle{musrSimAna}
|
|
\begin{document}
|
|
|
|
\newcommand{\musr}{\ensuremath{\mu}SR}
|
|
\newcommand{\musrSim}{\emph{musrSim}}
|
|
\newcommand{\musrSimAna}{\emph{musrSimAna}}
|
|
\title{Manual of musrSimAna}
|
|
\author{Kamil Sedl\'ak$^1$}
|
|
|
|
\address{{$^1$ Laboratory for Muon Spin Spectroscopy, Paul Scherrer Institut, CH-5232 Villigen PSI, Switzerland}}
|
|
|
|
\maketitle
|
|
|
|
\abstracts{
|
|
``musrSimAna'' is an analysis program, which helps the user to analyse and interpret the output of the
|
|
``musrSim'' simulation.}
|
|
|
|
%========================================================================================================
|
|
\section{Introduction}
|
|
\label{introduction}
|
|
The purpose of the \musrSimAna\ program is to analyse the Root tree, the output
|
|
of the \musrSim\ program.
|
|
In general, the event-by-event information stored in the Root tree can be easily used only for
|
|
a very quick and rough tests -- e.g.\ to see, where the muons stop and decay irrespective
|
|
of whether they were triggered in the M-counter or not, or to have an idea what energy
|
|
spectrum was deposited in a given counter. Typically, however, one is more interested
|
|
to study \musr\ signal amplitude, time-independent background, or where the muons decay
|
|
only for the ``stopped'' muons (e.g.\ muons triggered by M-counter and not detected
|
|
by a veto counter), or only for triggered muons which actually stopped in a cryostat
|
|
rather than in a sample. Such a study requires some kind of analysis program, which
|
|
loops over all events stored in the Root tree (output of \musrSim), and implements the
|
|
logic of the required \musr\ experiment.
|
|
|
|
One way to do such analysis is to start from a Root command {\tt MakeClass(``MyAnalysis'')},
|
|
which creates some sort of skeleton c++ class for the given Root tree. This allows the user
|
|
to make his/her own and very specific analysis program tailored to his/her needs. On the other
|
|
hand, it requires special program for each detector set-up.
|
|
|
|
A second possibility is to use \musrSimAna, which is intended to be a general analysis
|
|
program for \musr\ instruments.
|
|
At the moment, however, \musrSimAna\ is tuned to the needs of continuous muon beam facilities.
|
|
Some modifications might be necessary for the pulsed muon beams.
|
|
|
|
As in the case of \musrSim, the user of \musrSimAna\ specifies all parameters
|
|
required by the analysis in an input text file (steering file). The initial structure
|
|
of the steering file was taken over from the TDC setup files used by real \musr\ instruments
|
|
at PSI~\cite{acquisitionProkscha,TDCsetup}. This setup file defines the ``logic'' of a given experiment,
|
|
namely the coincidences and anti-coincidences of different counters and veto detectors, as well as some
|
|
timing parameters.
|
|
The setup file for the case of simulation had to be extended by the definitions of
|
|
histograms, cuts, fitting, etc. The description of the setup file will be
|
|
presented in chapter~\ref{howToAnalyse}-\ref{description}, the chapter~\ref{sec:GPD}
|
|
illustrates the whole concept of \musrSimAna\ on the example of an existing \musr\ instrument.
|
|
|
|
|
|
|
|
\section{The main components of the \musrSimAna\ setup file}
|
|
\label{howToAnalyse}
|
|
The parameters for the analysis are stored in the setup file ``{\tt RUNxxx.v1190}'', whose name
|
|
typically consists of the run number ({\tt RUN}),
|
|
some further identifier ({\tt xxx}), and ends with ``{\tt .v1190}''.
|
|
One of the following commands can be used to execute \musrSimAna: \\[1em]
|
|
{\tt
|
|
\$> musrSimAna RUN RUNxxx \\
|
|
\$> musrSimAna RUN RUNxxx nographic > data/RUN.RUNxxx.out
|
|
}\\[1em]
|
|
where the first {\tt RUN} stands for the run number (more precisely, it specifies
|
|
the \musrSim\ output, which is expected to be stored as ``{\tt data/musr\_RUN.root}'')
|
|
and {\tt RUNxxx} specifies the \musrSimAna\ setup file without the ending, which is
|
|
expected to be stored in the current directory. The output file of \musrSimAna,
|
|
containing the result histograms, will be stored as ``{\tt data/his\_RUN\_RUNxxx.v1190.root}''.
|
|
|
|
The syntax of the setup file in \musrSimAna\ is based on the experimental one,
|
|
defined in~\cite{TDCsetup}.
|
|
At the beginning of this file, some timing parameters are defined:\\[1em]
|
|
\begin{tabular}{ll}
|
|
{\tt RESOLUTION=100 } & \emph{\ldots one TDC bin corresponds to 100\,ps} \\[0.7em]
|
|
{\tt MCOINCIDENCEW=50 } & \emph{\ldots time interval (in TDC bins) to find coincidences with M-counter} \\
|
|
{\tt PCOINCIDENCEW=50 } & \emph{\ldots time interval (in TDC bins) to find coincidences with P-counter} \\
|
|
{\tt VCOINCIDENCEW=100 } & \emph{\ldots time interval (in TDC bins) to find anti-coincidences with M-counter} \\[0.7em]
|
|
{\tt MUONRATEFACTOR=0.089 } & \emph{\ldots will be described in section~\ref{sec:eventMixing}} \\[0.7em]
|
|
{\tt DATAWINDOWMIN=-2.0 } & \emph{\ldots data interval (in $\mu$s) in which positrons are detected} \\
|
|
{\tt DATAWINDOWMAX=10.0 } & \\[0.7em]
|
|
{\tt PILEUPWINDOWMIN=-10.0 } & \emph{\ldots the pileup interval (in $\mu$s) for muons} \\
|
|
{\tt PILEUPWINDOWMAX=10.0 } & \\[1em]
|
|
\end{tabular}
|
|
%
|
|
A good event has exactly one hit in the M-counter within the pile-up window, and exactly
|
|
one hit in the positron counters within the data window. Both windows are defined relative to $t_0$,
|
|
which is the time of the currently analysed M-counter hit.
|
|
|
|
The coincidence and anti-coincidence logic between the different counters
|
|
(the detector logic) is also specified in the setup file.
|
|
An example may look like this:\\
|
|
\begin{verbatim}
|
|
102; "M up"; M; 0.4; 2005; -401;
|
|
1; "B1"; P; 0.4; 2005; 21 -401; B1; 1485; 1515; 50995;
|
|
2; "B2"; P; 0.4; 2005; 22 -401; B2; 1485; 1515; 50995;
|
|
11; "F1"; P; 0.4; 2005; -401 -21 -22; F11; 1485; 1515; 50995;
|
|
12; "F2"; P; 0.4; 2005; -401 -21 -22; F12; 1485; 1515; 50995;
|
|
13; "F3"; P; 0.4; 2005; -401 -21 -22; F13; 1485; 1515; 50995;
|
|
21; "Coinc B1" K; 0.4; 2005;
|
|
22; "Coinc B2" K; 0.4; 2005;
|
|
401; "Active Veto" V; 0.1; 2005;
|
|
\end{verbatim}
|
|
\mbox{} \\
|
|
%
|
|
In each row, the first number stands for the detector ID (defined in the steering file
|
|
of the \musrSim), the second variable is the name of the counter,
|
|
the third variable identifies the type of the counter (M = muon, P = positron,
|
|
K = coincidence and V = veto counters, respectively), the forth variable is the threshold in MeV applied
|
|
to the energy deposited in the counter, the fifth variable is a time delay (in units
|
|
of bin-width) applied to the given counter, the sixth set of parameters defines
|
|
which other detectors have to be in coincidence (positive ID) or anti-coincidence
|
|
(negative ID) with the given counter, and in the case of positron counters, the
|
|
last four parameters define a special histogram for the given counter. (Note
|
|
that this histogram is used for a compatibility with the experimental steering file, however
|
|
there is a different and more powerful way of how to define histograms, which is
|
|
defined later). The only difference with respect to the experimental steering
|
|
file is the presence of threshold definition in the fourth column.
|
|
In the example above, the M-counter is the volume which has ID 102 in the simulation,
|
|
and a valid hit has to have energy in the counter above 0.4\,MeV, and no signal
|
|
above 0.1\,MeV in the ``Active Veto'' (ID=401) within a time interval defined by
|
|
{\tt VCOINCIDENCEW}. The detailed description of *.v1190 steering files can be found
|
|
in chapter~\ref{description} and in~\cite{TDCsetup}.
|
|
|
|
|
|
|
|
The main output of the simulation is generated in the form of histograms.
|
|
The histograms are defined in the steering file. For example, the following
|
|
line defines 1-dimensional histogram of the $z$-position of where the muons stop and decay:\\[1em]
|
|
{\tt
|
|
musrTH1D hMuDecayPosZ "Where the muons stop;z[mm];N" 100 -5. 5. muDecayPosZ
|
|
}\\[1em]
|
|
This histogram has 100 bins, spans from -5\,mm to 5\,mm, and the variable filled
|
|
in the histogram is {\tt muDecayPosZ}.
|
|
In fact, this line does not create one histogram, but an array of histograms -- one
|
|
histogram for each ``condition''. An example of five conditions reads:\\[1em]
|
|
{\tt
|
|
condition 1 oncePerEvent \\
|
|
condition 2 muonDecayedInSample\_gen \\
|
|
condition 4 muonTriggered\_det \\
|
|
condition 6 goodEvent\_det \\
|
|
condition 9 pileupEvent
|
|
}\\[1em]
|
|
where integer numbers (1,2,4,6 and 9) denote the condition number, and the string at the end
|
|
describes the condition -- e.g.\ ``{\tt muonDecayedInSample\_gen}'' specifies that muon
|
|
has stopped and decayed in the sample, and ``{\tt muonTriggered\_det}'' specifies that
|
|
there had to be a good muon candidate triggered in the M-counter.
|
|
The ending ``{\tt \_gen}'' indicates that the variable used in the condition
|
|
was ``generated'', i.e.\ it is known in the simulation, but can not be directly
|
|
measured experimentally.
|
|
On the other hand the ending ``{\tt \_det}'' specifies that the given condition
|
|
is based on measurable variables, as e.g.\ energy deposits in a counter.
|
|
|
|
There can be up to
|
|
30 conditions requested, and for each of them a separate histogram will be filled.
|
|
In the output file of \musrSimAna, the histograms corresponding to the previous
|
|
set of conditions would be saved as
|
|
{\tt hMuDecayPosZ\_1, hMuDecayPosZ\_2, hMuDecayPosZ\_4, hMuDecayPosZ\_6, hMuDecayPosZ\_9}.
|
|
The {\tt hMuDecayPosZ\_1} shows where the muons stop irrespective whether they were
|
|
detected or not. The {\tt hMuDecayPosZ\_6} contains ``good'' muons, i.e.\ muons that would
|
|
be saved in the final histograms in the experiment. The {\tt hMuDecayPosZ\_9} shows
|
|
the muons, which contribute to the time-independent background. Note that there are always
|
|
two muons, $\mu_1$ and $\mu_2$, contributing to the time-independent background, and {\tt hMuDecayPosZ\_9}
|
|
shows the one ($\mu_1$) that started the M-counter. More to this topic is presented
|
|
in chapter~\ref{sec:eventMixing}. Here we just mention that in order
|
|
to see the $z$-coordinate of the second muon ($\mu_2$),
|
|
which was not triggered by the M-counter but whose decay positron hit the positron counter,
|
|
the histogram {\tt hpileup\_muDecayPosZ\_9} must be used:\\[1em]
|
|
{\tt
|
|
musrTH1D hpileup\_muDecayPosZ "Pileup muons;z[mm];N" 100 -5.0 5. pileup\_muDecayPosZ
|
|
}
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\section{Event mixing -- an unavoidable complication}
|
|
\label{sec:eventMixing}
|
|
The output of \musrSim\ is stored in a Root tree named ``{\tt t1}''. One event corresponds
|
|
to one simulated muon, and it is saved as one row of the tree. The only information that
|
|
relates one event (muon) to any other one is the variable {\tt timeToNextEvent},
|
|
which is a randomly generated time difference between two subsequent events.
|
|
|
|
The \musrSimAna\ allows one to study the ``time-independent background'', which is
|
|
due to mixing of two different events. A simple example of the event mixing affecting
|
|
the \musr\ measurement is the following: the first muon, $\mu_1$, hits the M-counter,
|
|
and subsequently stops and decays in the sample, however the decay positron escapes
|
|
undetected -- most likely because of the limited angular acceptance of positron counters.
|
|
The second muon, $\mu_2$, arrives around the same time, misses the M-counter,
|
|
and stops and decays in a collimator wall or elsewhere.
|
|
Its decay positron hits a positron counter. Thus there are good-looking muon and positron
|
|
hits, which however arise from two uncorrelated muons.
|
|
This fake (background) event is experimentally treated as a good event,
|
|
and contributes to the time-independent background.
|
|
|
|
Events can be mixed in \musrSimAna, allowing us to study sources of
|
|
the time-independent background.
|
|
%\emph{MusrSimAna} loops over the events and checks whether the conditions defining
|
|
%the detector logic in the steering file have been fulfilled. However, to take event
|
|
%mixing properly into account, the conditions have to be veryfied on several subsequent
|
|
%events. Therefore, at the beginning of the analysis of
|
|
Before analysing a given event, arrays of hits are filled
|
|
for all counters (M, positron, veto, coincidence counters), which store the hits occurring in the
|
|
future up to the time equal to $ 3\, \cdot $ pileup window or $ 3\, \cdot $ data window,
|
|
whatever is larger\footnote{The data and pile-up windows defined by parameters
|
|
{\tt DATAWINDOWMIN, DATAWINDOWMAX, PILEUPWINDOWMIN} and {\tt PILEUPWINDOWMAX}
|
|
are applied later on in the analysis.}.
|
|
There is one such array for every counter. After this initial filling,
|
|
there might be several hits in every array, originating from one or more events.
|
|
|
|
|
|
The fraction of the time-independent background to good events depends on the incoming muon rate
|
|
measured by the trigger, possibly in the anti-coincidence with a backward veto detector, if
|
|
used in the experiment.
|
|
Typically, the experimentalists set the incoming muon rate (rate of \emph{stopped muons})
|
|
to $\sim 30\,000\,\mu/s$. The same should be done in the simulation.
|
|
However, the rate of stopped muons is known only after the analysis is done,
|
|
because, for example, many simulated muons stop and decay in collimators or elsewhere
|
|
in the beam-pipe without producing any signal in the M-counter.
|
|
Therefore the simulation is normally started with an initial rate of generated muons
|
|
of $30\,000\,\mu/s$, which in practise can correspond to much lower rate of \emph{stopped muons}.
|
|
The rate of stopped muons is calculated at the end of the \musrSimAna\ execution, and
|
|
it is printed out in the \musrSimAna\ output. The user can use this information and rescale the
|
|
initial muon rate by changing parameter {\tt MUONRATEFACTOR} in the {\tt *.v1190} setup file.
|
|
This is done without the necessity to re-run the CPU consuming
|
|
simulation -- only the \musrSimAna\ has to be repeated. The complete simulation and analysis
|
|
chain therefore usually consists of three steps:
|
|
%
|
|
\begin{enumerate}
|
|
\item \musrSim\ (takes typically 10 hours).
|
|
\item \musrSimAna\ with {\tt MUONRATEFACTOR=1.0} (takes typically 10 minutes).
|
|
\item \musrSimAna\ with {\tt MUONRATEFACTOR} determined in step 2.
|
|
\end{enumerate}
|
|
%
|
|
The {\tt MUONRATEFACTOR} specifies a multiplicative factor applied to
|
|
the variable {\tt timeToNextEvent}
|
|
(the randomly generated time difference between two subsequent events).
|
|
|
|
{\bf IMPORTANT NOTE:} In order to get the pile-up effects correctly analysed by \musrSimAna,
|
|
it is probably necessary to run the \musrSim\ with no event reweighting (i.e.\
|
|
the command ``{\tt /musr/command logicalVolumeToBeReweighted \ldots}'' must {\bf not} be used).
|
|
All events should/have to be (?) saved in the Root tree
|
|
(i.e.\ the command ``{\tt /musr/command storeOnlyEventsWithHits false}'' must be used).
|
|
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\section{Detailed list of steering file parameters}
|
|
\label{description}
|
|
\begin{description}
|
|
% \item{\bf INSTRUMENT=\emph{string}} \\
|
|
% ignored
|
|
% \item{\bf DESCRIPTION=\emph{string}} \\
|
|
% ignored
|
|
% \item{\bf TYPE=\emph{string}} \\
|
|
% ignored
|
|
\item{\bf RESOLUTION=\emph{value}} \\
|
|
width of the TDC bin in picoseconds.
|
|
\item{\bf MDELAY=\emph{value}} \\
|
|
currently not used (probably not needed in the case of simulation).
|
|
\item{\bf PDELAY=\emph{value}} \\
|
|
currently not used (probably not needed in the case of simulation).
|
|
\item{\bf MCOINCIDENCEW=\emph{value}} \\
|
|
time window for the coincidences of the coincidence detectors (``K'')
|
|
with the M-counter. The \emph{value} is given in TDC bins (see {\tt RESOLUTION} above).
|
|
\item{\bf PCOINCIDENCEW=\emph{value}} \\
|
|
time window for the coincidences of the coincidence detectors (``K'')
|
|
with positron counters. The \emph{value} is given in TDC bins.
|
|
\item{\bf VCOINCIDENCEW=\emph{value}} \\
|
|
time window for the coincidences of the anti-coincidence detectors (``V'')
|
|
with any other counter. The \emph{value} is given in TDC bins.
|
|
\item{\bf MUONRATEFACTOR=\emph{value}} \\
|
|
a multiplicative factor which is used to rescale time differences between subsequent muons.
|
|
Setting \emph{value} larger than 1 artificially prolongs the time difference between
|
|
two subsequently generated muons, and therefore decreases the incoming muon rate
|
|
(number of muons per second). This parameter should be changed in order to set the
|
|
incoming muon rate to a given required value, typically to 30\,000\,$\mu/$s.\\
|
|
See also variable ``INFINITELYLOWMUONRATE''.
|
|
\item{\bf INFINITELYLOWMUONRATE} \\
|
|
If INFINITELYLOWMUONRATE is specified, each event is treated independently of any other
|
|
event. This corresponds to a situation of infinitely low rate of incoming muons, and
|
|
no pileup can be observed. The variable ``MUONRATEFACTOR'' becomes irrelevant when
|
|
INFINITELYLOWMUONRATE is specified.
|
|
\item{\bf DATAWINDOWMIN=\emph{value}} \\
|
|
Beginning of the data interval for the positron counters in $\mu$s.
|
|
\item{\bf DATAWINDOWMAX=\emph{value}} \\
|
|
End of the data interval for the positron counters in $\mu$s.
|
|
\item{\bf PILEUPWINDOWMIN=\emph{value}} \\
|
|
Beginning of the pileup interval for the M-counter in $\mu$s.
|
|
\item{\bf PILEUPWINDOWMAX=\emph{value}} \\
|
|
End of the pileup interval for the M-counter in $\mu$s.
|
|
\item{\bf PROMPTPEAKMIN=\emph{value}} \\
|
|
Beginning of the prompt-peak interval in $\mu$s. This variable is used only for the condition
|
|
``{\tt promptPeak}'', ``{\tt promptPeakF}'', etc.\ , and normally does not need to be specified. It becomes useful if
|
|
the user wants to investigate, where the prompt-peak originates from (where do the muons,
|
|
which give rise to the prompt peak, stop). The default value is -0.01\,$\mu$s.
|
|
\item{\bf PROMPTPEAKMAX=\emph{value}} \\
|
|
End of the prompt-peak interval in $\mu$s, the default value is 0.01\,$\mu$s. (See comments
|
|
for {\tt PROMPTPEAKMIN}.)
|
|
\item{\bf MUSRMODE=\emph{string}} \\
|
|
Defines the mode of \musr\ experiment -- presently only ``D'', corresponding to
|
|
the time differential mode is implemented.
|
|
\item{\bf REWINDTIMEBINS=\emph{value}} \\
|
|
A technical parameter specifying when a roll-over of all hits has to be done.
|
|
It is specified in TDC bins, and normally there should be no need to change this parameter.
|
|
\item{\bf DEBUGEVENT \emph{eventID} \emph{debugLevel}}\\
|
|
Prints out debug information about the event with the ID \emph{``eventID''}.
|
|
The higher the \emph{debugLevel}, the more details are printed.
|
|
(Both \emph{eventID} and \emph{debugLevel} are integers).
|
|
\item{\bf CLONECHANNEL \emph{ID1} \emph{ID2}}\\
|
|
Clones the hits detected in counter \emph{ID1} into a new counter \emph{ID2}.
|
|
A different (even a lower) threshold can be applied to the cloned counter.
|
|
This way the same counter can be used as two independent counters -- e.g.\ once as a veto
|
|
detector for the M-counter, and simultaneously as a coincidence detector for
|
|
a P-counter. In both cases the energy threshold and time windows are defined independently.
|
|
\item{\bf WRITE\_OUT\_DUMP\_FILE \emph{fileNameString} \emph{clockChannel} \emph{randomJitter}}\\
|
|
If present, this command will create two output files, the so-called ``dump files'':\\
|
|
{\tt data/TDC\_V1190\_200\_dump\_\emph{fileNameString}.bin} -- file that can be used
|
|
as an input to the PSI analysis front-end of a real experiment.\\
|
|
{\tt data/TDC\_V1190\_200\_dump\_\emph{fileNameString}.txt} -- file that contains the same
|
|
information (hits) as the previous file, however in a human-readable form. The first number in the file
|
|
stands for the channel number, the second number stands for the time bin in the TDC bin units.\\
|
|
\emph{clockChannel} ... the channel of the clock signal (typically 15).\\
|
|
\emph{randomJitter} ... this value is in TDC bins, typically 0 or 8000 (?). If \emph{randomJitter} is smaller then
|
|
1, then the hits in the dump files will be sorted according to time. If it is larger than 0, then
|
|
subsequent hits can be unordered in time, but the time difference never exceeds the value of \emph{randomJitter}.
|
|
This is just a technical thing serving to test the analysis software -- it should not
|
|
have any effect on the analysis results.
|
|
\item{\bf musrTH1D \emph{histoName} \emph{histoTitle} \emph{nBins} \emph{min} \emph{max} \emph{variable}
|
|
[{\tt rotreference} $\nu_{\rm RRF}$ $\phi_{\rm RRF}$] $|$ [correctexpdecay]} \\
|
|
Defines a histogram (or more precisely an array of histograms, where the number of histograms
|
|
in the array is given by the number of conditions, see section~\ref{howToAnalyse}).
|
|
The name of the histogram is defined by \emph{histoName} + the number of the condition.
|
|
The string variable \emph{histoTitle} specifies the title of the histogram,
|
|
\emph{nBins}, \emph{min} and \emph{max} stand for the number of bins and minimum and maximum
|
|
of the $x$-axis of the histogram. \\
|
|
The optional keyword ``{\tt rotreference}'' signals that the given histogram will be filled in
|
|
rotating reference frame (RRF) with the frequency of $\nu_{\rm RRF}$ and a phase shift of $\phi_{\rm RRF}$.
|
|
\\
|
|
The optional keyword ``{\tt correctexpdecay}'' signals that the given histogram will be corrected
|
|
for the muon exponential decay (i.e. multiplied by a factor $\exp(t/2.19703)$. It is meaningful
|
|
only for time variables.
|
|
\\
|
|
The \emph{variable} stands for the variable that will be
|
|
filled into the histogram. The \emph{variable} can be any variable from the output Root tree
|
|
of musrSim (see ``Manual of musrSim'') (except for the array variables like
|
|
{\tt det\_*[], save*[], odet\_*[]}). In addition, it can be also one of the following:
|
|
\begin{description}
|
|
\item[muDecayPosR] \ldots $\sqrt{ {\rm muDecayPosX}^2 + {\rm muDecayPosY}^2}$.
|
|
\item[wght] \ldots weight of the event.
|
|
\item[det\_m0edep] \ldots energy deposited in the M-counter that gives the muon signal.
|
|
\item[det\_posEdep] \ldots energy deposited in the P-counter that gives the positron signal.
|
|
\item[muIniPosR] \ldots $\sqrt{ {\rm muIniPosX}^2 + {\rm muIniPosY}^2}$.
|
|
\item[muIniMomTrans] \ldots $\sqrt{ {\rm muIniMomX}^2 + {\rm muIniMomY}^2}$.
|
|
\item[muTargetPol\_Theta] \ldots theta angle of the muon spin when muon enters target (-180,180 deg).
|
|
\item[muTargetPol\_Theta360]\ldots theta angle of the muon spin when muon enters target (0,360 deg).
|
|
\item[muTargetPol\_Phi] \ldots phi angle of the muon spin when muon enters target (-180,180 deg).
|
|
\item[muTargetPol\_Phi360] \ldots phi angle of the muon spin when muon enters target (0,360 deg).
|
|
\item[pos\_Momentum] \ldots magnitude of the momentum of the decay positron (``generated'', not measurable variable).
|
|
\item[pos\_Trans\_Momentum] \ldots transverse momentum of the decay positron.
|
|
\item[pos\_Radius] \ldots positron radius calculated from the decay positron momentum and magnetic
|
|
field at the point of decay.
|
|
\item[pos\_Theta] \ldots polar angle of the decay positron.
|
|
\item[pos\_Phi] \ldots azimuth angle of the decay positron.
|
|
\item[det\_time10] \ldots time difference between the positron and muon counters
|
|
(measured by the respective counters).
|
|
\item[gen\_time10] \ldots the time difference between the muon decay and the first muon hit
|
|
in the M-counter (i.e.\ {\tt muDecayTime - muM0Time}).
|
|
\item[det\_time10\_MINUS\_gen\_time10] \ldots {\tt det\_time10 - gen\_time10} in picoseconds.
|
|
\item[det\_time20] \ldots very similar to {\tt det\_time10}, however taking into
|
|
account ``counter phase shift'' defined by {\tt counterPhaseShifts}
|
|
variable. This gives the user a possibility to sum up backward and
|
|
forward histograms into one histogram (this of course make sense
|
|
only in the simulation, where there is ``no physics'' happening
|
|
in the sample, just the muon spin rotation).
|
|
\item[pileup\_eventID] \ldots eventID of the $\mu_2$, where $\mu_2$ stands for the muon,
|
|
which did not give signal in the M-counter, but whose
|
|
decay positron gave signal in the positron counter around the time
|
|
when a different muon ($\mu_1$) triggered the M-counter.
|
|
\item[pileup\_muDecayDetID] \ldots detector ID, in which $\mu_2$ stopped and decayed.
|
|
\item[pileup\_muDecayPosZ] \ldots $z$-coordinate of where the $\mu_2$ stopped and decayed.
|
|
\item[pileup\_muDecayPosR] \ldots radius of where the $\mu_2$ stopped and decayed.
|
|
\end{description}
|
|
Variables are usually set to -1000 if they can not be calculated (e.g.\ {\tt det\_posEdep} = -1000
|
|
if there was no hit in any positron counter).
|
|
\item{\bf musrTH2D \emph{histoName} \emph{histoTitle} \emph{nBins} \emph{min} \emph{max} \emph{nBins2} \emph{min2} \emph{max2} \emph{variable}} \\
|
|
Similar to \emph{musrTH1D}, but for a 2-D histogram.
|
|
\item{\bf humanDecayHistograms \emph{hist\_decay\_detID} \emph{hist\_decay\_detID\_pileup} \emph{id$_1$} \emph{name$_1$} \ldots \emph{id$_n$} \emph{name$_n$} } \\
|
|
This is a special kind of histogram, which converts two histograms
|
|
(\emph{hist\_decay\_detID} \emph{hist\_decay\_detID\_pileup})
|
|
into a human-friendly histograms, where detector ID on the $x$-axis is converted into a string label.
|
|
The \emph{id$_i$} is the detector id, and the \emph{name$_i$} is the corresponding label name.
|
|
If \emph{name$_i$ = name$_j$}, the corresponding bins of the original histograms will
|
|
be summed up together into the same bin.
|
|
The \emph{hist\_decay\_detID} and \emph{hist\_decay\_detID\_pileup} have to be defined before
|
|
(by the command {\tt musrTH1D}).
|
|
\item{\bf condition \emph{conditionID} \emph{conditionName}} \\
|
|
Definition of a condition, which is then used when filling histograms. The \emph{conditionID}
|
|
specifies the number of the condition, and must be between 0 and 30 (0 and 30 are also possible).
|
|
The \emph{conditionName} is one of the following:
|
|
\begin{description}
|
|
\item[alwaysTrue] \ldots true for every hit in the m-counter (there can be more than one M-counter hit per event).
|
|
\item[oncePerEvent] \ldots true once for every event (the first hit in M-counter, if any, is considered).
|
|
\item[muonDecayedInSample\_gen] \ldots true if muon stopped and decayed in the sample.
|
|
\item[muonTriggered\_gen] \ldots true if muon passed through the M-counter (irrespective of the deposited energy)
|
|
-- not a measurable variable.
|
|
\item[muonTriggered\_det] \ldots true if a good muon candidate was found in the M-counter (using coincidences, vetoes, ...).
|
|
Double hits within the pileup window are excluded.
|
|
\item[positronHit\_det] \ldots true if a good positron candidate was found in the positron counter.
|
|
Double hits within the data window are excluded.
|
|
\item[goodEvent\_det] \ldots true if {\tt muonTriggered\_det} and {\tt positronHit\_det}.
|
|
\item[goodEvent\_gen] \ldots true if muon passed through the M-counter, and the muon stopped anywhere
|
|
(i.e.\ did not leave the World volume of the simulation). No requirement
|
|
on the positron is implied, i.e.\ the positron may or may not be detected.
|
|
Not a measurable variable.
|
|
\item[goodEvent\_det\_AND\_goodEvent\_gen]
|
|
\item[pileupEventCandidate] \ldots M-counter hit and positron counter hit both come from two different events.
|
|
\item[pileupEvent] \ldots {\tt pileupEventCandidate} and {\tt goodEvent\_det}.
|
|
\item[goodEvent\_det\_AND\_muonDecayedInSample\_gen]
|
|
\item[goodEvent\_F\_det] \ldots {\tt goodEvent\_det}, where the positron was detected in the forward detectors
|
|
defined by the command {\tt counterGrouping}.
|
|
\item[goodEvent\_B\_det] \ldots like {\tt goodEvent\_F\_det} but for backward positron counters.
|
|
\item[goodEvent\_U\_det] \ldots like {\tt goodEvent\_F\_det} but for upper positron counters.
|
|
\item[goodEvent\_D\_det] \ldots like {\tt goodEvent\_F\_det} but for lower positron counters.
|
|
\item[goodEvent\_L\_det] \ldots like {\tt goodEvent\_F\_det} but for left positron counters.
|
|
\item[goodEvent\_R\_det] \ldots like {\tt goodEvent\_F\_det} but for right positron counters.
|
|
\item[goodEvent\_F\_det\_AND\_pileupEvent] \ldots {\tt goodEvent\_F\_det} and {\tt pileupEvent}.
|
|
\item[goodEvent\_B\_det\_AND\_pileupEvent] \ldots {\tt goodEvent\_B\_det} and {\tt pileupEvent}.
|
|
\item[goodEvent\_U\_det\_AND\_pileupEvent] \ldots {\tt goodEvent\_U\_det} and {\tt pileupEvent}.
|
|
\item[goodEvent\_D\_det\_AND\_pileupEvent] \ldots {\tt goodEvent\_D\_det} and {\tt pileupEvent}.
|
|
\item[goodEvent\_L\_det\_AND\_pileupEvent] \ldots {\tt goodEvent\_L\_det} and {\tt pileupEvent}.
|
|
\item[goodEvent\_R\_det\_AND\_pileupEvent] \ldots {\tt goodEvent\_R\_det} and {\tt pileupEvent}.
|
|
\item[promptPeak] \ldots {\tt goodEvent\_det}, and {\tt PROMPTPEAKMIN < det\_time10 < PROMPTPEAKMAX}.
|
|
\item[promptPeakF] \ldots like {\tt goodEvent\_F\_det} and {\tt promptPeak}.
|
|
\item[promptPeakB] \ldots like {\tt goodEvent\_B\_det} and {\tt promptPeak}.
|
|
\item[promptPeakU] \ldots like {\tt goodEvent\_U\_det} and {\tt promptPeak}.
|
|
\item[promptPeakD] \ldots like {\tt goodEvent\_D\_det} and {\tt promptPeak}.
|
|
\item[promptPeakL] \ldots like {\tt goodEvent\_L\_det} and {\tt promptPeak}.
|
|
\item[promptPeakR] \ldots like {\tt goodEvent\_R\_det} and {\tt promptPeak}.
|
|
\end{description}
|
|
Additional conditions may be implemented on request.
|
|
\item{\bf draw \emph{histogramName} \emph{conditionID} } \\
|
|
Plot histogram (for a given condition) at the end of the analysis. Note that all histograms
|
|
are saved into the output file irrespective whether they are plotted or not.
|
|
\item{\bf counterPhaseShifts \emph{ID$_1$} \emph{$\phi_1$} \emph{ID$_2$} \emph{$\phi_2$} \ldots \emph{ID$_n$} \emph{$\phi_n$} }\\
|
|
Defines relative phase shifts of signal between different positron counters, which is used
|
|
for calculation variable {\tt det\_time20}. \emph{ID$_i$} is the ID number of the positron counter,
|
|
\emph{$\phi_i$} is its phase shift. This gives the user a possibility to sum up backward and
|
|
forward histograms into one histogram.
|
|
\item{\bf counterGrouping \emph{group} \emph{ID$_1$ ID$_2$ \ldots ID$_n$} } \\
|
|
This defines a group of detectors, where \emph{group} stands for ``B'' (backward),
|
|
``F'' (forward), ``U'' (up), ``D'' (down), ``L'' (left) and ``R'' (right) detectors.
|
|
This grouping is used in the definition of some conditions.
|
|
\item{\bf sampleID \emph{ID$_1$ ID$_2$ \ldots ID$_n$} } \\
|
|
Defines which volume (or volumes, if there are more) is the sample. Typically, the
|
|
sample is just one volume, but sometimes there is a smaller volume inside of the sample,
|
|
to which a field is applied, so the small volume also has to be considered as the sample.
|
|
This information is needed for the condition ``muonDecayedInSample\_gen''.
|
|
\item{\bf setSpecialAnticoincidenceTimeWindow \emph{detectorID} \emph{timeMin} \emph{timeMax} \emph{unit}} \\
|
|
This command sets a special anti-coincidence time window for a detector \emph{detectorID}.
|
|
Normally, the anti-coincidence time window is defined by {\tt VCOINCIDENCEW}, and is the same for all anti-coincidence
|
|
detectors. However, sometimes it might be interesting to set the anti-coincidence time window
|
|
differently for a specific detector (e.g.\ one might test an anti-coincidence of a veto detector with
|
|
the M-counter for the whole pile-up time window of $\sim$\,10\,$\mu s$.
|
|
Unlike in the case of {\tt VCOINCIDENCEW}, here the \emph{units} are not TDC bins, but
|
|
rather time in ``nanosecond'' or ``microsecond''.
|
|
\item{\bf fit \emph{histogramName} \emph{function} \emph{option} \emph{min} \emph{max} \emph{p$_1$} \ldots \emph{p$_n$}} \\
|
|
Fits the histogram by a given function, where \emph{min}, \emph{max} define the range of the fit
|
|
on the $x$-axis of the histogram, \emph{option} is a string defining fit options (see Root manual for details),
|
|
and \emph{p$_1$} \ldots \emph{p$_n$} are (typically, with some exceptions)
|
|
the initial values of the function parameters. The following functions are currently predefined:
|
|
\begin{description}
|
|
\item[pol0] $=p_0$ \ldots a constant (1 parameter) - typically used to fit background.
|
|
\item[simpleExpoPLUSconst] $=p_0 \exp(-x/2.19703)+p_1$
|
|
\item[rotFrameTime20] $= p_2 \cos(p_0 x+p_1)$
|
|
\item[funct1] $=p_3 \exp((p_4 - x)/2.19703) \cdot (1+p_2 \cos(p_0 x+p_1))$
|
|
\item[funct2] $=p_3 \exp((p_4 - x)/2.19703) \cdot (1+p_2 \cos(p_0 x+p_1)) + p_5$
|
|
% \item[funct3] the same as {\tt funct2}
|
|
\item[funct4] $=p_3 \exp((- x)/2.19703) \cdot (1+p_2 \cos(p_0 x+p_1)) + p_4$
|
|
\item[TFieldCos] $=p_3 (1+p_2 \cos(p_0 x + p_1))$ \hspace{1cm} (this function is useful when the histogram is filled with {\tt ``correctexpdecay''} keyword.)
|
|
\item[TFieldCosPLUSbg] $=p_3 (1+p_2 \cos(p_0 x + p_1)) + p_4 \exp(x/2.19703)$
|
|
\hspace{1cm} (this function is useful when the histogram is filled with {\tt ``correctexpdecay''} keyword.)
|
|
\item[gaus] ... Gauss distribution
|
|
\end{description}
|
|
|
|
|
|
\end{description}
|
|
%========================================================================================================
|
|
\section{A real-life example: GPD instrument}
|
|
\label{sec:GPD}
|
|
The simulation of the General Purpose Decay-Channel Spectrometer (GPD)
|
|
instrument~\cite{GPD} installed at PSI has been exemplified
|
|
in the \musrSim\ manual~\cite{musrSim}.
|
|
Here we analyse the output of this simulation using \musrSimAna.
|
|
The run number of this simulation is 201, therefore the steering
|
|
file names are ``{\tt 201.mac}'' for \musrSim, and ``{\tt 201.v1190}'' for
|
|
\musrSimAna, respectively, and the output file name of \musrSim\ is saved as
|
|
``{\tt data/musr\_201.root}''.
|
|
The detector system is very simple with only six counters -- M-counter,
|
|
two backward positron counters and three forward positron counters.
|
|
The reader is strongly recommended to see the illustration of the GPD
|
|
geometry in the \musrSim\ manual~\cite{musrSim}.
|
|
|
|
8\,000\,000 of events were simulated
|
|
(i.e.\ 8\,000\,000 of muons were generated 100\,cm in front of
|
|
the GPD sample).
|
|
In only 949\,759 events (11.9\% out of the 8 million) there was a signal detected
|
|
in one or more counters. The remaining muons stopped somewhere (most
|
|
often in collimator, as we will see later), decayed, and the decay positron
|
|
(and any other particles created thereof) missed the counters.
|
|
This is illustrated in more details in Fig.~\ref{det_n},
|
|
%
|
|
\begin{figure}[tbp]\centering
|
|
\epsfig{file=pict/det_n_infititely_low_muon_rate.eps,width=0.8\linewidth,clip=}
|
|
\caption{Number of hits in all counters per event, assuming infinitely low incoming muon
|
|
rate. The same detector may be hit more than once (e.g.\ if both the muon and its decay
|
|
positron pass through the M-counter).}
|
|
\label{det_n}
|
|
\end{figure}
|
|
%
|
|
where number of detector hit per event, assuming infinitely low incoming muon
|
|
rate, is shown. This plot was created in Root by executing:\\[1em]
|
|
{\tt
|
|
root [0] TFile* ff=new TFile("data/musr\_201.root") \\
|
|
root [1] t1->Print() \\
|
|
root [2] t1->Print("det\_n","det\_n>0") \\
|
|
}\\[1em]
|
|
%
|
|
It has to be pointed out, that the ratio of muons passing through the opening
|
|
in collimators to the number of all generated muons strongly depends on the
|
|
beam properties -- beam profile, beam convergence, etc. Typically, if we have
|
|
too broad muon beam, we simulate
|
|
many ``useless'' events. However, the other extreme (simulating too narrow
|
|
beam) can lead to underestimating the time-independent background.
|
|
|
|
It took approximately 12 hours of the CPU (on PC bought in 2010, where 1 out
|
|
of 4 processor cores was running) to simulate these 8\,000\,000 events.
|
|
Assuming the 30\,000\,$\mu/$s trigger rate, this corresponds to 26 seconds
|
|
of real experimental running.
|
|
|
|
\subsection{Where the muons stop and decay}
|
|
\label{sect_muons}
|
|
The positions, or more precisely the components of the GPD instrument, where the muons
|
|
stop and decay, are shown in Fig.~\ref{humanDecayHistograms_1}:
|
|
%
|
|
\begin{figure}[tbp]\centering
|
|
\epsfig{file=pict/Plot201_1.eps,width=0.9\linewidth,%
|
|
%%bbllx=83pt,bblly=330pt,bburx=538pt,bbury=513pt,clip=}
|
|
clip=}
|
|
\caption{This plot indicates, where the muons stopped and decayed.
|
|
The dashed histogram shows all generated muons. The full-line histograms show
|
|
where stopped the muons, for which either the muon itself or its secondary
|
|
particle ($e^+, \gamma$) triggered the M-counter: black histogram stands for
|
|
all such muons, corresponding to infinitely low incoming muon rate, while
|
|
the red histogram stands for the incoming muon rate of 30\,000\,$\mu/$s.
|
|
8\,000\,000 of events were simulated.}
|
|
\label{humanDecayHistograms_1}
|
|
\end{figure}
|
|
%
|
|
%Notes to Fig.~\ref{humanDecayHistograms_1}:
|
|
\begin{itemize}
|
|
\item Figure~\ref{humanDecayHistograms_1} was generated by Root macro file ``Plot201.C''.
|
|
\item The labels on the $x$-axis are defined in the file {\tt 201.v1190} by the
|
|
command \\
|
|
{\tt humanDecayHistograms \ldots}
|
|
\item The dashed-line histogram in Fig.~\ref{humanDecayHistograms_1}
|
|
shows where the muons stopped and decayed if no preselection
|
|
criteria are applied on the muons, i.e.\ if all generated muons are considered.
|
|
This is histogram ``{\tt humanDecayHistograms\_1}''.
|
|
\item The full-line histograms show
|
|
where stopped the muons, for which either the muon itself or its secondary
|
|
particle ($e^+, \gamma$) triggered the M-counter: black histogram stands for
|
|
all such muons, corresponding to infinitely low incoming muon rate, while
|
|
the red histogram represents the case for the 30\,000\,$\mu/$s incoming muon rate.
|
|
An energy deposit of at least 0.4\,MeV in the M-counter is required to fire the trigger.
|
|
The number of triggered events decreases with the incoming muon rate,
|
|
because some of the events are rejected due to the 10\,$\mu$s pileup gate.
|
|
|
|
The histogram name is in both cases ``{\tt humanDecayHistograms\_4}'',
|
|
where the black histogram was calculated using the setup file ``{\tt 201a.v1190}''
|
|
with the keyword {\tt INFINITELYLOWMUONRATE}, while the red histogram
|
|
was calculated using the setup file ``{\tt 201.v1190}''
|
|
with {\tt MUONRATEFACTOR=0.0965819}.
|
|
\item The $\pm 10\,\mu$s pile-up gate at the incoming muon rate of 30\,000$\,\mu/$s
|
|
rejects approx.\ 45\% of the triggered events. This number can be calulated
|
|
in Root as the ratio of the ``{\tt Integral}'' of the red and black histograms
|
|
in Fig.~\ref{humanDecayHistograms_1}:\\[1em]
|
|
{\tt \small
|
|
root [0] TFile* file1 = new TFile("data/his\_201\_201a.v1190.root") \\
|
|
root [1] humanDecayHistograms\_4->Integral() \\
|
|
root [0] TFile* file2 = new TFile("data/his\_201\_201.v1190.root") \\
|
|
root [1] humanDecayHistograms\_4->Integral() \\
|
|
}
|
|
\item The muon sample fraction (ratio of muons stopped in the sample over all muons that fired
|
|
the trigger) for the triggered events (full-line histograms)
|
|
is 65\%, and it is practically the same
|
|
for both infinitely low and 30\,000\,$\mu/$s incoming rate.
|
|
This number can be obtained in Root by dividing the first column of histogram
|
|
{\tt humanDecayHistograms\_4} by the sum of all entries in this histogram:\\[1em]
|
|
{\tt \small
|
|
root [0] TFile* file = new TFile("data/his\_201\_201.v1190.root") \\
|
|
root [1] (humanDecayHistograms\_4->GetBinContent(1))/(humanDecayHistograms\_4->Integral()) \\
|
|
}
|
|
\item The largest fraction of generated muons (dashed-line histogram) stopped in collimators.
|
|
Only a small fraction of them caused a hit in the M-counter (full-line histograms).
|
|
\item Despite the high initial muon momentum of $100 \pm 3\,$GeV/c, muons are
|
|
significantly scattered in the last 50\,cm region of air. This can be
|
|
clearly seen if the magnetic field is off and a point-like muon beam
|
|
is used (which can be done by modifying the {\tt 201.mac} file)
|
|
-- only 77\% of the muons stop in the sample cell or in the sample, while the
|
|
remaining 23\% of the mouns are scattered so much in the air, that they
|
|
end up in collimators or elsewhere (not shown here).
|
|
\item ``World'' in the histogram label means that the muon decayed in the beampipe vacuum
|
|
or somewhere else in the air (on the fly).
|
|
\item ``Escaped'' means that the muon left the simulated instrument (more precisely the
|
|
``world'' volume) prior its decay.
|
|
\end{itemize}
|
|
|
|
|
|
Figure~\ref{humanDecayHistograms_9} shows the ``pile-up events''.
|
|
%
|
|
\begin{figure}[htbp]\centering
|
|
\epsfig{file=pict/Plot201_2_new.eps,width=0.9\linewidth,%
|
|
%%bbllx=83pt,bblly=330pt,bburx=538pt,bbury=513pt,clip=}
|
|
clip=}
|
|
\caption{Pile-up events, i.e.\ the events in which one muon ($\mu_1$) fired the
|
|
trigger, while the hit in a positron counter is due to a decay positron from
|
|
a different muon ($\mu_2$). Pile-up events look like a good events, and contribute
|
|
to the time-independent background.}
|
|
\label{humanDecayHistograms_9}
|
|
\end{figure}
|
|
%
|
|
These are events, in which one muon ($\mu_1$) is triggered by the m-counter,
|
|
while a positron from a different muon ($\mu_2$) was detected by
|
|
a positron counter\footnote{In fact, the trigger may also be triggered by
|
|
the decay positron of $\mu_1$ and/or a positron counter may detect
|
|
directly $\mu_2$, not its decay positron. Such cases are rare, but they
|
|
are implicitly included in the simulation.}.
|
|
In addition to this requirement, the decay positron of $\mu_1$ must
|
|
escape undetected (e.g.\ it must miss positron counters) and $\mu_2$ must not trigger the m-counter
|
|
-- otherwise the event would be rejected.
|
|
Pile-up events are the source of the time independent background.
|
|
Usually $\mu_1$ is a good-looking muon that stops in the sample or in the sample cell
|
|
(red histogram in Fig.~\ref{humanDecayHistograms_9}), while $\mu_2$ stops and decays at different places,
|
|
mainly in the collimators (green histogram in Fig.~\ref{humanDecayHistograms_9}).
|
|
|
|
A nice visualisation of where the background-contributing muons $\mu_2$ stop and decay
|
|
is presented in Fig.~\ref{Pileup_muon_decay_map} (histogram ``{\tt hMuDecayMappileup\_9}'').
|
|
%
|
|
\begin{figure}[htbp]\centering
|
|
\epsfig{file=pict/Pileup_muon_decay_map.eps,width=0.7\linewidth,%
|
|
%%bbllx=83pt,bblly=330pt,bburx=538pt,bbury=513pt,clip=}
|
|
clip=}
|
|
\caption{Positions of where the $\mu_2$ stop and decay.}
|
|
\label{Pileup_muon_decay_map}
|
|
\end{figure}
|
|
%
|
|
In this two dimensional histogram, different components of the GPD instrument,
|
|
like the lead collimator, the copper collimator and the sample cell, can be recognised.
|
|
The lead collimator is located at the $z$-position between -115\,mm and -85\,mm.
|
|
Due to the high initial muon momentum of $\sim 100\,$MeV/c,
|
|
the maximum of muons in Fig.~\ref{Pileup_muon_decay_map} stop quite deep in the
|
|
lead collimator, at around $z=-103$\,mm. This might be a little bit surprising to the
|
|
\musr\ scientists who are used to work with the surface muons with momentum of 28\,MeV/c.
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\subsection{The $\mu$SR signal}
|
|
%
|
|
Figure~\ref{hdet_time10_10}
|
|
%
|
|
\begin{figure}[htbp]\centering
|
|
\epsfig{file=pict/hdet_time10_10.eps,width=0.495\linewidth,%
|
|
bbllx=13pt,bblly=5pt,bburx=520pt,bbury=351pt,clip=}
|
|
\epsfig{file=pict/hdet_time10_11.eps,width=0.495\linewidth,%
|
|
bbllx=13pt,bblly=5pt,bburx=520pt,bbury=351pt,clip=}
|
|
%%clip=}
|
|
\caption{MuSR signal for the run 201 (TF$=300\,$gauss). The tree forward positron counters
|
|
are summed up in the left histogram, and the two backward counters in the right histogram.}
|
|
\label{hdet_time10_10}
|
|
\end{figure}
|
|
%
|
|
shows the $\mu$SR spectra for the same run,
|
|
i.e.\ for the transverse field of 300\,gauss, integrated over the three forward positron
|
|
counters (left histogram called {\tt hdet\_time10\_10})
|
|
and over the two backward positron counters (right histogram called {\tt hdet\_time10\_11}).
|
|
Zero on the time axis corresponds to $t_0$, i.e.\ time of the m-counter hit.
|
|
One can see a prompt peak at $t_0$, time independent background at negative times
|
|
and an oscillating signal at positive times.
|
|
The following function has been fitted to the oscillating part of the signal:
|
|
%
|
|
\begin{equation}
|
|
f=p_3 \cdot e^{-t/2.19703} \cdot (1+p_2 \cdot \cos(t \cdot p_0+p_1))+p_4
|
|
\label{eq_simple}
|
|
\end{equation}
|
|
The fits were restricted to the time interval of $(t_0+0.05 \mu\rm{s},t_0+9.95\mu\rm{s})$,
|
|
and the parameter $p_0$ was fixed (e.g. not fitted).
|
|
The fitted amplitude of asymmetry are $p_2 = 0.307 \pm 0.009$ and
|
|
$p_2 = 0.290 \pm 0.009$ for the forward and backward counters respectively.
|
|
|
|
Parts of the spectra from Fig.~\ref{hdet_time10_10} are shown
|
|
in detail in Fig.~\ref{hdet_time10_10_detail}.
|
|
%
|
|
\begin{figure}[htbp]\centering
|
|
\epsfig{file=pict/hdet_time10_10_detail.eps,width=0.495\linewidth,%
|
|
bbllx=13pt,bblly=5pt,bburx=520pt,bbury=351pt,clip=}
|
|
\epsfig{file=pict/hdet_time10_11_pileup.eps,width=0.495\linewidth,%
|
|
bbllx=13pt,bblly=5pt,bburx=520pt,bbury=351pt,clip=}
|
|
%%clip=}
|
|
\caption{MuSR signal for the run 201 (TF$=300\,$gauss) -- details of
|
|
Fig.~\ref{hdet_time10_10}. The left plot shows the signal in the forward counters around $t_0$,
|
|
the right plot shows the (time-independent background) signal at negative times in the
|
|
backward counters.}
|
|
\label{hdet_time10_10_detail}
|
|
\end{figure}
|
|
%
|
|
The left plot in Fig.~\ref{hdet_time10_10_detail} shows the signal
|
|
in the forward counters around $t_0$, the right plot shows the
|
|
(time-independent background) signal at negative times in the backward counters.
|
|
|
|
An important characteristic of a \musr\ instrument is the time-independent
|
|
background. It is usually expressed as
|
|
%
|
|
\begin{equation}
|
|
{\rm Bgr} = p_{-} / p_3 ~~~,
|
|
\label{eq_background}
|
|
\end{equation}
|
|
%
|
|
where $p_{-}$ is the fit to the time-independent background, i.e.\ signal at negative times,
|
|
and $p_3$ is the parameter from eq.(\ref{eq_simple}), which specifies what the
|
|
size of the signal would be at $t_0$ in the absence of oscillations.
|
|
In the case of backward counters ${\rm Bgr}_{\rm backw} = 14.47/262 = 5.5\,\%$,
|
|
in the case of forward counters ${\rm Bgr}_{\rm forw} = 6.88/267.9 = 2.6\,\%$.
|
|
|
|
Note that the histogram on right hand side of Fig.~\ref{hdet_time10_10_detail}
|
|
is labelled ``{\tt hdet\_time10\_Bgr\_11}'', not ``{\tt hdet\_time10\_11}''.
|
|
In fact, the two histograms are identical, as one can see in the setup file
|
|
{\tt 201.v1190}. The only difference is in the fitting -- the same data stored in
|
|
both histograms are fitted by different functions in different time ranges.
|
|
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\subsection{The $\mu$SR signal from individual counters}
|
|
%
|
|
Figure~\ref{F11} shows the observed signal in the
|
|
forward counter\ No.~11 (FW11).
|
|
%
|
|
\begin{figure}[htbp]\centering
|
|
\epsfig{file=pict/F11_rebinned.eps,width=0.495\linewidth,%
|
|
bbllx=13pt,bblly=5pt,bburx=520pt,bbury=351pt,clip=}
|
|
\epsfig{file=pict/F11_B11_prompt_peak_thicker.eps,width=0.495\linewidth,%
|
|
bbllx=13pt,bblly=5pt,bburx=520pt,bbury=351pt,clip=}
|
|
\caption{\musr\ signal in the forward positron counter\ No.~11 (run 201, TF$=300\,$gauss).
|
|
The left plot shows the (rebinned) signal in the counter,
|
|
the right plot shows the detail of the \emph{prompt peak}, i.e.\ the region
|
|
around $t_0$ in the same counter (black line),
|
|
compared with the prompt peak in the backward positron counter\ No.~1 (magenta line).}
|
|
\label{F11}
|
|
\end{figure}
|
|
%
|
|
Originally, the histogram F11 was defined with the bin width of 100\,ps.
|
|
The number of bins was 50995, covering the time interval of approx.\ (-0.2\,$\mu$s, 4.9\,$\mu$s).
|
|
In the left hand side plot, however, the histogram was rebinned
|
|
(200 bins were summed up into 1 bin).
|
|
The right hand side plot shows the detail of the \emph{prompt peak}, i.e.\ the region
|
|
around $t_0$, of one forward and one backward positron counters, prior to the rebinning.
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\subsection{Conclusion of the GPD analysis example}
|
|
%
|
|
The purpose of the example analysis of the GPD simulation was to illustrate
|
|
the potential of \musrSim\ and \musrSimAna\ programs to investigate features
|
|
like time-independent background, sample muon fraction, prompt peak, \ldots
|
|
This information can be used in design and optimisation of \musr\ instruments.
|
|
|
|
%========================================================================================================
|
|
\begin{thebibliography}{0}
|
|
|
|
\bibitem{acquisitionProkscha} T.~Prokscha {\it et al.} ``A novel VME based \musr\ data acquisition system at PSI'',
|
|
Physica {\bf B~404}, (2009) 1007-1009.
|
|
|
|
\bibitem{TDCsetup} ``TDC Manual -- Setting up the required logic'',
|
|
http://lmu.web.psi.ch/facilities/electronics/TDC/set\_logic.html
|
|
|
|
\bibitem{GPD}
|
|
http://lmu.web.psi.ch/facilities/gpd/gpd.html
|
|
|
|
\bibitem{musrSim}
|
|
K.Sedlak {\it et al.}, ``Manual of musrSim''.
|
|
|
|
|
|
\end{thebibliography}
|
|
|
|
\end{document}
|