1 #ifndef MATEMATICAMATRIX_H 2 #define MATEMATICAMATRIX_H 6 #include "MatematicaStruct.h" 15 data =
new double [NSize*NSize];
34 Matrice(
int NRow,
int NCol,
int NZed);
37 Matrice(
int ExtNRow,
int ExtNCol,
double *pointer);
47 Matrice(
double *M,
int Nr,
int Nc);
49 Matrice(
double Roll,
double Pitch,
double Yaw,
int NDim);
51 Matrice(
double *Axis,
double Angle,
int NDim);
55 bool Set(
int row,
int column,
double Val);
57 bool Add(
int row,
int col,
double Val);
67 void Apply(
double *Known,
double *UnKnown);
69 int Solve(
double *Known,
double *UnKnown);
73 void Shout(
const char *s, ... );
83 void getvalue(
int row,
int column,
double& returnvalue,
bool& success);
121 double Val(
int row,
int col);
123 double Val(
int row,
int col,
int zed);
156 #endif //MATEMATICA_H void FillGaussian5()
Fill the entries for the 5x5 Gauss blur.
int pNCol()
Number of columns.
void RandomFill(double Max)
Fill the entries randomly.
int Solve(double *Known, double *UnKnown)
Solve a system A|b = y.
int getNRow()
Return size.
void copymatrix(Matrice &source)
Copy matrix.
Matrice operator=(Matrice &)
Copy two matrices.
Geometrical operations on vectors.
void CopyOn(Matrice *B)
Copy on a matrix.
void FillDiffOperator(SPLINE Wg, int NDim)
Fill the entries of a differential operator.
void Mult(Matrice &A, Matrice &B)
Multiplication between two matrices.
Matrice operator*(Matrice &A)
Multiplies two matrices.
void ConvoluteMatrix2(double *Plot, int NGrid)
Convolute with a matrix.
double Det()
Computes the determinants.
void ConvoluteMatrix(double *Plot, int NGrid, int NDim, int IfMinImConv)
Convolute with a matrix.
void ConvoluteMatrix3(double *Plot, int NGrid)
Convolute with a matrix.
void Clear()
Set all the entries to zero.
void Normalize()
Normalize the matrix.
void Transpose()
Transpose the matrix.
void ConvoluteMatrix1(double *Plot, int NGrid)
Convolute with a matrix.
void Multiply(double Val)
Multiply by a scalar.
double Val(int row)
Returns a value in 1d.
void ConvoluteMatrix2MinImConv(double *Plot, int NGrid)
Convolute with a matrix.
void setNRow(int newNRow)
Set new size.
void settoproduct(Matrice &left, Matrice &right)
Set to product.
bool Add(int row, int col, double Val)
Add the value of the coefficient to the previous one.
void FillGaussian(double Sigma, double CutOff)
Fill the entries for the Gauss blur.
Matrice operator^(Matrice &) const
Tensor product?
Matrice computes the algebric operations on matrices.
bool Set(int row, int column, double Val)
Set a coefficient.
void Apply(double *Known, double *UnKnown)
Apply Ax = y.
int Size()
Size of Matrice.
Matrice operator+(Matrice &)
Sums two matrices.
int pNZed()
Number of zed.
int pNRow()
Number of rows.
void getvalue(int row, int column, double &returnvalue, bool &success)
Return value.
void FillCanny()
Fill the entries for the Canny edge detector.
void Print()
Print the entries.
void comparetoidentity()
Compare to identity.
double * data
Stored entries.
void Shout(const char *s,...)
Name of the last function called. For debugging.
Matrice(int newNSize)
creates a square Matrice
void ConvoluteMatrix1MinImConv(double *Plot, int NGrid)
Convolute with a matrix.