本文整理汇总了C++中Trajectory::has_next方法的典型用法代码示例。如果您正苦于以下问题:C++ Trajectory::has_next方法的具体用法?C++ Trajectory::has_next怎么用?C++ Trajectory::has_next使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Trajectory
的用法示例。
在下文中一共展示了Trajectory::has_next方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: analyze
void TrajectoryAnalyzer::analyze(Trajectory & trajectory,
std::vector<std::shared_ptr<ProteinSegment>> & protein_segments,
const double & temperature,
const int ensemble_size) {
std::vector<ProteinSegmentEnsemble> protein_segment_ensembles;
LOGD << "Fitting protein segments with trajectory frames and computing force constants.";
while (trajectory.has_next()) {
for (std::shared_ptr<ProteinSegment> const & protein_segment : protein_segments) {
protein_segment_ensembles.push_back(ProteinSegmentEnsemble(protein_segment));
}
LOGD << "adding frames to protein segment ensembles";
int frame_nr = 0;
while (trajectory.has_next() && ++frame_nr <= ensemble_size) {
Frame frame = trajectory.get_next_frame();
#pragma omp parallel for
for (size_t i = 0; i < protein_segment_ensembles.size(); i++) {
protein_segment_ensembles[i].add_frame(frame);
}
LOGV_IF(frame_nr % 100 == 0) << "read " << frame_nr << " frames";
}
LOGD << "read total number of " << frame_nr << " frames";
LOGD << "computing force constants for protein segment ensembles.";
#pragma omp parallel for
for (size_t i = 0; i < protein_segment_ensembles.size(); i++) {
protein_segment_ensembles[i].compute_force_constant(temperature);
}
}
LOGD << "Finished analyzing trajectory";
}