From 32dd839ed7d10ef4b9dbcc5f11920dd6347e8ee4 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Fri, 17 Dec 2010 19:53:39 -0800 Subject: Remove row-crossing stuff since it should not be needed --- src/hrs-scaling.c | 30 ++++++++---------------------- 1 file changed, 8 insertions(+), 22 deletions(-) (limited to 'src') diff --git a/src/hrs-scaling.c b/src/hrs-scaling.c index 3f03b8d8..ea87dec7 100644 --- a/src/hrs-scaling.c +++ b/src/hrs-scaling.c @@ -122,23 +122,19 @@ static double iterate_scale(struct image *images, int n, gsl_vector *shifts; int l; double max_shift; - int crossed = 0; int n_ref; - M = gsl_matrix_calloc(n-1, n-1); - v = gsl_vector_calloc(n-1); + M = gsl_matrix_calloc(n, n); + v = gsl_vector_calloc(n); n_ref = num_items(obs); for ( l=0; l crossed ) lcomp--; - gsl_vector_set(v, lcomp, vc_tot); + gsl_vector_set(v, l, vc_tot); /* Now fill in the matrix components */ for ( m=0; m l ) continue; /* Matrix is symmetric */ - if ( m == crossed ) continue; for ( h=0; h crossed ) mcomp--; - gsl_matrix_set(M, lcomp, mcomp, mc_tot); - gsl_matrix_set(M, mcomp, lcomp, mc_tot); + gsl_matrix_set(M, l, m, mc_tot); + gsl_matrix_set(M, m, l, mc_tot); } } - show_matrix_eqn(M, v, n-1); + show_matrix_eqn(M, v, n); - shifts = gsl_vector_alloc(n-1); + shifts = gsl_vector_alloc(n); gsl_linalg_HH_solve(M, v, shifts); max_shift = 0.0; for ( l=0; l= crossed ) limg++; - images[limg].osf += shift; + images[l].osf += shift; if ( fabs(shift) > fabs(max_shift) ) { max_shift = fabs(shift); -- cgit v1.2.3