LStepSigma.h
00001 #ifndef gridripper_amr1d_sigma_LStepSigma_h
00002 #define gridripper_amr1d_sigma_LStepSigma_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 LStepSigma: public Sigma {
00021
00022 private:
00023 GReal_t sigma0;
00024 GReal_t sigma1;
00025 int index;
00026 GReal_t d;
00027
00028 public:
00029 LStepSigma(const string& cmd, const Parameters& param, const PDE& pde);
00030
00031 LStepSigma(GReal_t sigma0, GReal_t sigma1, int i);
00032
00033 GReal_t getValue(GReal_t x, int ileft, int iright) const;
00034
00039 Sigma* cloneSigma() const {
00040 return new LStepSigma(sigma0, sigma1, index);
00041 }
00042 };
00043
00044 } } }
00045
00046 #endif