Skip to content
Snippets Groups Projects
Commit a457f942 authored by Gareth Tribello's avatar Gareth Tribello
Browse files

Added small fix to reading of dissimilarity matrices

parent 0db2f121
No related branches found
No related tags found
No related merge requests found
...@@ -44,7 +44,7 @@ namespace analysis { ...@@ -44,7 +44,7 @@ namespace analysis {
class ReadDissimilarityMatrix : public AnalysisBase { class ReadDissimilarityMatrix : public AnalysisBase {
private: private:
unsigned nnodes; unsigned nnodes;
DataCollectionObject fake_data; std::vector<DataCollectionObject> fake_data;
std::string fname, wfile; std::string fname, wfile;
// Matrix<double> dissimilarities; // Matrix<double> dissimilarities;
std::vector<std::vector<double> > dissimilarities; std::vector<std::vector<double> > dissimilarities;
...@@ -122,6 +122,7 @@ void ReadDissimilarityMatrix::runFinalJobs() { ...@@ -122,6 +122,7 @@ void ReadDissimilarityMatrix::runFinalJobs() {
if( my_input_data && dissimilarities.size()!=getNumberOfDataPoints() ) { if( my_input_data && dissimilarities.size()!=getNumberOfDataPoints() ) {
error("mismatch between number of data points in trajectory and the dimensions of the dissimilarity matrix"); error("mismatch between number of data points in trajectory and the dimensions of the dissimilarity matrix");
} }
if( !my_input_data ) fake_data.resize( dissimilarities.size() );
weights.resize( dissimilarities.size() ); weights.resize( dissimilarities.size() );
if( wfile.length()>0 ) { if( wfile.length()>0 ) {
...@@ -147,7 +148,7 @@ double ReadDissimilarityMatrix::getDissimilarity( const unsigned& iframe, const ...@@ -147,7 +148,7 @@ double ReadDissimilarityMatrix::getDissimilarity( const unsigned& iframe, const
DataCollectionObject& ReadDissimilarityMatrix::getStoredData( const unsigned& idata, const bool& calcdist ) { DataCollectionObject& ReadDissimilarityMatrix::getStoredData( const unsigned& idata, const bool& calcdist ) {
plumed_massert( !calcdist, "cannot calc dist as this data was read in from input"); plumed_massert( !calcdist, "cannot calc dist as this data was read in from input");
if( my_input_data ) return AnalysisBase::getStoredData( idata, calcdist ); if( my_input_data ) return AnalysisBase::getStoredData( idata, calcdist );
return fake_data; return fake_data[idata];
} }
double ReadDissimilarityMatrix::getWeight( const unsigned& idata ) { double ReadDissimilarityMatrix::getWeight( const unsigned& idata ) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment