开发者

C++ library that imitates matlab's functionality [closed]

开发者 https://www.devze.com 2023-03-19 10:54 出处:网络
It's difficult to tell what is being asked h开发者_运维百科ere. This question is ambiguous, vague, incomplete, overly broad, or rhetorical andcannot be reasonably answered in its current form.
It's difficult to tell what is being asked h开发者_运维百科ere. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center. Closed 11 years ago.

I'm wondering if there any c/c++ libraries out there that imitate the functuonality that matlab offers (neglecting all the toolboxes of course) and if so, how they compare to matlab in both simplicity and speed?


For standard linear algebra, Armadillo essentially has "ease of use" a la Matlab as a stated goal. Quoting from the main page:

  • Armadillo is an open-source C++ linear algebra library (matrix maths) aiming towards a good balance between speed and ease of use. Integer, floating point and complex numbers are supported, as well as a subset of trigonometric and statistics functions. Various matrix decompositions are provided through optional integration with LAPACK, or one of its high performance drop-in replacements (such as MKL or ACML).

  • This library is useful if C++ has been decided as the language of choice (due to speed and/or integration capabilities), rather than another language like Matlab ® or Octave. It is distributed under a license that is useful in both open-source and commercial contexts.

It is a pretty decent C++ library.


There are several libraries that provide basic linear algebra (BLAS) implementations. However, I think you'll find matlab has so many convient functions that get use very frequently you will have a hard time porting your matlab over to c+++ even with a nice BLAS library.

Check out GNU Octave. It provides a runtime that closely mirrors matlab. It also allows you to embed and extend the runtime within your C++ application


Since you haven't mentioned anything regarding the licensing of the library, you may want to look at this:

http://www.mathworks.com/products/matlab-coder/

0

精彩评论

暂无评论...
验证码 换一张
取 消