| 176 |
|
pm->prow = pricerow(pm,i); |
| 177 |
|
srow = psortrow(pm,i); |
| 178 |
|
for (j = to_rbf->nrbf; j--; ) { |
| 179 |
< |
double dprod = DOT(vfrom, vto[j]); |
| 180 |
< |
pm->prow[j] = ((dprod >= 1.) ? .0 : acos(dprod)) + |
| 181 |
< |
fabs(R2ANG(to_rbf->rbfa[j].crad) - from_ang); |
| 179 |
> |
double d; /* quadratic cost function */ |
| 180 |
> |
d = DOT(vfrom, vto[j]); |
| 181 |
> |
d = (d >= 1.) ? .0 : acos(d); |
| 182 |
> |
pm->prow[j] = d*d; |
| 183 |
> |
d = R2ANG(to_rbf->rbfa[j].crad) - from_ang; |
| 184 |
> |
pm->prow[j] += d*d; |
| 185 |
|
srow[j] = j; |
| 186 |
|
} |
| 187 |
|
qsort_r(srow, pm->ncols, sizeof(short), pm, &msrt_cmp); |