17 #ifndef MAGNES_FRAME_H 18 #define MAGNES_FRAME_H 21 #include "coordinate.h" 25 #include "coreexport.h" 41 const std::vector<Bond>& Bonds()
const;
43 std::vector<Bond>& Bonds();
45 const std::vector<Coordinate>& XYZ()
const ;
47 std::vector<Coordinate>& XYZ();
53 void SetDihedral (
size_t i,
size_t j,
size_t k,
size_t l,
float dihedral );
55 void RotateBond (
size_t i,
size_t j,
float angle,
bool clockwise );
59 const Energy& KineticEnergy()
const;
61 const Energy& PotentialEnergy()
const;
63 Energy& PotentialEnergy() ;
65 Energy TotalEnergy()
const ;
67 float Distance (
int i,
int j )
const;
69 float Angle (
int i,
int j,
int l )
const;
71 float Dihedral (
int i,
int j,
int k,
int l )
const;
77 std::vector < std::vector<size_t> > Rings (
size_t size=0 )
const;
85 const std::vector< D2Array<double> >& ChemicalShieldingTensors()
const;
87 std::vector< D2Array<double> >& ChemicalShieldingTensors();
89 const std::vector< D2Array<double> >& EFGTensors()
const;
91 std::vector< D2Array<double> >& EFGTensors();
93 void SetTitle(
const std::string&
string);
95 const std::string& Title()
const;
97 const std::string& FileName()
const;
99 void SetFileName(
const std::string& filename);
103 void RotateNeighbours (
const Coordinate& axisorigin,
const Coordinate& axisend,
size_t i,
size_t j,
float pass,
bool clockwise,std::vector<size_t>& rotatedatoms );
106 FramePrivate* m_private;
MAGNES_CORE_API std::ostream & operator<<(std::ostream &s, const Coordinate &c)
Definition: coordinate.h:269
the global magnes namespace
Definition: ccchequation.h:38
A class for storing energy values.
Definition: energy.h:30
monodimensional array
Definition: mathtools.h:242
Molecule * ParentMolecule()
Definition: frame.h:83
Definition: molecule.h:44
const Molecule * ParentMolecule() const
Definition: frame.h:81
representaion of a 3D point
Definition: coordinate.h:33
Representation of a conformer.
Definition: frame.h:33