VaryingSigma.h

00001 #ifndef gridripper_amr1d_sigma_VaryingSigma_h
00002 #define gridripper_amr1d_sigma_VaryingSigma_h
00003 
00004 #include <gridripper/Parameters.h>
00005 #include <gridripper/lang/StreamTokenizer.h>
00006 #include <gridripper/amr1d/Sigma.h>
00007 
00008 namespace gridripper { namespace amr1d { namespace sigma {
00009 
00010 using namespace gridripper::util;
00011 using namespace std;
00012 
00020 class VaryingSigma: public Sigma {
00021 
00022 private:
00023     GReal_t sigma0;
00024     GReal_t sigma1;
00025     GReal_t x0;
00026     GReal_t x1;
00027     GReal_t ramp;
00028     GReal_t a;
00029     GReal_t d;
00030 
00031 public:
00032     VaryingSigma(const string& cmd, const Parameters& param, const PDE& pde);
00033 
00034     VaryingSigma(GReal_t sigma0, GReal_t sigma1, GReal_t x0, GReal_t x1);
00035 
00036     GReal_t getValue(GReal_t x, int ileft, int iright) const;
00037 
00042     Sigma* cloneSigma() const;
00043 };
00044 
00045 } } } // namespace gridripper::amr1d::sigma
00046 
00047 #endif /* gridripper_amr1d_sigma_VaryingSigma_h */

Generated on Wed Jun 17 18:46:47 2009 for GridRipper by  doxygen 1.5.6