12 if ( theWave1.
m_dt == theWave2.
m_dt ) {
13 m_dt = theWave1.m_dt ;
14 m_amplitudes.resize( std::min( theWave1.getSize(),
15 theWave2.getSize() )) ;
17 m_amplitudes.resize(0);
27 const size_t s=
result.getSize();
28 for (
size_t i=0 ; i<s ; ++i ) {
38 for (
size_t i=0 ; i<s ; ++i ) {
49 const size_t s=
result.getSize();
50 for (
size_t i=0 ; i<s ; ++i ) {
61 for (
size_t i=0 ; i<s ; ++i ) {
72 const size_t s=
result.getSize();
73 for (
size_t i=0 ; i<s ; ++i ) {
83 const size_t s=
result.getSize();
84 for (
size_t i=0 ; i<s ; ++i ) {
101 const size_t s=
result.getSize();
102 for (
size_t i=0 ; i<s ; ++i ) {
104 double sum2 = 0.5 * ( (*this).m_amplitudes[0] * bWave.
m_amplitudes[i] +
106 for (
size_t k=1 ; k<i ; ++k ) {
107 sum2 += amplPtrA[k] * amplPtrB[i-k] ;
117 std::vector<double>::iterator it=
result.m_amplitudes.begin();
118 std::vector<double>::iterator it_e=
result.m_amplitudes.end();
119 for (;it!=it_e;++it) {
128 std::vector<double>::iterator it=
result.m_amplitudes.begin();
129 std::vector<double>::iterator it_e=
result.m_amplitudes.end();
130 for (;it!=it_e;++it) {
147{
return (aTime>=0 &&
m_dt>0) ? (unsigned)(aTime/
m_dt) :
getSize()+1 ; }
std::vector< double > m_amplitudes
LArWave & operator+=(const LArWave &bWave)
size_t getSize() const
number of time samples
LArWave operator%(const LArWave &bWave) const
LArWave operator/(const LArWave &bWave) const
LArWave & operator*=(const double aScale)
LArWave & operator-=(const LArWave &bWave)
LArWave operator-(const LArWave &bWave) const
LArWave operator*(const LArWave &bWave) const
unsigned getIndex(double aTime) const
index for a time value
LArWave operator+(const LArWave &bWave) const