NumLinAlg.h
Go to the documentation of this file.
1 /* -*- mode:c++ -*- */
2 
16 #ifndef NUMLINALG_H__
17 #define NUMLINALG_H__
18 
19 #include <iosfwd>
20 #include <vector>
21 
22 namespace hippodraw {
23 
26  namespace Numeric {
27 
30 std::vector< double >
31 operator + ( const std::vector< double >& x, const std::vector< double >& y );
32 
35 std::vector< double >
36 operator - ( const std::vector< double >& x, const std::vector< double >& y );
37 
40 std::vector< double >
41 operator - ( const std::vector< double >& y );
42 
45 std::vector< std::vector< double > >
46 operator + ( const std::vector< std::vector< double > >&A,
47  const std::vector< std::vector< double > >&B );
48 
51 std::vector< std::vector< double > >
52 operator - ( const std::vector< std::vector< double > >&A,
53  const std::vector< std::vector< double > >&B );
54 
57 std::vector< double >
58 operator * ( double a, const std::vector< double >& x );
59 
62 std::vector< double >
63 operator / ( const std::vector< double >& x, double a );
64 
66 std::vector< std::vector< double > >
67 operator * ( double a, const std::vector< std::vector< double > > & A ) ;
68 
70 std::vector< std::vector< double> >
71 operator / ( const std::vector< std::vector< double> > & A, double a );
72 
74 std::vector< double >
75 operator * ( const std::vector< std::vector< double > > & A,
76  const std::vector< double > & x );
77 
79 std::vector< double >
80 operator * ( const std::vector< double > & x,
81  const std::vector< std::vector< double > > & A );
82 
84 std::vector< std::vector< double > >
85 operator * ( const std::vector< std::vector< double > >&A,
86  const std::vector< std::vector< double > >&B );
87 
89 double innerProduct( const std::vector< double > & a,
90  const std::vector< double > & b );
91 
93 std::vector< std::vector< double > >
94 outerProduct ( const std::vector< double > & a,
95  const std::vector< double > & b );
96 
98 double quadraticProduct( const std::vector< std::vector< double > > & A,
99  const std::vector< double > x );
100 
102 double norm( const std::vector< double > & a );
103 
107 int cholFactor( std::vector< std::vector< double > > & A );
108 
110 int cholBackSolve( const std::vector< std::vector< double > > & L,
111  std::vector< double > & x,
112  const std::vector< double > & b );
113 
116 int invertMatrix( const std::vector< std::vector< double > > & A,
117  std::vector< std::vector< double > > & Ainv );
118 
120 int eye( std::vector< std::vector< double > > & M, int n );
121 
123 int write( const std::vector< double > & x );
124 
126 int write( const std::vector< std::vector< double > > & A );
127 
129 int allocateMatrix( std::vector< std::vector< double > >& A, int m, int n );
130 
132 int allocateVector( std::vector< double >& x, int n );
133 
134  } // namespace Numeric
135 } // namespace hippodraw
136 
137 #endif

Generated for HippoDraw Class Library by doxygen