lmrcImageCTFDetermination(API)

From EosPedia
Jump to: navigation, search

DataManip/mrcImage/src/lmrcImageCTFDetermination is API for mrcImageCTFDetermination.

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