https://mooseframework.inl.gov
Loading...
Searching...
No Matches
Eigenvalue.h
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#pragma once
11
12#include "libmesh/libmesh_config.h"
13
14#include "Executioner.h"
15#include "EigenProblemSolve.h"
16
17class InputParameters;
18class EigenProblem;
19
28class Eigenvalue : public Executioner
29{
30public:
32
39
40 virtual void execute() override;
41
42 virtual bool lastSolveConverged() const override { return _last_solve_converged; }
43
44#ifdef LIBMESH_HAVE_SLEPC
45 virtual void init() override;
46
50 virtual void checkIntegrity();
51
55 unsigned int numGridSteps() const { return _eigen_problem_solve.numGridSteps(); }
56#endif
57
58protected:
60
63
66 Real & _time;
67
69
70private:
72};
unsigned int PerfID
Definition MooseTypes.h:240
EigenProblemSolve is used to solve an eigenvalue problem interfacing SLEPc.
Problem for solving eigenvalue problems.
Eigenvalue executioner is used to drive the eigenvalue calculations.
Definition Eigenvalue.h:29
virtual void init() override
Initialize the executioner.
Definition Eigenvalue.C:49
Real & _time
Definition Eigenvalue.h:66
EigenProblem & _eigen_problem
Definition Eigenvalue.h:59
unsigned int numGridSteps() const
Get the number of grid sequencing steps.
Definition Eigenvalue.h:55
static InputParameters validParams()
Definition Eigenvalue.C:20
virtual bool lastSolveConverged() const override
Whether or not the last solve converged.
Definition Eigenvalue.h:42
EigenProblemSolve _eigen_problem_solve
inner-most solve object to perform Newton solve with SLEPc
Definition Eigenvalue.h:62
int & _time_step
Definition Eigenvalue.h:65
bool _last_solve_converged
Definition Eigenvalue.h:71
Real _system_time
Definition Eigenvalue.h:64
virtual void checkIntegrity()
Eigenvalue executioner does not allow time kernels.
Definition Eigenvalue.C:72
virtual void execute() override
Pure virtual execute function MUST be overridden by children classes.
Definition Eigenvalue.C:81
PerfID _final_timer
Definition Eigenvalue.h:68
Executioners are objects that do the actual work of solving your problem.
Definition Executioner.h:37
unsigned int numGridSteps() const
Return the number of grid sequencing steps.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131