PYTHIA  8.312
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
GaussianModel Class Reference

A Gaussian distribution for light nuclei. More...

#include <HINucleusModel.h>

Inheritance diagram for GaussianModel:
HardCoreModel NucleusModel

Public Member Functions

 GaussianModel ()
 Default constructor.
 
virtual ~GaussianModel ()
 Destructor.
 
virtual bool init () override
 A Gaussian distribution for light nuclei. More...
 
virtual vector< Nucleongenerate () const override
 Generate all the nucleons. More...
 
- Public Member Functions inherited from HardCoreModel
 HardCoreModel ()
 Default constructor.
 
virtual ~HardCoreModel ()
 Virtual destructor.
 
void initHardCore ()
 HardCoreModel is a base class for models implementing a hard core. More...
 
double rSample () const
 
- 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

virtual Vec4 generateNucleon () const
 Generate the position of a single nucleon. More...
 

Protected Attributes

double nucleusChR
 Nucleus charge radius.
 
- Protected Attributes inherited from HardCoreModel
bool useHardCore
 Use the hard core or not.
 
bool gaussHardCore
 Use a Gaussian hard core.
 
double hardCoreRadius
 The radius or width of the hard core.
 
- 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.
 
InfoinfoPtr
 Pointers to useful objects.
 
SettingssettingsPtr
 
RndmrndmPtr
 
LoggerloggerPtr
 

Additional Inherited Members

- Static Public Member Functions inherited from NucleusModel
static shared_ptr< NucleusModelcreate (int model)
 NucleusModel base class.
 

Detailed Description

A Gaussian distribution for light nuclei.

Member Function Documentation

vector< Nucleon > generate ( ) const
overridevirtual

Generate all the nucleons.

Generate a vector of nucleons according to the implemented model for a nucleus given by the PDG number.

Implements NucleusModel.

Vec4 generateNucleon ( ) const
protectedvirtual

Generate the position of a single nucleon.

Generate the position of a single nucleon. (The time component is always zero).

bool init ( )
overridevirtual

A Gaussian distribution for light nuclei.

Initialize parameters.

Initialize hard core.

A single parameter.

Reimplemented from NucleusModel.


The documentation for this class was generated from the following files: