-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement B -> D^(*) K^* and B_s -> D_s^(*) rho QCD factorization amplitudes #799
base: master
Are you sure you want to change the base?
Conversation
smeiser
commented
Feb 12, 2024
•
edited
edited
- Take care of requested changes
- Clarify how to deal with the form-factors
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @smeiser, I left some comments, nothing big
@@ -821,35 +821,35 @@ groups: | |||
max: 0.0 | |||
latex: '$a_{T,3}^{B\to D,\mathrm{BGL97}}$' | |||
unit: '1' | |||
# form factor parameters for B_s->D_s inspired by [BSZ:2015A] | |||
# form factor parameters for B_s->D_s inspired by [BSZ:2015A] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The new indentation looks weird
central: 0.0 | ||
min: 0.0 | ||
max: 0.0 | ||
central: 0.6657 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The new policy is to set all the form factors value to zero and to prompt a one-time warning whenever default parameters are used (#791). We can discuss it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That is true for specialised parametrisations, such as the HQE. BSZ2015 / simplified series expansion should be non-zero, shouldn't it?
|
||
std::shared_ptr<VectorLCDAs> lcdas; | ||
|
||
SpecifiedOption opt_cp_conjugate; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be a BooleanOption
complex<double> AVLL(const double & u, const double & z) const | ||
{ | ||
// evaluate AVLL chosing the correct branch for physical z = m_c / m_b < 1 | ||
if((0.0 < z) && (z < 1.0)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
coding style, missing space
if((0.0 < z) && (z < 1.0)) | ||
{ | ||
return | ||
log(u * (1.0 - z * z)) / (1.0 - u * (1.0 - z * z)) - pow(log(u * (1.0 - z * z)), 2) - dilog(1.0 - u * (1.0 - z * z)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you use power_of
instead of pow
for all the integer powers?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, no space immediately after return.
// evaluate AVLL chosing the correct branch for unphysical z = m_b / m_c > 1 | ||
else if (z > 1.0) | ||
{ | ||
return |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Coding style, no new line after return
|
||
std::shared_ptr<VectorLCDAs> lcdas; | ||
|
||
SpecifiedOption opt_cp_conjugate; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be a BooleanOption
complex<double> AVLL(const double & u, const double & z) const | ||
{ | ||
// evaluate AVLL chosing the correct branch for z = m_c / m_b < 1 and z = - m_c / m_b > -1 | ||
if((-1.0 < z) && (z < 1.0)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Coding style: space
if((-1.0 < z) && (z < 1.0)) | ||
{ | ||
return | ||
log(u * (1.0 - z * z)) / (1.0 - u * (1.0 - z * z)) - pow(log(u * (1.0 - z * z)), 2) - dilog(1.0 - u * (1.0 - z * z)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
integer pow
-> power_of
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks pretty good, with a few requests for changes.
central: 0.0 | ||
min: 0.0 | ||
max: 0.0 | ||
central: 0.6657 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That is true for specialised parametrisations, such as the HQE. BSZ2015 / simplified series expansion should be non-zero, shouldn't it?
if((0.0 < z) && (z < 1.0)) | ||
{ | ||
return | ||
log(u * (1.0 - z * z)) / (1.0 - u * (1.0 - z * z)) - pow(log(u * (1.0 - z * z)), 2) - dilog(1.0 - u * (1.0 - z * z)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, no space immediately after return.
// evaluate fVLL chosing the correct branch for physical z = m_c / m_b < 1 | ||
if ((0.0 < z) && (z < 1.0)) | ||
{ | ||
return |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ditto.
// evaluate fVLL chosing the correct branch for unphysical z = m_b / m_c > 1 | ||
else if (z > 1.0) | ||
{ | ||
return |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ditto.
// evaluate ASLR chosing the correct branch for physical z = m_c / m_b < 1 | ||
if ((0.0 < z) && (z < 1.0)) | ||
{ | ||
return |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ditto.
-((8.0 * (4.0 * u + 3.0)) / (1.0 + z)) + (8.0 * (1.0 - z)) / (1.0 + z) * (ATLL(u, z) + ATLL(1.0 - u, z)); | ||
}; | ||
|
||
complex<double> phiV(const double & u, const double & mu) const |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you document what this correspond to in the BBNS paper, eq. an equation? Isn't this one of the two-particle LCDAs?
const double TSLR_im = integrate<GSL::QAGS>(im_integrand_SLR, 0.0, 1.0); | ||
|
||
const double TTLL_re = integrate<GSL::QAGS>(re_integrand_TLL, 0.0, 1.0); | ||
const double TTLL_im = 0.0; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you comment why the identity TTLL_im = 0
holds?
// evaluate AVLL chosing the correct branch for z = m_b / m_c > 1 and z = - m_b / m_c < -1 | ||
else if ((z > 1.0) || (z < -1.0)) | ||
{ | ||
return |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ditto. Not indicating of all those again 😄
central: 0.685068 | ||
min: 0.685068 | ||
max: 0.685068 | ||
latex: '$f_+^{B->D}(q^2 = M_K^{*2})$' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this LaTeX label correct? q^2 = M_{K^*}^2
, isn't it?
central: 0.70023 | ||
min: 0.70023 | ||
max: 0.70023 | ||
latex: '$a_0^{B->D^*}(q^2 = M_K^{*2})$' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ditto.