https://mooseframework.inl.gov
Loading...
Searching...
No Matches
MFEMComplexVectorProjectionAux.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
15
18{
21 "Projects a a real and imaginary vector coefficient onto a complex vector MFEM auxvariable.");
22 params.addRequiredParam<MFEMVectorCoefficientName>(
23 "vector_coefficient_real", "Name of the real part of the vector coefficient to project.");
24 params.addRequiredParam<MFEMVectorCoefficientName>(
25 "vector_coefficient_imag",
26 "Name of the imaginary part of the vector coefficient to project.");
27 return params;
28}
29
31 : MFEMComplexAuxKernel(parameters),
32 _vec_coef_real(getVectorCoefficient("vector_coefficient_real")),
33 _vec_coef_imag(getVectorCoefficient("vector_coefficient_imag"))
34{
35}
36
37void
42
43#endif
registerMooseObject("MooseApp", MFEMComplexVectorProjectionAux)
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
void addRequiredParam(const std::string &name, const std::string &doc_string)
This method adds a parameter and documentation string to the InputParameters object that will be extr...
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 auxiliary solver used to update a complex auxvariable.
mfem::ParComplexGridFunction & _result_var
Reference to result complex gridfunction.
static InputParameters validParams()
Projects a vector coefficient onto a vector-valued auxvariable.
mfem::VectorCoefficient & _vec_coef_real
Reference to source coefficient for the real part.
mfem::VectorCoefficient & _vec_coef_imag
Reference to source coefficient for the imaginary part.
MFEMComplexVectorProjectionAux(const InputParameters &parameters)
virtual void execute() override
Perform the main work for this object.