Code: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 128: | Line 128: | ||
* [https://cdcvs.fnal.gov/redmine/projects/cpp0x cpp0x] [https://cdcvs.fnal.gov/redmine/projects/cpp0x/repository browser] | * [https://cdcvs.fnal.gov/redmine/projects/cpp0x cpp0x] [https://cdcvs.fnal.gov/redmine/projects/cpp0x/repository browser] | ||
* [http://www.boost.org/ boost] [http://www.boost.org/doc/libs/1_47_0 browser] | * [http://www.boost.org/ boost] [http://www.boost.org/doc/libs/1_47_0 browser] | ||
* [[BTrk]] [https://github.com/KFTrack/BTrk | * [[BTrk]] [https://github.com/KFTrack/BTrk browser] | ||
* [https://cdcvs.fnal.gov/lxr/ LXR browsers] for many Fermilab projects | * [https://cdcvs.fnal.gov/lxr/ LXR browsers] for many Fermilab projects | ||
* [[Scons|scons]] | * [[Scons|scons]] |
Revision as of 19:15, 9 November 2017
example page for git documentation
Building code
- Basic recipe for creating a satellite release
source /cvmfs/fermilab.opensciencegrid.org/products/common/etc/setups setup mu2e mkdir Satellite cd Satellite /cvmfs/mu2e.opensciencegrid.org/Offline/v6_0_0/SLF6/prof/Offline/bin/createSatelliteRelease [./buildopts --build=debug] source setup.sh [add content] scons -j 4
- Basic recipe for setup, full checkout and build
source /cvmfs/fermilab.opensciencegrid.org/products/common/etc/setups setup mu2e git clone http://cdcvs.fnal.gov/projects/mu2eofflinesoftwaremu2eoffline/Offline.git - or - git clone ssh://p-mu2eofflinesoftwaremu2eoffline@cdcvs.fnal.gov/cvs/projects/mu2eofflinesoftwaremu2eoffline/Offline.git cd Offline git checkout -b work [./buildopts --build=debug] source setup.sh scons -j 4
- ReleaseList
- UPS
- git code repository management
- scons code building tool
- Satellite Releases for building only the part of the code base you need
- CVS - a few pieces of code are still in the CVS repository
Configuring executables
- fcl
- Introduction
- paths - which modules and what order
- I/O modules
- Message logger
- Search paths - how data, fcl, and other control files are found
- SimpleConfig - another way to input parameters to an executable
- Simulation
- Introduction - an overview
- Generators - generating the first particle
- Staging - how and why of running the simulation in stages
- Time simulation - adding lifetimes
- Bunch intensity - simulating bunch-to-bunch variations
- Mixing - mixing background and signal simulation
- Other applications
- EventDisplays
- Stntuple git url - one choice of user ntuple
Modules, Products, and Services
- Modules
- Products
- Geometry
- Random numbers:
- Magnetic Field Maps
- Conditions Data
- Services
- Exceptions
- SimpleConfig
- Message logger
Code Management
- ReleaseList
- git - overview and pointers to detailed and mu2e-specific instructions
- Validation - automatic and occasional procedures for validation
- Jenkins - a central build platform
- CVMFS
- Download - pull a local copy to remote institutions or laptops
- scisoft - server for product manifests
- BTrk - the KalMan fitter code is in this non-standard product
- CVS
- DAQ DAQ redmine
Standards and Practices
- Magic numbers - where to get value of pi, etc.
- Editors - tips on editors and policy of not using tab characters.
- CMS code references:
- FAQs
External Packages
- UPS (needs updating) manual
- Mu2e code LXR
- art doc redmine browser art-users product flags
- Paterno memory profiling instructions
- CMS Framework LXR
- root docs
- geant at Fermilab DOxygen(v9.4.p01) LXR
- G4Beamline mu2e manual
- CLHEP CLHEP(v.2.2.0.4)
- HepPDT
- fhicl-cpp
- cetlib browser
- Message Facility browser
- cpp0x browser
- boost browser
- BTrk browser
- LXR browsers for many Fermilab projects
- scons
- MARS (password protected)