1 /*****************************************************************************
2 ** This is part of the CTSim program
3 ** Copyright (c) 1983-2001 Kevin Rosenberg
5 ** $Id: interpolator.h,v 1.1 2001/02/11 21:57:08 kevin Exp $
7 ** This program is free software; you can redistribute it and/or modify
8 ** it under the terms of the GNU General Public License (version 2) as
9 ** published by the Free Software Foundation.
11 ** This program is distributed in the hope that it will be useful,
12 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
13 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ** GNU General Public License for more details.
16 ** You should have received a copy of the GNU General Public License
17 ** along with this program; if not, write to the Free Software
18 ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 ******************************************************************************/
22 class CubicSplineInterpolator {
24 double *m_pdY2; // second differential of y data
26 const double* const m_pdY;
30 CubicSplineInterpolator (const double* const y, int n);
32 ~CubicSplineInterpolator ();
34 double interpolate (double x);
37 class CubicPolyInterpolator {
39 const double* const m_pdY;
43 CubicPolyInterpolator (const double* const y, int n);
45 ~CubicPolyInterpolator ();
47 double interpolate (double x);