The Zenautics Matrix Project is a matrix/vector class for C++. It supports real and complex data for nearly all matrix algebra calculations. It is optimized for the double type (std::complex). The Zenautics Matrix Project works well with small and large matrices. It is easy to use and get started. It features plotting, FFT/IFFT, and more.
Here are some key features of "The Zenautics Matrix Project":
· Ease of use!
· Simple to compile and utilize
· Real and complex data
· Exception handling
· Safe mode functionality (most functions return bool, true if successful, false otherwise)
· Comprehensive documentation
· Uses the C++ Standard Template Library
· FFT/IFFT (DFT/IDFT)*
· Complete statistical function set
· Comprehensive operator set
· Fast Inversion using Cholesky decomposition for positive definite matrices
· Robust Inversion otherwise
· Fantastic data file reading capabilities
· Automatic ASCII file delimiter detection
· Ergonomic ASCII file formatting
· Very fast and efficient saving and loading of matrices to lossless compressed binary files
· Plotting - line and scatter plots directly to a compressed bitmap
What's New in This Release:
· The FFT function was only computing the FFT of the first column. Fixed to compute the FFT of each column.
· Efficient functions for multiplication with a matrix transpose added.
· New Functions n FFT2 n IFFT2 n bool Inplace_TranposePreMultiply( const Matrix &B ); // A = transpose(B)*A n bool Inplace_PostMultiplyTranspose( const Matrix &B ); // A = A*transpose(B) n bool TransposeMultiply( const Matrix &B, const Matrix &C ); // A = transpose(B)*C n bool MultiplyTranspose( const Matrix &B, const Matrix &C ); // A = B*transpose(B) n