85bd10da37f403d155c4434d90edcd146e682948 braney Mon May 15 13:03:32 2017 -0700 add sorting to composite wiggles. diff --git src/optimalLeaf/SimMat.cc src/optimalLeaf/SimMat.cc new file mode 100644 index 0000000..3b2e347 --- /dev/null +++ src/optimalLeaf/SimMat.cc @@ -0,0 +1,219 @@ +// -------------------------------------------------------- +// SimMat.cc +// Computes the similarity matrix, and writes ordered trees +// to a .CDT files. +// -------------------------------------------------------- +#include +#include +#include +#include +#include +#include "SimMat.hh" +#include "readFile.hh" + +using namespace std; +// read the input file +SimMat::SimMat(char *filename,int orfL,int descL,int mZ) { + + meanZ = mZ; + readFile myRead(filename,orfL,descL); + genes = myRead.getNumGenes(); + exp = myRead.getNumExp(); + in = myRead.getVals(); + geneNames = myRead.getNames(); + geneDesc = myRead.getDesc(); + expNames = myRead.getExp(); + generateMat(); +} + +SimMat::SimMat( int igenes, int iexp, int imeanZ, float **iin, + char **igeneNames, char **igeneDesc, char **iexpNames) { + + genes = igenes; + exp = iexp; + meanZ = imeanZ; + in = iin; + geneNames = igeneNames; + geneDesc = igeneDesc; + expNames = iexpNames; + + generateMat(); +} + +// compute the siimlarity matrix +void SimMat::generateMat() { + + int i,j; + mat = new float*[genes+1]; + means = compMean(genes,exp,1); + std = compStd(genes,exp,1); + for(i=1;i