diff options
author | taw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1> | 2007-02-13 19:04:40 +0000 |
---|---|---|
committer | taw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1> | 2007-02-13 19:04:40 +0000 |
commit | 10ece6fb4017738589e4cad309b9d4091a2745a3 (patch) | |
tree | 2691fda5f9d47d64588644573153c302ca48e0cc /src | |
parent | 2badf2f6f6ae8cc571cf376ce5885e5df695ee4e (diff) |
Trap on failure to find initial basis
Display pixel_size from MRC header
Fix trivial comment typo
git-svn-id: svn://cook.msm.cam.ac.uk:745/diff-tomo/dtr@6 bf6ca9ba-c028-0410-8290-897cf20841d1
Diffstat (limited to 'src')
-rw-r--r-- | src/ipr.c | 10 | ||||
-rw-r--r-- | src/mrc.c | 1 | ||||
-rw-r--r-- | src/reflections.c | 2 |
3 files changed, 12 insertions, 1 deletions
@@ -156,6 +156,15 @@ static Basis *ipr_choose_initial_basis(ControlContext *ctx) { } reflection = reflection->next; + /* End of list? */ + if ( !reflection ) { + if ( (basis->a.modulus == 1e30) || (basis->b.modulus == 1e30) || (basis->c.modulus == 1e30) ) { + printf("IP: Failed to find appropriate starting basis!\n"); + free(basis); + return NULL; + } + } + } while ( reflection || (basis->a.modulus == 1e30) || (basis->b.modulus == 1e30) || (basis->c.modulus == 1e30) ); printf("IP: Initial basis:\n"); @@ -239,6 +248,7 @@ void ipr_reduce(ControlContext *ctx) { Basis *basis; basis = ipr_choose_initial_basis(ctx); + if ( !basis ) return; ctx->reflectionctx->basis = basis; /* Get rid of the original list and replace it with the prediction list */ @@ -66,6 +66,7 @@ int mrc_read(ControlContext *ctx) { } pixel_size = ext[0].pixel_size; + printf("pixel_size=%f\n", pixel_size); nx = mrc.nx; ny = mrc.ny; nz = (mrc.nx > mrc.ny)?mrc.nx:mrc.ny; diff --git a/src/reflections.c b/src/reflections.c index dbe2a7d..d2bc9db 100644 --- a/src/reflections.c +++ b/src/reflections.c @@ -138,7 +138,7 @@ void reflection_add_from_dp(ControlContext *ctx, double x, double y, double tilt } /* Alternative formulation for when the input data is already in reciprocal space units - x and y in metres^-1 (in reciprocal space */ + x and y in metres^-1 (in reciprocal space) */ void reflection_add_from_reciprocal(ControlContext *ctx, double x, double y, double tilt_degrees, double intensity) { double nx, ny, nz; |