Main Page | Modules | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

psLibUtils.h

Go to the documentation of this file.
00001 
00002 # ifndef PS_LIB_UTILS
00003 # define PS_LIB_UTILS
00004 
00005 // XXX EAM : psEllipse needs to be be included in psLib
00006 # include "psEllipse.h"
00007 
00008 // structure to carry a dynamic string
00009 typedef struct
00010 {
00011     int NLINE;
00012     int Nline;
00013     char *line;
00014 }
00015 psLine;
00016 
00017 # define psMemCopy(A)(psMemIncrRefCounter((A)))
00018 
00019 // XXX EAM : my version using varience instead of stdev
00020 bool psMinimizeGaussNewtonDelta_EAM (psVector *delta,
00021                                      const psVector *params,
00022                                      const psVector *paramMask,
00023                                      const psArray  *x,
00024                                      const psVector *y,
00025                                      const psVector *yErr,
00026                                      psMinimizeLMChi2Func func);
00027 
00028 // minimize : using varience vs sigma and parameter limits
00029 psBool       p_psMinLM_GuessABP_EAM (psImage  *Alpha, psVector *Beta, psVector *Params, const psImage  *alpha, const psVector *beta, const psVector *params, const psVector *paramMask, const psVector *beta_lim, const psVector *params_min, const psVector *params_max, psF64 lambda);
00030 psBool       psMinimizeLMChi2_EAM(psMinimization *min, psImage *covar, psVector *params, const psVector *paramMask, const psArray *x, const psVector *y, const psVector *yErr, psMinimizeLMChi2Func func);
00031 psF64        p_psMinLM_dLinear (const psVector *Beta, const psVector *beta, psF64 lambda);
00032 
00033 // psLib extra utilities
00034 bool       psTimerStart (char *name);   // added to SDRS
00035 //XXX: I removed this: bool       psTimerClear (char *name);   // added to SDRS
00036 psF64       psTimerMark (char *name);    // added to SDRS
00037 void       psTimerFree ();              // added to SDRS (as psTimerStop)
00038 psS32       psLogArguments (int *argc, char **argv);   // added to SDRS (part of psArgumentVerbosity)
00039 psS32       psTraceArguments (int *argc, char **argv); // added to SDRS (part of psArgumentVerbosity)
00040 //XXX: remove: int      psArgumentGet (int argc, char **argv, char *arg); // added to SDRS
00041 //XXX: remove: int      psArgumentRemove (int N, int *argc, char **argv); // added to SDRS
00042 //XXX: remove: psVector    *psVectorCreate (double lower, double upper, double delta, psElemType type); // added to SDRS
00043 // psVector    *psGetRowVectorFromImage(psImage *image, psU32 row); // added to SDRS (as psImageRow)
00044 //XXX: remove: int          psImageCountPixelMask (psImage *mask, psU8 value); // added to SDRS
00045 
00046 // basic image functions
00047 bool         psImageInit (psImage *image,...); // added to SDRS (v.15)
00048 void      psImageSmooth_EAM (psImage *image, float sigma, float Nsigma); // added to SDRS (v.15)
00049 
00050 // psLine functions -- keep out for now?
00051 psLine      *psLineAlloc (int Nline);
00052 bool      psLineInit (psLine *line);
00053 bool      psLineAdd (psLine *line, char *format, ...);
00054 
00055 // not included in the .h file -- these are fairly lame, keep out?
00056 bool p_psVectorPrint (int fd, psVector *a, char *name);
00057 bool p_psVectorPrintRow (int fd, psVector *a, char *name);
00058 
00059 # endif

Generated on Thu Oct 13 14:29:27 2005 for Pan-STARRS Module Library by  doxygen 1.4.2