TPSInterp.h
00001 /*
00002 ** TPSInterp.h
00003 ** 
00004 ** Made by Daniel Cervantes Cabrera
00005 ** Login 
00006 ** 
00007 ** Started on Mon Mar 24 18:27:36 2008 Daniel Cervantes Cabrera
00008 ** Last update Sat May 3 19:30:39 2008 Daniel Cervantes Cabrera
00009 */
00010 
00011 #ifndef TPSINTERP_H_
00012 # define TPSINTERP_H_
00013 
00014 #include 
00015 #include 
00016 #include 
00017 
00018 #include 
00019 #include 
00020 
00021 #include 
00022 
00023 
00024 namespace RBF{
00025 
00026 
00031 template
00032 class TPSInterp {
00033       
00034  public:
00035    
00036    RBF::TPS2 TPST;
00037   
00038   TPSInterp(){};      
00039   T operator()( LA::Point2dd );  
00040   void build(std::vector< LA::Point3dd > );
00041   
00042 
00043  private:
00044 
00045   void fillMatrixM();
00046   void fillMatrixP();
00047   void fillVectorU();
00048 
00049   
00050   std::vector points;  
00051   std::vector u;
00052   std::vector lambda;
00053   LA::Matrix M,P; 
00054   int N;
00055   
00056 
00057 };
00058 
00059 };
00060 
00061 #include "../../src/RBF/TPSInterp.cpp"
00062 
00063 #endif /* !TPSINTERP_H_ */