00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #ifndef _boxVelBC_H_
00033 #define _boxVelBC_H_
00034
00035 #include "basicVelBC.H"
00036 #include "FluxBox.H"
00037 #include "ProblemDomain.H"
00038
00040 class boxVelBC: public basicVelBC
00041 {
00042
00043 public:
00044
00046 boxVelBC(bool isViscous=false);
00047
00049 virtual ~boxVelBC() {};
00050
00052 virtual void setAllBCTypes();
00053
00055 bool isViscous();
00056
00058 void isViscous(bool a_isViscous);
00059
00060 protected:
00062 bool m_isViscous;
00063
00064 private:
00065
00066 };
00067
00068
00070 class boxEdgeVelBC: public basicVelBC
00071 {
00072
00073 public:
00074
00076 boxEdgeVelBC(bool isViscous=false);
00077
00079 virtual ~boxEdgeVelBC() {};
00080
00082 virtual void setAllBCTypes();
00083
00085 bool isViscous();
00086
00088 void isViscous(bool a_isViscous);
00089
00091 virtual void applyBCs(LevelData<FluxBox>& a_edgeStateMF,
00092 const ProblemDomain& a_domain,
00093 const Real a_dx) const;
00094
00096 virtual void applyBCs(LevelData<FluxBox>& a_edgeStateMF,
00097 const Box& a_domain, const Real a_dx) const;
00098
00099
00101 virtual void applyBCs(FluxBox& a_edgeStateMF,
00102 const ProblemDomain& a_domain,
00103 const Real a_dx) const;
00104
00106 virtual void applyBCs(FluxBox& a_edgeStateMF,
00107 const Box& a_domain, const Real a_dx) const;
00108
00110 virtual void applyBCs(FArrayBox& a_state,
00111 const ProblemDomain& a_domain,
00112 const Real a_dx) const;
00113
00114
00116 virtual void applyBCs(FArrayBox& a_state, const Box& a_domain,
00117 const Real a_dx) const;
00118
00120 virtual void applyBCs(FArrayBox& a_state, const ProblemDomain& a_domain,
00121 const Real a_dx, int a_velComp) const;
00122
00123
00125 virtual void applyBCs(FArrayBox& a_state, const Box& a_domain,
00126 const Real a_dx, int a_velComp) const;
00127
00128 protected:
00130 bool m_isViscous;
00131
00132 private:
00133 };
00134
00135 #endif