lmrcImageCTFDetermination(API)
提供: Eospedia
		
		
		
DataManip/mrcImage/src/lmrcImageCTFDeterminationはmrcImageCTFDeterminationのためのAPI です。
定数
構造体
lmrcImageCTFDetermination、lmrcImageCTFDeterminationResultFFTで使用します。
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;
lmrcImageCTFDetermination、lmrcImageCTFDeterminationResultFFTで使用します。(モード)
typedef struct lmrcImageCTFDeterminationInfoMode {
	long FilterType;
	long WeightType;
	long SumType;
	long CTFInfoType;
} lmrcImageCTFDeterminationInfoMode;
このAPIで使用します。
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推定
参照ref(FFT)に対して、入力in(FFT)の平均位相差を算出し、その最小値データをlinfo->minResidual(Def, Ratio)に、分布をlinfo->Difへ出力します。
extern void lmrcImageCTFDetermination (lmrcImageCTFDeterminationInfo *linfo, lmrcImageCTFDeterminationInfoRef *refinfo, mrcImage* in, mrcImage* ref, lmrcImageCTFDeterminationInfoMode *Mode);
参照ref(FFT)に対して、入力in(FFT)の位相差によるCTFを算出し、linfo->resFFTへ出力します。
extern void lmrcImageCTFDeterminationResultFFT (lmrcImageCTFDeterminationInfo *linfo, lmrcImageCTFDeterminationInfoRef *refinfo, mrcImage* in, mrcImage* ref, lmrcImageCTFDeterminationInfoMode *Mode);
重み付け
modeによる入力画像と参照画像の重みを出力します。
extern double MagWeightForCTFDetermine(double inMag, double refMag, long mode);
| mode | 重み付け方法 | 
|---|---|
| 0 | 1 | 
| 1 | (inMag + refMag)/2 | 
ミオシンフィラメント用の参照画像作成
初期データの作成(llData): 未実装
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstInitializeLL (lmrcImageCTFDeterminationInfoRef *refinfo, lllDataCTFCompensateInfo *llctfinfo, lll2ltlgInfo *ll2ltlginfo, lltlg2mrcInfo *ltlg2mrcinfo);
初期化データの作成(mrcImage)
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstInitializeMRC (lmrcImageCTFDeterminationInfoRef *refinfo, mrcImageInformation *solinfo, lmrcImageProjectionInfo *projinfo, lmrcImageCrystalCreateInfo *cryinfo, lmrcImagePadInfo *padinfo);
参照画像の作成(llData)
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstLL (lmrcImageCTFDeterminationInfoRef *refinfo, lllDataCTFCompensateInfo *llctfinfo, lll2ltlgInfo *ll2ltlginfo, lltlg2mrcInfo *ltlg2mrcinfo);
参照画像の作成(mrcImage)
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstMRC (lmrcImageCTFDeterminationInfoRef *refinfo, mrcImageInformation *solinfo, lmrcImageProjectionInfo *projinfo, lmrcImageCrystalCreateInfo *cryinfo, lmrcImagePadInfo *padinfo);
