[BLAST_ANAWARE] analysis of the spin dependent scaler charge: results

From: Tancredi Botto (tancredi@mitlns.mit.edu)
Date: Fri Jun 13 2003 - 21:56:39 EDT


I believe the scaler charge and the issue of how spin bits are transferred
and synchronized in the coda and scaler data streams are very well understood.
Right now, and for recent runs, the spin dependent charge is accounted for
to better than 0.5% in each state and can not be the cause of any serious
false asymmetry or pollution of the data.

Below are all the details.

-------------------------------------------------
Definitions:

The beam charge from the ring LDCCT is converted by a V2f and measured in
the blast VME scalers.

These are read-out every second

One scaler channel measures "all of the charge" one other measures the
charge only when the DAQ is alive (gated scaler)

The DAQ is dead or them beamgate drops for HV trips, HV put to stby,
CODA digitization time (CODA busy) and during target transitions.

Both scalers and coda events have the tgt spin state and beam
helicity information. They come from the same sources but are written
separately.

The beam helicity changes fill by fill or very slowly, and anyways
during a DAQ off period, it is not a concern.

------------------------------------------
Calibration:

The charge scalers had been calibrated in the following way: I faked a run
with no coda dead-time, no tgt bits. During this run different currents
were injected into the calibration qloop of the DCCT.

The injected currents were measured separately with a high precision
ammeter (epics variable: ldcct_qloop) and the integrated scaler charges
were compared to that readout.

The calibration shows a small non-linerarity in the scaler charge which
is accounted for.

Both scaler channels and the ldcct were independently calibrated in this way
Both scaler channels use the same calibration parameters.

The calibration is typically good to < 0.5 % in the 0 - 200 mA region.
Better results can only be obtained when the procedure will be automatized

----------------------------------------------------
Check of the calibration

As per recent email, I asked vitaly to take a run under the following
conditions:

No beam and a constant current in the qloop/dcct. Start the run with a
beam gate inhibit. Activate the target flipping sequence for an even
number of state+, state- (50). At the end of the last flip the sequence
program had to inhibit once again the daq. Then manually hit End to stop
the run. Each flip was associated with ca 1 s inhibit time and lasted
ca 10 seconds (the times are not exactly 1 and 10, but are always the same)

In this way we had a well controlled current per spin state in the inhibit
scaler (note: not in the un-inhibited scaler as this was counting
for "unknown" amounts of time between start of the run / start of the
sequence and end of the sequence/ end of the run, as the start/end run
is done manually and with some delay)

Unfortunately during the run we had physics triggers which added a
contribution ot the daq deadtime. This only complicated but did not
affect the conclusions below:

The first result was that the beamgate charge over the 50 state+ and 50
state- resulted to be

        state+ = 42.1971 C
         state- = 42.1926 C

which proved there is no "spin dependence". The total was thus 84.3897 C
The daq rate was flat, and the deadtime contributions were overall the
same for either state+ and state-. As expected.

The expect charge was as follows (absolute scale):

The qloop readback gave an average current of qloop = 89.999 +- 6.3e-4 mA

The time stamps for the scaler events gave a total time interval during
which the sequence was on of 1055 +- 1 s
Each target cycle is clearly not exactly 10+1 seconds else the above
results would have been 1100 s. However I do take 1000/1100 as the
average target livetime during the sequence (although this is not derived
from measured times)

Thus the total expected integrated charge before deadtime correction was
94.949 C (over 1055 s). With the above correction for the target
deadtime the total expected charge becomes 94.949 * 10 /11 = 86.317 C

The estimated coda livetime was taken to be 98 % This number is -if at
all- under-estimated because of a small contribution of the tgt dead time
(i.e. double counting). Indeed for some scaler intervals the target
goes busy in the last few % of the fill. One can for the most part
distingusih the two contributions as the tgt deadtime can be as high as
100% (1 second dead over a 1 second scaler cycle). This yielded that coda
was never more than 2-3 % dead.

With this additional correction the expected total charge to be measured
by the inhibited scaler becomes 86.317 * 0.98 = 84.596 C

This is then compared with the measured value (sum of + and -) of 84.3897 C
with which it agrees to 0.3 %

A similar result was found about a month ago.

------------------------------------------------------------
Finally, check of the timing of the spin bits in the coda and scaler
events

Coda works according to a buffered read-out principle, therefore sending
out "burst" of events from the front end asynchronously with true time.

The beam charge is sorted out to each spin state according to what the
scalers say the spin state is. Scalers are read out every second but not
even their position in the data file is coordinated with coda events

Clearly we need to independently stamp each coda event with the target
spin-state information. This is done using ADCs on a event by event basis.

Both coda and scaler events have their own time stamps up to usec's.

In the first gif attachment I show a sequence of coda events (black).
Plotted is the bit defining tgt state 1 as a function of "absolute" time
from the start of the run. The state flips pseudo-randomly every 20
seconds in this run, so at times the same state is on for 40 s. Every
20 s coda is inhibited (not shown on this scale).

In red I show the corresponding bit in the scaler stream (with a reversed
sign for clarity) plotted on the same graph as a function of scaler time.

In the second attachment you can zoom in on a transition: in this case
this occurred at t = 251 s. Clearly coda (black) data are missing for
about 1 second (the tgt inhibit) after which they show up with the
reversed spin, in perfect sync with the scaler event which also reverses
spin state

During this analysis we could check that during a target inhibit coda
events are always at least 1 second apart.
The coda and scaler data stream live off separate clocks on separate cpus
and with separate NTP (network time protocols) servers (the reference
clocks are the same, probably time.mit.edu ? ask karen). They seem
synchronized to better than 100 us. Doing much better would definitely
be a challenge.

The conclusion is that coda events and scaler events know of the target
spin state at the *same* time. However since they appear at different
places in the final data file, the charge has to be analyzed looking at
the scaler status bit, the physics looking at the coda spin bits.

Which is the way it is done.

________________________________________________________________________________
Tancredi Botto, phone: +1-617-253-9204 mobile: +1-978-490-4124
research scientist MIT/Bates, 21 Manning Av Middleton MA, 01949
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^



seq.gif

zoom.gif



This archive was generated by hypermail 2.1.2 : Mon Feb 24 2014 - 14:07:29 EST