Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/vector.hpp

    r6ac7ee r042f82  
    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 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;
     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;
    2525
    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;
     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  double * InverseMatrix(double *A);
     43  void InverseMatrixMultiplication(double *M);
     44  void KeepPeriodic(ofstream *out, double *matrix);
     45  void LinearCombinationOfVectors(const Vector *x1, const Vector *x2, const Vector *x3, double *factors);
     46  double CutsPlaneAt(Vector *A, Vector *B, Vector *C);
     47  bool GetOneNormalVector(const Vector *x1);
     48  bool MakeNormalVector(const Vector *y1);
     49  bool MakeNormalVector(const Vector *y1, const Vector *y2);
     50  bool MakeNormalVector(const Vector *x1, const Vector *x2, const Vector *x3);
     51  bool SolveSystem(Vector *x1, Vector *x2, Vector *y, double alpha, double beta, double c);
     52  bool LSQdistance(Vector **vectors, int dim);
     53  void AskPosition(double *cell_size, bool check);
     54  bool Output(ofstream *out) const;
    5455};
    5556
Note: See TracChangeset for help on using the changeset viewer.