1 #ifndef CYCLUS_SRC_COMPOSITION_H_ 2 #define CYCLUS_SRC_COMPOSITION_H_ 6 #include <boost/shared_ptr.hpp> 40 friend class ::SimInitTest;
43 typedef boost::shared_ptr<Composition>
Ptr;
62 const CompMap&
atom();
65 const CompMap&
mass();
74 Ptr
Decay(
int delta, uint64_t secs_per_timestep);
84 typedef std::map<int, Composition::Ptr>
Chain;
98 Ptr NewDecay(
int delta, uint64_t secs_per_timestep);
112 #endif // CYCLUS_SRC_COMPOSITION_H_ boost::shared_ptr< Composition > Ptr
int id()
Returns a unique id associated with this composition.
Ptr Decay(int delta)
Returns a decayed version of this composition (decayed delta timesteps) assuming a time step is 1/12 ...
std::map< Nuc, double > CompMap
a raw definition of nuclides and corresponding (dimensionless quantities).
std::map< int, Composition::Ptr > Chain
a chain containing compositions that are a result of decay from a common ancestor composition...
void Record(Context *ctx)
Records the composition in output database Compositions table (if not done previously).
An immutable object responsible for holding a nuclide composition.
A simulation context provides access to necessary simulation-global functions and state...
taken directly from OsiSolverInterface.cpp on 2/17/14 from https://projects.coin-or.org/Osi/browser/trunk.
const CompMap & mass()
Returns the unnormalized mass composition.
Handles initialization of a simulation from the output database.
static Ptr CreateFromAtom(CompMap v)
Creates a new composition from v with its components having appropriate atom-based ratios...
boost::shared_ptr< Chain > ChainPtr
const CompMap & atom()
Returns the unnormalized atom composition.
static Ptr CreateFromMass(CompMap v)
Creates a new composition from v with its components having appropriate mass-based ratios...