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);