diff --git a/src/libraries/AMPTOOLS_AMPS/BreitWigner.cc b/src/libraries/AMPTOOLS_AMPS/BreitWigner.cc index 3dfc84ef1..c501eae43 100644 --- a/src/libraries/AMPTOOLS_AMPS/BreitWigner.cc +++ b/src/libraries/AMPTOOLS_AMPS/BreitWigner.cc @@ -61,7 +61,13 @@ BreitWigner::calcAmplitude( GDouble** pKin ) const GDouble mass = Ptot.M(); GDouble mass1 = P1.M(); GDouble mass2 = P2.M(); - + + return calcAmplitudeFromMasses( mass, mass1, mass2 ); +} + +complex< GDouble > +BreitWigner::calcAmplitudeFromMasses( GDouble mass, GDouble mass1, GDouble mass2 ) const +{ // assert positive breakup momenta GDouble q0 = fabs( breakupMomentum(m_mass0, mass1, mass2) ); GDouble q = fabs( breakupMomentum(mass, mass1, mass2) ); diff --git a/src/libraries/AMPTOOLS_AMPS/BreitWigner.h b/src/libraries/AMPTOOLS_AMPS/BreitWigner.h index 9312ac434..fca51597c 100644 --- a/src/libraries/AMPTOOLS_AMPS/BreitWigner.h +++ b/src/libraries/AMPTOOLS_AMPS/BreitWigner.h @@ -36,6 +36,7 @@ class BreitWigner : public UserAmplitude< BreitWigner > string name() const { return "BreitWigner"; } complex< GDouble > calcAmplitude( GDouble** pKin ) const; + complex< GDouble > calcAmplitudeFromMasses( GDouble mass, GDouble mass1, GDouble mass2 ) const; void updatePar( const AmpParameter& par ); diff --git a/src/libraries/AMPTOOLS_AMPS/BreitWigner3body.cc b/src/libraries/AMPTOOLS_AMPS/BreitWigner3body.cc index e2c7cb072..0898ce1ba 100644 --- a/src/libraries/AMPTOOLS_AMPS/BreitWigner3body.cc +++ b/src/libraries/AMPTOOLS_AMPS/BreitWigner3body.cc @@ -46,9 +46,14 @@ BreitWigner3body::calcAmplitude( GDouble** pKin ) const GDouble mass = Ptot.M(); + return calcAmplitudeFromMasses( mass ); +} + +complex< GDouble > +BreitWigner3body::calcAmplitudeFromMasses( GDouble mass ) const +{ GDouble width = m_width0; - //GDouble width = m_width0; - + // this first factor just gets normalization right for BW's that have // no additional s-dependence from orbital L complex bwtop( sqrt( m_mass0 * m_width0 / 3.1416 ), 0.0 ); diff --git a/src/libraries/AMPTOOLS_AMPS/BreitWigner3body.h b/src/libraries/AMPTOOLS_AMPS/BreitWigner3body.h index 235f7cac6..eb0116905 100644 --- a/src/libraries/AMPTOOLS_AMPS/BreitWigner3body.h +++ b/src/libraries/AMPTOOLS_AMPS/BreitWigner3body.h @@ -36,6 +36,7 @@ class BreitWigner3body : public UserAmplitude< BreitWigner3body > string name() const { return "BreitWigner3body"; } complex< GDouble > calcAmplitude( GDouble** pKin ) const; + complex< GDouble > calcAmplitudeFromMasses( GDouble mass ) const; void updatePar( const AmpParameter& par );