soaringbird 发表于 2003-5-7 15:58:02

【求助】到最后了,还出错!!!why?

(1)如中级教程中第四章,第三节的例子,如果,我把eku(tn,ek)函数,
替换为我自己的,但是在该函数中,我为了表达方便,在eku函数下面,
有加了几个自己的子函数,比如说又funct1(),funct2()等,因为eku会调用到他们,
我就直接放在fort的下面可以吗?对于funct1(),funct2()。。。
这些函数有的是tn的函数,
我还需另外在什么地方加以声明吗?
(2)如果我在运行*.bat批处理命令时,出错信息提示我说没有.exe文件,我看了一下确实没有,为啥阿,.exe文件是在什么时候产生的阿,是什么缘故呢?
您们能给解答吗?
对于这个例子,我只是改了pde文件中的fort部分,而对于例子的nfe,fbc,cmd文件我都没有改,用改吗?为什么会出错?
帮忙分析一下原因吧
嗬嗬,好像只有我总是问这问那的!:):):)
出错信息如下:(屏幕总是在不停的滚阿滚的,还有好多,我终止了他)

soaringbird 发表于 2003-5-7 16:29:36

回复: 【求助】到最后了,还出错!!!why?

哈哈,写了这么多,你们晕了吧?

seeksilence 发表于 2003-5-7 20:22:31

回复: 【求助】到最后了,还出错!!!why?

exe是由fortran编译器编译得的,你的fortran编译器没配好

soaringbird 发表于 2003-5-8 08:38:07

回复: 【求助】到最后了,还出错!!!why?

不是啊,我运行其他的例子都是好好的阿
没有出错阿
结果都是正确的阿
只是自己弄得就不行了

这可是首次利用这个东东弄自己的东东,还出错
真是打击人

billget 发表于 2003-5-8 09:38:17

回复: 【求助】到最后了,还出错!!!why?

首先,你看看目录下有没有eell.for文件,有的话在dos命令行下运行
fl32.exeeell.for看看能不能编译成可执行文件,有没有错误???
如有打出来看看??
另外你在使用网络版时,注意每个项目要放在单独的目录下面。而且你修改过的文件要首先上传到服务器上在编译,可以用保存文件来实现。
hi,你用的那个服务器呀???
是www.fegensoft.com吗????

soaringbird 发表于 2003-5-8 10:18:02

回复: 【求助】到最后了,还出错!!!why?

(1)呵呵我没有eell.for文件 有enpar.ell,
我只是修改了教程中的例子中的fort 部分
所以运行了如下的命令:fl32.exe enpar.for
得到如下的警告信息,麻烦您帮忙分析一下吧,我看不懂啊:I
C:\IFEPG\temp3>fl32.exe enpar.for
Microsoft (R) Fortran PowerStationVersion 4.00
Copyright (C) Microsoft Corp 1982-1995. All rights reserved.

enpar.for
enpar.for(42): warning FOR4270: unused symbol FNAME
enpar.for(164): warning FOR4269: unused dummy argument FILENAME
enpar.for(277): warning FOR4269: unused dummy argument IT
enpar.for : warning FOR4227: argument U (number 10) in reference to procedure EN
PAR from procedure main incorrect: has the wrong data type
enpar.for : warning FOR4227: argument F (number 11) in reference to procedure EN
PAR from procedure main incorrect: has the wrong data type
enpar.for : warning FOR4227: argument COOR (number 12) in reference to procedure
ENPAR from procedure main incorrect: has the wrong data type
enpar.for : warning FOR4227: argument EMATE (number 15) in reference to procedur
e ENPAR from procedure main incorrect: has the wrong data type
enpar.for : warning FOR4227: argument EU1 (number 16) in reference to procedure
ENPAR from procedure main incorrect: has the wrong data type
enpar.for : warning FOR4227: argument EU (number 17) in reference to procedure E
NPAR from procedure main incorrect: has the wrong data type
enpar.for : warning FOR4227: argument SML (number 18) in reference to procedure
ENPAR from procedure main incorrect: has the wrong data type
Microsoft (R) 32-Bit Incremental Linker Version 3.00.5270
Copyright (C) Microsoft Corp 1992-1995. All rights reserved.

enpar.obj : error LNK2001: unresolved external symbol _NPGL2G2@32
enpar.obj : error LNK2001: unresolved external symbol _NPQ4G2@32
enpar.exe : fatal error LNK1120: 2 unresolved externals

C:\IFEPG\temp3>
(2)我保证每个项目都放在单独的目录下面
(3)服务器是www.fegensoft.com

billget 发表于 2003-5-8 12:06:04

回复: 【求助】到最后了,还出错!!!why?

将你的PDE文件贴出来看看吧。
另外,你修改的PDE文件存盘前,尽量将文件后面的空行删除再保存。

soaringbird 发表于 2003-5-8 15:00:18

回复: 【求助】到最后了,还出错!!!why?

这是我的pre文件 and pde
还有nfe,cmd,fbc文件,后三个,我一点都没有改变:?)可以吗?

soaringbird 发表于 2003-5-8 15:01:08

回复: 【求助】到最后了,还出错!!!why?

pde

soaringbird 发表于 2003-5-8 15:02:47

回复: 【求助】到最后了,还出错!!!why?

nfe

soaringbird 发表于 2003-5-8 15:10:24

回复: 【求助】到最后了,还出错!!!why?

fbc,cmd我就不贴的,我copy的第四章,第三节的例子的,没有该
您运行一下,帮我看看吧
另外我的问题微分方程可以简化为
\.......U is temperature.                         ......   
\.......   
\.......   = 0
ek与u有关

soaringbird 发表于 2003-5-8 15:12:03

回复: 【求助】到最后了,还出错!!!why?

fbc,cmd我就不贴的,我copy的第四章,第三节的例子的,没有改
您运行一下,帮我看看吧
另外我的问题微分方程可以简化为
\.......U is temperature.                         ......   
\.......   
\.......   = 0
ek与u有关

seeksilence 发表于 2003-5-8 19:20:44

回复: 【求助】到最后了,还出错!!!why?

DOUBLE PRECISION改成real*8

soaringbird 发表于 2003-5-9 10:51:45

回复: 【求助】到最后了,还出错!!!why?

我改了啊,
还是不行,你在你那里可以了吗?
我昨天使用的机子网卡坏了
不能用了
今天换了一个机子,重新安装的,感觉有问题,不爽

billget 发表于 2003-5-9 13:57:59

回复: 【求助】到最后了,还出错!!!why?

试试这个PDE吧!我试了,行!
注意,FORTRAN77要求每行不多于73个的字符,多出的算注释。

soaringbird 发表于 2003-5-9 17:01:16

回复: 【求助】到最后了,还出错!!!why?-----------------------------7d326

嗯,总算看到一点希望了
我还有两个问题:
(1),:?)我运行test时候,发现屏幕上并没有出现,复制了**文件之类的话也没有像在做练习的时候,提示我:按任意键继续,不知这是不是意味着有问题?
问题2,:?) 就是我再有了pre ,pde ,nfe ,fbc,cmd文件的情况下,使用了test命令,然后生成了wsp文件,然后forgid,rungid,gidpre.然后运行.bat
得到了如下的信息:
C:\IFEPG\temp7>npar.bat

C:\IFEPG\temp7>start.exe disp0 id0 nv disp0 bfd time0 time coor0 unod
knode,kdgof,kvar =
    676      1    676
TMAX,DT,TIME,IT =       3.000000000000000      1.000000000000000
  0.000000000000000E+000         0

C:\IFEPG\temp7>if exist stop del stop

C:\IFEPG\temp7>bft disp0 time coor0 nv bfdt stop

C:\IFEPG\temp7>if exist end del end

C:\IFEPG\temp7>enpar disp0 time nv coor0 bfd einform estiff elem0 f mass sys
MMATE =          2 NMATE =          3
EMATE =
  .25E-01.00E+00.00E+00.00E+00.00E+00.00E+00
MMATE =          2 NMATE =          2
EMATE =
  .14E-01.20E+02.00E+00.00E+00

C:\IFEPG\temp7>solv sys f einform estiff u
NUMEL,NEQ =      650         650         651
NIN_SOLVER .... MAXA =      16779
run-time error M6101: MATH
- floating-point error: invalid

C:\IFEPG\temp7>unpar disp0 time sys bfd nv u displace end
KNODE,KDGOF,KVAR =
    676      1    676
run-time error F6416: OPEN(u)
- file not found

对于画线部分我实在不知道怎么弄:?),让看初级教程?看哪部分啊?
我感觉,初级教程的东西,我已经理解的差不多了阿
总是麻烦您们,真是不好意思:I

billget 发表于 2003-5-13 09:46:22

回复: 【求助】到最后了,还出错!!!why?

没关系了!!
我想这样,有几个原因可能会出现这种情况:
1. 是你写的那段Fortran程序有问题,比如出现除零错误等等。
2. 是你前处理的网格单元类型和计算时的单元类型不匹配。如
gid中你用的是三角形,计算的单元子程序你用四边形单元,这样也会出问题的。
你也可以将你的问题打个包发给我看看,包括gid部分。
我的mail:fjia2001@yahoo.com
太大了可能收不到:)

soaringbird 发表于 2003-5-13 17:12:10

回复: 【求助】到最后了,还出错!!!why?

呵呵,我已经发给您了
帮忙看看吧
:)可能会受到两个哦:I

billget 发表于 2003-5-14 10:11:14

回复: 【求助】到最后了,还出错!!!why?

终于知道原因了!
看来还得看你做的程序才行!
不知道你的问题是瞬态的还是稳态的??
你给我的问题是瞬态的程序,但没加初值,这还是小事,因为不加,系统会给默认值为0。关键是pre文件中填写体单元材料时,关于时间离散的系数ec,你取成了0,稳态的没关系,但瞬态问题他应该是一个非零值,表示比热和密度。
我随便取了非零数,就能算了!见下:
2dxy 1 1 8 10
npar 1 2 3 u
#
element y
npar
npq4g2 4 ek ec eq
npll2g2 2 ea eb
#
matedata
1 npar npq4g2
2.5d-2;1.0d-2;0.0d0;   注意此行不同.....
2 npar npll2g2
1.4d-2;2.0d1;
#

soaringbird 发表于 2003-5-14 12:09:47

回复: 【求助】到最后了,还出错!!!why?

谢谢您了
因为在传热微分方程ec(U)*U,t - div(ek(U)*grad(U)) = eq,    ......中
而我的问题方程中没有ec(U)*U,t 项,所以我就把ec的值取为0了,
要是附给它值,ec(U)*U,t 项是不是就会起作用了,对于我的问题还对吗?
呵呵,先不考虑这些了
我还是试着运行一下吧
thank you very much!!
页: [1] 2
查看完整版本: 【求助】到最后了,还出错!!!why?