psMinimizePolyFit.h

Go to the documentation of this file.
00001 /* @file  psMinimizePolyFit.c
00002  * @brief basic minimization functions
00003  *
00004  * This file will contain function prototypes for various
00005  * 1-D polynomial fitting routines.
00006  *
00007  * @author GLG, MHPCC
00008  *
00009  * @version $Revision: 1.4 $ $Name:  $
00010  * @date $Date: 2007/01/23 22:47:23 $
00011  * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
00012  *
00013  */
00014 
00015 #ifndef PS_MINIMIZE_POLYFIT_H
00016 #define PS_MINIMIZE_POLYFIT_H
00017 
00018 /// @addtogroup MathOps Mathematical Operations
00019 /// @{
00020 
00021 #include "psVector.h"
00022 #include "psMemory.h"
00023 #include "psArray.h"
00024 #include "psImage.h"
00025 #include "psMatrix.h"
00026 #include "psPolynomial.h"
00027 #include "psSpline.h"
00028 #include "psStats.h"
00029 #include "psTrace.h"
00030 #include "psError.h"
00031 #include "psConstants.h"
00032 
00033 /** Derive a polynomial fit.
00034  *
00035  *  psVectorFitPolynomial1d returns the polynomial that best fits the
00036  *  observations. The input parameters are a polynomial that specifies the
00037  *  fit order, myPoly, which will be altered and returned with the best-fit
00038  *  coefficients; and the observations, x, y and yErr. The independent
00039  *  variable list, x may be NULL, in which case the vector index is used.
00040  *  The dependent variable error, yErr may be null, in which case the solution
00041  *  is determined in the assumption that all data errors are equal. This
00042  *  function must be valid only for types psF32, psF64.
00043  *
00044  *  @return psPolynomial1D*    polynomial fit
00045  */
00046 
00047 bool psVectorFitPolynomial1D(
00048     psPolynomial1D *poly,
00049     const psVector *mask,
00050     psMaskType maskValue,
00051     const psVector *f,
00052     const psVector *fErr,
00053     const psVector *x
00054 );
00055 
00056 bool psVectorFitPolynomial2D(
00057     psPolynomial2D *poly,
00058     const psVector *mask,
00059     psMaskType maskValue,
00060     const psVector *f,
00061     const psVector *fErr,
00062     const psVector *x,
00063     const psVector *y
00064 );
00065 
00066 bool psVectorFitPolynomial3D(
00067     psPolynomial3D *poly,
00068     const psVector *mask,
00069     psMaskType maskValue,
00070     const psVector *f,
00071     const psVector *fErr,
00072     const psVector *x,
00073     const psVector *y,
00074     const psVector *z
00075 );
00076 
00077 bool psVectorFitPolynomial4D(
00078     psPolynomial4D *poly,
00079     const psVector *mask,
00080     psMaskType maskValue,
00081     const psVector *f,
00082     const psVector *fErr,
00083     const psVector *x,
00084     const psVector *y,
00085     const psVector *z,
00086     const psVector *t
00087 );
00088 
00089 
00090 bool psVectorClipFitPolynomial1D(
00091     psPolynomial1D *poly,
00092     psStats *stats,
00093     const psVector *mask,
00094     psMaskType maskValue,
00095     const psVector *f,
00096     const psVector *fErr,
00097     const psVector *x
00098 );
00099 
00100 bool psVectorClipFitPolynomial2D(
00101     psPolynomial2D *poly,
00102     psStats *stats,
00103     const psVector *mask,
00104     psMaskType maskValue,
00105     const psVector *f,
00106     const psVector *fErr,
00107     const psVector *x,
00108     const psVector *y
00109 );
00110 
00111 bool psVectorClipFitPolynomial3D(
00112     psPolynomial3D *poly,
00113     psStats *stats,
00114     const psVector *mask,
00115     psMaskType maskValue,
00116     const psVector *f,
00117     const psVector *fErr,
00118     const psVector *x,
00119     const psVector *y,
00120     const psVector *z
00121 );
00122 
00123 bool psVectorClipFitPolynomial4D(
00124     psPolynomial4D *poly,
00125     psStats *stats,
00126     const psVector *mask,
00127     psMaskType maskValue,
00128     const psVector *f,
00129     const psVector *fErr,
00130     const psVector *x,
00131     const psVector *y,
00132     const psVector *z,
00133     const psVector *t
00134 );
00135 
00136 /// @}
00137 #endif // #ifndef PS_MINIMIZE_POLYFIT_H

Generated on Fri Feb 2 22:24:35 2007 for pslib by  doxygen 1.5.1