Beam Test Offline Code Jianchun Wang Syracuse University 01/17/02 Outline  Status of the code  Function modules  Discussion topics.

Slides:



Advertisements
Similar presentations
INSTRUCTION SET ARCHITECTURES
Advertisements

Dr. Kalpakis CMSC 661, Principles of Database Systems Representing Data Elements [12]
Standalone VeloPix Simulation Jianchun Wang 4/30/10.
1 Scintillating Fibre Tracker Simulation Malcolm Ellis Imperial College London Tuesday 9 th March 2004.
VELO Beamtest Trigger VELO meeting 08/12/2005 Jianchun (JC) Wang Syracuse University.
Offline Code for Next Beam Test Jianchun Wang 08/06/01.
Pixel Offline Status Jianchun Wang Syracuse University 09/17/04, Pixel testbeam meeting.
MC Study of B°  S Jianchun Wang Syracuse University BTeV meeting 06/27/01.
Pixel Beam Test Offline Code Demo Jianchun Wang 05/01/03.
Testbeam 2010 with CAPTAN System Jianchun Wang Syracuse University.
02/14/00Jianchun (JC) Wang1 Outline The idea behind the code Code structure and its usage Test on a magnet run Plan Jianchun Wang 02/14/00.
Status on Testbeam Analysis Jianchun Wang Syracuse University VELO meeting, August 28, 2007.
1 Analysis code for KEK Test-Beam M. Ellis Daresbury Tracker Meeting 30 th August 2005.
BTeV Pixel Detector Testbeam Data File Format Based on discussion (06/27/03) attended by Lynn Garren, Rob Kutschke, Simon Kwan, Charles Newsom, Lorenzo.
Pixel Testbeam at Fermilab Jianchun Wang Syracuse University.
Beam Test Offline Code Jianchun Wang 05/09/02. Jianchun (JC) Wang2 Where We Are Now  Nothing much has been done since the beginning of February.  The.
L1 Trigger for ACDC Jianchun (JC) Wang Syracuse University VELO ACDC Software Meeting 01/20/2006.
VELO Testbeam 2006 Tracking and Triggering Jianchun (JC) Wang Syracuse University VELO Testbeam and Software Review 09/05/2005 List of tasks 1)L0 trigger.
Jianchun (JC) Wang, 08/21/99 RICH Electronics and DAQ Chip Carrier Short Cable Transition Board Long Cable Data Board Crate J.C.Wang Syracuse University.
Jianchun Wang Marina Artuso Syracuse University 11/06/00 MC Simulation of Silicon Pixel Detector.
1 G4MICE Malcolm Ellis SciFi Tracker Meeting, KEK Thursday 31st March 2005.
Guide To UNIX Using Linux Third Edition
Responsibility on Next Beam Test Jianchun Wang Syracuse University BTeV meeting 06/27/01.
MC Study on B°  J/  ° With J/      °     Jianchun Wang Syracuse University BTeV meeting 03/04/01.
Chapter 7 Indexing Objectives: To get familiar with: Indexing
New Features of APV-SRS-LabVIEW Data Acquisition Program Eraldo Oliveri on behalf of Riccardo de Asmundis INFN Napoli [Certified LabVIEW Developer] NYC,
Using ROOT geometry for FVTX reconstruction Zhengyun You Peking University Los Alamos National Lab Jan 22, 2007.
SVX Software Overview Sasha Lebedev VTX meeting 09/07/ SVX Software web page:
1 Project 3: An Introduction to File Systems CS3430 Operating Systems University of Northern Iowa.
Update on the new reconstruction software F. Noferini E. Fermi center INFN CNAF EEE Analysis Meeting - 14/09/20151.
David N. Brown Lawrence Berkeley National Lab Representing the BaBar Collaboration The BaBar Mini  BaBar  BaBar’s Data Formats  Design of the Mini 
Introduction Advantages/ disadvantages Code examples Speed Summary Running on the AOD Analysis Platforms 1/11/2007 Andrew Mehta.
LAV Software Status Emanuele Leonardi – Tommaso Spadaro Photon Veto WG meeting – 2015/03/24.
CMS pixel data quality monitoring Petra Merkel, Purdue University For the CMS Pixel DQM Group Vertex 2008, Sweden.
October 8, 2002P. Nilsson, SPD General Meeting1 Paul Nilsson, SPD General Meeting, Oct. 8, 2002 New tools and software updates Test beam analysis Software.
What is in my contribution area Nick Sinev, University of Oregon.
5/2/  Online  Offline 5/2/20072  Online  Raw data : within the DAQ monitoring framework  Reconstructed data : with the HLT monitoring framework.
Pixel Offline Study Jianchun Wang Syracuse University 11/05/04, Pixel testbeam meeting.
TB1: Data analysis Antonio Bulgheroni on behalf of the TB24 team.
1. FINISHING FUNCTIONS 2. INTRODUCING PLOTTING 1.
LM Feb SSD status and Plans for Year 5 Lilian Martin - SUBATECH STAR Collaboration Meeting BNL - February 2005.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Root based Object oriented Midas Extension Presented by Matthias.
Nov 2002T. Ljubicic DAQ100 Calibration Needs 10 to 8 bit (and back!) conversion table Gain correction per pad T0 correction per pad.
Fast Tracking of Strip and MAPS Detectors Joachim Gläß Computer Engineering, University of Mannheim Target application is trigger  1. do it fast  2.
Status of global tracking and plans for Run2 (for TPC related tasks see Marian’s presentation) 1 R.Shahoyan, 19/03/14.
Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Root based Object oriented Midas Extension Presented by Matthias.
Postgraduate Computing Lectures PAW 1 PAW: Physicist Analysis Workstation What is PAW? –A tool to display and manipulate data. Learning PAW –See ref. in.
David Hutchcroft 1 VELO software. Lite clusters in Kalman fit 2 The VELO clusters are available both as a lite and “full” version Two consecutive blocks.
STAR Analysis Meeting, BNL – oct 2002 Alexandre A. P. Suaide Wayne State University Slide 1 EMC update Status of EMC analysis –Calibration –Transverse.
T. Lari – INFN Milan Status of ATLAS Pixel Test beam simulation Status of the validation studies with test-beam data of the Geant4 simulation and Pixel.
The Detector Performance Study for the Barrel Section of the ATLAS Semiconductor Tracker (SCT) with Cosmic Rays Yoshikazu Nagai (Univ. of Tsukuba) For.
1 SDD offline status Francesco Prino INFN sezione di Torino ALICE offline week – October 20th 2008.
Overview of PHENIX Muon Tracker Data Analysis PHENIX Muon Tracker Muon Tracker Software Muon Tracker Database Muon Event Display Performance Muon Reconstruction.
ECE 456 Computer Architecture Lecture #9 – Input/Output Instructor: Dr. Honggang Wang Fall 2013.
STAR SVT Self Alignment V. Perevoztchikov Brookhaven National Laboratory,USA.
1 Reconstruction tasks R.Shahoyan, 25/06/ Including TRD into track fit (JIRA PWGPP-1))  JIRA PWGPP-2: Code is in the release, need to switch setting.
Calibration algorithm and detector monitoring - TPC Marian Ivanov.
Overview of EMU Software Rick Wilkinson. Slice Test DAQ We succeeded in using Slice Test DAQ code to take test beam data, combining chamber and trigger.
Test Beam Meeting Monday, January 31, 2000 Fpix1 Calibration Status 1.What we have 2.What to do Monitor Software to use now 1.Current Version 2.Calibration.
4 Dec., 2001 Software Week Data flow in the LArG Reconstruction software chain Updated status for various reconstruction algorithm LAr Converters and miscellaneous.
MAUS Status A. Dobbs CM43 29 th October Contents MAUS Overview Infrastructure Geometry and CDB Detector Updates CKOV EMR KL TOF Tracker Global Tracking.
Mitglied der Helmholtz-Gemeinschaft Hit Reconstruction for the Luminosity Monitor March 3 rd 2009 | T. Randriamalala, J. Ritman and T. Stockmanns.
David Lawrence JLab May 11, /11/101Reconstruction Framework -- GlueX Collab. meeting -- D. Lawrence.
Pixel Offline Status Jianchun Wang Syracuse University 10/28/04, Pixel testbeam meeting.
Integration and alignment of ATLAS SCT
ALICE Offline Week, CERN
Test Beam Measurements october – november, 2016
Project 3: An Introduction to File Systems
Presentation transcript:

Beam Test Offline Code Jianchun Wang Syracuse University 01/17/02 Outline  Status of the code  Function modules  Discussion topics

01/17/02Jianchun (JC) Wang2 Status  All main functions are done, but need more testing and polishing.  The code was tested with Syracuse computers (Alpha with Linux and OSF1) during development.  The code was submitted to CVS this week, we need to decide whether keep it as a new release or a new project (Rob and Lynn will tell us about CVS).  The code was tested on fnsimu1 and fsgi03.  GNUmakefile.standalone are used. We need to work out GNUmakefile.  We need to solve some issues and decide on what else functions should be included.

01/17/02Jianchun (JC) Wang3 General Description Data Analysis Read in real data (include MC track), convert ADC counts into charge, form cluster and convert into coordinates, form rough track and perform Kalman filter, write out ntuple and track summary file for further study MC Simulation Generate tracks, calculate intersection points on each plane, simulate charge collection and convert it into ADC counts, write out in similar format as real data plus the track information Auto Alignment Read in track summary file (local coordinates and resolutions), go through MINUIT with geometry conversion, for different geometry calculate chi2 for each track, minimize the sum of chi2 and write out new geometry

01/17/02Jianchun (JC) Wang4 Tasks tb_controldata_in_filedata_out_filehbk_filerun_id Raw dataeventrun01234.dat-run01234.hbk- MC dataeventmcd01234.dat-mcd01234.hbk- Raw data + summarysummaryrun01234.dattrk01234.datrun01234.hbk- MC data + summarysummarymcd01234.dattrk01234.datmcd01234.hbk- Alignmentaligntrk01234.dat-aln01234.hbk- MC generationmcgen-mcd01234.datmcg01234.hbk1234 Tasks are selected by tb_control and information inside input data file Names of output data file and histogram file can be defined or with default

01/17/02Jianchun (JC) Wang5 Function Modules  Data encode and decode  Geometry manipulation  ADC charge conversion  Cluster formation and conversion into coordinates  Track formation  Track fitting with Kalman filter  MC Simulation  MINUIT alignment ( a.k.a. Auto alignment )  CWN ntuple  Parameter control through name list read

01/17/02Jianchun (JC) Wang6 Data File Format A: Header 1.RAWD, SIMU, TRAK 2.Length of the block 3.Version 4.Run ID 5.Number of planes 6.Time Tag 7.… other comments B: Data Hits 1.Length of data block 2.Cell 1 data 3.… 4.Length of data block C: MC Track 1.Length of the block 2.Number of tracks 3.Local X for plane 1 4.Local Y for plane 1 5.… 6.Length of the block Data format for one cell 1111 pppp 000c cccc rrrr rrrr aaaa aaaa D: Track Summary 1.Length of the block 2.Plane ID 3.Local X for plane 1 4.Local Y for plane 1 5.Error on X for plane 1 6.Error on Y for plane 1 7.… 8.Length of the block  Raw data from DAQ (RAWD): ABBBBBB…  MC data generated (SIMU): ABCBCBC…  Selected track summary (TRAK): ADDDDDD…

01/17/02Jianchun (JC) Wang7 Sample of Data File d “SIMU”Block length = 6VersionRun id: c388dd f1000b07 6 planesTime tagBlock length = 7Hit (1, 0, 11, 7) f2000b01f3000b07f f Hit (2, 0, 11, 1)Hit (3, 0, 11, 7)Hit (4, 0, 17, 5)Hit (4, 0, 18, 6) f be76a7a4 Block lengthBlock length = 15Number of tracksLocal coordinate X be5e624dbe790583be7654a5be76e45d Y1X2Y2X be69a4e8be805307be6b1209be76f5bd Y3X4Y4X be761162be76a882be6151c f Y5X6Y6Block length …… With command: od –X mcd00900.dat

01/17/02Jianchun (JC) Wang8 Endian on Different Platforms  Within a given 16- or 32-bit word, bytes at lower addresses have higher significance (big_endian)  Most processor use big_endian, some use little_endian, very very few use middle_endian  The machine we used for DAQ, and most of machines that we are going to use for analysis are big_endian  In order that the data can be used for both big_endian and little_endian machine, I add byte swap in data reading and MC data writing  It was tested standalone, not with real code yet. And I need to work on GNUmakefile ( Most functions associated with coding is in testbeam_dio.c )

01/17/02Jianchun (JC) Wang9 Geometry Manipulation  The geometry manipulation has very little change.  Initial geometry information is read in from geometry file (tb_geometry.dat).  Parameters are derived for easier conversion between world coordinate (WC), and local coordinate (LC).  In MINUIT fit, fit parameters are connected with selected geometry parameters. Each time the fit parameters changed, the derived parameters recalculated.

01/17/02Jianchun (JC) Wang10 ADC Charge Conversion  Testbeam 2000 use curve for FPIX0, and one set of 4 thresholds for all FPIX1 cells.  Testbeam 2002 use calibration for each cell, and directly use threshold value instead of curves.  Each plane has its own sixy_adc_file name.  The ADC information is also used in the MC simulation where charge in pixel cell is converted to ADC value.

01/17/02Jianchun (JC) Wang11 Pixel Cluster  Testbeam 2000 uses Penny’s cluster formation initially wrote to work with simulation package we developed at Syracuse. The eta calculation using output from her code in 2-column case is wrong.  Testbeam 2002 imported the one I use for standalone simulation.  Cluster center of gravity is calculated and converted into local coordinate where the orientation of row and column is considered and can be easily controlled.  World coordination is calculated here so track formation can use more precise position. In testbeam 2000, we use local coordinate shift with the center for track formation.

01/17/02Jianchun (JC) Wang12 Track Formation  Track formation is kept in same style.  Use hits in two x seed planes to make a path, for other planes choose the closest hit (within a cut).  Y information currently is not used.

01/17/02Jianchun (JC) Wang13 Track Fitting  Rob had updated Kalman filter code to work with current version MCFast.  It can treat a pixel hit as two strip hits, and only fit on hits with good resolution.  It performs fit and derives residual with or with out the hit, and also provide the chi2 of the fit.  In MINUIT alignment, strip-equivalent is enforced.  The interface subroutine is kept in same style, modification are done mainly associated with local coordinate.

01/17/02Jianchun (JC) Wang14 MC Simulation  One or more tracks are generated (with no multiple scattering at this moment).  Intersection with each plane is calculated.  Charge generation, noise simulation, ADC conversion were imported from standalone simulation with modification.  Hits are encoded and written out.  The electric field, charge mobility, diffusion, effects of magnetic field are calculated at initialization.

01/17/02Jianchun (JC) Wang15 MINUIT Alignment  This is to determine the real geometry configuration by minimize the sum of chi2 from many track fit.  CPU is a big issue here since we need to perform Kalman filter many many times.  It deals with summary of pre-selected tracks.  It provides interactive mode although it can also run in batch mode.  Due to CPU limitation, only small portion of all geometry parameters can be FREE at a time. This is controlled in mn_skip.dat file, with very simple format.  The “best” geometry is written in mn_geometry.dat with same format as tb_geometry.dat.

01/17/02Jianchun (JC) Wang16 Histogram ID Geometry parameters Geometry parameters after alignment Global parameters and Detector parameters Simulation parameter maps Charge simulation parameters Simulated track and hits Track summary MINUIT fit Hit information Cluster information Difference of reconstructed hit position and generated position Form track Kalman filter

01/17/02Jianchun (JC) Wang17 Column Wised Ntuple  CWN has many advantages over RWN especially when the number of element is uncertain.  With CWN, when we add more pixels or shift to study other plane, we need only small modification on index. Benefit mentioned in Rob’s message a) does not waste disk space on information which is absent for this event ie you can declare very large arrays for hits but it only uses disk space for the ones which are present. b) faster interactive response if you are only referencing a small subset of the ntuple variables. This comes partly from a) but also from a "smarter" layout of how data is stored on disk. c) much easier maintenance when you change the number of detectors

01/17/02Jianchun (JC) Wang18 Variables in CWN Track Block ievt, ntrks, n_klm_ok, itrk, klm_ok, x_int, x_slp, y_int, y_slp, chisq, cl, ndof, fixyslp, yclass, nplanes Plane Block (ngeom elements except for ngeom) ngeom, itype, iort_row, nclus, iclus, npix, nrow, ncol, rowb, colb, rowq, colq, eta, sumq, xg, yg, xl, yl, xsig, ysig, xw, yw, zw, rxi, srxi, spxi, ryi, sryi, spyi, rxo, srxo, spxo, ryo, sryo, spyo, xf, yf, rhof, xslp, yslp, infitx, infity Hit Block (nhit elements except for nhit) nhit, ipln, icol, irow, iadc, icls, qval

01/17/02Jianchun (JC) Wang19 Name List Variables $CONTROL max_evts = tb_control = 'event' run_mc = 999 ncycle = 1000 binary_weights = 0 override_seeds = 0 xref1o = 1 xref2o = 2 yref1o = 5 yref2o = 6 dx_cuto = 0.06 y_slp_seed = max_miss_planes = 1 drop_plane(9) = 1 $END $DETECTOR sixy_carrier(1) = 2 sixy_ort_r(1) = 1 sixy_ort_c(1) = 1 sixy_ort_z(1) = 1 sixy_u_app(1) = 140 sixy_u_dep(1) = 105 bfield_x(1) = 0.0 bfield_y(1) = 0.0 bfield_z(1) = 0.0 sixy_thick(1) = 280 sixy_siz_r(1) = 50 sixy_siz_c(1) = 400 sixy_noise_val(1)= 0.0 sixy_gain_err(1) = 0.0 sixy_sig_cpl(1) = 0.0 sixy_thr_val(1) = 0.0 sixy_thr_dsp(1) = 0.0 sixy_thr_err(1) = 0.0 $END $FILES geom_file = 'tb_geometry.dat' data_in_file = ' ' data_out_file = ' ' hbk_out_file = ' ' sixy_adc_file(1) = 'adc_plane1.dat' $END

01/17/02Jianchun (JC) Wang20 To Be Discussed  Data format and byte swap  CVS and terminology (Rob and Lynn)  Do we need to include SSD?  Column wised ntuple  ???

01/17/02Jianchun (JC) Wang21 Analysis Flow 1. call read_namelist 2. status = open_old_file(data_in_file) 3. status = read_data_header(run_tmp, num_tmp, type_tmp) 4. call histo_init(hbk_out_file) 5. status = read_geometry(0) 6. call fill_derived_geom call sixy_geom_hfill(11100) 7. call sixy_detector_parameter call sixy_dpar_hfill 8. if ( want_summary ) status = open_new_file(data_out_file) 9. if ( want_summary ) status = write_data_header(runId, nPlanes, runType) status = read_event(1) 11. if ( status.eq. 0 ) then 12. call sixy_adc2q 13. call form_clusters call hit_hfill 14. call form_tracks 15. call fit_tracks call fit_hfill 16. call fill_ntuple 17. if ( want_summary ) call mn_write_track 18. if ( not_enough ) goto endif 20. call plane_eff 21. output histogram

01/17/02Jianchun (JC) Wang22 MC Generation Flow 1. call read_namelist 2. call histo_init(hbk_out_file) 3. status = read_geometry(0) 4. call fill_derived_geom call sixy_geom_hfill(11100) 5. call sixy_detector_parameter call sixy_dpar_hfill 6. status = open_new_file(data_out_file) 7. status = write_data_header(run_num, n_pix_planes, type_tmp) 8. call ranecu_init 9. call set_beam_properties 10. call sixy_drift_map call sixy_map_hfill 11. call sixy_charge_parameter 12. do evt_num = 1, max_evts 13. call mc_track 14. call mc_signal 15. call mc_write call mc_hfill 16. enddo 17. output histogram

01/17/02Jianchun (JC) Wang23 Alignment Flow 1. call read_namelist 2. status = open_old_file(data_in_file) 3. status = read_data_header(run_tmp, num_tmp, type_tmp) 4. call histo_init(hbk_out_file) 5. status = read_geometry(0) 6. call fill_derived_geom 7. call sixy_geom_hfill(11100) 8. call sixy_detector_parameter 9. call sixy_dpar_hfill 10. call mn_prepare_fit 11. call mn_read_track 12. call mn_fit_geo 13. call sixy_geom_hfill(11200) 14. output histogram