Difference between revisions of "lmrcImageCTFDetermination(API)"
From EosPedia
(→API) |
(→API) |
||
| (One intermediate revision by the same user not shown) | |||
| Line 62: | Line 62: | ||
lmrcImageCTFDeterminationInfoMode *Mode); | lmrcImageCTFDeterminationInfoMode *Mode); | ||
| + | === Calculate weight === | ||
| + | Output the weight between input image and reference image depending on '''mode'''. | ||
extern double MagWeightForCTFDetermine(double inMag, double refMag, | extern double MagWeightForCTFDetermine(double inMag, double refMag, | ||
long mode); | long mode); | ||
| + | <table border="1"> | ||
| + | <tr> | ||
| + | <th>mode</th> | ||
| + | <th>method of weight</th> | ||
| + | </tr> | ||
| + | <tr> | ||
| + | <td>0</td> | ||
| + | <td>1</td> | ||
| + | </tr> | ||
| + | <tr> | ||
| + | <td>1</td> | ||
| + | <td>(inMag + refMag)/2</td> | ||
| + | </tr> | ||
| + | </table> | ||
| + | <br> | ||
| + | === Create reference image for myosin filament === | ||
| + | Create initial data([[llData]]): Not implemented | ||
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstInitializeLL | extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstInitializeLL | ||
(lmrcImageCTFDeterminationInfoRef *refinfo, | (lmrcImageCTFDeterminationInfoRef *refinfo, | ||
| Line 70: | Line 89: | ||
lll2ltlgInfo *ll2ltlginfo, | lll2ltlgInfo *ll2ltlginfo, | ||
lltlg2mrcInfo *ltlg2mrcinfo); | lltlg2mrcInfo *ltlg2mrcinfo); | ||
| − | + | ||
| + | Create initial data([[mrcImage]]) | ||
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstInitializeMRC | extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstInitializeMRC | ||
(lmrcImageCTFDeterminationInfoRef *refinfo, | (lmrcImageCTFDeterminationInfoRef *refinfo, | ||
| Line 77: | Line 97: | ||
lmrcImageCrystalCreateInfo *cryinfo, | lmrcImageCrystalCreateInfo *cryinfo, | ||
lmrcImagePadInfo *padinfo); | lmrcImagePadInfo *padinfo); | ||
| − | + | ||
| + | Create reference data([[llData]]) | ||
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstLL | extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstLL | ||
(lmrcImageCTFDeterminationInfoRef *refinfo, | (lmrcImageCTFDeterminationInfoRef *refinfo, | ||
| Line 83: | Line 104: | ||
lll2ltlgInfo *ll2ltlginfo, | lll2ltlgInfo *ll2ltlginfo, | ||
lltlg2mrcInfo *ltlg2mrcinfo); | lltlg2mrcInfo *ltlg2mrcinfo); | ||
| − | + | ||
| + | Create reference data([[mrcImage]]) | ||
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstMRC | extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstMRC | ||
(lmrcImageCTFDeterminationInfoRef *refinfo, | (lmrcImageCTFDeterminationInfoRef *refinfo, | ||
Latest revision as of 08:31, 1 October 2014
DataManip/mrcImage/src/lmrcImageCTFDetermination is API for mrcImageCTFDetermination.
Contents
constant
struct
typedef struct lmrcImageCTFDeterminationInfo {
ctfInfo val;
ctfInfo min;
ctfInfo max;
ctfInfo del;
mrcImageParaTypeReal Rmax;
mrcImageParaTypeReal Rmin;
mrcImage Dif;
double minResidual;
double minDef;
double minRatio;
FILE* Out;
int flagOutF;
mrcImage resFFT;
} lmrcImageCTFDeterminationInfo;
typedef struct lmrcImageCTFDeterminationInfoMode {
long FilterType;
long WeightType;
long SumType;
long CTFInfoType;
} lmrcImageCTFDeterminationInfoMode;
typedef struct lmrcImageCTFDeterminationInfoRef {
FILE* fptIn;
char* In;
FILE* fptRef;
char* Ref;
FILE* fptOut;
char* Out;
char MrcOut[100];
mrcImage* in;
mrcImage* out;
long Width;
float PixelSize;
float truePitch;
float firstDf;
float withinDf;
float firstAoverP;
float withinAoverP;
mrcImageParaTypeReal maxiter;
mrcImageParaTypeReal iter;
} lmrcImageCTFDeterminationInfoRef;
API
CTF推定
Calculate average phase difference between Input in(FFT) and Reference ref(FFT), then Output the minimum data to linfo->minResidual(Def, Ratio), and the distribution to linfo->Dif.
extern void lmrcImageCTFDetermination (lmrcImageCTFDeterminationInfo *linfo, lmrcImageCTFDeterminationInfoRef *refinfo, mrcImage* in, mrcImage* ref, lmrcImageCTFDeterminationInfoMode *Mode);
Calculate CTF depending on phase difference between Input in(FFT) and Reference ref(FFT), then output it to linfo->resFFT.
extern void lmrcImageCTFDeterminationResultFFT (lmrcImageCTFDeterminationInfo *linfo, lmrcImageCTFDeterminationInfoRef *refinfo, mrcImage* in, mrcImage* ref, lmrcImageCTFDeterminationInfoMode *Mode);
Calculate weight
Output the weight between input image and reference image depending on mode.
extern double MagWeightForCTFDetermine(double inMag, double refMag, long mode);
| mode | method of weight |
|---|---|
| 0 | 1 |
| 1 | (inMag + refMag)/2 |
Create reference image for myosin filament
Create initial data(llData): Not implemented
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstInitializeLL (lmrcImageCTFDeterminationInfoRef *refinfo, lllDataCTFCompensateInfo *llctfinfo, lll2ltlgInfo *ll2ltlginfo, lltlg2mrcInfo *ltlg2mrcinfo);
Create initial data(mrcImage)
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstInitializeMRC (lmrcImageCTFDeterminationInfoRef *refinfo, mrcImageInformation *solinfo, lmrcImageProjectionInfo *projinfo, lmrcImageCrystalCreateInfo *cryinfo, lmrcImagePadInfo *padinfo);
Create reference data(llData)
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstLL (lmrcImageCTFDeterminationInfoRef *refinfo, lllDataCTFCompensateInfo *llctfinfo, lll2ltlgInfo *ll2ltlginfo, lltlg2mrcInfo *ltlg2mrcinfo);
Create reference data(mrcImage)
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstMRC (lmrcImageCTFDeterminationInfoRef *refinfo, mrcImageInformation *solinfo, lmrcImageProjectionInfo *projinfo, lmrcImageCrystalCreateInfo *cryinfo, lmrcImagePadInfo *padinfo);