NS enable
authorAlexey Shvetsov <alexxy@gentoo.org>
Wed, 11 Jul 2018 07:15:10 +0000 (10:15 +0300)
committerAlexey Shvetsov <alexxy@gentoo.org>
Wed, 11 Jul 2018 07:15:10 +0000 (10:15 +0300)
Signed-off-by: Alexey Shvetsov <alexxy@gentoo.org>
.gitignore
src/sans.cpp

index 8c730baff8e41ff8e5d8a0b4e754a55f196fe1bb..fa895762abc4356a93685c68942dcb24e6bc75d7 100644 (file)
@@ -3,4 +3,4 @@
 *.creator.user
 *.files
 *.includes
-
+*.user
index b738de9f4bac84e39ad59164194f5e074a4c31cf..bfd4d0efd95f8477239eb348d3ca6aaa49534dfb 100644 (file)
@@ -66,13 +66,15 @@ class SANS : public TrajectoryAnalysisModule
 
         std::string                      fnNdx_;
         double                           cutoff_;
+        double                           grid_;
 
         AnalysisNeighborhood             nb_;
+        const TopologyInformation          *top_;
 
 };
 
 SANS::SANS()
-    : cutoff_(1.0)
+    : cutoff_(1.0), grid_(0.05)
 {
 }
 
@@ -97,14 +99,27 @@ void
 SANS::initAnalysis(const TrajectoryAnalysisSettings &settings,
                                const TopologyInformation         & top)
 {
+    nb_.setCutoff(cutoff_);
+    top_ = &top;
 }
 
 void
 SANS::analyzeFrame(int frnr, const t_trxframe &fr, t_pbc *pbc,
                                TrajectoryAnalysisModuleData *pdata)
 {
-       RVec GridSpacing(0.1, 0.1, 0.1);
-       
+    RVec GridSpacing(0.1, 0.1, 0.1);
+    AnalysisNeighborhoodSearch nbsearch = nb_.initSearch(pbc, AnalysisNeighborhoodPositions(fr.x, fr.natoms));
+    AnalysisNeighborhoodPairSearch pairSearch = nbsearch.startPairSearch(GridSpacing.as_vec());
+    AnalysisNeighborhoodPair pair;
+    t_topology *top = top_->topology();
+    while (pairSearch.findNextPair(&pair))
+      {
+          fprintf(stderr,"Index %d\n", pair.refIndex());
+          fprintf(stderr,"dx =  (%f, %f, %f)\n", pair.dx()[XX], pair.dx()[YY], pair.dx()[ZZ] );
+          fprintf(stderr,"ref =  (%f, %f, %f)\n", fr.x[pair.refIndex()][XX], fr.x[pair.refIndex()][YY], fr.x[pair.refIndex()][ZZ]);
+          fprintf(stderr,"ref_dx =  (%f, %f, %f)\n", GridSpacing[XX]+pair.dx()[XX], GridSpacing[YY]+pair.dx()[YY], GridSpacing[ZZ]+pair.dx()[ZZ] );
+
+      }
 }
 
 void