00001 // QMcBeaver 00002 // 00003 // Constructed by 00004 // 00005 // Michael Todd Feldmann 00006 // and 00007 // David Randall "Chip" Kent IV 00008 // 00009 // Copyright 2002. All rights reserved. 00010 // 00011 // drkent@users.sourceforge.net mtfeldmann@users.sourceforge.net 00012 00013 #include "CubicSplineWithGeometricProgressionGrid.h" 00014 00015 CubicSplineWithGeometricProgressionGrid:: 00016 CubicSplineWithGeometricProgressionGrid():CubicSpline() 00017 { 00018 x0 = 0; 00019 inverselnbeta = 0; 00020 } 00021 00022 void CubicSplineWithGeometricProgressionGrid::setGridParameters(double x0, 00023 double beta) 00024 { 00025 this->x0 = x0; 00026 this->inverselnbeta = 1.0/log(beta); 00027 } 00028 00029 void CubicSplineWithGeometricProgressionGrid::evaluate(double x) 00030 { 00031 // which box of the domain is x in? 00032 int box = (int) ( log(x/x0) * inverselnbeta ); 00033 00034 CubicSpline::evaluate(x,box); 00035 } 00036 00037 void CubicSplineWithGeometricProgressionGrid:: 00038 operator=( const CubicSplineWithGeometricProgressionGrid & rhs ) 00039 { 00040 CubicSpline::operator=(rhs); 00041 this->x0 = rhs.x0; 00042 this->inverselnbeta = rhs.inverselnbeta; 00043 }