t********s 发帖数: 4503 | 1 在学校用Fortran得挺多,但很多商业软件好像都是用C或C++.谁能说一下到底是Fortran
, C, 还是C++,更适合做大型科学计算软件,为什么? |
p***m 发帖数: 387 | |
t********s 发帖数: 4503 | 3 比如解偏微分方程组,或迭代求解线性方程组,等。其实本质就是一些循环判断语句再
加加减乘除运算。
【在 p***m 的大作中提到】 : 科学计算是个非常笼统的概念。
|
N********n 发帖数: 8363 | 4 Fortran, b/c it's much easier to optimize than C/C++.
【在 t********s 的大作中提到】 : 在学校用Fortran得挺多,但很多商业软件好像都是用C或C++.谁能说一下到底是Fortran : , C, 还是C++,更适合做大型科学计算软件,为什么?
|
t********s 发帖数: 4503 | 5 问个具体问题:
fortran子程序中可用变量来定义数组大小,但所对应的数组最终要在主程序中定义具
体的大小,比如100X100的二围数组。但如果生成软件给用户时,用户得到的是二进制
码,不是你的源程序,所以用户不能改变这个数组的大小。如果用户要求解一个
1000X1000的问题怎么办?C可以动态分配数组大小,所以用户可输入所要求解的问题大
小给一个变量,程序运行时可自动分配到所需空间。Fortran怎么办? |
t********s 发帖数: 4503 | 6 主要以浮点计算为主的程序有必要用面向对象(比如:C++)编程吗?好像顺序结构更
自然。 |
r****y 发帖数: 26819 | 7 新版的fortran是不是已经解决这个问题了?我记得也有动态数组了。
【在 t********s 的大作中提到】 : 问个具体问题: : fortran子程序中可用变量来定义数组大小,但所对应的数组最终要在主程序中定义具 : 体的大小,比如100X100的二围数组。但如果生成软件给用户时,用户得到的是二进制 : 码,不是你的源程序,所以用户不能改变这个数组的大小。如果用户要求解一个 : 1000X1000的问题怎么办?C可以动态分配数组大小,所以用户可输入所要求解的问题大 : 小给一个变量,程序运行时可自动分配到所需空间。Fortran怎么办?
|
a******e 发帖数: 982 | |
w***g 发帖数: 5958 | 9 我感觉科学计算还是用fortran多一些,因为有很多现成的library可以用。我不会fort
ran,但是基本上用C/C++调用fortran library也没什么问题。如果问题规模小的话自然
是matlab最方便。
Fortran
【在 t********s 的大作中提到】 : 在学校用Fortran得挺多,但很多商业软件好像都是用C或C++.谁能说一下到底是Fortran : , C, 还是C++,更适合做大型科学计算软件,为什么?
|
l*****d 发帖数: 359 | |