用于数值计算的开源库 GNU Scientific Library

一直很好奇使用C/C++语言,该如何进行复杂的数值(数学)计算:例如解方程组,C的标准数学库就做不到了。

最近刚了解到, 这些问题已经有很好用的开源库了,它就是:
GSL - GNU Scientific Libraryhttp://www.gnu.org/software/gsl/

GSL的功能有: (来自google翻译)
复数

Roots of Polynomials

多项式的根

Special Functions

特殊功能

Vectors and Matrices

向量和矩阵

Permutations

排列

Sorting

排序

BLAS Support

BLAS的支持

Linear Algebra

线性代数

Eigensystems

Eigensystems

Fast Fourier Transforms

快速傅立叶变换

Quadrature

正交

Random Numbers

随机数

Quasi-Random Sequences

拟随机序列

Random Distributions

随机分布

Statistics

统计

Histograms

直方图

N-Tuples

n元组

Monte Carlo Integration

蒙特卡罗积分

Simulated Annealing

模拟退火

Differential Equations

微分方程

Interpolation

插值

Numerical Differentiation

数值微分

Chebyshev Approximation

切比雪夫逼近

Series Acceleration

系列加速度

Discrete Hankel Transforms

离散Hankel变换

Root-Finding

求根

Minimization

最小化

Least-Squares Fitting

最小二乘拟合

Physical Constants

物理常数

IEEE Floating-Point

IEEE浮点

Discrete Wavelet Transforms

离散小波变换

Basis splines

基础样条

可见GSL的数学功能很强大,例如模拟退火算法,这是布局布线必需的算法之一,不知道EDA公司的开发是否也在使用这个库?

不过,我的问题很简单,就是解一个一元二次方程组
3x + 2y = 8;
x + 5y = 7;
解: x=2, y=1;
实例代码请常见附件.

一元二次方程组属于 Linear Algebra线性代数 范畴,有兴趣了解 解方程组的过程 可以参考
http://en.wikipedia.org/wiki/System_of_linear_equations
http://en.wikipedia.org/wiki/LU_decomposition
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章