IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 33447


Ignore:
Timestamp:
Mar 9, 2012, 7:06:29 AM (14 years ago)
Author:
eugene
Message:

clean up the tiny value stuff, put support functions in libdvo; would benefit from autocoding, esp for BrightCatalog stuff; check on sorted state: fail if not sorted

Location:
branches/eam_branches/ipp-20111122/Ohana/src/relphot
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20111122/Ohana/src/relphot/include/relphot.h

    r33403 r33447  
    306306int LimitDensityCatalog (Catalog *subcatalog, Catalog *catalog);
    307307
    308 int populate_tiny_values (Catalog *catalog);
    309 int free_tiny_values (Catalog *catalog);
    310 
    311308BrightCatalog *BrightCatalogLoad(char *filename);
    312309int BrightCatalogSave(char *filename, BrightCatalog *catalog);
     
    318315int ImageSubsetSave(char *filename, ImageSubset *image, off_t Nimage);
    319316ImageSubset *ImageSubsetLoad(char *filename, off_t *nimage);
    320 
    321 int CopyAverageTiny (AverageTiny *averageT, Average *average);
    322 int CopyMeasureTiny (MeasureTiny *measureT, Measure *measure);
  • branches/eam_branches/ipp-20111122/Ohana/src/relphot/src/BrightCatalog.c

    r33408 r33447  
    495495    if (!catalog[i].Naverage) continue;
    496496    for (j = 0; j < catalog[i].Naverage; j++) {
    497       // CopyAverageTiny (&bcatalog[0].average[Na], &catalog[i].average[j]);
    498497      bcatalog[0].average[Na] = catalog[i].averageT[j];
    499       bcatalog[0].average[Na].catID = catalog[i].catID;
    500498      for (k = 0; k < Nsecfilt; k++) {
    501499        bcatalog[0].secfilt[Nsecfilt*Na + k] = catalog[i].secfilt[Nsecfilt*j + k];
     
    505503    }
    506504    for (j = 0; j < catalog[i].Nmeasure; j++) {
    507       // CopyMeasureTiny (&bcatalog[0].measure[Nm], &catalog[i].measure[j]);
    508       bcatalog[0].measure[Nm] = catalog[i].measureT[j];
    509       bcatalog[0].measure[Nm].catID = catalog[i].catID;
     505      CopyMeasureToTiny (&bcatalog[0].measure[Nm], &catalog[i].measure[j]);
    510506      Nm++;
    511507      assert (Nm <= Nmeas);
     
    609605    assert (Ncat >= 0);
    610606    assert (Ncat < catalogs->NCATALOG);
     607
     608    catalogs->catalog[Ncat].Nsecfilt = Nsecfilt;
     609    catalogs->catalog[Ncat].catID = catID;
    611610
    612611    catalogs->index[catID] = Ncat;
  • branches/eam_branches/ipp-20111122/Ohana/src/relphot/src/bcatalog.c

    r33420 r33447  
    11# include "relphot.h"
    2 
    3 extern double drand48();
    4 
    5 int CopyAverageTiny (AverageTiny *averageT, Average *average) {
    6 
    7   averageT[0].R             = average[0].R;
    8   averageT[0].D             = average[0].D;
    9   averageT[0].flags         = average[0].flags;
    10   averageT[0].Nmeasure      = average[0].Nmeasure;
    11   averageT[0].measureOffset = average[0].measureOffset;
    12 
    13   // make Nmeasure & measureOffset optional?
    14 
    15   return (TRUE);
    16 }
    17 
    18 int CopyMeasureTiny (MeasureTiny *measureT, Measure *measure) {
    19 
    20   measureT[0].dR        = measure[0].dR;
    21   measureT[0].dD        = measure[0].dD;
    22   measureT[0].M         = measure[0].M;
    23   measureT[0].Mcal      = measure[0].Mcal;
    24   measureT[0].dM        = measure[0].dM;
    25   measureT[0].airmass   = measure[0].airmass;
    26   measureT[0].Xccd      = measure[0].Xccd;
    27   measureT[0].Yccd      = measure[0].Yccd;
    28   measureT[0].t         = measure[0].t;
    29   measureT[0].dt        = measure[0].dt;
    30   measureT[0].averef    = measure[0].averef;
    31   measureT[0].imageID   = measure[0].imageID;
    32   measureT[0].dbFlags   = measure[0].dbFlags;
    33   measureT[0].photFlags = measure[0].photFlags;
    34   measureT[0].photcode  = measure[0].photcode;
    35 
    36   return (TRUE);
    37 }
    382
    393int bcatalog (Catalog *subcatalog, Catalog *catalog) {
     
    7539
    7640    /* start with all stars good */
    77     CopyAverageTiny (&subcatalog[0].averageT[Naverage], &catalog[0].average[i]);
     41    CopyAverageToTiny (&subcatalog[0].averageT[Naverage], &catalog[0].average[i]);
    7842    subcatalog[0].averageT[Naverage].measureOffset = Nmeasure;
    7943
     
    159123      }
    160124
    161       CopyMeasureTiny (&subcatalog[0].measureT[Nmeasure], &catalog[0].measure[offset]);
     125      CopyMeasureToTiny (&subcatalog[0].measureT[Nmeasure], &catalog[0].measure[offset]);
    162126      subcatalog[0].measureT[Nmeasure].dbFlags &= ~ID_MEAS_SKIP_PHOTOM;
    163127      subcatalog[0].measureT[Nmeasure].averef = Naverage;
     
    312276  return (TRUE);
    313277}
    314 
    315 // for the cases where we are not using a subset of the data, we still need to have a copy of these fields
    316 int populate_tiny_values (Catalog *catalog) {
    317 
    318   off_t i;
    319 
    320   AverageTiny *averageT;
    321   Average *average;
    322 
    323   MeasureTiny *measureT;
    324   Measure *measure;
    325 
    326   ALLOCATE (catalog[0].measureT, MeasureTiny, catalog[0].Nmeasure);
    327   ALLOCATE (catalog[0].averageT, AverageTiny, catalog[0].Naverage);
    328 
    329   average  = catalog[0].average;
    330   averageT = catalog[0].averageT;
    331 
    332   measure  = catalog[0].measure;
    333   measureT = catalog[0].measureT;
    334 
    335   for (i = 0; i < catalog[0].Naverage; i++) {
    336     // CopyAverageTiny (&catalog[0].averageT[i], &catalog[0].average[i]);
    337     averageT[i].R             = average[i].R;
    338     averageT[i].D             = average[i].D;
    339     averageT[i].flags         = average[i].flags;
    340     averageT[i].Nmeasure      = average[i].Nmeasure;
    341     averageT[i].measureOffset = average[i].measureOffset;
    342   }
    343 
    344   for (i = 0; i < catalog[0].Nmeasure; i++) {
    345     // CopyMeasureTiny (&catalog[0].measureT[i], &catalog[0].measure[i]);
    346     measureT[i].dR        = measure[i].dR;
    347     measureT[i].dD        = measure[i].dD;
    348     measureT[i].M         = measure[i].M;
    349     measureT[i].Mcal      = measure[i].Mcal;
    350     measureT[i].dM        = measure[i].dM;
    351     measureT[i].airmass   = measure[i].airmass;
    352     measureT[i].Xccd      = measure[i].Xccd;
    353     measureT[i].Yccd      = measure[i].Yccd;
    354     measureT[i].t         = measure[i].t;
    355     measureT[i].dt        = measure[i].dt;
    356     measureT[i].averef    = measure[i].averef;
    357     measureT[i].imageID   = measure[i].imageID;
    358     measureT[i].dbFlags   = measure[i].dbFlags;
    359     measureT[i].photFlags = measure[i].photFlags;
    360     measureT[i].photcode  = measure[i].photcode;
    361   }
    362 
    363   return (TRUE);
    364 }
    365 
    366 int free_tiny_values (Catalog *catalog) {
    367 
    368   if (catalog[0].averageT) free (catalog[0].averageT);
    369   if (catalog[0].measureT) free (catalog[0].measureT);
    370   return (TRUE);
    371 }
    372 
  • branches/eam_branches/ipp-20111122/Ohana/src/relphot/src/load_catalogs.c

    r33364 r33447  
    5656        dvo_catalog_free (&tcatalog);
    5757        continue;
     58    }
     59
     60    if (!tcatalog.sorted) {
     61      fprintf (stderr, "this database is not sorted.  please sort using addstar -resort\n");
     62      exit (1);
    5863    }
    5964
  • branches/eam_branches/ipp-20111122/Ohana/src/relphot/src/reload_catalogs.c

    r33405 r33447  
    7171    TIMESTAMP(time2);
    7272
    73     populate_tiny_values(&catalog);
     73    populate_tiny_values(&catalog, DVO_TV_MEASURE | DVO_TV_AVERAGE);
    7474    TIMESTAMP(time3a);
    7575
Note: See TracChangeset for help on using the changeset viewer.