IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 39168 for trunk


Ignore:
Timestamp:
Nov 19, 2015, 5:43:11 PM (11 years ago)
Author:
watersc1
Message:

Fixed transposition that was critically broken for fitplx_irls, but seemed to have dodged through in fitpm_irls.

Location:
trunk/Ohana/src/opihi/cmd.astro
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Ohana/src/opihi/cmd.astro/fitplx_irls.c

    r39167 r39168  
    359359  sigma_ols = 0.0;
    360360  for (i = 0; i < Npts; i++) {
    361     rx[i] = X[i] - (T[i] * B[0][0] + B[1][0] + B[4][0] * pR[i]);
    362     ry[i] = Y[i] - (T[i] * B[2][0] + B[3][0] + B[4][0] * pD[i]);
     361    rx[i] = X[i] - (T[i] * B[1][0] + B[0][0] + B[4][0] * pR[i]);
     362    ry[i] = Y[i] - (T[i] * B[3][0] + B[2][0] + B[4][0] * pD[i]);
    363363    //    u[i] = r[i] /
    364364    sigma_ols += SQ(rx[i]) + SQ(ry[i]);
     
    383383  iterations = 0;
    384384  do {
     385    if (VERBOSE == 2) {
     386      fprintf(stderr,"Iteration: %d (%f %f %f %f %f) sigmas: %f %f\n",
     387              iterations,
     388              Beta[0],Beta[1],Beta[2],Beta[3],Beta[4],
     389              sigma_ols, sigma_hat);
     390    }
    385391    // Save Beta
    386392    for (i = 0; i < 5; i++) {
     
    408414    // Calculate r vector of residuals
    409415    for (i = 0; i < Npts; i++) {
    410       rx[i] = X[i] - (T[i] * B[0][0] + B[1][0] + B[4][0] * pR[i]);
    411       ry[i] = Y[i] - (T[i] * B[2][0] + B[3][0] + B[4][0] * pD[i]);
     416      rx[i] = X[i] - (T[i] * B[1][0] + B[0][0] + B[4][0] * pR[i]);
     417      ry[i] = Y[i] - (T[i] * B[3][0] + B[2][0] + B[4][0] * pD[i]);
    412418      IRLS_u[i] = sqrt(SQ(rx[i] / dX[i]) + SQ(ry[i] / dY[i]));
    413419    }
     
    426432
    427433    iterations++;
    428     if (iterations > max_iterations) {
     434    if (iterations >= max_iterations) {
    429435      converged = TRUE;
    430436      // Throw a warning or something here.
  • trunk/Ohana/src/opihi/cmd.astro/fitpm_irls.c

    r39086 r39168  
    231231  sigma_ols = 0.0;
    232232  for (i = 0; i < Npts; i++) {
    233     rx[i] = X[i] - (T[i] * B[0][0] + B[1][0]);
    234     ry[i] = Y[i] - (T[i] * B[2][0] + B[3][0]);
     233    rx[i] = X[i] - (T[i] * B[1][0] + B[0][0]);
     234    ry[i] = Y[i] - (T[i] * B[3][0] + B[2][0]);
    235235    //    u[i] = r[i] /
    236236    sigma_ols += SQ(rx[i]) + SQ(ry[i]);
     
    280280    sigma_hat = 0.0;
    281281    for (i = 0; i < Npts; i++) {
    282       rx[i] = X[i] - (T[i] * B[0][0] + B[1][0]);
    283       ry[i] = Y[i] - (T[i] * B[2][0] + B[3][0]);
     282      rx[i] = X[i] - (T[i] * B[1][0] + B[0][0]);
     283      ry[i] = Y[i] - (T[i] * B[3][0] + B[2][0]);
    284284      u[i] = sqrt(SQ(rx[i] / dX[i]) + SQ(ry[i] / dY[i]));
    285285    }
Note: See TracChangeset for help on using the changeset viewer.