###### Users may need to modify the below line.
# Set Eos Home Directory
-if [ -z $EOS_HOME0 ] ; then
+if [ -z "$EOS_HOME0" ] ; then
export EOS_HOME=$HOME/Eos
export EOS_MIRROR_SITE=$HOME/EosMirror
export EOS_GITUSER=$USER
# For ManyCPU/PHI
MIC=`uname -p | grep "k1om"`
-if [ ! -z "$MIC" ]
-then
+if [ ! -z "$MIC" ] ; then
HOSTTYPE=`uname -m | grep "k1om"`
fi
-if [ "$HOSTTYPE" = "i486" ]
-then
- if [ -z "$P4" ]
- then
+if [ "$HOSTTYPE" = "i486" ] ; then
+ if [ -z "$P4" ] ; then
P4=`egrep 'Intel\(R\)' /proc/cpuinfo | awk '{aaa=4;print $aaa;exit}'`
fi
GCCVER=`gcc -v 2>&1 | egrep '^Target' | awk '{aaa=2;print $aaa;exit}' | sed 's/-[a-zA-Z]\+//g'`
- if [ "$GCCVER" == "i486" ]
- then
+ if [ "$GCCVER" == "i486" ] ; then
export HOSTTYPE="i386"
fi
fi
# Set Eos host type
case $HOSTTYPE in
"alpha")
- if [ $OSTYPE = "Linux" ]
- then
+ if [ $OSTYPE = "Linux" ] ; then
case $HOSTNAME in
jerico)
export EOS_HOST=alphaLinux
;;
esac
else
- if [ $OSTYPE = "OSF1" ]
- then
+ if [ $OSTYPE = "OSF1" ] ; then
export EOS_HOST=alphaOSF1
export EOS_HOSTDIR=ALPHAOSF1
fi
;;
"i386")
echo $P4
- if [ -z "$P4" ]
- then
- if [ ! -z "$MAC" ]
- then
+ if [ -z "$P4" ] ; then
+ if [ ! -z "$MAC" ] ; then
export EOS_HOST=i386Mac
export EOS_HOSTDIR=I386MAC
- elif [ ! -z "$LINUX" ]
- then
+ elif [ ! -z "$LINUX" ] ; then
export EOS_HOST=i386Linux
export EOS_HOSTDIR=I386LINUX
fi
fi
;;
"i686")
- if [ -z "$P4" ] ;
- then
- if [ -z "$CYGWIN" ]
- then
+ if [ -z "$P4" ] ; then
+ if [ -z "$CYGWIN" ] ; then
export EOS_HOST=i386Linux
export EOS_HOSTDIR=I386LINUX
else
fi
;;
"i586")
- if [ -z "$P4" ] ;
- then
+ if [ -z "$P4" ] ; then
export EOS_HOST=i386Linux
export EOS_HOSTDIR=I386LINUX
else
fi
;;
"i486")
- if [ -z "$P4" ] ;
- then
+ if [ -z "$P4" ] ; then
export EOS_HOST=i386Linux
export EOS_HOSTDIR=I386LINUX
else
;;
"x86_64")
echo $P4
- if [ -z "$P4" ]
- then
- if [ ! -z "$MAC" ]
- then
+ if [ -z "$P4" ] ; then
+ if [ ! -z "$MAC" ] ; then
major=`sw_vers | awk '/ProductVersion/ { split($2, a, "."); print a[1] }'`
minor=`sw_vers | awk '/ProductVersion/ { split($2, a, "."); print a[2] }'`
echo $major,$minor
- if [ $major -eq 10 -a $minor -lt 9 ] ;
- then
+ if [ $major -eq 10 -a $minor -lt 9 ] ; then
export EOS_HOST=x86Mac64_8
export EOS_HOSTDIR=X86MAC64_8
else
export EOS_HOSTDIR=SPARC
;;
"powerpc")
- if [ -z "$CELL" ] ;
- then
+ if [ -z "$CELL" ] ; then
if [ -z "$MAC" ]; then
export EOS_HOST=ppc64Linux
export EOS_HOSTDIR=PPC64LINUX
CK_EOS_HOME_BIN=$(echo $PATH | grep $EOS_HOME_BIN)
CK_EOS_HOME_SBIN=$(echo $PATH | grep $EOS_HOME_SBIN)
CK_EOS_HOSTDIR_BIN=$(echo $PATH | grep $EOS_HOSTDIR_BIN)
-if [ -z "$CK_EOS_HOSTDIR_BIN" -a -d $EOS_HOSTDIR_BIN ];then
+if [ -z "$CK_EOS_HOSTDIR_BIN" -a -d $EOS_HOSTDIR_BIN ] ; then
export PATH=$EOS_HOSTDIR_BIN:$PATH
fi
-if [ -z "$CK_EOS_HOME_SBIN" -a -d $EOS_HOME_SBIN ];then
+if [ -z "$CK_EOS_HOME_SBIN" -a -d $EOS_HOME_SBIN ] ; then
export PATH=$EOS_HOME_SBIN:$PATH
fi
-if [ -z "$CK_EOS_HOME_BIN" -a -d $EOS_HOME_BIN ];then
+if [ -z "$CK_EOS_HOME_BIN" -a -d $EOS_HOME_BIN ] ; then
export PATH=$EOS_HOME_BIN:$PATH
fi
export XPVM_ROOT=$EOS_HOME/util/srcAny/pvm3/xpvm
export PVM_RSH=/usr/bin/ssh
if [ -d $PVM_ROOT ]; then
- if [ -x $PVM_ROOT/lib/pvmgetarch ] ;
- then
+ if [ -x $PVM_ROOT/lib/pvmgetarch ] ; then
export PVM_ARCH=`$PVM_ROOT/lib/pvmgetarch`
fi
fi
export PVM_PATH=$PATH
-if [ -d $PVM_ROOT ]; then
+if [ -d $PVM_ROOT ] ; then
export PVM_MAN=$PVM_ROOT/man
fi
export MANPATH=$MANPATH:$PVM_MAN
fi
PVM_ROOT_BIN=$PVM_ROOT/bin
CK_PVM_ROOT_BIN=$(echo $PATH | grep $PVM_ROOT_BIN)
-if [ -z "$CK_PVM_ROOT_BIN" -a -d $PVM_ROOT_BIN ]; then
+if [ -z "$CK_PVM_ROOT_BIN" -a -d $PVM_ROOT_BIN ] ; then
export PATH=$PATH:$PVM_ROOT_BIN
fi
##### LD_LIBRARY_PATH ######
### Intel Complier
-if [ -d /opt/intel/compiler70/ia32/lib ]; then
- if [ ! -z "$LD_LIBRARY_PATH" ]; then
+if [ -d /opt/intel/compiler70/ia32/lib ] ; then
+ if [ ! -z "$LD_LIBRARY_PATH" ] ; then
export LD_LIBRARY_PATH=/opt/intel/compiler70/ia32/lib:$LD_LIBRARY_PATH
else
export LD_LIBRARY_PATH=/opt/intel/compiler70/ia32/lib
fi
fi
### Eos
-if [ -d $EOS_HOME/util/$EOS_HOSTDIR/lib ]; then
- if [ ! -z "$LD_LIBRARY_PATH" ]; then
+if [ -d $EOS_HOME/util/$EOS_HOSTDIR/lib ] ; then
+ if [ ! -z "$LD_LIBRARY_PATH" ] ; then
export LD_LIBRARY_PATH=$EOS_HOME/util/$EOS_HOSTDIR/lib:$LD_LIBRARY_PATH
else
export LD_LIBRARY_PATH=$EOS_HOME/util/$EOS_HOSTDIR/lib
fi
fi
### Vtk
-if [ -d $EOS_HOME/util/$EOS_HOSTDIR/lib/vtk ]; then
- if [ ! -z "$LD_LIBRARY_PATH" ]; then
+if [ -d $EOS_HOME/util/$EOS_HOSTDIR/lib/vtk ] ; then
+ if [ ! -z "$LD_LIBRARY_PATH" ] ; then
export LD_LIBRARY_PATH=$EOS_HOME/util/$EOS_HOSTDIR/lib/vtk:$LD_LIBRARY_PATH
else
export LD_LIBRARY_PATH=$EOS_HOME/util/$EOS_HOSTDIR/lib/vtk
fi
fi
### Eos util
-if [ -d $EOS_HOME/hostdepend/$EOS_HOSTDIR/util/$EOS_HOSTDIR/lib ]; then
- if [ ! -z "$LD_LIBRARY_PATH" ]; then
+if [ -d $EOS_HOME/hostdepend/$EOS_HOSTDIR/util/$EOS_HOSTDIR/lib ] ; then
+ if [ ! -z "$LD_LIBRARY_PATH" ] ; then
export LD_LIBRARY_PATH=$EOS_HOME/hostdepend/$EOS_HOSTDIR/util/$EOS_HOSTDIR/lib:$LD_LIBRARY_PATH
else
export LD_LIBRARY_PATH=$EOS_HOME/hostdepend/$EOS_HOSTDIR/util/$EOS_HOSTDIR/lib
fi
fi
### Vtk
-if [ -d $EOS_HOME/hostdepend/$EOS_HOSTDIR/util/$EOS_HOSTDIR/lib/vtk ]; then
- if [ ! -z "$LD_LIBRARY_PATH" ]; then
+if [ -d $EOS_HOME/hostdepend/$EOS_HOSTDIR/util/$EOS_HOSTDIR/lib/vtk ] ; then
+ if [ ! -z "$LD_LIBRARY_PATH" ] ; then
export LD_LIBRARY_PATH=$EOS_HOME/hostdepend/$EOS_HOSTDIR/util/$EOS_HOSTDIR/lib/vtk:$LD_LIBRARY_PATH
else
export LD_LIBRARY_PATH=$EOS_HOME/hostdepend/$EOS_HOSTDIR/util/$EOS_HOSTDIR/lib/vtk
#echo ".Eos_env(1):$LD_LIBRARY_PATH"
##### CUDA #####
-if [ -z "$CUDA_ROOT" ];
-then
+if [ -z "$CUDA_ROOT" ] ; then
CUDA_ROOT=$EOS_HOME/util/$EOS_HOSTDIR/cuda
- if [ -d "$CUDA_ROOT" ] ;
- then
+ if [ -d "$CUDA_ROOT" ] ; then
export CUDA_ROOT
export PATH=$CUDA_ROOT/cudaprof/bin:$CUDA_ROOT/bin:$PATH
- if [ ! -z "$LD_LIBRARY_PATH" ]; then
+ if [ ! -z "$LD_LIBRARY_PATH" ] ; then
export LD_LIBRARY_PATH=$CUDA_ROOT/lib$CUDA_LIB_64:$CUDA_ROOT/lib:$LD_LIBRARY_PATH
else
export LD_LIBRARY_PATH=$CUDA_ROOT/lib$CUDA_LIB_64:$CUDA_ROOT/lib
then
CUDA_OPTS="-UCUDA"
export CUDA_OPTS
-elif [ -d "$CUDA_ROOT" ] ;
-then
+elif [ -d "$CUDA_ROOT" ] ; then
CUDA_OPTS="-DCUDA"
else
echo "NO Directory for CUDA"
#
# ATI Stream SDK
#
-if [ -z "$ATISTREAMROOT" ];
-then
+if [ -z "$ATISTREAMROOT" ] ; then
ATISTREAMROOT=$EOS_HOME/util/$EOS_HOSTDIR/ati-stream-sdk/
if [ -d "$ATISTREAMROOT" ];
then
# IFS=$OIFS
# echo "()k=$k"
# echo "v=$v"
- if [ -z "$k" ];
- then
+ if [ -z "$k" ]; then
if [ -d "$ATISTREAMROOT" ];
then
export ATISTREAMROOT
#
# libgfortran
#
-if [ -z "$LD_LIBGFORTRAN" ];
-then
+if [ -z "$LD_LIBGFORTRAN" ] ; then
LIBGFORTRANSETUPDIR=$HOME/.gfortran/x86_64/suse
LIBGFORTRANSETUPFILE=( $LIBGFORTRANSETUPDIR/setlibfortranpath.sh )
if [ -d "$LIBGFORTRANSETUPDIR" -a -f "$LIBGFORTRANSETUPFILE" ];
export LD_LIBGFORTRANS=( $( $LIBGFORTRANSETUPFILE ) )
for LD_LIBGFORTRAN in ${LD_LIBGFORTRANS[@]}
do
- if [ ! -z "$LD_LIBRARY_PATH" ]; then
+ if [ ! -z "$LD_LIBRARY_PATH" ] ; then
export LD_LIBRARY_PATH=$LD_LIBGFORTRAN:$LD_LIBRARY_PATH
else
export LD_LIBRARY_PATH=$LD_LIBGFORTRAN
# IFS=$OIFS
# echo "()k=$k"
# echo "v=$v"
- if [ -z "$k" ];
- then
+ if [ -z "$k" ] ; then
if [ ! -z "$LD_LIBRARY_PATH" ]; then
export LD_LIBRARY_PATH=$LD_LIBGFORTRAN:$LD_LIBRARY_PATH
else
extern void _lmrcImageModelCreateMode5(mrcImage* out);
extern void _lmrcImageModelCreateSheppLogan2D(mrcImage* out); // Mode: 6
extern void _lmrcImageModelCreateSheppLogan3D(mrcImage* out); // Mode: 7
+extern void _lmrcImageModelCreateCylinder(mrcImage* out, mrcImageParaTypeReal radius, mrcImageParaTypeReal length); // Mode: 8
/* prototype end */
#endif
<H2>Information from source codes</H2>
</A>
<PRE>
-../src/fftn.c:
-
-../src/lmrcFETnormalizeBySD.c:
-
-../src/lmrcFFTExpression.c:
-
-../src/lmrcFFTFGconj.c:
-
-../src/lmrcFFTFxG.c:
-
-../src/lmrcFFTInfo.c:
-
-../src/lmrcImage3DPad.c:
-
-../src/lmrcImage3DWindowing.c:
-
-../src/lmrcImageAddValue.c:
-
-../src/lmrcImageAsProbability.c:
-
-../src/lmrcImageAverage.c:
-
-../src/lmrcImageBandPassFilter.c:
-
-../src/lmrcImageBilateralFilter.c:
-
-../src/lmrcImageBinarization.c:
-
-../src/lmrcImageBottomHatTransform.c:
-
-../src/lmrcImageBoundaryInfo.c:
-
-../src/lmrcImageCTFCompensation.c:
-
-../src/lmrcImageCTFDetermination.c:
-
-../src/lmrcImageCTFObservation.c:
-
-../src/lmrcImageCTFSN.c:
-
-../src/lmrcImageCVE.c:
-
-../src/lmrcImageCalcArea.c:
-
-../src/lmrcImageCenterGet.c:
-
-../src/lmrcImageCentre.c:
-
-../src/lmrcImageClosing.c:
-
-../src/lmrcImageClusterAnalysis.c:
-
-../src/lmrcImageCommonLine.c:
-
-../src/lmrcImageConnection.c:
-
-../src/lmrcImageConnectivityNumberCalc.c:
-
-../src/lmrcImageContourSurface.c:
-
-../src/lmrcImageContraction.c:
-
-../src/lmrcImageCorrelation.c:
- $lmrcImageEuclidDistanceCalc: Calculate Euclid distance between two images $
- $arg: in1: input mrcImage1 $
- $arg: in2: input mrcImage2 $
- $arg: mode: input int $
- $mode: 0 Sum of SQR $
- $mode: 1 Distance $
- $return: EuclidDistance $
-
-../src/lmrcImageCorrelationPVM.c:
-
-../src/lmrcImageCorrelationWithCTFCompensation.c:
-
-../src/lmrcImageCorrelationinSpace.c:
-
-../src/lmrcImageCrystalCreate.c:
-
-../src/lmrcImageDataMaxAndMinGetByImage.c:
-
-../src/lmrcImageDataStraightCopy.c:
-
-../src/lmrcImageDeconvolution.c:
-
-../src/lmrcImageDensity.c:
-
-../src/lmrcImageDensityInverse.c:
-
-../src/lmrcImageDensityNormalizationByImage.c:
-
-../src/lmrcImageDifferential.c:
-
-../src/lmrcImageDilation.c:
-
-../src/lmrcImageDistanceConversion.c:
-
-../src/lmrcImageEdge.c:
-
-../src/lmrcImageEdgeAverage.c:
-
-../src/lmrcImageEdgeEnhancement.c:
-
-../src/lmrcImageErosion.c:
-
-../src/lmrcImageFFT.c:
-
-../src/lmrcImageFOMCalc.c:
-
-../src/lmrcImageFeatureExtraction.c:
-
-../src/lmrcImageFeatureExtractionCoOccurrence.c:
-
-../src/lmrcImageFeatureExtractionRunLength.c:
-
-../src/lmrcImageFilterCreate.c:
-
-../src/lmrcImageFirstNoiseReductionByRelaxation.c:
-
-../src/lmrcImageFloating.c:
-
-../src/lmrcImageFourierNeighborCorrelation.c:
-
-../src/lmrcImageFourierPowerSpectrum.c:
-
-../src/lmrcImageFourierShellCorrelation.c:
-
-../src/lmrcImageHighPassFilter.c:
-
-../src/lmrcImageHighlighting.c:
-
-../src/lmrcImageHoughTransform.c:
-
-../src/lmrcImageLabeling.c:
-
-../src/lmrcImageLogicalOperation.c:
-
-../src/lmrcImageLowPassFilter.c:
-
-../src/lmrcImageMasking.c:
-
-../src/lmrcImageMaxDataGet.c:
-
-../src/lmrcImageMirroring.c:
- $lmrcImageMirroring: (mrcImage* out, mrcImage* in, lmrcImageMirroring mode) $
-
-../src/lmrcImageModeChange.c:
-
-../src/lmrcImageModelCreate.c:
-
-../src/lmrcImageMontageCreate.c:
-
-../src/lmrcImageMorphology.c:
-
-../src/lmrcImageMove.c:
-
-../src/lmrcImageMultiCTFCompensation.c:
-
-../src/lmrcImageMultiplying.c:
-
-../src/lmrcImageNegativeLaplacian.c:
-
-../src/lmrcImageNoiseCreate.c:
-
-../src/lmrcImageNormalizing.c:
-
-../src/lmrcImageOneLineSimilarityCalc.c:
-
-../src/lmrcImageOpening.c:
-
-../src/lmrcImagePad.c:
-
-../src/lmrcImagePartImageSegmentation.c:
-
-../src/lmrcImagePixelSummationOfProbabilityGetByImage.c:
-
-../src/lmrcImagePosterization.c:
-
-../src/lmrcImagePrewitt.c:
-
-../src/lmrcImageProjection.c:
-
-../src/lmrcImageProportionalDensityLevelSetByImage.c:
-
-../src/lmrcImageROI2D.c:
-
-../src/lmrcImageROI3D.c:
-
-../src/lmrcImageROInotChangeHeaderLength.c:
-
-../src/lmrcImageRadialDistribution.c:
-
-../src/lmrcImageRhoFiltering.c:
-
-../src/lmrcImageRoberts.c:
-
-../src/lmrcImageRotation.c:
-
-../src/lmrcImageSSDA.c:
-
-../src/lmrcImageSamplingUnitChange.c:
-
-../src/lmrcImageSecondNoiseReductionByRelaxation.c:
-
-../src/lmrcImageSecondNoiseReductionByRelaxationDijDimensionSet.c:
-
-../src/lmrcImageSecondNoiseReductionByRelaxationDijValueCalculate.c:
-
-../src/lmrcImageSecondNoiseReductionByRelaxationDijValueSet.c:
-
-../src/lmrcImageSecondNoiseReductionByRelaxationQValueSet.c:
-
-../src/lmrcImageSecondNoiseReductionByRelaxationRValueSet.c:
-
-../src/lmrcImageShapePCA.c:
-
-../src/lmrcImageShift.c:
-
-../src/lmrcImageShrink.c:
-
-../src/lmrcImageSigmaCalculate.c:
-
-../src/lmrcImageSinogram.c:
-
-../src/lmrcImageSinogramCorrelation.c:
-
-../src/lmrcImageSinogramFFT.c:
-
-../src/lmrcImageSmoothing.c:
-
-../src/lmrcImageSobel.c:
-
-../src/lmrcImageSolventFlattening.c:
-
-../src/lmrcImageSpatialFrequencyFilter.c:
-
-../src/lmrcImageSphere.c:
-
-../src/lmrcImageSplit.c:
-
-../src/lmrcImageStack.c:
-
-../src/lmrcImageStudentCalculate.c:
-
-../src/lmrcImageSubtractionCalc.c:
-
-../src/lmrcImageSummationCalculate.c:
-
-../src/lmrcImageSymmetryFind.c:
-
-../src/lmrcImageTfunction.c:
-
-../src/lmrcImageToneReversal.c:
-
-../src/lmrcImageTopHatTransform.c:
-
-../src/lmrcImageTrans.c:
-
-../src/lmrcImageTransformDescartesIntoPolar.c:
-
-../src/lmrcImageTriming.c:
-
-../src/lmrcImageVolumeCalc.c:
-
-../src/lmrcImageWindowing.c:
-
-../src/lmrcImagesFTest.c:
-
-../src/lmrcImagesStatDataGet.c:
-
-../src/lmrcImagesTTest.c:
-
-../src/lmrcImagesVarianceAnalysis.c:
-
-../src/lmrcImagesVarianceMap.c:
-
-../src/lmrcSinogramFET.c:
-
-../src/lmrcSinogramFETPCA.c:
-
-../src/lmrcSinogramFETcalcWeight.c:
-
-../src/lmrcSinogramFETcorrelationMap.c:
-
-../src/lmrcSinogramFETnormalizedMap.c:
-
-../src/lmrcSinogramFETreferredCorrelation.c:
-
-../src/lmrcSinogramFETsmoothParameterMatching.c:
-
-../src/mrcImageCheckFFT.c:
-
-../src/mrcImageCheckSameSize.c:
-
-../src/mrcImageCopy.c:
-
-../src/mrcImageDataSet.c:
-
-../src/mrcImageError.c:
-
-../src/mrcImageGet.c:
-
-../src/mrcImageGetPixels.c:
-
-../src/mrcImageInfo.c:
-
-../src/mrcImageInit.c:
-
-../src/mrcImageOperation.c:
-
-../src/mrcImagePVM.c:
-
-../src/mrcImagePrint.c:
-
-../src/mrcImageRead.c:
-
-../src/mrcImageSectionGet.c:
-
-../src/mrcImageSectionSet.c:
-
-../src/mrcImageSet.c:
-
-../src/mrcImageTailer.c:
-
-../src/mrcImageToIntImage.c:
-
-../src/mrcImageUtil.c:
-
-../src/mrcImageUtilityforVariance.c:
-
-../src/mrcImageWrite.c:
-
-../src/mrcImageWrite2.c:
-
-../src/mrcImagefuncmin.c:
-
-../src/mrcRefUtil.c:
</PRE>
<HR>
<A NAME="include">
#include "lmrcImageModelCreate.h"
void
+_lmrcImageModelCreateCylinder(mrcImage* out, mrcImageParaTypeReal radius, mrcImageParaTypeReal length)
+{
+ mrcImageParaTypeReal x, y, z;
+ double data;
+ double radius2;
+ double length_2;
+ double x2;
+ double y2;
+ double z2;
+
+
+ radius2 = SQR(radius);
+ length_2 = length/2;
+ for(z=0; z<out->HeaderN.z; z++) {
+ z2 = fabs(z-out->HeaderN.z/2);
+ if(z2<=length_2) {
+ for(y=0; y<out->HeaderN.y; y++) {
+ y2 = SQR(y-out->HeaderN.y/2);
+ for(x=0; x<out->HeaderN.x; x++) {
+ x2 = SQR(x-out->HeaderN.x/2);
+ if(x2+y2<=radius2) {
+ mrcPixelDataSet(out, x, y, z, 1.0, mrcPixelRePart);
+ } else {
+ mrcPixelDataSet(out, x, y, z, 0.0, mrcPixelRePart);
+ }
+
+ }
+ }
+ }
+ }
+}
+
+void
_lmrcImageModelCreateMode0(mrcImage* out, mrcImageParaTypeReal radius)
{
mrcImageParaTypeReal x, y, z;
extern void _lmrcImageModelCreateMode5(mrcImage* out);
extern void _lmrcImageModelCreateSheppLogan2D(mrcImage* out); // Mode: 6
extern void _lmrcImageModelCreateSheppLogan3D(mrcImage* out); // Mode: 7
+extern void _lmrcImageModelCreateCylinder(mrcImage* out, mrcImageParaTypeReal radius, mrcImageParaTypeReal length); // Mode: 8
/* prototype end */
#endif
int
lmrcImageShapePCAResultsPrint(FILE* fpt, lmrcImageShapePCAInfo* linfo, int mode)
{
+ double sum;
+
fprintf(fpt, "# PCA Results");
fprintf(fpt, "Convariace Matrix: ");
arrayWriteToFile(fpt, &linfo->C, "lmrcImageShapePCAResultsPrint");
arrayWriteToFile(fpt, &linfo->Lambda, "lmrcImageShapePCAResultsPrint");
fprintf(fpt, "Average: ");
arrayWriteToFile(fpt, &linfo->Average, "lmrcImageShapePCAResultsPrint");
+ fprintf(fpt, "Normalized Lambda: 1st 2nd 3rd\n");
+ sum = arrayDataGet1(linfo->Lambda, 0);
+ sum += arrayDataGet1(linfo->Lambda, 1);
+ sum += arrayDataGet1(linfo->Lambda, 2);
+ fprintf(fpt, "%15.6f ", arrayDataGet1(linfo->Lambda, 0)/sum);
+ fprintf(fpt, "%15.6f ", arrayDataGet1(linfo->Lambda, 1)/sum);
+ fprintf(fpt, "%15.6f \n", arrayDataGet1(linfo->Lambda, 2)/sum);
}
WORLDNAME=Tools
WORLDNAME=Tools
WORLDNAME=Tools
+WORLDNAME=Tools
"-ny","-ny","Real length = ny * ly","Optional","1","1","ny","Integer","70"
"-nz","-nz","Real lenght = nz * lz","Optional","1","1","nz","Integer","100"
"-r","-r","Radius[pixel]","Optional","1","1","r","Integer","1"
+"-l","-l","Length[pixel]","Optional","1","1","l","Integer","1"
"-lx","-lx","Pixel Size[Angstrom]","Optional","1","1","lx","Real","5.0"
"-ly","-ly","Pixel Size[Angstrom]","Optional","1","1","ly","Real","5.0"
"-lz","-lz","Pixel Size[Angstrom]","Optional","1","1","lz","Real","5.0"
long flagr;
long r;
+ long flagl;
+ long l;
+
long flaglx;
float lx;
}
SBREAK;
}
+ SCASE("l") {
+ if(i+1<argc) {
+ info->l = stringGetNthIntegerData(argv[i+1], 1, " ,");
+ i++;
+ info->flagl++;
+ } else {
+ usage(argv[0]);
+ exit(EXIT_FAILURE);
+ }
+ SBREAK;
+ }
SCASE("lx") {
if(i+1<argc) {
info->lx = stringGetNthRealData(argv[i+1], 1, " ,");
info->ny = 70; info->flagny = 0;
info->nz = 100; info->flagnz = 0;
info->r = 1; info->flagr = 0;
+ info->l = 1; info->flagl = 0;
info->lx = 5.0; info->flaglx = 0;
info->ly = 5.0; info->flagly = 0;
info->lz = 5.0; info->flaglz = 0;
if(info->flagr) {
}
+ if(info->flagl) {
+ }
+
if(info->flaglx) {
}
_lmrcImageModelCreateSheppLogan3D(&out);
break;
}
+ case 8: {
+ _lmrcImageModelCreateCylinder(&out, info.r, info.l);
+ break;
+ }
default: {
fprintf(stderr, "Not supported\n");
}
void
additionalUsage()
{
+ fprintf(stderr, ">>>> \n");
+ fprintf(stderr, "-nx -ny -nz : image size[pixel]\n");
+ fprintf(stderr, "-lx -ly -lz : pixel/voxel size[Angstrom]\n");
fprintf(stderr, ">>>> Mode <<<< (-m)\n");
fprintf(stderr, "0: Circle(a right cylinder:3D) and Triangle(a trigonal prism:3D) \n");
fprintf(stderr, " Optional argument : -nx -ny -nz -r \n");
fprintf(stderr, " Optional argument : -nx -ny \n");
fprintf(stderr, "7: SheppLogan 3D \n");
fprintf(stderr, " Optional argument : -nx -ny -nz \n");
+ fprintf(stderr, "8: Cylinder 3D \n");
+ fprintf(stderr, " Optional argument : -nx -ny -nz -r -l \n");
}
[-ny ny (70 ).as(Integer ) ] :Optional :Real length = ny * ly
[-nz nz (100 ).as(Integer ) ] :Optional :Real lenght = nz * lz
[-r r (1 ).as(Integer ) ] :Optional :Radius[pixel]
+ [-l l (1 ).as(Integer ) ] :Optional :Length[pixel]
[-lx lx (5.0 ).as(Real ) ] :Optional :Pixel Size[Angstrom]
[-ly ly (5.0 ).as(Real ) ] :Optional :Pixel Size[Angstrom]
[-lz lz (5.0 ).as(Real ) ] :Optional :Pixel Size[Angstrom]
[-fm fm (0 ).as(Integer ) ] :Optional :formation
[-c[onfig] configFile (NULL ).as(inFile ) ] :Optional :ConfigurationFile
[-m[ode] mode (0 ).as(Integer ) ] :Optional :Mode
+>>>>
+-nx -ny -nz : image size[pixel]
+-lx -ly -lz : pixel/voxel size[Angstrom]
>>>> Mode <<<< (-m)
0: Circle(a right cylinder:3D) and Triangle(a trigonal prism:3D)
Optional argument : -nx -ny -nz -r
Optional argument : -nx -ny
7: SheppLogan 3D
Optional argument : -nx -ny -nz
+8: Cylinder 3D
+ Optional argument : -nx -ny -nz -r -l
</PRE>
</BODY>
</HTML>
-i 1 0 1 0 0 -1x1+1+6.000000 0 0 70 0 0 'ny' 'Real length = ny * ly' ny
-i 1 0 1 0 0 -1x1+1+7.500000 0 0 100 0 0 'nz' 'Real lenght = nz * lz' nz
-i 1 0 1 0 0 -1x1+1+9.000000 0 0 1 0 0 'r' 'Radius[pixel]' r
- -f 1 0 1 0 0 -1x1+1+10.500000 0 0 5.000000 0 0 0 'lx' 'Pixel Size[Angstrom]' lx
- -f 1 0 1 0 0 -1x1+1+12.000000 0 0 5.000000 0 0 0 'ly' 'Pixel Size[Angstrom]' ly
- -f 1 0 1 0 0 -1x1+1+13.500000 0 0 5.000000 0 0 0 'lz' 'Pixel Size[Angstrom]' lz
- -f 1 0 1 0 0 -1x1+1+15.000000 0 0 150.000000 0 0 0 'radius' 'filament radius [A]' radius
- -i 1 0 1 0 0 -1x1+1+16.500000 0 0 3 0 0 'nHelix' 'n-helix' n
- -f 1 0 1 0 0 -1x1+1+18.000000 0 0 143.000000 0 0 0 'zPitch' 'pitch [A]' dz
- -f 1 0 1 0 0 -1x1+1+19.500000 0 0 40.000000 0 0 0 'deltaPhi' 'rotation angle [degree]' dphi
- -f 1 0 1 0 0 -1x1+1+21.000000 0 0 120.000000 0 0 0 'phiAngle' 'rotation angle in the same level [degree]' phi
- -f 1 0 1 0 0 -1x1+1+22.500000 0 0 0.000000 0 0 0 'startZ' 'start z [A]' sz
- -f 1 0 1 0 0 -1x1+1+24.000000 0 0 500.000000 0 0 0 'endZ' 'end z [A]' ez
- -f 1 0 1 0 0 -1x1+1+25.500000 0 0 0.000000 0 0 0 'startPhi' 'start angle [degree]' sphi
- -f 1 0 1 0 0 -1x1+1+27.000000 0 0 40.000000 0 0 0 'startPhi2' 'start angle 2 [degree]' sphi2
- -i 1 0 1 0 0 -1x1+1+28.500000 0 0 0 0 0 'inMode' 'inMode' inMode
- -i 1 0 1 0 0 -1x1+1+30.000000 0 0 9 0 0 'units' 'units number' units
- -i 1 0 1 0 0 -1x1+1+31.500000 0 0 0 0 0 'fm' 'formation' fm
- -I 1 0 1 0 0 1 -1x1+1+33.000000 ' ' 'configFile' 'ConfigurationFile' c
- -i 1 0 1 0 0 -1x1+1+34.500000 0 0 0 0 0 'mode' 'Mode' m
+ -i 1 0 1 0 0 -1x1+1+10.500000 0 0 1 0 0 'l' 'Length[pixel]' l
+ -f 1 0 1 0 0 -1x1+1+12.000000 0 0 5.000000 0 0 0 'lx' 'Pixel Size[Angstrom]' lx
+ -f 1 0 1 0 0 -1x1+1+13.500000 0 0 5.000000 0 0 0 'ly' 'Pixel Size[Angstrom]' ly
+ -f 1 0 1 0 0 -1x1+1+15.000000 0 0 5.000000 0 0 0 'lz' 'Pixel Size[Angstrom]' lz
+ -f 1 0 1 0 0 -1x1+1+16.500000 0 0 150.000000 0 0 0 'radius' 'filament radius [A]' radius
+ -i 1 0 1 0 0 -1x1+1+18.000000 0 0 3 0 0 'nHelix' 'n-helix' n
+ -f 1 0 1 0 0 -1x1+1+19.500000 0 0 143.000000 0 0 0 'zPitch' 'pitch [A]' dz
+ -f 1 0 1 0 0 -1x1+1+21.000000 0 0 40.000000 0 0 0 'deltaPhi' 'rotation angle [degree]' dphi
+ -f 1 0 1 0 0 -1x1+1+22.500000 0 0 120.000000 0 0 0 'phiAngle' 'rotation angle in the same level [degree]' phi
+ -f 1 0 1 0 0 -1x1+1+24.000000 0 0 0.000000 0 0 0 'startZ' 'start z [A]' sz
+ -f 1 0 1 0 0 -1x1+1+25.500000 0 0 500.000000 0 0 0 'endZ' 'end z [A]' ez
+ -f 1 0 1 0 0 -1x1+1+27.000000 0 0 0.000000 0 0 0 'startPhi' 'start angle [degree]' sphi
+ -f 1 0 1 0 0 -1x1+1+28.500000 0 0 40.000000 0 0 0 'startPhi2' 'start angle 2 [degree]' sphi2
+ -i 1 0 1 0 0 -1x1+1+30.000000 0 0 0 0 0 'inMode' 'inMode' inMode
+ -i 1 0 1 0 0 -1x1+1+31.500000 0 0 9 0 0 'units' 'units number' units
+ -i 1 0 1 0 0 -1x1+1+33.000000 0 0 0 0 0 'fm' 'formation' fm
+ -I 1 0 1 0 0 1 -1x1+1+34.500000 ' ' 'configFile' 'ConfigurationFile' c
+ -i 1 0 1 0 0 -1x1+1+36.000000 0 0 0 0 0 'mode' 'Mode' m
-E
-E
-E
@echo "----- Help Message Check -----"
@../$(OSTYPE)/$(OBJECTNAME) -h
-exec:
- @echo "----- Execution Check -----"
- ../$(OSTYPE)/$(OBJECTNAME)
+exec: exec-8
+
+exec-8:
+ @echo "----- Execution Check : 8-----"
+ ../$(OSTYPE)/$(OBJECTNAME) -m 8 -o data/test-8.mrc -nx 32 -ny 32 -nz 32 -lx 2 -ly 2 -lz 2 -l 16 -r 4
@echo "----- Calc check -----"
clean:
fprintf(stderr, " [-ny ny (70 ).as(Integer ) ] :Optional :Real length = ny * ly\n");
fprintf(stderr, " [-nz nz (100 ).as(Integer ) ] :Optional :Real lenght = nz * lz\n");
fprintf(stderr, " [-r r (1 ).as(Integer ) ] :Optional :Radius[pixel]\n");
+ fprintf(stderr, " [-l l (1 ).as(Integer ) ] :Optional :Length[pixel]\n");
fprintf(stderr, " [-lx lx (5.0 ).as(Real ) ] :Optional :Pixel Size[Angstrom]\n");
fprintf(stderr, " [-ly ly (5.0 ).as(Real ) ] :Optional :Pixel Size[Angstrom]\n");
fprintf(stderr, " [-lz lz (5.0 ).as(Real ) ] :Optional :Pixel Size[Angstrom]\n");
@echo "----- Help Message Check -----"
@../$(OSTYPE)/$(OBJECTNAME) -h
-exec:
+exec: exec2
@echo "----- Execution Check -----"
- ../$(OSTYPE)/$(OBJECTNAME)
+ ../$(OSTYPE)/$(OBJECTNAME) -i data/121p-move.mrc -o data/121p-move.mrc.PCA -C 23696.7
+ pdbPCA -i data/121p-move.pdb -o data/121p-move.pdb.PCA
@echo "----- Calc check -----"
+exec2:
+ @echo "----- Execution Check -----"
+ ../$(OSTYPE)/$(OBJECTNAME) -i data/myosinSwissModRefine2.mrc -o data/myosinSwissModRefine2.mrc.PCA -C 3.11319
+ pdbPCA -i data/myosinSwissModRefine2.pdb -o data/myosinSwissModRefine2.pdb.PCA
+ @echo "----- Calc check -----"
+
+
clean:
int iPhi, iTheta, iPsi;
int nPhi, nTheta, nPsi;
int iR;
+ float max;
+ mrcImage template;
+
+ max = MAX(2*linfo->radius, linfo->length);
+
+ template->Header = in->Header;
+ template->HeaderLength.x = max;
+ template->HeaderLength.y = max;
+ template->HeaderLength.z = max;
+ mrcInit(&template, NULL);
+
+ for(z=0; z<in->HeaderN.z; z++) {
+ for(y=0; y<in->HeaderN.y; y++) {
+ for(x=0; x<in->HeaderN.x; x++) {
+
+ }
+ }
+ }
nPhi = (int)((linfo->maxPhi -linfo->minPhi) /linfo->delPhi) +1;
nTheta = (int)((linfo->maxTheta-linfo->minTheta)/linfo->delTheta)+1;
for(z=0; z<in->HeaderN.z; z++) {
for(y=0; y<in->HeaderN.y; y++) {
for(x=0; x<in->HeaderN.x; x++) {
+
+
for(iTheta=0; iTheta<nTheta; iTheta++) {
theta = linfo->minTheta + iTheta*linfo->delTheta;
for(iPhi=0; iPhi<nPhi; iPhi++) {
OBJECTNAME = pdbPCA
-EXTRA_LIB =
+EXTRA_LIB = $(LIBCUDA)
EXTRA_CCOPTS =
EXTRA_INC =
pdbFileParaTypeReal x, y, z;
Matrix3D mat;
int i, j;
+ double sum;
init0(&info);
argCheck(&info, argc, argv);
arrayWriteToFile(info.fptOut, &lambda, "in main");
fprintf(info.fptOut, "Averege: Center Position\n");
arrayWriteToFile(info.fptOut, &average, "in main");
+ fprintf(info.fptOut, "Normalized lambda^2: lambda^2\n");
+ sum = arrayDataGet1(lambda, 0);
+ sum += arrayDataGet1(lambda, 1);
+ sum += arrayDataGet1(lambda, 2);
+ fprintf(info.fptOut, "%15.6f ", arrayDataGet1(lambda, 0)/sum);
+ fprintf(info.fptOut, "%15.6f ", arrayDataGet1(lambda, 1)/sum);
+ fprintf(info.fptOut, "%15.6f \n", arrayDataGet1(lambda, 2)/sum);
if(info.flagOutUnit) {
arrayWriteToFile(info.fptOutUnit, &u, "in main");
-/bin/bash: pdbPCA: そのようなファイルやディレクトリはありません
+<HTML>
+<HEAD>
+<TITLE>pdbPCA</TITLE>
+</HEAD>
+<BODY>
+<H1>pdbPCA</H1>
+<H2>Usage</H2>
+<PRE>
+Usage: pdbPCA
+Options:
+ [-i[nput] In (stdin ).as(inFile ) ] :Optional :InputDataFile
+ [-o[utput] Out (stdout ).as(outFile ) ] :Optional :Output: Result
+ [-o[utput]U[nit] OutUnit (NULL ).as(outFile ) ] :Optional :Output: Unit Vector Array
+ [-o[utput]M[atrix3D] OutMat3D (NULL ).as(outFile ) ] :Optional :Output: Matrix3D from Unit Vector Array
+ [-o[utput]PDB OutPDB (NULL ).as(outFile ) ] :Optional :Output: PDB rotated from Unit Vector Array
+ [-c[onfig] configFile (NULL ).as(inFile ) ] :Optional :ConfigurationFile
+ [-m[ode] mode (0 ).as(Integer ) ] :Optional :Mode
+----- Additional Usage -----
+</PRE>
+</BODY>
+</HTML>