Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
C
cbmroot
Manage
Activity
Members
Labels
Plan
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Iouri Vassiliev
cbmroot
Commits
d87d6f4b
Commit
d87d6f4b
authored
4 months ago
by
Iouri Vassiliev
Browse files
Options
Downloads
Patches
Plain Diff
Add Hypernuclei and Open Charm decay
parent
119d9884
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
sim/transport/steer/CbmTransport.cxx
+372
-2
372 additions, 2 deletions
sim/transport/steer/CbmTransport.cxx
with
372 additions
and
2 deletions
sim/transport/steer/CbmTransport.cxx
+
372
−
2
View file @
d87d6f4b
...
@@ -369,7 +369,7 @@ void CbmTransport::RegisterIons()
...
@@ -369,7 +369,7 @@ void CbmTransport::RegisterIons()
stable
=
kTRUE
;
stable
=
kTRUE
;
charge
=
2.
;
charge
=
2.
;
pdgdb
->
AddParticle
(
name
,
name
,
mass
,
stable
,
0.
,
charge
,
"Ion"
,
code
);
pdgdb
->
AddParticle
(
name
,
name
,
mass
,
stable
,
0.
,
charge
,
"Ion"
,
code
);
pdgdb
->
AddAntiParticle
(
"He
3
-"
,
-
1
*
code
);
pdgdb
->
AddAntiParticle
(
"He
4
-"
,
-
1
*
code
);
}
}
// --------------------------------------------------------------------------
// --------------------------------------------------------------------------
...
@@ -394,7 +394,7 @@ void CbmTransport::PiAndEtaDecay(TVirtualMC* vmc)
...
@@ -394,7 +394,7 @@ void CbmTransport::PiAndEtaDecay(TVirtualMC* vmc)
{
{
assert
(
vmc
);
assert
(
vmc
);
LOG
(
info
)
<<
GetName
()
<<
": Set decay modes for pi0
and eta
"
;
LOG
(
info
)
<<
GetName
()
<<
": Set decay modes for pi0
, eta, Hypernuclei and Open Charm
"
;
if
(
fEngine
==
kGeant4
)
{
if
(
fEngine
==
kGeant4
)
{
std
::
cout
<<
std
::
endl
<<
std
::
endl
;
std
::
cout
<<
std
::
endl
<<
std
::
endl
;
...
@@ -407,6 +407,376 @@ void CbmTransport::PiAndEtaDecay(TVirtualMC* vmc)
...
@@ -407,6 +407,376 @@ void CbmTransport::PiAndEtaDecay(TVirtualMC* vmc)
std
::
cout
<<
std
::
endl
<<
std
::
endl
;
std
::
cout
<<
std
::
endl
<<
std
::
endl
;
return
;
return
;
}
}
Double_t
lifetime
=
1.85e-10
;
// lifetime 3HL
Double_t
mass
=
2.99339
;
Int_t
PDG
=
3004
;
Double_t
charge
=
1.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"H3L"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
Int_t
mode
[
6
][
3
];
Float_t
bratio
[
6
];
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
1000020030
;
//3He
mode
[
0
][
1
]
=
-
211
;
//pi-
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
2.632e-10
;
// lifetime NL
mass
=
2.046
;
PDG
=
3003
;
charge
=
0.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"LambdaN"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
1000010020
;
//d
mode
[
0
][
1
]
=
-
211
;
//pi-
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
1.80e-10
;
// lifetime 4HL
mass
=
3.92975
;
PDG
=
3005
;
charge
=
1.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"H4L"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
1000020040
;
//4He
mode
[
0
][
1
]
=
-
211
;
//pi-
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
1.50e-10
;
// lifetime 4HeL
mass
=
3.93070
;
PDG
=
3006
;
charge
=
2.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"He4L"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
1000020030
;
//3He
mode
[
0
][
1
]
=
2212
;
//proton
mode
[
0
][
2
]
=
-
211
;
//pi-
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
1.85e-10
;
// lifetime 3HL->d p pi
mass
=
2.99339
;
PDG
=
3012
;
charge
=
1.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"H3L_{dppi}"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
1000010020
;
//d
mode
[
0
][
1
]
=
2212
;
//proton
mode
[
0
][
2
]
=
-
211
;
//pi-
// mode[0][0] = 3003; //LambdaN
// mode[0][1] = 2212; //proton
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
2.632e-10
;
// lifetime 5HeL->4He p pi
mass
=
4.8393
;
PDG
=
3007
;
charge
=
2.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"He5L"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
1000020040
;
//4He
mode
[
0
][
1
]
=
2212
;
//proton
mode
[
0
][
2
]
=
-
211
;
//pi-
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
2.632e-10
;
// lifetime 4HLL_2body
mass
=
4.10791
;
PDG
=
3008
;
charge
=
1.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"H4LL_{He4Lpi-}"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
3006
;
//4HeL
mode
[
0
][
1
]
=
-
211
;
//pi-
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
2.632e-10
;
// lifetime 4HLL_3body
mass
=
4.10791
;
PDG
=
3009
;
charge
=
1.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"H4LL_{H3Lppi-}"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
3004
;
//3HL
mode
[
0
][
1
]
=
2212
;
//p
mode
[
0
][
2
]
=
-
211
;
//pi-
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
2.632e-10
;
// lifetime 5HLL
mass
=
5.04748
;
PDG
=
3010
;
charge
=
1.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"H5LL_{He5Lpi-}"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
3007
;
//5HeL
mode
[
0
][
1
]
=
-
211
;
//pi-
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
2.632e-10
;
// lifetime 6HeLL
mass
=
5.98575
;
PDG
=
3011
;
charge
=
2.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"He6LL"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
3007
;
//5HeL
mode
[
0
][
1
]
=
2212
;
//proton
mode
[
0
][
2
]
=
-
211
;
//pi-
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
// charm **********************************************************************************************************************
lifetime
=
4.1e-13
;
// lifetime D0 -> K- pi
mass
=
1.86486
;
PDG
=
421
;
charge
=
0.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"D0"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
-
321
;
//K-
mode
[
0
][
1
]
=
211
;
//pi+
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
4.1e-13
;
// lifetime D0b -> K+ pi-
mass
=
1.86486
;
PDG
=
-
421
;
charge
=
0.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"D0b"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
321
;
//K+
mode
[
0
][
1
]
=
-
211
;
//pi-
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
2.0e-13
;
// lifetime Lc -> p K- pi+
mass
=
2.28646
;
PDG
=
4122
;
charge
=
1.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"Lc"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
2212
;
//p
mode
[
0
][
1
]
=
-
321
;
//K-
mode
[
0
][
2
]
=
211
;
//pi+
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
1.04e-12
;
// lifetime D+ -> K- pi pi
mass
=
1.86962
;
PDG
=
411
;
charge
=
1.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"D+"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
-
321
;
//K-
mode
[
0
][
1
]
=
211
;
//pi+
mode
[
0
][
2
]
=
211
;
//pi+
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
1.04e-12
;
// lifetime D- -> K pi- pi-
mass
=
1.86962
;
PDG
=
-
411
;
charge
=
1.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"D-"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
321
;
//K+
mode
[
0
][
1
]
=
-
211
;
//pi-
mode
[
0
][
2
]
=
-
211
;
//pi-
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
5.0e-13
;
// lifetime Ds+ -> K- K+ pi+
mass
=
1.96850
;
PDG
=
431
;
charge
=
1.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"Ds+"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
-
321
;
//K-
mode
[
0
][
1
]
=
321
;
//K+
mode
[
0
][
2
]
=
211
;
//pi+
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
lifetime
=
5.0e-13
;
// lifetime Ds- -> K- K+ pi-
mass
=
1.96850
;
PDG
=
-
431
;
charge
=
1.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"Ds-"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
-
321
;
//K-
mode
[
0
][
1
]
=
321
;
//K+
mode
[
0
][
2
]
=
-
211
;
//pi-
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
// end charm **********************************************************************************************************************
lifetime
=
1.55e-22
;
// lifetime 5HeD->4He K pi- pi-
mass
=
5.5809994
;
PDG
=
4006
;
charge
=
1.
;
TVirtualMC
::
GetMC
()
->
DefineParticle
(
PDG
,
"He5D"
,
kPTHadron
,
mass
,
charge
,
lifetime
,
"hadron"
,
0.0
,
1
,
1
,
0
,
1
,
1
,
0
,
0
,
1
,
kFALSE
);
for
(
Int_t
kz
=
0
;
kz
<
6
;
kz
++
)
{
bratio
[
kz
]
=
0.
;
mode
[
kz
][
0
]
=
0
;
mode
[
kz
][
1
]
=
0
;
mode
[
kz
][
2
]
=
0
;
}
bratio
[
0
]
=
100.
;
mode
[
0
][
0
]
=
1000020040
;
//4He
mode
[
0
][
1
]
=
-
411
;
//D-
TVirtualMC
::
GetMC
()
->
SetDecayMode
(
PDG
,
bratio
,
mode
);
TGeant3
*
gMC3
=
static_cast
<
TGeant3
*>
(
vmc
);
TGeant3
*
gMC3
=
static_cast
<
TGeant3
*>
(
vmc
);
assert
(
vmc
);
assert
(
vmc
);
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment