Eigen values in 3D.  
 More...
#include <JEigen3D.hh>
Eigen values in 3D. 
Definition at line 33 of file JEigen3D.hh.
 
◆ JEigenValues3D()
template<class T > 
  
  
      
        
          | JGEOMETRY3D::JEigenValues3D::JEigenValues3D  | 
          ( | 
          T |           __begin,  | 
         
        
           | 
           | 
          T |           __end ) | 
         
       
   | 
  
inline   | 
  
 
Constructor. 
- Parameters
 - 
  
    | __begin | begin of data  | 
    | __end | end of data  | 
  
   
Definition at line 43 of file JEigen3D.hh.
   45    {
   46      const JCenter3D center(__begin, __end);
   47        
   48      
   49        
   50      TMatrixDSym A(3);
   51 
   52      A = 0.0;
   53        
   54      for (T i = __begin; i != __end; ++i) {
   55        
   56        const double dx = center.getX() - i->getX();
   57        const double dy = center.getY() - i->getY();
   58        const double dz = center.getZ() - i->getZ();
   59          
   60        A(0,0) += (dx * dx);
   61        A(0,1) += (dx * dy);
   62        A(0,2) += (dx * dz);
   63        
   64        A(1,1) += (dy * dy);
   65        A(1,2) += (dy * dz);
   66        
   67        A(2,2) += (dz * dz);
   68      }
   69      
   70      A(1,0) = A(0,1);
   71      A(2,0) = A(0,2);
   72      A(2,1) = A(1,2);
   73 
   74      const TMatrixDSymEigen 
result(A);
 
   75 
   76      const TVectorD& u = 
result.GetEigenValues();
 
   77      const TMatrixD& V = 
result.GetEigenVectors();
 
   78 
   79      for (Int_t i = 0; i != u.GetNoElements(); ++i) {
   80        (*this)[u[i]] = JVector3D(V(0,i),
   81                                  V(1,i),
   82                                  V(2,i));
   83      }
   84    }
 
 
 
The documentation for this struct was generated from the following file: