#include <Material.h>

Container for an ORIGEN depletable material. More...
Public Types | |
enum | FluxParameter { UNKNOWN = -1, FLUX = 0, POWER = 1, LAST_FLUX_PARAMETER } |
typedef std::map< double, double, ScaleSTL::ApproxLt< double > > | History_t |
INTERFACE<<Origen::Checkable>> | |
See Origen::Checkable for details. | |
virtual bool | good (Vec_Str &errors) const |
virtual bool | good () const |
virtual bool | is_initialized () const |
virtual Scale::Json::Value | to_json () const |
virtual std::string | to_string (int level=1) const |
virtual bool | has_initialized_id () const |
virtual int | id () const |
virtual void | get_id (int &id) const |
virtual void | set_id (int id) |
virtual std::string | name () const |
virtual void | set_name (std::string name) |
virtual void | get_name (std::string &name) const |
INTERFACE<<Origen::Checkable>> | |
See Origen::Checkable for details. | |
std::string | to_string () const |
Public Member Functions | |
Material (std::string library_type, SP_Library library, std::string name, int id, double cold_volume) | |
standard material setup More... | |
Material (SP_Library library, std::string name, int id, double cold_volume=-1.0) | |
material (without library type) More... | |
virtual | ~Material () |
void | register_buffer (SP_MaterialBuffer mbuf) |
void | add_step (double dt) |
allocate and set delta-time More... | |
void | allocate_step () |
allocate space for a new time step More... | |
void | repeat_step_doubled () |
repeat the step but with time doubled More... | |
std::string | library_type () const |
get library type More... | |
SP_Library | library () const |
get library More... | |
size_t | total_nuclides () const |
total number of nuclides More... | |
SCP_Vec_Int | sizzzaaa_list () const |
nuclide ids More... | |
void | mapping_sets (const Vec_Int &user_ids, Vec_Int *user_to_master, Vec_Int *master_to_user, int offset=0) const |
SP_IdMap | sizzzaaa_lookup (int offset=0) const |
map of sizzzaaa to index; More... | |
void | clear () |
clear all class memory More... | |
void | flush_oldest () |
flush all but most recent More... | |
void | flush_newest () |
flush newest More... | |
double | initial_mass () const |
get initial mass (g) More... | |
double | initial_hm_mass () const |
get initial hm mass (gIHM) More... | |
void | set_initial_hm_mass_multiplier (double) |
set an initial hm mass factor More... | |
double | mass_at (size_t p, double *hm) const |
mass at any time point More... | |
double | mass (double *hm) const |
mass at last time point More... | |
double | cold_volume () const |
get cold volume (cm^3), volume at room temperature More... | |
void | set_cold_volume (double) |
set cold volume (cm^3), volume at room temperature More... | |
void | get_cold_volume (double &) const |
get cold volume (cm^3), volume at room temperature More... | |
size_t | step () const |
get current step (starts at 0) More... | |
size_t | point_bos () const |
get point index at begin-of-step More... | |
size_t | point_eos () const |
get point index at end-of-step More... | |
size_t | ntimes () const |
get the number of times stored (including on disk) More... | |
size_t | nsteps () const |
get the number of steps More... | |
double | dt_over (size_t i) const |
get time (s) step length More... | |
double | dt () const |
get current step length (s) More... | |
void | set_dt (double dt) |
set time step length for current step More... | |
double | time_at (size_t p) const |
get a time (s) value (0 to nsteps) More... | |
double | time_bos () const |
get begin of step time (s) More... | |
double | time_eos () const |
get end of step time (s) More... | |
SP_DoubleList | amount_at (size_t p) const |
get amount (cm^2/barn) at a time point More... | |
SP_DoubleList | amount_bos () const |
get amount (cm^2/barn) at begin of step More... | |
SP_DoubleList | amount_eos () const |
get amount (cm^2/barn) at end of step More... | |
void | set_amount_at (const Vec_Dbl &amount, size_t p) |
set amount (cm^2/barn) at a time point More... | |
void | set_amount_bos (const Vec_Dbl &amount) |
set amount (cm^2/barn) at begin of step More... | |
void | set_amount_eos (const Vec_Dbl &amount) |
set amount (cm^2/barn) at end of step More... | |
void | set_amount_at (const Vec_Dbl &amount, size_t p, const Vec_Int &ids) |
set amount (cm^2/barn) at a time point More... | |
void | set_amount_bos (const Vec_Dbl &amount, const Vec_Int &ids) |
set amount (cm^2/barn) at begin of step More... | |
void | set_amount_eos (const Vec_Dbl &amount, const Vec_Int &ids) |
set amount (cm^2/barn) at end of step More... | |
void | get_amount_at (Vec_Dbl *amount, size_t p) const |
get amount (cm^2/barn) at a time point More... | |
void | get_amount_bos (Vec_Dbl *amount) const |
get amount (cm^2/barn) at begin of step More... | |
void | get_amount_eos (Vec_Dbl *amount) const |
get amount (cm^2/barn) at end of step More... | |
void | get_amount_at (Vec_Dbl *amount, size_t p, const Vec_Int &ids) const |
get amount (cm^2/barn) at a time point More... | |
void | get_amount_bos (Vec_Dbl *amount, const Vec_Int &ids) const |
get amount (cm^2/barn) at begin of step More... | |
void | get_amount_eos (Vec_Dbl *amount, const Vec_Int &ids) const |
get amount (cm^2/barn) at end of step More... | |
void | set_numden_at (const Vec_Dbl &numden, size_t p, double volume) |
set number density (#/barn-cm) at a time point More... | |
void | set_numden_bos (const Vec_Dbl &numden, double volume) |
set number density (#/barn-cm) at begin of step More... | |
void | set_numden_eos (const Vec_Dbl &numden, double volume) |
set number density (#/barn-cm) at end of step More... | |
void | set_numden_at (const Vec_Dbl &numden, size_t p, const Vec_Int &ids, double volume) |
set number density (#/barn-cm) at a time point More... | |
void | set_numden_bos (const Vec_Dbl &numden, const Vec_Int &ids, double volume) |
set number density (#/barn-cm) at begin of step More... | |
void | set_numden_eos (const Vec_Dbl &numden, const Vec_Int &ids, double volume) |
set number density (#/barn-cm) at end of step More... | |
void | get_numden_at (Vec_Dbl *numden, size_t p, double volume) const |
get number density (#/barn-cm) at a time point More... | |
void | get_numden_bos (Vec_Dbl *numden, double volume) const |
get number density (#/barn-cm) at begin of step More... | |
void | get_numden_eos (Vec_Dbl *numden, double volume) const |
get number density (#/barn-cm) at end of step More... | |
void | get_numden_at (Vec_Dbl *numden, size_t p, const Vec_Int &ids, double volume) const |
get number density (#/barn-cm) at a time point More... | |
void | get_numden_bos (Vec_Dbl *numden, const Vec_Int &ids, double volume) const |
get number density (#/barn-cm) at begin of step More... | |
void | get_numden_eos (Vec_Dbl *numden, const Vec_Int &ids, double volume) const |
get number density (#/barn-cm) at end of step More... | |
void | set_numden_at (const Vec_Dbl &numden, size_t p) |
set number density (#/barn-cm) at a time point More... | |
void | set_numden_bos (const Vec_Dbl &numden) |
set number density (#/barn-cm) at begin of step More... | |
void | set_numden_eos (const Vec_Dbl &numden) |
set number density (#/barn-cm) at end of step More... | |
void | set_numden_at (const Vec_Dbl &numden, size_t p, const Vec_Int &ids) |
set number density (#/barn-cm) at a time point More... | |
void | set_numden_bos (const Vec_Dbl &numden, const Vec_Int &ids) |
set number density (#/barn-cm) at begin of step More... | |
void | set_numden_eos (const Vec_Dbl &numden, const Vec_Int &ids) |
set number density (#/barn-cm) at end of step More... | |
void | get_numden_at (Vec_Dbl *numden, size_t p) const |
get number density (#/barn-cm) at a time point More... | |
void | get_numden_bos (Vec_Dbl *numden) const |
get number density (#/barn-cm) at begin of step More... | |
void | get_numden_eos (Vec_Dbl *numden) const |
get number density (#/barn-cm) at end of step More... | |
void | get_numden_at (Vec_Dbl *numden, size_t p, const Vec_Int &ids) const |
get number density (#/barn-cm) at a time point More... | |
void | get_numden_bos (Vec_Dbl *numden, const Vec_Int &ids) const |
get number density (#/barn-cm) at begin of step More... | |
void | get_numden_eos (Vec_Dbl *numden, const Vec_Int &ids) const |
get number density (#/barn-cm) at end of step More... | |
SP_TrMatrix | transition_matrix_over (size_t i) const |
get a transition matrix over a step More... | |
SP_TrMatrix | transition_matrix () const |
get the current transition matrix More... | |
void | set_transition_matrix (SP_TrMatrix trx) |
set transition matrix of current step More... | |
double | power_over (size_t i) const |
get power (W) over a step More... | |
double | power () const |
get power (W) over current step More... | |
void | set_power (double power) |
set power (W) over current step More... | |
double | flux_over (size_t i) const |
get flux (#/cm^2-s) over a step More... | |
double | flux () const |
get flux (#/cm^2-s) over current step More... | |
void | set_flux (double flux) |
set flux (#/cm^2-s) over current step More... | |
double | fluence_at (size_t p) const |
get fluence (#/cm^2) at a point More... | |
double | fluence_bos () const |
get fluence (#/cm^2) at begin-of-step More... | |
double | fluence_eos () const |
get fluence (#/cm^2) at end-of-step More... | |
double | burnup_at (size_t p) const |
get burnup (MWd/MTIHM) at a point More... | |
double | burnup_bos () const |
get burnup (MWd/MTIHM) at begin-of-step More... | |
double | burnup_eos () const |
get burnup (MWd/MTIHM) at end-of-step More... | |
Removal::SP | removal_over (size_t i) const |
get removal (1/s) over a step More... | |
Removal::SP | removal () const |
get removal (1/s) over current step More... | |
void | set_removal (Removal::SP removal) |
set removal (1/s) over current step More... | |
void | get_concs_at (Concentrations *, size_t p) const |
get/set concentrations at a particular time point More... | |
void | set_concs_at (const Concentrations &, size_t p) |
double | volume_hist (double trel) const |
FluxParameter | flux_parameter () const |
History_t | param_hist () const |
void | set_param_hist (double, double) |
double | param_hist (double trel) const |
History_t | flux_hist () const |
void | set_flux_hist (double, double) |
double | flux_hist (double trel) const |
History_t | power_hist () const |
void | set_power_hist (double, double) |
double | power_hist (double trel) const |
void | record_average_flux (const Vec_Dbl &scaling) |
void | record_average_power (const Vec_Dbl &scaling) |
bool | is_decay () const |
double | power_factor (double trel, const DoubleList &) const |
double | decay_power (double trel, const DoubleList &) const |
double | power_factor_bos () const |
double | power_factor_mos () const |
double | power_factor_eos () const |
double | trel_bos () const |
double | trel_mos () const |
double | trel_eos () const |
SP_DoubleList | amount_mos () const |
void | set_solver (SP_Solver) |
SCP_Solver | solver () const |
void | solve (Vec_Dbl &dtrel, Vec_Dbl *flux, Vec_Dbl *power) |
void | resolve (Vec_Dbl &dtrel, Vec_Dbl *flux, Vec_Dbl *power) |
bool | solve_inplace (size_t nlit, double trel1, double trel2, double z0, double z1, double *flux, double *power) |
void | solve_kernel (double trel1, double trel2, double z0, double z1, double *flux, double *power) |
Static Public Member Functions | |
static Vec_Dbl | decay_substep_dtrel (size_t ns) |
Protected Member Functions | |
void | init_mos () |
void | clear_mos () |
void | swap_mos_bos () |
void | swap_mos_eos () |
void | initialize_mass () |
mass initializer function More... | |
void | internal_initialize (std::string library_type, SP_Library library, std::string name, int id, double cold_volume) |
everything initializer function More... | |
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... | |
Protected Attributes | |
std::string | b_library_type |
library type for general book-keeping More... | |
SP_Library | b_library |
actual library for reference values More... | |
double | b_mass |
total mass (g) at time=0 More... | |
double | b_initial_hm_mass |
total mass in heavy metal (g) at time=0 More... | |
double | b_initial_hm_mass_multiplier |
SP_Solver | b_solver |
solver More... | |
double | b_trel_bos |
SP_DoubleList | b_amount_bos |
double | b_trel_mos |
SP_DoubleList | b_amount_mos |
double | b_trel_eos |
SP_DoubleList | b_amount_eos |
History_t | b_flux_hist |
History_t | b_power_hist |
History_t | b_param_hist |
std::string | b_name |
saved name for this material More... | |
int | b_id |
saved id More... | |
double | b_cold_volume |
volume (cm^3) at cold conditions More... | |
Deq_Dbl | b_step_flux_cm2s |
average flux magnitude (#/cm^2-s) over each step More... | |
Deq_Dbl | b_step_power_watt |
average power (W) over each step More... | |
Deq_TrMatrix | b_step_trx |
transition matrix over each step More... | |
Deq_Removal | b_step_removal |
removal over each step More... | |
Vec_Dbl | b_removal_buffer |
std::deque< FluxParameter > | b_flux_parameter |
provided "flux" parameter over each step More... | |
Deq_Dbl | b_point_time_s |
time (s) at each point More... | |
Deq_Amt | b_point_amount_cm2barn |
nuclide amount (cm^2/barn) More... | |
Detailed Description
Container for an ORIGEN depletable material.
The Origen::Material uses deques because you can pop off the front element as you write to a file. So the heavy parts of the material, the transition matrix and number densities, can be flushed every so often without a full reallocate.
The internal units are:
- amount of nuclides \( {cm^2}/{barn} \)
- time in \( s \)
- flux in \( {\#}/{cm^2 s} \)
- power in \( W \)
The accessors use the following terminology:
- 'bos' for begin-of-step
- 'eos' for end-of-step
- 'amount' for amount (cm^s/barn)
- 'numden' for number density (#/barn-cm)
- 'at' for a value at a particular
- 'over' for an average value over a time interval
There are generally two ways to 'get' something.
- Get value of x as return value of function, v=x(). This is used when v is a simple scalar or smart pointer.
- Get value of x with argument value of function get_x(T& v). This is used in all other cases.
There is only a single way to 'set' something, set_x(const T& v).
Using set always implies a copy. To manipulate data directly, which is not recommended, use the getters that return smart pointers, e.g. trx_over(), amount_at().
- Examples:
- exNEAMS.cpp, tstMaterialBuffer.cpp, tstMultiZoneDepleter.cpp, and tstParallelDepletion.cpp.
Member Typedef Documentation
typedef std::map<double, double, ScaleSTL::ApproxLt<double> > History_t |
Member Enumeration Documentation
enum FluxParameter |
Constructor & Destructor Documentation
Material | ( | std::string | library_type, |
SP_Library | library, | ||
std::string | name, | ||
int | id, | ||
double | cold_volume | ||
) |
standard material setup
Material | ( | SP_Library | library, |
std::string | name, | ||
int | id, | ||
double | cold_volume = -1.0 |
||
) |
material (without library type)
|
virtual |
Member Function Documentation
void register_buffer | ( | SP_MaterialBuffer | mbuf | ) |
void add_step | ( | double | dt | ) |
void allocate_step | ( | ) |
allocate space for a new time step
void repeat_step_doubled | ( | ) |
repeat the step but with time doubled
prepare to perform a new step with double the time
- Returns
std::string library_type | ( | ) | const |
get library type
get library type
- Examples:
- tstMaterialBuffer.cpp.
Referenced by h5_write_material().
SP_Library library | ( | ) | const |
get library
get library
- Examples:
- tstMaterialBuffer.cpp.
Referenced by Origen::saveLibraries(), Origen::saveStateSet(), Origen::tabulateMaterialFission(), Origen::tabulateMaterialIsotopics(), Origen::tabulateMaterialLoss(), and Origen::tabulateMaterialTransitionRates().
size_t total_nuclides | ( | ) | const |
total number of nuclides
get total number of nuclides
- Examples:
- tstMaterialBuffer.cpp.
Referenced by h5_write_step(), and Origen::tabulateMaterialTransitionRates().
SCP_Vec_Int sizzzaaa_list | ( | ) | const |
nuclide ids
nuclide ids in sublib,isomeric state,atom number, mass number format
void mapping_sets | ( | const Vec_Int & | user_ids, |
Vec_Int * | user_to_master, | ||
Vec_Int * | master_to_user, | ||
int | offset = 0 |
||
) | const |
master[user_to_master[u]] += user_ids[u]; master[m] += user[master_to_user[m]];
SP_IdMap sizzzaaa_lookup | ( | int | offset = 0 | ) | const |
map of sizzzaaa to index;
map of sizzzaaa to index
void clear | ( | ) |
clear all class memory
All in-memory data is cleared. Data on disk remains.
void flush_oldest | ( | ) |
flush all but most recent
flush all the oldest (before this step) information
void flush_newest | ( | ) |
flush newest
flush newest step of information (including times)
- Returns
double initial_mass | ( | ) | const |
double initial_hm_mass | ( | ) | const |
void set_initial_hm_mass_multiplier | ( | double | multiplier | ) |
set an initial hm mass factor
double mass_at | ( | size_t | p, |
double * | hm | ||
) | const |
mass at any time point
double mass | ( | double * | hm | ) | const |
mass at last time point
double cold_volume | ( | ) | const |
get cold volume (cm^3), volume at room temperature
- Examples:
- tstMaterialBuffer.cpp.
Referenced by h5_write_material().
void set_cold_volume | ( | double | volume | ) |
set cold volume (cm^3), volume at room temperature
void get_cold_volume | ( | double & | volume | ) | const |
get cold volume (cm^3), volume at room temperature
size_t step | ( | ) | const |
get current step (starts at 0)
size_t point_bos | ( | ) | const |
get point index at begin-of-step
size_t point_eos | ( | ) | const |
get point index at end-of-step
size_t ntimes | ( | ) | const |
get the number of times stored (including on disk)
- Examples:
- tstMaterialBuffer.cpp.
Referenced by h5_write_material(), Origen::saveLibraries(), and Origen::saveStateSet().
size_t nsteps | ( | ) | const |
double dt_over | ( | size_t | i | ) | const |
get time (s) step length
double dt | ( | ) | const |
get current step length (s)
void set_dt | ( | double | dt | ) |
set time step length for current step
Set the time step size (overwriting add_step time)
double time_at | ( | size_t | p | ) | const |
get a time (s) value (0 to nsteps)
- Examples:
- tstMaterialBuffer.cpp.
Referenced by h5_write_step(), and Origen::saveStateSet().
double time_bos | ( | ) | const |
get begin of step time (s)
double time_eos | ( | ) | const |
get end of step time (s)
SP_DoubleList amount_at | ( | size_t | p | ) | const |
get amount (cm^2/barn) at a time point
- Examples:
- tstMaterialBuffer.cpp.
Referenced by h5_write_step(), and Origen::tabulateMaterialTransitionRates().
SP_DoubleList amount_bos | ( | ) | const |
get amount (cm^2/barn) at begin of step
SP_DoubleList amount_eos | ( | ) | const |
get amount (cm^2/barn) at end of step
void set_amount_at | ( | const Vec_Dbl & | amount, |
size_t | p | ||
) |
set amount (cm^2/barn) at a time point
void set_amount_bos | ( | const Vec_Dbl & | amount | ) |
set amount (cm^2/barn) at begin of step
void set_amount_eos | ( | const Vec_Dbl & | amount | ) |
set amount (cm^2/barn) at end of step
set amount (cm^2/barn) at a time point
set amount (cm^2/barn) at begin of step
set amount (cm^2/barn) at end of step
void get_amount_at | ( | Vec_Dbl * | amount, |
size_t | p | ||
) | const |
get amount (cm^2/barn) at a time point
void get_amount_bos | ( | Vec_Dbl * | amount | ) | const |
get amount (cm^2/barn) at begin of step
void get_amount_eos | ( | Vec_Dbl * | amount | ) | const |
get amount (cm^2/barn) at end of step
get amount (cm^2/barn) at a time point
get amount (cm^2/barn) at begin of step
get amount (cm^2/barn) at end of step
void set_numden_at | ( | const Vec_Dbl & | numden, |
size_t | p, | ||
double | volume | ||
) |
set number density (#/barn-cm) at a time point
void set_numden_bos | ( | const Vec_Dbl & | numden, |
double | volume | ||
) |
set number density (#/barn-cm) at begin of step
- Examples:
- tstMaterialBuffer.cpp.
void set_numden_eos | ( | const Vec_Dbl & | numden, |
double | volume | ||
) |
set number density (#/barn-cm) at end of step
set number density (#/barn-cm) at a time point
set number density (#/barn-cm) at begin of step
set number density (#/barn-cm) at end of step
void get_numden_at | ( | Vec_Dbl * | numden, |
size_t | p, | ||
double | volume | ||
) | const |
get number density (#/barn-cm) at a time point
Referenced by Origen::tabulateMaterialIsotopics().
void get_numden_bos | ( | Vec_Dbl * | numden, |
double | volume | ||
) | const |
get number density (#/barn-cm) at begin of step
void get_numden_eos | ( | Vec_Dbl * | numden, |
double | volume | ||
) | const |
get number density (#/barn-cm) at end of step
get number density (#/barn-cm) at a time point
get number density (#/barn-cm) at begin of step
get number density (#/barn-cm) at end of step
void set_numden_at | ( | const Vec_Dbl & | numden, |
size_t | p | ||
) |
set number density (#/barn-cm) at a time point
void set_numden_bos | ( | const Vec_Dbl & | numden | ) |
set number density (#/barn-cm) at begin of step
void set_numden_eos | ( | const Vec_Dbl & | numden | ) |
set number density (#/barn-cm) at end of step
set number density (#/barn-cm) at a time point
set number density (#/barn-cm) at begin of step
set number density (#/barn-cm) at end of step
void get_numden_at | ( | Vec_Dbl * | numden, |
size_t | p | ||
) | const |
get number density (#/barn-cm) at a time point
void get_numden_bos | ( | Vec_Dbl * | numden | ) | const |
get number density (#/barn-cm) at begin of step
void get_numden_eos | ( | Vec_Dbl * | numden | ) | const |
get number density (#/barn-cm) at end of step
get number density (#/barn-cm) at a time point
get number density (#/barn-cm) at begin of step
get number density (#/barn-cm) at end of step
SP_TrMatrix transition_matrix_over | ( | size_t | i | ) | const |
get a transition matrix over a step
- Examples:
- tstMaterialBuffer.cpp.
Referenced by h5_write_step(), Origen::saveLibraries(), Origen::tabulateMaterialFission(), Origen::tabulateMaterialLoss(), and Origen::tabulateMaterialTransitionRates().
SP_TrMatrix transition_matrix | ( | ) | const |
get the current transition matrix
void set_transition_matrix | ( | SP_TrMatrix | trx | ) |
set transition matrix of current step
- Examples:
- tstMaterialBuffer.cpp.
double power_over | ( | size_t | i | ) | const |
get power (W) over a step
- Examples:
- tstMaterialBuffer.cpp.
Referenced by h5_write_step(), and Origen::saveStateSet().
double power | ( | ) | const |
get power (W) over current step
void set_power | ( | double | power | ) |
set power (W) over current step
double flux_over | ( | size_t | i | ) | const |
get flux (#/cm^2-s) over a step
- Examples:
- tstMaterialBuffer.cpp.
Referenced by h5_write_step(), Origen::saveStateSet(), and Origen::tabulateMaterialTransitionRates().
double flux | ( | ) | const |
get flux (#/cm^2-s) over current step
Referenced by Origen::tabulateMaterialFission(), and Origen::tabulateMaterialLoss().
void set_flux | ( | double | flux | ) |
set flux (#/cm^2-s) over current step
- Examples:
- tstMaterialBuffer.cpp.
double fluence_at | ( | size_t | p | ) | const |
get fluence (#/cm^2) at a point
double fluence_bos | ( | ) | const |
get fluence (#/cm^2) at begin-of-step
double fluence_eos | ( | ) | const |
get fluence (#/cm^2) at end-of-step
double burnup_at | ( | size_t | p | ) | const |
get burnup (MWd/MTIHM) at a point
double burnup_bos | ( | ) | const |
get burnup (MWd/MTIHM) at begin-of-step
double burnup_eos | ( | ) | const |
get burnup (MWd/MTIHM) at end-of-step
Removal::SP removal_over | ( | size_t | i | ) | const |
get removal (1/s) over a step
Removal::SP removal | ( | ) | const |
get removal (1/s) over current step
void set_removal | ( | Removal::SP | removal | ) |
set removal (1/s) over current step
void get_concs_at | ( | Concentrations * | concs, |
size_t | p | ||
) | const |
get/set concentrations at a particular time point
References Origen::ATOMS_B_CM, NuclideSet::ids(), Concentrations::nuclide_set(), Concentrations::set_units(), Concentrations::set_vals(), and Concentrations::set_volume().
Referenced by Origen::saveStateSet().
void set_concs_at | ( | const Concentrations & | concs, |
size_t | p | ||
) |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
References Origen::h2string().
|
virtual |
|
virtual |
- Examples:
- tstMaterialBuffer.cpp.
Referenced by h5_write_material().
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
double volume_hist | ( | double | trel | ) | const |
Material::FluxParameter flux_parameter | ( | ) | const |
Material::History_t param_hist | ( | ) | const |
void set_param_hist | ( | double | , |
double | |||
) |
double param_hist | ( | double | trel | ) | const |
Material::History_t flux_hist | ( | ) | const |
void set_flux_hist | ( | double | trel, |
double | flux | ||
) |
double flux_hist | ( | double | trel | ) | const |
References kernel_rksuite::f().
Material::History_t power_hist | ( | ) | const |
void set_power_hist | ( | double | trel, |
double | power | ||
) |
double power_hist | ( | double | trel | ) | const |
void record_average_flux | ( | const Vec_Dbl & | scaling | ) |
References Origen::integrate_history().
void record_average_power | ( | const Vec_Dbl & | scaling | ) |
References Origen::integrate_history().
bool is_decay | ( | ) | const |
double power_factor | ( | double | trel, |
const DoubleList & | amount | ||
) | const |
The power factor is returned in units that could be multiplied by the flux to get the power in Watts produced in this material. It is basically Watts per unit scalar flux, so multiplying by scalar flux in (n/cm^2-s), which should be the average for this system, yields the Watts produced in this material. Note that this is the absolute Watts because the material is defined with a total amount proportional to number of atoms or moles (atoms-cm^2/barn).
amount (atoms-cm^2/barn) cold_volume x numden x sigma_a x kappa_a x C x 1 flux cm^3 x (atoms/cm-barn) x barn x MeV x J/MeV x 1 n/cm^2-s
double decay_power | ( | double | trel, |
const DoubleList & | amount | ||
) | const |
double power_factor_bos | ( | ) | const |
begin-of-step power factor (Watts per unit flux) produced by this material
double power_factor_mos | ( | ) | const |
middle-of-step power factor (Watts per unit flux) produced by this material
double power_factor_eos | ( | ) | const |
end-of-step power factor (Watts per unit flux) produced by this material
double trel_bos | ( | ) | const |
double trel_mos | ( | ) | const |
double trel_eos | ( | ) | const |
SP_DoubleList amount_mos | ( | ) | const |
void set_solver | ( | SP_Solver | solver | ) |
SCP_Solver solver | ( | ) | const |
bool solve_inplace | ( | size_t | nlit, |
double | trel1, | ||
double | trel2, | ||
double | z0, | ||
double | z1, | ||
double * | flux, | ||
double * | power | ||
) |
void solve_kernel | ( | double | trel1, |
double | trel2, | ||
double | z0, | ||
double | z1, | ||
double * | flux, | ||
double * | power | ||
) |
|
static |
Referenced by MultiZoneDepleter::update().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
mass initializer function
|
protected |
everything initializer function
The existing material storage is cleared and an initial time point and BOS amount vector is initialized. All libraries of the same library_type should share the same SP_Library.
- Parameters
-
library_type - a type of the library library - smart pointer to an Origen::Library name - material name (unique) id - material identification integer (unique)
|
inherited |
- Examples:
- tstTransitionSystemAdapter_AmpxN.cpp.
Referenced by TEST_F().
|
protectedvirtualinherited |
useful to chain
Reimplemented in Nuclide, Channel, Null, Neutrino, Positron, Species, Transition, Electron, Field, Alpha, ChannelType_Reac, ChannelType_Decay, ChannelType_Fiss, Helion, TransitionSystem_Gen, Triton, Deuteron, Proton, and Neutron.
References ORIGEN_CHECKABLE_ERROR.
|
protectedvirtualinherited |
useful to chain
Reimplemented in Nuclide, Channel, ChannelType, Species, Transition, Field, and TransitionSystem_Gen.
|
protectedvirtualinherited |
useful to chain
Reimplemented in Nuclide, Channel, TransitionSystem, ChannelType, Species, Transition, and Field.
Member Data Documentation
|
protected |
library type for general book-keeping
|
protected |
actual library for reference values
|
protected |
total mass (g) at time=0
|
protected |
total mass in heavy metal (g) at time=0
|
protected |
|
protected |
solver
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
saved name for this material
|
protected |
saved id
|
protected |
volume (cm^3) at cold conditions
|
protected |
average flux magnitude (#/cm^2-s) over each step
|
protected |
average power (W) over each step
|
protected |
transition matrix over each step
|
protected |
removal over each step
|
protected |
|
protected |
provided "flux" parameter over each step
|
protected |
time (s) at each point
|
protected |
nuclide amount (cm^2/barn)
The documentation for this class was generated from the following files:
- Core/dc/Material.h
- Core/dc/Material.cpp