www.mooseframework.org
Eigenvalue.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
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 // MOOSE includes
11 #include "Eigenvalue.h"
12 #include "EigenProblem.h"
13 #include "Factory.h"
14 #include "MooseApp.h"
15 #include "NonlinearEigenSystem.h"
16 #include "SlepcSupport.h"
17 
18 registerMooseObject("MooseApp", Eigenvalue);
19 
20 template <>
23 {
25 
26  params.addClassDescription("Eigenvalue solves a standard/generalized eigenvaue problem");
27 
28  params.addPrivateParam<bool>("_use_eigen_value", true);
29 
30 // Add slepc options and eigen problems
31 #ifdef LIBMESH_HAVE_SLEPC
33 
35 #endif
36  return params;
37 }
38 
40  : Steady(parameters),
41  _eigen_problem(*getCheckedPointerParam<EigenProblem *>(
42  "_eigen_problem", "This might happen if you don't have a mesh"))
43 {
44 // Extract and store SLEPc options
45 #if LIBMESH_HAVE_SLEPC
47 
50 #endif
51 }
52 
53 void
55 {
56 #if LIBMESH_HAVE_SLEPC
57  // Make sure the SLEPc options are setup for this app
59 #endif
61 }
SolverParams & solverParams()
Get the solver parameters.
void addPrivateParam(const std::string &name, const T &value)
These method add a parameter to the InputParameters object which can be retrieved like any other para...
InputParameters validParams< Eigenvalue >()
Definition: Eigenvalue.C:22
Steady executioners usually only call "solve()" on the NonlinearSystem once.
Definition: Steady.h:31
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
InputParameters getSlepcValidParams(InputParameters &params)
Definition: SlepcSupport.C:35
Moose::EigenProblemType _eigen_problem_type
Definition: SolverParams.h:25
virtual void execute() override
Pure virtual execute function MUST be overridden by children classes.
Definition: Eigenvalue.C:54
InputParameters validParams< Steady >()
Definition: Steady.C:23
Eigenvalue(const InputParameters &parameters)
Constructor.
Definition: Eigenvalue.C:39
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseObject.h:65
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
Definition: MooseObject.h:174
registerMooseObject("MooseApp", Eigenvalue)
void storeSlepcEigenProblemOptions(EigenProblem &eigen_problem, const InputParameters &params)
Definition: SlepcSupport.C:166
void storeSlepcOptions(FEProblemBase &fe_problem, const InputParameters &params)
Definition: SlepcSupport.C:203
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...
virtual void execute() override
Pure virtual execute function MUST be overridden by children classes.
Definition: Steady.C:59
EigenProblem & _eigen_problem
Definition: Eigenvalue.h:38
Problem for solving eigenvalue problems.
Definition: EigenProblem.h:25
void setEigenproblemType(Moose::EigenProblemType eigen_problem_type)
Definition: EigenProblem.C:69
void slepcSetOptions(EigenProblem &eigen_problem, const InputParameters &params)
Definition: SlepcSupport.C:428
InputParameters getSlepcEigenProblemValidParams()
Definition: SlepcSupport.C:63
FEProblemBase & _fe_problem
Definition: Executioner.h:127