- 积分
- 544
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2011-7-8
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
有人用gfortran调用过函数库吗?比如imsl或所gsl.
有查到过gsl的,但是调用起来较为麻烦,还要编一个C的小程序。在这里做一个分享,希望有直接运行gfortran就可以的解决方案
安装步骤
http://blog.csdn.net/waleking/article/details/8265008/
调用步骤
http://www.helsinki.fi/~fyl_tlpk/luento/ohj-13-GSL-e.html
例子如下:
调用 gsl库里面的gsl_atanh函数
先写一个C语言的'gateway' 如下:
#include <gsl/gsl_math.h>
void gslgateway_(double *x, double *res)
{
*res = gsl_atanh(*x);
}
再写fortran脚本如下:
program gsltest
implicit none
real(kind=selected_real_kind(12)) :: a = 0.11, res
external :: glsgateway
call gslgateway(a,res)
write(*,*) 'x', a, 'atanh(x)', res
end program gsltest
最后,在终端输入:
gcc -c gslgateway.c
gfortran gsltest.f90 gslgateway.o -lgsl -lgslcblas
运行 ./a.out
输出: x 0.109999999403954 atanh(x) 0.110446915186750
成功
但是如果多次调用,不能总是先运行各种C脚本,以及gfortran下面加一推后缀哦,还是希望有其它方法
|
评分
-
查看全部评分
|