PYTHIA
8.312
|
The Hulthen potential for deuterons. More...
#include <HINucleusModel.h>
Public Member Functions | |
HulthenModel () | |
Default constructor. | |
virtual | ~HulthenModel () |
Virtual destructor. | |
virtual bool | init () override |
The Hulthen model for deuterons. More... | |
virtual vector< Nucleon > | generate () const override |
Generate a vector of nucleons according to the Hulthen potential. More... | |
Public Member Functions inherited from NucleusModel | |
NucleusModel () | |
virtual | ~NucleusModel () |
Virtual destructor. | |
void | initPtr (int idIn, bool isProjIn, Info &infoIn) |
Init method. More... | |
void | setParticle (int idIn) |
Set the particle id of the produced nucleus. More... | |
virtual void | setPN (const Vec4 &pNIn) |
Set (new) nucleon momentum. | |
virtual Particle | produceIon () |
Produce an instance of the incoming nucleon. More... | |
int | id () const |
Accessor functions. | |
int | I () const |
int | A () const |
int | Z () const |
int | L () const |
double | R () const |
Protected Member Functions | |
double | rho (double r) const |
The (normalized) density function. | |
Protected Attributes | |
double | hA |
Parameters of the Hulthen model. | |
double | hB |
Protected Attributes inherited from NucleusModel | |
bool | isProj |
Projectile or target. | |
int | idSave |
The nucleus. | |
int | ISave |
Cache information about the nucleus. | |
int | ASave |
int | ZSave |
int | LSave |
double | RSave |
The estimate of the nucleus radius. | |
double | mSave {} |
The mass of the nucleus and its nucleons. | |
Vec4 | pNSave {} |
The nucleon beam momentum. | |
Info * | infoPtr |
Pointers to useful objects. | |
Settings * | settingsPtr |
Rndm * | rndmPtr |
Logger * | loggerPtr |
Additional Inherited Members | |
Static Public Member Functions inherited from NucleusModel | |
static shared_ptr< NucleusModel > | create (int model) |
NucleusModel base class. | |
The Hulthen potential for deuterons.
|
overridevirtual |
Generate a vector of nucleons according to the Hulthen potential.
Generate all the nucleons.
Put one at (0,0,0).
Find the distance between the nucleons.
Add the other one on a sphere around the first one.
Add them to the vector.
Implements NucleusModel.
|
overridevirtual |
The Hulthen model for deuterons.
Initialize parameters.
Note: Hulthen model has no hard core option.
Test that b > a.
Reimplemented from NucleusModel.