IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Nov 24, 2004, 11:59:43 AM (22 years ago)
Author:
gusciora
Message:

Changed the order of the arguments for the polynomial eval functions.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/src/dataManip/psFunctions.c

    r2431 r2433  
    77 *  polynomials.  It also contains a Gaussian functions.
    88 *
    9  *  @version $Revision: 1.68 $ $Name: not supported by cvs2svn $
    10  *  @date $Date: 2004-11-24 20:34:13 $
     9 *  @version $Revision: 1.69 $ $Name: not supported by cvs2svn $
     10 *  @date $Date: 2004-11-24 21:59:43 $
    1111 *
    1212 *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
     
    399399            if (myPoly->mask[loop_x][loop_y] == 0) {
    400400                polySum += myPoly->coeff[loop_x][loop_y] *
    401                            psPolynomial1DEval(x, chebPolys[loop_x]) *
    402                            psPolynomial1DEval(y, chebPolys[loop_y]);
     401                           psPolynomial1DEval(chebPolys[loop_x], x) *
     402                           psPolynomial1DEval(chebPolys[loop_y], y);
    403403            }
    404404        }
     
    465465                if (myPoly->mask[loop_x][loop_y][loop_z] == 0) {
    466466                    polySum += myPoly->coeff[loop_x][loop_y][loop_z] *
    467                                psPolynomial1DEval(x, chebPolys[loop_x]) *
    468                                psPolynomial1DEval(y, chebPolys[loop_y]) *
    469                                psPolynomial1DEval(z, chebPolys[loop_z]);
     467                               psPolynomial1DEval(chebPolys[loop_x], x) *
     468                               psPolynomial1DEval(chebPolys[loop_y], y) *
     469                               psPolynomial1DEval(chebPolys[loop_z], z);
    470470                }
    471471            }
     
    545545                    if (myPoly->mask[loop_w][loop_x][loop_y][loop_z] == 0) {
    546546                        polySum += myPoly->coeff[loop_w][loop_x][loop_y][loop_z] *
    547                                    psPolynomial1DEval(w, chebPolys[loop_w]) *
    548                                    psPolynomial1DEval(x, chebPolys[loop_x]) *
    549                                    psPolynomial1DEval(y, chebPolys[loop_y]) *
    550                                    psPolynomial1DEval(z, chebPolys[loop_z]);
     547                                   psPolynomial1DEval(chebPolys[loop_w], w) *
     548                                   psPolynomial1DEval(chebPolys[loop_x], x) *
     549                                   psPolynomial1DEval(chebPolys[loop_y], y) *
     550                                   psPolynomial1DEval(chebPolys[loop_z], z);
    551551                    }
    552552                }
     
    651651            if (myPoly->mask[loop_x][loop_y] == 0) {
    652652                polySum += myPoly->coeff[loop_x][loop_y] *
    653                            psPolynomial1DEval(x, chebPolys[loop_x]) *
    654                            psPolynomial1DEval(y, chebPolys[loop_y]);
     653                           psPolynomial1DEval(chebPolys[loop_x], x) *
     654                           psPolynomial1DEval(chebPolys[loop_y], y);
    655655            }
    656656        }
     
    718718                if (myPoly->mask[loop_x][loop_y][loop_z] == 0) {
    719719                    polySum += myPoly->coeff[loop_x][loop_y][loop_z] *
    720                                psPolynomial1DEval(x, chebPolys[loop_x]) *
    721                                psPolynomial1DEval(y, chebPolys[loop_y]) *
    722                                psPolynomial1DEval(z, chebPolys[loop_z]);
     720                               psPolynomial1DEval(chebPolys[loop_x], x) *
     721                               psPolynomial1DEval(chebPolys[loop_y], y) *
     722                               psPolynomial1DEval(chebPolys[loop_z], z);
    723723                }
    724724            }
     
    798798                    if (myPoly->mask[loop_w][loop_x][loop_y][loop_z] == 0) {
    799799                        polySum += myPoly->coeff[loop_w][loop_x][loop_y][loop_z] *
    800                                    psPolynomial1DEval(w, chebPolys[loop_w]) *
    801                                    psPolynomial1DEval(x, chebPolys[loop_x]) *
    802                                    psPolynomial1DEval(y, chebPolys[loop_y]) *
    803                                    psPolynomial1DEval(z, chebPolys[loop_z]);
     800                                   psPolynomial1DEval(chebPolys[loop_w], w) *
     801                                   psPolynomial1DEval(chebPolys[loop_x], x) *
     802                                   psPolynomial1DEval(chebPolys[loop_y], y) *
     803                                   psPolynomial1DEval(chebPolys[loop_z], z);
    804804                    }
    805805                }
     
    11601160}
    11611161
    1162 float psPolynomial1DEval(float x, const psPolynomial1D* myPoly)
     1162float psPolynomial1DEval(const psPolynomial1D* myPoly, float x)
    11631163{
    11641164    PS_POLY_CHECK_NULL(myPoly, NAN);
     
    11761176}
    11771177
    1178 psVector *psPolynomial1DEvalVector(const psVector *x,
    1179                                    const psPolynomial1D *myPoly)
     1178psVector *psPolynomial1DEvalVector(const psPolynomial1D *myPoly,
     1179                                   const psVector *x)
    11801180{
    11811181    PS_POLY_CHECK_NULL(myPoly, NULL);
     
    11891189    tmp = psVectorAlloc(x->n, PS_TYPE_F32);
    11901190    for (i=0;i<x->n;i++) {
    1191         tmp->data.F32[i] = psPolynomial1DEval(x->data.F32[i], myPoly);
     1191        tmp->data.F32[i] = psPolynomial1DEval(myPoly, x->data.F32[i]);
    11921192    }
    11931193
     
    11981198}
    11991199
    1200 float psPolynomial2DEval(float x, float y, const psPolynomial2D* myPoly)
     1200float psPolynomial2DEval(const psPolynomial2D* myPoly, float x, float y)
    12011201{
    12021202    PS_POLY_CHECK_NULL(myPoly, NAN);
     
    12141214}
    12151215
    1216 psVector *psPolynomial2DEvalVector(const psVector *x,
    1217                                    const psVector *y,
    1218                                    const psPolynomial2D *myPoly)
     1216psVector *psPolynomial2DEvalVector(const psPolynomial2D *myPoly,
     1217                                   const psVector *x,
     1218                                   const psVector *y)
     1219
    12191220{
    12201221    PS_POLY_CHECK_NULL(myPoly, NULL);
     
    12371238    tmp = psVectorAlloc(vecLen, PS_TYPE_F32);
    12381239    for (i=0;i<vecLen;i++) {
    1239         tmp->data.F32[i] = psPolynomial2DEval(myX->data.F32[i],
    1240                                               myY->data.F32[i],
    1241                                               myPoly);
     1240        tmp->data.F32[i] = psPolynomial2DEval(myPoly,
     1241                                              myX->data.F32[i],
     1242                                              myY->data.F32[i]);
     1243
    12421244    }
    12431245
     
    12511253}
    12521254
    1253 float psPolynomial3DEval(float x, float y, float z, const psPolynomial3D* myPoly)
     1255float psPolynomial3DEval(const psPolynomial3D* myPoly, float x, float y, float z)
    12541256{
    12551257    PS_POLY_CHECK_NULL(myPoly, NAN);
     
    12671269}
    12681270
    1269 psVector *psPolynomial3DEvalVector(const psVector *x,
     1271psVector *psPolynomial3DEvalVector(const psPolynomial3D *myPoly,
     1272                                   const psVector *x,
    12701273                                   const psVector *y,
    1271                                    const psVector *z,
    1272                                    const psPolynomial3D *myPoly)
     1274                                   const psVector *z)
     1275
    12731276{
    12741277    PS_POLY_CHECK_NULL(myPoly, NULL);
     
    12971300    tmp = psVectorAlloc(vecLen, PS_TYPE_F32);
    12981301    for (i=0;i<vecLen;i++) {
    1299         tmp->data.F32[i] = psPolynomial3DEval(myX->data.F32[i],
     1302        tmp->data.F32[i] = psPolynomial3DEval(myPoly,
     1303                                              myX->data.F32[i],
    13001304                                              myY->data.F32[i],
    1301                                               myZ->data.F32[i],
    1302                                               myPoly);
     1305                                              myZ->data.F32[i]);
     1306
    13031307    }
    13041308
     
    13151319}
    13161320
    1317 float psPolynomial4DEval(float w, float x, float y, float z, const psPolynomial4D* myPoly)
     1321float psPolynomial4DEval(const psPolynomial4D* myPoly, float w, float x, float y, float z)
    13181322{
    13191323    PS_POLY_CHECK_NULL(myPoly, NAN);
     
    13311335}
    13321336
    1333 psVector *psPolynomial4DEvalVector(const psVector *w,
     1337psVector *psPolynomial4DEvalVector(const psPolynomial4D *myPoly,
     1338                                   const psVector *w,
    13341339                                   const psVector *x,
    13351340                                   const psVector *y,
    1336                                    const psVector *z,
    1337                                    const psPolynomial4D *myPoly)
     1341                                   const psVector *z)
    13381342{
    13391343    PS_POLY_CHECK_NULL(myPoly, NULL);
     
    13681372    tmp = psVectorAlloc(vecLen, PS_TYPE_F32);
    13691373    for (i=0;i<vecLen;i++) {
    1370         tmp->data.F32[i] = psPolynomial4DEval(myW->data.F32[i],
     1374        tmp->data.F32[i] = psPolynomial4DEval(myPoly,
     1375                                              myW->data.F32[i],
    13711376                                              myX->data.F32[i],
    13721377                                              myY->data.F32[i],
    1373                                               myZ->data.F32[i],
    1374                                               myPoly);
     1378                                              myZ->data.F32[i]);
     1379
    13751380    }
    13761381
     
    15551560
    15561561
    1557 double psDPolynomial1DEval(double x, const psDPolynomial1D* myPoly)
     1562double psDPolynomial1DEval(const psDPolynomial1D* myPoly, double x)
    15581563{
    15591564    PS_POLY_CHECK_NULL(myPoly, NAN);
     
    15711576}
    15721577
    1573 psVector *psDPolynomial1DEvalVector(const psVector *x,
    1574                                     const psDPolynomial1D *myPoly)
     1578psVector *psDPolynomial1DEvalVector(const psDPolynomial1D *myPoly,
     1579                                    const psVector *x)
     1580
    15751581{
    15761582    PS_POLY_CHECK_NULL(myPoly, NULL);
     
    15841590    tmp = psVectorAlloc(x->n, PS_TYPE_F64);
    15851591    for (i=0;i<x->n;i++) {
    1586         tmp->data.F64[i] = psDPolynomial1DEval(x->data.F64[i], myPoly);
     1592        tmp->data.F64[i] = psDPolynomial1DEval(myPoly,
     1593                                               x->data.F64[i]);
    15871594    }
    15881595
     
    15941601
    15951602
    1596 double psDPolynomial2DEval(double x, double y, const psDPolynomial2D* myPoly)
     1603double psDPolynomial2DEval(const psDPolynomial2D* myPoly,
     1604                           double x,
     1605                           double y)
    15971606{
    15981607    PS_POLY_CHECK_NULL(myPoly, NAN);
     
    16101619}
    16111620
    1612 psVector *psDPolynomial2DEvalVector(const psVector *x,
    1613                                     const psVector *y,
    1614                                     const psDPolynomial2D *myPoly)
     1621psVector *psDPolynomial2DEvalVector(const psDPolynomial2D *myPoly,
     1622                                    const psVector *x,
     1623                                    const psVector *y)
    16151624{
    16161625    PS_POLY_CHECK_NULL(myPoly, NULL);
     
    16331642    tmp = psVectorAlloc(vecLen, PS_TYPE_F64);
    16341643    for (i=0;i<vecLen;i++) {
    1635         tmp->data.F64[i] = psDPolynomial2DEval(myX->data.F64[i],
    1636                                                myY->data.F64[i],
    1637                                                myPoly);
     1644        tmp->data.F64[i] = psDPolynomial2DEval(myPoly,
     1645                                               myX->data.F64[i],
     1646                                               myY->data.F64[i]);
     1647
    16381648    }
    16391649
     
    16481658
    16491659
    1650 double psDPolynomial3DEval(double x, double y, double z, const psDPolynomial3D* myPoly)
     1660double psDPolynomial3DEval(const psDPolynomial3D* myPoly,
     1661                           double x,
     1662                           double y,
     1663                           double z)
    16511664{
    16521665    PS_POLY_CHECK_NULL(myPoly, NAN);
     
    16641677}
    16651678
    1666 psVector *psDPolynomial3DEvalVector(const psVector *x,
     1679psVector *psDPolynomial3DEvalVector(const psDPolynomial3D *myPoly,
     1680                                    const psVector *x,
    16671681                                    const psVector *y,
    1668                                     const psVector *z,
    1669                                     const psDPolynomial3D *myPoly)
     1682                                    const psVector *z)
     1683
    16701684{
    16711685    PS_POLY_CHECK_NULL(myPoly, NULL);
     
    16941708    tmp = psVectorAlloc(vecLen, PS_TYPE_F64);
    16951709    for (i=0;i<vecLen;i++) {
    1696         tmp->data.F64[i] = psDPolynomial3DEval(myX->data.F64[i],
     1710        tmp->data.F64[i] = psDPolynomial3DEval(myPoly,
     1711                                               myX->data.F64[i],
    16971712                                               myY->data.F64[i],
    1698                                                myZ->data.F64[i],
    1699                                                myPoly);
     1713                                               myZ->data.F64[i]);
     1714
    17001715    }
    17011716
     
    17121727}
    17131728
    1714 double psDPolynomial4DEval(double w, double x, double y, double z, const psDPolynomial4D* myPoly)
     1729double psDPolynomial4DEval(const psDPolynomial4D* myPoly,
     1730                           double w,
     1731                           double x,
     1732                           double y,
     1733                           double z)
    17151734{
    17161735    PS_POLY_CHECK_NULL(myPoly, NAN);
     
    17281747}
    17291748
    1730 psVector *psDPolynomial4DEvalVector(const psVector *w,
     1749psVector *psDPolynomial4DEvalVector(const psDPolynomial4D *myPoly,
     1750                                    const psVector *w,
    17311751                                    const psVector *x,
    17321752                                    const psVector *y,
    1733                                     const psVector *z,
    1734                                     const psDPolynomial4D *myPoly)
     1753                                    const psVector *z)
    17351754{
    17361755    PS_POLY_CHECK_NULL(myPoly, NULL);
     
    17651784    tmp = psVectorAlloc(vecLen, PS_TYPE_F64);
    17661785    for (i=0;i<vecLen;i++) {
    1767         tmp->data.F64[i] = psDPolynomial4DEval(myW->data.F64[i],
     1786        tmp->data.F64[i] = psDPolynomial4DEval(myPoly,
     1787                                               myW->data.F64[i],
    17681788                                               myX->data.F64[i],
    17691789                                               myY->data.F64[i],
    1770                                                myZ->data.F64[i],
    1771                                                myPoly);
     1790                                               myZ->data.F64[i]);
     1791
    17721792    }
    17731793
     
    21102130
    21112131        if (x < (spline->domains)[0]) {
    2112             return(psPolynomial1DEval(x, spline->spline[0]));
     2132            return(psPolynomial1DEval(spline->spline[0],
     2133                                      x));
    21132134        } else if (x > (spline->domains)[n-1]) {
    2114             return(psPolynomial1DEval(x, spline->spline[n-1]));
    2115         }
    2116     }
    2117 
    2118     return(psPolynomial1DEval(x, spline->spline[binNum]));
     2135            return(psPolynomial1DEval(spline->spline[n-1],
     2136                                      x));
     2137        }
     2138    }
     2139
     2140    return(psPolynomial1DEval(spline->spline[binNum],
     2141                              x));
    21192142}
    21202143
Note: See TracChangeset for help on using the changeset viewer.