www.mooseframework.org
ExplicitRK2.h
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 #ifndef EXPLICITRK2_H
16 #define EXPLICITRK2_H
17 
18 #include "TimeIntegrator.h"
19 
20 class ExplicitRK2;
21 
22 template <>
24 
66 {
67 public:
69  virtual ~ExplicitRK2();
70 
71  virtual void preSolve();
72  virtual int order() { return 2; }
73 
74  virtual void computeTimeDerivatives();
75  virtual void solve();
76  virtual void postStep(NumericVector<Number> & residual);
77 
78 protected:
79  unsigned int _stage;
80 
82  NumericVector<Number> & _residual_old;
83 
87  virtual Real a() const = 0;
88  virtual Real b1() const = 0;
89  virtual Real b2() const = 0;
90 };
91 
92 #endif /* EXPLICITRK2_H */
virtual Real b2() const =0
InputParameters validParams< ExplicitRK2 >()
Definition: ExplicitRK2.C:22
virtual void solve()
Definition: ExplicitRK2.C:65
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
Base class for three different explicit second-order Runge-Kutta time integration methods: ...
Definition: ExplicitRK2.h:65
virtual Real b1() const =0
virtual void computeTimeDerivatives()
Definition: ExplicitRK2.C:48
virtual int order()
Definition: ExplicitRK2.h:72
virtual ~ExplicitRK2()
Definition: ExplicitRK2.C:36
virtual void postStep(NumericVector< Number > &residual)
Callback to the TimeIntegrator called immediately after the residuals are computed in NonlinearSystem...
Definition: ExplicitRK2.C:100
unsigned int _stage
Definition: ExplicitRK2.h:79
virtual Real a() const =0
The method coefficients.
NumericVector< Number > & _residual_old
Buffer to store non-time residual from the first stage.
Definition: ExplicitRK2.h:82
Base class for time integrators.
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseObject.h:53
ExplicitRK2(const InputParameters &parameters)
Definition: ExplicitRK2.C:29
virtual void preSolve()
Definition: ExplicitRK2.C:39