HG-MD  1
Public Member Functions | Public Attributes | Friends
MatrixSymmetric3D Class Reference

Implementation of a 3D symmetric matrix. More...

#include <Matrix.h>

List of all members.

Public Member Functions

 MatrixSymmetric3D (void)
 MatrixSymmetric3D (const Mdouble xx, const Mdouble xy, const Mdouble xz, const Mdouble yy, const Mdouble yz, const Mdouble zz)
void set_zero ()
Mdouble trace () const
MatrixSymmetric3D operator+ (const MatrixSymmetric3D &A) const
MatrixSymmetric3D operator- (const MatrixSymmetric3D &A) const
MatrixSymmetric3D operator+ (const Mdouble A) const
MatrixSymmetric3D operator- (const Mdouble A) const
MatrixSymmetric3D operator* (const Mdouble A) const
MatrixSymmetric3D operator/ (const Mdouble A) const
MatrixSymmetric3Doperator+= (const MatrixSymmetric3D &A)
MatrixSymmetric3Doperator-= (const MatrixSymmetric3D &A)
MatrixSymmetric3Doperator/= (const Mdouble a)

Public Attributes

Mdouble XX
Mdouble XY
Mdouble XZ
Mdouble YY
Mdouble YZ
Mdouble ZZ

Friends

std::ostream & operator<< (std::ostream &os, const MatrixSymmetric3D &A)
std::istream & operator>> (std::istream &is, MatrixSymmetric3D &A)
MatrixSymmetric3D square (const MatrixSymmetric3D &A)
MatrixSymmetric3D sqrt (const MatrixSymmetric3D &A)

Detailed Description

Implementation of a 3D symmetric matrix.


Constructor & Destructor Documentation

Referenced by operator*(), operator+(), operator-(), and operator/().

{}
MatrixSymmetric3D::MatrixSymmetric3D ( const Mdouble  xx,
const Mdouble  xy,
const Mdouble  xz,
const Mdouble  yy,
const Mdouble  yz,
const Mdouble  zz 
) [inline]

References XX, XY, XZ, YY, YZ, and ZZ.

                {       
                        XX = xx; XY = xy; XZ = xz;
                        YY = yy; YZ = yz;
                        ZZ = zz;
                }

Member Function Documentation

MatrixSymmetric3D MatrixSymmetric3D::operator* ( const Mdouble  A) const [inline]

References MatrixSymmetric3D(), XX, XY, XZ, YY, YZ, and ZZ.

        { 
                return MatrixSymmetric3D(XX * A, XY * A, XZ * A, 
                                         YY * A, YZ * A, ZZ * A); 
        }
MatrixSymmetric3D MatrixSymmetric3D::operator+ ( const MatrixSymmetric3D A) const [inline]

References MatrixSymmetric3D(), XX, XY, XZ, YY, YZ, and ZZ.

        { 
                return MatrixSymmetric3D(XX + A.XX, XY + A.XY, XZ + A.XZ, 
                                                                                YY + A.YY, YZ + A.YZ, ZZ + A.ZZ); 
        }
MatrixSymmetric3D MatrixSymmetric3D::operator+ ( const Mdouble  A) const [inline]

References MatrixSymmetric3D(), XX, XY, XZ, YY, YZ, and ZZ.

        { 
                return MatrixSymmetric3D(XX + A, XY + A, XZ + A, 
                                         YY + A, YZ + A, ZZ + A); 
        }
MatrixSymmetric3D& MatrixSymmetric3D::operator+= ( const MatrixSymmetric3D A) [inline]

References XX, XY, XZ, YY, YZ, and ZZ.

        {
                XX += A.XX;
                XY += A.XY;
                XZ += A.XZ;
                YY += A.YY;
                YZ += A.YZ;
                ZZ += A.ZZ;
                return *this;
        }
MatrixSymmetric3D MatrixSymmetric3D::operator- ( const MatrixSymmetric3D A) const [inline]

References MatrixSymmetric3D(), XX, XY, XZ, YY, YZ, and ZZ.

                { 
                return MatrixSymmetric3D(XX - A.XX, XY - A.XY, XZ - A.XZ, 
                                                                                YY - A.YY, YZ - A.YZ, ZZ - A.ZZ); 
                }
MatrixSymmetric3D MatrixSymmetric3D::operator- ( const Mdouble  A) const [inline]

References MatrixSymmetric3D(), XX, XY, XZ, YY, YZ, and ZZ.

        { 
                return MatrixSymmetric3D(XX - A, XY - A, XZ - A, 
                                         YY - A, YZ - A, ZZ - A); 
        }
MatrixSymmetric3D& MatrixSymmetric3D::operator-= ( const MatrixSymmetric3D A) [inline]

References XX, XY, XZ, YY, YZ, and ZZ.

        {
                XX -= A.XX;
                XY -= A.XY;
                XZ -= A.XZ;
                YY -= A.YY;
                YZ -= A.YZ;
                ZZ -= A.ZZ;
                return *this;
        }
MatrixSymmetric3D MatrixSymmetric3D::operator/ ( const Mdouble  A) const [inline]

References MatrixSymmetric3D(), XX, XY, XZ, YY, YZ, and ZZ.

        { 
                return MatrixSymmetric3D(XX / A, XY / A, XZ / A, 
                                         YY / A, YZ / A, ZZ / A); 
        }
MatrixSymmetric3D& MatrixSymmetric3D::operator/= ( const Mdouble  a) [inline]

References XX, XY, XZ, YY, YZ, and ZZ.

        {
                XX /= a;
                XY /= a;
                XZ /= a;
                YY /= a;
                YZ /= a;
                ZZ /= a;
                return *this;
        }
void MatrixSymmetric3D::set_zero ( ) [inline]

References XX, XY, XZ, YY, YZ, and ZZ.

                {       
                XX = XY = XZ = YY = YZ = ZZ = 0.0;
                }
Mdouble MatrixSymmetric3D::trace ( ) const [inline]

References XX, YY, and ZZ.

        {       
                return (XX+YY+ZZ)/3;
        }

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const MatrixSymmetric3D A 
) [friend]
        {
                os << A.XX << ' ' << A.XY << ' ' << A.XZ << " " << A.YY << ' ' << A.YZ << " " << A.ZZ;
                return os;
        }
std::istream& operator>> ( std::istream &  is,
MatrixSymmetric3D A 
) [friend]
        {
                is >> A.XX >> A.XY >> A.XZ >> A.YY >> A.YZ >> A.ZZ;
                return is;
        }
MatrixSymmetric3D sqrt ( const MatrixSymmetric3D A) [friend]
        {
                return MatrixSymmetric3D(sqrt(A.XX), sqrt(A.XY), sqrt(A.XZ), sqrt(A.YY), sqrt(A.YZ), sqrt(A.ZZ));
        }
MatrixSymmetric3D square ( const MatrixSymmetric3D A) [friend]
        {
                return MatrixSymmetric3D(sqr(A.XX), sqr(A.XY), sqr(A.XZ), sqr(A.YY), sqr(A.YZ), sqr(A.ZZ));
        }

Member Data Documentation


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines