Changeset 4954 for trunk/psphot/src/psphot.h
- Timestamp:
- Sep 6, 2005, 5:33:01 PM (21 years ago)
- File:
-
- 1 edited
-
trunk/psphot/src/psphot.h (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psphot/src/psphot.h
r4949 r4954 1 # include <stdio.h> 2 # include <strings.h> // for strcasecmp 3 # include <unistd.h> // for unlink 1 4 # include <pslib.h> 2 // # include <pmObjects.h>3 // my additions and modifications:4 5 # include "pmObjects_EAM.h" 5 # include <string.h>6 # include <strings.h>7 # include <unistd.h>8 # include <stdlib.h>9 # include <math.h>10 11 // # define M_PI 3.14159265358979323846264338328 /* pi */12 6 13 7 typedef struct { 14 psImage *image;15 psImage *mask;16 psImage *noise;17 psMetadata *header;8 psImage *image; 9 psImage *mask; 10 psImage *noise; 11 psMetadata *header; 18 12 } psImageData; 19 13 20 14 // data to test a given PSF model type 21 15 typedef struct { 22 pmModelType modelType;23 pmPSF *psf;24 psArray *sources; // pointers to the original sources25 psArray *modelFLT; // model fits, floating parameters26 psArray *modelPSF; // model fits, PSF parameters27 psVector *mask;28 psVector *metric;29 psVector *fitMag;30 float ApResid;31 float dApResid;32 float skyBias;16 pmModelType modelType; 17 pmPSF *psf; 18 psArray *sources; // pointers to the original sources 19 psArray *modelFLT; // model fits, floating parameters 20 psArray *modelPSF; // model fits, PSF parameters 21 psVector *mask; 22 psVector *metric; 23 psVector *fitMag; 24 float ApResid; 25 float dApResid; 26 float skyBias; 33 27 } pmPSF_Test; 34 28 35 29 // structure to carry a dynamic string 36 30 typedef struct { 37 int NLINE;38 int Nline;39 char *line;31 int NLINE; 32 int Nline; 33 char *line; 40 34 } psLine; 41 35 … … 43 37 PSPHOT_MASK_INVALID = 0x01, 44 38 PSPHOT_MASK_SATURATED = 0x02, 45 PSPHOT_MASK_ KEEP= 0x08,39 PSPHOT_MASK_MARKED = 0x08, 46 40 } MaskValues; 47 48 // used by mask operations49 # define AND true50 # define OR false51 41 52 42 # define psMemCopy(A)(psMemIncrRefCounter((A))) … … 116 106 psF32 pmConfigLookupF32 (bool *status, psMetadata *config, psMetadata *header, char *name); 117 107 psVector *psVectorCreate (double lower, double upper, double delta, psElemType type); 118 //void psImageMaskRegion (psImage *image, psRegion *region, bool logical_and, int maskValue);119 //void psImageKeepRegion (psImage *image, psRegion *region, bool logical_and, int maskValue);120 //void psImageMaskCircle (psImage *image, double x, double y, double radius, bool logical_and, int maskValue);121 //void psImageKeepCircle (psImage *image, double x, double y, double radius, bool logical_and, int maskValue);122 108 psVector *psGetRowVectorFromImage(psImage *image, psU32 row); 109 int psImageCountPixelMask (psImage *mask, psU8 value); 123 110 124 111 // basic image functions 125 112 bool psImageInit (psImage *image,...); 126 //void psImageSmooth (psImage *image, float sigma, float Nsigma); 127 //psRegion *psRegionForImage (psRegion *out, psImage *image, psRegion *in); 128 psRegion *psRegionSquare (psF32 x, psF32 y, psF32 radius); 113 void psImageSmooth_EAM (psImage *image, float sigma, float Nsigma); 129 114 int psphotSaveImage (psMetadata *header, psImage *image, char *filename); 130 115 … … 135 120 136 121 // polynomial functions 137 psF 32 Polynomial2DEval(const psPolynomial2D* myPoly, psF32 x, psF32y);122 psF64 Polynomial2DEval(const psPolynomial2D* myPoly, psF64 x, psF64 y); 138 123 psImage *psBuildSums2D(psImage* sums,psF64 x,psF64 y,psS32 nXterm, psS32 nYterm); 139 124 psPolynomial2D *VectorFitPolynomial2DOrd_EAM(psPolynomial2D* myPoly, psVector* mask, const psVector* x, const psVector* y, const psVector* z, const psVector* zErr); … … 143 128 psPolynomial2D *RobustFit2D(psPolynomial2D* poly, psVector* mask, const psVector* x, const psVector* y, const psVector* z, const psVector* zErr); 144 129 psVector *Polynomial2DEvalVector(const psPolynomial2D *myPoly, const psVector *x,const psVector *y); 130 145 131 psVector *psBuildSums1D(psVector* sums, psF64 x,psS32 nTerm); 146 132 void psPolynomial1DDump (psPolynomial1D *poly); 147 psF 32 Polynomial1DEval_EAM(psF32x, const psPolynomial1D* myPoly);133 psF64 Polynomial1DEval_EAM(psF64 x, const psPolynomial1D* myPoly); 148 134 psVector *Polynomial1DEvalVector_EAM(const psPolynomial1D *myPoly, const psVector *x); 149 135 psPolynomial1D *Polynomial1DAlloc(psS32 nOrder, psPolynomialType type); 150 136 psPolynomial1D *VectorFitPolynomial1DOrd_EAM(psPolynomial1D* myPoly, psVector* mask, const psVector* x, const psVector* y, const psVector* yErr); 151 137 152 // fitsource 153 bool onesource (psImageData *imdata, psMetadata *config, char *modelName, float x, float y); 154 psMetadata *fs_args (int *argc, char **argv); 155 int fs_usage (); 156 bool DumpImage (psImage *image, char *filename); 138 // XXX EAM : bug : missing from psLib/*.h 139 bool psMinimizeGaussNewtonDelta (psVector *delta, 140 const psVector *params, 141 const psVector *paramMask, 142 const psArray *x, 143 const psVector *y, 144 const psVector *yErr, 145 psMinimizeLMChi2Func func); 146 147 // not included in the .h file? 148 bool p_psVectorPrint ( 149 int fd, ///< output file descriptor 150 psVector *a, ///< vector to print 151 char *name ///< name of vector (for title) 152 ); 153 154 bool p_psVectorPrintRow (int fd, psVector *a, char *name);
Note:
See TracChangeset
for help on using the changeset viewer.
