 	return;
 }
 
+void initEigenvectors(float* container) {
+	FILE* ptr=fopen("eigenvectors.csv", "r");
+	char* buffer=(char*)malloc(sizeof(char));
+	for(int j=0; j<DataLen; ++j) {
+		for(int i=0; i<Reduced_Data_Length; ++i) {
+			fscanf(ptr, "%f", &container[j*Reduced_Data_Length+i]);
+			fscanf(ptr, "%c", buffer);
+		}
+	}
+	free(buffer);
+	return;
+}
 
 //init the answer to the training data
 //return by pointer

#define HISTOGRAM_LENGTH 256
#define YSIZE 600
#define XSIZE 1200
#define TrainDataNum 7736
#define DataLen 1024
#define DataWidth 32
#define KernelWidth 5

		}

	}

	if(PCA) {
		setPCAConstant(digitHost, count);
		getPCAAns(ans, count);
		recognizePCA(ans, count);
	}else {
		cudaMemcpyToSymbol(testDigit, digitHost, testDigitSize*15);
		cuCheck(__LINE__);
		getAns(ans, count);
	}
	free(digitHost);
	free(checkMonoHost);	
	return ans;
