Matrix3By3Symmetric Structure 
Namespace: AGI.Foundation.Coordinates
The Matrix3By3Symmetric type exposes the following members.
Name  Description  

Matrix3By3Symmetric 
Initializes this instance as a symmetrical matrix constructed
from the given symmetrical or nearly symmetrical Matrix3By3.
Mxy and Myx of this matrix will be equal to the average Mxy and Myx of the given matrix.

Name  Description  

Identity 
Gets a Matrix3By3Symmetric representing an identity transformation.
 
IsUndefined 
Gets a value indicating whether any of the matrix values are NaN.
 
Item 
Accesses the matrix elements using zerobased indexing.
 
M11 
Gets the element in the first row, first column.
 
M12 
Gets the element in the first row, second column.
 
M13 
Gets the element in the first row, third column.
 
M21 
Gets the element in the second row, first column.
 
M22 
Gets the element in the second row, second column.
 
M23 
Gets the element in the second row, third column.
 
M31 
Gets the element in the third row, first column.
 
M32 
Gets the element in the third row, second column.
 
M33 
Gets the element in the third row, third column.
 
Undefined 
Gets a Matrix3By3Symmetric with elements of NaN.
 
Zero 
Gets a Matrix3By3Symmetric representing the zero matrix.

Name  Description  

Add(Matrix3By3) 
Adds a matrix to this matrix.
 
Add(Matrix3By3Symmetric) 
Adds a matrix to this matrix.
 
Determinant 
Calculates the determinant of the matrix.
 
DiagonalMatrix(Cartesian) 
Forms a diagonal matrix from the input vector.
 
DiagonalMatrix(UnitCartesian) 
Forms a diagonal matrix from the input unit vector.
 
DiagonalMatrix(Double, Double, Double) 
Forms a diagonal matrix from the input elements.
 
EigenDecomposition 
Determines the eigenvectors and eigenvalues of the matrix.
The eigenvalues appear in ascending order (smallest to largest) down the diagonal of the
Values matrix.
 
Equals(Object) 
Indicates whether another object is exactly equal to this instance.
(Overrides ValueTypeEquals(Object).)  
Equals(Matrix3By3) 
Indicates whether another instance of this type is exactly equal to this instance.
 
Equals(Matrix3By3Symmetric) 
Indicates whether another instance of this type is exactly equal to this instance.
 
EqualsEpsilon 
Returns true if all of the elements of this matrix are within epsilon
of the same elements of the specified matrix. That is, in order for the matrices to be
considered equal (and for this function to return true), the absolute value of the
difference between each of their elements must be less than or equal to epsilon.
 
FrobeniusNorm 
Computes the Frobenius norm of the matrix.
 
FrobeniusNormSquared 
Computes the square of the Frobenius norm of the matrix.
 
FromLowerTriangular(Matrix3By3) 
Forms a symmetric matrix from the lower triangular elements of the provided matrix.
 
FromLowerTriangular(Double, Double, Double, Double, Double, Double) 
Forms a symmetric matrix from the lower triangular elements.
 
FromUpperTriangular(Matrix3By3) 
Forms a symmetric matrix from the upper triangular elements of the provided matrix.
 
FromUpperTriangular(Double, Double, Double, Double, Double, Double) 
Forms a symmetric matrix from the upper triangular elements.
 
GetHashCode 
Returns a hash code for this instance, which is suitable for use in hashing algorithms and data structures like a hash table.
(Overrides ValueTypeGetHashCode.)  
GetType  Gets the Type of the current instance. (Inherited from Object.)  
Invert 
Inverts the matrix.
 
Multiply(Double) 
Multiplies this matrix by a scalar.
 
Multiply(Cartesian) 
Forms a new Cartesian vector as the product of this 3by3 matrix and the provided Cartesian vector.
 
Multiply(Matrix3By3) 
Multiplies this matrix by a matrix.
 
Multiply(Matrix3By3Symmetric) 
Multiplies this matrix by a matrix.
 
Subtract(Matrix3By3) 
Subtracts a matrix from this matrix.
 
Subtract(Matrix3By3Symmetric) 
Subtracts a matrix from this matrix.
 
ToString  Returns the fully qualified type name of this instance. (Inherited from ValueType.)  
Transpose 
Transposes the matrix.

Name  Description  

Addition(Matrix3By3Symmetric, Matrix3By3) 
Adds a matrix to this matrix.
 
Addition(Matrix3By3Symmetric, Matrix3By3Symmetric) 
Adds a matrix to this matrix.
 
Equality 
Returns if the two instances are exactly equal.
 
Inequality 
Returns if the two instances are not exactly equal.
 
Multiply(Double, Matrix3By3Symmetric) 
Multiplies a scalar by a matrix.
 
Multiply(Matrix3By3Symmetric, Cartesian) 
Multiplies the 3by3 matrix by the Cartesian vector.
 
Multiply(Matrix3By3Symmetric, Matrix3By3) 
Multiplies the left matrix by the right matrix.
 
Multiply(Matrix3By3Symmetric, Matrix3By3Symmetric) 
Multiplies the left matrix by the right matrix.
 
Multiply(Matrix3By3Symmetric, Double) 
Multiplies a matrix by a scalar.
 
Subtraction(Matrix3By3Symmetric, Matrix3By3) 
Subtracts the second matrix from the first.
 
Subtraction(Matrix3By3Symmetric, Matrix3By3Symmetric) 
Subtracts the second matrix from the first.
