|
|
This page last edited by GC on January 14, 2003 . |
For more detailed explanations on CMT projects and their use in the LHCb software refer to "A project under CMT" .
The main thing to remember is to always set the environment of the project before working with it by typing DaVinciEnv followed by the version. For example type:
> DaVinciEnv v7r2
This will append to your initial CMTPATH (by default $HOME/newmycmt):
CMT will search for the necessary packages in the areas specified in $CMTPATH in the listed order (and as shown above). If a package will not be found, CMT will then look into the areas specified in .cmtrc. It is recommended to have the area where your private code reside in the initial $CMTPATH (by default this is set and assumed to be $HOME/newmycmt).
Any CMT warning MUST be removed. Any CMT warning of this type could lead to inconsistent results. It could mean you have a private version of a package compiled against old versions or using a package missing from the $CMTPATH set by DaVinciEnv. For DaVinci v7r2 no code should be taken from the "old" $LHCBSOFT area.
You can verify where each packages is taken from with the cmt command:
> cmt show uses
To get a DaVinci version under projects:
The only additional thing you need to do is to set the environment for the DaVinci version you want to use:
lxplus> DaVinciEnv v7r2
get the DaVinci application (and eventual library) as usual:
lxplus> cd newmycmt
lxplus> getpack Phys/DaVinci v7r2
To build a DaVinci version under projects:
Remember to set the environment for the DaVinci version you want to use (unless already done):
lxplus> DaVinciEnv v7r2
lxplus> cd Phys/DaVinci/v7r2/cmt
lxplus> cmt show uses
Gaudi packages should be located in $Gaudi_release_area/GAUDI_v11r4
LHCb packages should be located in $LHCb_release_area/LHCb_v11r5
DaVinci packages should be located in $DaVinci_release_area/DAVINCI_v7r2
IF YOU HAVE ANY CMT WARNING (ex. version mismatch) you must remove them.
lxplus> source setup.csh
lxplus> gmake
To run a DaVinci version under projects:
Again the only thing to remember is to set the environment for the DaVinci version you want to use.
The example script of how to run a job, job/DaVinci.job, has been modified to do that automatically. The script can be run interactively:
lxplus> cd $HOME/newmycmt/Phys/DaVinci/v7r2/job
lxplus> DaVinci.job
or in batch:
lxplus> bsub -q 8nh DaVinci.job
DaVinci is controlled via jobOptions as any Gaudi application. In the subdirectory options there is an example joboptions file options/DaVinci.opts to be modified and customized.
It includes DaVinciCommon.opts that defines the services and DLLs to be loaded and are common to any job. Default options for algorithms and tools in the DaVinci basic libraries are loaded automatically, but can be overwritten in DaVinci.opts later on.
Comments in DaVinci.opts are provided to give an indication of how to modify the options.
Choose the database depended options by having uncommented the corresponding options: DaVinciv253r0.opts (for Xmas production) or DaVinciv248r4.opts (for Summer production)
Options to run the selection routines that have been adapted to OODST are listed (commented) in DaVinci.opts.
By default DaVinci.opts will produce Charged ProtoParticles and Primary Vertices. To produce Neutral ProtoParticles one can uncomment the corresponding lines. It is also possible to recalibrate the Calorimeter when running on summer data.
To rerun the L0 trigger simulation or the L1 trigger simulation uncomment the corresponding lines in DaVinci.opts.
An example to write a "complete" miniDST is provided in DaVinciMiniDST.opts.
- as an argument of the executable
DaVinci.exe myDaVinci.opts
- by setting the JOBOPTPATH environment variable
setenv JOBOPTPATH myDaVinci.opts
- using the file in the application package
$DAVINCIROOT/options/DaVinci.opts