https://mooseframework.inl.gov
Loading...
Searching...
No Matches
SolveObject.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 "MooseObject.h"
13#include "PerfGraphInterface.h"
15
16class SolveObject;
17class Executioner;
18class FEProblemBase;
20class MooseMesh;
21class SystemBase;
22class AuxiliarySystem;
23
29{
30 bool operator()(const SystemBase * a, const SystemBase * b) const;
31};
32
A system that holds auxiliary variables.
Executioners are objects that do the actual work of solving your problem.
Definition Executioner.h:37
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
Definition MooseMesh.h:95
Every object that can be built by the factory should be derived from this class.
Definition MooseObject.h:31
Interface for objects interacting with the PerfGraph.
Interface class for classes which interact with Postprocessors.
SystemBase & _solver_sys
Reference to a system for creating vectors as needed for the solve, etc.
Definition SolveObject.h:64
FEProblemBase & _problem
Reference to FEProblem.
Definition SolveObject.h:56
DisplacedProblem * _displaced_problem
Displaced problem.
Definition SolveObject.h:58
SolveObject * _inner_solve
SolveObject wrapped by this solve object.
Definition SolveObject.h:68
virtual void initialSetup()
Method that should be executed once, before any solve calls.
Definition SolveObject.h:41
Executioner & _executioner
Executioner used to construct this.
Definition SolveObject.h:54
AuxiliarySystem & _aux
Reference to auxiliary system for faster access.
Definition SolveObject.h:66
virtual bool solve()=0
Solve routine provided by this object.
MooseMesh * _displaced_mesh
Displaced mesh.
Definition SolveObject.h:62
virtual void setInnerSolve(SolveObject &solve)
Set the inner solve object wrapped by this object.
Definition SolveObject.h:50
MooseMesh & _mesh
Mesh.
Definition SolveObject.h:60
Base class for a system (of equations)
Definition SystemBase.h:87
Orders systems by system number.
Definition SolveObject.h:29
bool operator()(const SystemBase *a, const SystemBase *b) const
Definition SolveObject.C:38