diff --git a/modules/mol/alg/src/trajectory_analysis.cc b/modules/mol/alg/src/trajectory_analysis.cc
index 012b77b3215b31d84440be64c3a485b3feea6ef8..2c1225e753ba76adacfa3ccfd8dc6a2ccce18a95 100644
--- a/modules/mol/alg/src/trajectory_analysis.cc
+++ b/modules/mol/alg/src/trajectory_analysis.cc
@@ -144,8 +144,8 @@ std::vector<Real> AnalyzeRMSD(const CoordGroupHandle& traj, const EntityView& re
   rmsd.reserve(ceil(traj.GetFrameCount()/float(stride)));
   std::vector<unsigned long> sele_indices;
   std::vector<geom::Vec3> ref_pos;
-  GetIndices(reference_view, sele_indices);
-  GetPositions(sele_view, ref_pos);
+  GetIndices(sele_view, sele_indices);
+  GetPositions(reference_view, ref_pos);
   for (size_t i=0; i<traj.GetFrameCount(); i+=stride) {
     CoordFramePtr frame=traj.GetFrame(i);
     rmsd.push_back(frame->GetRMSD(ref_pos,sele_indices));