24小时热门版块排行榜    

查看: 2475  |  回复: 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 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +55 医学老男孩 2026-08-13 123/6150 2026-08-19 23:44 by stan_et
[基金申请] 今天基金会出结果吗?20260819 +13 kkkl_v 2026-08-19 13/650 2026-08-19 22:37 by 宝贝虫子
[基金申请] 时间戳变了,能看出什么问题? +12 基诺咪客 2026-08-17 16/800 2026-08-19 22:04 by kk 的小木虫
[基金申请] filecode,4个jtjc了 +11 ziyangfang 2026-08-19 13/650 2026-08-19 21:28 by aasahr
[教师之家] 为什么余额宝的年化利率越来越低?主要原因有哪些? +5 瞬息宇宙 2026-08-15 5/250 2026-08-19 20:23 by super2002521
[基金申请] 今天放榜没戏了吧 +4 yuleib84 2026-08-19 5/250 2026-08-19 19:52 by hhs666
[基金申请] 今天放榜吗? +14 布布和一二 2026-08-19 15/750 2026-08-19 18:07 by gltch
[基金申请] filecode=后面第一个是大写字母 +10 wangze12014 2026-08-14 12/600 2026-08-19 16:56 by 苦难博士
[基金申请] 2027广东省杰青 +4 奶牛小黑 2026-08-15 10/500 2026-08-19 11:02 by wanfengnew
[基金申请] 朋友圈看到的 +6 wangzilk 2026-08-18 8/400 2026-08-19 10:55 by Haru815
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +6 Tide man 2026-08-14 7/350 2026-08-19 09:56 by ZJTJZ
[基金申请] 什么时候开奖? +6 CrisMessi 2026-08-18 6/300 2026-08-19 08:06 by Equinoxhua
[基金申请] 明天放榜? +5 Shxjjxjkx 2026-08-18 5/250 2026-08-18 18:14 by -大大大大大-
[论文投稿] 投稿咨询 +4 wwm09 2026-08-17 6/300 2026-08-18 15:36 by wwm09
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +13 Ldrop2023 2026-08-13 16/800 2026-08-18 12:25 by 淀粉搬运工
[基金申请] 93BebMhtakh前后11位开头都是大写 +4 且听虎啸 2026-08-17 5/250 2026-08-18 00:49 by 蔡棒棒菂
[基金申请] 感觉是下周放榜了 +6 angus9576 2026-08-17 11/550 2026-08-17 23:57 by angus9576
[精细化工] 招聘 金属平磨液,抛光液研发工程师 +3 小天0311 2026-08-14 3/150 2026-08-16 07:31 by H9PLUS
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
信息提示
请填处理意见