IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jul 19, 2015, 6:26:28 AM (11 years ago)
Author:
eugene
Message:

big re-work of UpdateObjects to allow bootstrap resampling, outlier rejection, and fixed-pm fitting

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20150625/Ohana/src/relastro/include/relastro.h

    r38599 r38604  
    2828
    2929typedef enum {TARGET_NONE, TARGET_SIMPLE, TARGET_CHIPS, TARGET_MOSAICS} FitTarget;
     30
     31typedef enum {
     32  FIT_RESULT_RA,
     33  FIT_RESULT_DEC,
     34  FIT_RESULT_uR,
     35  FIT_RESULT_uD,
     36  FIT_RESULT_PLX,
     37} FitAstromResultMode;
    3038
    3139typedef enum {
     
    119127  double  p, dp;
    120128
    121   int getChisq;
    122129  double chisq;
    123130  int Nfit;
     
    140147  double C_blue;
    141148  double C_red;
    142 } FitAstromPoints;
     149} FitAstromPoint;
    143150
    144151typedef struct {
     
    149156  off_t Noffset;
    150157
     158  double *values;
    151159  FitAstromResult *fit; // use bootstrap resampling to generate Nfit fits to measure the stats
    152160  int Nfit;
    153161  int NfitAlloc;
    154162
    155   FitAstromPoints *points;
    156   FitAstromPoints *sample;
     163  FitAstromPoint *points;
     164  FitAstromPoint *sample;
    157165  int Npoints;
    158166  int NpointsAlloc;
    159167
    160   FitAstromData *fitPos;
    161   FitAstromData *fitPM;
    162   FitAstromData *fitPar;
     168  FitAstromData *fitdataPos;
     169  FitAstromData *fitdataPM;
     170  FitAstromData *fitdataPar;
    163171
    164172  Coords coords;
     
    491499int sun_ecliptic (double jd, double *lambda, double *beta, double *epsilon, double *Radius);
    492500int ParFactor (double *pR, double *pD, double RA, double Dec, double Time, double Tmean);
    493 int FitPM (PMFit *fit, double *X, double *dX, double *Y, double *dY, double *T, int Npts, int XVERB);
    494 int FitPar (PMFit *fit, double *X, double *dX, double *Y, double *dY, double *pR, double *pD, int Npts);
    495 int FitPMandPar (PMFit *fit, double *X, double *dX, double *Y, double *dY, double *T, double *pR, double *pD, int Npts, int XVERB);
     501int FitPM (FitAstromResult *fit, FitAstromData *data, FitAstromPoint *points, int Npoints);
     502int FitPMandPar (FitAstromResult *fit, FitAstromData *data, FitAstromPoint *points, int Npoints);
     503int FitPosPMfixed (FitAstromResult *fit, FitAstromData *data, FitAstromPoint *points, int Npoints);
    496504
    497505Mosaic *getMosaicForImage (off_t N);
     
    694702int client_logger_init (char *dirname);
    695703int client_logger_message (char *format,...);
     704
     705int FitAstromSetChisq (FitAstromResult *fit, FitAstromPoint *points, int Npoints, FitMode mode);
     706double VectorFractionInterpolate (double *values, float fraction, int Npts);
     707int BootstrapRobustStats (FitAstromResult *result, FitAstromResult *fit, int Nfit, int mode);
     708int BootstrapResample (FitAstromPoints *sample, FitAstromPoints *points, int Npoints);
     709int CatalogMaxNmeasure (Catalog *catalog, int Ncatalog);
     710int FitAstromPoints_Project (FitStats *fitStats, double *Tmean, double *Trange, double *parRange);
     711int UpdateObjects_SelectMeasures (FitStats *fit, Average *average, SecFilt *secfilt, MeasureTiny *measure, Measure *measureBig, int cat, off_t measOff);
     712int UpdateObjects_Stack (Average *average, SecFilt *secfilt, MeasureTiny *measure, Measure *measureBig, int Nsecfilt, FitStats *fitStats);
     713int UpdateObjects_Chips (Average *average, SecFilt *secfilt, MeasureTiny *measure, Measure *measureBig, int Nsecfilt, FitStats *fitStats, int cat, off_t measOff);
     714
     715void FitAstromResultInit (FitAstromResult *fit);
     716void FitAstromPointInit (FitAstromObject *object);
     717void FitAstromDataFree (FitAstromData *fit);
     718FitAstromData *FitAstromDataInit (int Nterms);
     719void FitStatsFree (FitStats *fitStats);
     720void FitStatsSum (FitStats *src, FitStats *tgt);
     721void FitStatsReset (FitStats *tgt);
     722FitStats *FitStatsInit (int Nmax, int Nboot);
Note: See TracChangeset for help on using the changeset viewer.