#include <Concentrations.h>

Inheritance diagram for Concentrations:

Container for Concentrations data. More...

Public Types

typedef std::shared_ptr< ConcentrationsSP
 
typedef std::shared_ptr< const ConcentrationsSCP
 

Public Member Functions

 Concentrations ()
 default constructor (default MOLE units, 0.0 cm^3 volume) More...
 
 Concentrations (ConcentrationUnit units)
 constructor with units (1.0 cm^3 volume) More...
 
 Concentrations (NuclideSet nucset)
 
std::string to_string () const
 
Scale::Json::Value to_json () const
 
const NuclideSetnuclide_set () const
 return a const reference to nuclide_set More...
 
SCP_NuclideSet scp_nuclide_set () const
 return a shared (read-only) nuclide_set pointer More...
 
bool has_nuclide_set () const
 return whether the class has a non-null nuclide_set More...
 
void set_nuclide_set (const NuclideSet &)
 set the nuclide_set (copy operation) More...
 
void get_nuclide_set (NuclideSet &) const
 populate an existing NuclideSet with a copy of nuclide_set More...
 
void manageptr_nuclide_set (NuclideSet *&)
 set the nuclide_set (ownership transfer) More...
 
void getptr_nuclide_set (NuclideSet const *&) const
 retrieve pointer (read-only) to nuclide_set More...
 
size_t total_nuclides () const
 
void set_vals (double)
 
SCP_Vec_Dbl scp_vals () const
 return a shared (read-only) vals pointer More...
 
const Vec_Dblvals () const
 return a const reference to vals More...
 
double const * vals_array () const
 return view of vals vector More...
 
size_t vals_size () const
 return size of vals vector More...
 
bool has_vals () const
 return whether the class has a non-null vals More...
 
void set_vals (const Vec_Dbl &)
 set the vals (copy operation) More...
 
void get_vals (Vec_Dbl &) const
 populate an existing Vec_Dbl with a copy of vals More...
 
void manageptr_vals (Vec_Dbl *&)
 set the vals (ownership transfer) More...
 
void getptr_vals (Vec_Dbl const *&) const
 retrieve pointer (read-only) to vals More...
 
void get_vals_array (size_t, double *) const
 get array of vals vector (Fortran) More...
 
void set_vals_array (size_t, double *)
 set vals vector from array (Fortran) More...
 
double vals_at (size_t) const
 get element of vals vector by index More...
 
double lookup_val (int id, double not_found=BAD_DOUBLE) const
 
bool match (const Concentrations &b) const
 
bool approx_eq (const Concentrations &b, double tol=1e-12) const
 
bool set_units (ConcentrationUnit)
 
ConcentrationUnit units () const
 
bool convert_units (ConcentrationUnit, Vec_Dbl *) const
 
bool convert_units (ConcentrationUnit, double volume, Vec_Dbl *) const
 
void set_volume (double)
 set the scalar volume More...
 
double volume () const
 return the scalar volume More...
 
void get_volume (double &) const
 
void scale (double wt)
 
double sum () const
 
double sum_hm (int min_z=90, double *total_hm=nullptr) const
 
void normalize (double target_total=1.0)
 
void normalize_hm (double target_hm_total=1.0, int min_z=90)
 
void accumulate (const Vec_Dbl &vals, double wt=1.0)
 
void accumulate (size_t n, const double *vals, double wt=1.0)
 
bool accumulate_concs (const Vec_Int &ids, const Vec_Dbl &vals, double wt=1.0)
 
bool accumulate_concs (size_t, const int *, const double *, double wt=1.0)
 
bool accumulate_concs (const Concentrations &, double wt=1.0)
 
bool set_concs (const Vec_Int &ids, const Vec_Dbl &vals, double wt=1.0)
 
bool set_concs (size_t, const int *, const double *, double wt=1.0)
 
bool set_concs (const Concentrations &, double wt=1.0)
 
SCP_NuclideResource nuclide_resource () const
 return shared (read-only) nuclide_resource resource \ More...
 
bool has_nuclide_resource () const
 whether this instantiation of class has the nuclide_resource resource \ More...
 
void set_nuclide_resource (SCP_NuclideResource)
 set a new shared (read-only) nuclide_resource resource (non-const version) \ More...
 
SCP_DecayResource decay_resource () const
 return shared (read-only) decay_resource resource \ More...
 
bool has_decay_resource () const
 whether this instantiation of class has the decay_resource resource \ More...
 
void set_decay_resource (SCP_DecayResource)
 set a new shared (read-only) decay_resource resource (non-const version) \ More...
 
virtual int serialize (Standard::AbstractStream *stream) const
 
virtual int deserialize (Standard::AbstractStream *stream)
 
virtual unsigned long getSerializedSize () const
 
virtual ConcentrationsgetCopy () const
 
virtual long getUID () const
 
virtual std::string toString () const
 

Static Public Member Functions

static bool match (const Concentrations &a, const Concentrations &b)
 

Static Public Attributes

static const long uid = 0x96425654f6b06c5d
 

Protected Member Functions

bool isEqualConcentrations (const Concentrations &a) const
 
virtual bool isEqual (const Standard::Serializable &b) const
 
void canonicalize_vals ()
 
void canonicalize_nuclide_set ()
 

Protected Attributes

ConcentrationUnit b_units
 
SP_NuclideSet b_nuclide_set
 
SP_Vec_Dbl b_vals
 
double b_volume
 
SCP_NuclideResource r_nuclide_resource
 
SCP_DecayResource r_decay_resource
 

Friends

class ScaleUtils::IO::Accessor< Concentrations >
 
class State
 
class StateSet
 

Detailed Description

Container for Concentrations data.

The conc data container manages a set of nuclide ids and their respective values in a given set of units.

Examples:
tstConcentrations.cpp, tstState.cpp, and tstStateSet.cpp.

Member Typedef Documentation

typedef std::shared_ptr<Concentrations> SP
typedef std::shared_ptr<const Concentrations> SCP

Constructor & Destructor Documentation

default constructor (default MOLE units, 0.0 cm^3 volume)

Referenced by Concentrations::getCopy().

constructor with units (1.0 cm^3 volume)

constructor with nuclide set (default MOLE units, 1.0 cm^3 volume) this constructor will let you pass a nuclide set where a concentrations

Member Function Documentation

std::string to_string ( ) const
const NuclideSet & nuclide_set ( ) const

return a const reference to nuclide_set

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

Invalid if this instance of Concentrations goes out of scope.

Examples:
tstConcentrations.cpp, and tstStateSet.cpp.

Referenced by Concentrations::accumulate_concs(), Origen::diffConcentrations(), Material::get_concs_at(), Material::set_concs_at(), TEST(), timing_ref(), timing_ref_at(), StateSetIO_s62b::write(), and StateSetIO_bof::write().

SCP_NuclideSet scp_nuclide_set ( ) const

return a shared (read-only) nuclide_set pointer

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

Referenced by Origen::printConcentrations_csv().

bool has_nuclide_set ( ) const

return whether the class has a non-null nuclide_set

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

Referenced by Concentrations::total_nuclides().

void set_nuclide_set ( const NuclideSet nuclide_set)

set the nuclide_set (copy operation)

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

Examples:
tstConcentrations.cpp, and tstStateSet.cpp.

Referenced by FakeFactory::newspStateSet_10nuclide(), StateSetIO_s62b::read(), Origen::saveStateSet(), FakeFactory::StateSet_random1(), and TEST().

void get_nuclide_set ( NuclideSet nuclide_set) const

populate an existing NuclideSet with a copy of nuclide_set

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

void manageptr_nuclide_set ( NuclideSet *&  nuclide_set)

set the nuclide_set (ownership transfer)

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

void getptr_nuclide_set ( NuclideSet const *&  nuclide_set) const

retrieve pointer (read-only) to nuclide_set

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

SCP_Vec_Dbl scp_vals ( ) const

return a shared (read-only) vals pointer

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

Referenced by TEST().

const Vec_Dbl & vals ( ) const

return a const reference to vals

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

Invalid if this instance of Concentrations goes out of scope.

Examples:
tstConcentrations.cpp, and tstStateSet.cpp.

Referenced by Concentrations::accumulate_concs(), Origen::printConcentrations_csv(), Concentrations::scale(), Concentrations::set_units(), TEST(), timing_ref(), timing_ref_at(), and StateSetIO_bof::write().

Vec_Dbl::value_type const * vals_array ( ) const

return view of vals vector

Auto-generated from macro #ORIGEN_ACCESSORS_SP_VECTOR().

Referenced by StateSetIO_s62b::write().

size_t vals_size ( ) const

return size of vals vector

Auto-generated from macro #ORIGEN_ACCESSORS_SP_VECTOR().

Referenced by Concentrations::accumulate_concs(), and Concentrations::approx_eq().

bool has_vals ( ) const

return whether the class has a non-null vals

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

void set_vals ( const Vec_Dbl vals)

set the vals (copy operation)

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

void get_vals ( Vec_Dbl vals) const

populate an existing Vec_Dbl with a copy of vals

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

Examples:
tstStateSet.cpp.

Referenced by Origen::diffConcentrations(), and TEST().

void manageptr_vals ( Vec_Dbl *&  vals)

set the vals (ownership transfer)

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

void getptr_vals ( Vec_Dbl const *&  vals) const

retrieve pointer (read-only) to vals

Auto-generated from macro #ORIGEN_ACCESSORS_SP_OBJECT().

void get_vals_array ( size_t  ,
double *   
) const

get array of vals vector (Fortran)

void set_vals_array ( size_t  ,
double *   
)

set vals vector from array (Fortran)

Auto-generated from macro #ORIGEN_ACCESSORS_SP_VECTOR().

Vec_Dbl::value_type vals_at ( size_t  i) const

get element of vals vector by index

Auto-generated from macro #ORIGEN_ACCESSORS_SP_VECTOR().

Examples:
tstConcentrations.cpp, tstState.cpp, and tstStateSet.cpp.

Referenced by TEST(), and Origen::test::TEST().

double lookup_val ( int  id,
double  not_found = BAD_DOUBLE 
) const
bool match ( const Concentrations b) const
bool approx_eq ( const Concentrations b,
double  tol = 1e-12 
) const
void set_volume ( double  scalar)

set the scalar volume

Auto-generated from macro \ #ORIGEN_ACCESSORS_SCALAR().

Examples:
tstConcentrations.cpp, and tstState.cpp.

Referenced by Material::get_concs_at(), Concentrations::set_concs(), and TEST().

double volume ( ) const

return the scalar volume

Auto-generated from macro \ #ORIGEN_ACCESSORS_SCALAR().

Examples:
tstState.cpp.

Referenced by Concentrations::accumulate_concs(), Origen::printConcentrations_csv(), TEST(), and StateSetIO_bof::write().

void get_volume ( double &  ) const
void scale ( double  wt)
double sum ( ) const
double sum_hm ( int  min_z = 90,
double *  total_hm = nullptr 
) const
void normalize ( double  target_total = 1.0)
void normalize_hm ( double  target_hm_total = 1.0,
int  min_z = 90 
)
void accumulate ( const Vec_Dbl vals,
double  wt = 1.0 
)
void accumulate ( size_t  n,
const double *  vals,
double  wt = 1.0 
)
bool accumulate_concs ( const Vec_Int ids,
const Vec_Dbl vals,
double  wt = 1.0 
)
bool accumulate_concs ( size_t  ,
const int *  ,
const double *  ,
double  wt = 1.0 
)
bool set_concs ( const Vec_Int ids,
const Vec_Dbl vals,
double  wt = 1.0 
)
bool set_concs ( size_t  ,
const int *  ,
const double *  ,
double  wt = 1.0 
)
bool set_concs ( const Concentrations concs,
double  wt = 1.0 
)
SCP_NuclideResource nuclide_resource ( ) const

return shared (read-only) nuclide_resource resource \

Auto-generated from macro \ #ORIGEN_ACCESSORS_SCP_RESOURCE().

bool has_nuclide_resource ( ) const

whether this instantiation of class has the nuclide_resource resource \

Auto-generated from macro #ORIGEN_ACCESSORS_SCP_RESOURCE().

void set_nuclide_resource ( SCP_NuclideResource  nuclide_resource)

set a new shared (read-only) nuclide_resource resource (non-const version) \

Auto-generated from macro #ORIGEN_ACCESSORS_SCP_RESOURCE().

Examples:
tstConcentrations.cpp.

Referenced by TEST().

SCP_DecayResource decay_resource ( ) const

return shared (read-only) decay_resource resource \

Auto-generated from macro \ #ORIGEN_ACCESSORS_SCP_RESOURCE().

bool has_decay_resource ( ) const

whether this instantiation of class has the decay_resource resource \

Auto-generated from macro #ORIGEN_ACCESSORS_SCP_RESOURCE().

void set_decay_resource ( SCP_DecayResource  decay_resource)

set a new shared (read-only) decay_resource resource (non-const version) \

Auto-generated from macro #ORIGEN_ACCESSORS_SCP_RESOURCE().

Referenced by Origen::printConcentrations_csv().

int serialize ( Standard::AbstractStream *  stream) const
virtual
unsigned long getSerializedSize ( ) const
virtual
Concentrations * getCopy ( ) const
virtual
long getUID ( ) const
virtual

References Concentrations::uid.

std::string toString ( ) const
virtual
bool isEqualConcentrations ( const Concentrations a) const
protected
bool isEqual ( const Standard::Serializable &  b) const
protectedvirtual
void canonicalize_vals ( )
protected
void canonicalize_nuclide_set ( )
protected

Friends And Related Function Documentation

friend class ScaleUtils::IO::Accessor< Concentrations >
friend
friend class State
friend
friend class StateSet
friend

Member Data Documentation

const Standard::Serializable::UID uid = 0x96425654f6b06c5d
static

Referenced by Concentrations::getUID().

SCP_NuclideResource r_nuclide_resource
protected
SCP_DecayResource r_decay_resource
protected

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