由买买提看人间百态

topics

全部话题 - 话题: fortran
1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)
m*****1
发帖数: 195
S***y
发帖数: 186
2
来自主题: Computation版 - 关于C和Fortran: 一点儿个人观点
关于C和Fortran: 一点儿个人观点
1. C和Fortran其实并不具可比性。C应该是算中级语言,而Fortran是高级语言。
也就是说,理论上上讲Fortran能干的事C全能干。我相信Fortran的compiler
很大部分应该是用C写的。所以,当你说Fortran支持Variable-size matrix时,
马上就有人能给你找出一个C的library来support这个功能。好,你说Fortran
支持复数计算,C高手立刻就能给你现写一个complex class支持所有你想要的
任何manipulations on complex numbers. 关键是你觉得那个更方便呢?
2. Fortran其实很容易学,有点编程语言基础的两三天就能上手用。再有多
两三个星期实践一下,Fortran的程序基本就能看懂了(当然前提是算法你已经
懂了)。这么简单,而且同行都在用,学学无防啊。
3. 这个有点老生长谈了。就是很多科学计算的老程序都是Fortran写的,都是
身经百战的,绝对bug-free。你非要用C把这些东西从写一遍,别人也没办法。
4. 再有就是performanc
k*********g
发帖数: 791
3
来自主题: Computation版 - c++ versus fortran
1 功能
c++什么都能做,早期fortran只能做数值计算,现在能做非数值的东西,但还是远没有
c++完备;
其实,fortran77是个好东西:专项、简单;从fortran90开始,哲学出了问题;
2 软件开发
c++是开发软件的最好语言,很大程度是因为它的“面向对象”的特点,其实就是“鼓
励”、“帮助”庞大的程序群的“创造”、“管理”;
用fortran写软件,不仅仅有些功能(如,对计算机软硬件的操作)没法办,而且整个
软件会被管理得一塌糊涂;用c++,10个人1年就能搞定的东西,if用frotran,同样10
个人估计需要5年;
3 软件工程
即便不是做软件,而是写个1万行数量级的程序,c++也因为promotes优良的编程习惯而
战胜fortran;
4 super c
如果没有那么多的“object”,不需要++,那么可以不用c++的那些oop东西,把它当作
一个改进的c,有人称之super c,来用;这样,c++和fortran都是command oriented的
结构化语言; 用super c 写的程序,将来能比较迅速地upgrade成软件,if fortran,
得... 阅读全帖
t****t
发帖数: 6806
4
来自主题: Programming版 - 求推荐:fortran好用的debug软件
不是说fortran就比C快, 而是fortran这语言本身的限制比较多, 因此编译器比较容易
优化甚至进一步作并行处理. 不灵活当然就可以快.
现在很多特性被C借去了, 比如说C99的restricted修饰词就是从fortran借来的, 因为
fortran缺省就是restricted. 这是fortran高性能的来源, 而不是上面有人说的什么所
有调用都是reference, 跟这个没关系. 两个语言的性能差的确是在缩小. 但是问题是,
以前的计算程序都是fortran的, 数量太过庞大, 不可能全部转换成C重写, 何况C本身
没有速度优势.
另外现在计算机比以前复杂多了, 一般经验的程序员写汇编几乎不可能拼过编译器. 这
条路很难走通了. 所以作计算仍然是fortran第一, C靠后站.
p*****e
发帖数: 310
5
据《纽约时报》报道,Fortran创始人约翰·巴库斯(John W. Backus)上周六在美国俄勒
冈州的家中去世,享年82岁.Fortran由巴库斯领导的IBM团队开发完成,是第一门广泛应用
的程序语言.从某种意义上讲,Fortran的出现打开了现代计算的大门.
巴库斯的女儿卡伦·巴库斯(Karen Backus)公布了父亲去世的消息.著名计算机历史
学家简·李(J.A.N. Lee)表示,1957年发布的Fortran堪称是软件行业的转折点,就像微处
理器对硬件行业一样重要.Fortran改变了人机通信的方式,使得程序语言更容易被用户理
解和接受.因此,Fortran一直被认为是首款大获成功的高级语言.
上世纪50年代,巴库斯领导一个年轻的团队开发出了一门新型程序语言.从表面看来
,它就像是英语速记和代数的结合.事实上,Fortran就是公式转换器(Formula Translato
r)的简称,同工程师及科学家日常使用的代数公式有很多相似之处.经过一段时间培训,他
们就可以十分轻松地将科学和工程问题转化为计算机能够“理解”的语言.Unix操作系统
开发者之一的肯·汤普森(Ken
t****n
发帖数: 4
6
我现在要用C调用fortran程序,两者里面均要用到MPI并行程序的语句,但是MPI针对这
2种语言的格式是不一样的,怎样统一呢?我的问题出在:C里面的进程号带不到
FORTRAN中来,因此在FORTRAN程序段不能进行收发。也就是说在C程序段要进行MPI初始
化,那FORTRAN程序段还要初始化吗?如果FORTRAN程序段初始化了,那么C和FORTRAN的
进程号等就会不一样了;如果FORTRAN程序段不初始化,那么根本就不能进行收发的操
作。不知道该怎么解决呢?谢谢!
O******e
发帖数: 734
7
来自主题: Programming版 - 在C/Fortran之间传递2维数组
Don't use anything like **x in Fortran. It is detrimental to optimization.
Fortran arrays regardless of dimensionality are basically C pointers like *x.
Fortran pointers have no equivalent in C.
If you insist on using a Fortran equivalence of **x for 2D arrays, read the
C interoperability chapter in Metcalf, Reid, and Cohen's Fortran 2003
Explained.
Also look up "assumed-shape arrays" in a good Fortran textbook.
s******u
发帖数: 179
8
谢谢你的回复。对指针,无论是C里的还是fortran里的,我想最少有一点是相通的,用
指针赋值要比直接传值快,这就是我在我的fortran程序里大量使用指针的原因,因为
我要频繁把这些值取出来操作。在我测试的时候发现,把这些值取出花费了比我想象得
多得多的时间。
至于您提到的三个问题,第一个array subsection是指对大矩阵的一部分进行操作么?
在fortran中,指针能令对部分矩阵元素操作更便捷,比如定义一个指针数组,指向某
一个大矩阵的部分元素,那么对这个指针数组的操作要比对原矩阵操作更有效和快速。
第二个问题,矩阵赋值,用指针也能够比直接赋值要快吧,毕竟只需要把地址传过去就
行了。
第三个问题,我对c没怎么深究过,不清楚具体怎么回事。但是fortran中好像不能对地
址进行操作,在fortran中得不到一个数组的地址,我也想过把这些数据存在一个连续
空间中,然后安地址一个一个往后读,但是不知道怎么在fortran中得到这个数据的地
址。
谢谢您的回复,感激涕零.
w*****3
发帖数: 910
9
来自主题: Linux版 - Fortran complier
准备compile CMAQ 一个大气模型软件。
里面的module 指明用PGI or Intel Fortran 。
Requirements: I/O API & netCDF libs, CVS, and PGI or Intel Fortran
但这两个fortran compiler 都不免费。
想用GNU gfortran 但是module中 Flags参数不一样。
#> Portland Group 9.01 Fortran Compiler Flags
#set FSTD = "-Mfixed -Mextend"
#set LINK_FLAGS = "-Bstatic"
#> Intel Fortran 10.1 Compiler Flags
set FSTD = "-extend_source 132 -vec-report0 -cm -w95 -c"
set LINK_FLAGS = "-liomp5 -lpthread -Bstatic"
不知道有哪位高手可以指点一下。
多谢了
O******e
发帖数: 734
10
来自主题: Programming版 - fortran 77 introduction book recommendation?
If you are already proficient in another programming language, you should
be able to read most of the code already, and whatever keywords you don't
understand, you can find easily through Google.
If you still want a reference book, try "Fortran 90/95 Explained" or
"Fortran 95/2003 Explained" by Michael Metcalf et al. Fortran 77 is
a subset of Fortran 9x/2003 and is covered by these books (in the
appendices). Metcalf's older book specifically about F77 is "Effective
FORTRAN 77".
Or try Numerica
l*******G
发帖数: 1191
11
来自主题: Programming版 - 求推荐:fortran好用的debug软件
In the 60'th 70'th computers were really limited in capability, so the
scientists took great great efforts to optimize fortran compiler in order to
solve big problems. Those efforts made fortran far more compact, close to
computer soul in terms of number crunching。 now adays, good languages
appear every day but far less optimized in performance. Fortran is very
portable.
That is why fortran is still king in scientific computing. Fancy objects are
cool, but do not get to the answer quickly enoug... 阅读全帖
gw
发帖数: 2175
12
【 以下文字转载自 Programming 讨论区,原文如下 】
发信人: gw (唧唧歪歪~~~~要饭糊口), 信区: Programming
标 题: 请教: intel fortran 的 segmentation fault
发信站: Unknown Space - 未名空间 (Wed Jun 1 19:45:21 2005) WWW-POST
这里都是讨论C++的, 不知道在哪儿问关于FORTRAN的编程问题.
我有一个fortran程序, 在 windows 下用 compaq virtual fortran
编绎运行都没有问题,连结果都是正确的.
可是现在想在 linux 下用 intel fortran 编译运行( 编译器是 ifort (efc) ),
编绎没有问题,可是运行时出现错误:
/opt/intel/compiler70/ia64/lib/libunwind.so.4: undefined symbol:
GetImageHeader
forrtl: severe (
x*****u
发帖数: 3419
13
来自主题: Computation版 - 关于C和Fortran: 一点儿个人观点

真的? Intel真是我最佩服的公司了。公司不想着赚钱,却出免费版本,还是成系列的出
。。。这样的公司,不知道有几个?
这点我想的有点走题。我是想如果编译器要钱,那程序就得跟这份钱绑在一起,如果谁要
用这程序,还要花这份钱,从这个角度来看,portable的问题。
大,
种li
花几
住在F
:) 有专业精神,这我是敬佩的。记得从前有个同学跟我讲起,说Fortran比起C来太差了
,云云。。。我当时啥都不懂,但就觉得,做不同的事情,用不同的工具,看你的要求了
,Fortran应该更适合做计算。我现在也仍是这样认为。我所想表达的意思是,如果可能
,最好不要只局限于一个Fortran,哪怕只做计算,而Fortran也足足够用。了解了解C,了
解了解底层,并能在适当的时候做适当的选择,应该也是一个对科学计算工作者的基本要
求。说道快乐,老实说,仅从编程角度来说,编Fortran程序的确没有编C程序来的快乐,
在windows下编程序没有在linux下编程序来的快乐。 当然这只是愚识,见笑。
O******e
发帖数: 734
14
来自主题: Computation版 - 菜鸟问关于学习Fortran

For
This depends on the Abaqus user Fortran interface. Check their
documentation.
If you already have programming experience in some other language such as
C/C++ and you are good at it, I would suggest that you use Numerical Recipes
as a reference because there are a lot of practical examples given in the
book, and you can cross-reference the C, C++, Fortran 77, and Fortran 95
editions (the same function/subroutine written in four different languages).
The "Fortran 77 Explained", "Fortran 90/9
k*********g
发帖数: 791
15
来自主题: Computation版 - c++ versus fortran
1 功能
c++什么都能做,早期fortran只能做数值计算,现在能做非数值的东西,但还是远没有
c++完备;
其实,fortran77是个好东西:专项、简单;从fortran90开始,哲学出了问题;
2 软件开发
c++是开发软件的最好语言,很大程度是因为它的“面向对象”的特点,其实就是“鼓
励”、“帮助”庞大的程序群的“创造”、“管理”;
用fortran写软件,不仅仅有些功能(如,对计算机软硬件的操作)没法办,而且整个
软件会被管理得一塌糊涂;用c++,10个人1年就能搞定的东西,if用frotran,同样10
个人估计需要5年;
3 软件工程
即便不是做软件,而是写个1万行数量级的程序,c++也因为promotes优良的编程习惯而
战胜fortran;
4 super c
如果没有那么多的“object”,不需要++,那么可以不用c++的那些oop东西,把它当作
一个改进的c,有人称之super c,来用;这样,c++和fortran都是command oriented的
结构化语言; 用super c 写的程序,将来能比较迅速地upgrade成软件,if fortran,
p*s
发帖数: 71
16
来自主题: Statistics版 - Different results from SAS R and Fortran
I used R-package JohnsonDistribution to estimate Sb curve parameters using
method of moments, but R shows no solution. Then, I tried SAS and Fortran.
SAS also can not find a solution, but Fortran did. The Fortran program was
published on a journal. I believe the R-package and SAS proc come from the
Fortran program. I wonder why Fortran can obtain results but SAS and R
cannot do it.
O******e
发帖数: 734
17
来自主题: Programming版 - 问个c调用fortran函数的问题
A C pointer is just a simple address to a contiguous piece of memory, but
a Fortran pointer is actually a complicated internal data structure in
the Fortran run-time library, which stores not only the starting address
of the target, but also the rank, the lower and upper bounds and the
strides of the indices, and it may therefore point to a collection of
noncontiguous pieces of memory. For example, a Fortran pointer x can
point to a normal (5,5) array, and another Fortran pointer y can point to
x********3
发帖数: 566
18
来自主题: Programming版 - 请推荐一些Fortran编程的书
在用Fortran写程序,这样可以利用很多老的程序。可是老程序都是fortran 77写的,
很容易读,可是总是跳来跳去,有时候很吃力,另外自己改写起来比较麻烦。考虑到这
个模型有一些实际的工程价值,打算将来自己进一步开发一下作为自己的成果。到时候
想用新的语法写,把模块化和面向对象的编程思想体现出来,另外用新的语法程序应该
能运行的快一些。可是手头只有fortran 90、95的教材,很少有大型的程序读,不容易
领悟这个新语法的使用。请大家推荐一下用Fortran 95写的一些面向对象的程序集。谢
谢了。
y**b
发帖数: 10166
19
来自主题: Programming版 - 求推荐:fortran好用的debug软件
有些大型专业程序,都是几十年前慢慢发展过来的,比如大气、海洋、地学模型,
都还是fortran,也不可能转到c++。有些02年开始开发的大型模型框架,还特意
选用fortran,估计也是从性能出发。当然耦合这些模型的时候就痛苦了。前段
时间准备耦合一个固体力学的小型模型,那个group的研究做得不错,可是fortran
写的代码,光主程序就一股脑3000多行。
另外还有一些先知,在还没有STL的时候就用C++开发大型模型框架,底层的东西
都自己写一遍,够神的吧,这种模型现在扩展和耦合起来比fortran方便10倍都
不止。好的C++代码能轻松提供非常精悍的封装,在模型耦合方面的效率高很多。
z****s
发帖数: 192
20
来自主题: Programming版 - 发现版上没有聊fortran的
Fortran 对array的处理好像比C的效率高。有人说fortran太老将被淘汰有点天方夜谭
。感觉现在NOAA, NASA等研究机构做底层计算好像还是fortran和C的天下(
improvement/variants可以说是类fortran/c)。
p*********w
发帖数: 23432
21
猴年马月没用过 fortran了,记不清了。
反正对于字符、文件处理不是 fortran 的强项。
编译那个子函数,把命令行的参数带进去,这样就可以写 dos 批处理了。
比如,你把那个编译成 aaa.exe
你的批处理就写成
aaa input_1.txt output_1.txt
aaa input_2.txt output_2.txt
aaa input_3.txt output_3.txt
.....
你要是不会编批处理文件,
就拿个文本编辑器复制一下(自动加1那种)
构造那些命令行
然后就运行这个bat文件

多谢回复!不过,还有两点疑问:
1. 大侠的意思是:fortran中没有刻将文件名分段串起来的函数?
我知道C和Matlab都是有这样的函数的,所以循环读入仅部分
不同的文件名非常容易,但看样子fortran好像没有,请问我
的理解对不对?
2. 请问在外围写个bat调用是怎么回事?大侠可否给个bat的script,
再指点一二?谢谢!
w*******g
发帖数: 99
22
来自主题: Computation版 - 哪里有Fortran教程可下?
The best way is to get some books from library, I think most library has
plenty of books about fortran (both 77 and 90). I just used altavista to
search fortran and I think there are a lot of tutorials... You might want to
try
http://www.scd.ucar.edu/tcg/consweb/Fortran90/F90Tutorial/tutorial.html
If you like to read Chinese version you can use SSReader to download some
fortran books... If you have enough programming experience I don't think it
will take you long to learn fortran. Good luck!
f****r
发帖数: 27
23
来自主题: Computation版 - Fortran and C
Well, the performance of C could be really close to Fortran, but need some
extra work on programming. For example, quoted from
"www.hpcf.cam.ac.uk/C_rant.html",
The bottom line effect of this difficulty easy to see: compiling the standard
sources of LINPACK on babbage achieves 54 MFLOPS in FORTRAN and only
34 MFLOPS in C - significantly in FORTRAN's favour. The use of
(non-portable) directives does improve
this, with equal performance being achievable with C
and FORTRAN on babbage.
o******d
发帖数: 1552
24
来自主题: Computation版 - Fortran and C
they are comparable, when you check the corresponding assembly codes of
the C and Fortran. this claim is true. Fortran does not support recursion.
if you use recursions in C, but use the functionally equivalent loops in
Fortran, of course Fortran outperforms C.
i******d
发帖数: 4
25
Definitely you can call matlab from Fortran by matlab engine open. I did this
before.
I think you may find an example in the help files of Fortran, one point you
need to be careful about is when you debug the fortran codes, you have to add
all of the related matlab library function into the current fortran project.
otherwise, you will get so many link problems.
good luck
O******e
发帖数: 734
26
来自主题: Computation版 - Fortran问题
If you really need to handle general signals using native Fortran,
you will need a compiler that supports the PXFSIG* subroutines
defined in the POSIX Fortran binding standard IEEE 1003.9-1992.
It might be easier to use mixed Fortran/C++ compilation to do
what you want, if your compiler supports mixed language calling.
If you only want to deal with numerical exceptions, check whether
your compiler supports the Fortran 2003 ieee_exceptions intrinsic
module.
e*l
发帖数: 37
27
来自主题: Computation版 - c++ versus fortran
fortran本来就是专门搞数值计算,用它做非数值的东西不是瞎搞么?
C++并不是什么都能做,底层的硬件操控还得靠汇编。
f77就是垃圾,f90标准出来得太晚,而且太保守,但是比f77好的多。
面向对象的语言多了去了,把C++说成是最好语言就是扯淡!
C++语法复杂,编程中需要关注的细节很多,编程效率并不高,相比Fortran隐藏
了很多细节,要简单得多,你的10人年的例子就是胡扯!
C++促进优良的编程习惯?地球人都笑了!难道用fortran就没有良好的编程习惯
了?
第5点是你自己凭空造的吧,你学过计算机操作系统没有?
速度的提法也是扯淡,C++编写代码以及调试比fortran要复杂得多。
你贴的博士论文上的代码有点糟糕,你只是把C++当成C在用而已,同样的东西用
frotran也可以做得更漂亮.

10
e*l
发帖数: 37
28
来自主题: Computation版 - c++ versus fortran
fortran本来就是专门搞数值计算,用它做非数值的东西不是瞎搞么?
C++并不是什么都能做,底层的硬件操控还得靠汇编。
f77就是垃圾,f90标准出来得太晚,而且太保守,但是比f77好的多。
面向对象的语言多了去了,把C++说成是最好语言就是扯淡!
C++语法复杂,编程中需要关注的细节很多,编程效率并不高,相比Fortran隐藏
了很多细节,要简单得多,你的10人年的例子就是胡扯!
C++促进优良的编程习惯?地球人都笑了!难道用fortran就没有良好的编程习惯
了?
第5点是你自己凭空造的吧,你学过计算机操作系统没有?
速度的提法也是扯淡,C++编写代码以及调试比fortran要复杂得多。
你贴的博士论文上的代码有点糟糕,你只是把C++当成C在用而已,同样的东西用
frotran也可以做得更漂亮.

10
t****b
发帖数: 47
29
来自主题: Computation版 - 有推荐比较好的fortran 书吗?
俺20年前学的Fortran都还给谭浩强、田淑清了,需要的时候就找电子版看。
常用得书是,实际上是Sun公司的文档,有些东西在
Intel Fortran和PGI Fortran中还编译不过去。
x*****u
发帖数: 3419
30
来自主题: Computation版 - Calling Cuda Functions from Fortran z
http://www.computationalmathematics.org/topics/files/calling_cuda_from_fortran.html
Calling Cuda Functions from Fortran
Author: Austen Duffy, Florida State University
Cuda functions can be called directly from fortran programs by using a
kernel wrapper as long as some
simple rules are followed.
1. Data Types: Make sure you use equivalent data types, these basically
follow from fortran --> C
conventions. Make sure to specify fortran integers and reals, note that
integer*2 is a short int in C, I h
m***7
发帖数: 7
31
来自主题: Statistics版 - 在R里call fortran问题请教
在R里建一个方程,方程中用到了IMSL FORTRAN library里的一个function,QDAWO,我知
道R里只
可以call fortran subroutine, not function,所以我就把这个QDAWO方程wrap到一个
subroutine中去,然后在R 里面call.
我还没有试过,因为FORTRAN的软件一直没有搞定,只是有上述的构想,我想知道的是
,那这个R方程写好了以后在没有fortran,也没有IMSL LIBRARY的电脑上可以顺
利的运行么?
谢谢了
s******m
发帖数: 590
32
我刚安装了matlab2008b
运行mex -setup
结果无法识别fortran compiler
我用的fortran是 compaq visual fortran 6.6
操作系统是vista
有人知道这个问题怎么解决吗?
谢谢
w*****3
发帖数: 910
33
咱们这有谁对linux比较熟啊,linux下软件安装编译fortran 比如 gfortran, intel
fortran, portland fortran 啥的?请教些问题。 多谢!
m**t
发帖数: 174
34
【 以下文字转载自 Programming 讨论区,原文如下 】
发信人: meat (靖哥哥--visa是我永远的痛), 信区: Programming
标 题: 问个fortran的基础问题
发信站: Unknown Space - 未名空间 (Sun Nov 28 22:52:48 2004) WWW-POST
老师让做project, 给了个fortran的软件包,原码
两个问题:1。 为什么在我的fortran compiler (ftn95)总是编译的时候报错,说是矩阵
的dimension不对,但是别的同学却可以没有问题,可以使用;
2。如何在matlab里面调用这个软件包?
谢谢了,
t********e
发帖数: 3
35
请教各位大牛:现有一fortran程序,包含若干子程序及若干modules。
每个module没有什么实质的内容,就是一堆参数列表及declare相应的变量。
本人打算用C改写该fortran程序,请问用什么形式代替这些modules?
Basically, I plan to use "header" file to replace "modules"
in fortran? any better idea?
Thanks a lot.
c****n
发帖数: 271
36
【 以下文字转载自 CS 讨论区 】
发信人: cusoon (reunion), 信区: CS
标 题: window 7下面的intel fortran编译器那个版本能用?
发信站: BBS 未名空间站 (Sat Dec 11 18:39:04 2010, 美东)
请问应该安装哪个版本的
intel fortran
在电铝上下了个 Intel Visual Fortran Compiler For Windows v9.0.020 Final
但是没有序列号
请问哪位能给个可以安装的序列号
或者其他版本的下载连接
h*******s
发帖数: 24
37
【 以下文字转载自 Windows 讨论区 】
发信人: hedonists (hedonists), 信区: Windows
标 题: Interfacing Microsoft Excel VBA with FORTRAN
发信站: BBS 未名空间站 (Sun Jul 1 12:30:51 2007)
我有一个比较大的程序原来用FORTRAN写的. 现在想借用Excel来做数据的输入和输出,
即让FORTRAN读入Excel里的用户输入数据,运算后再把数据输出到Excel里显示.
不知道谁有这方面的经验或者有什么推荐的参考书,敬请不吝赐教.
M**********n
发帖数: 432
38
【 以下文字转载自 Computation 讨论区 】
发信人: ManshengChen (像琼瑶一样老去), 信区: Computation
标 题: How to read binary(data) file generated by Fortran in C/C++?
发信站: BBS 未名空间站 (Sat Oct 13 19:28:21 2007)
How to read binary(data) file generated by Fortran in C/C++?
Is it possible? If possible how to realize it?
The binary file generated by Fortran is a double precision data file.
I have tried to use read binary file in C++, but have problem. The following
is my C++
code.
double temp=0.0;
ifstream File("bin.data",i
O******e
发帖数: 734
39
来自主题: Programming版 - 符号%在FORTRAN 中是什么意思?
// concatenates string A and string B.
=> is a Fortran pointer assignment. Fortran pointers are not the same as
pointer in C/C++, so
integer,pointer::A
integer,target::B
A = >B
is not exactly equivalent to
int *A, B;
A = &B;
and
integer,dimension(:),pointer::A
integer,dimension(1:N),target::B
A => B
is not the same as
int *A, B[N];
A = B;
If you want to know about the subtle differences, read Metcalf et al.,
Fortran 95/2003 Explained.
O******e
发帖数: 734
40
A FORTRAN 77 compiler must support both single- and double-precision
data, but is not required to support quadruple-precision. If a
FORTRAN 77 compiler supports quad-precision data, the name of the
conversion function is implementation dependent, so you'll have to
check the compiler manual.
In Fortran 90 or later, the compiler is also not required to support
quad-precision data, but if it does support it, the standard way to
convert data is to call the real() function with a kind type parameter
m**********g
发帖数: 115
41
来自主题: Programming版 - 另一个Fortran 问题
对fortran不熟,只是有时候需要读一读。有这样一段代码,很不理解,望能人予以解答
c Area.f --- To calculate area, radius is given
#ifndef CONSTANT_PI
# define CONSTANT_PI 3.14159
#endif
real*4 area
real*4 r
r = 1
area = CONSTANT_PI*r*r
write(6, *) area
end
我看到别人能运行,用的是cygwin下的f77编译的。觉得很奇怪,我觉得ifndef和
define都是c下面的东西啊,怎么能在fortran里面用呢。我自己试的时候,编译器说第
一行就有问题。然后我就把第一行和第三行都去掉,编译通过。但是运行后,area的数
值不是3.14159而是一个乱七八糟的东西。
请问,是不是我的f77配置有问题,是不是通过某种配置之后,就能够认知ifndef。还
有define是fortran 77里的关键字吗?谢谢
t*****n
发帖数: 4908
42
来自主题: Programming版 - 求推荐:fortran好用的debug软件
以前一直用compaq fortran6.5。后来好像intel fortran已经支持visual studo2003。
不过liences不便宜。
还有就是gdb吧。
你如果是维护已有的fortran代码,可以理解。如果写新的代码,建议放弃fortran吧。
t********e
发帖数: 3
43
请教各位大牛:现有一fortran程序,包含若干子程序及若干modules。
每个module没有什么实质的内容,就是一堆参数列表及declare相应的变量。
本人打算用C改写该fortran程序,请问用什么形式代替这些modules?
Basically, I plan to use "header" file to replace "modules"
in fortran? any better idea?
Thanks a lot.
l***f
发帖数: 618
44
来自主题: ChemEng版 - 请教有关fortran
Fortran 也有visual studio的编译版本了,叫visual Fortran 90什么的。
如果你有code,在你的电脑上安装fortran,如果code没有bug的话,就可以直接运行。
D********g
发帖数: 533
45
来自主题: ChemEng版 - 请教有关fortran
Free compiler:
1. GNU gFortran http://gcc.gnu.org/fortran/
If you have computer facilities in your dept, they should be there. just g77
to invoke that.
2. Intel Fortran Compiler: http://www.intel.com/cd/software/products/asmo-na/eng/282048.htm
Free for non-comercial Use.
Good for Win.
3. Compaq Visual FORTRAN
Like Visual Studio, but it's not free. And not recommend to use.

code
l******v
发帖数: 12
46
来自主题: Computation版 - Fortran code optimization
yeah, that's the row major and column major difference between C and Fortran.
btw, in Fortran 90 and some implementations of Fortran 77, array ops are much
simpler. just write:
c = a + b, if a, b, and c are of same form
dot_product(a, b) gives the dot product of two vectors of same length
mat_mul(a, b) gives the multiplication of two matrix
d = k*a, when k is scaler, a and d has same form
the optimization jobs are then handled by the complier

for
performance
optimization?
t******q
发帖数: 117
47
what is Fortran compiler for windows?
why do you use linux g77/f77 fortran compiler?
or you may try cygwin g77/f77 fortran compiler under windows
all are free, works great.
r****y
发帖数: 1437
48
来自主题: Computation版 - 谁给说说fortran的几个标准

No almost no software company still provides updated version of
Fortran compilers. The latest version of PGI Fortran compiler is actually
worse than the previous version.
I heard some modeling groups seriously consider rewritting all
codes in C, so they do not need facing this Fortran problem.
a*******x
发帖数: 47
49
来自主题: Computation版 - fortran还是matlab?

我知道的几个fortran编译器最近的更新时间:
July 1, 2004 - Lahey/Fujitsu Fortran v6.20c maintenance update is now available.
Sep 15,2004 - Intel Fortran 8.1 released
你所说的most是指哪几个?
S***y
发帖数: 186
50
来自主题: Computation版 - 关于C和Fortran: 一点儿个人观点

持保留意见。应该说用Fortran和C的人都在增多,不过用C的增加更快。
但还是那句话,这没可比性,因为C应用领域广的多。
应该是已经淘汰了吧,没人再用F77写专业程序了,我想。
F90是比F77复杂多了,但其实把Module和Allocatable Array整明白,
再把那些增加的Intrinsic Functions记住,就差不多了。
Intel有免费的F90/95的编译器啊,性能不错。
你要是买更牛的机器,这compiler的成本应该是占很小的比例吧。
关于Portability, 我用过的commercial packages, 用Fortran写的都可以
在我所有的机器上编过,IBM, SGI, Alpha, Itanium, Pentium ...
C的我没用过。但我想实际上很少有C的程序是在ANSI Standard下写的,
都或多或少的使用了compiler-dependent extensions,所以这portability
反而会有问题。纯属个人愚见。:)
免费的Fortran写的library就更多到我都不想说了,当然都是做计算的。:(
当你面向整个世界时,
1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)