moltres
Loading...
Searching...
No Matches
MoltresSNMaterial Class Reference

#include <MoltresSNMaterial.h>

Inheritance diagram for MoltresSNMaterial:
[legend]

Public Types

enum  INTERPOLATOR { SPLINE , MONOTONE_CUBIC , LINEAR , NONE }
 

Public Member Functions

 MoltresSNMaterial (const InputParameters &parameters)
 

Static Public Member Functions

static InputParameters validParams ()
 
static MooseEnum interpTypes ()
 

Protected Member Functions

virtual void dummyComputeQpProperties ()
 
virtual void splineComputeQpProperties ()
 
virtual void monotoneCubicComputeQpProperties ()
 
virtual void linearComputeQpProperties ()
 
virtual void preComputeQpProperties ()
 
void Construct (nlohmann::json xs_root)
 
virtual void computeQpProperties () override
 

Protected Attributes

const VariableValue & _temperature
 Temperature variable.
 
unsigned int _num_groups
 Number of neutron groups.
 
unsigned int _num_precursor_groups
 Number of precursor groups.
 
MaterialProperty< std::vector< Real > > & _totxs
 Group constant MaterialProperty(s)
 
MaterialProperty< std::vector< Real > > & _fissxs
 
MaterialProperty< std::vector< Real > > & _nsf
 
MaterialProperty< std::vector< Real > > & _fisse
 
MaterialProperty< std::vector< Real > > & _recipvel
 
MaterialProperty< std::vector< Real > > & _chi_t
 
MaterialProperty< std::vector< Real > > & _chi_p
 
MaterialProperty< std::vector< Real > > & _chi_d
 
MaterialProperty< std::vector< Real > > & _scatter
 
MaterialProperty< std::vector< Real > > & _beta_eff
 
MaterialProperty< Real > & _beta
 
MaterialProperty< std::vector< Real > > & _decay_constant
 
MaterialProperty< std::vector< Real > > & _diffcoef
 
MaterialProperty< std::vector< Real > > & _d_totxs_d_temp
 
MaterialProperty< std::vector< Real > > & _d_fissxs_d_temp
 
MaterialProperty< std::vector< Real > > & _d_nsf_d_temp
 
MaterialProperty< std::vector< Real > > & _d_fisse_d_temp
 
MaterialProperty< std::vector< Real > > & _d_recipvel_d_temp
 
MaterialProperty< std::vector< Real > > & _d_chi_t_d_temp
 
MaterialProperty< std::vector< Real > > & _d_chi_p_d_temp
 
MaterialProperty< std::vector< Real > > & _d_chi_d_d_temp
 
MaterialProperty< std::vector< Real > > & _d_scatter_d_temp
 
MaterialProperty< std::vector< Real > > & _d_beta_eff_d_temp
 
MaterialProperty< Real > & _d_beta_d_temp
 
MaterialProperty< std::vector< Real > > & _d_decay_constant_d_temp
 
MaterialProperty< std::vector< Real > > & _d_diffcoef_d_temp
 
MooseEnum _interp_type
 Group constant interpolation type.
 
std::vector< std::string > _group_consts
 Vector of group constants to be loaded.
 
std::string _material_key
 Material associated with the group constants to be loaded.
 
const unsigned int _L
 Maximum scattering Legendre moment.
 
const Real _sigma
 Void constant for stabilization scheme in voids.
 
const Real _c
 Stabilization constant for stabilization scheme in voids.
 
const MooseEnum _h_type
 Type of element length unit (maximum or minimum vertex separation)
 
MaterialProperty< std::vector< Real > > & _tau_sn
 Void stabilization factor.
 
std::vector< std::string > _xsec_names
 Vector of group constant names.
 
std::map< std::string, std::vector< std::vector< Real > > > _xsec_map
 Map of group constant names to group constant values.
 
std::map< std::string, std::vector< SplineInterpolation > > _xsec_spline_interpolators
 Group constant interpolators.
 
std::map< std::string, std::vector< MonotoneCubicInterpolation > > _xsec_monotone_cubic_interpolators
 
std::map< std::string, std::vector< LinearInterpolation > > _xsec_linear_interpolators
 
std::map< std::string, int > _vec_lengths
 Map of group constant names to number of neutron/precursor groups.
 
std::vector< double > _XsTemperature
 Vector of temperature values.
 

Detailed Description

This class hinges on the interp_type chosen by the user. The user can choose from the following interpolation types:

"normal interpolations" spline : cubic spline interpolation for single temperature. Example input property table: property_file_dir/newt_msre_fuel_NSF.txt monotone_cubic : monotone cubic interpolation for single temperature. Same input property table structure as spline linear : linear interpolation for single temperature. Same input property table structure as spline

"special interpolations" none : no interpolation is done. The cross section value for each group is read from the first temperature row in the interpolation table

Member Enumeration Documentation

◆ INTERPOLATOR

Enumerator
SPLINE 
MONOTONE_CUBIC 
LINEAR 
NONE 

Constructor & Destructor Documentation

◆ MoltresSNMaterial()

MoltresSNMaterial::MoltresSNMaterial ( const InputParameters & parameters)

Member Function Documentation

◆ computeQpProperties()

void MoltresSNMaterial::computeQpProperties ( )
overrideprotectedvirtual

Reimplemented in SNRodMaterial.

◆ Construct()

void MoltresSNMaterial::Construct ( nlohmann::json xs_root)
protected

◆ dummyComputeQpProperties()

void MoltresSNMaterial::dummyComputeQpProperties ( )
protectedvirtual

Reimplemented in SNRodMaterial.

◆ interpTypes()

static MooseEnum MoltresSNMaterial::interpTypes ( )
inlinestatic

◆ linearComputeQpProperties()

void MoltresSNMaterial::linearComputeQpProperties ( )
protectedvirtual

Reimplemented in SNRodMaterial.

◆ monotoneCubicComputeQpProperties()

void MoltresSNMaterial::monotoneCubicComputeQpProperties ( )
protectedvirtual

Reimplemented in SNRodMaterial.

◆ preComputeQpProperties()

void MoltresSNMaterial::preComputeQpProperties ( )
protectedvirtual

◆ splineComputeQpProperties()

void MoltresSNMaterial::splineComputeQpProperties ( )
protectedvirtual

Reimplemented in SNRodMaterial.

◆ validParams()

InputParameters MoltresSNMaterial::validParams ( )
static

Member Data Documentation

◆ _beta

MaterialProperty<Real>& MoltresSNMaterial::_beta
protected

◆ _beta_eff

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_beta_eff
protected

◆ _c

const Real MoltresSNMaterial::_c
protected

Stabilization constant for stabilization scheme in voids.

◆ _chi_d

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_chi_d
protected

◆ _chi_p

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_chi_p
protected

◆ _chi_t

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_chi_t
protected

◆ _d_beta_d_temp

MaterialProperty<Real>& MoltresSNMaterial::_d_beta_d_temp
protected

◆ _d_beta_eff_d_temp

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_d_beta_eff_d_temp
protected

◆ _d_chi_d_d_temp

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_d_chi_d_d_temp
protected

◆ _d_chi_p_d_temp

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_d_chi_p_d_temp
protected

◆ _d_chi_t_d_temp

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_d_chi_t_d_temp
protected

◆ _d_decay_constant_d_temp

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_d_decay_constant_d_temp
protected

◆ _d_diffcoef_d_temp

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_d_diffcoef_d_temp
protected

◆ _d_fisse_d_temp

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_d_fisse_d_temp
protected

◆ _d_fissxs_d_temp

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_d_fissxs_d_temp
protected

◆ _d_nsf_d_temp

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_d_nsf_d_temp
protected

◆ _d_recipvel_d_temp

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_d_recipvel_d_temp
protected

◆ _d_scatter_d_temp

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_d_scatter_d_temp
protected

◆ _d_totxs_d_temp

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_d_totxs_d_temp
protected

◆ _decay_constant

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_decay_constant
protected

◆ _diffcoef

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_diffcoef
protected

◆ _fisse

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_fisse
protected

◆ _fissxs

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_fissxs
protected

◆ _group_consts

std::vector<std::string> MoltresSNMaterial::_group_consts
protected

Vector of group constants to be loaded.

◆ _h_type

const MooseEnum MoltresSNMaterial::_h_type
protected

Type of element length unit (maximum or minimum vertex separation)

◆ _interp_type

MooseEnum MoltresSNMaterial::_interp_type
protected

Group constant interpolation type.

◆ _L

const unsigned int MoltresSNMaterial::_L
protected

Maximum scattering Legendre moment.

◆ _material_key

std::string MoltresSNMaterial::_material_key
protected

Material associated with the group constants to be loaded.

◆ _nsf

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_nsf
protected

◆ _num_groups

unsigned int MoltresSNMaterial::_num_groups
protected

Number of neutron groups.

◆ _num_precursor_groups

unsigned int MoltresSNMaterial::_num_precursor_groups
protected

Number of precursor groups.

◆ _recipvel

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_recipvel
protected

◆ _scatter

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_scatter
protected

◆ _sigma

const Real MoltresSNMaterial::_sigma
protected

Void constant for stabilization scheme in voids.

◆ _tau_sn

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_tau_sn
protected

Void stabilization factor.

◆ _temperature

const VariableValue& MoltresSNMaterial::_temperature
protected

Temperature variable.

◆ _totxs

MaterialProperty<std::vector<Real> >& MoltresSNMaterial::_totxs
protected

Group constant MaterialProperty(s)

◆ _vec_lengths

std::map<std::string, int> MoltresSNMaterial::_vec_lengths
protected

Map of group constant names to number of neutron/precursor groups.

◆ _xsec_linear_interpolators

std::map<std::string, std::vector<LinearInterpolation> > MoltresSNMaterial::_xsec_linear_interpolators
protected

◆ _xsec_map

std::map<std::string, std::vector<std::vector<Real> > > MoltresSNMaterial::_xsec_map
protected

Map of group constant names to group constant values.

◆ _xsec_monotone_cubic_interpolators

std::map<std::string, std::vector<MonotoneCubicInterpolation> > MoltresSNMaterial::_xsec_monotone_cubic_interpolators
protected

◆ _xsec_names

std::vector<std::string> MoltresSNMaterial::_xsec_names
protected
Initial value:
{"TOTXS",
"FISSXS",
"NSF",
"FISSE",
"RECIPVEL",
"CHI_T",
"CHI_P",
"CHI_D",
"SPN",
"BETA_EFF",
"DECAY_CONSTANT",
"DIFFCOEF"}

Vector of group constant names.

◆ _xsec_spline_interpolators

std::map<std::string, std::vector<SplineInterpolation> > MoltresSNMaterial::_xsec_spline_interpolators
protected

Group constant interpolators.

◆ _XsTemperature

std::vector<double> MoltresSNMaterial::_XsTemperature
protected

Vector of temperature values.


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