#include <iostream>
//#include <chrono>
-//#include <cstdint>
#include <cfloat>
#include <omp.h>
+#include <vector>
+#include <cstdio>
#include <gromacs/trajectoryanalysis.h>
-//#include <gromacs/pbcutil/pbc.h>
-//#include <gromacs/utility/smalloc.h>
-//#include <gromacs/math/do_fit.h>
-
-#include <gromacs/trajectoryanalysis/topologyinformation.h>
-//#include "gromacs/topology/topology.h"
-//#include "gromacs/topology/index.h"
-
-// #define MAX_NTRICVEC 12
+// - #include <gromacs/trajectoryanalysis/topologyinformation.h>
+#include "/home/titov_ai/Develop/gromacs-original/src/gromacs/trajectoryanalysis/topologyinformation.h"
using namespace gmx;
domainsType() {}
// конструктор класса для полноценной инициализации данных
- domainsType(std::vector< int > index, const std::vector< RVec > reference,
+ domainsType(std::vector< unsigned long > index, const std::vector< RVec > reference,
const int windowSize, const int domainMinimumSize,
const int domainSearchAlgorythm, const int timeStepBetweenWindowStarts,
const unsigned int sliceNum, const double epsilon, const double delta,
// set numeric values to "-1" / string value to "" - if you want default settings
// функция заполнения необходимыми данными для вычисления структурных доменов
- void setDefaults(std::vector< int > index, const std::vector< RVec > reference,
+ void setDefaults(std::vector< unsigned long > index, const std::vector< RVec > reference,
const int windowSize, const int domainMinimumSize,
const int domainSearchAlgorythm, const int timeStepBetweenWindows,
const unsigned int sliceNum, const double epsilon, const double delta,
// референстная структура
std::vector< RVec > ref; // must be presented
// индекс структуры
- std::vector< int > structIndex; // must be presented
+ std::vector< unsigned long > structIndex; // must be presented
// рабочие окна -> рассматриваемые основные последовательности -> матрица соотношений в структуре всё на всё
std::vector< std::vector< std::vector< std::vector< triple > > > > graph;
// списки доменов
writeCount -= 20;
std::fprintf(ndxFile, "\n");
}
- std::fprintf(ndxFile, "%5d ", structIndex[domains[i][j]] + 1);
- std::printf("%5d ", structIndex[domains[i][j]] + 1);
+ std::fprintf(ndxFile, "%5lu ", structIndex[domains[i][j]] + 1);
+ std::printf("%5lu ", structIndex[domains[i][j]] + 1);
}
std::fprintf(ndxFile,"\n\n");
std::printf("\n\n");
std::string fnNdx_;
domainsType testSubject;
- std::vector< int > index;
+ std::vector< unsigned long > index;
std::vector< RVec > trajectory;
std::vector< RVec > reference;
Selection selec;
// Control input settings
settings->setFlags(TrajectoryAnalysisSettings::efNoUserPBC);
settings->setFlag(TrajectoryAnalysisSettings::efUseTopX);
+ //settings->setFlag(TrajectoryAnalysisSettings::efRequireTop);
settings->setPBC(true);
}
// считывание индекса
index.resize(0);
for (ArrayRef< const int >::iterator ai = selec.atomIndices().begin(); (ai < selec.atomIndices().end()); ai++) {
- index.push_back(*ai);
+ index.push_back(static_cast< unsigned long >(*ai));
}
// считывание референсной структуры
reference.resize(0);
+
if (top.hasFullTopology()) {
for (unsigned int i = 0; i < index.size(); i++) {
reference.push_back(top.x().at(index[i]));