Feature #396
closedremoved getBestAceTwoValueForImage()
0%
Description
removed "getBestAceTwoValueForImage" function from apCtf.py, and instead added a "method" option to the "getBestCtfValueForImage" function.
checks for "ace2" or "ctffind" specificity. Updated all files that reference this function, and updated the php.
r13646
Updated by Anchi Cheng over 14 years ago
Don't the detail of this. But I learned from Neil yesterday that ACE2 ctf correction would only work accurately with its own estimation.
Updated by Gabriel Lander over 14 years ago
Sorry, should have also mentioned that I updated the "phaseFlipAceTwo" function in "makestack2.py" so that the necessary parameter file used by ace2correct.exe is generated from db values if no ace2 ctfvalues file exists. I checked this with ctffind values, and it seems to work fine. Don't know if there are other issues that may come up with this though.
Updated by Neil Voss over 14 years ago
ACE2 works best with ACE2
Ctffind works best with Frealign
Craig informed me that there are different interpretations of the CTF equations and it is best to stay within the same package. That said we found little affect on high resolution, just low resolution (100-30A), i.e., the first zero may be off.
Updated by Amber Herold over 14 years ago
- Assignee changed from Amber Herold to Neil Voss
Neil, not sure what the status is non this. Does it stay or go? If it stays, could you review the code and assign it to someone to test?
Updated by Neil Voss over 14 years ago
- Assignee changed from Neil Voss to Gabriel Lander
Gabe what is the default method for makestack then?
Before, if you asked for ctf correction with ACE2 it would get the best CTF value from ACE2 (independent of method). Now, if the ACE1 method gives a better value than ACE2 it will skip the image.
Updated by Gabriel Lander over 14 years ago
Damn, I'm sorry, that's not the functionality I wanted at all. We don't have matlab here, so I couldn't test with ACE1 data. The way I have it now is that all the functions that used to be "getBestAceTwoValueForImage" now call "getBestCtfValueForImage" with the "method=ace2" option, so that it will only look for ace2 values in the database.
I don't know why it's skipping the image if the ACE1 confidence is better, the function shouldn't be looking at any ACE1 data with "method=ace2" set,
I thought line 223 & 224 would skip over anything that's not ACE2 - but does ACE1 also have entries for ['ctfvalues_file'] in the database? that would explain the problem.
if method=='ace2' and ctfvalue['ctfvalues_file'] is None:
continue
Updated by Neil Voss over 14 years ago
No as I see it the getBestAceTwoValueForImage() was changed to getBestCtfValueForImage() and the method is method=self.params['ctfmethod'] on line 472 but self.params['ctfmethod'] is equal to None. Unless I am missing something.
source:trunk/appion/bin/makestack2.py@13869#L469
Updated by Gabriel Lander over 14 years ago
I see what you mean - my bad. Maybe if "flip-type" is set to ace2image and "ctfmethod" is none, then "ctfmethod" should default to "ace2".
Alternatively we can explicitly output the default "ctfmethod" option from the web. I'm scared to do any svn updates right now - is it safe to svn update these files & make the changes, or would you rather do this?
Updated by Neil Voss over 14 years ago
I would wait until next week to Appion update. We got the whole lab bug testing right now.
Updated by Gabriel Lander over 14 years ago
- Assignee changed from Gabriel Lander to Neil Voss
I see. So are you cool with making the changes? I say for now just add a line to makestack2.py where if "flip-type" is set to ace2image & "ctfmethod" is None, then "ctfmethod" is set to "ace2"
Updated by Neil Voss over 14 years ago
- Assignee changed from Neil Voss to Gabriel Lander
Oh, I did not realize we have a hack to write a ctf values file. Craig did eventually add command line parameters for all the things in the ctf values file. We should probably change this in the future.
see r13918 for the fix.
Updated by Gabriel Lander over 14 years ago
- Status changed from In Code Review to Closed