Alamo
Implicit.H
Go to the documentation of this file.
1 #ifndef OPERATOR_IMPLICIT_IMPLICIT_H_
2 #define OPERATOR_IMPLICIT_IMPLICIT_H_
3 
4 #include <AMReX_MLCellLinOp.H>
5 #include <AMReX_Array.H>
6 #include <limits>
7 
8 #include "Operator/Operator.H"
9 
10 
11 using namespace amrex;
12 
13 namespace Operator
14 {
15 namespace Implicit
16 {
17 class Implicit : public Operator<Grid::Cell>
18 {
19 public:
20  Implicit () {}
21  Implicit (const Vector<Geometry>& a_geom,
22  const Vector<BoxArray>& a_grids,
23  const Vector<DistributionMapping>& a_dmap,
24  BC::BC<Set::Scalar>& a_bc,
25  const LPInfo& a_info);
26  virtual ~Implicit () {};
27  Implicit (const Implicit&) = delete;
28  Implicit (Implicit&&) = delete;
29  Implicit& operator= (const Implicit&) = delete;
30  Implicit& operator= (Implicit&&) = delete;
31 
32 protected:
33 
34  virtual void Fapply (int amrlev, int mglev, MultiFab& out, const MultiFab& in) const final;
35  virtual void Fsmooth (int amrlev, int mglev, MultiFab& sol, const MultiFab& rsh, int redblack) const final;
36  virtual void FFlux (int amrlev, const MFIter& mfi,
37  const Array<FArrayBox*,AMREX_SPACEDIM>& flux,
38  const FArrayBox& sol, Location loc, const int face_only=0) const;
39  virtual int getNComp() const {return AMREX_SPACEDIM;};
40  virtual bool isCrossStencil () const { return false; }
41 private:
42 };
43 }
44 }
45 #endif
BC::BC< Set::Scalar >
Operator::Implicit::Implicit::~Implicit
virtual ~Implicit()
Definition: Implicit.H:26
Operator::Implicit::Implicit::getNComp
virtual int getNComp() const
Definition: Implicit.H:39
Operator
Documentation for operator namespace.
Definition: Diagonal.cpp:13
Operator::Implicit::Implicit::Implicit
Implicit()
Definition: Implicit.H:20
Operator::Implicit::Implicit
Definition: Implicit.H:17
Operator::Implicit::Implicit::isCrossStencil
virtual bool isCrossStencil() const
Definition: Implicit.H:40