@@ -116,60 +116,3 @@ void _bin_indices(int *irows, int nrows, const double *y, unsigned long ny, doub
116116 }
117117 }
118118}
119-
120- void _bin_indices_linear (
121- float *arows, int *irows, int nrows, double *y, unsigned long ny, double sc, double offs)
122- {
123- int i;
124- if (sc * (y[ny - 1 ] - y[0 ]) > 0 ) {
125- int ii = 0 ;
126- int iilast = (int )ny - 1 ;
127- int iy0 = (int )floor (sc * (y[ii] - offs));
128- int iy1 = (int )floor (sc * (y[ii + 1 ] - offs));
129- float invgap = 1 .0f / (iy1 - iy0);
130- for (i = 0 ; i < nrows && i < iy0; i++) {
131- irows[i] = -1 ;
132- }
133- for (; i < nrows; i++) {
134- while (i > iy1 && ii < iilast) {
135- ii++;
136- iy0 = iy1;
137- iy1 = (int )floor (sc * (y[ii + 1 ] - offs));
138- invgap = 1 .0f / (iy1 - iy0);
139- }
140- if (i >= iy0 && i <= iy1) {
141- irows[i] = ii;
142- arows[i] = (iy1 - i) * invgap;
143- } else
144- break ;
145- }
146- for (; i < nrows; i++) {
147- irows[i] = -1 ;
148- }
149- } else {
150- int iilast = (int )ny - 1 ;
151- int ii = iilast;
152- int iy0 = (int )floor (sc * (y[ii] - offs));
153- int iy1 = (int )floor (sc * (y[ii - 1 ] - offs));
154- float invgap = 1 .0f / (iy1 - iy0);
155- for (i = 0 ; i < nrows && i < iy0; i++) {
156- irows[i] = -1 ;
157- }
158- for (; i < nrows; i++) {
159- while (i > iy1 && ii > 1 ) {
160- ii--;
161- iy0 = iy1;
162- iy1 = (int )floor (sc * (y[ii - 1 ] - offs));
163- invgap = 1 .0f / (iy1 - iy0);
164- }
165- if (i >= iy0 && i <= iy1) {
166- irows[i] = ii - 1 ;
167- arows[i] = (i - iy0) * invgap;
168- } else
169- break ;
170- }
171- for (; i < nrows; i++) {
172- irows[i] = -1 ;
173- }
174- }
175- }
0 commit comments