aboutsummaryrefslogtreecommitdiff
path: root/src/refine.c
diff options
context:
space:
mode:
authortaw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1>2008-01-12 18:41:58 +0000
committertaw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1>2008-01-12 18:41:58 +0000
commit2cf80ca8beaf98868c6c61400cd74636e925def1 (patch)
tree87b3ae58b41c27f6b566031394eff176f6a416b4 /src/refine.c
parentcbc4ab593fb319d417a0305d63eb6c6cdbfa4d1f (diff)
More IPR testing
git-svn-id: svn://cook.msm.cam.ac.uk:745/diff-tomo/dtr@250 bf6ca9ba-c028-0410-8290-897cf20841d1
Diffstat (limited to 'src/refine.c')
-rw-r--r--src/refine.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/refine.c b/src/refine.c
index f173e99..6bd2225 100644
--- a/src/refine.c
+++ b/src/refine.c
@@ -3,7 +3,7 @@
*
* Refine the reconstruction
*
- * (c) 2007 Thomas White <taw27@cam.ac.uk>
+ * (c) 2007-2008 Thomas White <taw27@cam.ac.uk>
*
* dtr - Diffraction Tomography Reconstruction
*
@@ -61,6 +61,7 @@ ImageFeature *refine_fit_image(Basis *cell, ImageRecord *image) {
gsl_permutation *perm;
int s;
+ double det;
gsl_matrix_set_zero(M);
gsl_vector_set_zero(p);
@@ -107,7 +108,7 @@ ImageFeature *refine_fit_image(Basis *cell, ImageRecord *image) {
val = gsl_vector_get(p, 0); val += xy * h; gsl_vector_set(p, 0, val);
val = gsl_vector_get(p, 1); val += xy * k; gsl_vector_set(p, 1, val);
val = gsl_vector_get(p, 2); val += xy * l; gsl_vector_set(p, 2, val);
-
+ gsl_matrix_get(M, 2, 2);
/* Elements of "M" */
val = gsl_matrix_get(M, 0, 0); val += h * h; gsl_matrix_set(M, 0, 0, val);
val = gsl_matrix_get(M, 0, 1); val += k * h; gsl_matrix_set(M, 0, 1, val);
@@ -125,7 +126,7 @@ ImageFeature *refine_fit_image(Basis *cell, ImageRecord *image) {
}
- if ( !ns ) {
+ if ( ns == 0 ) {
printf("RF: No partners found\n");
gsl_matrix_free(M);
gsl_vector_free(p);
@@ -133,8 +134,12 @@ ImageFeature *refine_fit_image(Basis *cell, ImageRecord *image) {
}
/* Do the fitting */
+ //gsl_matrix_set(M, 2, 2, 1.0);
+ matrix_vector_show(M, p);
perm = gsl_permutation_alloc(M->size1);
gsl_linalg_LU_decomp(M, perm, &s);
+ det = gsl_linalg_LU_det(M, s);
+ printf("Determinant of M = %f\n", det);
q = gsl_vector_alloc(3); /* This is the "answer" */
gsl_vector_set_zero(q);