IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 2438


Ignore:
Timestamp:
Nov 24, 2004, 12:22:38 PM (22 years ago)
Author:
gusciora
Message:

Added error checking for covar.

Location:
trunk/psLib/src
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/src/dataManip/psConstants.h

    r2342 r2438  
    66 *  @author GLG, MHPCC
    77 *
    8  *  @version $Revision: 1.39 $ $Name: not supported by cvs2svn $
    9  *  @date $Date: 2004-11-12 19:36:07 $
     8 *  @version $Revision: 1.40 $ $Name: not supported by cvs2svn $
     9 *  @date $Date: 2004-11-24 22:22:38 $
    1010 *
    1111 *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
     
    395395}
    396396
     397#define PS_IMAGE_CHECK_SIZE_(NAME1, NUM_COLS, NUM_ROWS, RVAL) \
     398if ((NAME1->numCols != NUM_COLS) || \
     399        (NAME1->numRows != NUM_ROWS)) { \
     400    psError(PS_ERR_BAD_PARAMETER_SIZE, true, \
     401            "Unallowable operation: psImages %s is not the correct size.", \
     402            #NAME1); \
     403    return(RVAL); \
     404}
     405
    397406
    398407
  • trunk/psLib/src/dataManip/psMinimize.c

    r2406 r2438  
    99 *  @author GLG, MHPCC
    1010 *
    11  *  @version $Revision: 1.89 $ $Name: not supported by cvs2svn $
    12  *  @date $Date: 2004-11-23 19:35:30 $
     11 *  @version $Revision: 1.90 $ $Name: not supported by cvs2svn $
     12 *  @date $Date: 2004-11-24 22:22:38 $
    1313 *
    1414 *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
     
    529529     will have to convert all F32 input vectors to F64 regardless.  So,
    530530     the F64 port might be.
     531 
     532XXX: Must update the covar matrix.
    531533 *****************************************************************************/
    532534psBool psMinimizeLMChi2(psMinimization *min,
     
    553555    if (yErr != NULL) {
    554556        PS_VECTOR_CHECK_SIZE_EQUAL(y, yErr, NULL);
     557    }
     558
     559    if (covar != NULL) {
     560        PS_IMAGE_CHECK_SIZE_(covar, params->n, params->n, NULL);
     561    } else {
     562        covar = psImageAlloc(params->n, params->n, PS_TYPE_F64);
    555563    }
    556564
  • trunk/psLib/src/math/psConstants.h

    r2342 r2438  
    66 *  @author GLG, MHPCC
    77 *
    8  *  @version $Revision: 1.39 $ $Name: not supported by cvs2svn $
    9  *  @date $Date: 2004-11-12 19:36:07 $
     8 *  @version $Revision: 1.40 $ $Name: not supported by cvs2svn $
     9 *  @date $Date: 2004-11-24 22:22:38 $
    1010 *
    1111 *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
     
    395395}
    396396
     397#define PS_IMAGE_CHECK_SIZE_(NAME1, NUM_COLS, NUM_ROWS, RVAL) \
     398if ((NAME1->numCols != NUM_COLS) || \
     399        (NAME1->numRows != NUM_ROWS)) { \
     400    psError(PS_ERR_BAD_PARAMETER_SIZE, true, \
     401            "Unallowable operation: psImages %s is not the correct size.", \
     402            #NAME1); \
     403    return(RVAL); \
     404}
     405
    397406
    398407
  • trunk/psLib/src/math/psMinimize.c

    r2406 r2438  
    99 *  @author GLG, MHPCC
    1010 *
    11  *  @version $Revision: 1.89 $ $Name: not supported by cvs2svn $
    12  *  @date $Date: 2004-11-23 19:35:30 $
     11 *  @version $Revision: 1.90 $ $Name: not supported by cvs2svn $
     12 *  @date $Date: 2004-11-24 22:22:38 $
    1313 *
    1414 *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
     
    529529     will have to convert all F32 input vectors to F64 regardless.  So,
    530530     the F64 port might be.
     531 
     532XXX: Must update the covar matrix.
    531533 *****************************************************************************/
    532534psBool psMinimizeLMChi2(psMinimization *min,
     
    553555    if (yErr != NULL) {
    554556        PS_VECTOR_CHECK_SIZE_EQUAL(y, yErr, NULL);
     557    }
     558
     559    if (covar != NULL) {
     560        PS_IMAGE_CHECK_SIZE_(covar, params->n, params->n, NULL);
     561    } else {
     562        covar = psImageAlloc(params->n, params->n, PS_TYPE_F64);
    555563    }
    556564
Note: See TracChangeset for help on using the changeset viewer.