Science and engineering should know the C + + Mathematical Computing Library

Source: Internet
Author: User

Science and engineering should know the C + + Mathematical Computing Library (RPM)

As a science and engineering student, the finite element analysis, numerical calculation, three-dimensional modeling, signal processing, performance analysis, simulation analysis ... These are more or less related to the software we commonly use, if one day you only need some very limited features of these large-scale software systems, do you want to use a few grams of software that frequently? In fact, I think if the system is not very large, not very complex, we are personally likely to write their own code to achieve these ' limited functions '. Do not think this is a very difficult thing, I always think that the C language learning during college is extremely useful, as long as you will basic C language grammar, you can.

Let me show you a few very useful math Library of c/s + +, they are basically open source, you do not have to worry about copyright issues, they are some free software, all you have to do is to carefully read their license agreement to ensure that do not abuse it:

Computational Geometry algorithm library Cgal
Cgal, the computational Geometry algorithm library, is a large C + + library of geometric data structures and algorithms, such as Delaunay triangular mesh, mesh generation, Boolean operations of polygons, and various geometric processing algorithms. Cgal is used in various fields: computer graphics, Scientific visualization, computer-aided design and modelling, geographic information systems, molecular biology, medical imaging, robotics and motion planning, and numerical methods.
Download URL http://www.cgal.org/download.html
Math Package Octave
Octave is a mathematical software package similar to MATLAB and Scilab, which can be used for various operations and programming. It also has a rich C + + interface that can be called when the user is programming. It plots using gnuplot.
The use of octave is also based on the character terminal pattern, and when drawing is required, the gnuplot is called for data plotting and is displayed.
Octave is written in C + +, and its rich library is also available for users to invoke when writing software. Octave Library in detail under/usr/share/doc/octave-2.1.50/liboctave, the file is Liboctave.dvi and requires a PDF file that can be run:
DVIPDFM Liboctave.dvi
Converts a DVI file to a PDF file.
Octave also supports the invocation of FORTRAN, GSL bindings and so on. Can be customized by the user's own functions, subroutines and so on.
Http://octave.sourceforge.net/packages.html
C + + Mathematical Computing Library TooN
TooN is a C + + mathematical Computing Library, which is designed to efficiently operate a large number of small matrices and provides convenience for some algorithms including matrix decomposition and optimization.
Http://mi.eng.cam.ac.uk/~er258/cvd/toon/html-user/index.html
Finite element analysis software Openfem
Finite element analysis, even if the finite element method is used to analyze static or dynamic objects or systems. In this method, an object or system is decomposed into a geometric model composed of several interconnected, simple, independent points. In this method, the number of these independent points is limited and is therefore called the finite element. The equilibrium equations deduced from the actual physical model are used at each point, resulting in a set of equations. This group of equations can be solved by means of linear algebra. The accuracy of finite element analysis cannot be increased infinitely. The accuracy of the solution is no longer improved after the number of yuan reaches a certain height, and only the calculation time is improved.
http://sourceforge.net/projects/openfem/files/
Finite element calculation framework Oofem
Oofem is an object-oriented architecture for open source Multiphysics parallel finite element programs. The purpose of this project is to provide efficient and powerful finite element computing tools, as well as to provide a highly modular and scalable development environment. Finite element analysis is usually done by computer software, the famous engineering software is: Msc.nastran, ADINA, Ls-dyna, ANSYS, ABAQUS, 2d-sigma and so on.
Http://www.oofem.org/en/download/download.html
C + + Symbolic computing library Ginac
Ginac (Ginac is not a CAS computer algebra system) is a C + + library for symbolic computations. It is designed to allow integrated system creation, symbolic operations embedded with more sophisticated computer science (such as compute-intensive, graphical interface, etc.), digital application areas. In contrast to other cases, it does not attempt algebra to provide extensive functionality and simple programming language, but rather to accept a given language (C + +) and extend the algebraic function settings.
Http://www.ginac.de/Download.html
Math-specific language for Class C Englab
Englab is a math-specific language for Class C. It is simple in syntax, with few keywords, and is well mastered by engineers and those who only have a little programming knowledge.
http://sourceforge.net/projects/englab/files/
C + + signal processing library sp++
TSPL (template Signal processing library) is a C + + signal processing library, which mainly includes filter design, time-frequency analysis and wavelet transform, as well as some basic algorithms for vectors and matrices, all of which are based on C + + template classes.
Http://code.google.com/p/tspl/downloads/list
Partial differential Equation Solver toolbox DUNE(Windows systems are not currently supported)
DUNE (Distributed and Unified Numerics Environment), distributed and unified numerical solution environment, is a modular toolbox of grid-based methods (PDE) for solving partial differential equations. Dune is the first time that all these embody the concept of scientific computing from an abstract interface setting. Modern C + + programming techniques make the same concepts very different implementations using a very low overhead of a common interface. As a result, dune ensures efficiency in scientific computing and supports high-performance computing applications.
Http://www.dune-project.org/download.html
AI application Framework into
Into is a cross-platform machine Intelligence application framework developed in C + +. into provides a different, faster way to build high-performance image analysis, machine vision, pattern recognition, and AI applications. The layered API together with over 20 fully interoperable plug-in modules is used to access images and various data sources, among other things.
http://intopii.com/into/
High Performance Computing software toolkit DAKOTA
DAKOTA (Design analysis kit for optimization and Terascale applications) is a generic software toolkit designed to perform system analytics and high-performance computers. It provides design optimization, uncertainty quantification, parameter estimation, experimental design, sensitivity analysis, and a parallel algorithm range for computing and simulating connection services.
Http://www.cs.sandia.gov/DAKOTA/download.html
C + + Template library for linear arithmetic Eigen
Eigen is a C + + Template library for linear arithmetic, including: vectors, matrices, and related algorithms. Powerful, fast, elegant, and multi-platform support.
http://bitbucket.org/eigen/eigen/downloads/
multi-precision integer and rational number Mpir
Mpir is an open source, multi-precision, integer and rational Computing Library based on GMP library development.
Http://www.mpir.org/mpir-1.3.1.tar.gz
MYGSL-C + + numerical computing library
MYGSL is a personalized open source numerical computing project based on the GSL library.
This class library provides many aspects of mathematical computation, including: Complex Numbers Roots of polynomials
Special Functions Vectors and matrices
Permutations sorting
BLAS Support Linear Algebra
Eigensystems Fast Fourier Transforms
Quadrature Random Numbers
Quasi-random Sequences Random Distributions
Statistics histograms
N-tuples Monte Carlo Integration
Simulated annealing differential equations
Interpolation numerical differentiation
Chebyshev Approximation Series Acceleration
Discrete Hankel Transforms root-finding
Minimization Least-squares Fitting
Physical Constants IEEE floating-point
Discrete Wavelet Transforms Basis splines
http://u.115.com/file/f572d894a0
Almost all I know is this, in fact, this article mainly refers to the open source China community announced some projects, I do is just finishing up the present to everyone, hope to everyone in the future study, work help. Deep down inside, I actually really want to use a very good one day of this aspect of the domestic software, just do not know when. Don't want to take a pirated XP, office, pirated UG, pirated ansys, pirated GT, pirated AMESim, pirated matlab ... Originally my computer is full of pirated, sometimes think this is a kind of ridiculous things, but there is no way. Perhaps, from this moment on, we have a new idea, and the situation will be changed in a few years.
It's a lot of talk ...

Science and engineering should know the C + + Mathematical Computing Library (RPM)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.