1 #ifndef EMM_BlockMassMatrix_H 2 #define EMM_BlockMassMatrix_H 69 inline static SP::EMM_BlockMassMatrix
New() {
144 product(n,incX,alpha,x,beta,y);
180 const tReal* y)
const;
195 const tReal* y)
const;
222 "EMM_BlockMassMatrix::product(beta,X,alpha,Y)",
230 "EMM_BlockMassMatrix::product(beta,X,alpha,Y)",
238 product(nX/3,3,alpha,&x[0],beta,&y[0]);
258 "EMM_BlockMatrix::product(beta,X,Y)",
266 product(nX/3,3,alpha,&x[0],0.,&y[0]);
279 "EMM_BlockMassMatrix::product(X,Y)",
288 product(nX/3,3,1.,&x[0],0.,&y[0]);
SP::MATH_Vector mB
Definition: EMM_BlockMassMatrix.h:37
virtual ~EMM_BlockMassMatrix(void)
destroy
Definition: EMM_BlockMassMatrix.cpp:43
static SP::EMM_BlockMassMatrix New()
create a mass matrix
Definition: EMM_BlockMassMatrix.h:69
virtual tULLInt getMemorySize() const
return the memory size in byte
Definition: EMM_BlockMassMatrix.h:115
virtual tUIndex getColumnsNumber() const
get the columns number of the matrix
Definition: EMM_BlockMassMatrix.h:101
static const tDimension Y
Definition: EMM_Object.h:34
SP::MATH_Vector mY
Definition: EMM_BlockMassMatrix.h:37
virtual void product(const tReal &alpha, const MATH_Vector &x, MATH_Vector &y) const
Y=alpha.T.x where T is this.
Definition: EMM_BlockMassMatrix.h:248
This class describes a general matrix interface used in solver.
Definition: MATH_Matrix.h:20
static const tDimension X
Definition: EMM_Object.h:33
virtual void product(const tUIndex &n, const tReal &alpha, const tUSInt &incX, const tReal *x, const tReal &beta, const tUSInt &incY, tReal *y) const
y:=alpha T . x +beta y where T is this
Definition: EMM_BlockMassMatrix.h:138
tReal symmetricDot(const tUIndex &n, const tDimension &dim, const tReal *x, const tReal *y) const
Definition: EMM_BlockMassMatrix.cpp:90
#define tUSInt
Definition: types.h:28
#define tBoolean
Definition: types.h:139
virtual void setSize(const tUIndex &nRows, const tUIndex &nCols)
set the size of the matrix
Definition: EMM_MassMatrix.h:110
tString toString() const
return the string associated to the integer
Definition: CORE_Integer.h:106
virtual tBoolean solve(MATH_Solver &solver, EMM_RealField &B)
sole AX=B thanks to the solver
Definition: EMM_BlockMassMatrix.cpp:950
#define tDimension
Definition: EMM_Types.h:10
virtual void product(const MATH_Vector &x, MATH_Vector &y) const
b=T.x where T is this
Definition: EMM_BlockMassMatrix.h:274
EMM_BlockMassMatrix(void)
create
Definition: EMM_BlockMassMatrix.cpp:11
virtual tString toString() const
return the string representatio of the class
Definition: EMM_BlockMassMatrix.cpp:992
virtual SP::MATH_Matrix NewInstance() const
return a share pointer to a new instance of this
Definition: EMM_BlockMassMatrix.h:62
virtual tUIndex getColumnsNumber() const
get the columns number of the matrix
Definition: EMM_MassMatrix.h:204
virtual void product(const tReal &alpha, const MATH_Vector &x, const tReal &beta, MATH_Vector &y) const
y:=alpha. T . x + beta y where T is this
Definition: EMM_BlockMassMatrix.h:216
this class describes the exceptions raised for CORE package
Definition: CORE_Exception.h:15
SP_OBJECT(EMM_BlockMassMatrix)
This interface class describes the mass matrix where is the Q1 function with is 1 on the point i an...
Definition: EMM_MassMatrix.h:23
SP::MATH_Vector mW
Definition: EMM_BlockMassMatrix.h:37
virtual void setSize(const tUIndex &nRows, const tUIndex &nCols)
set the number of points in all directions
Definition: EMM_BlockMassMatrix.h:84
DEFINE_SVPTR(EMM_BlockMassMatrix)
This class describes a masked vector.
Definition: MATH_Vector.h:16
virtual tUIndex getRowsNumber() const
get the rows number of the matrix
Definition: EMM_BlockMassMatrix.h:95
tBoolean isSymmetric(const tReal &eps, const MATH_Vector &w) const
return true if the matrix is symmetric
Definition: MATH_Matrix.cpp:5
virtual tUIndex getSize() const =0
get the utile size of the vector
#define tUIndex
Definition: types.h:126
This class describes a real array.
Definition: EMM_RealArray.h:16
virtual void setSize(const tUIndex &n)=0
set the size of the vector
This class describes a solver of Ax=b.
Definition: MATH_Solver.h:18
static SP::MATH_ArrayVector New()
return a share pointer of a vector based on CORE_RealArray
Definition: MATH_ArrayVector.h:45
virtual tBoolean isSymmetric() const
return true if the matrix is symmetric
Definition: EMM_BlockMassMatrix.h:123
#define tString
Definition: types.h:135
const tUSInt & getBlockSize() const
get the block size
Definition: EMM_MassMatrix.h:158
#define tULLInt
Definition: types.h:45
This class describes a real field.
Definition: EMM_RealField.h:21
virtual tULLInt getMemorySize() const
return the memory size in byte
Definition: EMM_MassMatrix.h:169
This class describes the mass matrix where is the Q1 function which is 1 on the point i and 0 other...
Definition: EMM_BlockMassMatrix.h:26
#define tReal
Definition: types.h:118
DEFINE_SPTR(EMM_BlockMassMatrix)
virtual tUIndex getRowsNumber() const
get the rows number of the matrix
Definition: EMM_MassMatrix.h:198
class Free introduced for deleting a smart pointer
Definition: CORE_Object.h:141