IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 37001


Ignore:
Timestamp:
Jul 12, 2014, 8:38:19 AM (12 years ago)
Author:
eugene
Message:

free the found and foundWarp catalog elements (grows too large for whole sky); save a copy of the image table before running the reload step

Location:
branches/eam_branches/ipp-20140610/Ohana/src/relphot/src
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20140610/Ohana/src/relphot/src/StarOps.c

    r36984 r37001  
    410410
    411411      /* star/photcodes already calibrated */
    412       if ( isSetMrelFinal && catalog[Nc].found[Nsecfilt*j+Nsec]) continue; 
     412      if ( isSetMrelFinal && catalog[Nc].found_t[Nsecfilt*j+Nsec]) continue; 
    413413     
    414414      // skip bad stars
     
    683683
    684684      if (isSetMrelFinal) {
    685         catalog[Nc].found[Nsecfilt*j+Nsec] = TRUE;
     685        catalog[Nc].found_t[Nsecfilt*j+Nsec] = TRUE;
    686686
    687687        catalog[Nc].secfilt[Nsecfilt*j+Nsec].Mstdev = 1000.0*stats.sigma; // Mstdev is in millimags (not enough space for more precision)
     
    10731073       
    10741074        /* on final processing, skip stars already measured */
    1075         if (final && catalog[i].found[Nsecfilt*j + Nsec]) continue; 
     1075        if (final && catalog[i].found_t[Nsecfilt*j + Nsec]) continue; 
    10761076
    10771077        /* skip bad stars to prevent them from becoming good (on inner sample) */
  • branches/eam_branches/ipp-20140610/Ohana/src/relphot/src/relphot_parallel_regions.c

    r36630 r37001  
    11# include "relphot.h"
     2int save_images_backup (FITS_DB *db);
    23
    34int relphot_parallel_regions () {
     
    6364  SkyList *skylist = SkyListByBounds (sky, -1, regionHosts->Rmin, regionHosts->Rmax, regionHosts->Dmin, regionHosts->Dmax);
    6465
     66  // I have to save a copy because dvo_image_save and _unlock swap and free the data
     67  save_images_backup (&db);
     68
    6569  /* update catalogs (in parallel) */
    6670  reload_catalogs (skylist, flatcorr, 0, NULL);
     
    7478}
    7579
     80int save_images_backup (FITS_DB *db) {
     81
     82  FITS_DB dbX;
     83  char filename[1024];
     84
     85  INITTIME;
     86
     87  gfits_db_init (&dbX);
     88  dbX.lockstate = LCK_XCLD;
     89  dbX.timeout   = 60.0;
     90  dbX.mode      = db->mode;
     91  dbX.format    = db->format;
     92
     93  snprintf (filename, 1024, "%s.bck", ImageCat);
     94  if (!gfits_db_lock (&dbX, filename)) {
     95    fprintf (stderr, "can't lock backup image image catalog\n");
     96    return (FALSE);
     97  }
     98   
     99  // copy Images.dat data (all or only the subset / vtable elements?)  I think I need to dump
     100  // the entire Image table, but with the updates in place I think this says: re-work the
     101  // ftable/vtable usage in this program to be more sensible...
     102  gfits_copy_header (&db->header,  &dbX.header);
     103  gfits_copy_matrix (&db->matrix,  &dbX.matrix);
     104  gfits_copy_header (&db->theader, &dbX.theader);
     105  gfits_copy_ftable (&db->ftable,  &dbX.ftable);
     106
     107  dbX.ftable.header = &dbX.theader;
     108
     109  dvo_image_save (&dbX, VERBOSE);
     110  dvo_image_unlock (&dbX);
     111  MARKTIME("-- save Image.dat.bck: %f sec\n", dtime);
     112
     113  return TRUE;
     114}
  • branches/eam_branches/ipp-20140610/Ohana/src/relphot/src/setMrelCatalog.c

    r36990 r37001  
    6060    Average *average = catalog[Nc].average ? &catalog[Nc].average[j] : NULL;
    6161    Measure *measure = catalog[Nc].measure ? &catalog[Nc].measure[m] : NULL;
    62     setMrelAverageExposure (m, Nc, pass, flatcorr, results, average, &catalog[Nc].averageT[j], &catalog[Nc].secfilt[j*Nsecfilt], measure, &catalog[Nc].measureT[m], &catalog[Nc].found[Nsecfilt*j]);
     62    setMrelAverageExposure (m, Nc, pass, flatcorr, results, average, &catalog[Nc].averageT[j], &catalog[Nc].secfilt[j*Nsecfilt], measure, &catalog[Nc].measureT[m], &catalog[Nc].found_t[Nsecfilt*j]);
    6363
    6464    // only apply Stack operation on setMrelFinal in first pass
     
    7070    // only measure force-warp mean values if issetMrelFinal (make it optional?)
    7171    if (isSetMrelFinal) {
    72       setMrelAverageForcedWarp (m, Nc, pass, results, &catalog[Nc].average[j], &catalog[Nc].secfilt[j*Nsecfilt], &catalog[Nc].measure[m], &catalog[Nc].foundWarp[Nsecfilt*j]);
     72      setMrelAverageForcedWarp (m, Nc, pass, results, &catalog[Nc].average[j], &catalog[Nc].secfilt[j*Nsecfilt], &catalog[Nc].measure[m], &catalog[Nc].foundWarp_t[Nsecfilt*j]);
    7373      setGlobalObjStats (&catalog[Nc].average[j], &catalog[Nc].measure[m]);
    7474    }
  • branches/eam_branches/ipp-20140610/Ohana/src/relphot/src/setMrelFinal.c

    r36917 r37001  
    8585
    8686  /* set catalog[0].found[i] = FALSE */
    87   ALLOCATE (catalog[0].found, off_t, MAX (1, Nsecfilt*catalog[0].Naverage));
    88   ALLOCATE (catalog[0].foundWarp, off_t, MAX (1, Nsecfilt*catalog[0].Naverage));
     87  ALLOCATE (catalog[0].found_t, off_t, MAX (1, Nsecfilt*catalog[0].Naverage));
     88  ALLOCATE (catalog[0].foundWarp_t, off_t, MAX (1, Nsecfilt*catalog[0].Naverage));
    8989  for (i = 0; i < Nsecfilt*catalog[0].Naverage; i++) {
    90     catalog[0].found[i] = FALSE;
    91     catalog[0].foundWarp[i] = FALSE;
     90    catalog[0].found_t[i] = FALSE;
     91    catalog[0].foundWarp_t[i] = FALSE;
    9292  }
    9393
     
    196196     
    197197      /* star/photcodes already calibrated */
    198       if (catalog[0].found[Nsecfilt*i+Nsec]) continue; 
     198      if (catalog[0].found_t[Nsecfilt*i+Nsec]) continue; 
    199199
    200200      m = catalog[0].average[i].measureOffset;
Note: See TracChangeset for help on using the changeset viewer.