r17 - 12 Jul 2012 - 14:21:40 - MichelSorelYou are here: TWiki >  NEXT Web  >  NextSoftware > SoftwareOffline > SoftwareOfflineReleases

Release Notes

R2012-07-12 (carbon)

Note: given the many software changes and to proceed in a controlled manner, this is only a partial release. It covers only modules needed for NEXT-DEMO data pre-processing and some trakc reconstruction. Modules yielding the full nextoffline functionality will be added in the subsequent (nitrogen, etc.) releases.

New packages (SVN tag):

  • CreatePTracks (v1r0p0): This module creates PTracks out of S1 and S2 PMaps. One PTrack per input S2 PMap is created, provided that at least one input S1 PMap is present in the event. If more than one S1 PMap is present, the first instance is always considered. For each PTrack, a simple XY reconstruction using the barycenter method is performed

  • GammaCreatePTracks (v1r0p0): This module creates PTracks out of S1 and S2 PMaps. This (more specific) module should be used instead of CreatePTracks? for PTrack reconstruction for the Na22 gamma analysis in NEXT-DEMO

  • GammaS1S2Selector (v1r0p0): This module performs S1 and S2 PMap selection for the Na22 gamma analysis

  • Na22XNaI (v1r0p0): This is an analysis module (-> only produces histos) for the Na22 gamma analysis, for data taken with the NaI? calorimeter present

  • OffsetControl (v1r0p0): This module generates pedestal information for all SiPM? channels out of the raw data, in a format suitable to be entered into the relevant Database xml table

  • SelectPeakMaps (v1r0p0): This library contains a variety of modules for generic S1 and S2 PMap selection, based on PMap as well as on underlying Peak properties. For S1 and S2 PMap selection specific to the Na22 gamma analysis in NEXT-DEMO, the GammaS1S2Selector? should be used instead.

  • XYReco (v1r0p0): This library defines the classes performing x/y reconstuction based on tracking plane information. Two reconstruction methods currently exist: barycenter and chi2 method.

Modified packages (SVN tag):

  • ClearArrays (v1r0p1): add configuration to clear SiPM? DAQDigits

  • CreateDigits (v1r1p0):
    • Loop over DAQDigits from SIPMFEC folder also
    • Remove NewRun? method and related code
    • Pedestal always from Sensor for SiPM? channels
    • Remove FindSensor? method
    • Sensor class now defined in Database rather than RecoBase?(Temp)
    • Histogram for FE board failure diagnostics
    • New pedestal calculation method
    • Update to new Sensor methods
    • Several other minor changes

  • CreatePeakMaps (v1r1p0):
    • PMaps created with slice_width = max(anode_binning, cathode_binning)
    • Using the new setter of PMap for the width of the slices.

  • CreatePeaks (v1r1p0):
    • Fixed a bug that made impossible to classify a peak as both s1-like and s2-like
    • Fix in verbosity
    • Default resampling factor for PMTs now 40 (that is, 25ns*40 = 1 us)

  • Database (v1r3p0):
    • Sensor class moved from RecoBase?(Temp) to Database; added enum SensorType?
    • SensorDatabase? class added. As a consequence, note that SensorLoader? module is now obsolete, and Database should be used instead
    • Add NewRun? method to Database; remove Database from io namespace
    • ChannelGainTable?, ChannelMaskTable?, ChannelPedestalTable?, ChannelPositionTable? updated. MCNumberTable?, RawEventSizeTable? added.

  • EventFilters (v1r3p0):
    • GoodDAQFilter?, MultiplicityFilter?, TriggerFilter? added
    • Event filter modules do not live in flt namespace anymore
    • EventFilters? does not depend on AnaBase? anymore. Created a second package, MCTrueEventFilters?, with modules that depend on AnaBase?.
    • DriftTimeFilter?: now uses PTrack
    • EnergyROIFilter?: can cut on energy from Peak objects, in addition to ChamberHit?, Track or Digit objects
    • RadiusFilter?: now uses PTrack rather than ChamberHit?

  • RawBase (V1r4p0): DATE's event.h updated to version 3.12 in the offline. This is the same version used by the NEXT-DEMO DAQ (as it should!)

  • RawDataReader (v1r4p0):
    • NEXT1ELEventHandle: fixed to read PMTs and SiPMs? at the same time
    • NEXT1ELeventHandle: changed vectors to maps with elecid as key. to avoid having to assume that consecutive elecids are present in the data, and that they start from 0 for pmts, and from 1000 for sipms
    • NEXT1ELEventHandle: decode the error flag for SiPM? FE boards
    • NEXT1ELReadModule: fix in read helper class

  • RecoBaseTemp (v1r1p0):
    • DAQDigit: Reordering data members (it matters for ROOT persistency). Removing unnecessary dependencies. Adding svn keyword. Add FEB failure bit for SiPMs?. Add methods returning FEC ID and FEB ID given ElecID?
    • Digit: Digit destructor made virtual since the class is used as a base class for Peak. Minor changes.
    • PMap: bug fix: Tmin and Tmax were not being set after adding the Peak, now they are. Slice typedef added. Added methods GetAnodeIntegral?() and GetCathodeIntegral?(). Removed a constructor that was not being used and was somewhat insecure. Added a setter for the width of time slices. Also, the width is not taking anymore directly from the Peak.
    • PTrack: remove dependency on PMT class. DriftTime?() method added. Updated to use XYReco. Update in PTrack to use PMap::GetAnodeIntegral(). Added setter and getter for the event time in PTrack
    • Peak: Subversion keyword 'Id' set in Peak. Peak data member fS2Like was not being initialized in constructor.

  • SRT_NEXT (v1r3p0):
    • scripts/importpkg: when checking for package already existing in repository, check for exact name match
    • SoftRelTools?/platforms: add Linux kernel 3 family (3.0 and 3.2)

  • SumDigits (v1r2p0):
    • pedestal RMS now in units PEs/PMT rather than PEs, as it should
    • debug flag added

  • Utilities (v1r1p0):
    • HistoOperations?.h: H3 added
    • Several minor changes in util::Interval

R2012-06-15 (boron)

Note: given the many software changes and to proceed in a controlled manner, this is only a partial release. It covers only modules needed for NEXT-DEMO data pre-processing. Modules yielding the full nextoffline functionality will be added in the subsequent (carbon, nitrogen) releases.

New packages (SVN tag):

  • ClearArrays (v1r0p0): The ClearArrays? module clears the contents of a folder within a FMWK event branch. All subfolders underneath will be cleared as well. The folder "." indicates the top-level folder of the branch (entire branch cleared).
  • CreateDigits (v1r0p0): This module reads the raw waveforms (recobase::DAQDigit) expressed in ADC counts and transforms them into pedestal-subtracted, gain-corrected recobase::Digit expressed in photoelectrons. Note: supersedes the PedestalSubtraction? module.
  • CreatePeakMaps (v1r0p0): The CreatePeakMaps? module reads cathode sum recobase::Peak objects and individual channel recobase::Digit objects to create recobase::PMap objects.
  • CreatePeaks (v1r0p0): The CreatePeaks? module reads cathode sum recobase::Digit objects to create recobase::Peak objects. Note: supersedes the PeakFinder? module.
  • RecoBaseTemp (v1r0p0): temporary library meant for testing the new, more light-weight, RecoBase? library. Modules in this release depend on RecoBaseTemp? rather than RecoBase?.
  • SensorLoader (v1r0p0): The SensorLoader? module loads Sensor information, storing it in the FMWK event. The information loaded includes mapping between channel number and sensor geometrical position, which channels are alive for a given run, channel pedestal information, channel gain information.
  • Utilities (v1r0p0): library containing global functions and classes providing useful utilities. Utilities include template and non-template operations on strings, vectors and maps; operations on ROOT histograms; a Interval class. Note that this library does not depend on RecoBase?, and can be considered experiment-independent.

Modified packages (SVN tag):

  • Database (v1r2p0):
    • Add xml subdirectory containing tabular information in xml files. This information does not change event-by-event. Its validity may be indefinite or extend only for a given range of runs. The files in this xml subdirectory provide a "local" implementation of the NEXT offline database.
    • Database now loads only DatabaseBase? and DatabaseBaseXML? base libraries, and not others such as EventDisplayBase?. this is to allow Database-dependent jobs to work in batch mode
  • RawBase (v1r3p0):
    • Remove GasIFIC? stuff
    • Updates in LBNL's PMTDefines.h
    • Several LBNL types from ROOT's typedefs to C++ native types
    • Update LBNL timestamp management
  • RawDataReader (v1r3p1):
    • Fix a memory leak in GenericDATEReadModule? and NEXT1ELReadModule
    • NEXTLBNLEventHandle?: timestamp from event header, all waveform samples added regardless of value (before: greater than 0), waveform saturation check added
    • NEXT1ELEventHandle: several updates to read SiPM? data; updates to read raw data from latest firmware version (Golf) while maintaining backward compatibility since Foxtrot version; fill DATEEventHeader?; store number of pre-trigger samples in Trigger class; offline fix for case when channel number of first ADC sample is wrong in raw data
  • SRT_NEXT (v1r2p0):
    • Rationalize includes in template package
    • Add -fPIC flag to CXXFLAGS and CPPFLAGS in arch_spec_fmwk.mk
    • Update list of libraries checked for declaring nextoffline installation as successful
  • SumDigits (v1r1p0):
    • Big code speed-up
    • Merging from CathodeSum? module: read from generic input folder, set ElecID? of summed Digit, create histogram of pedestal rms, use InVector? for improved readability, update management of verbosity for messages

R2011-06-17 (beryllium)

New packages (SVN tag):
  • ASCITables (v1r0p0): The ASCITables module computes the probability for a EL photon produced in a specific position within the EL grid to hit and be detected in a specific photodetector at the anode or cathode plane. Such light detection tables, produced for a given step size in the EL grid position and a given photodetector array configuration, are obtained by processing NEXUS MC events. In such MC events, a large number of isotropically-distributed photons are produced in a given EL grid point.
  • EnergyReconstruction (v1r0p1): The EnergyReconstruction? module reconstructs the deposited energy per event. A few corrections to the basic energy observable, namely the integrated charge of the cathode sum, can be applied in this package. Such corrections are related to photodetector gain intercaibration, attachment of ionization electrons along drift, radial effects due to finite reflectivity of light tube walls.
  • PMTLoader (v1r0p0): The PMTLoader package stores in the event stream information related to PMTs. Such information, such as PMT position, is read either from the MySQL? offline database, or from local tables in xml format.
  • PeakFinder (v1r0p0): The PeakFinder? algorithm is in charge of finding peaks in event waveforms. Such (pedestal-subtracted) waveforms can be either from individual photodetectors or from summing the response of several photodetectors. The algortihm stores the full information of (TDC, ADC) pairs associated to the peak, and classifies the peaks as S1, alpha or beta-like for further analysis.
  • PedestalSubtraction (v1r0p1): The PedestalSubtraction? algorithm computes the pedestal mean and RMS, separately for each event and for each channel. The pedestal mean is then subtracted from the waveform. Optionally, resampling (that is, combining several clock ticks into one) or zero-suppression is also performed on the new waveforms.
  • PlotDigitWaveforms (v1r0p1): PlotDigitWaveforms? is a simple package to plot waveforms. Such (pedestal-subtracted) waveforms can be either from individual photodetectors or from summing the response of several photodetectors.
  • PointReconstruction (v1r0p0): The PointReconstruction? algorithm performs a simple reconstruction of a 3D point within the gas, starting from the information on the anode and cathode plane. The anode plane information is used to reconstruct x and y. A simple wieghted average method is used for now. The z position is obtained from the measured drift time for that event, times the drift velocity.
  • SumDigits (v1r0p0): The SumDigits? algorithm simply sums the pedestal-subtracted waveforms from several channels into one. A typical example of use of this algorithm is to perform the cathode sum. Optionally, perform (further) zero-suppression on the summed waveform.

Modified packages (SVN tag):

  • AnaBase (v1r2p0):
    • Add MCTrack
  • Bhep2Other (v1r0p2):
    • SensorHit? now in RecoBase? library, and not in SensorResponse? library anymore
  • CalibrateHits (v1r1p0):
    • Pedestal calculation added
    • Now perform also sum of all waveforms
    • SensorHit? class filled is now in RecoBase?
  • CreateMCTracks (v1r1p2):
    • Removed CreateMCTracks? from reco namespace
    • MCTrack class is now in AnaBase? library, not in CreateMCTracks?
  • Database (v1r1p0):
    • Add example (in test subdir) on how to retrieve table data
    • Bug fix: Table namespace in test examples from db to io
    • changed GNUmakefile so that linking with DatabaseBase? and DatabaseBaseXML? libraries is done automatically, and does not need to be specified in the job xml definition anymore
  • Digitizer (v1r0p4):
    • SensorHot? now in RecoBase? library, not in SensorResponse? library anymore
  • ELParamSimulation (v1r1p0):
    • Comment out siPM simulation for the moment
    • Default EL gain changed
    • Now specify input and output tables via xml file
  • EventDump (v1r1p1):
    • Dump also event timestamp
    • Remove warnings about unused variables
  • EventFilters (v1r2p1):
    • BlobFilter?, DriftTimeFilter?, PeakTypeCounterFilter?, RadiusFilter? added
    • EnergyROIFilter?: allow to cut also on Digit integrated charge, more histograms, images in data/img
    • TrackWireCounterFilter?: MCTrack class now in AnaBase? library, not in CreateMCTracks? library anymore
    • TrueVetoFilter?: remove warnings about unused variables
  • MakeVoxels (v1r1p1):
    • Make ionization folder in Reco() branch, if not already there
  • RawBase (v1r2p1):
    • GasADC?, GasEvent? classes added
  • RawDataReader (v1r2p1):
    • GasIFICEventHandle?, GasIFICReadModule? added
    • NEXT1ELEventHandle: matches raw data format from Echo firmware release, allow data decoding for SiPM? FECs as well, simplify data decoding from PMT FECs, make code less verbose, now fills DAQDigits rather than Digits, fix problem with more than one equipment per LDC, now correctly glue together separate frames from same FEC
    • NEXTLBNLEventHandle?: updated to reflect that PMTEvent really contains four waveforms from four different PMTs
    • NEXTLBNLReadModule?: minor changes
  • RecoBase (v1r2p1):
    • DAQDigit, PMT, Peak, SensorHit? classes added
    • Digit now defines type (0: PMT, 1:SiPM)
    • Voxel: minor changes
    • Globals.h include file added. Defines some DAQ-related quantities (no. channels, samples per channel, etc.)
    • VectorOperations?.h added, defining standard operations to be performed on std::vector containers containing recobase objects. Operation currently defined: Sum, Copy, Clone, Delete
  • Reset (v1r0p2):
    • SensorHit? now in RecoBase? library, not in SensorResponse? library anymore
  • SRT_NEXT (v1r1p1):
    • arch_spec_log4cplus.mk added
    • arch_spec_bhep.mk adapted for latest version of bhep-config script
    • install_nextoffline: remove non-critical check about BHEP library directory in library path, as this is dependent on BHEP version (after latest changes on bhep)
  • SensorResponse (v1r0p1):
    • SensorHit? and ROOT CINT dictionary generation removed from this library. SensorHit? now in RecoBase? library
  • SmearHits (v1r0p2):
    • MCTrack class now included from AnaBase?, not CreateMCTracks?, library
  • TrackID (v1r1p0):
    • Updated default value for maximum size of track of isolated-blob type
    • Size of voxels read via xml file
    • Add counters for understanding track multiplicity per event
  • Tutorial (v1r1p1):
    • Four examples on analysis of NEXT-1-IFIC real data added
    • xml files of existing MC examples renamed
    • NEXT-1-IFIC raw data file added
    • remove empty data/dst, data/evt, data/histo directories

R2010-12-17 (lithium)

New packages (SVN tag):
  • Reset (v1r0p1): The Reset package performs the following reconstruction tasks: 3D imaging of the energy deposition within the chamber, and reconstruction of the total energy deposited per event. Several reconstruction modes and input data types can be used, see Doxygen and xml documentation.

Modified packages (SVN tag):

  • BHEPReader (v1r1p1):
    • Bug fix: memory leak fixed (anabase::Run)
    • Bug fix: now make xml subdirectory, also
  • Bhep2Other (v1r0p1):
    • Improve Doxygen documentation
  • Digitizer (v1r0p2):
    • Bug fix: change xml version from "pmt" to "PMT"
  • MakeVoxels (v1r1p0):
    • Voxel size now controlled via parameter
  • PatternRec (v1r0p1):
    • Histograms added
    • Bug fix: reduce ultra-verbose output
  • RawBase (v1r1p0):
    • Add DATE's event.h
  • RawDataReader (v1r1p0):
    • Can now read also raw data produced by the DATE online system. Both "generic" DATE raw data files can be read (suffix ".genericdate") as well as NEXT1EL DATE raw data files (suffix ".next1el"). For the latter, only PMT raw data information is assumed and decoded (no trigger nor SiPM? info)
  • TrackID (v1r0p1):
    • Bug fix: reduce ultra-verbose output

R2010-09-24 (helium)

New packages (SVN tag):
  • Bhep2Other (v1r0p0): The Bhep2Other module is supposed to read outputs from the nexus MC simulation package. The simulation data is stored using the bhep package and its data containers. Bhep2Other reads the data from these containers an writes it to simple ASCII or binary files. These files can be used as current source input files for electronic simulators like spice, spectre or similar.
  • CalibrateHits (v1r0p0): CalibrateHits? is a FMWK module to perform a first, simple hit calibration. Depending on the module configuration version, either PMT or SiPMT? hits are calibrated. Raw Digit instances are read, pedestal is subtracted, zero suppression is performed, gain from the full electronics chain is applied, then charge is converted into electron units. Calibrated hts are stored as instances of the SensorHit? class.
  • Database (v1r0p0): Database is a FMWK module that allows to perform queries to the MySQL?-based NEXT offline database from within any other FMWK module. All you have to do is to add Database at the beginning of your job, or in any case before the module(s) where DB queries are performed. The MySQLConfigurationFile? parameter specifies the name for the MySQL? configuration file to be used.
  • Digitizer (v1r0p1): Digitizer is a FMWK module in charge of simulating the front-end electronics and digitization chain. It takes as input a collection of recobase::SensorHit instances, with calibrated hit info for all PMTs and SiPMs?, and produces a collection of recobase::Digit instances, that is hits having the same format as real hits from the DAQ. See xml file for details of what is being simulated.
  • ELParamSimulation (v1r0p0): ELParamSimulation? is a FMWK module to simulate production, propagation and detection of electroluminescent light in the chamber. This simulation is performed here, via look-up tables, to make it faster compared to a full simulation within NEXUS. The module reads ionization clusters reaching the EL plane, as stored in a bhep::event, as input. As output, a collection of LightHit? class instances is filled, one instance for each PMT or SiPM? present in the chamber.
  • MakeVoxels (v1r0p0): This module takes anabase::Event objects as an input and gives a collection of recobase::Voxel objects as an output. A voxelization of the detector volume is performed and voxels are created, each one characterized by a 3-dimensional position and a deposition energy.
  • PatternRec (v1r0p0): This module takes recobase::Track objects and return recobase::TrackWithAttributes. Attributes: maximum and next-to-maximum energy, number of blob candidates, maximum distance between blob candidates, l2, energy on the main track length of the track
  • RawBase (v1r0p0): Library with classes stored in raw data files. This library is used by the RawDataReader? package.
  • RawDataReader (v1r0p0): Event I/O handles to read from raw data streams. For now supports only input produced by the NEXT-LBNL prototype
  • SensorResponse (v1r0p0): SensorResponse? is a module to convert the signal of photons per PMT/ SiPM? into the response of the photo detector. Gain, gain dispersion and quantum efficiency are taken into account. Same quantum efficiency is assigned to all of the same kind of photodetector. Also the dark current is implemented here.
  • SmearVoxels (v1r0p0): This module takes a collection of recobase::Voxel objects and performs a smearing of the energy of them, according to a gaussian distribution. It returns again a collection of recobase::Voxel objects that are placed into the Cal()/ionization folder.
  • TrackID (v1r0p0): This modules takes as an input recobase::Voxel objects and gives as an output recobase::Track objects. For each event, it identifies how many different tracks there are and if they are wires or isolated blobs.
  • Tutorial (v1r0p1): package containing xml and data files to run the nextoffline tutorial

Modified packages (SVN tag):

  • AnaBase (v1r1p0):
    • Fixed AnaBase? library building in Mac
  • BHEPReader (v1r1p0):
    • Make event statistics an integer rather than a double bhep property
    • Remove dependency on BHEPWriter
    • Add forgotten xml/GNUmakefile. Copy package xml file into top-level xml directory
  • BHEPWriter (v1r1p0):
    • Remove dependency on BHEPReader, remove other unnecessary includes
    • Change how to check whether ROOT file is open
    • Copy package xml file into top-level xml directory
  • CreateMCTracks (v1r1p0):
    • Single paramater (wire width) now deciding whether to merge particles into single tracks, and defining whether track is of type wire or isolated blob (depending on size)
    • Primary gamma particles are now excluded from particles used to create MC tracks
    • Copy package xml file into top-level xml directory
  • EventDump (v1r1p0):
    • EventDump? now in io namespace
    • doxygen comments added
    • Copy package xml file into top-level xml directory
  • EventFilters (v1r1p0):
    • EnergyROIFilter? and TrackWireCounterFilter? can now select events based on Track information, in addition to MCTrack information
    • Copy package xml files into top-level xml directory
  • RecoBase (v1r1p0):
    • Digit now uses unsigned shorts rather than shorts
    • Added dictionary generation for pair
    • Voxel class added
    • Tracks can be built also as collection of Voxels, not only as collection of ChamberHits?
    • Add type data member to Track
  • SRT_NEXT (v1r0p2):
    • Simplify bhep and fmwk makefile segments, since not all UNIX shells recognize [[ syntax
    • Create custom srt_environment to get rid of "ambiguous redirect to empty string" when executing srt_environment
    • Copy package xml file into top-level xml directory, when creating new package with newpkg
  • SmearHits (v1r0p1):
    • Copy package xml file into top-level xml directory

R2010-03-17 (hydrogen)

New packages (SVN tag):
  • AnaBase (v1r0p0): library for analysis-level objects
  • BHEPreader (v1r0p0): module to read event data in BHEP format, either from the detector simulation or from a FMWK job
  • BHEPWriter (v1r0p0): module to write event data in BHEP format
  • CreateMCTracks (v1r0p1): module implementing a simple tracking algorithm, using MC truth information
  • DSTMaker (v1r0p0): module to create a bhep::event into the FMWK event summary branch. This module typically precedes BHEPWriter at the end of a reconstruction job
  • EventDump (v1r0p0): module dumping on screen FMWK event info
  • EventFilters (v1r0p0): package defining severeal modules to perform event selection
  • RecoBase (v1r0p0): library for reconstruction-level objects
  • SmearHits (v1r0p0): module to mimick a simplistic detector response, smearing MC true hits in position and energy to create "reco" hits 
  • SoftRelTools (F02-00-56): administrative package providing a general scheme for code management. Not NEXT code, just copy of the package in the official FNAL CVS SoftRelTools? repository
  • SRT_NEXT (v1r0p1): administrative package to customize SRT-based code management for NEXT offline
-- MichelSorel - 17 Dec 2010
Edit | WYSIWYG | Attach | PDF | Raw View | Backlinks: Web, All Webs | History: r17 < r16 < r15 < r14 < r13 | More topic actions
 
Powered by TWiki
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback