19 #ifndef OST_MOL_COORD_FRAME_HH
20 #define OST_MOL_COORD_FRAME_HH
25 #include <boost/shared_ptr.hpp>
31 namespace ost {
namespace mol {
61 ucell_angles_=box_angles;
69 return this->ucell_size_;
77 return this->ucell_angles_;
83 Real GetDistanceBetwAtoms(
int atom1_index,
int atom2_index)
const;
99 Real GetAngle(
int atom1_index,
int atom2_index,
int atom3_index)
const;
105 Real GetDihedralAngle(
int a1_index,
int a2_index,
int a3_index,
int a4_index)
const;
115 geom::Vec3 GetCenterOfMassPos(std::vector<unsigned long>& indices,
116 std::vector<Real>& masses)
const;
127 std::vector<unsigned long>& indices2, std::vector<Real>& masses2)
const;
133 Real GetRMSD(
const std::vector<geom::Vec3>& ref_pos,
134 const std::vector<unsigned long>& indices_sele)
const;
149 Real GetMinDistance(std::vector<unsigned long>& index_list1,
150 std::vector<unsigned long>& index_list2)
const;
161 std::vector<Real>& masses_cm,
162 std::vector<unsigned long>& indices_atoms)
const;
168 geom::Line3 GetODRLine(std::vector<unsigned long>& indices_ca)
const;
171 geom::Plane GetODRPlane(std::vector<unsigned long>& indices_ca)
const;
182 geom::Line3 FitCylinder(std::vector<unsigned long>& indices_ca)
const;
195 std::vector<unsigned long>& indices_c,
196 std::vector<unsigned long>& indices_o,
197 std::vector<unsigned long>& indices_n)
const;
229 std::vector<unsigned long>& indices,
230 std::vector<Real>& masses);
240 std::vector<unsigned long>& indices_ca,
241 std::vector<unsigned long>& indices_c,
242 std::vector<unsigned long>& indices_o,
243 std::vector<unsigned long>& indices_n);