Class MultiGroupXS

Nested Relationships

Nested Types

Class Documentation

class MultiGroupXS

Public Functions

inline MultiGroupXS()
void SetScalingFactor(double factor)

Scale the cross sections by the specified factor.

Note

Scaling factors do not compound. Each time this routine is called, the cross sections are scaled by the ratio of the argument and the existing scaling factor.

void ExportToOpenSnXSFile(const std::string &file_name, double fission_scaling = 1.0) const

Exports the cross-section information to OpenSn format.

Parameters:
  • file_name – The name of the file to save the cross sections to.

  • fission_scaling – A factor to scale fission data to. This is generally equal to \( 1/k_{eff} \). Generally, this is done to create exactly critical cross sections for a transient initial condition.

inline size_t GetNumGroups() const
inline size_t GetScatteringOrder() const
inline size_t GetNumPrecursors() const
inline bool IsFissionable() const
inline void SetAdjointMode(bool val)
inline bool GetAdjointMode() const
inline double GetScalingFactor() const
inline const std::vector<double> &GetSigmaTotal() const
inline const std::vector<double> &GetSigmaAbsorption() const
inline const std::vector<SparseMatrix> &GetTransferMatrices() const
inline const SparseMatrix &GetTransferMatrix(unsigned int ell) const
inline const std::vector<double> &GetChi() const
inline const std::vector<double> &GetSigmaFission() const
inline const std::vector<double> &GetNuSigmaF() const
inline const std::vector<double> &GetNuPromptSigmaF() const
inline const std::vector<double> &GetNuDelayedSigmaF() const
inline const std::vector<std::vector<double>> &GetProductionMatrix() const
inline const std::vector<Precursor> &GetPrecursors() const
inline const std::vector<double> &GetInverseVelocity() const
inline bool DiffusionInitialized() const
inline const std::vector<double> &GetSigmaTransport() const
inline const std::vector<double> &GetDiffusionCoefficient() const
inline const std::vector<double> &GetSigmaRemoval() const
inline const std::vector<double> &GetSigmaSGtoG() const

Public Static Functions

static MultiGroupXS CreateSimpleOneGroup(double sigma_t, double c)

Makes a simple material with a 1-group cross-section set.

static MultiGroupXS LoadFromOpenSn(const std::string &filename)
static MultiGroupXS LoadFromOpenMC(const std::string &filename, const std::string &dataset_name, double temperature)

This method populates transport cross sections from an OpenMC cross-section file.

static MultiGroupXS Combine(const std::vector<std::pair<std::shared_ptr<MultiGroupXS>, double>> &combinations)

Populates the cross section from a combination of others.

struct Precursor

A struct containing data for a delayed neutron precursor.

Public Members

double decay_constant = 0.0
double fractional_yield = 0.0
std::vector<double> emission_spectrum