123 {
124
125
126
127
128 EvtComplex BW;
129 EvtVector4R _p4_d3 = _p4_p - _p4_d1 - _p4_d2;
130 EvtVector4R _p4_12 = _p4_d1 + _p4_d2;
131
132
133
134
135
136 double msq13 = ( _p4_d1 + _p4_d3 ).mass2();
137 double msq23 = ( _p4_d2 + _p4_d3 ).mass2();
138 double msqParent = _p4_p.mass2();
139 double msq1 = _p4_d1.mass2();
140 double msq2 = _p4_d2.mass2();
141 double msq3 = _p4_d3.
mass2();
142
143 double M;
144
145 double p2 = sqrt( ( _p4_12.
mass2() -
146 ( _p4_d1.mass() + _p4_d2.mass() ) * ( _p4_d1.mass() + _p4_d2.mass() ) ) *
147 ( _p4_12.
mass2() - ( _p4_d1.mass() - _p4_d2.mass() ) *
148 ( _p4_d1.mass() - _p4_d2.mass() ) ) ) /
149 ( 2.0 * _p4_12.
mass() );
150
151 double p2R = sqrt( ( _bwm * _bwm - ( _p4_d1.mass() + _p4_d2.mass() ) *
152 ( _p4_d1.mass() + _p4_d2.mass() ) ) *
153 ( _bwm * _bwm - ( _p4_d1.mass() - _p4_d2.mass() ) *
154 ( _p4_d1.mass() - _p4_d2.mass() ) ) ) /
155 ( 2.0 * _bwm );
156
158
159 if ( i == 1 )
160 {
161
162
164 }
165 else R = 5.0 / ( 0.197 );
166
167 gam = _gamma * ( _bwm / _p4_12.
mass() ) * (
p2 / p2R ) * (
p2 / p2R ) * (
p2 / p2R ) *
168 ( ( 1 + R * R * p2R * p2R ) / ( 1 + R * R *
p2 *
p2 ) );
169 M = ( msq13 - msq23 - ( msqParent - msq3 ) * ( msq1 - msq2 ) / ( _bwm * _bwm ) ) *
170 sqrt( ( 1 + R * R * p2R * p2R ) / ( 1 + R * R *
p2 *
p2 ) );
171
172
173
174 BW = sqrt( _gamma ) * M /
175 ( ( _bwm * _bwm - _p4_12.
mass2() ) - EvtComplex( 0.0, 1.0 ) * gam * _bwm );
176
177 return BW;
178}
complex_t R(double Q2, double M2, double G, double Mp2, double Mm2)