回 帖 发 新 帖 刷新版面

主题:开个贴回答Fotran 的问题

开个贴试着回答Fortran的问题。有问题的请跟贴。
有两种问题不想回答:
1. Fortran文件读取方面的问题。
2. Fortran程序调试或者找程序中的错误。

回复列表 (共83个回复)

11 楼


我是刚刚接触fortran,什么都不懂

想问问,fortran的这个MSDEV.EXE,和编译器有什么不一样?那个编译器,下载之后有怎么用呢?
现在所有关于fortran的运行,都要在DOC情况下么?

12 楼


我想问一下,如何将fortran的程序与java相连接。怎样生成接口。非常感谢!

13 楼

感谢楼主开帖解答疑难!

我有IMSL的库函数MOLCH(或M2LCH)的用法要请教楼主:

1、第一次调用函数MOLCH时,置IDO=1,以后该函数自动置IDO=2,仅需在最后一次调用时置IDO=3。如果某次调用函数MOLCH时,FCNUT、 FCNBC、NX 或 NPDES等发生了变化,仍然遵循以上规则吗?如果不遵循,应该怎么办?

2、在使用函数M2LCH时,自己提供了工作空间,那么参数IDO起什么作用?是不是可以取任意值?因为IDO是负责申请或消耗空间的参数,若自己提供了工作空间,该参数是不是没有用了?

我的帖子位置:[url=http://bbs.pfan.cn/post-318087.html]http://bbs.pfan.cn/post-318087.html[/url]

您可以在我的帖子上回复,我好给您加分。

14 楼

回12楼:
我试过Fotran和pascal,Fotran和c的。可以借鉴一下,据说有两种方法,一种是库方法,一种是com方法。
我用的是库方法,把函数打包成库,并且加上函数的库输出接口,具体可以参考帮助中的Programming with Mixed Languages部分。
至于com方法,没有用过。

15 楼

回11楼:
1.MSDEV.EXE 应该Microsoft (R) Visual Studio, 是一个集成开发环境的IDE, 有些Fortran 把把自己集成到里面去了。如果不用它,也是可以的。可以用任何文字编辑器编辑,然后在用Fortran编译器编译。
2.Fortran 是独立于操作系统的,可以运行于dos, windows 或Linux

16 楼

回13楼:没用过这个函数,也没有IMSL,只是参照手册猜测一下:
1.我觉得MOLCH也是调用M2LCH分配工作空间,如果NPDES不同可能会产生错误(内存泄露?)
2.这个不好猜,你可以写个程序试验一下。看看设置ID0=3 运行MOLCH 会不会有问题。

17 楼

感谢trimtrim,还有一个问题要请教。

Fortran中如何直接输出一个库函数到dll?

例如输出IMSL库函数DEI到aa.dll,有如下代码:

real(8) FUNCTION F_DEI(x)
!DEC$ ATTRIBUTES DLLEXPORT::F_DEI
USE Numerical_Libraries
real(8) x
F_DEI=DEI(x)
END FUNCTION

但以上是通过函数F_DEI间接输出了DEI,如何直接输出IMSL库函数DEI呢?

18 楼

多谢楼主,我的意思是循环中的语句标号,比如:
      do 10,i=1,5,1
        write(*,*)i
10    continue
我试验过了,同一个源文件中不同的程序单元可以出现相同的语句标号,不会出错,至少在gfortran编译器下。
多谢楼主了。

19 楼


楼主您好,请教一下,一组数据从小到大排序后,怎么输出其原始位置啊,能否实现像MATLAB中的sort(A,I)命令

20 楼

回18楼:应该是可以的,大概这种标号的作用域只在函数体内吧。

我来回复

您尚未登录,请登录后再回复。点此登录或注册