OSDN Git Service

modified: src/Tools/rec3d/mrcImageOrientationSearch/src/mrcImageOrientationSearch.c v2.0.13.p013
authorTakuo Yasunaga <yasunaga@bio.kyutech.ac.jp>
Tue, 13 May 2014 05:14:43 +0000 (14:14 +0900)
committerTakuo Yasunaga <yasunaga@bio.kyutech.ac.jp>
Tue, 13 May 2014 05:14:43 +0000 (14:14 +0900)
hostdepend/X86LINUX64/bin/X86LINUX64/mrcImageOrientationSearch
hostdepend/X86LINUX64/src/Tools/rec3d/mrcImageOrientationSearch/src/X86LINUX64/.Depend
hostdepend/X86LINUX64/src/Tools/rec3d/mrcImageOrientationSearch/src/X86LINUX64/mrcImageOrientationSearch
src/Tools/rec3d/mrcImageOrientationSearch/src/mrcImageOrientationSearch.c

index ac427eb..25061c3 100755 (executable)
Binary files a/hostdepend/X86LINUX64/bin/X86LINUX64/mrcImageOrientationSearch and b/hostdepend/X86LINUX64/bin/X86LINUX64/mrcImageOrientationSearch differ
index cc8e9f1..83741d2 100644 (file)
@@ -1,14 +1,15 @@
 argCheck.o: argCheck.c /usr/include/stdio.h /usr/include/features.h \
  /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
  /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include/stddef.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
  /usr/include/bits/types.h /usr/include/bits/typesizes.h \
  /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include/stdarg.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
  /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
- /usr/include/stdlib.h /usr/include/sys/types.h /usr/include/time.h \
- /usr/include/endian.h /usr/include/bits/endian.h \
- /usr/include/bits/byteswap.h /usr/include/sys/select.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/bits/byteswap.h \
+ /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
  /usr/include/bits/select.h /usr/include/bits/sigset.h \
  /usr/include/bits/time.h /usr/include/sys/sysmacros.h \
  /usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
@@ -19,26 +20,27 @@ argCheck.o: argCheck.c /usr/include/stdio.h /usr/include/features.h \
  /usr/include/bits/mathcalls.h ../inc/config.h \
  ../inc/../inc/mrcImageOrientationSearch.h \
  /home/people/tacyas/Eos/include/genUtil.h /usr/include/values.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include-fixed/limits.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include-fixed/syslimits.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/limits.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/syslimits.h \
  /usr/include/limits.h /usr/include/bits/posix1_lim.h \
  /usr/include/bits/local_lim.h /usr/include/linux/limits.h \
  /usr/include/bits/posix2_lim.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include/float.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/float.h \
  /home/people/tacyas/Eos/include/String.h \
  /home/people/tacyas/Eos/include/File.h \
  /home/people/tacyas/Eos/include/Memory.h
 init.o: init.c /usr/include/stdio.h /usr/include/features.h \
  /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
  /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include/stddef.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
  /usr/include/bits/types.h /usr/include/bits/typesizes.h \
  /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include/stdarg.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
  /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
- /usr/include/stdlib.h /usr/include/sys/types.h /usr/include/time.h \
- /usr/include/endian.h /usr/include/bits/endian.h \
- /usr/include/bits/byteswap.h /usr/include/sys/select.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/bits/byteswap.h \
+ /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
  /usr/include/bits/select.h /usr/include/bits/sigset.h \
  /usr/include/bits/time.h /usr/include/sys/sysmacros.h \
  /usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
@@ -49,12 +51,12 @@ init.o: init.c /usr/include/stdio.h /usr/include/features.h \
  /usr/include/bits/mathcalls.h ../inc/config.h \
  ../inc/../inc/mrcImageOrientationSearch.h \
  /home/people/tacyas/Eos/include/genUtil.h /usr/include/values.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include-fixed/limits.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include-fixed/syslimits.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/limits.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/syslimits.h \
  /usr/include/limits.h /usr/include/bits/posix1_lim.h \
  /usr/include/bits/local_lim.h /usr/include/linux/limits.h \
  /usr/include/bits/posix2_lim.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include/float.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/float.h \
  /home/people/tacyas/Eos/include/String.h \
  /home/people/tacyas/Eos/include/File.h \
  /home/people/tacyas/Eos/include/Memory.h
@@ -62,14 +64,15 @@ mrcImageOrientationSearch.o: mrcImageOrientationSearch.c \
  /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \
  /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
  /usr/include/gnu/stubs-64.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include/stddef.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
  /usr/include/bits/types.h /usr/include/bits/typesizes.h \
  /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include/stdarg.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
  /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
- /usr/include/stdlib.h /usr/include/sys/types.h /usr/include/time.h \
- /usr/include/endian.h /usr/include/bits/endian.h \
- /usr/include/bits/byteswap.h /usr/include/sys/select.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/bits/byteswap.h \
+ /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
  /usr/include/bits/select.h /usr/include/bits/sigset.h \
  /usr/include/bits/time.h /usr/include/sys/sysmacros.h \
  /usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
@@ -80,12 +83,12 @@ mrcImageOrientationSearch.o: mrcImageOrientationSearch.c \
  /usr/include/bits/mathcalls.h ../inc/config.h \
  ../inc/../inc/mrcImageOrientationSearch.h \
  /home/people/tacyas/Eos/include/genUtil.h /usr/include/values.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include-fixed/limits.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include-fixed/syslimits.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/limits.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/syslimits.h \
  /usr/include/limits.h /usr/include/bits/posix1_lim.h \
  /usr/include/bits/local_lim.h /usr/include/linux/limits.h \
  /usr/include/bits/posix2_lim.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include/float.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/float.h \
  /home/people/tacyas/Eos/include/mrcImage.h \
  /home/people/tacyas/Eos/include/genUtil.h \
  /home/people/tacyas/Eos/include/ctfInfo.h \
@@ -98,14 +101,15 @@ mrcImageOrientationSearch.o: mrcImageOrientationSearch.c \
 usage.o: usage.c /usr/include/stdio.h /usr/include/features.h \
  /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
  /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include/stddef.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
  /usr/include/bits/types.h /usr/include/bits/typesizes.h \
  /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include/stdarg.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
  /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
- /usr/include/stdlib.h /usr/include/sys/types.h /usr/include/time.h \
- /usr/include/endian.h /usr/include/bits/endian.h \
- /usr/include/bits/byteswap.h /usr/include/sys/select.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/bits/byteswap.h \
+ /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
  /usr/include/bits/select.h /usr/include/bits/sigset.h \
  /usr/include/bits/time.h /usr/include/sys/sysmacros.h \
  /usr/include/bits/pthreadtypes.h /usr/include/alloca.h ../inc/config.h \
@@ -113,14 +117,15 @@ usage.o: usage.c /usr/include/stdio.h /usr/include/features.h \
 util.o: util.c /usr/include/stdio.h /usr/include/features.h \
  /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \
  /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include/stddef.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stddef.h \
  /usr/include/bits/types.h /usr/include/bits/typesizes.h \
  /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
- /usr/lib64/gcc/x86_64-suse-linux/4.4/include/stdarg.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/stdarg.h \
  /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
- /usr/include/stdlib.h /usr/include/sys/types.h /usr/include/time.h \
- /usr/include/endian.h /usr/include/bits/endian.h \
- /usr/include/bits/byteswap.h /usr/include/sys/select.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/bits/byteswap.h \
+ /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
  /usr/include/bits/select.h /usr/include/bits/sigset.h \
  /usr/include/bits/time.h /usr/include/sys/sysmacros.h \
  /usr/include/bits/pthreadtypes.h /usr/include/alloca.h ../inc/config.h \
index ac427eb..25061c3 100755 (executable)
Binary files a/hostdepend/X86LINUX64/src/Tools/rec3d/mrcImageOrientationSearch/src/X86LINUX64/mrcImageOrientationSearch and b/hostdepend/X86LINUX64/src/Tools/rec3d/mrcImageOrientationSearch/src/X86LINUX64/mrcImageOrientationSearch differ
index e508605..0c261d8 100755 (executable)
@@ -38,7 +38,7 @@ typedef struct EulerAngleInfo {
        char*  filename;
        int    flag;
        /* DEGREE */
-       double sheeter;
+       double theta;
        double phi;
        double psi;
 } EulerAngleInfo;
@@ -72,6 +72,9 @@ __FileListRead(lmrcImageOrientationSearchInfo* linfo, FILE* fpt, int mode);
 void
 lmrcImageOrientationSearch(lmrcImageOrientationSearchInfo* linfo, int mode);
 
+int
+lmrcImageOrientationSearchOut(FILE* fpt, lmrcImageOrientationSearchInfo* linfo, int mode);
+
 void
 lEulerAngleCalculationFromThreeCommonLinePosition(lmrcImageOrientationSearchInfo* linfo, int number, int* flag, int mode);
 
@@ -130,10 +133,12 @@ main(int argc, char* argv[])
        
        /* determine Euler angle */
        lmrcImageOrientationSearch(&linfo, info.mode);
-       
+
+       /* Output */
+       lmrcImageOrientationSearchOut(info.fptOut, &linfo, info.mode);
        DEBUGPRINT("Program End\n");
 
-       exit(EXIT_SUCCESS);
+       return EXIT_SUCCESS;
 }
 
 void
@@ -245,6 +250,40 @@ __FileListRead(lmrcImageOrientationSearchInfo* linfo, FILE* fpt, int mode)
        free(s);
 }
 
+
+int
+lmrcImageOrientationSearchOut(FILE* fpt, lmrcImageOrientationSearchInfo* linfo, int mode)
+{
+       int i, j;
+       int flag;
+
+       flag = 1;
+       i    = 2;
+
+       switch(mode){
+               case 0 :{
+                       for(i=0; i<2; i++){
+                       for(j=0; j<linfo->filenum; j++){
+                               if(linfo->angle[i][j].flag == 0){
+                                       fprintf(fpt, "%s %s %f %f %f\n", linfo->angle[i][j].filename, linfo->rotationalMode, 
+                                                linfo->angle[i][j].psi, linfo->angle[i][j].theta, linfo->angle[i][j].phi);
+                               }
+                       }
+                       }
+                       break;
+               }
+               case 1 :{
+                       break;
+               }
+               case 2 :{
+                       break;
+               }
+               default: {
+                       break;
+               }
+       }
+}
+
 void
 lmrcImageOrientationSearch(lmrcImageOrientationSearchInfo* linfo, int mode)
 {
@@ -259,18 +298,18 @@ lmrcImageOrientationSearch(lmrcImageOrientationSearchInfo* linfo, int mode)
                                lEulerAngleCalculationFromThreeCommonLinePosition(linfo, i, &flag, 0);
                                i++;
                        }
-DEBUGPRINT("\n");                      
-for(i=0; i<2; i++){
-for(j=0; j<linfo->filenum; j++){
-       if(linfo->angle[i][j].flag == 0){
-               DEBUGPRINT5("filename : %s >>> %s (%f, %f, %f)\n", linfo->angle[i][j].filename, linfo->rotationalMode, 
-                                                linfo->angle[i][j].psi, linfo->angle[i][j].sheeter, linfo->angle[i][j].phi);
-       }
-}
-DEBUGPRINT("\n");
-}
-DEBUGPRINT("program end\n");
-exit(1);
+                       DEBUGPRINT("\n");                       
+                       for(i=0; i<2; i++){
+                       for(j=0; j<linfo->filenum; j++){
+                               if(linfo->angle[i][j].flag == 0){
+                                       DEBUGPRINT5("filename : %s >>> %s (%f, %f, %f)\n", linfo->angle[i][j].filename, linfo->rotationalMode, 
+                                                linfo->angle[i][j].psi, linfo->angle[i][j].theta, linfo->angle[i][j].phi);
+                               }
+                       }
+                       DEBUGPRINT("\n");
+                       }
+                       //DEBUGPRINT("program end\n");
+                       //exit(1);
                        for(j=i; j<linfo->Correlationfilenum; j++){
                                lEulerAngleCalculationFromAdditionlCommonLinePosition(linfo, j, 0);
                        }
@@ -327,7 +366,7 @@ lEulerAngleCalculationFromThreeCommonLinePosition(lmrcImageOrientationSearchInfo
        for(i=0; i<6; i++){
                cosine[i] = cos(angle[i]);
                sine[i]   = sin(angle[i]);
-DEBUGPRINT4("angle[%d] = %f >> cosine = %f sine = %f\n", i, angle[i], cosine[i], sine[i]);     
+               DEBUGPRINT4("angle[%d] = %f >> cosine = %f sine = %f\n", i, angle[i], cosine[i], sine[i]);      
        }
 
        cosineXr1 = 0;
@@ -340,11 +379,11 @@ DEBUGPRINT4("angle[%d] = %f >> cosine = %f sine = %f\n", i, angle[i], cosine[i],
                    +((cosine[2]*cosine[3]+sine[2]*sine[3])*(sine[0]*cosine[1]-cosine[0]*sine[1])))
                   /(cosine[4]*sine[5]-sine[4]*cosine[5]);
 
-DEBUGPRINT2("cosineXr1 = %f cosineXr2 = %f \n", cosineXr1, cosineXr2);
+       DEBUGPRINT2("cosineXr1 = %f cosineXr2 = %f \n", cosineXr1, cosineXr2);
 
        ratio = (cosine[4]*sine[5]-sine[4]*cosine[5])/(cosine[2]*sine[3]-sine[2]*cosine[3]);
 
-DEBUGPRINT1("ratio = %f \n", ratio);
+       DEBUGPRINT1("ratio = %f \n", ratio);
        
        Xrotation1 = MemoryAllocate(double, 2, "in lEulerAngleCalculationFromThreeCommonLinePosition");
        Xrotation2 = MemoryAllocate(double, 2, "in lEulerAngleCalculationFromThreeCommonLinePosition");
@@ -357,28 +396,28 @@ DEBUGPRINT1("ratio = %f \n", ratio);
                        Xrotation2[0] = 2*M_PI-Xrotation2[0];
                        Xrotation2[1] = Xrotation2[0];
                }
-DEBUGPRINT2("Xrotation1 = %f Xrotation2 = %f\n",Xrotation1[0], Xrotation2[0]);         
+               DEBUGPRINT2("Xrotation1 = %f Xrotation2 = %f\n",Xrotation1[0], Xrotation2[0]);          
                linfo->rotationalMode = MemoryAllocate(char, 5, "in lEulerAngleCalculationFromThreeCommonLinePosition");
                stringCopy(linfo->rotationalMode, "ZENR", 4); /* Z->X->Z rotation */
-               linfo->angle[0][0].sheeter = 0;
+               linfo->angle[0][0].theta   = 0;
                linfo->angle[0][0].phi     = 0;
                linfo->angle[0][0].psi     = 0;
-               linfo->angle[0][1].sheeter = linfo->position[wnum[0]].CommonLinePosition1[0];
+               linfo->angle[0][1].theta   = linfo->position[wnum[0]].CommonLinePosition1[0];
                linfo->angle[0][1].phi     = Xrotation1[0]*DEGREE;
                linfo->angle[0][1].psi     = linfo->position[wnum[0]].CommonLinePosition2[0];
-               linfo->angle[0][number].sheeter = linfo->position[wnum[1]].CommonLinePosition1[0];
-               linfo->angle[0][number].phi     = Xrotation2[0]*DEGREE;
-               linfo->angle[0][number].psi     = linfo->position[wnum[1]].CommonLinePosition2[0];
+               linfo->angle[0][number].theta = linfo->position[wnum[1]].CommonLinePosition1[0];
+               linfo->angle[0][number].phi   = Xrotation2[0]*DEGREE;
+               linfo->angle[0][number].psi   = linfo->position[wnum[1]].CommonLinePosition2[0];
        
-               linfo->angle[1][0].sheeter = 0;
+               linfo->angle[1][0].theta   = 0;
                linfo->angle[1][0].phi     = 0;
                linfo->angle[1][0].psi     = 0;
-               linfo->angle[1][1].sheeter = linfo->position[wnum[0]].CommonLinePosition1[0];
+               linfo->angle[1][1].theta   = linfo->position[wnum[0]].CommonLinePosition1[0];
                linfo->angle[1][1].phi     = Xrotation1[1]*DEGREE;
                linfo->angle[1][1].psi     = linfo->position[wnum[0]].CommonLinePosition2[0];
-               linfo->angle[1][number].sheeter = linfo->position[wnum[1]].CommonLinePosition1[0];
-               linfo->angle[1][number].phi     = Xrotation2[1]*DEGREE;
-               linfo->angle[1][number].psi     = linfo->position[wnum[1]].CommonLinePosition2[0];
+               linfo->angle[1][number].theta = linfo->position[wnum[1]].CommonLinePosition1[0];
+               linfo->angle[1][number].phi   = Xrotation2[1]*DEGREE;
+               linfo->angle[1][number].psi   = linfo->position[wnum[1]].CommonLinePosition2[0];
                
                /* angle is determined */
                *flag = 0;
@@ -388,8 +427,7 @@ DEBUGPRINT2("Xrotation1 = %f Xrotation2 = %f\n",Xrotation1[0], Xrotation2[0]);
                linfo->angle[1][0].flag = 0;
                linfo->angle[1][1].flag = 0;
                linfo->angle[1][number].flag = 0;
-       }
-       else{
+       } else {
                DEBUGPRINT3("Can't determine Euler Angle : %s %s %s\n", linfo->angle[0][0].filename, linfo->angle[0][1].filename, 
                                                                       linfo->angle[0][number].filename);
                /* angle is not determined */