moltres
|
#include <NtAction.h>
Public Member Functions | |
NtAction (const InputParameters ¶ms) | |
virtual void | act () override |
Public Member Functions inherited from VariableNotAMooseObjectAction | |
VariableNotAMooseObjectAction (const InputParameters ¶ms) | |
Static Public Member Functions | |
static InputParameters | validParams () |
Static Public Member Functions inherited from VariableNotAMooseObjectAction | |
static InputParameters | validParams () |
Protected Member Functions | |
void | addNtKernel (const unsigned &op, const std::string &var_name, const std::string &kernel_type, const std::vector< VariableName > &all_var_names) |
void | addCoupledFissionKernel (const unsigned &op, const std::string &var_name, const std::vector< VariableName > &all_var_names) |
void | addDelayedNeutronSource (const unsigned &op, const std::string &var_name) |
Protected Member Functions inherited from VariableNotAMooseObjectAction | |
std::set< SubdomainID > | getSubdomainIDs () |
void | addVariable (const std::string &var_name) |
Protected Attributes | |
unsigned int | _num_precursor_groups |
number of precursor groups | |
std::string | _var_name_base |
base name for neutron variables | |
unsigned int | _num_groups |
number of energy groups | |
Add neutronics kernels and variables to MSR simulations automatically. When writing the multigroup diffusion equation:
\[ \frac{1}{v_g}\frac{\partial {\phi}_g}{\partial t} = \nabla \cdot D_g \nabla {\phi}_g + \sum_{g \ne g'}^G {\Sigma_{g'\rightarrow g}^s} {\phi}_{g'} + \chi_g^p \sum_{g' = 1}^G (1 - \beta) \nu {\Sigma_{g'}^f} {\phi}_{g'} + \chi_g^d \sum_i^I \lambda_i {C_i} - {\Sigma_g^r} {\phi_g} \]
it's clearly the case that many terms are involved. Moltres, and MOOSE in general represent each term as a "kernel". This action adds all of the required kernels for this problem to the simulation. In addition, when using many flux variables, it adds the required variables to the problem as well.
NtAction::NtAction | ( | const InputParameters & | params | ) |
|
overridevirtual |
|
protected |
Adds CoupledFissionKernel kernel
op | The zero-based index for the precursor group the kernel acts on |
var_name | The name of the variable the kernel acts on |
all_var_names | Vector of the names of all group flux variables |
|
protected |
Adds DelayedNeutronSource kernel
op | The zero-based index for the precursor group the kernel acts on |
var_name | The name of the variable the kernel acts on |
|
protected |
Adds non-source neutronics kernel
op | The zero-based index for the precursor group the kernel acts on |
var_name | The name of the variable the kernel acts on |
kernel_type | The kernel type to be added |
all_var_names | Vector of the names of all group flux variables |
|
static |
|
protected |
number of energy groups
|
protected |
number of precursor groups
|
protected |
base name for neutron variables