Changeset 40792
- Timestamp:
- Jun 12, 2019, 3:49:40 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branches/ohana.20190329/src/opihi/cmd.data/cut.c
r33662 r40792 59 59 /* accumulate values */ 60 60 Vin = (float *)(buf[0].matrix.buffer) + sy*Nx + sx + i; 61 int Npix = 0; 61 62 for (j = 0; j < ny; j++, Vin += Nx) { 63 if (!isfinite(*Vin)) continue; 62 64 Vbuf[j] = *Vin; 65 Npix ++; 66 } 67 if (Npix == 0) { 68 value = NAN; 69 goto set_yvalue; 63 70 } 64 71 /* apply stat of choice */ 65 72 if (Mode == MEDIAN) { 66 fsort (Vbuf, ny);67 value = Vbuf[(int)(0.5* ny)];73 fsort (Vbuf, Npix); 74 value = Vbuf[(int)(0.5*Npix)]; 68 75 } else { 69 76 value = 0; 70 for (j = 0; j < ny; j++) {77 for (j = 0; j < Npix; j++) { 71 78 value += Vbuf[j]; 72 79 } 73 if (Mode == MEAN) { value /= ny; }80 if (Mode == MEAN) { value /= Npix; } 74 81 } 82 set_yvalue: 75 83 yvec[0].elements.Flt[i] = value; 76 84 } … … 91 99 /* accumulate values */ 92 100 Vin = (float *)(buf[0].matrix.buffer) + (sy + i)*Nx + sx; 101 int Npix = 0; 93 102 for (j = 0; j < nx; j++, Vin ++) { 103 if (!isfinite(*Vin)) continue; 94 104 Vbuf[j] = *Vin; 105 Npix ++; 106 } 107 if (Npix == 0) { 108 value = NAN; 109 goto set_xvalue; 95 110 } 96 111 /* apply stat of choice */ 97 112 if (Mode == MEDIAN) { 98 fsort (Vbuf, nx);99 value = Vbuf[(int)(0.5* nx)];113 fsort (Vbuf, Npix); 114 value = Vbuf[(int)(0.5*Npix)]; 100 115 } else { 101 116 value = 0; 102 for (j = 0; j < nx; j++) {117 for (j = 0; j < Npix; j++) { 103 118 value += Vbuf[j]; 104 119 } 105 if (Mode == MEAN) { value /= nx; }120 if (Mode == MEAN) { value /= Npix; } 106 121 } 122 set_xvalue: 107 123 yvec[0].elements.Flt[i] = value; 108 124 }
Note:
See TracChangeset
for help on using the changeset viewer.
