void testEcalDetId::testEcalTrigTowerDetId() { for (int ieta=EcalTrigTowerDetId::MIN_I;ieta<=EcalTrigTowerDetId::MAX_I;ieta++) for (int iphi=EcalTrigTowerDetId::MIN_I;iphi<=EcalTrigTowerDetId::MAX_I;iphi++) { try { //EcalTrigTowerDetId Zside 1 { EcalTrigTowerDetId aPositiveId(1,EcalBarrel,ieta,iphi); CPPUNIT_ASSERT(aPositiveId.subDet()==EcalBarrel); CPPUNIT_ASSERT(aPositiveId.ieta()==ieta); CPPUNIT_ASSERT(aPositiveId.iphi()==iphi); CPPUNIT_ASSERT(aPositiveId.zside()==1); CPPUNIT_ASSERT(aPositiveId.ietaAbs()==ieta); } //EcalTrigTowerDetId Zside -1 { EcalTrigTowerDetId aNegativeId(-1,EcalBarrel,ieta,iphi); CPPUNIT_ASSERT(aNegativeId.subDet()==EcalBarrel); CPPUNIT_ASSERT(aNegativeId.ieta()==-1*ieta); CPPUNIT_ASSERT(aNegativeId.iphi()==iphi); CPPUNIT_ASSERT(aNegativeId.zside()==-1); CPPUNIT_ASSERT(aNegativeId.ietaAbs()==ieta); } } catch ( cms::Exception &e ) { } try { //EcalTrigTowerDetId Zside 1 { EcalTrigTowerDetId aPositiveId(1,EcalEndcap,ieta,iphi); CPPUNIT_ASSERT(aPositiveId.ieta()==ieta); CPPUNIT_ASSERT(aPositiveId.subDet()==EcalEndcap); CPPUNIT_ASSERT(aPositiveId.iphi()==iphi); CPPUNIT_ASSERT(aPositiveId.zside()==1); } //EcalTrigTowerDetId Zside -1 { EcalTrigTowerDetId aNegativeId(-1,EcalEndcap,ieta,iphi); CPPUNIT_ASSERT(aNegativeId.subDet()==EcalEndcap); CPPUNIT_ASSERT(aNegativeId.ieta()==-1*ieta); CPPUNIT_ASSERT(aNegativeId.iphi()==iphi); CPPUNIT_ASSERT(aNegativeId.zside()==-1); } } catch ( cms::Exception &e ) { } } }
void testEcalDetId::testESDetId(){ for (int istrip=ESDetId::ISTRIP_MIN;istrip<=ESDetId::ISTRIP_MAX;istrip++) for (int ix=ESDetId::IX_MIN;ix<=ESDetId::IX_MAX;ix++) for (int iy=ESDetId::IY_MIN;iy<=ESDetId::IY_MAX;iy++) { try { //ESDetId Plane 0 Zside 1 { ESDetId aPositiveId(istrip,ix,iy,1,1); CPPUNIT_ASSERT(aPositiveId.strip()==istrip); CPPUNIT_ASSERT(aPositiveId.six()==ix); CPPUNIT_ASSERT(aPositiveId.siy()==iy); CPPUNIT_ASSERT(aPositiveId.plane()==1); CPPUNIT_ASSERT(aPositiveId.zside()==1); } //ESDetId Plane 1 Zside 1 { ESDetId aPositiveId(istrip,ix,iy,2,1); CPPUNIT_ASSERT(aPositiveId.strip()==istrip); CPPUNIT_ASSERT(aPositiveId.six()==ix); CPPUNIT_ASSERT(aPositiveId.siy()==iy); CPPUNIT_ASSERT(aPositiveId.plane()==2); CPPUNIT_ASSERT(aPositiveId.zside()==1); } //ESDetId Plane 0 Zside -1 { ESDetId aNegativeId(istrip,ix,iy,1,-1); CPPUNIT_ASSERT(aNegativeId.strip()==istrip); CPPUNIT_ASSERT(aNegativeId.six()==ix); CPPUNIT_ASSERT(aNegativeId.siy()==iy); CPPUNIT_ASSERT(aNegativeId.plane()==1); CPPUNIT_ASSERT(aNegativeId.zside()==-1); } //ESDetId Plane 1 Zside -1 { ESDetId aNegativeId(istrip,ix,iy,2,-1); CPPUNIT_ASSERT(aNegativeId.strip()==istrip); CPPUNIT_ASSERT(aNegativeId.six()==ix); CPPUNIT_ASSERT(aNegativeId.siy()==iy); CPPUNIT_ASSERT(aNegativeId.plane()==2); CPPUNIT_ASSERT(aNegativeId.zside()==-1); } } catch ( cms::Exception &e ) { } } }
void testEcalContainer::testContainer() { EcalContainer<EBDetId, float> ec; std::cout << "EcalContainer istantiated." << std::endl; for (int ieta=EBDetId::MIN_IETA;ieta<=EBDetId::MAX_IETA;ieta++) for (int iphi=EBDetId::MIN_IPHI;iphi<=EBDetId::MAX_IPHI;iphi++) { //EBDetId Zside 1 try { { EBDetId aPositiveId(ieta,iphi); ec[aPositiveId] = aPositiveId.hashedIndex(); EcalContainer<EBDetId, float>::const_iterator citer = ec.find(aPositiveId.rawId()); if ( citer != ec.end() ) { CPPUNIT_ASSERT( *(ec.find(aPositiveId.rawId())) == aPositiveId.hashedIndex()); } } //EBDetId Zside -1 { EBDetId aNegativeId(-1*ieta,iphi); ec[aNegativeId] = aNegativeId.hashedIndex(); EcalContainer<EBDetId, float>::const_iterator citer = ec.find(aNegativeId.rawId()); if ( citer != ec.end() ) { CPPUNIT_ASSERT( *(ec.find(aNegativeId.rawId())) == aNegativeId.hashedIndex()); } } } catch ( cms::Exception &e ) { bool cmsExceptionCought=false; CPPUNIT_ASSERT(cmsExceptionCought); } catch ( std::exception &e ) { bool stdExceptionCought=false; CPPUNIT_ASSERT(stdExceptionCought); } } std::cout << "Loop finished." << std::endl; for (int i=0; i!= EBDetId::kSizeForDenseIndexing;++i) { CPPUNIT_ASSERT( ec.item(i) == i); //std::cout << ec.item(i) << " " << i << std::endl; } float i = 0.; for ( EcalContainer<EBDetId, float>::const_iterator citer = ec.begin(); citer != ec.end(); citer++) { CPPUNIT_ASSERT( (*citer) == i); ++i; } }
void testEcalDetId::testEEDetId(){ std::vector<unsigned int> detIds(EEDetId::kSizeForDenseIndexing,0); for (int ix=EEDetId::IX_MIN;ix<=EEDetId::IX_MAX;ix++) for (int iy=EEDetId::IY_MIN;iy<=EEDetId::IY_MAX;iy++) try { //EEDetId Zside 1 if ( EEDetId::validDetId(ix,iy,1) ) { EEDetId aPositiveId(ix,iy,1); CPPUNIT_ASSERT(aPositiveId.ix()==ix); CPPUNIT_ASSERT(aPositiveId.iy()==iy); CPPUNIT_ASSERT(aPositiveId.zside()==1); CPPUNIT_ASSERT(EEDetId::validHashIndex(aPositiveId.hashedIndex())); CPPUNIT_ASSERT(EEDetId::unhashIndex(aPositiveId.hashedIndex())==aPositiveId); detIds.at(aPositiveId.hashedIndex()) = aPositiveId; } //EEDetId Zside -1 if ( EEDetId::validDetId(ix,iy,-1) ) { EEDetId aNegativeId(ix,iy,-1); CPPUNIT_ASSERT(aNegativeId.ix()==ix); CPPUNIT_ASSERT(aNegativeId.iy()==iy); CPPUNIT_ASSERT(aNegativeId.zside()==-1); CPPUNIT_ASSERT(EEDetId::validHashIndex(aNegativeId.hashedIndex())); CPPUNIT_ASSERT(EEDetId::unhashIndex(aNegativeId.hashedIndex())==aNegativeId); detIds.at(aNegativeId.hashedIndex()) = aNegativeId; } } catch ( cms::Exception &e ) { bool cmsExceptionCought=false; CPPUNIT_ASSERT(cmsExceptionCought); } catch ( std::exception &e ) { bool stdExceptionCought=false; CPPUNIT_ASSERT(stdExceptionCought); } int holes=0; for (int i=0;i!=EEDetId::kSizeForDenseIndexing;++i) { // CPPUNIT_ASSERT(detIds[i]!=0); if (detIds[i]==0) { holes++; continue; }// there are holes... CPPUNIT_ASSERT(EEDetId(detIds[i]).hashedIndex()==i); CPPUNIT_ASSERT(EEDetId::unhashIndex(i)==detIds[i]); } CPPUNIT_ASSERT(holes==0); //FIXME hope a better test... //CPPUNIT_ASSERT(holes>EEDetId::kSizeForDenseIndexing/100); //CPPUNIT_ASSERT(holes<EEDetId::kSizeForDenseIndexing/10); }
void testEcalDetId::testEBDetId(){ EBDetId smId; std::vector<unsigned int> detIds(EBDetId::kSizeForDenseIndexing,0); for (int ieta=EBDetId::MIN_IETA;ieta<=EBDetId::MAX_IETA;ieta++) for (int iphi=EBDetId::MIN_IPHI;iphi<=EBDetId::MAX_IPHI;iphi++) { //EBDetId Zside 1 try { { EBDetId aPositiveId(ieta,iphi); CPPUNIT_ASSERT(aPositiveId.ieta()==ieta); CPPUNIT_ASSERT(aPositiveId.iphi()==iphi); CPPUNIT_ASSERT(aPositiveId.zside()==1); CPPUNIT_ASSERT(aPositiveId.ietaAbs()==ieta); smId = EBDetId(aPositiveId.ism(), aPositiveId.ic(), EBDetId::SMCRYSTALMODE); CPPUNIT_ASSERT(aPositiveId==smId); CPPUNIT_ASSERT(aPositiveId.ism()==smId.ism()); CPPUNIT_ASSERT(aPositiveId.ic()==smId.ic()); CPPUNIT_ASSERT(smId.ism()>=EBDetId::MIN_SM); CPPUNIT_ASSERT(smId.ism()<=EBDetId::MAX_SM); CPPUNIT_ASSERT(smId.ic()>=EBDetId::MIN_C); CPPUNIT_ASSERT(smId.ic()<=EBDetId::MAX_C); CPPUNIT_ASSERT(EBDetId::validHashIndex(aPositiveId.hashedIndex())); CPPUNIT_ASSERT(EBDetId::unhashIndex(aPositiveId.hashedIndex())==aPositiveId); detIds.at(aPositiveId.hashedIndex()) = aPositiveId; } //EBDetId Zside -1 { EBDetId aNegativeId(-1*ieta,iphi); CPPUNIT_ASSERT(aNegativeId.ieta()==-1*ieta); CPPUNIT_ASSERT(aNegativeId.iphi()==iphi); CPPUNIT_ASSERT(aNegativeId.zside()==-1); CPPUNIT_ASSERT(aNegativeId.ietaAbs()==ieta); smId = EBDetId(aNegativeId.ism(), aNegativeId.ic(), EBDetId::SMCRYSTALMODE); CPPUNIT_ASSERT(aNegativeId==smId); CPPUNIT_ASSERT(aNegativeId.ism()==smId.ism()); CPPUNIT_ASSERT(aNegativeId.ic()==smId.ic()); CPPUNIT_ASSERT(smId.ism()>=EBDetId::MIN_SM); CPPUNIT_ASSERT(smId.ism()<=EBDetId::MAX_SM); CPPUNIT_ASSERT(smId.ic()>=EBDetId::MIN_C); CPPUNIT_ASSERT(smId.ic()<=EBDetId::MAX_C); CPPUNIT_ASSERT(EBDetId::validHashIndex(aNegativeId.hashedIndex())); CPPUNIT_ASSERT(EBDetId::unhashIndex(aNegativeId.hashedIndex())==aNegativeId); detIds.at(aNegativeId.hashedIndex()) = aNegativeId; } } catch ( cms::Exception &e ) { bool cmsExceptionCought=false; CPPUNIT_ASSERT(cmsExceptionCought); } catch ( std::exception &e ) { bool stdExceptionCought=false; CPPUNIT_ASSERT(stdExceptionCought); } } for (int i=0;i!=EBDetId::kSizeForDenseIndexing;++i) { CPPUNIT_ASSERT(detIds[i]!=0); CPPUNIT_ASSERT(EBDetId(detIds[i]).hashedIndex()==i); CPPUNIT_ASSERT(EBDetId::unhashIndex(i)==detIds[i]); } }