www.mooseframework.org
FEProblem.C
Go to the documentation of this file.
1 /****************************************************************/
2 /* DO NOT MODIFY THIS HEADER */
3 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
4 /* */
5 /* (c) 2010 Battelle Energy Alliance, LLC */
6 /* ALL RIGHTS RESERVED */
7 /* */
8 /* Prepared by Battelle Energy Alliance, LLC */
9 /* Under Contract No. DE-AC07-05ID14517 */
10 /* With the U. S. Department of Energy */
11 /* */
12 /* See COPYRIGHT for full restrictions */
13 /****************************************************************/
14 
15 #include "FEProblem.h"
16 
17 #include "Assembly.h"
18 #include "AuxiliarySystem.h"
19 #include "MooseEigenSystem.h"
20 #include "NonlinearSystem.h"
21 
22 template <>
25 {
27  return params;
28 }
29 
31  : FEProblemBase(parameters),
32  _use_nonlinear(getParam<bool>("use_nonlinear")),
33  _nl_sys(_use_nonlinear ? (std::make_shared<NonlinearSystem>(*this, "nl0"))
34  : (std::make_shared<MooseEigenSystem>(*this, "eigen0")))
35 {
36  _nl = _nl_sys;
37  _aux = std::make_shared<AuxiliarySystem>(*this, "aux0");
38 
40 
41  initNullSpaceVectors(parameters, *_nl_sys);
42 
43  _eq.parameters.set<FEProblem *>("_fe_problem") = this;
44 }
45 
47 
48 void
50 {
51  // set _fe_problem
53  // set _fe_problem
54  parameters.set<FEProblem *>("_fe_problem") = this;
55 }
virtual void setInputParametersFEProblem(InputParameters &parameters) override
Definition: FEProblem.C:49
virtual void setInputParametersFEProblem(InputParameters &parameters)
std::shared_ptr< NonlinearSystemBase > _nl
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
Definition: FEProblem.h:30
virtual void initNullSpaceVectors(const InputParameters &parameters, NonlinearSystemBase &nl)
T & set(const std::string &name, bool quiet_mode=false)
Returns a writable reference to the named parameters.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
virtual ~FEProblem()
Definition: FEProblem.C:46
InputParameters validParams< FEProblem >()
Definition: FEProblem.C:24
FEProblem(const InputParameters &parameters)
Definition: FEProblem.C:30
virtual void newAssemblyArray(NonlinearSystemBase &nl)
std::shared_ptr< AuxiliarySystem > _aux
std::shared_ptr< NonlinearSystem > _nl_sys
Definition: FEProblem.h:46
Nonlinear system to be solved.
InputParameters validParams< FEProblemBase >()
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseObject.h:53
EquationSystems _eq
virtual void deleteAssemblyArray()