Cardinal
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
FDTallyGradAux Class Reference

#include <FDTallyGradAux.h>

Inheritance diagram for FDTallyGradAux:
[legend]

Public Member Functions

 FDTallyGradAux (const InputParameters &parameters)
 
virtual void compute () override
 We handle computing and storing the variable value manually. More...
 

Static Public Member Functions

static InputParameters validParams ()
 

Protected Member Functions

virtual RealVectorValue computeValue () override
 Need to override computeValue() to avoid creating a pure-virtual class. More...
 
bool mappedElement ()
 
std::string getScore (const std::string &score_param)
 
std::string tallyByScore (const std::string &score, const std::string &tally_param)
 
Real stdev (const double &mean, const double &sum_sq, unsigned int realizations) const
 
Real kMean (const eigenvalue::EigenvalueEnum estimator) const
 
Real kStandardDeviation (const eigenvalue::EigenvalueEnum estimator) const
 

Protected Attributes

const unsigned int _bin_index
 The external filter bin index for the score. More...
 
const VariableValue * _tally_val
 The element's tally value. More...
 
const VariableValue * _tally_neighbor_val
 The neighboring element's tally value. More...
 
RealEigenMatrix _sum_y_y_t
 
RealEigenVector _sum_y_du_dy
 
OpenMCCellAverageProblem_openmc_problem
 The OpenMCCellAverageProblem required by all objects which inherit from OpenMCBase. More...
 

Detailed Description

A class which approximates gradients of constant monomial tallies using forward finite differences. The gradient computation is based on: K. N. Stolte and P. V. Tsvetkov (2023), Annals of Nuclear Energy, 182, 109617. https://doi.org/10.1016/j.anucene.2022.109617

Constructor & Destructor Documentation

◆ FDTallyGradAux()

FDTallyGradAux::FDTallyGradAux ( const InputParameters &  parameters)

Member Function Documentation

◆ compute()

virtual void FDTallyGradAux::compute ( )
overridevirtual

We handle computing and storing the variable value manually.

◆ computeValue()

virtual RealVectorValue FDTallyGradAux::computeValue ( )
inlineoverrideprotectedvirtual

Need to override computeValue() to avoid creating a pure-virtual class.

Implements OpenMCAuxKernelTempl< ComputeValueType >.

◆ getScore()

std::string TallyInterface::getScore ( const std::string &  score_param)
protectedinherited

Get the score given a parameter name which points to a MooseEnum parameter. This checks to ensure that the score is valid (at least one tally is accumulating it).

Parameters
[in]score_paramthe name of the input parameter holding the score
Returns
the valid score

◆ kMean()

Real OpenMCBase::kMean ( const eigenvalue::EigenvalueEnum  estimator) const
protectedinherited

A function which computes the mean value of \(k_{eff}\).

Parameters
[in]estimatortype of estimator
Returns
the mean value of the k-eigenvalue

◆ kStandardDeviation()

Real OpenMCBase::kStandardDeviation ( const eigenvalue::EigenvalueEnum  estimator) const
protectedinherited

A function which computes the standard deviation of \(k_{eff}\).

Parameters
[in]estimatortype of estimator
Returns
the standard deviation of the k-eigenvalue

◆ mappedElement()

template<typename ComputeValueType >
bool OpenMCAuxKernelTempl< ComputeValueType >::mappedElement ( )
protectedinherited

Determine whether the MOOSE element maps to an OpenMC cell to make sure we don't call accessor methods that rely on valid values for the cell instance and index

Returns
whether element maps to OpenMC

◆ stdev()

Real OpenMCBase::stdev ( const double &  mean,
const double &  sum_sq,
unsigned int  realizations 
) const
protectedinherited

Compute standard deviation of a variable

Parameters
[in]meanmean
[in]sum_sqsum squared
[in]realizationsthe number of realizations of the variable
Returns
standard deviation

◆ tallyByScore()

std::string TallyInterface::tallyByScore ( const std::string &  score,
const std::string &  tally_param 
)
protectedinherited

Fetch a tally name by the score and the tally param in the input parameters. This checks the tally to ensure it is valid for the given score. If the parameter 'tally_param' is not valid and only one tally object accumulates 'score', this function returns the name of that tally.

Parameters
[in]scorethe score which the tally should be accumulating
[in]tally_paramthe parameter name in the input parameters for '_object' which contains the name of a tally.
Returns
the name of the tally which can be used to fetch score variables

◆ validParams()

static InputParameters FDTallyGradAux::validParams ( )
static

Member Data Documentation

◆ _bin_index

const unsigned int FDTallyGradAux::_bin_index
protected

The external filter bin index for the score.

◆ _openmc_problem

OpenMCCellAverageProblem* OpenMCBase::_openmc_problem
protectedinherited

The OpenMCCellAverageProblem required by all objects which inherit from OpenMCBase.

◆ _sum_y_du_dy

RealEigenVector FDTallyGradAux::_sum_y_du_dy
protected

The sum of the finite difference approximation of u multiplied by y'.

◆ _sum_y_y_t

RealEigenMatrix FDTallyGradAux::_sum_y_y_t
protected

The sum of outer products of y' with itself, where y' = x_j - x_i. x_j is the centroid of the neighboring element j of element i. x_i is the centroid of element i.

◆ _tally_neighbor_val

const VariableValue* FDTallyGradAux::_tally_neighbor_val
protected

The neighboring element's tally value.

◆ _tally_val

const VariableValue* FDTallyGradAux::_tally_val
protected

The element's tally value.


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