Releases: JeffersonLab/clas12-offline-software
COATJAVA 8.2.4
Requires Java 11 or later. Compatible with GEMC 4.4.2 and 5.0.
- Decoding
- add support for CCDB timestamp
- when EVIO is missing a HEAD bank, e.g. scaler events, trigger bits were being inherited from the previous event ... stop doing that
- remove outdated, commented-out code and old, unused/nonfunctional/test classes, and address IDE warnings
- Common-tools:
- add trigger-bit filtering functionality to the ReconstructionEngine class to allow processing of events with specific triggers
- EB
- fix
REC::UTrack
to really have unconstrained tracks, previously they were constrained
- fix
- Postprocessing
- add delay-corrected helicity to
HEL::scaler
and populateREC::Event.rawHelicity
- add delay-corrected helicity to
- General
- initialize logger at (many) more entry points
- Build
- update to maven-javadoc-plugin version 3.4.0, necessary for modern JDK versions
COATJAVA 8.2.2
Requires Java 11 or later. Compatible with GEMC 4.4.2 and 5.0.
- fix bug in EVIO->HIPO decoding that was dropping the last event in each EVIO file
- add REC::UTrack and CVT::UTracks banks to appropriate schemas
COATJAVA release 8.2.1
Requires Java 11 or later. Compatible with GEMC 4.4.2 and 5.0.
Release for Pass2 re-calibrations.
- DC
- Fixed bug in geometry introduced in 8.1.2, with left end-point of the wire being overwritten by midpoint
- Set polynomial time-to-distance function to be the default
- RTPC
- New 6-dimensional Kalman filter implementation and energy loss corrections based on clas-tracking Material class
- Other
- Updated DC alignment yaml file for no endplate bowing
- Add RASTER banks to schemas
COATJAVA release 8.2.0
Requires Java 11 or later. Compatible with GEMC 4.4.2 and 5.0.
Release for Pass2 re-calibrations.
- CTOF: implement new discrete position-dependent correction to time (aka HPOSBIN)
- DC:
- Implementation of pressure-dependent corrections to time-to-distance
- New time-walk correction based on DOCA
- Fix to time-to-distance interpolation
- Fix to iso-chrones twist due to magnetic field
- Apply jitter correction to TDC
- Remove deprecated yaml variable
- See related studies and validation here
- Other:
- Remove unnecessary settings in yaml files
- Switch to Jan. 2021 torus field map in yaml files for real data processing
COATJAVA release 8.1.2
Requires Java 11 or later. Compatible with GEMC 4.4.2 and 5.0.
- CND: updated to read first-pass CVT banks to fill track information in
CND::hits
- Raster: removed method to create
RASTER::adc
bank from generated particle vertex - Common-tools: added DataManager to read physics events from hipo event
COATJAVA release 8.1.1
Requires Java 11 or later. Compatible with GEMC 4.4.2 and 5.0.
- Raster:
- Fix bug in x/y component numbers in RasterEngine
- Restor raster correction in CVT, after accidental removal during previous merge
- Beam spot in DC and CVT now defined as the sum of the beam offset from CCDB and the reconstructed raster position
- FTT
- Fix bug in module indices used in
FT::Particle
- Bypass hit timing cuts for MC events.
- Fix bug in module indices used in
- Bank chema
- move
RAW::vtp
from mon to calib
COATJAVA release 8.1.0
Requires Java 11 or later. Compatible with GEMC 4.4.2 and 5.0.
- Add RG-C raster support
- Add RG-F AI networks
- Add FTT reconstruction
- Add helicity decoder board in
HEL::decoder
bank - Add new, preliminary VTX vertexing service
- CVT
- energy loss corrections based on EB pid and Bethe-Bloch
- add second pass tracking for energy loss in Kalman filter
- service refactoring, splitting, renaming to minimize refitting
- use new geometry material tables from CCDB
- singletonize constants management from CCDB across all CVT services
- store covariance matrix bank in cartesian coordinates
- preserve both beamline-constrained and unconstrainted tracks
- unit bugfix in beamline constraint
- fix hit time assignment for SVT
- finalize Lorentz angle corrections
- various trajectory improvements
- bugfixes
- add all surfaces, active and passive
- add dx (for dE/dx) to trajectory bank
- save Kalman Filter smoothed and filtered residuals
- Kalman filter smoothing
- tuning of covariance matrix initialization values
- yaml variables cleanup
- energy loss corrections based on EB pid and Bethe-Bloch
- DC
- default to polynomial for time-to-distance
- remove roads services, now moved to common-tool package
- RTPC
- z-alignment applied from CCDB
- update disentangler and helix fit
- RICH
- switch to new hardware translation table for two RICHes
- EB
- add
REC::UTrack
and AI counterparts - add
RECFT::Particle.px/py/pz
- use beamspot in calculating CVT track vertex from helix parameters
- move CI tests to GEMC 5.0
- add
- Common-tools
- new org.jlab.analysis.roads package with restructured tools for generation, validation and merging
- disable truth matching service in recon-util
- recon-util now updates schema on-the-fly, i.e.,
hipo-utils -update
is no longer necessary for GEMC 5.0's HIPO output - added option to skip events in recon-util
- magfield transformation caching optimization for tilted-sector coordinate system
- initialize logger at all entry points
- move to groot 4.0.3
- Miscellaneous
- various cleanup
- address many maven warnings, e.g. missing encodings and plugin versions
- build system cleanup: remove duplications and unnecessary dependencies
- try python if python3 doesn't exist in schema generator
- add MLTN dependencies to uber jar and remove MLTN sub-uber jar, to conform with all other packages
COATJAVA release 8.0.0
Compatible with GEMC 4.4.2
Requires Java 11 or later
Major version bump is due to backward incompatibility with HIPO histogram files generated prior to GROOT 4.0.0
- Reconstruction
- BAND
- Updated hit class, including x offset for short bars
- CVT
- New, fully restructured, CVT reconstruction based on dedicated tracking package containing a generic Kalman Filter
- Support for straight and helical tracks reconstruction
- Full support for alignment using the KF approach
- Functionality for tracking analysis and debugging, utilizing layer exclusion in seeding and tracking
- Geometry updates for alignment with geometry objects transformations
- New BMT geometry class, using constants read from CCDB, including new material table
- YAML variable
beamSpotConst
to control usage of beam spot information in seeding and KF (0: no constraint, 1: constraint in seeding only, 2: constraint in both seeding and KF) - New
CVTRec::Seeds
bank for track candidates
- DC
- Fixed track-overlap remover to account for cases in which track chi2 is the same
- EB
- Include (x,y) coordinates of helix reference point in calculating CVT track vertex from helical representation parameters
- BAND
- Common tools
- clas-jcsg
- Updated RICH geometry according to latest CAD drawings to address overlaps detected in GEMC
- clas-reco
- Evio2Hipo: added BAND
- clas-tracking
- New package supporting Kalman-Filter-based tracking for helical and straight tracks for a generic detector
- Includes Surface and Measurement classes to encode detector geometry and hit/cluster information
- Supports usage of different matrix libraries
- clas-jcsg
- Build
- Upgrade to groot-4.0
- Clean-up of pom files and build script and move to single parent pom.xml
- Fixed issue with JAXB implementation after Java 8
- Miscellaneous
- Propagating settings for Java logger to various packages and tools
COATJAVA release 7.1.0
Compatible with GEMC 4.4.2
Required Java 11 or later
- Reconstruction:
- DC:
- Full restructuring for integration of AI-assisted tracking:
- Standalone clustering service to be run before hit-based tracking.
- Conventional hit-based service, starting from clustering output.
- AI hit-based service, starting from AI predictions in
ai::tracks
. - Hit-based services now output new
HitBasedTrkg::..HitTrkId
bank with track-dependent information (track ID, TProp, TBeta, ...) - DCTBEngine rebuilds full hit information from
HitBasedTrkg::..Hits
andHitBasedTrkg::..HitTrkId
banks. Extended to DCTBAIEngine for AI tracking. - Mechanism to select engine output bank names between conventional and AI.
- Additional changes:
- Constants class turned into a singleton to ensure all DC engines use the same configuration. Geometry factories now members of Constants class. Cleanup of unused constants. New initialization method.
- T0 Table now read with ConstantsManager.
- Added cluster IDs to Track bank.
- New method for consistent assignment of track-dependent information to hits and subsequent updates.
- TB tracking now rejects hits with not track-related information after HB.
- New track overlap remover method now handles three-way overlaps.
- Removal of duplicated clusters created to address the LR ambiguity.
- Fix issues with cross and tracks duplication, removed unnecessary hit cloning.
- New yaml variable to support choice of output bank names, switch off 5SL tracking, select one sector., turn on/off realignment of time information to hit doublets (off by default). Cleaner printouts of selected configuration. Configuration via environment variables removed.
- Full restructuring for integration of AI-assisted tracking:
- EC: default reporting planes for ECinner and ECouter updated.
- EB:
- EBHBAI and EBTBAI engines to support parallel running of conventional and AI tracking.
- Removed CTOF-CND veto from neutral PID assignment.
- Cloning DetectorResponses to preserve track-related info in case of multiple associations.
- FMT:
- Use swimming to calculate DC track intersections instead of using values from DC trajectory bank: allows for iteration on FMT alignments without re-running the DC service.
- Added timing cut to select good hits, excluding t==0 to preserve MC hits.
- Merged FittedHit functionalities into Hit class.
- MLTN:
- New package providing the AI track inference information: includes classifier network to 6SL track identification and fixer network to predict missing layer for 5SL tracks.
- Reads output of DC clustering engine and provide track candidate predictions in
ai::tracks
bank. Bank includes list of clusters, particle charge, z vertex and probability. - Relies on Archive class to handle multiple networks.
- Supports network choice based on
run
andflavor
. - Yaml option to read neural network file from path for testing purposes.
- DC:
- Common-tools:
- EngineProcessor updated to include new DC clustering service in default configuration.
- New clas-logging package implementing java Logger, supporting different verbosity levels. Several classes in common-tools and reconstruction switched to Logger. Logging property files included as resources. Currently results in highest verbosity for reconstruction engines when run in Clara and for groovy scripts.
- Post-processing supports overall helicity flip also or direct reporting.
- Other:
- Updated DC and EB bankdefs json files to include AI banks.
- Updated yaml files with examples on how to run conventional and AI-assisted tracking.
- AI-assisted tracking neural net file with networks for RG-A Spring18, RG-A Fall18, RG-B Spring19
- Advanced KPP test now checked both conventional and AI tracking results.
- Switched all bin scripts to serial-GC.
COATJAVA release 7.0.1
Compatible with GEMC 4.4.1
Requires Java 11 or later
- Reconstruction
- DC:
- Road dictionary: the dictionary validation tool, dict-validate, updated to handle sector-dependent roads, extended command-line options, dictionary merger tool, dict-merger, fixed to account for road format changes.
- ECAL:
- new algorithm to handle single and double peak merging for partially overlapping clusters.
- EC reporting planes updated for more accurate time reconstruction in MC.
- EB:
- RUN::rf is rebuilt from raw TDC if RF::tdc bank is present, to avoid loss of precision in float-to-double conversion.
- Use now FTOF clusters instead of hits.
- FMT:
- First version of FMT reconstruction based on Kalman-Filter processing of DC tracks matched to FMT clusters.
- Handles FMT misalignment.
- FTOF:
- Updated clustering algorithm with energy defined as the sum of the hit energies and the time set to the seed time.
- All: use status tables to knock-out malfunctioning elements.
- DC:
- Common-tools:
- ConstantsManager now supports 4-indices tables.
- Helicity: accommodate for no states found.
- IO: DataProcessorPanel allows for setting default ET host and IP.
- ReconstructionEngine: added drop-banks option.
- Swimmer:
- swimToCylinder now supported in both old and new adaptive swimmers.
- support to solenoid and transverse fields.
- Other:
- Nightly Travis build added. (Already had one on CUE).
- Switched to more reliable freehep maven URL.
- Removed deletion of local maven repository from build script.
- Clean-up of stdout logging for all packages.