https://mooseframework.inl.gov
SteadyAndAdjoint.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 "Steady.h"
13 #include "AdjointSolve.h"
14 
15 // Forward declarations
16 class InputParameters;
17 
18 class SteadyAndAdjoint : public Steady
19 {
20 public:
22 
24 
29  virtual void execute() override;
30 
34  virtual bool lastSolveConverged() const override { return _last_solve_converged; }
35 
36 protected:
40 
41 private:
42  bool _last_solve_converged = true;
43 };
AdjointSolve _adjoint_solve
The solver which computes the adjoint system.
virtual bool lastSolveConverged() const override
Copy of the functionality from Steady to keep track of whether the latest solve converged.
The solve object is responsible for solving the adjoint version of a forward model.
Definition: AdjointSolve.h:31
SteadyAndAdjoint(const InputParameters &parameters)
virtual void execute() override
This call is basically a copy from Steady without the AMR loop and with a call to the adjoint solver ...
const InputParameters & parameters() const
static InputParameters validParams()