File | Date | Author | Commit |
---|---|---|---|
ChangeLog.md | 2020-11-08 |
![]() |
[cf625d] Swichted to less agressive naming |
Doxyfile | 2020-11-07 |
![]() |
[595d72] Initial Upload |
LICENSE | 2020-11-08 |
![]() |
[fa87f8] Changed to Unlicense License |
Makefile | 2020-11-07 |
![]() |
[595d72] Initial Upload |
README.md | 2020-11-08 |
![]() |
[02e176] Fixed link to license file in readme, again |
TODO.md | 2020-11-07 |
![]() |
[595d72] Initial Upload |
example.cpp | 2020-11-07 |
![]() |
[595d72] Initial Upload |
matrixCPlusPlus.cpp | 2020-11-07 |
![]() |
[595d72] Initial Upload |
matrixCPlusPlus.h | 2020-11-07 |
![]() |
[595d72] Initial Upload |
MatrixC++ is a lightweight matrix library developed in C++. MatrixC++ is designed
to help solve engineering and math problems requiring vectors and matrices.
MatrixC++ is OS independent and is as portable as we can make it. MatrixC++
supports overloaded operators, links with Lapack, and includes functions to
facilitate porting from Octave type matrix scripting languages to C++.
MatrixC++ compiles and runs with g++, clang++, and Visual Studio 2015.
#include <iostream>
#include "matrixCPlusPlus.h"
int main(void) {
matrixCPlusPlus::Matrix<double,3,3> A = {1.,2.,3.,0.,0.,0.,0,0,0};
matrixCPlusPlus::Matrix<double,3,3> B = {1,1,1,3,4,5,3,6,10};
std::cout << A+inv(B);
return(0);
}
To compile: $ g++ example.cpp -llapack or
g++ example.cpp "-l:liblapack.so.3"
See also matrixCPlusPlus.cpp for an additional ideas.
Place matrixCPlusPlus.h in the directory of your choosing. Tell your
compiler where it is. For g++, add -I<your directory="">; see the provided
Makefile for an example. In your code, #include "matrixCPlusPlus.h" where you
need to and off you go.</your>
If one needs to take a matrix inverse or determinant, Lapack
is required. Lapack is an open source linear algebra package and is available
from http://www.netlib.org/lapack/. For Linux, Cygwin and MinGW users, one can
install or build Lapack very easily. Visual Studio platforms can require a bit
more effort. Most expediently, one can download the compiled libraries from
http://icl.cs.utk.edu/lapack-for-windows/lapack/. Another option is compile and
link with CLapack, and f2c'd version of Lapack. In fact, one can extract the
necessary files in less than two hours. In future versions, I plan to include
the requisite files. I also plan to investigate the now included C interface
to Lapack.
MatrixC++, formerly CMatrix and DMatrix, was originally written by
The Riddler. Dog House picked up the baton. Many others helped with
suggestions and bug fixes.
Mail suggestions to Dog House
This file is part of MatrixC++, the C++ matrix library distribution.
This project is licensed under the terms of the Unlicense license. The full text
of the license file can be found in LICENSE.