Page Menu
Home
HEPForge
Search
Configure Global Search
Log In
Files
F19244687
B3B_DALITZ.pl
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Size
6 KB
Referenced Files
None
Subscribers
None
B3B_DALITZ.pl
View Options
#!/usr/local/bin/perl
# Project: BaBar detector at the SLAC PEP-II B-factory
# Package: EvtGen
# File: $Id: B3B_DALITZ.pl,v 1.1 2002/06/12 05:44:14 dvoretsk Exp $
# Author: Alexei Dvoretskii, dvoretsk@slac.stanford.edu, 2002
# Copyright (C) 2002 Caltech
#
# B0 -> K+ pi- pi0
# B+ -> pi+ pi+ pi-
# B+ -> pi+ pi0 pi0
# B0 -> pi+ pi- pi0
#
# Reference: A. Snyder and H. Quinn [Phys.Rev.D48 (1993) 2139]
#
# This model was implemented in dedicated FORTRAN executables.
# The parameters used are the ones resulting from the ALEPH analysis
# which might be found in CERN-PPE:97013
#
# This script generates decay files for a generic c++ model PTO3P(_CP).
# Strong phase is set to zero and not considered.
use
Getopt
::
Long
;
use
Math
::
Complex
;
# Subroutines
#____________
sub
print_res
{
my
$
rH
=
shift
;
my
$
conj
=
shift
;
my
$
res
=
$$
rH
{
"res"
};
my
$
part
=
$$
rH
{
"part"
};
my
$
m0
=
$$
rH
{
"m0"
};
my
$
g0
=
$$
rH
{
"g0"
};
my
$
c
=
$$
rH
{
"c"
};
my
$
ang
=
$$
rH
{
"ang"
};
my
$
re
=
Re
(
$
c
);
my
$
im
=
Im
(
$
c
);
$
im
=
-
$
im
if
(
$
conj
eq
"yes"
);
print
"RESONANCE\t$res\t$part\t$m0 $g0\n"
;
printf
"CARTESIAN\t%4.4f %4.4f\t$ang\n"
,
$
re
,
$
im
;
print
"TYPE\t\tRBW_KUEHN\n\n"
;
}
sub
print_res_array
{
my
$
rA
=
shift
;
my
$
conj
=
shift
;
for
my
$
i
(
0.
.
$
#
$
rA
)
{
my
$
rH
=
$$
rA
[
$
i
];
print_res
(
$
rH
,
$
conj
);
}
}
sub
print_decay
{
my
$
rH
=
shift
;
my
$
mother
=
$$
rH
{
"mother"
};
my
$
daus
=
$$
rH
{
"daus"
};
my
$
model
=
$$
rH
{
"model"
};
my
$
maxpdf
=
$$
rH
{
"maxpdf"
};
my
$
rA
=
$$
rH
{
"res"
};
print
"Decay $mother\n\n"
;
print
"1.0 $daus $model\n\n"
;
if
(
$
model
eq
"PTO3P_CP"
)
{
print
"dm \n\n"
;
}
print
"MAXPDF $maxpdf\n\n"
;
print_res_array
(
$
rA
,
"no"
);
if
(
$
model
eq
"PTO3P_CP"
)
{
print
"CONJUGATE\n\n"
;
print_res_array
(
$
rA
,
"yes"
);
}
print
";\n"
;
print
"Enddecay\n"
;
print
"End\n"
;
}
# CKM matrix parameters and parameters of the Snyder-Quinn model
#_______________________________________________________________
$
alpha
=
1.365
;
$
beta
=
0.39
;
$
ema
=
cos
(
$
alpha
)
-
i
*
sin
(
$
alpha
);
$
epb
=
cos
(
$
beta
)
+
i
*
sin
(
$
beta
);
$
rho
=
0.
;
$
eta
=
0.5
;
$
c_f
=
sqrt
((
$
rho*
$
rho+
$
eta*
$
eta
)
/
((
1.
-
$
rho
)
*
(
1.
-
$
rho
)
+
$
eta*
$
eta
));
$
tp0
=
1.19
*
$
ema
*
$
c_f
;
$
tm0
=
1.19
*
$
ema
*
$
c_f
;
$
t0m
=
0.8
*
$
ema
*
$
c_f
;
$
t0p
=
0.8
*
$
ema
*
$
c_f
;
$
tpm
=
0.59
*
$
ema
*
$
c_f
;
$
tmp
=
1.08
*
$
ema
*
$
c_f
;
$
p1
=
-
0.02
;
$
p0
=
0.03
;
# B->3pi matrix elements
$
m1
=
$
tp0
+
2
*
$
p1
;
$
m2
=
$
t0p
-
2
*
$
p1
;
$
m3
=
$
tpm
+
$
p1
+
$
p0
;
$
m4
=
$
tmp
-
$
p1
+
$
p0
;
$
m5
=
-
$
tpm
-
$
tmp
+
$
tp0
+
$
t0p
-
2.
*
$
p0
;
$
n1
=
~
$
m1
;
$
n2
=
~
$
m2
;
$
n3
=
~
$
m3
;
$
n4
=
~
$
m4
;
$
n5
=
~
$
m5
;
# rho, rho', rho'' Fractions
$
b
=
-
0.229
;
$
g
=
0.075
;
# B0->Kpipi matrix elements
$
m_kstm
=
0.22
*
$
ema
-
1.2
*
$
epb
;
$
m_kst0
=
0.015
*
$
ema
+
0.850
*
$
epb
;
$
m_rho
=
0.13
*
$
ema
+
0.16
*
$
epb
;
# masses
$
mrho
=
0.7734
;
$
grho
=
0.1477
;
$
mrhop
=
1.465
;
$
grhop
=
0.696
;
$
mrhopp
=
1.760
;
$
grhopp
=
0.215
;
# Data structure for resonances
#______________________________
%r11 = ( res => "AC", part => "K*-", m0 => 0.89, g0 => 0.0498, c => $m_kstm, ang => "AB" );
%r12 = ( res => "AB", part => "anti-K*0", m0 => 0.8961, g0 => 0.0505, c => $m_kst0, ang => "AC" );
%r13 = ( res => "BC", part => "rho+", m0 => 0.770, g0 => 0.150, c => $m_rho, ang => "AB" );
@r1
=
(
\
%r11, \%r12, \%r13 );
%h1 = ( mother => "B0", daus => "K+ pi- pi0", model => "PTO3P", res => \@r1, maxpdf => 520. );
%r211 = ( res => "AC", part => "rho0", m0 => $mrho, g0 => $grho, c => $m2/(1.+$b+$g), ang => "BC" );
%r212 = ( res => "AC", part => "rho(2S)0", m0 => $mrhop, g0 => $grhop, c => $m2*$b/(1.+$b+$g), ang => "BC" );
%r213 = ( res => "AC", part => "rho(3S)0", m0 => $mrhopp, g0 => $grhopp, c => $m2*$g/(1.+$b+$g), ang => "BC" );
%r221 = ( res => "BC", part => "rho0", m0 => $mrho, g0 => $grho, c => $m2/(1.+$b+$g), ang => "AC" );
%r222 = ( res => "BC", part => "rho(2S)0", m0 => $mrhop, g0 => $grhop, c => $m2*$b/(1.+$b+$g), ang => "AC" );
%r223 = ( res => "BC", part => "rho(3S)0", m0 => $mrhopp, g0 => $grhopp, c => $m2*$g/(1.+$b+$g), ang => "AC" );
@r2
=
(
\
%r211, \%r212, \%r213, \%r221, \%r222, \%r223 );
%h2 = ( mother => "B+", daus => "pi+ pi+ pi-", model => "PTO3P", res => \@r2, maxpdf => 7.5 );
%r311 = ( res => "AB", part => "rho+", m0 => $mrho, g0 => $grho, c => $m1/(1.+$b+$g), ang => "AC" );
%r312 = ( res => "AB", part => "rho(2S)+", m0 => $mrhop, g0 => $grhop, c => $m1*$b/(1.+$b+$g), ang => "AC" );
%r313 = ( res => "AB", part => "rho(3S)+", m0 => $mrhopp, g0 => $grhopp, c => $m1*$g/(1.+$b+$g), ang => "AC" );
%r321 = ( res => "AC", part => "rho+", m0 => $mrho, g0 => $grho, c => $m1/(1.+$b+$g), ang => "AB" );
%r322 = ( res => "AC", part => "rho(2S)+", m0 => $mrhop, g0 => $grhop, c => $m1*$b/(1.+$b+$g), ang => "AB" );
%r323 = ( res => "AC", part => "rho(3S)+", m0 => $mrhopp, g0 => $grhopp, c => $m1*$g/(1.+$b+$g), ang => "AB" );
@r3
=
(
\
%r311, \%r312, \%r313, \%r321, \%r322, \%r323 );
%h3 = ( mother => "B+", daus => "pi+ pi0 pi0", model => "PTO3P", res => \@r3, maxpdf => 15.0 );
%r411 = ( res => "AC", part => "rho+", m0 => $mrho, g0 => $grho, c => $m3/(1.+$b+$g), ang => "AB" );
%r412 = ( res => "AC", part => "rho(2S)+", m0 => $mrhop, g0 => $grhop, c => $m3*$b/(1.+$b+$g), ang => "AB" );
%r413 = ( res => "AC", part => "rho(3S)+", m0 => $mrhopp, g0 => $grhopp, c => $m3*$g/(1.+$b+$g), ang => "AB" );
%r421 = ( res => "BC", part => "rho-", m0 => $mrho, g0 => $grho, c => $m4/(1.+$b+$g), ang => "AC" );
%r422 = ( res => "BC", part => "rho(2S)-", m0 => $mrhop, g0 => $grhop, c => $m4*$b/(1.+$b+$g), ang => "AC" );
%r423 = ( res => "BC", part => "rho(3S)-", m0 => $mrhopp, g0 => $grhopp, c => $m4*$g/(1.+$b+$g), ang => "AC" );
%r431 = ( res => "AB", part => "rho0", m0 => $mrho, g0 => $grho, c => $m5/(1.+$b+$g), ang => "AC" );
%r432 = ( res => "AB", part => "rho(2S)0", m0 => $mrhop, g0 => $grhop, c => $m5*$b/(1.+$b+$g), ang => "AC" );
%r433 = ( res => "AB", part => "rho(3S)0", m0 => $mrhopp, g0 => $grhopp, c => $m5*$g/(1.+$b+$g), ang => "AC" );
@r4
=
(
\
%r411, \%r412, \%r413, \%r421, \%r422, \%r423, \%r431, \%r432, \%r433);
%h4 = ( mother => "B0", daus => "pi+ pi- pi0", model => "PTO3P_CP", res => \@r4, maxpdf => 17.9 );
# Get command line options and
# print a decay file
my
$
i
;
my
$
result
=
GetOptions
(
'n=i'
=>
\
$
i
);
if
(
$
i
==
1
)
{
print_decay
(
\
%h1); break; }
elsif
(
$
i
==
2
)
{
print_decay
(
\
%h2); break; }
elsif
(
$
i
==
3
)
{
print_decay
(
\
%h3); break; }
elsif
(
$
i
==
4
)
{
print_decay
(
\
%h4); break; }
else
{
print
"Usage: evt_bdalitz.pl -n <Decay Number>\n"
;
}
File Metadata
Details
Attached
Mime Type
text/x-perl
Expires
Tue, Sep 30, 4:44 AM (1 d, 12 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
6494701
Default Alt Text
B3B_DALITZ.pl (6 KB)
Attached To
Mode
rEVTGEN evtgen
Attached
Detach File
Event Timeline
Log In to Comment