https://mooseframework.inl.gov
Loading...
Searching...
No Matches
VectorMassMatrix.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 "VectorMassMatrix.h"
11
13
16{
18 params.addClassDescription("Computes a finite element mass matrix meant for use in "
19 "preconditioning schemes which require one");
20 params.addParam<Real>("density", 1, "Optional density for scaling the computed mass.");
21 params.set<MultiMooseEnum>("vector_tags") = "";
22 params.set<MultiMooseEnum>("matrix_tags") = "";
23 params.suppressParameter<MultiMooseEnum>("vector_tags");
24 params.suppressParameter<std::vector<TagName>>("extra_vector_tags");
25 params.suppressParameter<std::vector<TagName>>("absolute_value_vector_tags");
26 params.set<bool>("matrix_only") = true;
27 return params;
28}
29
31 : VectorKernel(parameters), _density(getParam<Real>("density"))
32{
33 if (!isParamValid("matrix_tags") && !isParamValid("extra_matrix_tags"))
34 mooseError("One of 'matrix_tags' or 'extra_matrix_tags' must be provided");
35}
36
37Real
39{
40 mooseError("should never be called");
41}
42
43Real
registerMooseObject("NavierStokesApp", VectorMassMatrix)
void suppressParameter(const std::string &name)
void addParam(const std::string &name, const std::initializer_list< typename T::value_type > &value, const std::string &doc_string)
void addClassDescription(const std::string &doc_string)
T & set(const std::string &name, bool quiet_mode=false)
unsigned int _qp
unsigned int _j
unsigned int _i
void mooseError(Args &&... args) const
bool isParamValid(const std::string &name) const
const VectorVariableTestValue & _test
static InputParameters validParams()
const VectorVariablePhiValue & _phi
Computes a finite element mass matrix meant for use in preconditioning schemes which require one.
virtual Real computeQpResidual() override
virtual Real computeQpJacobian() override
VectorMassMatrix(const InputParameters &parameters)
static InputParameters validParams()