Main Page   Modules   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

CVector Class Reference

#include <hyp.math.vector.h>

Inheritance diagram for CVector::

IMatrix List of all members.

Common Functions

See the Hyperion Pattern.

 CVector (hyp_ker::IUnknown *)
virtual ~CVector ()
virtual hyp_DECLARE_IUNKNOWN
hyp_ker::com_result 
NondelegatingQueryInterface (const hyp_ker::hypIID &, void **)
hyp_ker::com_result Init ()
void FinalRelease ()
hyp_ker::com_result CreateInstance (hyp_ker::IUnknown *,hyp_ker::CUnknown **)

Public Methods

IMatrix Implementation
virtual void Transpose (IMatrix *)
virtual void SetMatrix (IMatrix *)
virtual void Multiply (const IMatrix *, IMatrix *)
virtual void Extract (const t_size &,const t_size &,const t_size &, const t_size &, IMatrix *)
virtual void IncrValue (const t_size &,const t_size &,const t_real &)
virtual void SetDim (const t_size &, const t_size &, const t_real &)
virtual void SetValue (const t_size &, const t_size &, const t_real &)
virtual t_real GetValue (const t_size &,const t_size &) const
virtual void SetMatrix (const t_real &)
virtual t_size GetNbRow () const
virtual t_size GetNbColumn () const
virtual void Multiply (const t_real &)
virtual void Substract (const IMatrix *)
virtual void Invert ()
virtual void Add (const IMatrix *)
virtual bool IsSymmetrical (void)
virtual void EraseRow (const t_size &)
virtual void EraseColumn (const t_size &)
virtual void EraseRowsAndColumns (const t_mask_array &, const t_mask_array &)

Detailed Description

CVector is a implementation of the IMatrix which is used in specific cases.
CLSID
Here are the Class Indetifiers (CLSID) supported by the class:
Supported Interfaces
Here is the interfaces which are supported by the component.

    hyp_ker::com_result CVector::NondelegatingQueryInterface(const hyp_ker::hypIID& iid,void** ppv)
    {
            if(iid==IID_hypIMathMatrix) {
                    return FinishQI(static_cast<IMatrix*>(this),ppv);
            } else {
                    return CUnknown::NondelegatingQueryInterface(iid,ppv);
            }
    }
    //DOXYTAG
Implementation Details
CVector has been crated to manage specially the huge unidimentionnal matrices (i.e vectors) which characterize the loading conditions or the displacemnts of the nodes. The component uses the Mat Library. See MatLib for more information.


Member Function Documentation

void CVector::Add const IMatrix *   B [virtual]
 

Adds the Matrix B to the Matrix A. A+=B.

Parameters:
B   Matrix B

Reimplemented from IMatrix.

virtual void CVector::EraseColumn const t_size &   X [inline, virtual]
 

Erases one of the columns of the Matrix A.

Parameters:
X   Number of the erased column

Reimplemented from IMatrix.

virtual void CVector::EraseRow const t_size &   Y [inline, virtual]
 

Erases one of the rows of the Matrix A.

Parameters:
Y   Number of the erased row

Reimplemented from IMatrix.

virtual void CVector::EraseRowsAndColumns const t_mask_array &   RowMask,
const t_mask_array &   ColumnMask
[inline, virtual]
 

Erases some of the columns and the rows of the Matrix A.

Parameters:
ColumnMask   Mask indicates which column must be erased. If ColumnMask={1,0,0,1}, the Column number 0 and 3 must be erased.
RowMask   Mask indicates which row must be erased

Reimplemented from IMatrix.

void CVector::Extract const t_size &   MinX,
const t_size &   MaxX,
const t_size &   MinY,
const t_size &   MaxY,
IMatrix *   B
[virtual]
 

Extracts some elements of the matrix A to the Matrix B. The elements are delimited by a square defined itself by four coordinates. The boundaries of the square are extracted as well.

Parameters:
MinX   Lower column extracted
MaxX   Upper column extracted
MinY   Lower row extracted
MaxY   Upper row extracted
B   Matrix B
Invariant:
MinX<=MaxX and MinY<=MaxY

Reimplemented from IMatrix.

t_size CVector::GetNbColumn   const [virtual]
 

Gets the number of columns of the Matrix A.

Returns:
Number of columns of the matrix

Reimplemented from IMatrix.

t_size CVector::GetNbRow   const [virtual]
 

Gets the number of rows of the Matrix A.

Returns:
Number of rows of the matrix

Reimplemented from IMatrix.

t_real CVector::GetValue const t_size &   X,
const t_size &   Y
const [virtual]
 

Retrieves one of the components of the Matrix A. Scalar=A[X][Y].

Parameters:
X   Column of the component
Y   Row of the component
Returns:
Value of the component of the matrix

Reimplemented from IMatrix.

void CVector::IncrValue const t_size &   X,
const t_size &   Y,
const t_real &   Scalar
[virtual]
 

Increments one of the components of the Matrix A. A[X][Y]+=Scalar.

Parameters:
Column   of the component
Row   of the component
Scalar   Real from which the component of the matrix is increased.

Reimplemented from IMatrix.

void CVector::Invert   [virtual]
 

Inverts the Matrix A. A=A-1.

Reimplemented from IMatrix.

virtual bool CVector::IsSymmetrical void   [inline, virtual]
 

Ckecks whether the Matrix A is symetric. A.Transpose(A)==Identity.

Reimplemented from IMatrix.

void CVector::Multiply const t_real &   Scalar [virtual]
 

Multiplies all the component of the Matrix A by a scalar. A*=Scalar.

Parameters:
Scalar   Real which multiplies all the components of the matrix

Reimplemented from IMatrix.

void CVector::Multiply const IMatrix *   B,
IMatrix *   C
[virtual]
 

Multiplies two Matrices and stockes the result in another Matrix. A*B=C.

Parameters:
B   Matrix B
Matrix   C

Reimplemented from IMatrix.

void CVector::SetDim const t_size &   Column,
const t_size &   Row,
const t_real &   Scalar
[virtual]
 

Sets the dimension of the matrix A.

Parameters:
Column   Number of columns
Row   Number of rows
Scalar   Real which is used to initialize all the components of the matrix after its size has been changed.

Reimplemented from IMatrix.

void CVector::SetMatrix const t_real &   Scalar [virtual]
 

Initializes all the components of the matrix to a same value. A=Scalar.

Parameters:
Scalar   Real which uses to initializes the components of the matrix

Reimplemented from IMatrix.

void CVector::SetMatrix IMatrix *   B [virtual]
 

B=A.

Parameters:
B   Matrix B

Reimplemented from IMatrix.

void CVector::SetValue const t_size &   X,
const t_size &   Y,
const t_real &   Scalar
[virtual]
 

Sets one of the components of the Matrix A. A[X][Y]=Scalar.

Parameters:
X   Column of the component
an Y Row of the component
Parameters:
Scalar   Real from which the component of the matrix is initialized

Reimplemented from IMatrix.

void CVector::Substract const IMatrix *   B [virtual]
 

Substracts the Matrix A by the Matrix B. A-=B.

Parameters:
Matrix   B

Reimplemented from IMatrix.

void CVector::Transpose IMatrix *   B [virtual]
 

Transposes the Matrix A and stocke the result in the Matrix B. B=Transpose(A).

Parameters:
B   Matrix B

Reimplemented from IMatrix.


The documentation for this class was generated from the following files:
Top of Page
written by Pierre Rebours © 2000-2001. Terms of Use.