diff options
Diffstat (limited to 'math/curfit/curfitdef.h')
-rw-r--r-- | math/curfit/curfitdef.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/math/curfit/curfitdef.h b/math/curfit/curfitdef.h new file mode 100644 index 00000000..b72349ac --- /dev/null +++ b/math/curfit/curfitdef.h @@ -0,0 +1,55 @@ +# Header file for the curve fitting package + +# set up the curve descriptor structure + +define LEN_CVSTRUCT 20 + +define CV_TYPE Memi[$1] # Type of curve to be fitted +define CV_ORDER Memi[$1+1] # Order of the fit +define CV_NPIECES Memi[$1+2] # Number of polynomial pieces - 1 +define CV_NCOEFF Memi[$1+3] # Number of coefficients +define CV_XMAX Memr[P2R($1+4)] # Maximum x value +define CV_XMIN Memr[P2R($1+5)] # Minimum x value +define CV_RANGE Memr[P2R($1+6)] # 2. / (xmax - xmin), polynomials +define CV_MAXMIN Memr[P2R($1+7)] # - (xmax + xmin) / 2., polynomials +define CV_SPACING Memr[P2R($1+8)] # order / (xmax - xmin), splines +define CV_NPTS Memi[$1+9] # Number of data points + +define CV_XBASIS Memi[$1+10] # Pointer to non zero basis for single x +define CV_MATRIX Memi[$1+11] # Pointer to original matrix +define CV_CHOFAC Memi[$1+12] # Pointer to Cholesky factorization +define CV_VECTOR Memi[$1+13] # Pointer to vector +define CV_COEFF Memi[$1+14] # Pointer to coefficient vector +define CV_BASIS Memi[$1+15] # Pointer to basis functions (all x) +define CV_LEFT Memi[$1+16] # Pointer to first non-zero basis +define CV_WY Memi[$1+17] # Pointer to y * w (cvrefit) +define CV_USERFNC Memi[$1+18] # Pointer to external user subroutine +define CV_USERFNCR Memr[P2R($1+18)]# Real version of above for cvrestore. + # one free slot left + +# matrix and vector element definitions + +define XBASIS Memr[P2P($1)] # Non zero basis for single x +define MATRIX Memr[P2P($1)] # Element of MATRIX +define CHOFAC Memr[P2P($1)] # Element of CHOFAC +define VECTOR Memr[P2P($1)] # Element of VECTOR +define COEFF Memr[P2P($1)] # Element of COEFF +define BASIS Memr[P2P($1)] # Element of BASIS +define LEFT Memi[P2P($1)] # Element of LEFT + +# structure definitions for restore + +define CV_SAVETYPE $1[1] +define CV_SAVEORDER $1[2] +define CV_SAVEXMIN $1[3] +define CV_SAVEXMAX $1[4] +define CV_SAVEFNC $1[5] + +define CV_SAVECOEFF 5 + + +# miscellaneous + +define SPLINE3_ORDER 4 +define SPLINE1_ORDER 2 +define DELTA EPSILON |