--- branches/new_design/OOPSE-2.0/src/math/ChebyshevPolynomials.hpp 2004/11/17 18:58:49 1747 +++ branches/new_design/OOPSE-2.0/src/math/ChebyshevPolynomials.hpp 2004/11/17 21:47:42 1748 @@ -80,15 +80,43 @@ class ChebyshevPolynomials { assert (n <= maxPower_ && n >=0); return polyList_[n]; } - + + protected: + + std::vector polyList_; + private: void GeneratePolynomials(int maxPower); - - std::vector polyList_; + virtual void GenerateFirstTwoTerms() = 0; + int maxPower_; }; +/** + * @class ChebyshevT + * @todo document + */ +class ChebyshevT : public ChebyshevPolynomials { + public: + ChebyshevT(int maxPower) :ChebyshevPolynomials(maxPower) {} + private: + virtual void GenerateFirstTwoTerms(); +}; + +/** + * @class ChebyshevU + * @todo document + */ +class ChebyshevU : public ChebyshevPolynomials { + public: + ChebyshevU(int maxPower) :ChebyshevPolynomials(maxPower) {} + + private: + virtual void GenerateFirstTwoTerms(); +}; + + } //end namespace oopse #endif //MATH_CHEBYSHEVPOLYNOMIALS_HPP