主题:[讨论]求助帮我看下程序哪里出错了?
whero_2000
[专家分:0] 发布于 2010-03-30 19:04:00
[color=800080][size=4]大家好!恳求大家帮我看看附件里的程序哪里出错了。这个程序是关于求解轴对称圆形薄板自由振动特征值,假设轴向没有位移变化的程序,把三维问题转化成一维问题的FORTRAN程序,我已经调了3个星期了,就是执行求解特征值子程序SUBSPACE的时候出错了,但是我始终不知道哪里出错。
我的模型是个半径50毫米、厚度5毫米的圆形薄板,在半径方向上每2毫米一个单元。
附件里是程序和输入文件,程序时根据王瑁成FEATP程序改编的。恳求大家和各位高手帮我看下程序,感激不尽,所里的师兄弟都没做过这一块,我实在是没有办法了,先谢谢大家了!!!如果回复不方便的话,联系我也行,我的QQ是154987560,邮箱是whero_2000@163.com。[/size][/color]
最后更新于:2010-03-30 19:03:00
回复列表 (共1个回复)
沙发
whero_2000 [专家分:0] 发布于 2010-03-31 09:43:00
帮自己顶一下!我发现了一个错误 就是回代子程序BACKSUBS中,王茂成的程序里是错了,最有一个元素应该是数组名字,结果搞成了变量。改后运行了下,结果发现子空间的刚度矩阵GK(6*6)每个元素都一样,而且非常大,正常么?
%% OUTPUT INPUT-DATA TO < OUT_DAT > %%
## ASSEMBLE GLOBAL MATRIX [GKK], [GMM] ##
%% OUTPUT GLOBAL MATRIX INTO <OUT_MKP> %%
# SOLVE EIGENVALUE BY SUBSPACE METHOD #
% OUTPUT EIGENVALUE AND MODE INTO FILE<OUT_SUBS>
GK( 1 , 1 )为: 7.881301734206630E+133
GK( 1 , 2 )为: 7.881301734206630E+133
GK( 1 , 3 )为: 7.881301734206630E+133
GK( 1 , 4 )为: 7.881301734206630E+133
GK( 1 , 5 )为: 7.881301734206630E+133
GK( 1 , 6 )为: 7.881301734206630E+133
GK( 2 , 1 )为: 7.881301734206630E+133
GK( 2 , 2 )为: 7.881301734206630E+133
GK( 2 , 3 )为: 7.881301734206630E+133
GK( 2 , 4 )为: 7.881301734206630E+133
GK( 2 , 5 )为: 7.881301734206630E+133
GK( 2 , 6 )为: 7.881301734206630E+133
GK( 3 , 1 )为: 7.881301734206630E+133
GK( 3 , 2 )为: 7.881301734206630E+133
GK( 3 , 3 )为: 7.881301734206630E+133
GK( 3 , 4 )为: 7.881301734206630E+133
GK( 3 , 5 )为: 7.881301734206630E+133
GK( 3 , 6 )为: 7.881301734206630E+133
GK( 4 , 1 )为: 7.881301734206630E+133
GK( 4 , 2 )为: 7.881301734206630E+133
GK( 4 , 3 )为: 7.881301734206630E+133
GK( 4 , 4 )为: 7.881301734206630E+133
GK( 4 , 5 )为: 7.881301734206630E+133
GK( 4 , 6 )为: 7.881301734206630E+133
GK( 5 , 1 )为: 7.881301734206630E+133
GK( 5 , 2 )为: 7.881301734206630E+133
GK( 5 , 3 )为: 7.881301734206630E+133
GK( 5 , 4 )为: 7.881301734206630E+133
GK( 5 , 5 )为: 7.881301734206630E+133
GK( 5 , 6 )为: 7.881301734206630E+133
GK( 6 , 1 )为: 7.881301734206630E+133
GK( 6 , 2 )为: 7.881301734206630E+133
GK( 6 , 3 )为: 7.881301734206630E+133
GK( 6 , 4 )为: 7.881301734206630E+133
GK( 6 , 5 )为: 7.881301734206630E+133
GK( 6 , 6 )为: 7.881301734206630E+133
forrtl: severe (161): Program Exception - array bounds exceeded
Image PC Routine Line Source
FPC.exe 004086D5 SUBSPACE 664 FPC.FOR
FPC.exe 00402CB4 FEATP 96 FPC.FOR
FPC.exe 00452ED9 Unknown Unknown Unknown
FPC.exe 00438419 Unknown Unknown Unknown
kernel32.dll 7C817077 Unknown Unknown Unknown
Press any key to continue
664行是说子空间迭代向量BB有溢出,这个又是怎么回事?
我来回复