Class Matrix3D
- Namespace
- SearchAThing.Sci
- Assembly
- netcore-sci.dll
basic matrix3d with 3x3 double elements and operations to allow arithmetic and 3d linear equation resolution.
public class Matrix3D
- Inheritance
-
Matrix3D
- Inherited Members
Constructors
Matrix3D()
empty matrix
public Matrix3D()
Matrix3D(double[])
Init matrix using terms m00 m01 m02 - m10 m11 m12 - m20 m21 m22
public Matrix3D(double[] terms)
Parameters
terms
double[]
Properties
this[int, int]
indexed matrix component [row,col]
public double this[int r, int c] { get; }
Parameters
Property Value
Methods
Adjoint()
public Matrix3D Adjoint()
Returns
Cofactor()
Matrix of cofactors http://www.mathsisfun.com/algebra/matrix-inverse-minors-cofactors-adjugate.html
public Matrix3D Cofactor()
Returns
CopyVectorAsColumn(Vector3D, int)
public Matrix3D CopyVectorAsColumn(Vector3D v, int colIdx)
Parameters
Returns
CopyVectorAsRow(Vector3D, int)
public Matrix3D CopyVectorAsRow(Vector3D v, int rowIdx)
Parameters
Returns
Determinant()
Matrix determinant http://mathcentral.uregina.ca/QQ/database/QQ.09.06/h/suud1.html
public double Determinant()
Returns
EqualsTol(double, Matrix3D)
public bool EqualsTol(double tol, Matrix3D other)
Parameters
Returns
FromVectorsAsColumns(Vector3D, Vector3D, Vector3D)
public static Matrix3D FromVectorsAsColumns(Vector3D v1, Vector3D v2, Vector3D v3)
Parameters
Returns
FromVectorsAsRows(Vector3D, Vector3D, Vector3D)
public static Matrix3D FromVectorsAsRows(Vector3D v1, Vector3D v2, Vector3D v3)
Parameters
Returns
Inverse()
public Matrix3D Inverse()
Returns
Minor()
public Matrix3D Minor()
Returns
Solve(Vector3D)
Solve linear system of eq represented by this matrix defined n known term. Ax = B -> x = A^(-1)B
public Vector3D Solve(Vector3D n)
Parameters
n
Vector3D
Returns
Solve(double, double, double)
Solve linear system of eq represented by this matrix defined (a,b,c) known terms.
public Vector3D Solve(double a, double b, double c)
Parameters
Returns
Transpose()
swap row, cols
public Matrix3D Transpose()
Returns
Operators
operator +(Matrix3D, Matrix3D)
sum
public static Matrix3D operator +(Matrix3D a, Matrix3D b)
Parameters
Returns
operator /(Matrix3D, double)
scalar div
public static Matrix3D operator /(Matrix3D m, double s)
Parameters
Returns
operator /(double, Matrix3D)
scalar div
public static Matrix3D operator /(double s, Matrix3D m)
Parameters
Returns
operator *(Matrix3D, Vector3D)
matrix * vector as column -> vector 3x3 x 3x1 -> 3x1
public static Vector3D operator *(Matrix3D m, Vector3D v)
Parameters
Returns
operator *(Matrix3D, double)
scalar multiply
public static Matrix3D operator *(Matrix3D m, double s)
Parameters
Returns
operator *(Vector3D, Matrix3D)
vector as row * matrix -> vector 1x3 * 3x3 -> 1x3
public static Vector3D operator *(Vector3D v, Matrix3D m)
Parameters
Returns
operator *(double, Matrix3D)
scalar multiply
public static Matrix3D operator *(double s, Matrix3D m)
Parameters
Returns
operator -(Matrix3D, Matrix3D)
sub
public static Matrix3D operator -(Matrix3D a, Matrix3D b)
Parameters
Returns
operator -(Matrix3D)
neg
public static Matrix3D operator -(Matrix3D m)
Parameters
m
Matrix3D