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

DustCollapseIBC.H

Go to the documentation of this file.
00001 
00002 #ifndef  _DUST_COLLAPSE_IBC_H_
00003 #define  _DUST_COLLAPSE_IBC_H_
00004 
00005 #include  <iostream>
00006 
00007 #include "LevelData.H"
00008 #include "FArrayBox.H"
00009 #include "Vector.H"
00010 #include "RealVect.H"
00011 #include "AMRIO.H"
00012 #include "PhysIBC.H"
00013 
00014 
00016 
00029 class DustCollapseIBC : public PhysIBC
00030 {
00031 public:
00033 
00035   DustCollapseIBC();
00036   
00038 
00040   DustCollapseIBC(const Real&  a_gamma,
00041                const Real&  a_radius,
00042                const Real&  a_density,
00043                const Real&  a_artvisc,
00044                const Real&  a_rsTolerance,
00045                const Real&  a_maxRsIter,
00046                   const Real&  a_maxMach);
00047 
00049 
00051   ~DustCollapseIBC() {};
00052 
00054 
00056   void setFortranCommon(const Real&  a_gamma,
00057                         const Real&  a_radius,
00058                         const Real&  a_density,
00059                         const Real&  a_artvisc,
00060                         const Real&  a_rsTolerance,
00061                         const Real&  a_maxRsIter,
00062                         const Real&  a_maxMach);
00063 
00065 
00070   void setFortranCommonSet();
00071 
00073 
00078   PhysIBC *new_physIBC();
00079 
00081   void primBC(FArrayBox&            a_WGdnv,
00082               const FArrayBox&      a_Wextrap,
00083               const FArrayBox&      a_W,
00084               const int&            a_dir,
00085               const Side::LoHiSide& a_side,
00086               const Real&           a_time);
00087   
00089   void setBdrySlopes(FArrayBox&       a_dW,
00090                      const FArrayBox& a_W,
00091                      const int&       a_dir,
00092                      const Real&      a_time);
00093 
00095   void artViscBC(FArrayBox&       a_F,
00096                  const FArrayBox& a_U,
00097                  const FArrayBox& a_divVel,
00098                  const int&       a_dir,
00099                  const Real&      a_time);
00100   
00102   void initialize(LevelData<FArrayBox>& a_U);
00103 
00104 protected:
00105   // cloud density and radius (for spher. dust collapse and makes central
00106   // mass for the secondary infall)
00107   Real m_density, m_radius;
00108 
00109   // True if the Fortran common block has been set
00110   bool m_isFortranCommonSet;
00111 };
00112 
00113 #endif

Generated on Wed Oct 19 13:33:48 2005 for Chombo&AMRSelfGravity by doxygen 1.3.2