392 double thetaRes( 0.0 ), phiRes( 0.0 ), phiPrimeDaug( 0.0 ),
393 thetaPrimeDaug( 0.0 );
395 double beta_res( 0.0 );
398 Lc_atproton( 0.0, 0.0, 0.0, 0.0 );
401 EvtComplex term1( 0.0 ), term2( 0.0 ), term3( 0.0 ), term4( 0.0 );
414 double p4ResMag = p4Res.
d3mag();
421 double res_d1_Mag = res_d1.
d3mag();
424 double res_d3_Mag = res_d3.
d3mag();
426 thetaPrimeDaug =
getACos( res_d1.
dot( res_d3 ), res_d1_Mag * res_d3_Mag );
428 res_atproton = p4Res;
430 double res_atproton_mag = res_atproton.d3mag();
432 Lc_atproton = res.
p4_p();
434 double Lc_atproton_mag = Lc_atproton.
d3mag();
441 phiPrimeDaug =
getASin( res_d1.
dot( yRes ), sin( thetaPrimeDaug ) *
452 if ( res_atproton_mag > 0.0 && Lc_atproton_mag > 0.0 ) {
456 beta_res =
getACos( res_atproton.dot( Lc_atproton ),
457 res_atproton_mag * Lc_atproton_mag );
466 term1 = resAmp *
DecayAmp3( resIndex, 1, 1, thetaRes, phiRes,
467 thetaPrimeDaug, phiPrimeDaug );
468 term2 = resAmp *
DecayAmp3( resIndex, 1, -1, thetaRes, phiRes,
469 thetaPrimeDaug, phiPrimeDaug );
470 term3 = resAmp *
DecayAmp3( resIndex, -1, 1, thetaRes, phiRes,
471 thetaPrimeDaug, phiPrimeDaug );
472 term4 = resAmp *
DecayAmp3( resIndex, -1, -1, thetaRes, phiRes,
473 thetaPrimeDaug, phiPrimeDaug );
483 thetaPrimeDaug, phiPrimeDaug );
485 thetaPrimeDaug, phiPrimeDaug );
487 thetaPrimeDaug, phiPrimeDaug );
489 thetaPrimeDaug, phiPrimeDaug );
491 term1 = rotate_00 * termA + rotate_10 * termB;
492 term2 = rotate_01 * termA + rotate_11 * termB;
493 term3 = rotate_00 * termC + rotate_10 * termD;
494 term4 = rotate_01 * termC + rotate_11 * termD;
498 std::vector<EvtComplex> ampVect;
499 ampVect.push_back( term1 );
500 ampVect.push_back( term2 );
501 ampVect.push_back( term3 );
502 ampVect.push_back( term4 );
508 int mprime,
double theta_res,
double phi_res,
509 double theta_prime_daughter_res,
510 double phi_prime_daughter_res )
const
514 EvtComplex term1( 0.0, 0.0 ), term2( 0.0, 0.0 );
518 if ( m == 1 && mprime == 1 ) {
522 }
else if ( m == 1 && mprime == -1 ) {
526 }
else if ( m == -1 && mprime == 1 ) {
530 }
else if ( m == -1 && mprime == -1 ) {
537 if ( m == 1 && mprime == 1 ) {
539 theta_prime_daughter_res, phi_prime_daughter_res );
541 theta_prime_daughter_res, phi_res );
543 }
else if ( m == 1 && mprime == -1 ) {
545 theta_prime_daughter_res, 0.0 );
547 theta_prime_daughter_res,
548 phi_res - phi_prime_daughter_res );
550 }
else if ( m == -1 && mprime == 1 ) {
552 theta_prime_daughter_res,
553 -( phi_res - phi_prime_daughter_res ) );
555 theta_prime_daughter_res, 0.0 );
557 }
else if ( m == -1 && mprime == -1 ) {
559 theta_prime_daughter_res, -phi_res );
561 theta_prime_daughter_res, -phi_prime_daughter_res );
566 if ( m == 1 && mprime == 1 ) {
568 theta_prime_daughter_res, 0.0 );
570 theta_prime_daughter_res,
571 phi_res - phi_prime_daughter_res );
573 }
else if ( m == 1 && mprime == -1 ) {
575 theta_prime_daughter_res, phi_prime_daughter_res );
577 theta_prime_daughter_res, phi_res );
579 }
else if ( m == -1 && mprime == 1 ) {
581 theta_prime_daughter_res, -phi_res );
583 theta_prime_daughter_res, -phi_prime_daughter_res );
585 }
else if ( m == -1 && mprime == -1 ) {
587 theta_prime_daughter_res,
588 -( phi_res - phi_prime_daughter_res ) );
590 theta_prime_daughter_res, 0.0 );
595 if ( m == 1 && mprime == 1 ) {
597 theta_prime_daughter_res, 0.0 );
599 theta_prime_daughter_res,
600 phi_res - phi_prime_daughter_res );
602 }
else if ( m == 1 && mprime == -1 ) {
604 theta_prime_daughter_res,
605 phi_prime_daughter_res );
607 -1, theta_prime_daughter_res, phi_res );
609 }
else if ( m == -1 && mprime == 1 ) {
611 theta_prime_daughter_res, -phi_res );
613 theta_prime_daughter_res, -phi_prime_daughter_res );
615 }
else if ( m == -1 && mprime == -1 ) {
617 theta_prime_daughter_res,
618 -( phi_res - phi_prime_daughter_res ) );
620 -1, theta_prime_daughter_res, 0.0 );