Skip to content
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

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

smeiser
Copy link
Contributor

@smeiser smeiser commented Feb 12, 2024

  • Take care of requested changes
  • Clarify how to deal with the form-factors

Copy link
Contributor

@mreboud mreboud left a 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]
Copy link
Contributor

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
Copy link
Contributor

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.

Copy link
Member

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?

eos/b-decays/Makefile.am Show resolved Hide resolved

std::shared_ptr<VectorLCDAs> lcdas;

SpecifiedOption opt_cp_conjugate;
Copy link
Contributor

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))
Copy link
Contributor

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));
Copy link
Contributor

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?

Copy link
Member

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
Copy link
Contributor

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;
Copy link
Contributor

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))
Copy link
Contributor

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));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

integer pow -> power_of

Copy link
Member

@dvandyk dvandyk left a 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
Copy link
Member

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));
Copy link
Member

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
Copy link
Member

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
Copy link
Member

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
Copy link
Member

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
Copy link
Member

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;
Copy link
Member

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
Copy link
Member

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})$'
Copy link
Member

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})$'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ditto.

@smeiser smeiser marked this pull request as draft May 24, 2024 09:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Feature request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants