https://mooseframework.inl.gov
EigenArrayDirichletBC.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #include "EigenArrayDirichletBC.h"
11 
13 
16 {
18 
19  params.set<MultiMooseEnum>("vector_tags") = "eigen";
20  params.set<MultiMooseEnum>("matrix_tags") = "eigen";
21 
22  params.addClassDescription("Array Dirichlet BC for eigenvalue solvers");
23 
24  return params;
25 }
26 
28  : ArrayNodalBC(parameters)
29 {
30 }
31 
32 void
34 {
35  residual.setZero();
36 }
37 
40 {
41  return RealEigenVector::Zero(_var.count());
42 }
43 
46 {
47  return RealEigenMatrix::Zero(_var.count(), jvar.count());
48 }
virtual RealEigenMatrix computeQpOffDiagJacobian(MooseVariableFEBase &jvar) override
This is the virtual that derived classes should override for computing an off-diagonal jacobian compo...
Base class for deriving any boundary condition that works at nodes on vector variables.
Definition: ArrayNodalBC.h:18
T & set(const std::string &name, bool quiet_mode=false)
Returns a writable reference to the named parameters.
unsigned int count() const
Get the number of components Note: For standard and vector variables, the number is one...
virtual RealEigenVector computeQpJacobian() override
The user can override this function to compute the "on-diagonal" Jacobian contribution for this Vecto...
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
This class provides an interface for common operations on field variables of both FE and FV types wit...
Eigen::Matrix< Real, Eigen::Dynamic, Eigen::Dynamic > RealEigenMatrix
Definition: MooseTypes.h:149
static InputParameters validParams()
ArrayMooseVariable & _var
Definition: ArrayNodalBC.h:35
registerMooseObject("MooseApp", EigenArrayDirichletBC)
void addClassDescription(const std::string &doc_string)
This method adds a description of the class that will be displayed in the input file syntax dump...
Boundary condition of a Dirichlet type for the eigen side.
Eigen::Matrix< Real, Eigen::Dynamic, 1 > RealEigenVector
Definition: MooseTypes.h:146
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type...
static InputParameters validParams()
Definition: ArrayNodalBC.C:19
EigenArrayDirichletBC(const InputParameters &parameters)
virtual void computeQpResidual(RealEigenVector &residual) override
Compute this BC&#39;s contribution to the residual at the current quadrature point, to be filled in resid...