| 
 
	积分544贡献 精华在线时间 小时注册时间2011-7-8最后登录1970-1-1 
 | 
 
| 
有人用gfortran调用过函数库吗?比如imsl或所gsl.
x
登录后查看更多精彩内容~您需要 登录 才可以下载或查看,没有帐号?立即注册 
  
 有查到过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下面加一推后缀哦,还是希望有其它方法
 
 
 | 
 评分
查看全部评分
 |