std::string fnNdx_;
double cutoff_;
+ double grid_;
AnalysisNeighborhood nb_;
+ const TopologyInformation *top_;
};
SANS::SANS()
- : cutoff_(1.0)
+ : cutoff_(1.0), grid_(0.05)
{
}
SANS::initAnalysis(const TrajectoryAnalysisSettings &settings,
const TopologyInformation & top)
{
+ nb_.setCutoff(cutoff_);
+ 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