From: Anatoly Date: Tue, 28 Jul 2020 13:31:53 +0000 (+0300) Subject: - added some template basis for future tests X-Git-Url: http://biod.pnpi.spb.ru/gitweb/?a=commitdiff_plain;h=a889543452c91a01e7d9be576e2381501980641a;p=alexxy%2Fgromacs-spacetimecorr.git - added some template basis for future tests --- diff --git a/src/spacetimecorrtests.cpp b/src/spacetimecorrtests.cpp index 21a05d5..c50c306 100644 --- a/src/spacetimecorrtests.cpp +++ b/src/spacetimecorrtests.cpp @@ -10,6 +10,33 @@ #include "newfit.h" #include "corrtype.h" +TEST( corrTests, corrTests_trajectoryPartition ) +{ + correlationType testCorrs; + std::vector< RVec > testReference; + testReference.resize(0); + std::vector< std::vector < std::vector < unsigned int > > > testSels; + testSels.resize(0); + std::vector< int > testIndex; + testIndex.resize(0); + RVec a; a[0] = 1; a[1] = 2; a[2] = 3; + + testSels.resize(1); + testSels[0].resize(1); + testSels[0][0].resize(0); + for (unsigned int i = 0; i < 100; i++) { + testReference.push_back(a); + testSels[0][0].push_back(i); + testIndex.push_back(i); + } + testCorrs.reference = testReference; + testCorrs.selections = testSels; + testCorrs.index = testIndex; + + testCorrs.trajectoryPartition(); + // по аналогии проверить различные варианты дробления молекулы +} + TEST( corrTests, corrTests_setDefaults ) { std::vector< std::string > testResNms; @@ -18,6 +45,8 @@ TEST( corrTests, corrTests_setDefaults ) testReference.resize(0); std::vector< std::vector < std::vector < unsigned int > > > testSels; testSels.resize(0); + std::vector< int > testIndex; + testIndex.resize(0); int testTau_jump = 100; int testWindow = 1000; @@ -27,8 +56,7 @@ TEST( corrTests, corrTests_setDefaults ) std::string testOutPutName = "testString"; RVec a; a[0] = 1; a[1] = 2; a[2] = 3; correlationType testCorrs; - std::vector< int > testIndex; - testIndex.resize(0); + testSels.resize(1); testSels[0].resize(1); @@ -59,28 +87,55 @@ TEST( corrTests, corrTests_setDefaults ) } } -TEST( corrTests, corrTests_trajectoryPartition ) -{ - // разбиение молекулы на куски исходя из доменов и распределение невошедшей части к доменам -} - TEST( corrTests, corrTests_correlationEval ) { + std::vector< std::vector< RVec > > testTraj; + testTraj.resize(0); + RVec testA; + for (unsigned int i0 = 0; i0 < 1000; i0++) { + testTraj.resize(testTraj.size() + 1); + for (unsigned int i1 = 0; i1 < 10; i1++) { + testA[0] = std::sin(i0 * 2 * M_PI / 1000); + testA[1] = std::sin(i0 * 2 * M_PI / 1000); + testA[2] = std::sin(i0 * 2 * M_PI / 1000); + testTraj.back().push_back(testA); + } + } // вычисление корреляционных матриц на основе траектории } TEST( corrTests, corrTests_graphCalculations ) { + std::vector< std::vector< std::vector< double > > > matrixes; + std::vector< std::vector< std::pair< double, int > > > graph; + std::vector< std::vector< unsigned int > > subGraphPoints; + std::vector< std::vector< std::pair< unsigned int, unsigned int > > > subGraphRbr; + std::vector< int > index; + std::vector< RVec > reference; + + + // создание графа на основе посчитанных матриц } TEST( corrTests, corrTests_graphBackBoneEvaluation ) { + std::vector< int > index; + std::vector< std::vector< std::pair< double, int > > > graph; + std::vector< std::vector< unsigned int > > subGraphPoints; + std::vector< std::vector< std::pair< unsigned int, unsigned int > > > subGraphRbr; + std::vector< std::vector< std::vector< std::pair< unsigned int, unsigned int > > > > subGraphRouts; + + + + // выделение остовного(?) графа на базе полного графа } TEST( corrTests, corrTests_update ) { + // инициализация + // траектория // основная работа программы целиком }