CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Private Attributes
APDShape Class Reference

#include <APDShape.h>

Inheritance diagram for APDShape:
EcalShapeBase CaloVShape

Public Member Functions

 APDShape (double tStart, double tau)
 
double threshold () const override
 
 ~APDShape () override
 
- Public Member Functions inherited from EcalShapeBase
double derivative (double time) const
 
 EcalShapeBase (bool aSaveDerivative)
 
double operator() (double aTime) const override
 
double timeOfMax () const
 
double timeOfThr () const
 
double timeToRise () const override
 
 ~EcalShapeBase () override
 
- Public Member Functions inherited from CaloVShape
 CaloVShape ()
 
virtual ~CaloVShape ()
 

Protected Member Functions

void fillShape (EcalShapeBase::DVec &aVec) const override
 
- Protected Member Functions inherited from EcalShapeBase
void buildMe ()
 
unsigned int timeIndex (double aTime) const
 

Private Attributes

double m_tau
 
double m_tStart
 

Additional Inherited Members

- Public Types inherited from EcalShapeBase
enum  {
  kReadoutTimeInterval = 25, kNBinsPerNSec = 10, k1NSecBins = kReadoutTimeInterval*kNBinsPerNSec, k1NSecBinsTotal = 2*k1NSecBins,
  kNBinsStored = k1NSecBinsTotal*kNBinsPerNSec
}
 
typedef std::vector< double > DVec
 
- Static Public Attributes inherited from EcalShapeBase
static const double qNSecPerBin = 1./(1.*kNBinsPerNSec)
 

Detailed Description

Definition at line 6 of file APDShape.h.

Constructor & Destructor Documentation

APDShape::APDShape ( double  tStart,
double  tau 
)

Definition at line 11 of file APDShape.cc.

References EcalShapeBase::buildMe(), MillePedeFileConverter_cfg::e, m_tau, and m_tStart.

12  :
13  EcalShapeBase( true ) ,
14  m_tStart ( tStart ) ,
15  m_tau ( tau )
16 {
17  assert( m_tau > 1.e-5 ) ;
18  assert( m_tStart > 0 ) ;
19  buildMe() ;
20 }
double m_tau
Definition: APDShape.h:24
EcalShapeBase(bool aSaveDerivative)
double m_tStart
Definition: APDShape.h:23
APDShape::~APDShape ( )
override

Definition at line 7 of file APDShape.cc.

8 {
9 }

Member Function Documentation

void APDShape::fillShape ( EcalShapeBase::DVec aVec) const
overrideprotectedvirtual

Implements EcalShapeBase.

Definition at line 29 of file APDShape.cc.

References JetChargeProducer_cfi::exp, mps_fire::i, EcalShapeBase::k1NSecBinsTotal, m_tau, and m_tStart.

30 {
31  for( unsigned int i ( 0 ) ; i != k1NSecBinsTotal ; ++i )
32  {
33  const double ctime ( ( 1.*i + 0.5 - m_tStart )/m_tau ) ;
34  aVec[i] = ( 0 > ctime ? 0 : ctime * exp( 1. - ctime ) ) ;
35  }
36 }
double m_tau
Definition: APDShape.h:24
double m_tStart
Definition: APDShape.h:23
double APDShape::threshold ( ) const
overridevirtual

Implements EcalShapeBase.

Definition at line 23 of file APDShape.cc.

24 {
25  return 0.0 ;
26 }

Member Data Documentation

double APDShape::m_tau
private

Definition at line 24 of file APDShape.h.

Referenced by APDShape(), and fillShape().

double APDShape::m_tStart
private

Definition at line 23 of file APDShape.h.

Referenced by APDShape(), and fillShape().