Chombo + EB  3.2
TensorCFIVS.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 _TENSORCFIVS_H_
12 #define _TENSORCFIVS_H_
13 
14 #include <iostream>
15 #include <cmath>
16 #include "SPACE.H"
17 #include <cstdlib>
18 #include "REAL.H"
19 #include "IntVect.H"
20 #include "Box.H"
21 #include "LoHiSide.H"
22 #include "DisjointBoxLayout.H"
23 #include "IntVectSet.H"
24 #include "ProblemDomain.H"
25 #include "NamespaceHeader.H"
26 
27 ///Class to get fine intvectset at CF interface
28 /**
29 Class to get fine intvectset at cf interface.
30 This class should be considered internal to AMRSolver and should
31 not be considered part of the Chombo API.
32 */
34 {
35 
36 private:
37 
38 protected:
39  //for internal use
40  void setDefaultValues();
41 
42  //the following variables are mainly for self-identification
43 
44  /* fine intvects which need to be interpolated */
46 
47  bool isdefined;
48 
49 public:
50 
51  ///
52  bool isDefined() const;
53 
54  ///
55  /** Get fine intvects which need to be interpolated.
56  This will be empty if isEmpty() returns true*/
57  const IntVectSet& getFineIVS() const ;
58 
59  ///
60  TensorCFIVS();
61 
62  ///
63  ~TensorCFIVS();
64 
65  ///
67  const Box& Domain,
68  const Box& box_in,
69  const DisjointBoxLayout& Levboxes,
70  int Direction,
71  Side::LoHiSide hiorlo);
72 
73 
74  ///
76  const ProblemDomain& Domain,
77  const Box& box_in,
78  const DisjointBoxLayout& Levboxes,
79  int Direction,
80  Side::LoHiSide hiorlo);
81 
82  ///
83  void define(
84  const Box& Domain,
85  const Box& box_in,
86  const DisjointBoxLayout& fine_boxes,
87  int Direction,
88  Side::LoHiSide hiorlo);
89 
90  ///
91  void define(
92  const ProblemDomain& Domain,
93  const Box& box_in,
94  const DisjointBoxLayout& fine_boxes,
95  int Direction,
96  Side::LoHiSide hiorlo);
97 
98 private:
99  void operator= (const TensorCFIVS& levcfs_in)
100  {
101  }
102 
103  TensorCFIVS(const TensorCFIVS& levcfs_in)
104  {
105  }
106 };
107 #include "NamespaceFooter.H"
108 #endif
An irregular domain on an integer lattice.
Definition: IntVectSet.H:44
A class to facilitate interaction with physical boundary conditions.
Definition: ProblemDomain.H:141
IntVectSet fiinterp_ivs
Definition: TensorCFIVS.H:45
TensorCFIVS(const TensorCFIVS &levcfs_in)
Definition: TensorCFIVS.H:103
A BoxLayout that has a concept of disjointedness.
Definition: DisjointBoxLayout.H:30
LoHiSide
Definition: LoHiSide.H:27
Class to get fine intvectset at CF interface.
Definition: TensorCFIVS.H:33
void operator=(const TensorCFIVS &levcfs_in)
Definition: TensorCFIVS.H:99
A Rectangular Domain on an Integer Lattice.
Definition: Box.H:465
const IntVectSet & getFineIVS() const
bool isDefined() const
void setDefaultValues()
bool isdefined
Definition: TensorCFIVS.H:47
void define(const Box &Domain, const Box &box_in, const DisjointBoxLayout &fine_boxes, int Direction, Side::LoHiSide hiorlo)