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

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

+ Inheritance diagram for trento::MinDistNucleus:
+ Collaboration diagram for trento::MinDistNucleus:

Protected Member Functions

 MinDistNucleus (std::size_t A, double dmin=0)
 
bool is_too_close (const_iterator nucleon) const
 
- Protected Member Functions inherited from trento::Nucleus
 Nucleus (std::size_t A)
 
void set_nucleon_position (iterator nucleon, double x, double y, double z)
 

Private Attributes

const double dminsq_
 Internal storage of squared minimum distance.
 

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
 
- Public Member Functions inherited from trento::Nucleus
virtual ~Nucleus ()=default
 Default virtual destructor for abstract base class.
 
virtual double radius () const =0
 
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
 
- Static Public Member Functions inherited from trento::Nucleus
static NucleusPtr create (const std::string &species, double nucleon_width, double nucleon_dmin=0)
 

Detailed Description

A nucleus that can check if its nucleons are within a specified minimum distance.

Definition at line 180 of file nucleus.h.

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

Constructor & Destructor Documentation

trento::MinDistNucleus::MinDistNucleus ( std::size_t  A,
double  dmin = 0 
)
protected
Parameters
Anumber of nucleons
dminminimum nucleon-nucleon distance (optional, default zero)

Definition at line 165 of file nucleus.cxx.

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

Member Function Documentation

bool trento::MinDistNucleus::is_too_close ( const_iterator  nucleon) const
protected

Check if a Nucleon is too close (within the minimum distance) of any previously placed nucleons. Specifically, check nucleons from begin() up to the given iterator.

Definition at line 170 of file nucleus.cxx.

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

References trento::Nucleus::begin(), dminsq_, dy, dz, and Acts::UnitConstants::e.

Referenced by trento::DeformedWoodsSaxonNucleus::sample_nucleons_impl().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

const double trento::MinDistNucleus::dminsq_
private

Internal storage of squared minimum distance.

Definition at line 195 of file nucleus.h.

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

Referenced by is_too_close().


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