164 if ( p->
getId() != myvpho )
166 std::cout <<
"Parent particle is required to be vpho for Phokhara model" << std::endl;
172 std::cout <<
"PHOKHARA : eta' gamma mode " << std::endl;
176 tr_old[0] = (int)
maxima_.tr[0];
177 tr_old[1] = (int)
maxima_.tr[1];
178 tr_old[2] = (int)
maxima_.tr[2];
180 while ( ntrials < 1000000 )
196 GEN_1PH( 2, qqmin, qqmax, cos1min, cos1max, cos3min, cos3max );
201 GEN_2PH( 2, qqmin, cos1min, cos1max, cos2min, cos2max, cos3min, cos3max );
205 ( tr_old[0] + tr_old[1] + tr_old[2] ) )
206 {
goto storedEvents; }
210 std::cout <<
"FATAL: Could not satisfy cuts after " << ntrials <<
"trials. Terminate."
217 EvtId evtnumstable[100];
226 ctes_.momenta[3][5] );
231 ctes_.momenta[3][6] );
239 ctes_.momenta[3][5] );
244 ctes_.momenta[3][6] );
252 ctes_.momenta[3][5] );
257 ctes_.momenta[3][6] );
262 ctes_.momenta[3][7] );
267 ctes_.momenta[3][8] );
275 ctes_.momenta[3][5] );
280 ctes_.momenta[3][6] );
285 ctes_.momenta[3][7] );
290 ctes_.momenta[3][8] );
298 ctes_.momenta[3][5] );
303 ctes_.momenta[3][6] );
311 ctes_.momenta[3][5] );
316 ctes_.momenta[3][6] );
324 ctes_.momenta[3][5] );
329 ctes_.momenta[3][6] );
337 ctes_.momenta[3][5] );
342 ctes_.momenta[3][6] );
350 ctes_.momenta[3][5] );
355 ctes_.momenta[3][6] );
360 ctes_.momenta[3][7] );
368 ctes_.momenta[3][7] );
373 ctes_.momenta[3][8] );
378 ctes_.momenta[3][9] );
383 ctes_.momenta[3][10] );
391 ctes_.momenta[3][5] );
396 ctes_.momenta[3][6] );
404 ctes_.momenta[3][5] );
409 ctes_.momenta[3][6] );
417 ctes_.momenta[3][5] );
422 ctes_.momenta[3][6] );
429 ctes_.momenta[3][2] );
431 if (
ctes_.momenta[0][3] != 0 )
435 ctes_.momenta[3][3] );
440 more = ( channel != -1 );
443 std::cout <<
"Existence of mode " << channel
444 <<
" in exclusive decay list has the same final state as this one" << std::endl;
453 for (
int i = 0; i < numstable; i++ )
458 if ( ndaugFound == 0 )
460 report(
ERROR,
"EvtGen" ) <<
"Phokhara has failed to do a decay ";
#define GEN_1PH(I, QQMIN, QQMAX, COS1MIN, COS1MAX, COS3MIN, COS3MAX)
#define GEN_2PH(I, QQMIN, COS1MIN, COS1MAX, COS2MIN, COS2MAX, COS3MIN, COS3MAX)
void makeDaughters(int ndaug, EvtId *id)
virtual void init(EvtId part_n, const EvtVector4R &p4)=0
EvtParticle * getDaug(int i)