Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/atom.hpp

    r055861 r49f802c  
    1111using namespace std;
    1212
     13/*********************************************** includes ***********************************/
     14
    1315// include config.h
    1416#ifdef HAVE_CONFIG_H
     
    1618#endif
    1719
     20#include <iostream>
     21#include <vector>
    1822
    19 #include <iostream>
     23#include "tesselation.hpp"
    2024
    21 #include "element.hpp"
    22 #include "tesselation.hpp"
    23 #include "vector.hpp"
     25/****************************************** forward declarations *****************************/
     26
     27class bond;
     28class element;
     29class Vector;
     30
     31/********************************************** declarations *******************************/
    2432
    2533/** Single atom.
     
    2836class atom : public TesselPoint {
    2937  public:
    30     Vector x;       //!< coordinate array of atom, giving position within cell
    31     Vector v;       //!< velocity array of atom
     38    struct
     39    {
     40      vector<Vector> R;  //!< position vector
     41      vector<Vector> U;  //!< velocity vector
     42      vector<Vector> F;  //!< last force vector
     43    } Trajectory;
     44
     45    Vector x;       //!< coordinate vector of atom, giving last position within cell
     46    Vector v;       //!< velocity vector of atom, giving last velocity within cell
     47    Vector F;       //!< Force vector of atom, giving last force within cell
    3248    element *type;  //!< pointing to element
    3349    atom *previous; //!< previous atom in molecule list
     
    5167  virtual ~atom();
    5268
    53   bool Output(int ElementNo, int AtomNo, ofstream *out, const char *comment = NULL) const;
     69  bool Output(ofstream *out, int ElementNo, int AtomNo, const char *comment = NULL) const;
     70  bool Output(ofstream *out, int *ElementNo, int *AtomNo, const char *comment = NULL);
    5471  bool OutputXYZLine(ofstream *out) const;
     72  bool OutputTrajectory(ofstream *out, int *ElementNo, int *AtomNo, int step) const;
     73  bool OutputTrajectoryXYZ(ofstream *out, int step) const;
     74  bool OutputBondOfAtom(ofstream *out, int *NumberOfBondsPerAtom, bond ***ListOfBondsPerAtom) const;
     75
     76  void EqualsFather ( atom *ptr, atom **res );
     77  void CorrectFather();
    5578  atom *GetTrueFather();
    5679  bool Compare(const atom &ptr);
     80
     81  double DistanceToVector(Vector &origin);
     82  double DistanceSquaredToVector(Vector &origin);
     83
     84  void AddKineticToTemperature(double *temperature, int step) const;
     85
     86  bool IsInParallelepiped(Vector offset, double *parallelepiped);
    5787
    5888  ostream & operator << (ostream &ost);
Note: See TracChangeset for help on using the changeset viewer.