19 #ifndef OST_MOL_COORD_FRAME_HH
20 #define OST_MOL_COORD_FRAME_HH
26 #include <boost/shared_ptr.hpp>
32 namespace ost {
namespace mol {
62 ucell_angles_=box_angles;
70 return this->ucell_size_;
78 return this->ucell_angles_;
84 Real GetDistanceBetwAtoms(
int atom1_index,
int atom2_index)
const;
100 Real GetAngle(
int atom1_index,
int atom2_index,
int atom3_index)
const;
106 Real GetDihedralAngle(
int a1_index,
int a2_index,
int a3_index,
int a4_index)
const;
116 geom::Vec3 GetCenterOfMassPos(std::vector<unsigned long>& indices,
117 std::vector<Real>& masses)
const;
128 std::vector<unsigned long>& indices2, std::vector<Real>& masses2)
const;
134 Real GetRMSD(
const std::vector<geom::Vec3>& ref_pos,
135 const std::vector<unsigned long>& indices_sele)
const;
150 Real GetMinDistance(std::vector<unsigned long>& index_list1,
151 std::vector<unsigned long>& index_list2)
const;
162 std::vector<Real>& masses_cm,
163 std::vector<unsigned long>& indices_atoms)
const;
169 geom::Line3 GetODRLine(std::vector<unsigned long>& indices_ca)
const;
172 geom::Plane GetODRPlane(std::vector<unsigned long>& indices_ca)
const;
183 geom::Line3 FitCylinder(std::vector<unsigned long>& indices_ca)
const;
196 std::vector<unsigned long>& indices_c,
197 std::vector<unsigned long>& indices_o,
198 std::vector<unsigned long>& indices_n)
const;
230 std::vector<unsigned long>& indices,
231 std::vector<Real>& masses);
241 std::vector<unsigned long>& indices_ca,
242 std::vector<unsigned long>& indices_c,
243 std::vector<unsigned long>& indices_o,
244 std::vector<unsigned long>& indices_n);