24小时热门版块排行榜    

CyRhmU.jpeg
查看: 2652  |  回复: 13
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

gxqlp

铁杆木虫 (正式写手)

[求助] fortran程序在SSH计算中心上运行的问题!

我用fortran编写的程序,有两个版本,差别只是一些中间量是否输出。在SSH计算中心上运行时,两个版本的计算结果居然有很明显的差别,而在自己的PC上计算,两个版本的结果一样。我懂得不多,SSH上的系统是unix,我的PC是windows系统,在编译时,我也进行了相关的转化。不知道是什么引起这个问题。难道真是变量的输出改变了其值?请高人指点!!!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

理想很丰满,现实很骨感!努力。。。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gxqlp

铁杆木虫 (正式写手)

引用回帖:
9楼: Originally posted by virtualzx at 2013-10-23 00:27:11
嗯,加了这个选项之后编译器会在程序里加入自动检查错误的代码,有错误自动停止。这个错误是说你axisph这个数组调用下标越界了,说明代码本身有错误,改吧。...

我试了一下,将出错的数组的维数改好,再计算时,没有write语句输出的版本(1)算出来的结果跟之前有输出语句的版本(2)结果一样。现在正在试着把版本2中的数组也修改后,看看会有什么差别。我有个疑问,就是我write语句要输出的值跟我现在检查出来数组越界的变量没什么关系啊,系统会产生这样的错误吗?
理想很丰满,现实很骨感!努力。。。
10楼2013-11-01 06:50:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 14 个回答

jerkwin

专家顾问 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
1. 编译选项不同
2. 程序有bug
2楼2013-10-19 08:02:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gxqlp

铁杆木虫 (正式写手)

在SSH上两个版本从编译到生成可执行文件,都用的一样的命令,两个版本唯一不一样的地方就是是否输出变量的问题。如果有其他的bug,那两个版本都有啊。我试了下,如果把输出变量的命令去掉,算出来的结果就与本身没有输出命令版本的结果一样。真是奇怪了。。。
理想很丰满,现实很骨感!努力。。。
3楼2013-10-19 08:08:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lin417

铁杆木虫 (著名写手)

微信:xglin86

【答案】应助回帖


感谢参与,应助指数 +1
gxqlp: 金币+1, 有帮助 2013-10-20 02:17:42
调试调试不就知道啦~~
不过极有可能是两个操作系统下的Fortran版本的编译器的不同导致的哈~~
生命本是场漂泊的远行,谁与你擦肩,你与谁偶遇,都是美丽的意外。珍惜能让你感动的人,铭记能让你哭泣的人,放下能让你淡漠的人,遗忘能让你无关的人。
4楼2013-10-19 10:47:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见