Difference between revisions of "lmrcImageCTFCompensation(API)"
From EosPedia
(Created page with "DataManip/mrcImage/src/'''lmrcImageCTFCompensation''' is API for mrcImageCTFCompensation and mrcImageMultiCTFCompensation. == constant == == struct == == API == ex...") |
(→CTF Correction(One image)) |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
− | DataManip/mrcImage/src/'''lmrcImageCTFCompensation''' is API | + | DataManip/mrcImage/src/'''lmrcImageCTFCompensation''' is API to multiply CTF Correction to [[mrcImage]]. It is used by [[mrcImageCTFCompensation]], [[mrcImageMultiCTFCompensation]], and so on. |
== constant == | == constant == | ||
Line 6: | Line 6: | ||
== API == | == API == | ||
+ | === CTF Correction(One image) === | ||
+ | extern void lmrcImageCTFCompensation(mrcImage* dstfft, ctfInfo* ctf, long mode); | ||
+ | Depending on ctf->flagAstigmatism, run different process. In addition, processes are changed by mode of argument. (refer [[ctfInfo(API)]]) | ||
+ | <table border="1"> | ||
+ | <tr> | ||
+ | <th>Flag</th> | ||
+ | <th>Function Name</th> | ||
+ | <th>Description</th> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>true</td> | ||
+ | <td>ctfWeightForCorrection2D</td> | ||
+ | <td> CTF Correction(2D)</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>false</td> | ||
+ | <td>ctfWeightForCorrection</td> | ||
+ | <td> CTF Correction</td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | <br> | ||
+ | |||
+ | If ctf->flagWin is true, perform other correction for each range R at the following rule.(sin Windowing) | ||
+ | <table border="1"> | ||
+ | <tr> | ||
+ | <th>Range</th> | ||
+ | <th>Description</th> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>ctf->CutLow or less</td> | ||
+ | <td>Directly</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>more than ctf->CutLow, and less than ctf->CutHigh</td> | ||
+ | <td>Weight = Weight*(cos((R-ctf->CutLow)/(ctf->CutHigh-ctf->CutLow)*M_PI)+1)*0.5;</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>more than ctf->CutHigh</td> | ||
+ | <td>0</td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | <br> | ||
+ | |||
+ | === CTF Correction(Multiple images) === | ||
+ | extern void lmrcImageMultiCTFCompensation(mrcImage* dst, mrcImage* src, ctfInfo* ctf, long nfile, lmrcImageMultiCTFCompensationInfo info, long mode); | ||
+ | Depending on mode(&0xf), run either function at the following. | ||
+ | <table border="1"> | ||
+ | <tr> | ||
+ | <th>Value</th> | ||
+ | <th>Function Name</th> | ||
+ | <th>Description</th> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>+0</td> | ||
+ | <td>__lmrcImageMultiCTFCompensationMode0</td> | ||
+ | <td></td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>+1</td> | ||
+ | <td>__lmrcImageMultiCTFCompensationMode1</td> | ||
+ | <td>Smoothing of Solvent</td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | <br> | ||
+ | |||
extern void __lmrcImageMultiCTFCompensationMode0(mrcImage* dst, mrcImage* src, ctfInfo* ctf, long nfile, lmrcImageMultiCTFCompensationInfo info, long mode); | extern void __lmrcImageMultiCTFCompensationMode0(mrcImage* dst, mrcImage* src, ctfInfo* ctf, long nfile, lmrcImageMultiCTFCompensationInfo info, long mode); | ||
extern void __lmrcImageMultiCTFCompensationMode1(mrcImage* dst, mrcImage* src, ctfInfo* ctf, long nfile, lmrcImageMultiCTFCompensationInfo info, long mode); | extern void __lmrcImageMultiCTFCompensationMode1(mrcImage* dst, mrcImage* src, ctfInfo* ctf, long nfile, lmrcImageMultiCTFCompensationInfo info, long mode); | ||
− | + | === Output API Information === | |
extern void lmrcImageMultiCTFCompensationUsage(FILE* fpt); | extern void lmrcImageMultiCTFCompensationUsage(FILE* fpt); | ||
− | |||
− |
Latest revision as of 06:29, 2 September 2014
DataManip/mrcImage/src/lmrcImageCTFCompensation is API to multiply CTF Correction to mrcImage. It is used by mrcImageCTFCompensation, mrcImageMultiCTFCompensation, and so on.
Contents
constant
struct
API
CTF Correction(One image)
extern void lmrcImageCTFCompensation(mrcImage* dstfft, ctfInfo* ctf, long mode);
Depending on ctf->flagAstigmatism, run different process. In addition, processes are changed by mode of argument. (refer ctfInfo(API))
Flag | Function Name | Description |
---|---|---|
true | ctfWeightForCorrection2D | CTF Correction(2D) |
false | ctfWeightForCorrection | CTF Correction |
If ctf->flagWin is true, perform other correction for each range R at the following rule.(sin Windowing)
Range | Description |
---|---|
ctf->CutLow or less | Directly |
more than ctf->CutLow, and less than ctf->CutHigh | Weight = Weight*(cos((R-ctf->CutLow)/(ctf->CutHigh-ctf->CutLow)*M_PI)+1)*0.5; |
more than ctf->CutHigh | 0 |
CTF Correction(Multiple images)
extern void lmrcImageMultiCTFCompensation(mrcImage* dst, mrcImage* src, ctfInfo* ctf, long nfile, lmrcImageMultiCTFCompensationInfo info, long mode);
Depending on mode(&0xf), run either function at the following.
Value | Function Name | Description |
---|---|---|
+0 | __lmrcImageMultiCTFCompensationMode0 | |
+1 | __lmrcImageMultiCTFCompensationMode1 | Smoothing of Solvent |
extern void __lmrcImageMultiCTFCompensationMode0(mrcImage* dst, mrcImage* src, ctfInfo* ctf, long nfile, lmrcImageMultiCTFCompensationInfo info, long mode); extern void __lmrcImageMultiCTFCompensationMode1(mrcImage* dst, mrcImage* src, ctfInfo* ctf, long nfile, lmrcImageMultiCTFCompensationInfo info, long mode);
Output API Information
extern void lmrcImageMultiCTFCompensationUsage(FILE* fpt);