Project

General

Profile

Actions

Bug #1560

closed

ctf estimation used in beam-tilt coma calibration fails

Added by Anchi Cheng about 12 years ago. Updated almost 12 years ago.

Status:
Closed
Priority:
High
Assignee:
Category:
Leginon subsystem
Start date:
02/17/2012
Due date:
% Done:

0%

Estimated time:
Affected Version:
Appion/Leginon 2.1.0
Show in known bugs:
No
Workaround:

Description

reported by Bob Grassuci in http://emg.nysbc.org/boards/6/topics/1142

Calibration failed Unsupported operand type(s) for -: 'None type' and 'None type'
And "Can only concatenate tuple(not float) to tuple

There must be some error handling problem.


Files

beam-tilt-coma-error_001.mrc (513 KB) beam-tilt-coma-error_001.mrc Bob Grassucci, 02/27/2012 02:10 PM
testctf.py (944 Bytes) testctf.py Anchi Cheng, 03/21/2012 04:10 PM
Actions #1

Updated by Bob Grassucci about 12 years ago

Sample image that failed. 512X512 4X binning, Pixel size 6 A. 300kV

Actions #2

Updated by Anchi Cheng about 12 years ago

Finally have some time to track this down. I will work on the error handling so that it does not cause this kind of ambiguous error message.

Unsupported operand type(s) for -: 'None type' and 'None type came from line 896 in leginon/calibrationclient.py where two defocus values it need to subtract are None due to failed ctf estimation.

However, the fact remains that the ctf estimation failed on images similar to this test image.

From my direct test, this particular image did not failed although I was not clear whether 6 A pixel size is before or after binning of 4. I tested as after binning The fitting result was not very good (giving larger astigmation than expect) which is means the algorithm need improvement.

I will write a short python script that users can use to check the ctf estimation directly,

Actions #3

Updated by Anchi Cheng about 12 years ago

Here is the python script. If you run it under the same environment as leginon, it should be able to find all the libraries it needs.

The format for running is:

Usage: python testctf.py ht pixelsize mrcfile
 ht: High Tension of the microscope in kilovolts
 pixelsize: image pixelsie in Angstroms
 mrcfile: path to a square mrc file to be analyzed

For example:
 python ./testctf.py 200 1.71 /yourdata/yourimage.mrc

Actions #4

Updated by Anchi Cheng about 12 years ago

  • Status changed from Assigned to In Code Review
  • Assignee changed from Anchi Cheng to Jim Pulokas

r16531 handles the None returned from failed ctf estimation before operations. This is a bit of mess because I want to use the same function for calls from Calibrator and Acquisition subclasses with different behavior in each case. Can use refactoring someday.

Need to merge to 2.2 branch

Actions #5

Updated by Jim Pulokas almost 12 years ago

  • Status changed from In Code Review to Closed

reviewed. already merged, so closing.

Actions

Also available in: Atom PDF