#include <Nuclide.h>

Inheritance diagram for Nuclide:
Checkable Nuclide_Gen

Defines the nuclide interface for the TransitionSystem. More...

Public Types

typedef SP_Nuclide SP
 strong pointer More...
 
typedef WP_Nuclide WP
 weak pointer More...
 
typedef CWP_Nuclide CWP
 const weak pointer More...
 

INTERFACE<<Origen::Checkable>>

See Origen::Checkable for details.

std::string name () const
 
void get_name (std::string &name) const
 
void set_name (std::string name)
 
int id () const
 
void get_id (int &id) const
 
void set_id (int id)
 
bool has_initialized_id () const
 
std::string to_string () const
 
bool good () const
 
bool good (Vec_Str &errors) const
 
bool is_initialized () const
 
Scale::Json::Value to_json () const
 

INTERFACE<<Origen::Nuclide>>

See Origen::Nuclide for details.

std::vector< WP_Transitiongains () const
 Return a vector of gains producing the nuclide. More...
 
void get_gains (std::vector< WP_Transition > &gains) const
 Get a vector of gains producing the nuclide. More...
 
void set_gains (std::vector< WP_Transition > gains)
 Set the gains producing the nuclide. More...
 
void append_gain (WP_Transition gain)
 Append gain to list of gains. More...
 
void clear_gains ()
 
WP_Transition gain (int channel_id, int parent_id) const
 retrieve a gain More...
 
int num_gains () const
 Get the number of gains producing the nuclide. More...
 
std::vector< SP_Channellosses () const
 Return a vector of losses destroying the nuclide. More...
 
void get_losses (std::vector< SP_Channel > &losses) const
 Get a vector of losses destroying the nuclide. More...
 
void set_losses (std::vector< SP_Channel > losses)
 Set the losses destroying the nuclide. More...
 
SP_Channel loss (int channel_id) const
 return loss channel More...
 
void get_loss (int channel_id, SP_Channel &loss) const
 retrieve loss channel More...
 
void set_loss (SP_Channel loss)
 
SP_Channel add_loss (SP_ChannelType channel_type)
 add a new loss channel to the nuclide by specifying ChannelType More...
 
SP_Channel add_loss (int field_id, int reaction_mt, int decay_mode=0)
 add a new loss channel by specifying raw ids More...
 
SP_Channel add_loss (SP_Field field, int reaction_mt, int decay_mode=0)
 add a new loss channel with Field and raw ids More...
 
SP_Channel add_loss (int decay_mode)
 add a decay loss More...
 
int num_losses () const
 Get the number of losses destroying the nuclide. More...
 
CWP_TransitionSystem system () const
 
void get_system (WP_TransitionSystem &system) const
 
void set_system (WP_TransitionSystem system)
 
bool has_initialized_system () const
 
int isomeric_state () const
 
void get_isomeric_state (int &isomeric_state) const
 
void set_isomeric_state (int isomeric_state)
 
SP_Species species () const
 
void get_species (SP_Species &species) const
 
void set_species (SP_Species species)
 
bool has_initialized_species () const
 
double num () const
 
void get_num (double &num) const
 
void set_num (double num)
 
double decay_constant () const
 Return the decay constant. More...
 
double loss_xs () const
 

Public Member Functions

virtual ~Nuclide ()
 Destructor. More...
 

Protected Member Functions

 Nuclide ()
 

Private Member Functions

virtual std::vector< WP_Transitiongains_impl () const =0
 
virtual void get_gains_impl (std::vector< WP_Transition > &gains) const =0
 
virtual void set_gains_impl (std::vector< WP_Transition > gains)=0
 
virtual void append_gain_impl (WP_Transition gain)=0
 
virtual WP_Transition gain_impl (int channel_id, int parent_id) const =0
 
virtual int num_gains_impl () const =0
 
virtual void clear_gains_impl ()=0
 
virtual std::vector< SP_Channellosses_impl () const =0
 
virtual void get_losses_impl (std::vector< SP_Channel > &losses) const =0
 
virtual void set_losses_impl (std::vector< SP_Channel > losses)=0
 
virtual SP_Channel loss_impl (int channel_id) const =0
 
virtual void get_loss_impl (int channel_id, SP_Channel &loss) const =0
 
virtual void set_loss_impl (SP_Channel loss)=0
 
virtual SP_Channel add_loss_impl (SP_ChannelType channel_type)=0
 
virtual SP_Channel add_loss_impl (int field_id, int reaction_mt, int decay_mode=0)
 
virtual SP_Channel add_loss_impl (SP_Field field, int reaction_mt, int decay_mode=0)
 
virtual SP_Channel add_loss_impl (int decay_mode)
 
virtual int num_losses_impl () const =0
 
virtual CWP_TransitionSystem system_impl () const =0
 
virtual void get_system_impl (WP_TransitionSystem &system) const =0
 
virtual void set_system_impl (WP_TransitionSystem system)=0
 
virtual bool has_initialized_system_impl () const =0
 
virtual int isomeric_state_impl () const =0
 
virtual void get_isomeric_state_impl (int &isomeric_state) const =0
 
virtual void set_isomeric_state_impl (int isomeric_state)=0
 
virtual SP_Species species_impl () const =0
 
virtual void get_species_impl (SP_Species &species) const =0
 
virtual void set_species_impl (SP_Species species)=0
 
virtual bool has_initialized_species_impl () const =0
 
virtual double num_impl () const =0
 
virtual void get_num_impl (double &num) const =0
 
virtual void set_num_impl (double num)=0
 
virtual double decay_constant_impl () const =0
 
virtual double loss_xs_impl () const =0
 
virtual std::string name_impl () const
 
virtual int id_impl () const
 
virtual bool good_impl (Vec_Str &errors) const
 useful to chain More...
 
virtual bool is_initialized_impl () const
 useful to chain More...
 
virtual Scale::Json::Value to_json_impl () const
 useful to chain More...
 

Detailed Description

Defines the nuclide interface for the TransitionSystem.

The nuclide, in the context of the transition system, manages five main pieces of data:

  1. identification
  2. decay constant
  3. total loss xs
  4. loss channels (Channel)
  5. gain transitions (Transition)

The nuclide also has

  1. a strong pointer to a Species
  2. a weak pointer to a TransitionSystem
  3. a number of this nuclide (to calculate reaction rates)
See also
Channel, Transition, Species, TransitionSystem

Member Typedef Documentation

typedef SP_Nuclide SP

strong pointer

typedef WP_Nuclide WP

weak pointer

typedef CWP_Nuclide CWP

const weak pointer

Constructor & Destructor Documentation

~Nuclide ( )
virtual

Destructor.

Nuclide ( )
inlineprotected

Member Function Documentation

std::vector< WP_Transition > gains ( ) const

Return a vector of gains producing the nuclide.

Returns
std::vector<WP_Transition> vector of gains.

Referenced by Nuclide_Gen::set_gains_impl().

void get_gains ( std::vector< WP_Transition > &  gains) const

Get a vector of gains producing the nuclide.

The user vector is overwritten with the contents.

Returns
std::vector<WP_Transition> vector of gains.
void set_gains ( std::vector< WP_Transition gains)

Set the gains producing the nuclide.

The internal gains are overwritten with the contents.

Parameters
std::vector<WP_Transition>vector of gains.
void append_gain ( WP_Transition  gain)

Append gain to list of gains.

Parameters
gainto append.
void clear_gains ( )
Transition::WP gain ( int  channel_id,
int  parent_id 
) const

retrieve a gain

int num_gains ( ) const

Get the number of gains producing the nuclide.

Returns
int number of gains.

Referenced by Nuclide_Gen::clear_gains_impl().

std::vector< Channel::SP > losses ( ) const

Return a vector of losses destroying the nuclide.

Returns
std::vector<Channel::SP> vector of losses.

Referenced by Nuclide_Gen::losses_impl().

void get_losses ( std::vector< SP_Channel > &  losses) const

Get a vector of losses destroying the nuclide.

The user vector is overwritten with the contents.

Returns
std::vector<Channel::SP> vector of losses.
void set_losses ( std::vector< SP_Channel losses)

Set the losses destroying the nuclide.

The internal losses are overwritten with the contents.

Returns
std::vector<Channel::SP> vector of losses.
Channel::SP loss ( int  channel_id) const
void get_loss ( int  channel_id,
SP_Channel loss 
) const

retrieve loss channel

void set_loss ( SP_Channel  loss)
Channel::SP add_loss ( SP_ChannelType  channel_type)

add a new loss channel to the nuclide by specifying ChannelType

Channel::SP add_loss ( int  field_id,
int  reaction_mt,
int  decay_mode = 0 
)

add a new loss channel by specifying raw ids

Channel::SP add_loss ( SP_Field  field,
int  reaction_mt,
int  decay_mode = 0 
)

add a new loss channel with Field and raw ids

Channel::SP add_loss ( int  decay_mode)

add a decay loss

int num_losses ( ) const

Get the number of losses destroying the nuclide.

Returns
int number of losses.
void set_system ( WP_TransitionSystem  system)
bool has_initialized_system ( ) const
int isomeric_state ( ) const
void get_isomeric_state ( int &  isomeric_state) const
void set_isomeric_state ( int  isomeric_state)
void get_species ( SP_Species species) const
void set_species ( SP_Species  species)
bool has_initialized_species ( ) const
void get_num ( double &  num) const
void set_num ( double  num)
double decay_constant ( ) const

Return the decay constant.

This total decay constant is a sum of all channel decay constants.

Returns
double decay constant (1/s)
double loss_xs ( ) const
virtual std::vector<WP_Transition> gains_impl ( ) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void get_gains_impl ( std::vector< WP_Transition > &  gains) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void set_gains_impl ( std::vector< WP_Transition gains)
privatepure virtual

Implemented in Nuclide_Gen.

virtual void append_gain_impl ( WP_Transition  gain)
privatepure virtual

Implemented in Nuclide_Gen.

virtual WP_Transition gain_impl ( int  channel_id,
int  parent_id 
) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual int num_gains_impl ( ) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void clear_gains_impl ( )
privatepure virtual

Implemented in Nuclide_Gen.

virtual std::vector<SP_Channel> losses_impl ( ) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void get_losses_impl ( std::vector< SP_Channel > &  losses) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void set_losses_impl ( std::vector< SP_Channel losses)
privatepure virtual

Implemented in Nuclide_Gen.

virtual SP_Channel loss_impl ( int  channel_id) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void get_loss_impl ( int  channel_id,
SP_Channel loss 
) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void set_loss_impl ( SP_Channel  loss)
privatepure virtual

Implemented in Nuclide_Gen.

virtual SP_Channel add_loss_impl ( SP_ChannelType  channel_type)
privatepure virtual

Implemented in Nuclide_Gen.

Channel::SP add_loss_impl ( int  field_id,
int  reaction_mt,
int  decay_mode = 0 
)
privatevirtual
Channel::SP add_loss_impl ( SP_Field  field,
int  reaction_mt,
int  decay_mode = 0 
)
privatevirtual
Channel::SP add_loss_impl ( int  decay_mode)
privatevirtual
virtual int num_losses_impl ( ) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual CWP_TransitionSystem system_impl ( ) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void get_system_impl ( WP_TransitionSystem system) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void set_system_impl ( WP_TransitionSystem  system)
privatepure virtual

Implemented in Nuclide_Gen.

bool has_initialized_system_impl ( ) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual int isomeric_state_impl ( ) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void get_isomeric_state_impl ( int &  isomeric_state) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void set_isomeric_state_impl ( int  isomeric_state)
privatepure virtual

Implemented in Nuclide_Gen.

virtual SP_Species species_impl ( ) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void get_species_impl ( SP_Species species) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void set_species_impl ( SP_Species  species)
privatepure virtual

Implemented in Nuclide_Gen.

bool has_initialized_species_impl ( ) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual double num_impl ( ) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void get_num_impl ( double &  num) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual void set_num_impl ( double  num)
privatepure virtual

Implemented in Nuclide_Gen.

virtual double decay_constant_impl ( ) const
privatepure virtual

Implemented in Nuclide_Gen.

virtual double loss_xs_impl ( ) const
privatepure virtual

Implemented in Nuclide_Gen.

std::string name_impl ( ) const
privatevirtual

Reimplemented from Checkable.

int id_impl ( ) const
privatevirtual

Reimplemented from Checkable.

References Origen::BAD_INT.

bool good_impl ( Vec_Str errors) const
privatevirtual

useful to chain

Reimplemented from Checkable.

References ORIGEN_CHECKABLE_ERROR.

bool is_initialized_impl ( ) const
privatevirtual

useful to chain

Reimplemented from Checkable.

Json::Value to_json_impl ( ) const
privatevirtual

useful to chain

Reimplemented from Checkable.

void get_name ( std::string &  name) const
inherited
Examples:
tstTransitionSystem_Gen.cpp.

Referenced by TEST().

void set_name ( std::string  name)
inherited
Examples:
tstTransitionSystem_Gen.cpp.

Referenced by TEST().

void get_id ( int &  id) const
inherited
Examples:
tstTransitionSystem_Gen.cpp.

Referenced by TEST().

void set_id ( int  id)
inherited
Examples:
tstTransitionSystem_Gen.cpp.

Referenced by TEST().

std::string to_string ( ) const
inherited
bool good ( ) const
inherited
bool good ( Vec_Str errors) const
inherited
bool is_initialized ( ) const
inherited
Scale::Json::Value to_json ( ) const
inherited

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