Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

EBFluxFAB.H

Go to the documentation of this file.
00001 /* _______              __
00002   / ___/ /  ___  __ _  / /  ___
00003  / /__/ _ \/ _ \/  ' \/ _ \/ _ \
00004  \___/_//_/\___/_/_/_/_.__/\___/ 
00005 */
00006 
00007 //
00008 // This software is copyright (C) by the Lawrence Berkeley
00009 // National Laboratory.  Permission is granted to reproduce
00010 // this software for non-commercial purposes provided that
00011 // this notice is left intact.
00012 // 
00013 // It is acknowledged that the U.S. Government has rights to
00014 // this software under Contract DE-AC03-765F00098 between
00015 // the U.S.  Department of Energy and the University of
00016 // California.
00017 //
00018 // This software is provided as a professional and academic
00019 // contribution for joint exchange. Thus it is experimental,
00020 // is provided ``as is'', with no warranties of any kind
00021 // whatsoever, no support, no promise of updates, or printed
00022 // documentation. By using this software, you acknowledge
00023 // that the Lawrence Berkeley National Laboratory and
00024 // Regents of the University of California shall have no
00025 // liability with respect to the infringement of other
00026 // copyrights by any part of this software.
00027 //
00028 // DTG  7-31-2001
00029 
00030 #ifndef _EBFluxFAB_H_
00031 #define _EBFluxFAB_H_
00032 
00033 #include "Box.H"
00034 #include "Vector.H"
00035 #include "EBFaceFAB.H"
00036 
00038 
00041 class EBFluxFAB
00042 {
00043 
00044 public:
00046   EBFluxFAB();
00047 
00048 
00050   ~EBFluxFAB();
00051 
00053   void clear();
00054 
00056 
00058   int nComp() const;
00059 
00061   const Box& getRegion() const;
00062 
00064   EBFaceFAB& operator[] (const int dir);
00065 
00067   const EBFaceFAB& operator[] (const int dir) const;
00068 
00069 
00070   void setVal(const Real& val);
00071 
00073 
00077   void copy(const Box& Rfrom, 
00078             const Interval& Cdest,  
00079             const Box& Rto, 
00080             const EBFluxFAB& src,
00081             const Interval& Csrc);
00082 
00084   bool isDefined() const;
00085 
00087   EBFluxFAB(const EBISBox& a_ebisBox, const Box& bx, int n);
00088 
00090   void define(const EBISBox& a_ebisBox, const Box& bx, int n);
00091 
00093   EBFluxFAB(const Box& bx, int n)
00094   {
00095     MayDay::Error("bogus constructor");
00096   }
00097 protected:
00098   void setDefaultValues();
00099 
00101   Box m_region;
00102 
00104   EBISBox m_ebisBox;
00105 
00107   int m_nComp;
00108 
00109   bool m_isDefined;
00110 
00112   Tuple<EBFaceFAB*, CH_SPACEDIM> m_fluxes;
00113 
00114 
00115 private:
00117   
00118   EBFluxFAB (const EBFluxFAB&)
00119   {
00120     MayDay::Error("bogus constructor");
00121   }
00122 
00123   void operator = (const EBFluxFAB&)
00124   {
00125     MayDay::Error("bogus constructor");
00126   }
00127 
00128 };
00129 
00130   
00131 
00132 #endif
00133 
00134 

Generated on Wed Apr 16 14:31:04 2003 for EBChombo by doxygen1.2.16