FullMatrix Class Reference

#include <full_matrix.h>

Inheritance diagram for FullMatrix:

Inheritance graph
[legend]
Collaboration diagram for FullMatrix:

Collaboration graph
[legend]
List of all members.

Public Member Functions

int FactoLU ()
 perform LU facotrization
 FullMatrix (int m, int n, double *alloc=NULL)
void MatProduct (FullMatrix &f, FullMatrix &g)
double & operator() (int i, int j)
 access to the coordinate i,j
int Solve (Vector *r)
 solve the system Ax=b where b is residu parameter and A is current class.
int zero ()
 ~FullMatrix ()

Private Attributes

bool preallocated

Detailed Description

Definition at line 54 of file full_matrix.h.


Constructor & Destructor Documentation

FullMatrix::FullMatrix ( int  m,
int  n,
double *  alloc = NULL 
) [inline]

Definition at line 63 of file full_matrix.h.

References MyMatrix< FullMatrix >::matrix, preallocated, and zero().

00063                                              :MyMatrix<FullMatrix>(m,n){
00064     preallocated = false;
00065 
00066     if (!alloc)
00067       matrix = new double[m*n];
00068     else{
00069       preallocated = true;
00070       matrix = alloc;
00071     }
00072 
00073     zero();
00074   };

Here is the call graph for this function:

FullMatrix::~FullMatrix (  )  [inline]

Definition at line 77 of file full_matrix.h.

References MyMatrix< FullMatrix >::matrix, and preallocated.

00077                {
00078     if (!preallocated)
00079       delete [] matrix;
00080   };


Member Function Documentation

int FullMatrix::FactoLU (  )  [inline]

perform LU facotrization

Reimplemented from MyMatrix< FullMatrix >.

Definition at line 86 of file full_matrix.h.

References MyMatrix< FullMatrix >::_m, MyMatrix< FullMatrix >::_n, factoLUFull(), FATAL, MyMatrix< FullMatrix >::matrix, and MyMatrix< FullMatrix >::pivot.

Referenced by FormeFaible< DomainA, DomainC, Dim >::BuildAtomsConstraintMatrix(), MyMethodFull< DomainA, DomainC, Dim >::BuildConstraintMatrix(), BelytschkoFull< DomainA, DomainC, Dim >::BuildConstraintMatrix(), and LeastSquare< DomainA, DomainC, Dim >::BuildLeastSquareMatrix().

00086                {
00087     if (_m!=_n){FATAL("FactoLU possible :) que pour matrice carree");}
00088     pivot = factoLUFull(matrix,_m);
00089     if (pivot==0)
00090       return -1;
00091     else 
00092       return 0;
00093   }

Here is the call graph for this function:

void FullMatrix::MatProduct ( FullMatrix f,
FullMatrix g 
) [inline]

Definition at line 106 of file full_matrix.h.

References MyMatrix< T >::m(), MyMatrix< FullMatrix >::matrix, MyMatrix< T >::matrix, Multiplication(), and MyMatrix< T >::n().

Referenced by CauchyBorn< T, Dim >::ComputeP().

00106                                                  {
00107     Multiplication(f.matrix,f.m(),f.n(),g.matrix,g.m(),g.n(),this->matrix);
00108   };

Here is the call graph for this function:

double& FullMatrix::operator() ( int  i,
int  j 
) [inline]

access to the coordinate i,j

Reimplemented from MyMatrix< FullMatrix >.

Definition at line 82 of file full_matrix.h.

References MyMatrix< FullMatrix >::_m, and MyMatrix< FullMatrix >::matrix.

00082                                  {
00083     return matrix[i+_m*j];
00084   }

int FullMatrix::Solve ( Vector residu  )  [inline]

solve the system Ax=b where b is residu parameter and A is current class.

Reimplemented from MyMatrix< FullMatrix >.

Definition at line 95 of file full_matrix.h.

References MyMatrix< FullMatrix >::_m, MyMatrix< FullMatrix >::_n, FATAL, Vector::GetVector(), MyMatrix< FullMatrix >::matrix, MyMatrix< FullMatrix >::pivot, and solveFullMatrix().

Referenced by MyMethodFull< DomainA, DomainC, Dim >::SolveConstraint(), FormeFaible< DomainA, DomainC, Dim >::SolveConstraint(), BelytschkoFull< DomainA, DomainC, Dim >::SolveConstraint(), and LeastSquare< DomainA, DomainC, Dim >::SolveLeastSquare().

00095                        {
00096     if (_m!=_n){FATAL("Solve possible :) que pour matrice carree");}
00097     solveFullMatrix(matrix,r->GetVector(),_m,pivot);
00098     return 0;
00099   }

Here is the call graph for this function:

int FullMatrix::zero (  )  [inline]

Definition at line 101 of file full_matrix.h.

References MyMatrix< FullMatrix >::_m, MyMatrix< FullMatrix >::_n, and MyMatrix< FullMatrix >::matrix.

Referenced by AverageOperator::AverageOperator(), FormeFaible< DomainA, DomainC, Dim >::BuildAtomsConstraintMatrix(), MyMethodFull< DomainA, DomainC, Dim >::BuildConstraintMatrix(), BelytschkoFull< DomainA, DomainC, Dim >::BuildConstraintMatrix(), FormeFaible< DomainA, DomainC, Dim >::BuildContinuConstraintMatrix(), ShapeMatrix< _Vec_, Dim >::buildLeastSquareMatrix(), FullMatrix(), MyMethodFull< DomainA, DomainC, Dim >::Init(), FormeFaible< DomainA, DomainC, Dim >::Init(), and BelytschkoFull< DomainA, DomainC, Dim >::Init().

00101             {
00102     memset(matrix,0,_m*_n*sizeof(double)); // mise a zero  
00103     return 0;
00104   }


Member Data Documentation

bool FullMatrix::preallocated [private]

Definition at line 108 of file full_matrix.h.

Referenced by FullMatrix(), and ~FullMatrix().


The documentation for this class was generated from the following file:
Generated on Fri Sep 7 13:13:18 2007 for LibMultiScale by  doxygen 1.5.2