Class CommonOps_FDF3


  • public class CommonOps_FDF3
    extends java.lang.Object

    Common matrix operations for fixed sized matrices which are 3 x 3 or 3 element vectors.

    DO NOT MODIFY. Automatically generated code created by GenerateCommonOps_DDF

    • Constructor Summary

      Constructors 
      Constructor Description
      CommonOps_FDF3()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static void add​(org.ejml.data.FMatrix3 a, org.ejml.data.FMatrix3 b, org.ejml.data.FMatrix3 c)
      Performs the following operation:

      c = a + b
      ci = ai + bi
      static void add​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c = a + b
      cij = aij + bij
      static void addEquals​(org.ejml.data.FMatrix3 a, org.ejml.data.FMatrix3 b)
      Performs the following operation:

      a = a + b
      ai = ai + bi
      static void addEquals​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b)
      Performs the following operation:

      a = a + b
      aij = aij + bij
      static void changeSign​(org.ejml.data.FMatrix3 a)
      Changes the sign of every element in the vector.

      ai = -ai
      static void changeSign​(org.ejml.data.FMatrix3x3 a)
      Changes the sign of every element in the matrix.

      aij = -aij
      static boolean cholL​(org.ejml.data.FMatrix3x3 A)
      Performs a lower Cholesky decomposition of matrix 'A' and stores result in A.
      static boolean cholU​(org.ejml.data.FMatrix3x3 A)
      Performs an upper Cholesky decomposition of matrix 'A' and stores result in A.
      static float det​(org.ejml.data.FMatrix3x3 mat)
      Computes the determinant using minor matrices.
      WARNING: Potentially less stable than using LU decomposition.
      static void diag​(org.ejml.data.FMatrix3x3 input, org.ejml.data.FMatrix3 out)
      Extracts all diagonal elements from 'input' and places them inside the 'out' vector.
      static void divide​(org.ejml.data.FMatrix3 a, float alpha)
      Performs an in-place element by element scalar division.
      static void divide​(org.ejml.data.FMatrix3 a, float alpha, org.ejml.data.FMatrix3 b)
      Performs an element by element scalar division.
      static void divide​(org.ejml.data.FMatrix3x3 a, float alpha)
      Performs an in-place element by element scalar division.
      static void divide​(org.ejml.data.FMatrix3x3 a, float alpha, org.ejml.data.FMatrix3x3 b)
      Performs an element by element scalar division.
      static float dot​(org.ejml.data.FMatrix3 a, org.ejml.data.FMatrix3 b)
      Performs the vector dot product:

      c = a * b

      c ≥ ∑k=1:n { bk * ak }
      static void elementDiv​(org.ejml.data.FMatrix3 a, org.ejml.data.FMatrix3 b)
      Performs an element by element division operation:

      ai = ai / bi
      static void elementDiv​(org.ejml.data.FMatrix3 a, org.ejml.data.FMatrix3 b, org.ejml.data.FMatrix3 c)
      Performs an element by element division operation:

      ci = ai / bi
      static void elementDiv​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b)
      Performs an element by element division operation:

      aij = aij / bij
      static void elementDiv​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs an element by element division operation:

      cij = aij / bij
      static float elementMax​(org.ejml.data.FMatrix3 a)
      Returns the value of the element in the vector that has the largest value.

      Max{ ai } for all i
      static float elementMax​(org.ejml.data.FMatrix3x3 a)
      Returns the value of the element in the matrix that has the largest value.

      Max{ aij } for all i and j
      static float elementMaxAbs​(org.ejml.data.FMatrix3 a)
      Returns the absolute value of the element in the vector that has the largest absolute value.

      Max{ |ai| } for all i
      static float elementMaxAbs​(org.ejml.data.FMatrix3x3 a)
      Returns the absolute value of the element in the matrix that has the largest absolute value.

      Max{ |aij| } for all i and j
      static float elementMin​(org.ejml.data.FMatrix3 a)
      Returns the value of the element in the vector that has the minimum value.

      Min{ ai } for all
      static float elementMin​(org.ejml.data.FMatrix3x3 a)
      Returns the value of the element in the matrix that has the minimum value.

      Min{ aij } for all i and j
      static float elementMinAbs​(org.ejml.data.FMatrix3 a)
      Returns the absolute value of the element in the vector that has the smallest absolute value.

      Min{ |ai| } for all i
      static float elementMinAbs​(org.ejml.data.FMatrix3x3 a)
      Returns the absolute value of the element in the matrix that has the smallest absolute value.

      Min{ |aij| } for all i and j
      static void elementMult​(org.ejml.data.FMatrix3 a, org.ejml.data.FMatrix3 b)
      Performs an element by element multiplication operation:

      ai = ai * bi
      static void elementMult​(org.ejml.data.FMatrix3 a, org.ejml.data.FMatrix3 b, org.ejml.data.FMatrix3 c)
      Performs an element by element multiplication operation:

      ci = ai * bj
      static void elementMult​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b)
      Performs an element by element multiplication operation:

      aij = aij * bij
      static void elementMult​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs an element by element multiplication operation:

      cij = aij * bij
      static org.ejml.data.FMatrix3 extractColumn​(org.ejml.data.FMatrix3x3 a, int column, org.ejml.data.FMatrix3 out)
      Extracts the column from the matrix a.
      static org.ejml.data.FMatrix3 extractRow​(org.ejml.data.FMatrix3x3 a, int row, org.ejml.data.FMatrix3 out)
      Extracts the row from the matrix a.
      static void fill​(org.ejml.data.FMatrix3 a, float v)
      Sets every element in the vector to the specified value.

      ai = value
      static void fill​(org.ejml.data.FMatrix3x3 a, float v)
      Sets every element in the matrix to the specified value.

      aij = value
      static boolean invert​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 inv)
      Inverts matrix 'a' using minor matrices and stores the results in 'inv'.
      static void mult​(float alpha, org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c = α * a * b

      cij = α ∑k=1:n { aik * bkj}
      static void mult​(org.ejml.data.FMatrix3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3 c)
      Performs vector to matrix multiplication:

      c = a * b

      cj = ∑k=1:n { bk * akj }
      static void mult​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3 b, org.ejml.data.FMatrix3 c)
      Performs matrix to vector multiplication:

      c = a * b

      ci = ∑k=1:n { aik * bk}
      static void mult​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c = a * b

      cij = ∑k=1:n { aik * bkj}
      static void multAdd​(float alpha, org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c += α * a * b

      cij += α ∑k=1:n { aik * bkj}
      static void multAdd​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c += a * b

      cij += ∑k=1:n { aik * bkj}
      static void multAddOuter​(float alpha, org.ejml.data.FMatrix3x3 A, float beta, org.ejml.data.FMatrix3 u, org.ejml.data.FMatrix3 v, org.ejml.data.FMatrix3x3 C)
      C = αA + βu*vT
      static void multAddTransA​(float alpha, org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c += α * aT * b

      cij += α * ∑k=1:n { aki * bkj}
      static void multAddTransA​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c += aT * b

      cij += ∑k=1:n { aki * bkj}
      static void multAddTransAB​(float alpha, org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c += α*aT * bT
      cij += α*∑k=1:n { aki * bjk}
      static void multAddTransAB​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c += aT * bT
      cij += ∑k=1:n { aki * bjk}
      static void multAddTransB​(float alpha, org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c += α * a * bT
      cij += α*∑k=1:n { aik * bjk}
      static void multAddTransB​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c += a * bT
      cij += ∑k=1:n { aik * bjk}
      static void multTransA​(float alpha, org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c = α * aT * b

      cij = α * ∑k=1:n { aki * bkj}
      static void multTransA​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c = aT * b

      cij = ∑k=1:n { aki * bkj}
      static void multTransAB​(float alpha, org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c = α*aT * bT
      cij = α*∑k=1:n { aki * bjk}
      static void multTransAB​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c = aT * bT
      cij = ∑k=1:n { aki * bjk}
      static void multTransB​(float alpha, org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c = α * a * bT
      cij = α*∑k=1:n { aik * bjk}
      static void multTransB​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c = a * bT
      cij = ∑k=1:n { aik * bjk}
      static void scale​(float alpha, org.ejml.data.FMatrix3 a)
      Performs an in-place element by element scalar multiplication.

      aij = α*aij
      static void scale​(float alpha, org.ejml.data.FMatrix3 a, org.ejml.data.FMatrix3 b)
      Performs an element by element scalar multiplication.

      bi = α*ai
      static void scale​(float alpha, org.ejml.data.FMatrix3x3 a)
      Performs an in-place element by element scalar multiplication.

      aij = α*aij
      static void scale​(float alpha, org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b)
      Performs an element by element scalar multiplication.

      bij = α*aij
      static void setIdentity​(org.ejml.data.FMatrix3x3 a)
      Sets all the diagonal elements equal to one and everything else equal to zero.
      static void subtract​(org.ejml.data.FMatrix3 a, org.ejml.data.FMatrix3 b, org.ejml.data.FMatrix3 c)
      Performs the following operation:

      c = a - b
      ci = ai - bi
      static void subtract​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b, org.ejml.data.FMatrix3x3 c)
      Performs the following operation:

      c = a - b
      cij = aij - bij
      static void subtractEquals​(org.ejml.data.FMatrix3 a, org.ejml.data.FMatrix3 b)
      Performs the following operation:

      a = a - b
      ai = ai - bi
      static void subtractEquals​(org.ejml.data.FMatrix3x3 a, org.ejml.data.FMatrix3x3 b)
      Performs the following operation:

      a = a - b
      aij = aij - bij
      static float trace​(org.ejml.data.FMatrix3x3 a)
      This computes the trace of the matrix:

      trace = ∑i=1:n { aii }
      static void transpose​(org.ejml.data.FMatrix3x3 m)
      Performs an in-place transpose.
      static org.ejml.data.FMatrix3x3 transpose​(org.ejml.data.FMatrix3x3 input, org.ejml.data.FMatrix3x3 output)
      Transposes matrix 'a' and stores the results in 'b':

      bij = aji
      where 'b' is the transpose of 'a'.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • CommonOps_FDF3

        public CommonOps_FDF3()
    • Method Detail

      • add

        public static void add​(org.ejml.data.FMatrix3x3 a,
                               org.ejml.data.FMatrix3x3 b,
                               org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c = a + b
        cij = aij + bij

        Matrix C can be the same instance as Matrix A and/or B.

        Parameters:
        a - A Matrix. Not modified.
        b - A Matrix. Not modified.
        c - A Matrix where the results are stored. Modified.
      • add

        public static void add​(org.ejml.data.FMatrix3 a,
                               org.ejml.data.FMatrix3 b,
                               org.ejml.data.FMatrix3 c)

        Performs the following operation:

        c = a + b
        ci = ai + bi

        Vector C can be the same instance as Vector A and/or B.

        Parameters:
        a - A Vector. Not modified.
        b - A Vector. Not modified.
        c - A Vector where the results are stored. Modified.
      • addEquals

        public static void addEquals​(org.ejml.data.FMatrix3x3 a,
                                     org.ejml.data.FMatrix3x3 b)

        Performs the following operation:

        a = a + b
        aij = aij + bij

        Parameters:
        a - A Matrix. Modified.
        b - A Matrix. Not modified.
      • addEquals

        public static void addEquals​(org.ejml.data.FMatrix3 a,
                                     org.ejml.data.FMatrix3 b)

        Performs the following operation:

        a = a + b
        ai = ai + bi

        Parameters:
        a - A Vector. Modified.
        b - A Vector. Not modified.
      • subtract

        public static void subtract​(org.ejml.data.FMatrix3x3 a,
                                    org.ejml.data.FMatrix3x3 b,
                                    org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c = a - b
        cij = aij - bij

        Matrix C can be the same instance as Matrix A and/or B.

        Parameters:
        a - A Matrix. Not modified.
        b - A Matrix. Not modified.
        c - A Matrix where the results are stored. Modified.
      • subtract

        public static void subtract​(org.ejml.data.FMatrix3 a,
                                    org.ejml.data.FMatrix3 b,
                                    org.ejml.data.FMatrix3 c)

        Performs the following operation:

        c = a - b
        ci = ai - bi

        Vector C can be the same instance as Vector A and/or B.

        Parameters:
        a - A Vector. Not modified.
        b - A Vector. Not modified.
        c - A Vector where the results are stored. Modified.
      • subtractEquals

        public static void subtractEquals​(org.ejml.data.FMatrix3x3 a,
                                          org.ejml.data.FMatrix3x3 b)

        Performs the following operation:

        a = a - b
        aij = aij - bij

        Parameters:
        a - A Matrix. Modified.
        b - A Matrix. Not modified.
      • subtractEquals

        public static void subtractEquals​(org.ejml.data.FMatrix3 a,
                                          org.ejml.data.FMatrix3 b)

        Performs the following operation:

        a = a - b
        ai = ai - bi

        Parameters:
        a - A Vector. Modified.
        b - A Vector. Not modified.
      • transpose

        public static void transpose​(org.ejml.data.FMatrix3x3 m)
        Performs an in-place transpose. This algorithm is only efficient for square matrices.
        Parameters:
        m - The matrix that is to be transposed. Modified.
      • transpose

        public static org.ejml.data.FMatrix3x3 transpose​(org.ejml.data.FMatrix3x3 input,
                                                         org.ejml.data.FMatrix3x3 output)

        Transposes matrix 'a' and stores the results in 'b':

        bij = aji
        where 'b' is the transpose of 'a'.

        Parameters:
        input - The original matrix. Not modified.
        output - Where the transpose is stored. If null a new matrix is created. Modified.
        Returns:
        The transposed matrix.
      • mult

        public static void mult​(org.ejml.data.FMatrix3x3 a,
                                org.ejml.data.FMatrix3x3 b,
                                org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c = a * b

        cij = ∑k=1:n { aik * bkj}

        Parameters:
        a - The left matrix in the multiplication operation. Not modified.
        b - The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • mult

        public static void mult​(float alpha,
                                org.ejml.data.FMatrix3x3 a,
                                org.ejml.data.FMatrix3x3 b,
                                org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c = α * a * b

        cij = α ∑k=1:n { aik * bkj}

        Parameters:
        alpha - Scaling factor.
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multTransA

        public static void multTransA​(org.ejml.data.FMatrix3x3 a,
                                      org.ejml.data.FMatrix3x3 b,
                                      org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c = aT * b

        cij = ∑k=1:n { aki * bkj}

        Parameters:
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multTransA

        public static void multTransA​(float alpha,
                                      org.ejml.data.FMatrix3x3 a,
                                      org.ejml.data.FMatrix3x3 b,
                                      org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c = α * aT * b

        cij = α * ∑k=1:n { aki * bkj}

        Parameters:
        alpha - Scaling factor.
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multTransAB

        public static void multTransAB​(org.ejml.data.FMatrix3x3 a,
                                       org.ejml.data.FMatrix3x3 b,
                                       org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c = aT * bT
        cij = ∑k=1:n { aki * bjk}

        Parameters:
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multTransAB

        public static void multTransAB​(float alpha,
                                       org.ejml.data.FMatrix3x3 a,
                                       org.ejml.data.FMatrix3x3 b,
                                       org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c = α*aT * bT
        cij = α*∑k=1:n { aki * bjk}

        Parameters:
        alpha - Scaling factor.
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multTransB

        public static void multTransB​(org.ejml.data.FMatrix3x3 a,
                                      org.ejml.data.FMatrix3x3 b,
                                      org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c = a * bT
        cij = ∑k=1:n { aik * bjk}

        Parameters:
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multTransB

        public static void multTransB​(float alpha,
                                      org.ejml.data.FMatrix3x3 a,
                                      org.ejml.data.FMatrix3x3 b,
                                      org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c = α * a * bT
        cij = α*∑k=1:n { aik * bjk}

        Parameters:
        alpha - Scaling factor.
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multAdd

        public static void multAdd​(org.ejml.data.FMatrix3x3 a,
                                   org.ejml.data.FMatrix3x3 b,
                                   org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c += a * b

        cij += ∑k=1:n { aik * bkj}

        Parameters:
        a - The left matrix in the multiplication operation. Not modified.
        b - The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multAdd

        public static void multAdd​(float alpha,
                                   org.ejml.data.FMatrix3x3 a,
                                   org.ejml.data.FMatrix3x3 b,
                                   org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c += α * a * b

        cij += α ∑k=1:n { aik * bkj}

        Parameters:
        alpha - Scaling factor.
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multAddTransA

        public static void multAddTransA​(org.ejml.data.FMatrix3x3 a,
                                         org.ejml.data.FMatrix3x3 b,
                                         org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c += aT * b

        cij += ∑k=1:n { aki * bkj}

        Parameters:
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multAddTransA

        public static void multAddTransA​(float alpha,
                                         org.ejml.data.FMatrix3x3 a,
                                         org.ejml.data.FMatrix3x3 b,
                                         org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c += α * aT * b

        cij += α * ∑k=1:n { aki * bkj}

        Parameters:
        alpha - Scaling factor.
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multAddTransAB

        public static void multAddTransAB​(org.ejml.data.FMatrix3x3 a,
                                          org.ejml.data.FMatrix3x3 b,
                                          org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c += aT * bT
        cij += ∑k=1:n { aki * bjk}

        Parameters:
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multAddTransAB

        public static void multAddTransAB​(float alpha,
                                          org.ejml.data.FMatrix3x3 a,
                                          org.ejml.data.FMatrix3x3 b,
                                          org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c += α*aT * bT
        cij += α*∑k=1:n { aki * bjk}

        Parameters:
        alpha - Scaling factor.
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multAddTransB

        public static void multAddTransB​(org.ejml.data.FMatrix3x3 a,
                                         org.ejml.data.FMatrix3x3 b,
                                         org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c += a * bT
        cij += ∑k=1:n { aik * bjk}

        Parameters:
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multAddTransB

        public static void multAddTransB​(float alpha,
                                         org.ejml.data.FMatrix3x3 a,
                                         org.ejml.data.FMatrix3x3 b,
                                         org.ejml.data.FMatrix3x3 c)

        Performs the following operation:

        c += α * a * bT
        cij += α*∑k=1:n { aik * bjk}

        Parameters:
        alpha - Scaling factor.
        a - (Input) The left matrix in the multiplication operation. Not modified.
        b - (Input) The right matrix in the multiplication operation. Not modified.
        c - (Output) Where the results of the operation are stored. Modified.
      • multAddOuter

        public static void multAddOuter​(float alpha,
                                        org.ejml.data.FMatrix3x3 A,
                                        float beta,
                                        org.ejml.data.FMatrix3 u,
                                        org.ejml.data.FMatrix3 v,
                                        org.ejml.data.FMatrix3x3 C)
        C = αA + βu*vT
        Parameters:
        alpha - scale factor applied to A
        A - matrix
        beta - scale factor applies to outer product
        u - vector
        v - vector
        C - Storage for solution. Can be same instance as A.
      • mult

        public static void mult​(org.ejml.data.FMatrix3x3 a,
                                org.ejml.data.FMatrix3 b,
                                org.ejml.data.FMatrix3 c)

        Performs matrix to vector multiplication:

        c = a * b

        ci = ∑k=1:n { aik * bk}

        Parameters:
        a - The left matrix in the multiplication operation. Not modified.
        b - The right vector in the multiplication operation. Not modified.
        c - Where the results of the operation are stored. Modified.
      • mult

        public static void mult​(org.ejml.data.FMatrix3 a,
                                org.ejml.data.FMatrix3x3 b,
                                org.ejml.data.FMatrix3 c)

        Performs vector to matrix multiplication:

        c = a * b

        cj = ∑k=1:n { bk * akj }

        Parameters:
        a - The left vector in the multiplication operation. Not modified.
        b - The right matrix in the multiplication operation. Not modified.
        c - Where the results of the operation are stored. Modified.
      • dot

        public static float dot​(org.ejml.data.FMatrix3 a,
                                org.ejml.data.FMatrix3 b)

        Performs the vector dot product:

        c = a * b

        c ≥ ∑k=1:n { bk * ak }

        Parameters:
        a - The left vector in the multiplication operation. Not modified.
        b - The right matrix in the multiplication operation. Not modified.
        Returns:
        The dot product
      • setIdentity

        public static void setIdentity​(org.ejml.data.FMatrix3x3 a)
        Sets all the diagonal elements equal to one and everything else equal to zero. If this is a square matrix then it will be an identity matrix.
        Parameters:
        a - A matrix.
      • invert

        public static boolean invert​(org.ejml.data.FMatrix3x3 a,
                                     org.ejml.data.FMatrix3x3 inv)
        Inverts matrix 'a' using minor matrices and stores the results in 'inv'. Scaling is applied to improve stability against overflow and underflow. WARNING: Potentially less stable than using LU decomposition.
        Parameters:
        a - Input matrix. Not modified.
        inv - Inverted output matrix. Modified.
        Returns:
        true if it was successful or false if it failed. Not always reliable.
      • det

        public static float det​(org.ejml.data.FMatrix3x3 mat)
        Computes the determinant using minor matrices.
        WARNING: Potentially less stable than using LU decomposition.
        Parameters:
        mat - Input matrix. Not modified.
        Returns:
        The determinant.
      • cholL

        public static boolean cholL​(org.ejml.data.FMatrix3x3 A)
        Performs a lower Cholesky decomposition of matrix 'A' and stores result in A.
        Parameters:
        A - (Input) SPD Matrix. (Output) lower cholesky.
        Returns:
        true if it was successful or false if it failed. Not always reliable.
      • cholU

        public static boolean cholU​(org.ejml.data.FMatrix3x3 A)
        Performs an upper Cholesky decomposition of matrix 'A' and stores result in A.
        Parameters:
        A - (Input) SPD Matrix. (Output) upper cholesky.
        Returns:
        true if it was successful or false if it failed. Not always reliable.
      • trace

        public static float trace​(org.ejml.data.FMatrix3x3 a)

        This computes the trace of the matrix:

        trace = ∑i=1:n { aii }

        The trace is only defined for square matrices.

        Parameters:
        a - A square matrix. Not modified.
      • diag

        public static void diag​(org.ejml.data.FMatrix3x3 input,
                                org.ejml.data.FMatrix3 out)

        Extracts all diagonal elements from 'input' and places them inside the 'out' vector. Elements are in sequential order.

        Parameters:
        input - Matrix. Not modified.
        out - Vector containing diagonal elements. Modified.
      • elementMax

        public static float elementMax​(org.ejml.data.FMatrix3x3 a)

        Returns the value of the element in the matrix that has the largest value.

        Max{ aij } for all i and j

        Parameters:
        a - A matrix. Not modified.
        Returns:
        The max element value of the matrix.
      • elementMax

        public static float elementMax​(org.ejml.data.FMatrix3 a)

        Returns the value of the element in the vector that has the largest value.

        Max{ ai } for all i

        Parameters:
        a - A vector. Not modified.
        Returns:
        The max element value of the matrix.
      • elementMaxAbs

        public static float elementMaxAbs​(org.ejml.data.FMatrix3x3 a)

        Returns the absolute value of the element in the matrix that has the largest absolute value.

        Max{ |aij| } for all i and j

        Parameters:
        a - A matrix. Not modified.
        Returns:
        The max abs element value of the matrix.
      • elementMaxAbs

        public static float elementMaxAbs​(org.ejml.data.FMatrix3 a)

        Returns the absolute value of the element in the vector that has the largest absolute value.

        Max{ |ai| } for all i

        Parameters:
        a - A matrix. Not modified.
        Returns:
        The max abs element value of the vector.
      • elementMin

        public static float elementMin​(org.ejml.data.FMatrix3x3 a)

        Returns the value of the element in the matrix that has the minimum value.

        Min{ aij } for all i and j

        Parameters:
        a - A matrix. Not modified.
        Returns:
        The value of element in the matrix with the minimum value.
      • elementMin

        public static float elementMin​(org.ejml.data.FMatrix3 a)

        Returns the value of the element in the vector that has the minimum value.

        Min{ ai } for all

        Parameters:
        a - A matrix. Not modified.
        Returns:
        The value of element in the vector with the minimum value.
      • elementMinAbs

        public static float elementMinAbs​(org.ejml.data.FMatrix3x3 a)

        Returns the absolute value of the element in the matrix that has the smallest absolute value.

        Min{ |aij| } for all i and j

        Parameters:
        a - A matrix. Not modified.
        Returns:
        The max element value of the matrix.
      • elementMinAbs

        public static float elementMinAbs​(org.ejml.data.FMatrix3 a)

        Returns the absolute value of the element in the vector that has the smallest absolute value.

        Min{ |ai| } for all i

        Parameters:
        a - A matrix. Not modified.
        Returns:
        The max element value of the vector.
      • elementMult

        public static void elementMult​(org.ejml.data.FMatrix3x3 a,
                                       org.ejml.data.FMatrix3x3 b)

        Performs an element by element multiplication operation:

        aij = aij * bij

        Parameters:
        a - The left matrix in the multiplication operation. Modified.
        b - The right matrix in the multiplication operation. Not modified.
      • elementMult

        public static void elementMult​(org.ejml.data.FMatrix3 a,
                                       org.ejml.data.FMatrix3 b)

        Performs an element by element multiplication operation:

        ai = ai * bi

        Parameters:
        a - The left vector in the multiplication operation. Modified.
        b - The right vector in the multiplication operation. Not modified.
      • elementMult

        public static void elementMult​(org.ejml.data.FMatrix3x3 a,
                                       org.ejml.data.FMatrix3x3 b,
                                       org.ejml.data.FMatrix3x3 c)

        Performs an element by element multiplication operation:

        cij = aij * bij

        Parameters:
        a - The left matrix in the multiplication operation. Not modified.
        b - The right matrix in the multiplication operation. Not modified.
        c - Where the results of the operation are stored. Modified.
      • elementMult

        public static void elementMult​(org.ejml.data.FMatrix3 a,
                                       org.ejml.data.FMatrix3 b,
                                       org.ejml.data.FMatrix3 c)

        Performs an element by element multiplication operation:

        ci = ai * bj

        Parameters:
        a - The left vector in the multiplication operation. Not modified.
        b - The right vector in the multiplication operation. Not modified.
        c - Where the results of the operation are stored. Modified.
      • elementDiv

        public static void elementDiv​(org.ejml.data.FMatrix3x3 a,
                                      org.ejml.data.FMatrix3x3 b)

        Performs an element by element division operation:

        aij = aij / bij

        Parameters:
        a - The left matrix in the division operation. Modified.
        b - The right matrix in the division operation. Not modified.
      • elementDiv

        public static void elementDiv​(org.ejml.data.FMatrix3 a,
                                      org.ejml.data.FMatrix3 b)

        Performs an element by element division operation:

        ai = ai / bi

        Parameters:
        a - The left vector in the division operation. Modified.
        b - The right vector in the division operation. Not modified.
      • elementDiv

        public static void elementDiv​(org.ejml.data.FMatrix3x3 a,
                                      org.ejml.data.FMatrix3x3 b,
                                      org.ejml.data.FMatrix3x3 c)

        Performs an element by element division operation:

        cij = aij / bij

        Parameters:
        a - The left matrix in the division operation. Not modified.
        b - The right matrix in the division operation. Not modified.
        c - Where the results of the operation are stored. Modified.
      • elementDiv

        public static void elementDiv​(org.ejml.data.FMatrix3 a,
                                      org.ejml.data.FMatrix3 b,
                                      org.ejml.data.FMatrix3 c)

        Performs an element by element division operation:

        ci = ai / bi

        Parameters:
        a - The left vector in the division operation. Not modified.
        b - The right vector in the division operation. Not modified.
        c - Where the results of the operation are stored. Modified.
      • scale

        public static void scale​(float alpha,
                                 org.ejml.data.FMatrix3x3 a)

        Performs an in-place element by element scalar multiplication.

        aij = α*aij

        Parameters:
        a - The matrix that is to be scaled. Modified.
        alpha - the amount each element is multiplied by.
      • scale

        public static void scale​(float alpha,
                                 org.ejml.data.FMatrix3 a)

        Performs an in-place element by element scalar multiplication.

        aij = α*aij

        Parameters:
        a - The vector that is to be scaled. Modified.
        alpha - the amount each element is multiplied by.
      • scale

        public static void scale​(float alpha,
                                 org.ejml.data.FMatrix3x3 a,
                                 org.ejml.data.FMatrix3x3 b)

        Performs an element by element scalar multiplication.

        bij = α*aij

        Parameters:
        alpha - the amount each element is multiplied by.
        a - The matrix that is to be scaled. Not modified.
        b - Where the scaled matrix is stored. Modified.
      • scale

        public static void scale​(float alpha,
                                 org.ejml.data.FMatrix3 a,
                                 org.ejml.data.FMatrix3 b)

        Performs an element by element scalar multiplication.

        bi = α*ai

        Parameters:
        alpha - the amount each element is multiplied by.
        a - The vector that is to be scaled. Not modified.
        b - Where the scaled matrix is stored. Modified.
      • divide

        public static void divide​(org.ejml.data.FMatrix3x3 a,
                                  float alpha)

        Performs an in-place element by element scalar division. Scalar denominator.

        aij = aij

        Parameters:
        a - The matrix whose elements are to be divided. Modified.
        alpha - the amount each element is divided by.
      • divide

        public static void divide​(org.ejml.data.FMatrix3 a,
                                  float alpha)

        Performs an in-place element by element scalar division. Scalar denominator.

        ai = ai

        Parameters:
        a - The vector whose elements are to be divided. Modified.
        alpha - the amount each element is divided by.
      • divide

        public static void divide​(org.ejml.data.FMatrix3x3 a,
                                  float alpha,
                                  org.ejml.data.FMatrix3x3 b)

        Performs an element by element scalar division. Scalar denominator.

        bij = aij

        Parameters:
        alpha - the amount each element is divided by.
        a - The matrix whose elements are to be divided. Not modified.
        b - Where the results are stored. Modified.
      • divide

        public static void divide​(org.ejml.data.FMatrix3 a,
                                  float alpha,
                                  org.ejml.data.FMatrix3 b)

        Performs an element by element scalar division. Scalar denominator.

        bi = ai

        Parameters:
        alpha - the amount each element is divided by.
        a - The vector whose elements are to be divided. Not modified.
        b - Where the results are stored. Modified.
      • changeSign

        public static void changeSign​(org.ejml.data.FMatrix3x3 a)

        Changes the sign of every element in the matrix.

        aij = -aij

        Parameters:
        a - A matrix. Modified.
      • changeSign

        public static void changeSign​(org.ejml.data.FMatrix3 a)

        Changes the sign of every element in the vector.

        ai = -ai

        Parameters:
        a - A vector. Modified.
      • fill

        public static void fill​(org.ejml.data.FMatrix3x3 a,
                                float v)

        Sets every element in the matrix to the specified value.

        aij = value

        Parameters:
        a - A matrix whose elements are about to be set. Modified.
        v - The value each element will have.
      • fill

        public static void fill​(org.ejml.data.FMatrix3 a,
                                float v)

        Sets every element in the vector to the specified value.

        ai = value

        Parameters:
        a - A vector whose elements are about to be set. Modified.
        v - The value each element will have.
      • extractRow

        public static org.ejml.data.FMatrix3 extractRow​(org.ejml.data.FMatrix3x3 a,
                                                        int row,
                                                        org.ejml.data.FMatrix3 out)
        Extracts the row from the matrix a.
        Parameters:
        a - Input matrix
        row - Which row is to be extracted
        out - output. Storage for the extracted row. If null then a new vector will be returned.
        Returns:
        The extracted row.
      • extractColumn

        public static org.ejml.data.FMatrix3 extractColumn​(org.ejml.data.FMatrix3x3 a,
                                                           int column,
                                                           org.ejml.data.FMatrix3 out)
        Extracts the column from the matrix a.
        Parameters:
        a - Input matrix
        column - Which column is to be extracted
        out - output. Storage for the extracted column. If null then a new vector will be returned.
        Returns:
        The extracted column.