Chombo + EB + MF  3.2
AMRLevelMappedTaggingStrategy.H
Go to the documentation of this file.
1 #ifdef CH_LANG_CC
2 /*
3  * _______ __
4  * / ___/ / ___ __ _ / / ___
5  * / /__/ _ \/ _ \/ V \/ _ \/ _ \
6  * \___/_//_/\___/_/_/_/_.__/\___/
7  * Please refer to Copyright.txt, in Chombo's root directory.
8  */
9 #endif
10 
11 #ifndef _AMRLEVELMAPPEDTAGGINGSTRATEGY_H_
12 #define _AMRLEVELMAPPEDTAGGINGSTRATEGY_H_
13 
14 #include "IntVectSet.H"
15 #include "MOLPhysics.H"
16 #include "LevelGridMetrics.H"
17 #include "MappedLevelData.H"
18 
19 #include "NamespaceHeader.H"
20 
21 //! \class AMRLevelMappedTaggingStrategy
22 //! This class defines an interface for tagging cells for refinement
23 //! in high-order mapped AMR algorithms.
25 {
26  public:
27 
28  //! Base class strategy constructor. Must be called by all subclasses.
30 
31  /// Destructor.
33 
34  //! Override this method to return the set of cells to be refined
35  //! on the computational domain.
36  virtual IntVectSet cellsToRefine(int a_level,
37  const ProblemDomain& a_problem_domain,
38  const DisjointBoxLayout& a_grids,
39  LevelGridMetrics* a_gridMetrics,
40  const MOLPhysics& a_physics,
41  const MappedLevelData& a_data,
42  Real a_dx,
43  Real a_time) const = 0;
44 
45  //! Override this method to create a new AMRLevelMappedStabilityStrategy instance.
46  virtual AMRLevelMappedTaggingStrategy* clone() const = 0;
47 
48  private:
49 
50  // Copy and assignment not allowed
53 };
54 
55 #include "NamespaceFooter.H"
56 
57 #endif
virtual AMRLevelMappedTaggingStrategy * clone() const =0
Override this method to create a new AMRLevelMappedStabilityStrategy instance.
An irregular domain on an integer lattice.
Definition: IntVectSet.H:44
A class to facilitate interaction with physical boundary conditions.
Definition: ProblemDomain.H:141
Grid metrics on and between levels.
Solution data on a level for mapped grids.
Definition: MappedLevelData.H:54
virtual ~AMRLevelMappedTaggingStrategy()
Destructor.
Definition: MOLPhysics.H:37
AMRLevelMappedTaggingStrategy & operator=(const AMRLevelMappedTaggingStrategy &)
double Real
Definition: REAL.H:33
Grid metrics for a level.
Definition: LevelGridMetrics.H:223
A BoxLayout that has a concept of disjointedness.
Definition: DisjointBoxLayout.H:30
AMRLevelMappedTaggingStrategy()
Base class strategy constructor. Must be called by all subclasses.
virtual IntVectSet cellsToRefine(int a_level, const ProblemDomain &a_problem_domain, const DisjointBoxLayout &a_grids, LevelGridMetrics *a_gridMetrics, const MOLPhysics &a_physics, const MappedLevelData &a_data, Real a_dx, Real a_time) const =0
Maintenance of <U> and <JU>
Definition: AMRLevelMappedTaggingStrategy.H:24