24小时热门版块排行榜    

查看: 2546  |  回复: 19

sinsia

新虫 (小有名气)

引用回帖:
10楼: Originally posted by snoopyzhao at 2011-08-31 15:10:27:
这不是不能用全局变量的理由,呵呵……
你说两个系统下不一致,你的编译器是一样的吗?用的参数是一样的吗?

至于后面的那个问题,要么是内存越界,要么就是你的内存请求太大……

你用动态内存,还是静态 ...

编译器都是一样的,intel fortran 11,参数也完全一样,只是系统环境不同

我的应该是内存请求太大
变量设置的时候没有指明内存动态,所以我觉得应该是静态的吧

多重网格下求解子程序中的网格信息完全不同的,还有就是各层计算得到的余量需要存储调用
所以我没有想到很好的方法去用全局变量
11楼2011-08-31 20:50:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

★
余泽成(金币+1): 谢谢参与应助! 2011-09-01 15:37:06
引用回帖:
11楼: Originally posted by sinsia at 2011-08-31 20:50:51:
编译器都是一样的,intel fortran 11,参数也完全一样,只是系统环境不同

我的应该是内存请求太大
变量设置的时候没有指明内存动态,所以我觉得应该是静态的吧

多重网格下求解子程序中的网格信息完全不同的 ...

我对你的专业不熟悉,所以帮不了你什么,但我知道,对于大量数据共享、更新要求很高的一般都用全局变量,在 fortran 77 标准中,就是用 common。在 fortran 90 及以后标准中,一般建议用 module……

至于内存申请,能够用动态就动态吧……
12楼2011-08-31 22:30:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sinsia

新虫 (小有名气)

谢谢snoopyzhao
我现在已经把局部变量的内存改为动态的了,之前的程序我是用module就没有这些问题,现在改数据结构主要是因为想写多重网格的原因。

现在还是查不出来是哪儿的问题,头痛ing
13楼2011-08-31 23:06:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
1楼: Originally posted by sinsia at 2011-08-31 09:45:51:
在win7下面用visual studio 2008 和intel fortran 11调试程序,在程序中使用了局部变量(实型数组),每次使用没有赋初值,默认初值为零。在迭代过程中发现数值在没有进入到计算时就自动更新。在linux下就没有这个 ...

我看不懂上面所引的这句话,什么叫“在迭代过程中发现数值在没有进入到计算时就自动更新。”?
14楼2011-09-01 22:14:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sinsia

新虫 (小有名气)

引用回帖:
14楼: Originally posted by snoopyzhao at 2011-09-01 22:14:41:
我看不懂上面所引的这句话,什么叫“在迭代过程中发现数值在没有进入到计算时就自动更新。”?

就是进入调用的子程序,但还没有开始执行循环迭代,在没有用到局部变量的时候,局部变量自动更新
15楼2011-09-02 10:07:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
15楼: Originally posted by sinsia at 2011-09-02 10:07:53:
就是进入调用的子程序,但还没有开始执行循环迭代,在没有用到局部变量的时候,局部变量自动更新

你如何监测到的呢?你看到的局部变量值是什么样的?有没有可能是随机取值……
16楼2011-09-02 10:45:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sinsia

新虫 (小有名气)

引用回帖:
16楼: Originally posted by snoopyzhao at 2011-09-02 10:45:26:
你如何监测到的呢?你看到的局部变量值是什么样的?有没有可能是随机取值……

我是在程序的不同位置打印输出看到的结果。这个应该是没有赋初值的局部变量随机取值,但在linux下是没有这个问题的
17楼2011-09-02 12:08:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

★
jjdg(金币+1): 感谢参与 2011-09-04 11:01:16
引用回帖:
17楼: Originally posted by sinsia at 2011-09-02 12:08:01:
我是在程序的不同位置打印输出看到的结果。这个应该是没有赋初值的局部变量随机取值,但在linux下是没有这个问题的

如果我没有记错,你前面说过,你用了相同的编译器,用了相同的编译器开关(选项),那么不应该出现不同的结果……

一般迭代运算中,需要继承上一步的中间变量取值,所以,对这类需要继承的变量,加 save 属性,或者在 Fortran 77 中用单独的 save 语句,或者用 save 变量名这种方式……
18楼2011-09-02 13:52:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sinsia

新虫 (小有名气)

引用回帖:
18楼: Originally posted by snoopyzhao at 2011-09-02 13:52:07:
如果我没有记错,你前面说过,你用了相同的编译器,用了相同的编译器开关(选项),那么不应该出现不同的结果……

一般迭代运算中,需要继承上一步的中间变量取值,所以,对这类需要继承的变量,加 save 属性 ...

谢谢
这些中间变量我下次不需要用的,我现在把这些变量全部赋初值。

现在程序发散的问题找到了,边界设置里的一个变量用错了

谢谢所有参与讨论的朋友
19楼2011-09-04 22:52:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

SNZB0405

新虫 (初入文坛)

楼主你好,我现在用intel fortran编写一个多重网格的程序,也跟你遇到了一样的问题,就是变量总是自动更新,导致数组越界,我尝试了给变量赋初值,但是也无济于事;我用的也是win7,VS2012和intel fortran2013。想请教一下楼主,你是怎样解决这个问题的呢?万分感谢。
20楼2014-07-04 09:27:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 sinsia 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 cqwQDCxMcL3I 2026-09-29 4/200 2026-09-30 16:45 by Z9YWQ5EAO3qp
[公派出国] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 cqwQDCxMcL3I 2026-09-29 6/300 2026-09-30 16:26 by Z9YWQ5EAO3qp
[考研] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 cqwQDCxMcL3I 2026-09-29 6/300 2026-09-30 16:14 by Z9YWQ5EAO3qp
[公派出国] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 cqwQDCxMcL3I 2026-09-29 4/200 2026-09-30 13:35 by C3vABopYbZJS
[教师之家] 某top大学教授说“能够在市场中兑现的能力才是真能力”无比同意! +10 zju2000 2026-09-26 13/650 2026-09-30 10:26 by yexuqing
[有机交流] 同一个分子,一条来自文献,一条来自AI——不告诉你答案,你会选哪条? +4 tianxiaoxian 2026-09-28 7/350 2026-09-30 08:34 by 88817753
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 ZYXdhzDAy9ZX 2026-09-28 4/200 2026-09-29 16:47 by yCO1Ll7aHtsw
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +3 ZYXdhzDAy9ZX 2026-09-28 4/200 2026-09-29 16:37 by etmYJ6d2rquH
[博后之家] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 ZYXdhzDAy9ZX 2026-09-28 3/150 2026-09-29 16:30 by etmYJ6d2rquH
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 tqUTOxClQUMF 2026-09-28 3/150 2026-09-29 15:46 by etmYJ6d2rquH
[博后之家] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 tqUTOxClQUMF 2026-09-28 3/150 2026-09-29 15:04 by etmYJ6d2rquH
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 tqUTOxClQUMF 2026-09-28 3/150 2026-09-29 14:58 by etmYJ6d2rquH
[找工作] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +6 IDs3scOF0tjC 2026-09-28 6/300 2026-09-29 14:13 by etmYJ6d2rquH
[公派出国] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +4 IDs3scOF0tjC 2026-09-28 5/250 2026-09-29 13:50 by etmYJ6d2rquH
[考研] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 tqUTOxClQUMF 2026-09-28 3/150 2026-09-29 09:59 by JzYBbHIXWSrW
[考研] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 ZYXdhzDAy9ZX 2026-09-28 3/150 2026-09-29 06:42 by ZvyPK8n6Nfki
[考研] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 GDBe8tDZqE8z 2026-09-28 3/150 2026-09-28 23:12 by b8fCuTHqckEt
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +3 CfXuS1rDhLYN 2026-09-28 4/200 2026-09-28 22:55 by ez6fGg9abYaj
[公派出国] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 IDs3scOF0tjC 2026-09-28 4/200 2026-09-28 22:55 by ez6fGg9abYaj
[找工作] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 IDs3scOF0tjC 2026-09-28 5/250 2026-09-28 22:32 by ez6fGg9abYaj
信息提示
请填处理意见