Skip to content
Snippets Groups Projects
Commit ce0ca14e authored by Marco Clemencic's avatar Marco Clemencic
Browse files

v26r3

parent b3f0947a
No related branches found
Tags v26r3
No related merge requests found
Showing
with 49 additions and 72 deletions
################################################################################
# Package: BooleSys
################################################################################
gaudi_subdir(BooleSys v26r2)
gaudi_subdir(BooleSys v26r3)
gaudi_add_test(QMTest QMTEST)
package BooleSys
version v26r2
version v26r3
branches cmt doc
......@@ -8,7 +8,7 @@ branches cmt doc
#=======================================================
# Boole application # Maintainer
use Boole v26r2 Digi # Marco Cattaneo
use Boole v26r3 Digi # Marco Cattaneo
use BooleUMC v2r1 Digi # Tomasz Skwarnicki
use DigiAlg v4r23 Digi # Marco Cattaneo
......@@ -44,7 +44,7 @@ use VPAlgorithms v3r2 VP # Marcin Kucharczyk / Paul Szczypka
use VPAssociators v2r1 VP # Marcin Kucharczyk / Paul Szczypka
# VeloLite
use VLDigitisation v1r2 VL # Heinrich Schindler
use VLDigitisation v1r3 VL # Heinrich Schindler
# Allow the generation of the SAM QMTest
apply_pattern QMTest
......
v26r2
v26r3
......@@ -3,6 +3,15 @@ Package: Digi/Boole
Package Coordinator: Marco Cattaneo
Purpose: LHCb Digitization program
</PRE><H1><A NAME=v26r3>2013-03-06 Boole v26r3</A></H1><PRE>
This version uses projects LCGCMT 64c, Gaudi v23r6, LHCb v35r4, Lbcom v13r4
and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*
- Bug fix release for upgrade simulation.
- Bug fixes
. bugfix in VLClusterCreator (sorting of strips) (VLDigitisation v1r3)
</PRE><H1><A NAME=v26r2>2013-02-18 Boole v26r2</A></H1><PRE>
This version uses projects LCGCMT 64c, Gaudi v23r6, LHCb v35r4, Lbcom v13r4
and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*
......
......@@ -6,7 +6,7 @@ find_package(GaudiProject)
#---------------------------------------------------------------
# Declare project name and version
gaudi_project(Boole v26r2
gaudi_project(Boole v26r3
USE Lbcom v13r4
DATA AppConfig VERSION v3r*
FieldMap VERSION v5r*
......
################################################################################
# Package: Boole
################################################################################
gaudi_subdir(Boole v26r2)
gaudi_subdir(Boole v26r3)
gaudi_depends_on_subdirs(Bcm/BcmDigi
Calo/CaloDigit
......
package Boole
version v26r2
version v26r3
# Remember to change version also in ../job/valgrind.py, ../job/Boole_Ganga.py
# ../CMakeLists.txt
......
v26r2
v26r3
......@@ -3,6 +3,11 @@ Package: Digi/Boole
Package Coordinator: Marco Cattaneo
Purpose: LHCb Digitization program
</PRE><H1><A NAME=v26r3>2013-03-06 Boole v26r3</A></H1><PRE>
This version uses projects LCGCMT 64c, Gaudi v23r6, LHCb v35r4, Lbcom v13r4
and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*
- Bug fix release for upgrade simulation.
</PRE><H1><A NAME=v26r2>2013-02-18 Boole v26r2</A></H1><PRE>
This version uses projects LCGCMT 64c, Gaudi v23r6, LHCb v35r4, Lbcom v13r4
......
......@@ -43,7 +43,7 @@
#-------------------------------------------------------------------------------
# Make a new job object for Boole
#-------------------------------------------------------------------------------
j = Job( application = Boole( version = 'v26r2' ) )
j = Job( application = Boole( version = 'v26r3' ) )
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
......
......@@ -41,7 +41,7 @@ while ($i < $nar)
end
#
set Bversion = "v26r2"
set Bversion = "v26r3"
echo "Executing valgrind for Boole $Bversion using options $options"
#
......
################################################################################
# Package: VLDigitisation
################################################################################
gaudi_subdir(VLDigitisation v1r2)
gaudi_subdir(VLDigitisation v1r3)
gaudi_depends_on_subdirs(Det/VLDet
Event/DigiEvent
......
package VLDigitisation
version v1r2
package VLDigitisation
version v1r3
#============================================================================
# Structure, i.e. directories to process.
......
v1r2
v1r3
......@@ -4,6 +4,10 @@
! Purpose : Algorithms for VL Digitization
!-----------------------------------------------------------------------------
!========================= VLDigitisation v1r3 2013-03-06 =========================
! 2013-02-24 - Heinrich Schindler
- bugfix in VLClusterCreator (sorting of strips)
!========================= VLDigitisation v1r2 2012-12-12 =========================
! 2012-12-11 - Marco Clemencic
- Added CMake configuration file.
......
......@@ -25,22 +25,17 @@ DECLARE_ALGORITHM_FACTORY(VLClusterCreator)
VLClusterCreator::VLClusterCreator(const std::string& name,
ISvcLocator* pSvcLocator) :
GaudiAlgorithm(name, pSvcLocator),
m_digits(0),
m_clusters(0),
m_det(0) {
m_digits(0), m_clusters(0), m_det(0) {
declareProperty("DigitLocation",
m_digitLocation = MCVLDigitLocation::Default);
declareProperty("ClusterLocation",
m_clusterLocation = VLClusterLocation::Default);
declareProperty("SeedSignalToNoiseCut", m_seedSignalToNoiseCut = 4.5);
declareProperty("LowSignalToNoiseCut", m_lowSignalToNoiseCut = 1.5);
declareProperty("MaxClusters", m_maxClusters = 10000);
declareProperty("HighThreshold", m_highThreshold = 30.0);
declareProperty("ElectronsPerADC", m_electronsPerADC = 1200.);
declareProperty("MCTruth", m_truth = true);
}
......@@ -89,16 +84,6 @@ StatusCode VLClusterCreator::execute() {
}
//=============================================================================
/// Finalisation
//=============================================================================
StatusCode VLClusterCreator::finalize() {
return GaudiAlgorithm::finalize();
}
//==========================================================================
/// Clustering procedure
//==========================================================================
......@@ -148,7 +133,7 @@ void VLClusterCreator::makeClusters() {
mean += strip * adc;
}
mean /= sum;
std::sort(strips.begin(), strips.begin());
std::stable_sort(strips.begin(), strips.end());
unsigned int centre = static_cast<unsigned int>(floor(mean));
const double isp = mean - centre;
// Set the key.
......
......@@ -30,7 +30,6 @@ public:
virtual StatusCode initialize(); ///< Algorithm initialization
virtual StatusCode execute(); ///< Algorithm execution
virtual StatusCode finalize(); ///< Algorithm finalization
private:
......
......@@ -30,7 +30,6 @@ VLClusterMonitor::VLClusterMonitor(const std::string& name,
m_nEvents(0) {
declareProperty("Detailed", m_detailed = false);
declareProperty("PrintInfo", m_printInfo = false);
}
......@@ -55,19 +54,18 @@ StatusCode VLClusterMonitor::execute() {
if (msgLevel(MSG::DEBUG)) debug() << " ==> execute()" << endmsg;
++m_nEvents;
if (!exist<VLClusters>(VLClusterLocation::Default)) {
error() << " ==> There are no VLClusters in the TES! " << endmsg;
m_clusters = getIfExists<VLClusters>(VLClusterLocation::Default);
if (!m_clusters) {
error() << "No clusters at " << VLClusterLocation::Default << endmsg;
return StatusCode::FAILURE;
} else {
m_clusters = get<VLClusters>(VLClusterLocation::Default);
}
}
monitor();
return StatusCode::SUCCESS;
}
//=============================================================================
/// Finalize
/// Finalize
//=============================================================================
StatusCode VLClusterMonitor::finalize() {
......@@ -141,18 +139,8 @@ void VLClusterMonitor::monitor() {
}
if (!m_detailed) continue;
VLChannelID channel = (*it)->channelID();
unsigned int sensor = channel.sensor();
// Print out some info about the cluster
if (m_printInfo) {
info() << " ==> VLCluster: sensor "
<< channel.sensor() << ", first strip: "
<< (*it)->strip(0) << endmsg;
for (int i = 0; i < nstrips; ++i) {
info() << " ==> VLCluster: strip: "
<< (*it)->strip(i) << ", signal on strip: "
<< (*it)->adcValue(i) << endmsg;
}
}
const unsigned int sensor = channel.sensor();
const unsigned int firstStrip = (*it)->strip(0);
double adcSum = 0.;
for (int i = 0; i < nstrips; ++i) {
adcSum += double((*it)->adcValue(i));
......@@ -163,11 +151,11 @@ void VLClusterMonitor::monitor() {
plot((*it)->interStripFraction(), "isp",
"Inter-strip fraction",
0., 1., 50);
plot2D(sensor, (*it)->strip(0), "sensorAndStrip",
plot2D(sensor, firstStrip, "sensorAndStrip",
"Sensor and first strip number",
0., 132., 0., 3000., 132, 50);
if ((*it)->isRType()) {
double r = m_det->rSensor(sensor)->rOfStrip((*it)->strip(0));
double r = m_det->rSensor(sensor)->rOfStrip(firstStrip);
plot2D(r, nstrips, "radiusVsSize",
"Cluster size as function of radius",
0., 40., -0.5, 5.5, 40, 6);
......@@ -184,11 +172,7 @@ void VLClusterMonitor::monitor() {
plot((*it)->interStripFraction(), "ispPhi",
"Inter-strip fraction",
0., 1., 50);
unsigned int zone = m_det->phiSensor(sensor)->zoneOfStrip((*it)->strip(0));
const double angle = m_det->phiSensor(sensor)->angleOfStrip((*it)->strip(0), 0.);
plot2D(angle, nstrips, "angleVsSize",
"Cluster size as function of strip angle",
0., Gaudi::Units::pi, -0.5, 5.5, 90, 6);
unsigned int zone = m_det->phiSensor(sensor)->zoneOfStrip(firstStrip);
if (0 == zone) {
plot(nstrips, "clusterSizePhiZone0",
"Number of strips in cluster (zone 0)",
......
......@@ -29,7 +29,6 @@ private:
void monitor();
bool m_detailed;
bool m_printInfo;
LHCb::VLClusters* m_clusters;
DeVL* m_det;
double m_nClusters;
......
......@@ -149,12 +149,12 @@ StatusCode VLDigitCreator::execute() {
m_digits = new MCVLDigits();
std::vector<std::string>::const_iterator it;
for (it = m_hitLocations.begin(); it != m_hitLocations.end(); ++it) {
if (!exist<MCHits>(*it)) {
if (m_debug) debug() << "No MCHits in " << *it << endmsg;
// Retrieve the MC hits.
MCHits* hits = getIfExists<MCHits>(*it);
if (!hits) {
if (m_debug) debug() << "No hits in " << *it << endmsg;
continue;
}
// Retrieve the MC hits.
MCHits* hits = get<MCHits>(*it);
if (m_debug) debug() << hits->size() << " hits in " << *it << endmsg;
const unsigned int timeIndex = it - m_hitLocations.begin();
const double timeOffset = m_timeOffsets[timeIndex];
......@@ -856,11 +856,3 @@ double VLDigitCreator::erfcSafe(const double arg) {
}
//============================================================================
/// Finalization
//============================================================================
StatusCode VLDigitCreator::finalize() {
return GaudiAlgorithm::finalize();
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment