Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
trento::Deuteron Class Reference

#include <JETSCAPE/blob/main/external_packages/trento/src/nucleus.h>

+ Inheritance diagram for trento::Deuteron:
+ Collaboration diagram for trento::Deuteron:

Public Member Functions

 Deuteron (double a=0.457, double b=2.35)
 
virtual double radius () const override
 The radius is computed from the parameters (a, b).
 
- Public Member Functions inherited from trento::Nucleus
virtual ~Nucleus ()=default
 Default virtual destructor for abstract base class.
 
void sample_nucleons (double offset)
 
size_type size () const noexcept
 
iterator begin () noexcept
 
iterator end () noexcept
 
const_iterator begin () const noexcept
 
const_iterator end () const noexcept
 
const_iterator cbegin () const noexcept
 
const_iterator cend () const noexcept
 

Private Member Functions

virtual void sample_nucleons_impl () override
 Sample positions from the Hulthén wavefunction.
 

Private Attributes

const double a_
 Internal storage of wavefunction parameters.
 
const double b_
 

Additional Inherited Members

- Public Types inherited from trento::Nucleus
using size_type = std::vector< Nucleon >::size_type
 
using iterator = std::vector< Nucleon >::iterator
 
using const_iterator = std::vector< Nucleon >::const_iterator
 
- Static Public Member Functions inherited from trento::Nucleus
static NucleusPtr create (const std::string &species, double nucleon_width, double nucleon_dmin=0)
 
- Protected Member Functions inherited from trento::Nucleus
 Nucleus (std::size_t A)
 
void set_nucleon_position (iterator nucleon, double x, double y, double z)
 

Detailed Description

Samples pairs of nucleons from the Hulthén wavefunction

.. math::

f(r) ( {(-ar) - (-br)}{r} )^2.

http://inspirehep.net/record/1261055

Definition at line 161 of file nucleus.h.

View newest version in sPHENIX GitHub at line 161 of file nucleus.h

Constructor & Destructor Documentation

trento::Deuteron::Deuteron ( double  a = 0.457,
double  b = 2.35 
)

Insantiate with values for the (a, b) parameters. The defaults are from the PHOBOS Glauber model.

Definition at line 116 of file nucleus.cxx.

View newest version in sPHENIX GitHub at line 116 of file nucleus.cxx

Member Function Documentation

double trento::Deuteron::radius ( ) const
overridevirtual

The radius is computed from the parameters (a, b).

Implements trento::Nucleus.

Definition at line 122 of file nucleus.cxx.

View newest version in sPHENIX GitHub at line 122 of file nucleus.cxx

References a_.

void trento::Deuteron::sample_nucleons_impl ( )
overrideprivatevirtual

Sample positions from the Hulthén wavefunction.

Implements trento::Nucleus.

Definition at line 128 of file nucleus.cxx.

View newest version in sPHENIX GitHub at line 128 of file nucleus.cxx

References a_, b_, trento::Nucleus::begin(), trento::random::cos_theta(), next, ActsTests::PropagationDatasets::phi, physmon_track_finding_ttbar::r, trento::Nucleus::set_nucleon_position(), physmon_ckf_tracking::u, ambiguity_solver_full_chain::x, y, and physmon_track_finding_ttbar::z.

+ Here is the call graph for this function:

Member Data Documentation

const double trento::Deuteron::a_
private

Internal storage of wavefunction parameters.

Definition at line 175 of file nucleus.h.

View newest version in sPHENIX GitHub at line 175 of file nucleus.h

Referenced by radius(), and sample_nucleons_impl().

const double trento::Deuteron::b_
private

Definition at line 175 of file nucleus.h.

View newest version in sPHENIX GitHub at line 175 of file nucleus.h

Referenced by sample_nucleons_impl().


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