「lmrcImageCTFDetermination(API)」の版間の差分
提供: Eospedia
(→構造体) |
(→API) |
||
(同じ利用者による、間の2版が非表示) | |||
行52: | 行52: | ||
== API == | == API == | ||
+ | === [[CTF]]推定 === | ||
+ | 参照ref(FFT)に対して、入力in(FFT)の平均位相差を算出し、その最小値データをlinfo->minResidual(Def, Ratio)に、分布をlinfo->Difへ出力します。 | ||
extern void lmrcImageCTFDetermination (lmrcImageCTFDeterminationInfo *linfo, | extern void lmrcImageCTFDetermination (lmrcImageCTFDeterminationInfo *linfo, | ||
lmrcImageCTFDeterminationInfoRef *refinfo, | lmrcImageCTFDeterminationInfoRef *refinfo, | ||
行57: | 行59: | ||
lmrcImageCTFDeterminationInfoMode *Mode); | lmrcImageCTFDeterminationInfoMode *Mode); | ||
+ | 参照ref(FFT)に対して、入力in(FFT)の位相差による[[CTF]]を算出し、linfo->resFFTへ出力します。 | ||
extern void lmrcImageCTFDeterminationResultFFT (lmrcImageCTFDeterminationInfo *linfo, | extern void lmrcImageCTFDeterminationResultFFT (lmrcImageCTFDeterminationInfo *linfo, | ||
lmrcImageCTFDeterminationInfoRef *refinfo, | lmrcImageCTFDeterminationInfoRef *refinfo, | ||
行62: | 行65: | ||
lmrcImageCTFDeterminationInfoMode *Mode); | lmrcImageCTFDeterminationInfoMode *Mode); | ||
+ | === 重み付け === | ||
+ | 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>重み付け方法</th> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>0</td> | ||
+ | <td>1</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>1</td> | ||
+ | <td>(inMag + refMag)/2</td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | <br> | ||
+ | === ミオシンフィラメント用の参照画像作成 === | ||
+ | 初期データの作成([[llData]]): 未実装 | ||
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstInitializeLL | extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstInitializeLL | ||
(lmrcImageCTFDeterminationInfoRef *refinfo, | (lmrcImageCTFDeterminationInfoRef *refinfo, | ||
行70: | 行92: | ||
lll2ltlgInfo *ll2ltlginfo, | lll2ltlgInfo *ll2ltlginfo, | ||
lltlg2mrcInfo *ltlg2mrcinfo); | lltlg2mrcInfo *ltlg2mrcinfo); | ||
− | + | ||
+ | 初期化データの作成([[mrcImage]]) | ||
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstInitializeMRC | extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstInitializeMRC | ||
(lmrcImageCTFDeterminationInfoRef *refinfo, | (lmrcImageCTFDeterminationInfoRef *refinfo, | ||
行77: | 行100: | ||
lmrcImageCrystalCreateInfo *cryinfo, | lmrcImageCrystalCreateInfo *cryinfo, | ||
lmrcImagePadInfo *padinfo); | lmrcImagePadInfo *padinfo); | ||
− | + | ||
+ | 参照画像の作成([[llData]]) | ||
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstLL | extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstLL | ||
(lmrcImageCTFDeterminationInfoRef *refinfo, | (lmrcImageCTFDeterminationInfoRef *refinfo, | ||
行83: | 行107: | ||
lll2ltlgInfo *ll2ltlginfo, | lll2ltlgInfo *ll2ltlginfo, | ||
lltlg2mrcInfo *ltlg2mrcinfo); | lltlg2mrcInfo *ltlg2mrcinfo); | ||
− | + | ||
+ | 参照画像の作成([[mrcImage]]) | ||
extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstMRC | extern void lmrcImageCTFDeterminationCreateRefFilebyNearFar3DReconstMRC | ||
(lmrcImageCTFDeterminationInfoRef *refinfo, | (lmrcImageCTFDeterminationInfoRef *refinfo, |
2014年10月1日 (水) 08:32時点における最新版
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);