This versions of the TPC cal data include the following changes from the previous, second iteration: 1. The two, 16x16 cross talk correlation matrices are replaced by just two numbers as Spencer suggested. 2. Noise is an uncertain quantity right now, both its actual magnitude (with new gated grid driver) and its ultimate effect on the tracking. Spencer suggests putting in about 30 values for each channel, to represent the noise in the first several, last several and typical mid-range time buckets. I propose an intermediate solution where we have a channel-by-channel rms noise factor plus a global 512 element time bucket dependent rms noise factor array (actually two, for the inner and outer sectors). This assumes that the dominant contribution to the time bucket dependence of the noise is due to a common source (gated grid driver) and is constant for all channels (but can differ for inner and outer sectors). The total rms noise for a specific pixel is obtained by adding the channel dependent noise and additional time bucket noise in quadrature (independent noise sources). This will keep the data volume under control for an effect that may not amount to much (we hope). If we really need 30 noise values per channel then we'll add that later to the pad tables. The other noise factors in version #2 have been dropped here. 3. The correct number of anode wire voltages was included. 4. The gated grid voltages and last two field cage stripe voltages were added. 5. Pulser widths and time offsets were added to the pad tables. Lanny *********************************************************************** These structures are what are read by the offline reconstruction codes during DST production of normal collision events. They are not necessarily what is needed to analyze calibration run data such as the pulser and laser events. I divide everything into two time scales: By "long term" I mean information that can be loaded from the DB at the beginning of an offline reconstruction-production run once without further updates, at least not until the next run is started. By "short term" I mean information that varies throughout the experimental run and must be updated throughout the offline reconstruction-production run for the appropriate period of validity. The following tables are very similar to the raw data tables that Roy Bossingham designed which use explicit row number references. This practice is fine for the raw data since it is static throughout each event processing loop and this method is certainly the most economical way to go as far as memory and cpu demands are concerned. The following calibration tables have a similar hierarchy and I have also used explicit row references. (Yes, this is contrary to my usual sermons about the evils of explicit row references in tables.) Anyway, this needs to be decided. This could turn out to be a moot point once ROOT/OO fully take over and we relate data via pointers ala c++. Finally, I continue to assume a STAF-like organization of the tables according to Roy's raw data table hierarchy. The scheme in general would look like the following at run time in STAF (I assume something analogous applies in ROOT?): /TPC_CAL Global Level Tables - long term Global Level Tables - short term Maps and Grids Sector Level Tables (inner & outer) - long term Sector Level Tables (inner & outer) - short term /Sector_01 Readout Board tables (inner & outer) - long term Readout Board tables (inner & outer) - short term FEE Board tables (inner & outer) - long term FEE Board tables (inner & outer) - short term Pad Row tables (inner & outer) - long term Pad tables (inner & outer) - long term Pad Row tables (inner & outer) - short term Pad tables (inner & outer) - short term Pedestal tables(inner & outer) - short term /Sector_02 ...........same............ : : : /Sector_24 *********************** ** LONG TERM TABLES ** *********************** Long Term TPC Global Parameter Table (1 row) ==================================== d(E)/dV_central -- Change in electric field perturbations with central membrane voltage Nominal V_central & tolerance d(v_drift)/dP -- Change in drift velocity with gas pressure d(v_drift)/dT -- Change in drift velocity with gas temperature d(v_drift)/d%Methane -- Change in drift velocity with gas composition d(v_drift)/d%Argon -- Change in drift velocity with gas composition -OR- d(v_drift)/d%Ethane -- Change in drift velocity with gas composition d(v_drift)/d%Helium -- Change in drift velocity with gas composition d(v_drift)/d%H2O -- Change in drift velocity with gas contaminants d(v_drift)/d%Oxygen -- Change in drift velocity with gas contaminants ...etc.... d(v_drift)/dV_central -- Change in drift velocity with V_central Nominal gas properties and tolerances - (P,T,Gas Type,%Methane, %Argon, (OR) %He, %Ethane, etc; %Contaminants including water, oxygen, etc...) Change in Nominal gas properties with height (y_global): dP/d_height, dT/d_height, d%Meth/d_height, d%Arg/d_height, d%water/d_height, d%oxy/d_height Nominal FEE Shaper Response function type and parameters Nominal Gain function type Nominal FEE SCA frequency DAQ 10->8 bit translation function type and set of parameters DAQ online gain function type Pulser Offline analysis gain function type Gas gain variation with anode wire voltage (inner/outer sectors) Gas gain variation with Luminosity; local grnd-anode wire region space charge effects (in/out sec.) Gas gain variation with gas pressure (inner/outer sectors) Gas gain variation with gas temperature (inner/outer sectors) Gas gain variation with gas %Meth,%Arg (inner/outer sectors) Gas gain variation with gas %H2O,%O2, etc. (inner/outer sectors) Nominal z-dependent attenuation function type and parameters (east/west) Variation in z-dependent attenuation parameters with gas pressure, (east/west/inner/outer) Variation in z-dependent attenuation parameters with gas temperature, (east/west/inner/outer) Variation in z-dependent attenuation parameters with gas %Meth,%Arg, (east/west/inner/outer) Variation in z-dependent attenuation parameters with gas %H2O,%O2, (east/west/inner/outer) RHIC bunch crossing - Trigger absolute time offset Variation in FEE noise with FEE temperature, d(FEE-noise)/d(FEE Temp) (retain this even though Spencer argues that it is negligible) X,Y,Z Shifts and errors for East/West TPC Wheel alignment Euler Angles (1,2,3) and errors for East/West TPC Wheel alignment Nominal z-position offset due to grnd plane -to- anode wire drift speed increase; inner/outer sectors Variation in the preceding z offset with anode wire voltage; inner/outer Two universal FEE chip cross talk correlation parameters for the I(t) and dI(t)/dt dependent cross talk effects; adjacent channel and non-adjacent channel factors. Nominal, global noise factor per time bucket [512] (inner/outer sec.) (This is mainly for the noisy first few and last few time buckets. This noise factor is added in quadrature to the channel specific noise factors listed in the pad tables below.) Long Term TPC Global Maps and Grids =================================== Map of d(E)/d(Luminosity) - 3D grid (or 2D r,z grid if azimuthal symmetry is ok) of the change in the electric field as a function of beam-beam Luminosity due to net, positive ion space charge accumulation in the TPC volume. Depends on TPC gas. Map of nominal electric field perturbations at nominal V_central due to static, structural defects in the TPC field cage, e.g. shorted stripes, misaligned central membrane, grnd plane float, OFC sag, etc. Map of nominal space point position shifts due to nominal ExB effects; 3D grid with shifts in r, r*phi positions. Long Term Magnetic Field Map: (This is not TPC specific) ============================ Map of B field on 3D grid; B-vector and divergence vector at each grid pt. Coarse map of variation in B-vector with magnet coil currents: I_main, I_east-end, I_west-end, I-east-trim, I_west-trim. Long Term TPC Sector Level Table - Inner Sectors (24 rows) ================================================ (Each row contains information about one inner sector) Sector ID # as defined in the STAR Conventions Note #229. Nominal Anode wire voltages and tolerances [4] x,y alignment shifts in the plane of the TPC end wheel errors in x,y alignment shifts rotation alignment angle correction for sector on wheel error in rotation alignment angle correction Nominal gated grid voltages Vgg, Vgh, Vgl where Vgg = voltage when grid is open Vgh = voltage added to every other wire when grid is closed Vgl = voltage subtracted from every other wire when grid is closed Long Term TPC Sector Level Table - Outer Sectors (24 rows) ================================================ (Each row contains information about one outer sector) Sector ID # as defined in the STAR Conventions Note #229. Nominal Anode wire voltages and tolerances [4] x,y alignment shifts in the plane of the TPC end wheel errors in x,y alignment shifts rotation alignment angle correction for sector on wheel error in rotation alignment angle correction Nominal gated grid voltages Vgg, Vgh, Vgl where Vgg = voltage when grid is open Vgh = voltage added to every other wire when grid is closed Vgl = voltage subtracted from every other wire when grid is closed START Sector Hierarchy for sectors 1,2,....24 ============================================= /Sector_(i) =========== Long Term TPC Read Out Board table (inner sector) (2 rows) ================================================= (Each row contains information about one RDO board in Sector_i, inner sector) RDO board ID # Nominal t0 offset and error Row references for first,last FEE boards for this RDO (refers to next table) Long Term TPC FEE board table (inner sector) (55 rows) ============================================ (Each row contains information about one FEE card in Sector_i, inner sector; all FEE cards for a given RDO board must be listed sequentially) FEE board ID # Row reference to RDO board this card feeds into (refers to preceding table) Nominal t0 offset and error for chip 1 Nominal t0 offset and error for chip 2 Nominal operating temperature and tolerance Row references to the 16 pads which are connected to chip 1 [16] Row references to the 16 pads which are connected to chip 2 [16] (These refer to the Long Term TPC Pad table - inner sector; this is part of the FEE Card <-> Pad map) Long Term TPC Read Out Board table (outer sector) (4 rows) ================================================= (Each row contains information about one RDO board in Sector_i, outer sector) RDO board ID # Nominal t0 offset and error Row references for first,last FEE boards for this RDO (refers to next table) Long Term TPC FEE board table (outer sector) (126 rows) ============================================ (Each row contains information about one FEE card in Sector_i, outer sector; all FEE cards for a given RDO board must be listed sequentially) FEE board ID # Row reference to RDO board this card feeds into (refers to preceding table) Nominal t0 offset and error for chip 1 Nominal t0 offset and error for chip 2 Nominal operating temperature and tolerance Row references to the 16 pads which are connected to chip 1 [16] Row references to the 16 pads which are connected to chip 2 [16] (These refer to the Long Term TPC Pad table - outer sector; this is part of the FEE Card <-> Pad map) Nominal Bad Pixel List - inner sector (variable number of rows) ===================================== (This is a list of random pixels determined to be bad by previous offline analysis which are on otherwise 'good' pads.) Row reference to pad (refers to Long Term TPC Pad table - inner sector) Bad pixel ID number Long Term TPC Pad Row Table - inner sector (13 rows) ========================================== (Each row contains information about one pad row in Sector_i, inner sector) Pad row # Row reference to first,last pad on this row (refers to next table) Long Term TPC Pad Table - inner sector (1750 rows) ====================================== (Each row contains information about one pad in Sector_i, inner sector) Pad # Nominal Gain parameters: const offset, linear, quadratic Nominal pulser width Nominal channel status flag Electronic noise factor (if needed this can be expanded to an array to contain the noise levels for the first several, last several and intermediate time buckets) Row reference to FEE board (>0 for chip 1, <0 for chip2) (refers to Long Term TPC FEE Board table - inner sector; part of the FEE Board <-> Pad map) Online gain parameters Nominal t0 offset and error Nominal Bad Pixel List - outer sector (variable number of rows) ===================================== (This is a list of random pixels determined to be bad by previous offline analysis which are on otherwise 'good' pads.) Row reference to pad (refers to Long Term TPC Pad table - outer sector) Bad pixel ID number Long Term TPC Pad Row Table - outer sector (32 rows) ========================================== (Each row contains information about one pad row in Sector_i, outer sector) Pad row # Row reference to first,last pad on this row (refers to next table) Long Term TPC Pad Table - outer sector (3942 rows) ====================================== (Each row contains information about one pad in Sector_i, outer sector) Pad # Nominal Gain parameters: const offset, linear, quadratic Nominal pulser width Nominal channel status flag Electronic noise factor (if needed this can be expanded to an array to contain the noise levels for the first several, last several and intermediate time buckets) Row reference to FEE board (>0 for chip 1, <0 for chip2) (refers to Long Term TPC FEE Board table - outer sector; part of the FEE Board <-> Pad map) Online gain parameters Nominal t0 offset and error *********************** ** SHORT TERM TABLES ** *********************** Short Term Non-TPC Parameter Table (1 row) =================================== Beam-Beam collision Luminosity Magnetic field NMR probes, Hall probes Magnet Coil currents, Main, correction-East, correction-West, trim-East, trim-West Short Term TPC Specific Parameters - Global Level (1 row) ================================================== V_central - central membrane H.V. V_drift E/W from HV control system Gas properties: P,T, %Meth, %Arg, (OR %Ethane, %Helium), %H20, %O2, etc... for E/W; Upper/Lower Manifolds FEE SCA Frequency and feedback control value Monitor chamber gas properties: P,T,%composition,%contamination Monitor chamber V_drift Laser Cathode emission OFL analysis - V_drift East/ West Laser Cathode emission OFL analysis - position and distortion stability and status flags, E/W Laser track OFL analysis - V_drift E/W Laser track OFL analysis - position and distortion stability and status flags, E/W Voltages of last two field cage stripes: V181, V182; IFC, OFC; E,W. (8 values in all). Short Term TPC Sector Level table - inner sector (24 rows) ================================================ (Each row describes a single inner sector) Sector ID # Anode wire voltages[4] Laser track offline analysis - v_drift Laser track offline analysis - position and distortion stability status flags Actual gated grid voltages Vgg, Vgh, Vgl where Vgg = voltage when grid is open Vgh = voltage added to every other wire when grid is closed Vgl = voltage subtracted from every other wire when grid is closed Short Term TPC Sector Level table - outer sector (24 rows) ================================================ (Each row describes a single outer sector) Sector ID # Anode wire voltages[4] Laser track offline analysis - v_drift Laser track offline analysis - position and distortion stability status flags Actual gated grid voltages Vgg, Vgh, Vgl where Vgg = voltage when grid is open Vgh = voltage added to every other wire when grid is closed Vgl = voltage subtracted from every other wire when grid is closed Start Sector hierarchy for sectors 1,2...24 ============================================ /Sector_(i) Short Term TPC RDO Board table - inner sector (2 rows) ============================================= (Each row describes one RDO board in the inner sector of Sector_i) RDO board ID # Operating temperature[2] Row reference for FEEs, first & last (refers to next table) Short Term TPC FEE Board - inner sector (55 rows) ======================================= (Each row describes one FEE card in the inner sector of Sector_i; all FEE Boards for a given RDO Board must be listed sequentially.) FEE card ID # Row reference to RDO board (refers to preceding table) Operating Temperature [2] Pedestal stability monitor flag for chip 1,2 [2] Pulser offline analysis gain and pulse width stability monitor flags for both chips 1,2 [2] Pulser offline analysis t0 and response width (Tau) Errors in the pulser OFL anal. t0 and Tau. Short Term TPC RDO Board table - outer sector (4 rows) ============================================= (Each row describes one RDO board in the outer sector of Sector_i) RDO board ID # Operating temperature[2] Row reference for FEEs, first & last (refers to next table) Short Term TPC FEE Board - outer sector (126 rows) ======================================= (Each row describes one FEE card in the outer sector of Sector_i; all FEE Boards for a given RDO Board must be listed sequentially.) FEE card ID # Row reference to RDO board (refers to preceding table) Operating Temperature [2] Pedestal stability monitor flag for chip 1,2 [2] Pulser offline analysis gain and pulse width stability monitor flags for both chips 1,2 [2] Pulser offline analysis t0 and response width (Tau) Errors in the pulser OFL anal. t0 and Tau. Pulser and Other OFL Anal Bad Pixel List - inner sector (variable # rows) ======================================================= (This is a list of random pixels determined to be bad during a run by analysis of pulser or other data which are on otherwise 'good' pads.) Row reference to pad (refers to Pad table - inner sector) Bad pixel ID number Short Term TPC Pad Row table - inner sector (13 rows) =========================================== (Each row describes one pad row in the inner sector_i) Pad row # Row reference to pads on padrow, first and last (refers to next table) Short Term TPC Pad table - inner sector (1750 rows) ======================================= (Each row describes one pad in the inner sector_i) Pad # Row reference to pedestals, first and last (refers to next table) Online channel status flag Pulser offline analysis gain parameters[3], errors[3] Pulser offline analysis width and error Pulser offline analysis channel status flag Pulser offline analysis t0 and error Short Term TPC Pedestals - inner sector (896,000 rows) ======================================= Ped_mean, Ped_stdev -- Either from online (10 bit) or generated offline Pulser and Other OFL Anal Bad Pixel List - outer sector (variable # rows) ======================================================= (This is a list of random pixels determined to be bad during a run by analysis of pulser or other data which are on otherwise 'good' pads.) Row reference to pad (refers to Pad table - outer sector) Bad pixel ID number Short Term TPC Pad Row table - outer sector (32 rows) =========================================== (Each row describes one pad row in the outer sector_i) Pad row # Row reference to pads on padrow, first and last (refers to next table) Short Term TPC Pad table - outer sector (3942 rows) ======================================= (Each row describes one pad in the outer sector_i) Pad # Row reference to pedestals, first and last (refers to next table) Online channel status flag Pulser offline analysis gain parameters[3], errors[3] Pulser offline analysis width and error Pulser offline analysis channel status flag Pulser offline analysis t0 and error Short Term TPC Pedestals - outer sector (2,018,304 rows) ======================================= Ped_mean, Ped_stdev -- Either from online (10 bit) or generated offline