/* Include Guard */ #ifndef CVE_INCLUDE_GUARD_MATRIX_ #define CVE_INCLUDE_GUARD_MATRIX_ void matrixprod(const double *A, const int nrowA, const int ncolA, const double *B, const int nrowB, const int ncolB, double *C); void crossprod(const double *A, const int nrowA, const int ncolA, const double *B, const int nrowB, const int ncolB, double *C); void nullProj(const double *B, const int nrowB, const int ncolB, double *Q); // A dence skwe-symmetric rank 2 update. // Perform the update // C := alpha (A * B^T - B * A^T) + beta C void skewSymRank2k(const int nrow, const int ncol, double alpha, const double *A, const double *B, double beta, double *C); #endif /* CVE_INCLUDE_GUARD_MATRIX_ */