IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 42517


Ignore:
Timestamp:
Aug 17, 2023, 4:28:41 PM (3 years ago)
Author:
eugene
Message:

merging from trunk: exclude NAN values in uniq

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20230313/Ohana/src/opihi/cmd.data/uniq.c

    r40291 r42517  
    4545    opihi_flt *indata = NULL;
    4646    ALLOCATE (indata, opihi_flt, ivec[0].Nelements);
    47     memcpy (indata, ivec->elements.Flt, ivec[0].Nelements*sizeof(opihi_flt));
    4847
    49     dsort (indata, ivec->Nelements);
     48    // manually copy and exclude any nan values
     49    int Nindata = 0;
     50    for (i = 0; i < ivec->Nelements; i++) {
     51      if (!isfinite(ivec[0].elements.Flt[i])) continue;
     52      indata[Nindata] = ivec[0].elements.Flt[i];
     53      Nindata ++;
     54    }
     55    // XXX do not do this: memcpy (indata, ivec->elements.Flt, ivec[0].Nelements*sizeof(opihi_flt));
     56
     57    dsort (indata, Nindata);
    5058
    5159    Nnew = 0;
     
    5462    opihi_flt *vsrc = indata;
    5563
    56     int onePercent = ivec->Nelements / 100;
     64    int onePercent = Nindata / 100;
    5765
    5866    struct sigaction *old_sigaction = SetInterrupt();
    59     for (i = 0; (i < ivec->Nelements) && !interrupt; Nnew++) {
     67    for (i = 0; (i < Nindata) && !interrupt; Nnew++) {
    6068      vtgt[Nnew] = *vsrc;
    6169      int Ndup = 0;
Note: See TracChangeset for help on using the changeset viewer.