Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/vector.hpp

    rcc2ee5 r6ac7ee  
    88 */
    99class Vector {
    10   public:
    11     double x[NDIM];
     10        public:
     11                double x[NDIM];
    1212
    13   Vector();
    14   Vector(double x1, double x2, double x3);
    15   ~Vector();
     13        Vector();
     14        Vector(double x1, double x2, double x3);
     15        ~Vector();
    1616
    17   double Distance(const Vector *y) const;
    18   double DistanceSquared(const Vector *y) const;
    19   double PeriodicDistance(const Vector *y, const double *cell_size) const;
    20   double ScalarProduct(const Vector *y) const;
    21   double Projection(const Vector *y) const;
    22   double Norm() const ;
    23   double Angle(const Vector *y) const;
     17        double Distance(const Vector *y) const;
     18        double DistanceSquared(const Vector *y) const;
     19        double PeriodicDistance(const Vector *y, const double *cell_size) const;
     20        double PeriodicDistanceSquared(const Vector *y, const double *cell_size) const;
     21        double ScalarProduct(const Vector *y) const;
     22        double Projection(const Vector *y) const;
     23        double Norm() const ;
     24        double Angle(const Vector *y) const;
    2425
    25   void AddVector(const Vector *y);
    26   void SubtractVector(const Vector *y);
    27   void CopyVector(const Vector *y);
    28   void RotateVector(const Vector *y, const double alpha);
    29   void VectorProduct(const Vector *y);
    30   void ProjectOntoPlane(const Vector *y);
    31   void Zero();
    32   void One(double one);
    33   void Init(double x1, double x2, double x3);
    34   void Normalize();
    35   void Translate(const Vector *x);
    36   void Mirror(const Vector *x);
    37   void Scale(double **factor);
    38   void Scale(double *factor);
    39   void Scale(double factor);
    40   void MatrixMultiplication(double *M);
    41   void InverseMatrixMultiplication(double *M);
    42   void KeepPeriodic(ofstream *out, double *matrix);
    43   void LinearCombinationOfVectors(const Vector *x1, const Vector *x2, const Vector *x3, double *factors);
    44 
    45   double CutsPlaneAt(Vector *A, Vector *B, Vector *C);
    46   bool GetOneNormalVector(const Vector *x1);
    47   bool MakeNormalVector(const Vector *y1);
    48   bool MakeNormalVector(const Vector *y1, const Vector *y2);
    49   bool MakeNormalVector(const Vector *x1, const Vector *x2, const Vector *x3);
    50   bool SolveSystem(Vector *x1, Vector *x2, Vector *y, double alpha, double beta, double c);
    51   bool LSQdistance(Vector **vectors, int dim);
    52 
    53   void AskPosition(double *cell_size, bool check);
    54   bool Output(ofstream *out) const;
     26        void AddVector(const Vector *y);
     27        void SubtractVector(const Vector *y);
     28        void CopyVector(const Vector *y);
     29        void RotateVector(const Vector *y, const double alpha);
     30        void VectorProduct(const Vector *y);
     31        void ProjectOntoPlane(const Vector *y);
     32        void Zero();
     33        void One(double one);
     34        void Init(double x1, double x2, double x3);
     35        void Normalize();
     36        void Translate(const Vector *x);
     37        void Mirror(const Vector *x);
     38        void Scale(double **factor);
     39        void Scale(double *factor);
     40        void Scale(double factor);
     41        void MatrixMultiplication(double *M);
     42        void InverseMatrixMultiplication(double *M);
     43        void KeepPeriodic(ofstream *out, double *matrix);
     44        void LinearCombinationOfVectors(const Vector *x1, const Vector *x2, const Vector *x3, double *factors);
     45        double CutsPlaneAt(Vector *A, Vector *B, Vector *C);
     46        bool GetOneNormalVector(const Vector *x1);
     47        bool MakeNormalVector(const Vector *y1);
     48        bool MakeNormalVector(const Vector *y1, const Vector *y2);
     49        bool MakeNormalVector(const Vector *x1, const Vector *x2, const Vector *x3);
     50        bool SolveSystem(Vector *x1, Vector *x2, Vector *y, double alpha, double beta, double c);
     51        bool LSQdistance(Vector **vectors, int dim);
     52        void AskPosition(double *cell_size, bool check);
     53        bool Output(ofstream *out) const;
    5554};
    5655
Note: See TracChangeset for help on using the changeset viewer.