00001 #ifndef _MY__FFractionalLinearMobility_ 00002 #define _MY_FFractionalLinearMobility_ 00003 #include "sfunctions.h" 00004 00005 00009 class FFractionalLinearMobility : public Function1D 00010 { 00011 private: 00012 double _v1,_v2; 00013 double _M; 00014 protected: 00015 00016 public: 00017 FFractionalLinearMobility(double v1,double v2) 00018 :Function1D(1),_v1(v1),_v2(v2) 00019 { 00020 _M = v1/v2; 00021 } 00022 virtual ~FFractionalLinearMobility(){}; 00023 00024 virtual double operator()(double dd,unsigned cmp =0) const 00025 { 00026 00027 return dd/(_M*(1-dd) + dd); 00028 } 00029 00030 }; 00031 00032 00033 00034 #endif