热门推荐








怎么编译运行这个fortran语言编译的程序
问题描述
- 精选答案
-
入门fortran像入门其他所有语言一样,从最简单的装软件开始
【0】装软件
初学建议直接cbfortran,windows版本还自带mingw编译器,支持f77 f95 f2003,也不大,而且开箱即用,安装之后新建项目然后F5就Hello word了。
非常适合小东西,写个小计算单机跑跑之类的合适
然而,终究,学fortran就是为了速度,而mingw编译器本省优化是不足的,所以还是要装vs+parallel studio。用ifort编译会有mkl和mpi支持。但是安装起来比codeblocks麻烦多了
【1】变量,算符,代数运算,矩阵运算
这个推荐一个小repo,里面有很多小例子,结合书上讲的内容
Pjer-zhang/fortran-examples
跑跑小例子,语法很快就好了
【2】并行
并行是fortran的终极目的,用fortran终究还是为了fortran的速度
fortran的并行有单机多线程并行 openmp 以及 跨节点并行MPI,这个跨节点并行就要用到集群了
openmp【
Home
】是通过向程序中添加特殊注释符的形式来指示并行段的,这样在编译的时候如果添加flag [-omp] 那么最后程序跑的时候就会并行,如果不加这个flag那么久不会并行。一个小例子:
【结语】
Fortran的能存在到今天完全是因为成吨的遗产代码,以及懒惰的研究生
不只是CFD,空间物理,计算等离子体,聚变数值计算等等这些学科里都有动辄几十万行的模式(大部分f77写的),这些模式只有模块介绍和对应的已发表paper,没有line-by-line注释,想要重构几乎没有可能,所以只能像黑盒一样调用。
我的原则是小规模的fortran遗产代码(10k行以下),重构到matlab或者如果性能需求很高的话就cuda/c。不能把毒瘤传给下一代
最后, 科大有开Fortran的课的哇,7系开的,我还当过助教呢
猜你喜欢内容
-
总课程表统计个人课时怎么算
总课程表统计个人课时怎么算回答数有3条优质答案参考
-
辅警35岁后必须离职吗
辅警35岁后必须离职吗回答数有3条优质答案参考
-
公务员放弃考试就可以退费吗
公务员放弃考试就可以退费吗回答数有3条优质答案参考
-
公务员考试审核通过了可以放弃不
公务员考试审核通过了可以放弃不回答数有3条优质答案参考
-
公务员笔试入围可以放弃吗
公务员笔试入围可以放弃吗回答数有3条优质答案参考
-
公务员考试如何放弃资格复审
公务员考试如何放弃资格复审回答数有3条优质答案参考
-
考公务员哪个环节可以放弃
考公务员哪个环节可以放弃回答数有3条优质答案参考
-
一家小区的纹绣店说说
一家小区的纹绣店说说回答数有3条优质答案参考
-
消防职业技能鉴定怎样登录
消防职业技能鉴定怎样登录回答数有3条优质答案参考
-
如何查看消防鉴定站报名人数
如何查看消防鉴定站报名人数回答数有3条优质答案参考