The ALIGNMENT Project

ALIGNMENT v18r0

The ALIGNMENT v18r0 Full Release Notes

2021-09-24 Alignment v18r0

This version uses Phys v33r1, Rec v33r1, Lbcom v33r2, LHCb v53r2, Gaudi v36r1 and LCG 100 with ROOT 6.24.00.

This version is released on master branch. Built relative to Alignment v17r1, with the following changes:

Fixes ~"bug fix" ~workaround

Code cleanups and changes to tests ~modernisation ~cleanup ~testing

2021-05-27 Alignment v17r1

This version uses Phys v32r1, Rec v32r1, Lbcom v32r1, LHCb v52r1, Gaudi v35r4 and LCG 100 with ROOT 6.24.00.

This version is released on master branch. Built relative to Alignment v17r0, with the following changes:

Fixes ~"bug fix" ~workaround

Enhancements ~enhancement

Code cleanups and changes to tests ~modernisation ~cleanup ~testing

Other

2021-03-12 Alignment v17r0

This version uses Phys v32r0, Rec v32r0, Lbcom v32r0, LHCb v52r0, Gaudi v35r2 and LCG 97a with ROOT 6.20.06.

This version is released on master branch. Built relative to Alignment v16r3, with the following changes:

Fixes ~"bug fix" ~workaround

Enhancements ~enhancement

Code cleanups and changes to tests ~modernisation ~cleanup ~testing

2020-10-22 Alignment v16r3

This version uses Phys v31r2, Rec v31r2, Lbcom v31r2, LHCb v51r2, Gaudi v34r1 and LCG 97a with ROOT 6.20.06.

This version is released on master branch. Built relative to Alignment v16r2, with the following changes:

Code cleanups and changes to tests ~modernisation ~cleanup ~testing

2020-08-03 Alignment v16r2

This version uses Phys v31r1, Rec v31r1, Lbcom v31r1, LHCb v51r1, Gaudi v33r2 and LCG 97a with ROOT 6.20.06.

This version is released on master branch. Built relative to Alignment v16r1, with the following changes:

New features ~"new feature"

Fixes ~"bug fix" ~workaround

Enhancements ~enhancement

Code cleanups and changes to tests ~modernisation ~cleanup ~testing

2020-02-28 Alignment v16r1

This version uses Phys v31r0, Rec v31r0, Lbcom v31r0, LHCb v51r0, Gaudi v33r0 and LCG 96b with ROOT 6.18.04.

This version is released on master branch. Built relative to Alignment v16r0, with the following changes:

New features ~"new feature"

Enhancements ~enhancement

Code cleanups and changes to tests ~modernisation ~cleanup ~testing

2019-11-12 Alignment v16r0

Short release description

Based on Gaudi v32r2, LHCb v50r6, Lbcom v30r6, Rec v30r6, Phys v30r6
This version is released on the master branch.

Line developments

New features

Enhancements

Bug fixes

Cleanup and testing

Other




=== old style release notes ===

Package: AlignmentSys
Package Coordinator: Maurizio Martinelli
Purpose: LHCb Alignment packages.
         This project contains 2 different alignment algorithms
         used by the Gaudi application Escher to align the LHCb detector
         components.

2017-06-30 AlignmentSys v11r4p1

Depends on: Phys v23r4. For 2017 data taking. Patch release to include commits on the satellite area - Cherry-picked a series of commits from the satellite area. See [mr41](https://gitlab.cern.ch/lhcb/Alignment/merge_requests/41)

2017-06-26 AlignmentSys v11r4

Depends on: Phys v23r4. For 2017 commissioning.
Patch release on the same Gaudi stack as online.
  - Added WriteRichAlignmentsTool and WriteRichHPDQEsTool to Alignment/AlignTrTools. See [mr39](https://gitlab.cern.ch/lhcb/Alignment/merge_requests/39)


2017-04-05 AlignmentSys v11r3

Depends on: Phys v23r2. For 2017 commissioning.
Patch release on the same Gaudi stack as online.
 - Changed name of findFibreMat method. See [mr34](https://gitlab.cern.ch/lhcb/Alignment/merge_requests/34)
 - Fixed reconstruction to run on RICH and RICHFUTURE. See [mr38](https://gitlab.cern.ch/lhcb/Alignment/merge_requests/38)


2017-03-13 AlignmentSys v11r2

Depends on: Phys v23r1. For 2017 commissioning.
Patch release on the same Gaudi stack as online.
 - Fixed many compilation warnings on gcc62. See [mr33](https://gitlab.cern.ch/lhcb/Alignment/merge_requests/33).
 - Added a new package (See [m32](https://gitlab.cern.ch/lhcb/Alignment/merge_requests/32) and [m35](https://gitlab.cern.ch/lhcb/Alignment/merge_requests/35))
  . Calibration/Pi0Calibration v1r0


2017-02-20 AlignmentSys v11r1p1

Depends on: Phys v23r1. For 2017 commissioning.
Patch release on the same Gaudi stack as online.
 - Fixed many compilation warnings on gcc49. See [mr27](https://gitlab.cern.ch/lhcb/Alignment/merge_requests/27), [mr28](https://gitlab.cern.ch/lhcb/Alignment/merge_requests/28).
 - Fixed some compilation error and warnings on gcc62. See [mr5](https://gitlab.cern.ch/lhcb/Alignment/merge_requests/25)
 - Updated the following package tags
  . Alignment/AlignEvent v1r3
  . Alignment/AlignmentMonitoring v1r3
  . Alignment/AlignKernel v3r10
  . Alignment/AlignSolvTools v3r7
  . Alignment/AlignTrTools v4r20
  . Alignment/MisAligner v2r4
  . Alignment/TAlignment v6r9
  . Alignment/TVerticalAlignment v1r1
  . Alignemnt/VeloAlignment v4r15
  . Calibration/OTCalibration v1r13

2017-01-31 AlignmentSys v11r1

Depends on: Phys v23r0. For 2017 commissioning.
First git release of the project.

! 2017-01-31 - Maurizio Martinelli
 - Updated the following dependencies according to new package tags
  . Alignment/AlignmentMonitoring v1r2
  . Alignment/AlignTrTools v4r19
  . Alignment/Escher v5r8
  . Alignment/TAlignment v6r8

 - Added a new package
  . Alignment/TVerticalAlignment v1r0

2016-04-12 AlignmentSys v11r0

Depends on: Phys v21r2. For 2016 commissioning.

! 2016-04-11 - Maurizio Martinelli
  - Updated project dependencies with tagged packages

2016-03-01 AlignmentSys v10r6

Depends on: Phys v21r0. For 2016 commissioning.

! 2016-03-01 - Maurizio Martinelli
 - Updated qmtest
 - Updated project dependencies with tagged packages

! 2016-02-26 - Maurizio Martinelli
 - Updated project dependencies with tagged packages
 - Temporarly added Tr/TrackTools v6r1 to the requirements

! 2015-08-25 - Maurizio Martinelli
 - Added Alignment/AlignmentMonitoring to the requirements

2015-07-29 AlignmentSys v10r5

Depends on: Phys v20r0. For 2015 25ns data.

! 2015-07-29 - Maurizio Martinelli
 - Updated the following dependencies according to new package tags
  . Alignment/AlignmentDBVisualisationTool v1r5
  . Alignment/AlignKernel v3r8
  . Alignment/AlignTrTools v4r17
  . Alignment/TAlignment v6r5
  . Alignment/VeloAlignment v4r13
  . Alignment/Escher v5r6
  . Alignment/OTCalibration v1r11

2015-05-31 AlignmentSys v10r4

Depends on: Phys v19r7. For 2015 data.

! 2015-05-31 - Maurizio Martinelli
 - Removed temporary dependences on
     Tr/TrackUtils
     Det/OTDet
     Kernel/LHCbMath

2015-04-01 AlignmentSys v10r3

Depends on: Phys v19r5. For 2015 data.

! 2015-04-02 - Maurizio Martinelli
 - Added temporary dependences on TrackUtils
 - Untagged and re-tagged package

! 2015-04-01 - Maurizio Martinelli
 - Added temporary dependences on OTDet and LHCbMath

! 2015-03-25 - Maurizio Martinelli
 - Updated qmtest reference

2015-01-23 AlignmentSys v10r2

Depends on: Phys v19r4. For 2015 data.

Added OT MonoLayer Alignment
Make Hlt{1,2}DecReports decoding compatible with 2015 format.

! 2014-01-09 - Maurizio Martinelli
 - Removed requirement on Tr/TrackUtils

! 2014-12-17 - Maurizio Martinelli
 - Updated QMtest reference

2014-11-10 AlignmentSys v10r1

Depends on: Phys v19r2p1. For 2015 data.

2014-08-23 AlignmentSys v10r0

Depends on: Phys v19r0. For 2015 data.

! 2014-08-21 - Maurizio Martinelli
 - Updated QMtest reference (again)

! 2014-08-21 - Maurizio Martinelli
 - Updated QMtest reference

! 2014-04-15 - Rob Lambert
 - Update/restore new configurables test, see task #50698

2013-01-14 AlignmentSys v9r1

Depends on: Rec v15r4, Phys v17r4. For 2012 data.

Miscellaneous changes to keep up with the latest stack, the last stack which will be released on slc5 gcc46, underlying stack has changed significantly lot since the previous release, but not in a way which directly affects the alignment procedures themselves.

This is the first version to pick up Lbcom through the stack, rather than directly.
This version also adds the functionality of the DecoderDB, see task #19106

New package:
 . MassMonitor, Package for making fits to 2D histograms (mass vs. VARIABLE)

Added temporarily:
 . Tr/TrackUtils v1r54, to fix alignment segfaults from upgrade detectors accidentally added into the sequence.

For more details see:
https://lhcb-tag-collector.web.cern.ch/lhcb-tag-collector/display.html?project=Alignment&version=v9r2

2013-01-14 AlignmentSys v9r1

Depends on: Lbcom v13r3, Rec v14r3, Phys v16r3. For 2012 data.

Latest changes to pick up the most recent Rec release.
First project dependency on pyanalysis.
New package, Alignment/AlignmentDBVisualisationTool, for visualizing the alignment database.


For other minor changes, see the tag collector:
https://lhcb-tag-collector.web.cern.ch/lhcb-tag-collector/display.html?project=Alignment&version=v9r1

2011-12-01 AlignmentSys v9r0

Depends on: Lbcom v12r2, Rec v13r2, Phys v14r2. For 2012 data.

Required stack for 2012 data.

- Added dependency on CommonParticles, v8r7.
- Inherits from the stack able to read packed containers of particles and vertices
  correctly, see savannah bugs https://savannah.cern.ch/bugs/?92524

- WARNING!
- Existing known bug in python long class : https://savannah.cern.ch/bugs/?92396
(
needs the latest ROOT version, or work around with:
import PyCintex
PyCintex.gbl.std.vector("long")
At the start of the options file.
)

For other minor changes, see the tag collector:
https://lhcb-tag-collector.web.cern.ch/lhcb-tag-collector/display.html?project=Alignment&version=v9r0

2011-12-01 AlignmentSys v8r0

Depends on: Lbcom v11r1, Rec v12r1, Phys v13r1. For 2011 data.

First version of Alignment to be based on the Phys project
First released version with ROOT persistency as the default.

Otherwise only minor changes.

For more details and links to changesets see:
https://lhcb-tag-collector.web.cern.ch/lhcb-tag-collector/display.html?project=Alignment&version=v8r0

2011-03-15 AlignmentSys v6r0

Based on Rec v11r5, on the LHCb v32r4 stack for 2011 data

This is the first release of Alignment compatible with ROOT data format.

Only minor changes apart from the change of supported persistencies.

For more details and links to changesets see:
https://lhcb-tag-collector.web.cern.ch/lhcb-tag-collector/display.html?project=Alignment&version=v6r1


2011-03-15 AlignmentSys v6r0

Based on Rec v11r2p1, on the LHCb v32r1p1 stack for 2011 data

This is the first release of Alignment compatible with 2011 data.

The Alignment packages have only been slightly modified, but
the major version has been increased due to the major change of Rec

Modified packages:
  . Alignment/Escher v4r10, pick up GaudiMP differently
  . Alignment/TAlignment v5r4
    - Update of DToKPiTwoProng,
    - adapt to changes in trackfit
    - removed isfinite


For more details and liks to changesets see:
https://lhcb-tag-collector.web.cern.ch/lhcb-tag-collector/display.html?project=Alignment&version=v6r0

2010-10-19 AlignmentSys v5r2

Based on Rec v10r5

- updated packages:
  Alignment/AlignKernel v3r4, Alignment/Escher v4r9, Alignment/TAlignment v5r2
  Alignment/VeloAlignment v4r10, Alignment/AlignTrTools v4r9

- In Alignment/AlignKernel v3r4:
  . add runrange to AlEquations

- In Alignment/Escher v4r9:
  . Added basic QMTests
  . Add a script to run VELO AlignSensors
  . added 2010-Collisions-Muon.py as an example script to run Muon Global
    alignment of HalfStations respect the tracking
  . make sure we can also read dsts by using DstConf

- In Alignment/TAlignment v5r2:
  . Modify the vertex residual tool to deal with any one level resonance
  . Add  DToKPiTwoProng.h/cpp [makes two prongs from D candidates ]
  . fix the way tracks from (psi) vertices are identified in input list
  . make SurveyConstraints a LHCbConfigurableUser
  . added some code to run the Muon Alignment:
   src/MakeMuonTracks.cpp(h) make a Muon stand alone track
   src/TrackMuonMatching.cpp(h) make a matching Long+Muon track
   src/TrackFilterAlg updated with new functionalities
  . python/TAlignment/Alignables.py
  . python/TAlignment/Configuration.py to write HalfStation correction in the xml
  . python/TAlignment/SurveyConstraints.py updated with survey constraints for Muon Half stations


- In Alignment/VeloAlignment v4r10:
  . Minor changes to AlignSensor,
    add scripts to compare and combine velo xml files

- In Alignment/AlignTrTools v4r9:
  . Add missing include to TAConfig
  . More Lagrangian constraints for TAConfig class
  . improved coding of lagrangian multipliers in TAConfig class

2010-06-07 AlignmentSys v5r1

Based on Rec v10r0p1


- updated packages:
  Alignment/AlignTrTools  v4r8
  Alignment/TAlignment  v5r1
  Alignment/Escher v4r8
  Alignment/MisAligner v1r4

- In Alignment/AlignTrTools  v4r8:
  . added explicit dependency between python compilations

- In Alignment/Escher  v4r8:
  . bugfix in DBDiff.py and dump_align_db.py

- In  Alignment/TAlignment  v5r1:
  . Adapt to movement of RecSysConf to RecConf package

- In Alignment/MisAligner v1r4:
  . removed the commented lines from the requirements file (no GaudiMain required)

2010-05-07 AlignmentSys v5r0p1


- Dummy release to correct problems during release of v5r0

2010-05-04 AlignmentSys v5r0


- updated packages:
  Alignment/AlignKernel v3r3
	Alignment/AlignSolvTools  v3r2
	Alignment/AlignTrTools  v4r7
	Alignment/AlignmentInterfaces  v3r2
  Alignment/Escher  v4r7
  Alignment/MisAligner v1r3
	Alignment/TAlignment  v5r0
  Alignment/VeloAlignment  v4r9

- In Alignment/AlignKernel v3r3:
  . made AlEquations less verbose when adding up

- In Alignment/AlignSolvTools  v3r2:
  . improved verbosity

- In Alignment/AlignTrTools  v4r7:
  . Changes to ATrackSelector class:
    1) generate uniform track distribution in OT
    2) correlation between hits in T1 and T3 on a track
    3) cut on y position in OT
  . fixed compilor warning

- In Alignment/AlignmentInterfaces  v3r2:
  . Changes to IATrackSelector interface

- In Alignment/MisAligner  v1r3:
  . remove dependencies on Sys packages which crept in
    - causing configuration errors

- In Alignment/TAlignment  v5r0:
  . Minor changes to GAlign
  . make alignmentelement aware of velo motion-system-transform; make sure Update fails if it cannot handle configured mother-daughter relations
  . small modiciation in AlParameters to work around problem with optimization in gcc4.3
  . another revision of survey constraints. redefinition of alignment-frame

- In Alignment/Escher  v4r7 :
  . added NEEDS_PYCOOL to requirements

- In Alignment/VeloAlignment  v4r9:
  . Some updates in the pnt errors


2010-02-05 AlignmentSys v4r7

- removed packages:
  Alignment/AlignT2Velo

- updated packages:
  Alignment/AlignTrTools		v4r6p1
  Alignment/AlignSolvTools  v3r1
	Alignment/Escher					v4r6
  Alignment/TAlignment			v4r8
  Calibration/OTCalibration v1r5


- In Alignment/AlignTrTools	v4r6p1:
  . Fix in TAConfig.py to import TAConfig from the right place

- In Alignment/AlignSolvTools  v3r1:
  . fixed v3r0 after migration of files to another package
  . added cut on eigenmode chisquare in DiagSolvTool

- In Alignment/Escher	v4r6:
  . added the line "use processing v* LCG_Interfaces" to the requirements file
   for multi-core processing

- In Alignment/TAlignment	v4r8:
	. fix killer bug in AlignChisqConstraintTool
  . fix and/or precedence warning in GetElementsToBeAligned.h
  . Fix ambiguous else warning in AlignChisqConstraintTool.cpp
  . dump most important alignment dofs from AlignUpdateTool
  . fix problem with survey constraints
  . configurables: added configurable for T, add 'None' as a valid dof

- In Calibration/OTCalibration v1r5:
  . Fix for sqrt(int) in windows nightlies

2010-02-05 AlignmentSys v4r6

- updated packages:
	Calibration/OTCalibration               v1r4
	Alignment/AlignEvent			v1r1
	Alignment/AlignKernel			v3r2
	Alignment/AlignTrTools			v4r5
	Alignment/AlignmentInterfaces		v3r1
	Alignment/AlignmentTools		v3r1
	Alignment/TAlignment			v4r6
	Alignment/Escher			v4r5

- Addendum & Erratum: The following packages have had their tag increased in order
  to include a few updates to source code, see the respective doc/release.notes for more information:
        Alignment/AlignTrTools                  v4r6
        Alignment/AlignmentInterfaces           v3r2
        Alignment/TAlignment                    v4r7


2009-11-26 AlignmentSys v4r5


- Updated packages:
	Calibration/OTCalibration		v1r3


2009-11-23 AlignmentSys v4r4


- Updated packages:
	Calibration/OTCAlibration		v1r2
	Alignment/TAlignment			v4r5
	Alignment/Escher			v4r4



2009-11-02 AlignmentSys v4r3


- Updated packages:
	Alignment/AlignKernel			v3r1
	Alignment/Alignment/AlignTrTools 	v4r4
	Alignment/TAlignment			v4r4
	Alignment/VeloAlignment			v4r8
	Alignment/MisAligner			v1r2
	Calibration/OTCalibration 		v1r1



2009-07-27 AlignmentSys v4r2

** There was a problem introduced by J. Blouw. I did not realize that
   in fact AlignSolvKernel was replaced with AligKernel. So, I had removed
   AlignSolvTools... which was wrong. I have put it back, and retagged the
   AlignmentSys package with the same tag.


- General comments: new packages & updates

- Updated  Packages:
		AlignTrTools	v4r3 (adapted to migration to TrackKernel)
		Escher		v4r3
		TAlignment	v4r3
		VeloAlignment	v4r7
 		AlignmentInterfaces	v3r0

- New Packages:
		AlignEvent	v1r0
		AlignKernel	v3r0 (Renaming AligSolvTools to AlignKernel)

- Removed Packages:
		AlignSolvTools (renamed to AlignKernel)


! 27/07/2009 Johan Blouw/Wouter Hulsbergen
  - added Alignment/AlignEvent to the software project
    It's a package for the alignment event model class(es).

! 21/04/2009 Johan Blouw/Wouter Hulsbergen
  - added Calibration/OTCalibration to the software project

2009-04-03 AlignmentSys v4r1

- General comments: small updates to configurables and  bug fixes.

- Packages updated:
		AlignmentSys	v4r1
		Escher		v4r2
		AlignTrTools	v4r1
		TAlignment	v4r1
		MisAligner	v1r1


2009-02-21 AlignmentSys v4r0

- General comments/remarks
	. introduced configurables for the following packages
		- Escher
		- TAlignment
		- AlignTrTools
	. some of the already existing python scripts have been moved around a bit
	  (e.g. from TAlignment/python to TAlignment/python/TAlignment, or TAlignment/options)
	. in cae of TAlignment, the linker library has been removed
	. The escher configurable is more or less a cc of the Brunel one,
	  with adaptations, changes etc where deemed necessary.
	. Note: for this release, only the Kalman sequence & the Millepede sequence for OT layers
          has been configured & tested. Rest will follow soon...
 	. I noticed a small problem in the Millepede sequence, which will be resolved later as well.
	  - here, the piece of code which is used to convert the alignment constants determined by Millepede
	    into constants in the LHCb coordinate system seems to have a bug... certain conditions are not found.
	. a new package has been introduced, called "MisAligner". It produces an executable which can be used to
	  easily generate misaligned xml files (which then have to be manually uploaded into your favourite conditions
	  databasse.

- Packages updated:
		AlignmentSys		v4r0
		Escher			v3r0
		TAlignment		v4r0
		AlignTrTools		v4r0
		MisAligner		v1r0
		AlignmentTools		v3r0
		SolvKernel		v1r4

2008-06-17 AlignmentSys v3r1

- Packages update:
		AlignmentInterfaces	v2r8
		AlignmentTools		v2r11
		AlignTrTools		v3r7
		TAlignment		v3r7


2008-06-17 AlignmentSys v3r1


- Packages updated:
		AlignmentInterfaces	v2r7
			AlignTrTools	v3r6
			TAlignment	v3r6
			AlignSolvTools	v2r5
                        Escher		v2r4

- in AlignmentInterfaces:
	-  update of ITAconfigtool to make it consistent with its implementation...

- in AlignTrTools:
	- Fix to AlignTrackMonitor to reflect changes in clone finder tool interface
	- WriteAlignmentConditions: Added choice to select layers to be printed as
	  needed by VELO. Default behaviour unchanged.
	- AlignSelTool: added cuts on track eta and on number of IT and Velo clusters in event
	- AlignTrackMonitor and AlignSaveTuple: cleaned up a bit and added:
	  track eta, # IT clusters and # Velo clusters

- in TAlignment:
	- added safety checks in AlParameters and AlignAlgorithm to avoid FPEs
	- added TrackRemoveDoubleHits in Pat Rec sequence (AlConfigurable.py).
	- added fit sequence in case pat rec is not run (ITOTTracking.py).
	- added AlignITBoxes.py script to align IT boxes (and gives an example
	  of how to set misalignments in xml or sqlite).
	- removed cut on chi2 in TrackFilterAlg as it is better to cut after the
	  fit (using TrackContainerCleaner along with AlignSelTool, for example).
	- some clean-up in Escher_nikhef.opts
	- added alignable objects in Alignables.py
	- added possibility to give a list of sub-detectors for which to write out
	  the conditions in AlConfigurable.py + some clean-up

- in AlignSolvTools:
	- Some undocumented updates have been performed such that the code
	  compiles & links under windows.

- in Escher:
	- Repaired Escher.opts, v200601.opts, and requirements for use of VeloAlignment
	- Adapted VeloAlignment.opts to new WriteAlignmentConditions functionality


2007-11-09 AlignmentSys v3r0


- Packages updated: AlignmentInterfaces	v2r6
		    AlignmentTools	v2r10
		    AlignTrTools	v3r5
 		    SolvKernel		v1r3
		    AlignSolvTools	v2r4
		    TAlignment		v3r5
		    VeloAlignment	v4r3p1
		    Escher		v2r3

- in AlignmentInterfaces	v2r6
	- Modified interfaces to Centipede, TAConfig and Derivatives classes

- in AlignmentTools	v2r10
	- Modified Centipede class. Now, methods only accept vectors instead of arrays.

- in AlignTrTools	v3r5
	- big improvement in model describing geometry of alignable object;
	- update of iterative Newton-Rhapson method.
	- transform M'pede's alignment constants into LHCb local reference coordinate system

- in SolvKernel 	v1r3
	- Added MA27 and AlSparseSymMatrix
	- added operator(row,col) for all matrices
	- bug fix in resize methods: didn't work if current size was 0

- in AlignSolvTools	v2r4
	- Add PersistSolv class to combine/read/write align algebra objects
	- Remove a couple of warnings
	- Add AlignSolvTools directory for include
	- update requirements accordingly
	- make sure gslSVDsolver returns the cov matrix as well
	- fix cov matrix returned by DiagSolvTool
	- make DiagSolvTool issue a warning for negative eigenvalues

- in TAlignment		v3r5

	- restructered main execution loop of GAlign to reflect better implementation of Newton-Rhapson method.

	- Added a jab configurable AlConfigurable.py, see for example OT scripts to use it
	- Added some OT alignment scripts
	- Modified the elements to be aligned property of GetElementsToBeAligned. It's now a list of strings.
	   Usage:
	     .Elements = { "Group : regex representing path to det elems : dof",
	                   "Group : regex representing path to det elems : dof" }
	   Where "Group :" and " : dof" are optional

	- added chi2 cut for outliers
	- added job option to specify input alignderivative files
	- Added vertex constraints

	- Moved AlFileIO.h and AlEquations.h to TAlignment/ for include (put the appropriate ifndef stuff, etc...
	- Added PersistSolv as a friend class in AlEquations.h
	- Change after discussion: move  AlFileIO.h and AlEquations.{cpp,h} to AlignSolvTools

	- added option to use local frame as alignment frame

	- added possibility to align muon stations to GAlign class

	- More monitoring and output
	- Added more monitoring

	- Plot total chi2 vs iteration
	- changes to reflect changes in DetDesc (replace XYZTranslation with Translation3D)

	- Added constraints for z-shearings (including z-scale)

	- New classes AlParameters and AlDofMask
	- Print parameter values when updating
	- Add constraints for global translation and rotation
	- Add threshold on minimum number of hits

	- Plot chi2 variables vs iteration

	- Add more printouts in update
	- Add option to update in finalize

	- Can choose which global dofs to align for

	- Added muon stations
	- Bug fix: apply correlations correctly
	- Use nodes in cavariance tools

	- Modified TrackFilterAlg to only keep hits that are in a to-be-aligned detelem

- in VeloAlignment	v4r3p1

	- TrackStore.cpp: adapt to new version of VeloDet:
       	             replace phiOfStrip(...) by idealPhi(...)

- in Escher	v2r3
	- took IT constraints for M'pede style alignment out of
	    TAlignment.opts into IT.opts

	- VeloAlignment.opts: removed duplicate PatVelo... options
       	                 they are in VeloAlignment/TRGtune.opts

	- VeloAlignment.opts: added use of WriteAlignmentConditions
	                        added use of PatVeloGeneric

	- added VELO sensor alignment functionality
	- to run it change include statement in Escher.opts and
	  run via python script in job directory


2007-11-09 AlignmentSys v2r3

- Packages updated: TAlignment		v2r4
		    AlignTrTools	v3r4
 		    AlignmentInterfaces v2r4
		    AlignSolvTools	v2r2

- in TAlignment		v3r4
	- Track projectors have changed (Needs: Rec v5r2)
	- Added the ability to align ensembles
	- Fixed a few option names changes in OTAlignment.opts and Escher_nikhef.opts
	- Fixed a requirement to Det/STDet
	- Added Velo boxes and modules
	- Framework++: More generic framework for the alignment of IT/OT
- Removed:
	 GetElementsToAlign.(h,cpp)
	 AlignOTDetector.(h,cpp)
	 AlignITDetector.(h,cpp)
	 AlignmentFunctions.h
- Added:
	 IGetElementsToBeAligned.h
	 GetElementsToBeAligned.(h,cpp)
	 FindAlignmentElement.cpp
- Modified AlignAlgorithm to use new classes and tools

- in AlignTrTools		v3r4
	- fixed Initialize/Finalize misbalance for ATrackSelector
	- fixed a bug in getCloseHits method in Align{SelTool,SaveTuple,TrackMonitor}.cpp

- in AlignmentInterfaces	v2r4
	- Fix dictionaries
	- Add stl vector include to IDerivatives
	- Remove obsolete interface IAlignDetector
	- Clean-up interface IAlgnSolvTool

- in AlignSolvTools		v2r2
	- fix requirements for GSL linking
	- Remove obsolete tool AlignSolvTool
	- fix unsigned/signed integer comparison warnings
	- fix requirements





2007-11-09 AlignmentSys v2r2

- Packages updated: AlignTrTools	v3r3
                    TAlignment          v3r3

- in AlignTrTools	v3r3
	- modifications performed by L. Nicolas on AlignSelTool, AlignTrackMonitor
   	  and AlignSaveTuple: changed the way nSharedHits is calculated to speed up things
 	- idem, but changed the way nNeighbouringHits is calculated to speed up things
	- added code to AlignSaveTuple: saving various variables in an NTuple for further debugging analysis
	- changes to AlignTrackMonitor: save residuals in a nicer way (+ use unbiasedResiduals)

- in TAlignment		v3r3
 	- modifications by Louis Nicolas to
		- GetElementsToAlign: added part for TT ladders
		- GetElementsToAlign: added TT specific part to get TT stations, layers and half-modules
	- bug fixes in AlignAlgorithm by LN
	- GetElementsToAlign.cpp deals with OT modules and IT ladders
	- bug fix in GetElementsToAlign
	- modifications by Gerhard Raven:
		- add treatment of hit-hit correlations to AlignAlgorithm using Wouter's ResidualCovarianceTool
		- add ResidualCovarianceTool
	- Louis Nicolas: Added AlignITDetector: IT specific part in old framework
		       : GetElementsToAlign: added IT specific part to get IT stations, layers and boxes
	   	       : TrackFilterAlg: changed interface to AlignSelTool track selector (now using TrackInterfaces/TrackSelector)

2007-09-18 AlignmentSys v2r1

- Packages added: AlignT2Velo
- Packages update: AlignmentInterfaces 	v2r2
 		   AlignmentTools      	v2r8
		   AlignTrTools		v3r2
		   SolvKernel		v1r1
		   AlignSolvTools	v2r1
		   TAlignment		v3r2
		   AlignT2Velo		v1r1
		   Escher		v2r2

- in AlignmentInterfaces  v2r2
	- added Centipede interface which inherits from Millepede,
          to accomodate different use of it by IT/OT from Velo.
        - added ITAConfig interface, which is used to configure the
	  alignment problem for the IT/OT closed form alignment
	- added methods in IAlignDetectorSelector for Lagrangian constraints
- in AlignmentTools v2r8
       	- added implementation of Centipede class, see AlignmentInterfaces for a descrpition.
	- reconstituted original call to InitMillepede in Millepede class

- in AlignTrTools v3r2
	- added implementation of TAConfig class. This class allows for a better split
	  between the tool (TAConfig) and the algorithm (GAlign)
	- updated Derivatives class

- in SolvKernel v1r1
	- nothing

- in AlignSolvTools v2r1
	- added ntuple with eigenvector information for monitoring
        - tools split into subtools with common interface
	- tools can be configured by user
- in TAlignment v3r2
	- 2007-08-30 - Johan Blouw
	 - re-organizing GAlign class by moving tool-related code to TAConfig class.
	 - added a linker library so that methods from GAlign can be called from
	   python
	 - added dictionaries for the above purpose
	 - added modifications to the requirements file accordingly
	 NOTE: this is not intended as a "best solution"; in a next release I'd
	 prefer to remove the linker library and the dictionaries.
	- 2007-08-16 - Gerhard Raven
	 - make sure the same pivot points are used consistently  in AlignAlgorithm
	 - add some more monitoring
	-  2007-08-16 - Jan Amoraal
	 - Add the option to strip hits from a track before re-fitting it.
	 - Move common code from AlignOTDetector to AlignmentFunctions
	 - Add support for (linear) Lagrange multipliers
	 - If no pivot points defined, use the 'local' (0,0,0) in global coordinates as default
	- 2007-07-20 - Jan Amoraal
	 - Added a small treack filter algorithm which filters tracks by type
	 - Update and corretly apply DetElem alignment deltas using Juan's geometry free functions
	 - Added a small alignment python script
	 - Made AlignOTDetector more generic by using templates
	 - Minor speed improvements and cleaning up
	 - Removed src/IAlignDetectorSelector.h since it has been moved to AlignmentInterfaces
	- 2007-05-15 Johan Blouw
	  - removed *_load.cpp as it is not needed anymore

- in AlignT2Velo v1r1
	- removed unnecessary dependencies

- in Escher v2r2
	- redefined the calling sequence to reflect changes made by J. Amoraal



2007-05-23 AlignmentSys v2r0

- Packages added: AlignmentTools v2r6
                  AlignT2Velo    v1r0
                  SolvKernel     v1r1

- Packages updated: AlignmentInterfaces v2r1
                    AlignSolvTools      v2r0
                    AlignTrTools        v3r1
                    TAlignment          v3r1
                    Escher              v2r1

- AlignT2Velo is not included in this release due to problem with dependencies

- in  AlignmentInterfaces v2r1
   - added interface to Millepede (from AlignmentTools)
     added interface to AlignSolvTools
     added dict subdirectory which contains description of
     interface classes ( *Dict.h and *Dict.xml)
   - modified requirementsfile to reflect above mentioned changes

- in AlignSolvTools v2r0
   - migrate matrix and vector classe and minres to SolvKernel
   - added iostream operators
   - make includes global

- in AlignTrTools v3r1
   - removed explicit version dependencies from requirements file
   - added tool and classes for Millepede style alignment:
       - class Derivatives (describes local and global derivatives for M'pede)
       - class TAConfig (configures alignment problem for M'pede)

- in TAlignment v3r1
  - updates of requirements file
  - moved interface header file to AlignmentInterfaces
  - AlignAlgorithm: Update alignment constants (in memory)
  - AlignAlgorithm: Solve system of linear eq. Ha=x using AlignSolvTools

- in Escher v2r1
  - update requirements file to reflect use of sqlite dbase

- 09/05/2007 Johan Blouw
  - small change to requirements file, to include AlignmentTools v2r5

- April 25th, 2007 Johan Blouw
  - Update of the Alignment packages
  - reorganizing tools/interfaces/algorithms:
    - AlignmentInterfaces v2r0
    - AlignTrTools        v3r0
    - TAlignment          v3r0
    - Escher              v2r0

2006-10-04 AlignmentSys v1r1


- October 4th, 2006 Johan Blouw
- This version is an update reflecting a change in name of
  the SelectorTools package to AlignTrTools.
  And the fact that there is now code in AlignTrTools v1r1

- this version uses :
		       AlignmentInterfaces v1r0
	 	       AlignTrTools        v2r1
		       TAlignment	   v1r1