IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 33006


Ignore:
Timestamp:
Dec 22, 2011, 5:05:13 PM (15 years ago)
Author:
eugene
Message:

finished loadsupercos (for now)

Location:
branches/eam_branches/ipp-20111122/Ohana/src/addstar
Files:
6 edited

Legend:

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

    r32994 r33006  
    7676} FullDetection;
    7777
    78 AddstarClientOptions args_loadsupercos (int argc, char **argv, AddstarClientOptions options);
     78AddstarClientOptions args_loadsupercos (int *argc, char **argv, AddstarClientOptions options);
    7979Survey *loadsupercos_survey (char *filename, int *nsurvey);
    8080Image *loadsupercos_plates (Survey *survey, int Nsurvey, char *filename, int *nimage);
     
    8383int loadsupercos_sortStars (Stars *tstars, int Ntstars);
    8484int *loadsupercos_image_index (Image *image, int Nimage);
     85int loadsupercos_getST (char *line, double *st);
  • branches/eam_branches/ipp-20111122/Ohana/src/addstar/src/args_loadsupercos.c

    r32994 r33006  
    22static void help (void);
    33
    4 AddstarClientOptions args_loadsupercos (int argc, char **argv, AddstarClientOptions options) {
     4AddstarClientOptions args_loadsupercos (int *argc, char **argv, AddstarClientOptions options) {
    55 
    66  int N;
    77
    88  /* check for help request */
    9   if (get_argument (argc, argv, "-help") ||
    10       get_argument (argc, argv, "-h")) {
     9  if (get_argument (*argc, argv, "-help") ||
     10      get_argument (*argc, argv, "-h")) {
    1111    help ();
    1212  }
     
    2828  /* only add to existing regions */
    2929  options.existing_regions = FALSE;
    30   if ((N = get_argument (argc, argv, "-existing-regions"))) {
     30  if ((N = get_argument (*argc, argv, "-existing-regions"))) {
    3131    options.existing_regions = TRUE;
    32     remove_argument (N, &argc, argv);
     32    remove_argument (N, argc, argv);
    3333  }
    3434  /* only add to existing objects */
    3535  options.only_match = FALSE;
    36   if ((N = get_argument (argc, argv, "-only-match"))) {
     36  if ((N = get_argument (*argc, argv, "-only-match"))) {
    3737    options.only_match = TRUE;
    38     remove_argument (N, &argc, argv);
     38    remove_argument (N, argc, argv);
    3939  }
    4040  /* replace measurement, don't duplicate (ref/cat only) */
    4141  options.replace = FALSE;
    42   if ((N = get_argument (argc, argv, "-replace"))) {
     42  if ((N = get_argument (*argc, argv, "-replace"))) {
    4343    options.replace = TRUE;
    44     remove_argument (N, &argc, argv);
     44    remove_argument (N, argc, argv);
    4545  }
    4646
    4747  /* extra error messages */
    4848  VERBOSE = FALSE;
    49   if ((N = get_argument (argc, argv, "-v"))) {
     49  if ((N = get_argument (*argc, argv, "-v"))) {
    5050    VERBOSE = TRUE;
    51     remove_argument (N, &argc, argv);
     51    remove_argument (N, argc, argv);
    5252  }
    5353
     
    6969  DUMP = NULL;
    7070
    71   if (argc < 4) {
     71  if (*argc < 4) {
    7272    fprintf (stderr, "USAGE: loadsupercos [options] (surveys.csv) (plates.csv) (detections.bin) [..more files]\n");
    7373    exit (2);
  • branches/eam_branches/ipp-20111122/Ohana/src/addstar/src/loadsupercos.c

    r32994 r33006  
    2121  // need to construct these options with args_loadWISE...
    2222  options = ConfigInit (&argc, argv);
    23   options = args_loadsupercos (argc, argv, options);
     23  options = args_loadsupercos (&argc, argv, options);
    2424
    2525  // load the full sky description table:
  • branches/eam_branches/ipp-20111122/Ohana/src/addstar/src/loadsupercos_ops.c

    r32994 r33006  
    44// this is defined in libohana/src/string.c but not generally exposed
    55char *_parse_nextword_csv (char *string);
    6 
    76
    87int loadsupercos_getFilterInfo (char *line, char *emulsion, char *filterID) {
     
    5453}
    5554
     55int loadsupercos_getST (char *line, double *st) {
     56   
     57  int i;
     58  char *p1 = line;
     59
     60  // lstObs is field 20
     61  for (i = 1; i < 20; i++) {
     62    p1 = _parse_nextword_csv (p1);
     63    if (!p1) {
     64      fprintf (stderr, "error parsing filter info for line %s\n", line);
     65      abort();
     66    }
     67  }
     68  if (*p1 == ',') {
     69    fprintf (stderr, "missing sidereal time info for line %s\n", line);
     70    abort();
     71  }
     72
     73  char hour[3], minute[3];
     74  strncpy(hour, p1, 2); hour[2] = 0;
     75  strncpy(minute, p1+2, 2); minute[2] = 0;
     76
     77  double minuteF = atof (minute);
     78  double hourF = atof(hour);
     79  *st = hourF + minuteF / 60.0;
     80       
     81  return TRUE;
     82}
     83
    5684int loadsupercos_sortStars (Stars *tstars, int Ntstars) {
    5785
  • branches/eam_branches/ipp-20111122/Ohana/src/addstar/src/loadsupercos_plates.c

    r32994 r33006  
    5151    dparse_csv (&exptime, 21, line);
    5252    dparse_csv (&sidtime, 20, line);
     53    loadsupercos_getST (line, &sidtime);
     54
    5355    dparse_csv (&RAo, 14, line);
    5456    dparse_csv (&DECo, 15, line);
     
    5658    loadsupercos_getFilterInfo (line, emulsion, filterID);
    5759
    58     altaz (&alt, &az, sidtime - RAo, DECo, survey[survey_id].latitude);
     60    // need to pass sidereal time in degrees
     61    altaz (&alt, &az, 15.0*sidtime - RAo, DECo, survey[survey_id].latitude);
    5962
    6063    float scale = stepsize * survey[survey_id].plateScale / 1000.0 / 3600.0; // scale in degrees / pixel
     
    8285    }
    8386    image[Nimage].exptime = exptime * 60.0;
    84     image[Nimage].sidtime = sidtime; // XXX double check units
     87    image[Nimage].sidtime = sidtime; // sidereal time in hours
    8588    image[Nimage].latitude = survey[survey_id].latitude;
    8689
  • branches/eam_branches/ipp-20111122/Ohana/src/addstar/src/loadsupercos_rawdata.c

    r32994 r33006  
    33
    44# define NBYTE 228
    5 # define NRECORDS 1000
     5# define NRECORDS 1000000
    66# define DEBUG 0
    77
     
    6666        tstars[i].measure.Yccd = sstars[i].yCen;
    6767
    68         tstars[i].measure.M = sstars[i].prfMag;
     68        tstars[i].measure.M = sstars[i].sMag;
     69        tstars[i].measure.Map = sstars[i].gMag;
    6970        tstars[i].measure.photFlags = sstars[i].class;
    7071
     
    8384       
    8485        double alt, az;
    85         altaz (&alt, &az, sidtime - tstars[i].average.R, tstars[i].average.D, latitude);
    86 
    87         tstars[i].measure.airmass = 1.0 / cos(alt);
     86        altaz (&alt, &az, 15.0*sidtime - tstars[i].average.R, tstars[i].average.D, latitude);
     87
     88        tstars[i].measure.airmass = 1.0 / cos(RAD_DEG*alt);
    8889        tstars[i].measure.az = az;
    8990        tstars[i].measure.t = image[Ni].tzero;
    9091        tstars[i].measure.imageID = image[Ni].imageID;
     92        tstars[i].measure.photcode = image[Ni].photcode;
    9193
    9294        tstars[i].measure.FWx = ToShortPixels(sstars[i].aU);
     
    125127      if (DEBUG) fprintf (stderr, "writing to %s\n", skylist[0].filename[0]);
    126128
     129      int this_image_id = tstars[i].measure.imageID;
     130
    127131      // loop over stars in this WISE region that are also in this output region
    128132      Nstars = 0;
     
    132136      for (j = i; j < Nrecords; j++) {
    133137        if (tstars[j].found != -1) continue;
     138
     139        if (tstars[j].measure.imageID != this_image_id) continue;
    134140
    135141        // check if in skyregion
     
    151157      }
    152158         
    153       if (DEBUG) fprintf (stderr, "selected %d stars (%10.6f - %10.6f, %10.6f - %10.6f)\n", Nstars,
     159      if (VERBOSE) fprintf (stderr, "selected %d stars (%10.6f - %10.6f, %10.6f - %10.6f)\n", Nstars,
    154160                          region[0].Rmin, region[0].Rmax, region[0].Dmin, region[0].Dmax);
    155161
Note: See TracChangeset for help on using the changeset viewer.