<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?action=history&amp;feed=atom&amp;title=mrcRefUtil%28API%29</id>
		<title>mrcRefUtil(API) - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?action=history&amp;feed=atom&amp;title=mrcRefUtil%28API%29"/>
		<link rel="alternate" type="text/html" href="http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?title=mrcRefUtil(API)&amp;action=history"/>
		<updated>2026-06-04T14:52:15Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.23.6</generator>

	<entry>
		<id>http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?title=mrcRefUtil(API)&amp;diff=1778&amp;oldid=prev</id>
		<title>Kinoshita: Created page with &quot;Closed/mrcRef/src/'''mrcRefUtil''' is API.  == constant ==  #define mrcRefHeaderNumber 9;  == struct ==  typedef double mrcRefDegCoordinate;     typedef struct {    mrcRefDegC...&quot;</title>
		<link rel="alternate" type="text/html" href="http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?title=mrcRefUtil(API)&amp;diff=1778&amp;oldid=prev"/>
				<updated>2014-07-28T07:44:04Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;Closed/mrcRef/src/&amp;#039;&amp;#039;&amp;#039;mrcRefUtil&amp;#039;&amp;#039;&amp;#039; is API.  == constant ==  #define mrcRefHeaderNumber 9;  == struct ==  typedef double mrcRefDegCoordinate;     typedef struct {    mrcRefDegC...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Closed/mrcRef/src/'''mrcRefUtil''' is API.&lt;br /&gt;
&lt;br /&gt;
== constant ==&lt;br /&gt;
 #define mrcRefHeaderNumber 9;&lt;br /&gt;
&lt;br /&gt;
== struct ==&lt;br /&gt;
 typedef double mrcRefDegCoordinate; &lt;br /&gt;
 &lt;br /&gt;
 typedef struct {&lt;br /&gt;
   mrcRefDegCoordinate ip;&lt;br /&gt;
   mrcRefDegCoordinate iw;&lt;br /&gt;
   mrcRefDegCoordinate ia;&lt;br /&gt;
   mrcRefDegCoordinate dp;&lt;br /&gt;
   mrcRefDegCoordinate dw;&lt;br /&gt;
   mrcRefDegCoordinate da;&lt;br /&gt;
   mrcRefDegCoordinate wp;&lt;br /&gt;
   mrcRefDegCoordinate ww;&lt;br /&gt;
   mrcRefDegCoordinate wa;&lt;br /&gt;
 } mrcRefHeader;&lt;br /&gt;
 &lt;br /&gt;
 typedef struct {&lt;br /&gt;
   mrcRefDegCoordinate ip;&lt;br /&gt;
   mrcRefDegCoordinate iw;&lt;br /&gt;
   mrcRefDegCoordinate ia;&lt;br /&gt;
   mrcRefDegCoordinate dp;&lt;br /&gt;
   mrcRefDegCoordinate dw;&lt;br /&gt;
   mrcRefDegCoordinate da;&lt;br /&gt;
   mrcRefDegCoordinate wp;&lt;br /&gt;
   mrcRefDegCoordinate ww;&lt;br /&gt;
   mrcRefDegCoordinate wa;&lt;br /&gt;
   int mode;&lt;br /&gt;
 } mrcRefCorHeader;&lt;br /&gt;
 &lt;br /&gt;
 typedef struct {&lt;br /&gt;
   mrcRefDegCoordinate ip;&lt;br /&gt;
   mrcRefDegCoordinate iw;&lt;br /&gt;
   mrcRefDegCoordinate ia;&lt;br /&gt;
   mrcRefDegCoordinate dp;&lt;br /&gt;
   mrcRefDegCoordinate dw;&lt;br /&gt;
   mrcRefDegCoordinate da;&lt;br /&gt;
   mrcRefDegCoordinate wp;&lt;br /&gt;
   mrcRefDegCoordinate ww;&lt;br /&gt;
   mrcRefDegCoordinate wa;&lt;br /&gt;
   double sy;&lt;br /&gt;
   double ey;&lt;br /&gt;
   double refsize;&lt;br /&gt;
   int inverse;&lt;br /&gt;
 } mrcpwzCorHeader;&lt;br /&gt;
&lt;br /&gt;
== API ==&lt;br /&gt;
 #define surplus(a,b) (((a)/(b) &amp;gt; 0)?((a)-floor((a)/(b))*(b) ):((a)-floor((a)/(b)+1)*(b)))&lt;br /&gt;
 #define NormalDegree(p) (((p) &amp;gt; 0)?( ( surplus( ( (p)+180 ) ,360 )) - 180 ):( (surplus(((p)-180),360)) +180 ))&lt;br /&gt;
&lt;br /&gt;
===General===&lt;br /&gt;
 void lRandShuffle(void);&lt;br /&gt;
&lt;br /&gt;
===mrcImage Operation===&lt;br /&gt;
 double lmrcImageZ1Normalization(mrcImage* in ,int z);&lt;br /&gt;
 double lmrcImageNormalization(mrcImage* in ,int mode);&lt;br /&gt;
 void lmrcImageRectangleGet(mrcImage* out ,mrcImage* in ,int blx ,int bly ,int trx ,int try );&lt;br /&gt;
 void llmrcImageAdd(mrcImage* in1 ,mrcImage* in2);&lt;br /&gt;
 void llmrcImageSub(mrcImage*out ,mrcImage* in1 ,mrcImage* in2);&lt;br /&gt;
 void lmrcImageMultiplyingbyMrc(mrcImage* out ,mrcImage* in1 ,mrcImage* in2);&lt;br /&gt;
 void lmrcImageFTSetbyRArray(mrcImage* infft ,double** filterval ,int mode);&lt;br /&gt;
 double lmrcImageFTDataSetByRArray(double X ,double Y ,double Z ,double** filterval ,int mode);&lt;br /&gt;
 void lmrcImageMagnificationChange(mrcImage* out, mrcImage* in, double ratio);&lt;br /&gt;
 void lmrcImageCenterGet(mrcImage* out ,mrcImage* in ,int Nx ,int Ny ,int Nz ,float Cx ,float Cy ,float Cz ,int mode);&lt;br /&gt;
 void lmrcImageMultiplysingbyFile(mrcImage* in1 ,mrcImage* in2);&lt;br /&gt;
&lt;br /&gt;
===mrcImage Statics===&lt;br /&gt;
 double lmrcImageStandardDeviation(mrcImage* in);&lt;br /&gt;
&lt;br /&gt;
===Projection===&lt;br /&gt;
 void lmrcRefFilamentProjction(mrcImage* out, mrcImage* in, mrcRefDegCoordinate phi ,mrcRefDegCoordinate omega ,mrcRefDegCoordinate alpha ,int sizex ,int sizey );&lt;br /&gt;
 void lvec3mul(double* out ,double x ,double* in );&lt;br /&gt;
 void lvec3add(double* out ,double* in1 ,double* in2);&lt;br /&gt;
 void lvec3sub(double* out ,double* in1 ,double* in2);&lt;br /&gt;
 void lmrcPixelLiGet(mrcImage* mrc,&lt;br /&gt;
 		    mrcImageParaTypeReal x,&lt;br /&gt;
 		    mrcImageParaTypeReal y,&lt;br /&gt;
 		    mrcImageParaTypeReal z,&lt;br /&gt;
 		    double* data,&lt;br /&gt;
 		    mrcPixelDataType mode,&lt;br /&gt;
 		    mrcPixelDataHowToGet how);&lt;br /&gt;
 void lestimateradian(mrcRefDegCoordinate* lradian);&lt;br /&gt;
&lt;br /&gt;
===Reference file Operation===&lt;br /&gt;
 void lmrc3DZ1Clear(mrcImage* in ,int z);&lt;br /&gt;
 void lmrcRefHeaderSet(mrcImage* out ,mrcRefHeader* in);&lt;br /&gt;
 void lmrcRefHeaderGet(mrcRefHeader* out ,mrcImage* in);&lt;br /&gt;
 void lmrc3DZ1ImgPut(mrcImage* out ,mrcImage* in ,int z);&lt;br /&gt;
 void lmrc3DZ1ImgGet(mrcImage* out ,mrcImage* in ,int z); &lt;br /&gt;
 void lmrc3DZ1FtPut(mrcImage* out ,mrcImage* in ,int Z);&lt;br /&gt;
 void lmrc3DZ1FtGet(mrcImage* out ,mrcImage* in ,int Z);&lt;br /&gt;
 double lmrcRef2DImgCorrelation(mrcImage* in1 ,mrcImage* in2 );&lt;br /&gt;
 void lmrcRefNormalization(mrcImage* in);&lt;br /&gt;
 int lmrcRefGetzCordinate(mrcRefDegCoordinate phi ,mrcRefDegCoordinate omega ,mrcRefDegCoordinate alpha ,mrcRefHeader* header);&lt;br /&gt;
 void lmrcRefGetdegreeCoordinate(mrcRefDegCoordinate* phi ,mrcRefDegCoordinate* omega ,mrcRefDegCoordinate* alpha ,int z ,mrcRefHeader* header);&lt;br /&gt;
&lt;br /&gt;
===Reference statics===&lt;br /&gt;
 double lmrcRefSqrAverageZ1(mrcImage* in ,int z);&lt;br /&gt;
 double lmrcRefSqrAverage(mrcImage* in);&lt;br /&gt;
 double lmrcRefStandardDeviation(mrcImage* in);&lt;br /&gt;
 double lmrcRefVariationZ1(mrcImage* in ,int z);&lt;br /&gt;
&lt;br /&gt;
===Reference Correlation File Operation===&lt;br /&gt;
 void lmrcRefCorHeaderSet(mrcImage* out ,mrcRefCorHeader* in);&lt;br /&gt;
 void lmrcRefCorHeaderGet(mrcRefCorHeader* out ,mrcImage* in);&lt;br /&gt;
 double lmrcRefCorrelationGet(mrcImage* in ,mrcRefDegCoordinate p1 ,mrcRefDegCoordinate w1 ,mrcRefDegCoordinate a1 ,mrcRefDegCoordinate p2 ,mrcRefDegCoordinate w2 ,mrcRefDegCoordinate a2 ,mrcRefCorHeader* header);&lt;br /&gt;
 int lmrcRefCorrelationGetCordinate(mrcRefDegCoordinate phi ,mrcRefDegCoordinate omega ,mrcRefDegCoordinate alpha ,mrcRefCorHeader* header );&lt;br /&gt;
 void lmrcRefCorrelationGetRefxCordinate(mrcRefDegCoordinate* phi ,mrcRefDegCoordinate* omega ,mrcRefDegCoordinate* alpha ,int x ,mrcImage* in ,mrcRefCorHeader* header);&lt;br /&gt;
 void lmrcRefCorrelationGetRefyCordinate(mrcRefDegCoordinate* phi ,mrcRefDegCoordinate* omega ,mrcRefDegCoordinate* alpha ,int y ,mrcImage* in ,mrcRefCorHeader* header);&lt;br /&gt;
&lt;br /&gt;
===pwz correlation file operation===&lt;br /&gt;
 void lmrcpwzCorHeaderSet(mrcImage* out ,mrcpwzCorHeader* in);&lt;br /&gt;
 void lmrcpwzCorHeaderGet(mrcpwzCorHeader* out ,mrcImage* in);&lt;br /&gt;
&lt;br /&gt;
===lmrcImageROInotChangeHeaderLength===&lt;br /&gt;
&lt;br /&gt;
 extern double lbilinearInterpolation(double* image,&lt;br /&gt;
                        unsigned long nx, unsigned long ny,&lt;br /&gt;
                        double x, double y);&lt;br /&gt;
&lt;br /&gt;
 extern double lcubicConvolutionInterpolation(double* image, &lt;br /&gt;
                                 unsigned long nx, unsigned long ny, &lt;br /&gt;
                                 double x, double y);&lt;br /&gt;
 extern double lpolyNominalInterpolation(double* image, &lt;br /&gt;
                                 unsigned long nx, unsigned long ny, &lt;br /&gt;
                                 double x, double y);&lt;br /&gt;
 extern void lpolyInitMatrix(double matrix[6][6], int m, int n);&lt;br /&gt;
 extern void lpolyInitVector(double vec[6], int m, int n, double* image, int nx, int ny);&lt;br /&gt;
 extern int lpolySolveMatrix(double matrix[6][6], double vec[6], double coefficient[6]);&lt;br /&gt;
&lt;br /&gt;
===mrcImageUtilityforVariance===&lt;br /&gt;
 void lmrcImageFilteringbyFileForVariance(mrcImage* out ,mrcImage* in ,double** filterval ,int mode);&lt;br /&gt;
&lt;br /&gt;
===lmrcImageCorrelationinSpace===&lt;br /&gt;
 double lmrcImageCorrelationinSpace(mrcImage* in,mrcImage* ref,int mode);&lt;/div&gt;</summary>
		<author><name>Kinoshita</name></author>	</entry>

	</feed>