https://mooseframework.inl.gov
Loading...
Searching...
No Matches
MFEMMixedVectorGradientKernel.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#ifdef MOOSE_MFEM_ENABLED
11
13#include "MFEMProblem.h"
14
16
19{
22 "Adds the domain integrator to an MFEM problem for the mixed bilinear form "
23 "$(k\\vec\\nabla u, \\vec v)_\\Omega$ "
24 "arising from the weak form of the gradient operator "
25 "$k\\vec \\nabla u$.");
26 params.addParam<MFEMScalarCoefficientName>("coefficient", "1.", "Name of property k to use.");
27 return params;
28}
29
31 : MFEMMixedBilinearFormKernel(parameters), _coef(getScalarCoefficient("coefficient"))
32// FIXME: The MFEM bilinear form can also handle vector and matrix
33// coefficients, so ideally we'd handle all three too.
34{
35}
36
37mfem::BilinearFormIntegrator *
39{
40 return new mfem::MixedVectorGradientIntegrator(_coef);
41}
42
43#endif
registerMooseObject("MooseApp", MFEMMixedVectorGradientKernel)
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
void addParam(const std::string &name, const S &value, const std::string &doc_string)
These methods add an optional parameter and a documentation string to the InputParameters object.
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.
Class to construct an MFEM mixed bilinear form integrator to apply to the equation system.
virtual mfem::BilinearFormIntegrator * createMBFIntegrator() override
Create MFEM mixed bilinear form integrator. Ownership managed by the caller.
MFEMMixedVectorGradientKernel(const InputParameters &parameters)